您的位置:首页 > 其它

TensorFlow - 常见问题解答收集

2018-02-09 22:33 295 查看
TensorFlow - 常见问题解答收集

flyfish

什么是epoch

epoch 翻译 世;新纪元;新时代;时间上的一点

数据集中有 50,000 个训练数字。我们在每次迭代(iteration)中将 100 个数字送入训练循环中,因此系统将在 500 次迭代之后看到所有训练数字一次。我们称之为一个epoch。

softmax名字的由来

softmax,指数是一种骤增的函数。这将加大向量中每个元素的差异。它也会迅速地产生一个巨大的值。然后,当进行向量的标准化时,支配范数(norm)的最大的元素将会被标准化为一个接近 1 的数字,其他的元素将会被一个较大的值分割并被标准化为一个接近 0 的数字。所得到的向量清楚地显示出了哪个是其最大的值,即max,但是却又保留了其值的原始的相对排列顺序,因此即为soft。

什么是Broadcasting add

如果你因为两个矩阵维度不同的原因而不能将其相加,那么你可以根据需要尝试复制一个小的矩阵使其工作。广播操作(Broadcasting operation)是一种用numpy-style broadcasting来保证tensor参数的形态兼容的操作

什么是学习率(learning rate)

学习率(learning rate): 在整个梯度的长度上,你不能在每一次迭代的时候都对权重和偏置进行更新。为了到达底部,你需要一些更小的步伐,即只使用梯度的一部分,通常在 1/1000 区域中。我们称这个部分为学习率(Learning rate)

什么时候使用dropout

你可能已经注意到在数千次迭代之后,测试和训练数据的交叉熵曲线开始不相连。学习算法只是在训练数据上做工作并相应地优化训练的交叉熵。它再也看不到测试数据了,所以这一点也不奇怪:过了一会儿它的工作不再对测试交叉熵产生任何影响,交叉熵停止了下降,有时甚至反弹回来。它不会立刻影响你模型对于真实世界的识别能力,但是它会使你运行的众多迭代毫无用处,而且这基本上是一个信号——告诉我们训练已经不能再为模型提供进一步改进了。这种无法连接通常会被标明「过拟合(overfitting)」,而且当你看到这个的时候,你可以尝试采用一种规范化(regularization)技术,称之为「dropout」

深度学习中的‘深度’是怎么来的

我们有三个函数f(1)、f(2)和f(3)连接在一个链上以形成f(x)=f(3)(f(2)(f(1)(x)))。这些链式结构是神经网络中最常用的结构。在这种情况下,f(1)被称为网络的第一层(first layer),f(2)被称为第二层(second layer),以此类推。链的全长称为模型的深度(depth)。正是因为这个术语才出现了“深度学习”这个名字。

如何打印Tensor 的值

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

什么是Feed

TensorFlow 的一个概念:把一个 Tensor 直接连接到一个会话图表中的任意节点。feed 不是在构建图(graph)的时候创建,而是在触发图的执行操作时去申请。一个 feed 临时替代一个带有 Tensor 值的节点。把feed数据作为run( )方法和eval( )方法的参数来初始化运算。方法运行结束后,替换的 feed 就会消失,而最初的节点定义仍然还在。可以通过tf.placeholder( )把特定的节点指定为 feed 节点来创建它们。

什么是Fetch

TensorFlow中的一个概念:为了取回运算操作的输出结果。取回的申请发生在触发执行图操作的时候,而不是发生在建立图的时候。如果要取回一个或多个节点(node)的 Tensor 值,可以通过在 Session 对象上调用run( )方法并将待取回节点(node)的列表作为参数来执行图表(graph)。

神经网络那么多种如何区分

图片原网址

http://www.asimovinstitute.org/neural-network-zoo/

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  TensorFlow