分享

收藏!最全TensorFlow模型实现开源库,手把手教你实现各种模型!

 520jefferson 2021-05-02
人工智能算法与Python大数据
致力于提供深度学习、机器学习、人工智能干货文章,为AI人员提供学习路线以及前沿资讯
23篇原创内容
公众号

点上方人工智能算法与Python大数据获取更多干货

在右上方 ··· 设为星标 ,第一时间获取资源

仅做学术分享,如有侵权,联系删除

转载于 :Github

https://github.com/tensorflow/models,主要内容有利用TensorFlow构建的模型和示例的教程,最新更新是几小时之前。

图片

TensorFlow实现模型

地址:

https://github.com/tensorflow/models/blob/master/research

图片

实现模型主要在research中,包含研究人员实施的机器学习模型,每个模型有使用的教程,以及对应的论文链接,一站式服务。

如其中的一个模型:

deep convolutional networks for computer vision(用于计算机视觉的深度卷积网络)

包含了几个内容:

1、在TensorFlow中

ImageNet是用于训练图像识别系统的机器学习中的常见学术数据集。此目录中的代码演示了如何使用TensorFlow训练和评估此学术数据集上的一种卷积神经网络(CNN)。特别是,我们演示了如何训练Inception v3体系结构,如下所述:

重新思考计算机视觉的初始架构

Christian Szegedy,Vincent Vanhoucke,Sergey Ioffe,Jonathon Shlens,Zbigniew Wojna

http:///abs/1512.00567

对于单帧评估,该网络实现了21.2%的前1和5.6%的前5误差,每个推理的计算成本为50亿乘法,并且使用的参数少于2500万。以下是模型架构的可视化。

图片

模型架构可视化

2、代码说明

有详细的代码使用说明,代码库提供了三个核心二进制文件:

  • 使用ImageNet 2012 Challenge培训数据集在多个GPU和/或多台计算机上从头开始培训初始v3网络。

  • 使用ImageNet 2012 Challenge验证数据集评估Inception v3网络。

  • 在新任务上重新训练初始v3网络并反向传播错误以微调网络权重。

训练过程采用跨多个GPU的同步随机梯度下降。用户可以指定他们希望利用的GPU的数量。同步训练通过将给定批次划分为多个GPU来执行批量分割

训练设置几乎与使用多GPU卡训练模型一节相同 ,我们已将CIFAR-10模型架构替换为Inception v3。与该设置的主要区别是:

  • 在培训期间计算并更新批次规范统计数据,以便在评估期间替换它们。

  • 使用称为TensorFlow-Slim的(仍然是实验性的)更高级语言指定模型体系结构。

有关TensorFlow-Slim的更多详细信息,请参阅Slim README。请注意,此更高级别的语言仍处于 试验阶段,API可能会随着时间的推移而变化,具体取决于使用情况和后续研究。

3、入门

图片

4、如何从零开始训练

有详细的步骤教你如何从零开始训练:

在继续之前,请阅读卷积神经网络教程; 特别是,专注于使用多GPU卡训练模型。模型训练方法几乎与CIFAR-10多GPU模型训练中描述的相同。简而言之,模型训练

在每个GPU上放置单独的模型副本。

在GPU中拆分批处理。

通过等待所有GPU完成处理一批数据来同步更新模型参数。

训练过程由该图表封装,该图表分别表示操作和变量如何放在CPU和GPU上。

图片

操作和变量如何放在CPU和GPU上

5、如何在分布式环境中从零开始训练

图片

6、如何评估

图片

7、如何在新任务上微调预训练模型

  • 入门

  • 如何在花卉数据上重新训练训练模型

图片

8、如何构建一个新的再培训数据集

9、培养模型的实践考虑

10、寻找好的超参数

11、调整内存需求

12、故障排除

图片

以上包含了从零开始训练到模型实现以及模型的扩展的所有过程,超详细的步骤,一站式的服务,赶快去学习吧!

------------------

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多