一、深度学习与深层神经网络
1、线性模型局限性
线性模型无论多少层,表达能力是一致的。可以通过激活函数实现非线性。
2、多层网络可以解决异或运算
二、损失函数定义
1、经典损失函数:
分类问题:
二分类:取0.5作为阈值
多分类:设置n个输出节点,每个对应该类的可能性。神经网络输出向量 —>概率分布:softmax。
两个向量的距离:交叉熵 - sigma p_x log(q_x),其中p代表y,q代表yHat
softmax: 最后加一层 y‘ = normed(e^y)
reduce_mean:直接对整个矩阵做平均
一起使用可以通过 tf.nn.softmax_cross_entropy_with_logits
回归问题:MSE mean (y-yHat)^2
2、自定义损失函数
tf.greater
tf.select (condition, trueValue, falseValue)
三、神经网络优化算法
梯度下降、batch、
1、学习率
指数衰减学习率:tf.train.exponential_decay 、 decayLR = LR * decay_date ^ (global_steps / decay_steps)