tensorflow笔记第二讲
目录
P1
tf.where()函数,类似三目运算符
np.random.RandomState.rand()生成随机数(0-1之间)
np.vstack()两个数组纵向叠加
这里构成网格图的函数
学习率的指数衰减
**函数
- **函数为非线性时,神经网络才不是简单的输入x的线性组合,多层网络提升了表达力。
- 优秀的**函数
sigmoid函数
Tanh函数
Relu函数
Leaky Relu函数
**函数选取建议
损失函数loss
均方误差
- 这里例子中假定了预测多了和预测少了的损失是一样的。
自定义损失函数
- 由于实际上 预测多了和预测少了的损失是不一样的,所以需要自定义两个损失函数。
交叉熵
- 交叉熵越大,两个概率分布越远
实际上的softmax与交叉熵结合
- 之前是先计算softmax 如:y_pro = tf.nn.sofrmax(y)
- 再计算 loss_ce1 = tf.losses.categorical_crossentropy(y_,y_pro)
- y_表示实际标签
- 现在可以把两个式子整合到一个上来,loss_ce2 = tf.nn.softmax_cross_entropy_with_logits(y_,y)
拟合问题
正则化缓解
参数优化器
SGD 无动量的常用梯度下降法
SGDM 在SGD基础上增加了一阶动量
- SGDM的例子,经验值beta为0.9
Adagrad, 在SGD基础上增加二阶动量
RMSProp SGD的基础上增加二阶动量
- 例子如下
Adam优化器 同时结合SGDM一阶动量和RMSProp二阶动量
- 并在此基础上增加了两个修正项
- 具体如下: