单个样本的cost function用Loss function来表示,使用平方误差(squared error):
L(y^,y)=21(y^−y)2 逻辑回归一般不使用平方误差来作为Loss function。原因是这种Loss function一般是non-convex的。
non-convex函数在使用梯度下降算法时,容易得到局部最小值(localminimum),即局部最优化。而最优化的目标是计算得到全局最优化(Global optimization),因此一般选择的Loss function应该是convex的
构建另外一种Loss function(针对单个样本),且是convex的:
L(y^,y)=−(ylog y^+(1−y)log (1−y^)) 当y=1时,L(y^,y)=−logy^,如果y^越接近1,L(y^,y)≈0,表示预测效果越好;如果y^越接近0,L(y^,y)≈+∞,表示预测效果越差
当y=0时,L(y^,y)=−log(1−y^),如果y^越接近0,L(y^,y)≈0,表示预测效果越好;如果y^越接近1,L(y^,y)≈+∞,表示预测效果越差
Cost function是m个样本的Loss function的平均值,反映了m个样本的预测输出y^与真实样本输出y的平均接近程度:
J(w,b)=m1i=1∑mL(y^(i),y(i))=−m1i=1∑m[y(i)log y^(i)+(1−y(i))log (1−y^(i))]