• TensorFlow™ 是一个开放源代码软件库,用于进行高性能数值计算
• 借助其灵活的架构,用户可以轻松地将计算工作部署到多种平台
(CPU、GPU、TPU)和设备(桌面设备、服务器集群、移动设备、边
缘设备等)
• TensorFlow™ 最初是由 Google Brain 团队(隶属于 Google 的 AI
部门)中的研究人员和工程师开发的,可为机器学习和深度学习提供
强力支持TensorFlow 的Hello world:
计算图:
TensorFlow = Tensor + Flow
Tensor 张量
数据结构:多维数组Flow 流
计算模型:张量之间通过计算而转换的过程
TensorFlow是一个通过 计算图的形式表述计算的编程系统
每一个计算都是计算图上的一个节点
节点之间的边描述了计算之间的关系计算图是一个有向图,由以下内容构成:
• 一组节点,每个 节点都代表一个 操作,是一种 运算
• 一组有向边,每条 边代表节点之间的 关系(数据传递和
控制依赖)
计算图(数据流图)的概念
TensorFlow有两种边:
• 常规边(实线):代表数据依赖关系。一个节点的运算输出成
为另一个节点的输入,两个节点之间有tensor流动( 值传递)
• 特殊边(虚线):不携带值,表示两个节点之间的 控制相关性。
比如, happens- - before 关系,源节点必须在目的节点执行前完
成执行
张量:
• 在TensorFlow中,所有的数据都通过张量的形式来表示
• 从功能的角度,张量可以简单理解为多维数组
零阶张量表示 标量(scalar),也就是 一个数;
一阶张量为 向量(vector),也就是 一维数组;
n n 阶张量可以理解为一个n n 维数组;
• 张量并没有真正保存数字,它保存的是计算过程张量的属性:
名字( name )
“node:src_output”:node 节点名称,src_output 来自节点的第几个输出
形状( shape )
张量的维度信息, shape=() ,表示是标量类型( type )
每一个张量会有一个唯一的类型
TensorFlow会对参与运算的所有张量进行类型的检查,发现类型不匹配时会报错
阶为1的张量等价于向量;
阶为2的张量等价于矩阵,通过 t[ i,j ] 获取元素;
阶为3的张量,通过 t[ i,j,k ] 获取元素;
操作:
原文:https://www.cnblogs.com/pam-sh/p/12267119.html