3.9 训练一个 Softmax 分类器(Training a Softmax classifier)
C=4,某个样本的预测输出y^和真实输出y:
y^=0.30.20.10.4 y=0100 从y^值来看,P(y=4∣x)=0.4,概率最大,而真实样本属于第2类,该预测效果不佳
定义softmax classifier的loss function为:
L(y^,y)=−j=1∑4yj⋅log y^j L(y^,y)简化为:
L(y^,y)=−y2⋅log y^2=−log y^2 让L(y^,y)更小,就应该让y^2越大越好。y^2反映的是概率
m个样本的cost function为:
J=m1i=1∑mL(y^,y) 预测输出向量A[L]即Y^的维度为(4, m)
softmax classifier的反向传播过程:
先推导dZ[L]:
da[L]=−a[L]1 ∂z[L]∂a[L]=∂z[L]∂⋅(∑i=1Cezi[L]ezi[L])=a[L]⋅(1−a[L]) 所有m个训练样本:
dZ[L]=A[L]−Y