专栏首页量子位简化深度学习实践流程:新鲜出炉的TensorFlow项目模板来了

简化深度学习实践流程:新鲜出炉的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

本文分享自微信公众号 - 量子位(QbitAI)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-02-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 人工智能拯救渣画手,我分分钟画只猫给你看

    给活泼的猫主子拍照,我都觉得万分艰难,更不用说画像了。不过,我们刚刚发现了一个AI小应用,分分钟就能画只猫出来。 ? 这个网页版小应用叫edges2cats,你...

    量子位
  • Pony.ai成立AI研究院:姚期智院士领衔,世界级学者李利加盟

    同时,前Uber机器学习平台技术主管、IEEE Fellow和ACM Fellow李利博士,加盟Pony.ai担任首席科学家,兼任研究院副院长。

    量子位
  • TensorFlow推出命令式、可定义的运行接口Eager Execution

    安妮 编译自 Google Research Blog 量子位 出品 | 公众号 QbitAI 今天凌晨,谷歌宣布推出TensorFlow的eager exec...

    量子位
  • RedRabbit——基于BrokerPattern服务器框架

    RedRabbit 经典网游服务器架构 ? 该图省略了专门用途的dbserver、guildserver等用于专门功能的server,该架构的优点有: l Lo...

    知然
  • session一致性架构设计实践

    一、缘起 什么是session? 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。 Web开发中,web-server可...

    架构师之路
  • 这会是你见过讲得最清楚的【异步爬虫指南】

    在执行一些 IO 密集型任务的时候,程序常常会因为等待 IO 而阻塞。比如在网络爬虫中,如果我们使用 requests 库来进行请求的话,如果网站响应速度过慢,...

    一墨编程学习
  • fs学习笔记之输出格式

    forrestlin
  • POJ-2346 Lucky tickets(线性DP)

    Lucky tickets Time Limit: 1000MS Memory Limit: 65536K Total Submissions...

    ShenduCC
  • Work at home, Work as a distributed team | TVP思享

    我们公司是在前年成立,下图所列是最早期的所有的技术团队成员,涵盖了全球绝大部分的时区,包括日本、中国、印度等。

    TVP官方团队
  • [nodejs] nodejs开发个人博客(七)后台登陆

    访问这个路径进入后台页面 http://localhost:8888/admin/login

    陶士涵

扫码关注云+社区

领取腾讯云代金券