tensorflow的浅谈《第一讲》

版权声明:版权归原作者所有。未经允许,严禁转载。 https://blog.csdn.net/luccao/article/details/82427706

tensorflow的定义

TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。

先上一张图吧,这在tensorflow的社区上下载过来的。http://www.tensorfly.cn/
这里写图片描述

- 什么是数据流图(Data Flow Graph)?

数据流图用“结点”(nodes)和“线”(edges)的有向图来描述数学计算。“节点” 一般用来表示施加的数学操作,但也可以表示数据输入(feed in)的起点/输出(push out)的终点,或者是读取/写入持久变量(persistent variable)的终点。“线”表示“节点”之间的输入/输出关系。这些数据“线”可以输运“size可动态调整”的多维数据数组,即“张量”(tensor)。张量从图中流过的直观图像是这个工具取名为“Tensorflow”的原因。一旦输入端的所有张量准备好,节点将被分配到各种计算设备完成异步并行地执行运算。

- 张量(tensor)的定义

1) 张量有多种. 零阶张量为 纯量或标量 (scalar) 也就是一个数值. 比如 [1]
2) 一阶张量为 向量 (vector), 比如 一维的 [1, 2, 3]
3) 二阶张量为 矩阵 (matrix), 比如 二维的 [[1, 2, 3],[4, 5, 6],[7, 8, 9]]
以此类推, 还有 三阶 三维的 …

我个人比较喜欢tensorflow的原因是因为他有两部分比较重要的代码:
1)tensorflow源码 https://github.com/tensorflow/tensorflow
2)models https://github.com/tensorflow/models

这两部分提供了很多算法的实现代码和数据的训练机制,能很快上手,体验tensorflow的强大力量。

tensorflow lite

Google 表示 Lite 版本 TensorFlow 是 TensorFlow Mobile 的一个延伸版本。尽管是一个轻量级版本,依然是在智能手机和嵌入式设备上部署深度学习的一大动作。此前,通过TensorFlow Mobile API,TensorFlow已经支持手机上的模型嵌入式部署。TensorFlow Lite应该被视为TensorFlow Mobile的升级版。

我自己喜欢使用tensorflow lite在手机上跑一些代码中的demo,感觉很好玩,很有意思,而且移植过程相当简单。

猜你喜欢

转载自blog.csdn.net/luccao/article/details/82427706