卷积网络反向传播总结
反向传播算法总结
总体目标:利用梯度下降的方式,使损失函数尽快的达到最小值。
第一步:定义损失函数
1.二次代价函数:
该函数计算输出结果与预期结果的欧式距离的和,主要用于线性回归模型
2. 交叉熵代价函数
交叉熵代价函数对分类问题有一个很好的解释:当分类输出正确类的结果(输出层使用softmax函数之后的值)接近于 1,即a=~1时,对应正确类的标签为1,即y=1。则可得到,C中第一项接近于0,第二项等于0。对于非正确类,a接近于 0,y=0,则C中第一项为0,第二项接近于0。故最终 C接近于0;当分类输出正确类的结果与1的差距越大,则上式C的值 越大。
3.对数似然函数
对数似然函数与交叉熵代价函数类似,但只考了正确类损失,不考虑错误类的损失,用的也比较多。与交叉熵代价函 数一样,对数似然也对分类有一个很好的解释:当正确类的输出值a(输出层只用softmax后的值)接近于1时,y=1,C 接近于0;当输出值a距离a越大时,C值越大。
第二步: 求输出层、全连接层、池化层、卷积层的δ
1.δ的公式:
.
: 该符号表示损失函数对L层z值的偏导数
:该符号表示损失函数,W表示权重,b表示偏置
:该符号表示L层未加**函数或分类函数的样本值
:该符号表示L层加了**函数或分类函数的样本值,它与符号的关系为:
:该符号表示Hadamard积,对于两个维度相同的向量A (a1,a2,...an)T和B(b1,b2,...bn)T, 则A⊙B= (a1b1,a2b2,...anbn)T
:符号表示**函数或分类函数
2.池化层δ的推导关系
3.卷积层δ的推导关系
第三步:求卷积层的W和b的梯度
W的梯度公式:
B的梯度公式:
第四步:更新W和b
注意学习速率的问题
第五步:返回第二步,直到迭代样本使预测输出达到期望