Cost function(代价函数)
1、参数表示:
m 个训练样本:{(x(1), y(1)), (x(2), y(2)), ..., (x(m), y(m))}
神经网络的层数:L
l 层的神经元数量(不计入偏置单元):Sl
2、两种分类问题:
(1)Binary classification(二元分类):
y = 0 or 1
只有一个输出单元 / hθ(x)为一个实数 / SL = 1
(2)Multi-class classification(多类别分类):
有K个输出单元
3、代价函数:
Backpropagation algorithm(反向传播算法)
1、字符定义:
δj(l) :表示第 l 层的第 j 个结点的误差。
aj(l) : 表示第 l 层的第 j 个结点的激励值。
2、计算过程:(假设是4层神经网络,即下图)【后期推导】
对于第4层的每一个输出单元:
δj(4) = aj(4)- yj (其中 aj(4) 也可记为hθ(x))
向量化:δ(4) = a(4)- y
δ(3) = (Θ(3))Tδ(4) .*g'(z(3)) ,其中 g'(z(3)) = a(3).*(1-a(3))
δ(2) = (Θ(2))Tδ(3) .*g'(z(2)) ,其中 g'(z(2)) = a(2).*(1-a(2))
δ(1) 不存在误差。
3、算法流程:
(其中向量化表示Δ:)
通过证明可得【后期推导】: