Tensorflow 术语表

广播操作(Broadcasting operation)

一种用numpy-style broadcasting来保证tensor参数的形态兼容的操作。

Devices

一块可以用来运算并且拥有自己的地址空间的硬件,比如GPU和CPU。

eval

Tensor 的一个方法,返回 Tensor 的值。触发任意一个图计算都需要计算出这个值。只能在一个已经启动的会话

的图中才能调用该 Tensor 值。

Feed

TensorFlow 的一个概念:把一个 Tensor 直接连接到一个会话图表中的任意节点。feed 不是在构建图(graph)的

时候创建,而是在触发图的执行操作时去申请。一个 feed 临时替代一个带有 Tensor 值的节点。把feed数据作

为run( )方法和eval( )方法的参数来初始化运算。方法运行结束后,替换的 feed 就会消失,而最初的节点定义

仍然还在。可以通过tf.placeholder( )把特定的节点指定为 feed 节点来创建它们。详见【 Basic Usagehref 】。

Fetch

TensorFlow中的一个概念:为了取回运算操作的输出结果。取回的申请发生在触发执行图操作的时候,而不是发

生在建立图的时候。如果要取回一个或多个节点(node)的 Tensor 值,可以通过在 Session 对象上调用run(

)方法并将待取回节点(node)的列表作为参数来执行图表(graph)。详见【Basic Usagehref】。

Graph(图)

把运算任务描述成一个直接的无环图形(DAG),图表中的节点(node)代表必须要实现的一些操作。图中的边代

表数据或者可控的依赖。GratheDef 是系统中描述一个图表的协议(api),它由一个 NodeDefs 集合组成。一个Gr

aphDef可以转化成一个更容易操作的图表对象。

IndexedSlices(索引化切片)

在 Python API 中,TensorFlow 仅仅在第一维上对 Tensor 有所体现。如果一个 Tensor 有k维,那么一个 Inde

xedSlices 实例在逻辑上代表一个沿着这个 Tensor 第一维的(k-1)维切片的集合。切片的索引被连续储存在一个

单独的一维向量中,而对应的切片则被拼接成一个单独的k维 Tensor。如果 sparsity 不是受限于第一维空

间,请用 SparseTensor。

Node(节点)

图中的一个元素。 把启动一个特定操作的方式称为特定运算图表的一个节点,包括任何用来配置这个操作的属性

的值。对于那些多形态的操作,这些属性包括能完全决定这个节点(Node)签名的充分信息。详见graph.proto。

操作(Op/operation)

在 TensorFlow 的运行时中,它是一种类似 add 或 matmul 或 concat的运算。可以用【[how to add an ophre

f](https://github.com/jikexueyuanwiki/tensorflow-zh/blob/master/SOURCE/how_tos/adding_an_op/index.md)】中的方法来向运行时添加新的操作。

在 python 的API中,它是图中的一个节点。在【tf.Operationhref】类中列举出了这些操作。一个操作(Operatio

n)的 type 属性决定这个节点(node)的操作类型,比如add和matmul。

Run

在一个运行的图中执行某种操作的行为。要求图必须运行在会话中。

在 Python 的 API 中,它是 Session 类的一个方法【tf.Session.runhref】。可以通过 Tensors 来订阅或获取run(

)操作。

在C++的API中,它是【tensorflow::Sessionhre】类的一个方法。

Session(会话)

启动图的第一步是创建一个 Session 对象。Session 提供在图中执行操作的一些方法。

在 Python API中,使用【tf.Sessionhref】。

在 C++ 的API中,【tensorflow::Sessionhref】是用来创建一个图并运行操作的类:

Shape

Tensor 的维度和它们的大小。

在一个已经启动的图中,它表示流动在节点(node)之间的 Tensor 的属性。一些操作对 shape 有比较强的要

求,如果没有 Shape 属性则会报告错误。

在 Python API中,用创建图的 API 来说明 Tensor 的 Shape 属性。Tensor 的Shape 属性要么只有部分已

知,要么全部未知。详见【tf.TensroShapehref

在C++中,Shape 类用来表示 Tensor 的维度。【tensorflow::TensorShapehref】。

SparseTensor

在 Python API 中,它用来表示在 TensorFlow 中稀疏散落在任意地方的 Tensor 。SparseTensor 以字典-值格

式来储存那些沿着索引的非空值。换言之,m个非空值,就包含一个长度为m的值向量和一个由m列索引(indice

s)组成的矩阵。为了提升效率,SparseTensor 需要将 indice(索引)按维度的增加来按序存储,比如行主

序。如果稀疏值仅沿着第一维度,就用 IndexedSlices。

Tensor

Tensor是一种特定的多维数组。比如,一个浮点型的四维数组表示一小批由batch,height,width,channel组

成的图片。

在一个运行的图(graph)中,它是一种流动在节点(node)之间的数据。 在 Python 中,Tensor 类表示添加到图

的操作中的输入和输出,见【tf.Tensorhref】,这样的类不持有数据。

在C++中,Tensor是方法【Session::Run( )】的返回值,见tensorflow::Tensor,这样的 Tensor 持有数据。

原文:【Glossaryhref

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏王小雷

Python之数据聚合与分组运算

Python之数据聚合与分组运算 1. 关系型数据库方便对数据进行连接、过滤、转换和聚合。 2. Hadley Wickham创建了用于表示分组运算术语“spl...

2029
来自专栏章鱼的慢慢技术路

排序算法的实现与比较

1538
来自专栏聊聊技术

原 "二分查找(Binary Search

41511
来自专栏前端架构

js随机产生和为s的整数组

随机生成和为S的N个正整数有很多种解法。下面讲解一种比较高效且比较有趣味性的解法——投影法。

612
来自专栏数据结构与算法

洛谷P3358 最长k可重区间集问题(费用流)

题目描述 ? 对于给定的开区间集合 I 和正整数 k,计算开区间集合 I 的最长 k可重区间集的长度。 输入输出格式 输入格式: 的第 1 行有 2 个...

38511
来自专栏潇涧技术专栏

Python Data Structures - C1 Search

参考内容: 1.Problem Solving with Python Chapter5: Search and Sorting online_link ...

401
来自专栏HansBug's Lab

算法模板——Trie树

实现功能——实现对于不同字符串以及之前出现过的字符串的识别,对于单个长度为L的字符串,复杂度为O(L); 代码不难懂,直接上(在识别字符串方面,个人觉得其好处远...

1825
来自专栏Soul Joy Hub

TensorFlow指南(二)——练习思考:上手TensorFlow

http://blog.csdn.net/u011239443/article/details/79075392 创建一个计算图而不是直接执行计算的主要好处是...

2624
来自专栏郭耀华‘s Blog

tf.variable和tf.get_Variable以及tf.name_scope和tf.variable_scope的区别

在训练深度网络时,为了减少需要训练参数的个数(比如具有simase结构的LSTM模型)、或是多机多卡并行化训练大数据大模型(比如数据并行化)等情况时,往往需要共...

3036
来自专栏java初学

top K 问题

35816

扫码关注云+社区