![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
TensorFlow
农夫左三拳
这个作者很懒,什么都没留下…
展开
-
tf.Variable()参数解释
1.以Weights的创建为例2. tf.Variable()参数解释initial_value:默认为None,可以搭配tensorflow随机生成函数,如上例。trainable:默认为True,可以后期被算法优化的。如果不想该变量被优化,改为False。validate_shape:默认为True,形状不接受更改,如果需要更改,validate_shape=Fa...原创 2018-04-24 13:35:52 · 22849 阅读 · 1 评论 -
神经网络多分类任务的损失函数——交叉熵
神经网络解决多分类问题最常用的方法是设置n个输出节点,其中n为类别的个数。对于每一个样例,神经网络可以得到的一个n维数组作为输出结果。数组中的每一个维度(也就是每一个输出节点)对应一个类别。在理想情况下,如果一个样本属于类别k,那么这个类别所对应的输出节点的输出值应该为1,而其他节点的输出都为0。以识别手写数字为例,0~9共十个类别。识别数字1,神经网络的输出结果越接近[0,1,0,0,0,0,0...原创 2018-04-25 15:04:37 · 47339 阅读 · 5 评论 -
神经网络学习率(learning rate)的衰减
一、学习率衰减的概念和必要性学习率过大,在算法优化的前期会加速学习,使得模型更容易接近局部或全局最优解。但是在后期会有较大波动,甚至出现损失函数的值围绕最小值徘徊,波动很大,始终难以达到最优,如下图蓝色曲线所示。所以引入学习率衰减的概念,直白点说,就是在模型训练初期,会使用较大的学习率进行模型优化,随着迭代次数增加,学习率会逐渐进行减小,保证模型在训练后期不会有太大的波动,从而更加接近最优解,如下...原创 2018-04-26 11:21:47 · 24819 阅读 · 2 评论 -
神经网络的过拟合问题以及L1、L2正则化
所谓过拟合,指的是当一个模型过为复杂之后,它可以很好的“记忆”每一个训练数据中随机噪音的部分而忘记了要去“学习”训练数据中通用的趋势。举一个极端的例子,如果一个模型的参数比训练数据的总说还多,那么只要训练数据不冲突,这个模型完全可以记住所有训练数据的结果从而使得损失函数为0。然而,过度拟合训练数据中的随机噪音虽然可以得到非常小的损失函数,但是对于未知数据可能无法做出可靠的判断。 下图显示了模...原创 2018-04-26 17:41:29 · 2876 阅读 · 0 评论 -
神经网络中的滑动平均模型
在采用随机梯度下降(SGD)算法训练神经网络时,使用滑动平均模型可以一定程度增强参数的稳定性,提高最终模型在测试数据上的表现,使模型在测试数据上更健壮。在TensorFlow中提供了tf.train.ExponentialMovingAverage(decay, steps)来实现滑动平均模型。ExponentialMovingAverage对每一个变量会维护一个影子变量,并且保存在Expon...原创 2018-04-27 14:29:49 · 1773 阅读 · 0 评论