前言

更新:想不到当时的想法还是挺好的,文中这种思路基本都出现在TensorFlow 2.0中,确实很爽。Dataset API+Keras Model+Train API搭配简直nice,论文的代码完全用这套重新实现非常舒服。加上面向对象的编码结构,你可以非常容易的自己去写复用性很高的工程,对于科研频繁换网络、试参数、快速验证想法实在是大有帮助,磨刀不误砍柴工,平时多花点时间构思代码结构挺重要的,看到重复三次以上的代码就想想如何消除冗余。

关于深度学习框架,主流的几个TensorFlow、PyTorch以及Keras都有所使用,由于在深度学习领域自己也只算个入门级选手,所以本文只从一个AI新手的角度去尝试分享一些使用框架编程的实践经验。至于标题最佳实践,那也纯粹有些哗众取宠之意,文章对于能够玩转各种框架API的大佬们,也许会贻笑大方。除此以外,本文相当于一个搬运工,并不讲解具体的使用细节,当然会推荐一些已经介绍的很好的文章,看完一定会有所收获。下面正式开始,希望能对大家有所帮助。

在三种框架的使用上,可能最难以上手使用的就是TensorFlow,毕竟在没有Eager Execution时,动态图的特性常常让人对网络调试摸不着头脑。Keras相对来说最容易上手,固定版式的代码,封装性极高,想要扩展对新手来说就有些难了。PyTorch在上手难易程度,扩展性方面都很棒,特别是 torch 张量可以即时看到,便于调试。

总的来说,如果想要从零到一的去写一个深度学习工程代码,我觉得PyTorch会相当的合适。但是我们往往是在别人的工作基础上进行改进,很多开源代码都是基于1.x版本的TensorFlow实现的,或者有些是在Keras基础上实现的,并非PyTorch,我们总不愿意去重新用PyTorch实现一遍,对于学术科研或许有些本末倒置了

TensorFlow1.x最佳实践:Dataset API+Keras Model+TF Train相关推荐

  1. 来自Google资深工程师的API设计最佳实践

    来自Google资深工程师Joshua Bloch的分享:API设计最佳实践 为什么API设计如此重要?API是一个公司最重要的资产. 为什么API的设计对程序员如此重要? API一旦发布,出于兼容性 ...

  2. 阿里研究员谷朴:API 设计最佳实践的思考

    2019独角兽企业重金招聘Python工程师标准>>> API是软件系统的核心,而软件系统的复杂度Complexity是大规模软件系统能否成功最重要的因素.但复杂度Complexit ...

  3. ASP.NET Core Web API 最佳实践指南

    原文地址: ASP.NET-Core-Web-API-Best-Practices-Guide 介绍 当我们编写一个项目的时候,我们的主要目标是使它能如期运行,并尽可能地满足所有用户需求. 但是,你难 ...

  4. 深度 | API 设计最佳实践的思考

    API 是模块或者子系统之间交互的接口定义.好的系统架构离不开好的 API 设计,而一个设计不够完善的 API 则注定会导致系统的后续发展和维护非常困难. 接下来,阿里巴巴研究员谷朴将给出建议,什么样 ...

  5. 在ASP.NET Web API中返回错误的最佳实践

    本文翻译自:Best practice to return errors in ASP.NET Web API I have concerns on the way that we returns e ...

  6. 10个有关RESTful API良好设计的最佳实践

    Web API已经在最近几年变成重要的话题,一个干净的API设计对于后端系统是非常重要的. 通常我们为Web API使用RESTful设计,REST概念分离了API结构和逻辑资源,通过Http方法GE ...

  7. RESTful API 设计最佳实践

    2019独角兽企业重金招聘Python工程师标准>>> 背景 目前互联网上充斥着大量的关于RESTful API(为方便,下文中"RESTful API "简写为 ...

  8. 22条API设计的最佳实践

    译者:刘志超,软件工程师.DevOpsDays.HDZ深圳核心组织者,目前供职于华为,从事云计算工作,专注于K8s.微服务领域. 来源:dockone.io/article/2434604 原文:ht ...

  9. 独家 | 提升API设计技能的22个最佳实践(附链接)

    作者:Mohammad Faisal翻译:张一然校对:和中华本文约2000字,建议阅读7分钟本文介绍了有关设计REST api的一些实用建议. 你是否曾对处处都像猜谜游戏一样的糟糕API感到生气, 好 ...

最新文章

  1. mysql 定时脚本_MySQL定时执行脚本(计划任务)命令实例
  2. Hyperledger Fabric学习笔记(二)- Fabric 2.2.1环境搭建
  3. SteveY对Amazon和Google平台的吐槽
  4. ArcGIS模型构建器案例学习笔记-字段处理模型集
  5. 在Mac下连接阿里云服务器
  6. 基于matlab双闭环直流调速系统仿真,基于MATLAB的双闭环直流调速系统的仿真
  7. 网络安全渗透高级工具(黑客工具软件大全100套)
  8. LCL三相pwm整流器(逆变器)
  9. 输入上下文句柄相关函数 linux,一起聊聊WSL的那些事儿(上)
  10. ireport java 变量_iReport —— 使用 JavaBean 作为数据源
  11. NEWLAB之光照度传感综合实验(一)——实验介绍
  12. 【Scratch】青少年蓝桥杯_每日一题_11.01_画笔功能
  13. 购买二手MacBook是否正品,请仔细检查以下情况,可防止翻车
  14. 苹果设备中的分辨率问题
  15. MySQL索引详解之索引的利弊以及高效使用
  16. 地图下载器工具-Java
  17. xlsx模块 前端_纯前端利用 js-xlsx 之单元格样式(4)-阿里云开发者社区
  18. python小工具小发明_用python写PDF转换器的实现
  19. J2EE design decisions
  20. chrome浏览器的审查元素

热门文章

  1. altera fpga大小如何衡量_【转】Xilinx和Altera的FPGA的对比
  2. 求生之路2 服务器 修改难度,《求生之路2》服务器指令及难度参数设置难度篇.pdf...
  3. User-Agent详解
  4. OpenCV利用鼠标操作测量角度
  5. http请求报文头部vary信息
  6. 计算机听不到音乐怎么回事,电脑听不到声音怎么办
  7. Mybatis引用静态常量或者枚举类型
  8. IBM服务器端口IP设置
  9. channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILE
  10. 「收藏级干货」蜡烛图交易形态全解