当前位置:首页 > 嵌入式培训 > 嵌入式学习 > 讲师博文 > 如何高效的学习TensorFlow代码

如何高效的学习TensorFlow代码 时间:2020-10-21      来源:华清远见

首先对于新手,可以使用高层封装的 API 实现面向模型编程 (Model Oriented Programming, MOP)。我们以一个典型的 MNIST CNN 模型为例,展示 TensorFlow 2.2 的实现:

实例化一个 CNN 模型

前提是掌握python基础和高级的知识,包括熟悉Python的基本语法和特性,比如迭代器(列表生成表达式),生成器(yield关键字,节省内存),装饰器(设计模式),高阶函数(函数的函数),匿名函数(lambda表达式),返回函数(闭包),位置参数,默认参数,可变参数,常用模块,定制类,枚举类,元类,理解动态特性。

TensorFlow代码分为三个层次:

1)理解TensorFlow的基本概念和基本组件

2)基于对基本概念的理解,利用基本组件来构建模型

3)调试模型,优化模型速度,优化模型精度

那么我们学习TensorFlow的过程就是先对tf框架有一个整体的认识,然后理解其基本概念,学习基本的组件,然后尽可能快的找一个感兴趣的项目去尝试,在尝试中去学习debug tf program,去针对性的优化模型速度,优化模型精度。tensorflow的官网例子很丰富,但是缺乏整体性的理解,就会很乱,更重要的是由于tf graph和session分离的机制,导致出了问题的时候,新手一般无所适从,最终容易放弃。

这里我分别介绍TensorFlow三个层次的知识,尤其着重介绍我对TensorFlow基本概念的认识。这里所有的内容包括代码都可以从Learning tensorflow by just one example for beginners(正在积极开发当中)进一步查看,这个respository里我通过对一个实例的出发来介绍tf基本概念,如何实现一个基本模型,到优化速度,优化精度,

Tensorflow项目资源: 

(1)一个实现实现Alex Graves论文的随机手写生成的案例:https://github.com/hardmaru/write-rnn-tensorflow

(2)基于Tensorflow的生成对抗文本到图像合成:https://github.com/zsdonghao/text-to-image。如下图所示,该项目是基于Tensorflow的DCGAN模型,教大家一步步从对抗生成文本到图像合成。

(3)基于注意力的图像字幕生成器:https://github.com/yunjey/show-attend-and-tell。该模型引入了基于注意力的图像标题生成器。可以将其注意力转移到图像的相关部分,同时生成每个单词。

(4)神经网络着色灰度图像:https://github.com/pavelgonchar/colornet。一个非常有趣且应用场景非常广的一个项目,使用神经网络着色灰度图像。

(5)基于Facebook中FastText的简单嵌入式文本分类器:https://github.com/apcode/tensorflow_fasttext。该项目是源于Facebook中的FastText的想法,并在Tensorflow中实施。FastText是一款快速的文本分类器,提供简单而高效的文本分类和表征学习的方法。

上一篇:TensorFlow入门

下一篇:学到什么程度才叫精通Linux?如何才能做到精通

热点文章推荐
华清学员就业榜单
高薪学员经验分享
热点新闻推荐
前台专线:010-82525158 企业培训洽谈专线:010-82525379 院校合作洽谈专线:010-82525379 Copyright © 2004-2020 北京华清远见科技发展有限公司 版权所有 ,京ICP备16055225号京公海网安备11010802025203号

回到顶部