TensorFlow的主要技术特性
类别 | 说明 |
---|---|
编程模型 | 数据流模型 |
语言 | Python、C++、Go、Rust、Haskell、Java、Julia、JavaScript、R |
部署 | 一次编写,各处运行 |
计算资源 | CPU、GPU、TPU |
实现方式 | 单机、分布式 |
平台支持 | 谷歌云平台、Hadoop分布式文件系统 |
数学表达 | 数学计算图表达、自动微分 |
优化 | 共同子图消除、异步核优化、通信优化、模型并行、数据并行、管道 |
TensorFlow的核心概念
TensorFlow中的计算可以表示为一个有向图(directed graph) ,或者称为计算图(computation graph) ,其中每一个运算操作(operation) 将作为一个节点(node) ,节点与节点之间的连接称为边(edge)
计算图每个节点可以有任意多个输入和输出,每个节点描述了一种运算操作。在计算图的边中流动(flow)的数据被称为张量(tensor) ,故得名TensorFlow。
TensorFlow内建运算操作
类型 | 示例 |
---|---|
标量运算 | Add、Sub、Mul、Div、Exp、Log、Greater、Less、Equal |
向量运算 | Concat、Slice、Split、Constant、Rank、Shape、Shuffle |
矩阵运算 | MatMul、MatrixInverse、MatrixDeterminant |
带状态的运算 | Variable、Assign、AssignAdd |
神经网络组件 | SoftMx、Sigmoid、Relu、Convolution2D、MaxPooling |
存储与恢复 | Save、Restore |
队列及同步运算 | Enqueue、Dequeue、MutexAcquire、MutexRelease |
控制流 | Merge、Switch、Enter、Leave、NextIteration |