训练神经网络的根本步骤
回顾逻辑回归模型的训练步骤
- 依据给出的输入值 x 和参数 w,b 来确定训练模型
- 确定损失函数和老本函数
- 利用参数值的梯度降落函数,找出使得老本函数部分最小的值
训练神经网络的步骤
- 创立神经网络的模型架构
- 依据模型确定损失函数和代价函数:二分类问题,回归问题
其中二元穿插熵(binary cross entropy)y 是二元标签 0 或 1,p(y)属于输入标签 y 的概率,即对于标签 y 为 1 的状况,loss=-log(p(y)) 如果预测值 p(y)趋近于 1,那么损失函数的值该当趋近于 0。反之,如果此时预测值 p(y)趋近 于 0,那么损失函数的值该当十分大,y= 0 时,损失函数 loss=-log(1-p(y))
- 对于穿插熵损失函数的补充:
对图像牛、鹿、猴做出预测,通过 softmax 函数输入各种可能的预测值,而后在 one-hot 中的 label 值。label 中只有一个类别为 1, 其余都为 0,再把对应的概率的对数和标签值相乘累加求正数失去损失函数,对实在值预测概率越大,loss 函数越靠近 0,反之 loss 函数越大,损失越大
应用穿插熵函数的起因 :
极大似然预计,信息熵,详情看链接:https://www.bilibili.com/vide… -
调用 Tensorflow 的反向流传函数和二元穿插熵函数来确定梯度降落
sigmoid 函数的代替函数
如何抉择 sigmoid 函数
output layer:
- 解决的是 binary classification 问题,抉择 sigmoid 函数
-
解决的是线性回归问题,比方预测股票的涨跌问题,能够抉择线性激活函数,如果预测值必须是非负值,则能够抉择 ReLu 函数
hidden layer:
- ReLu 函数和 sigmoid 函数,个别抉择 ReLu 函数,起因如下:ReLu 函数的计算更快,效率更高,而且 ReLu 函数没有平坦的曲线,而 sigmoid 函数有两端较为平坦的局部,这使得 sigmoid 函数的 w 的梯度降落更为迟缓。个别抉择 ReLu 函数作为暗藏层的默认函数
抉择激活函数
个别在暗藏层不抉择线性函数而是 ReLU 函数,为了引入多元
多类分类问题及 Softmax 函数
- 是指可能有两个及以上的输入标签
-
逻辑回归与 Softmax 函数的代价函数的比拟
其中,Softmax 的 y 只能取一个值,损失函数只依据所取的 y 值来进行计算
神经网络的 Softmax 输入
在 Softmax 函数中的输入向量 an 的值与 Z1 到 Zn 的值都有关系
Softmax 的改良实现
在逻辑回归中的改良:
在 Softmax 中的改良:
疑难:为什么输入层的激活函数是线性函数:
多标签分类问题
学习率的高级优化办法:
Adam Algorithm Intuition:
如果梯度沿着同一个方向挪动,阐明须要减少学习率
如果梯度来回震荡,难以收敛吗,阐明须要减小学习率
代码实现:
其余的网络层类型
convolutional Layer: 卷积层
以察看病患的心电图为例子,以心电图的每一个稳定值为一个输出变量 x,x1-x20 输出到一个神经元,x11-x30 输出到一个神经元,以此类推,暗藏层共 9 个神经元,再输出到下一个暗藏层的时候,只需关注前一层的 5 个激活值,一个神经元接管 5 个激活值,共 3 个神经元,最初再输出到只有一个神经元的 sigmoid 层,来输入可能的判断
长处:更少的计算量以及须要更少的训练数据