简化深度学习实践流程:新鲜出炉的TensorFlow项目模板来了

林鳞 编译自 GitHub

量子位 出品 | 公众号 QbitAI

新的TensorFlow项目模板来了。

昨天,用户mrgemy95在Reddit上发帖,称这是“TensorFlow项目模板架构的最佳实践”。几小时内,帖子热度迅速上升。

此外,mrgemy95还将代码公布在GitHub上,短短几天就收获了200+个star。

量子位带大家去GitHub上探查一下这个模板。

开始一个TensorFlow项目前,编程人员往往需要进行很多繁琐的工作,所以将这些琐事包装起来可以帮助他们在开始新的TensorFlow项目时简化流程。

一个简单且精心设计的结构对于任何深度学习项目来说都是必不可少的,所以在TensorFlow项目中经过大量实践后,mrgemy95等人总结出一个集简洁、文件夹结构的最佳实践和良好的OOP(面向对象的程序设计)的TensorFlow项目模板。

项目架构如上图所示

文件夹结构如上图所示

如何使用这个模板呢?举个例子,假设你想实现VGG模型,你需要按照以下步骤执行:

在模型文件夹中创建一个从“base_model”分类继承来的VGG分类。

重写“build_model”和“init_saver”这两个函数。

前者是实现VGG模型的地方,后者是定义TensorFlow saver的地方。

在trainer文件夹中创建一个从“base_train”分类继承来的VGG trainer。

重写“train_step”和“train_epoch”这两个函数。

在主文件中创建一个会话,并创建“Model”、“Logger”、“Data_Generator”、“Trainer”对象的实例和配置。

将所有这些对象传递给trainer对象,通过调用“trainer.train()”开始你的训练。

之后,你将在模型和trainer文件夹中创建模板文件和一个简单的示例,它将向你展示如何简单尝试第一个模型。

作者表示,之后会考虑用新的TensorFlow数据集API替换数据加载器部分。

最后,附项目GitHub地址:

https://github.com/Mrgemy95/Tensorflow-Project-Template#in-details

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180206A0G69N00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券