第二章--第三节 成本函数和损失函数推导过程

来源:互联网 发布:唯品会类似淘宝客 编辑:程序博客网 时间:2024/05/16 18:37

前面一节,介绍了神马是sigmoid函数。

其实他的本质,根据doctor wu所示,就是y=wTx+b

机器学习的重点就是能够算出wT和b两个不同的参数,进行模拟。

损失函数,不知道为啥,doctor wu瞬间就拿出了平方差这个方法,上网搜索了下,对于损失函数,还是有几种选择。请查看。

常见的损失函数(信息引用http://blog.csdn.net/bitcarmanlee/article/details/51165444)

机器学习或者统计机器学习常见的损失函数如下:

1.0-1损失函数 (0-1 loss function) 

L(Y,f(X))={1,0, f(X)Y = f(X)

2.平方损失函数(quadratic loss function) 

L(Y,f(X))=(Yf(x))2

3.绝对值损失函数(absolute loss function) 

L(Y,f(x))=|Yf(X)|

4.对数损失函数(logarithmic loss function) 或对数似然损失函数(log-likehood loss function) 

L(Y,P(Y|X))=logP(Y|X)

逻辑回归中,采用的则是对数损失函数。如果损失函数越小,表示模型越好。

损失函数详解

根据上面的内容,我们可以得到逻辑回归的对数似然损失函数cost function: 

cost(hθ(x),y)={log(hθ(x))log(1hθ(x))if y=1if y=0

稍微解释下这个损失函数,或者说解释下对数似然损失函数: 
当y=1时,假定这个样本为正类。如果此时hθ(x)=1,则单对这个样本而言的cost=0,表示这个样本的预测完全准确。那如果所有样本都预测准确,总的cost=0 
但是如果此时预测的概率hθ(x)=0,那么cost。直观解释的话,由于此时样本为一个正样本,但是预测的结果P(y=1|x;θ)=0, 也就是说预测 y=1的概率为0,那么此时就要对损失函数加一个很大的惩罚项。 
当y=0时,推理过程跟上述完全一致,不再累赘。

将以上两个表达式合并为一个,则单个样本的损失函数可以描述为: 

cost(hθ(x),y)=yilog(hθ(x))(1yi)log(1hθ(x))

因为 yi 只有两种取值情况,1或0,分别令y=1或y=0,即可得到原来的分段表示式。

全体样本的损失函数可以表示为: 

cost(hθ(x),y)=i=1myilog(hθ(x))(1yi)log(1hθ(x))

这就是逻辑回归最终的损失函数表达式

好了,上面就是具体的推导,其实成本函数就是对损失函数的求和。但是至于具体如何使用,博主还是不太清楚,在下面的学习中,我会弄懂,究竟是如何利用成本损失函数进行机器学习。



原创粉丝点击