@xialu
2017-01-11T04:10:23.000000Z
字数 1959
阅读 1287
turtorialML
输入与输出:
回归方程:
代价函数:我们用代价函数表明当前模型的 预测值与真实值的偏离程度
使目标:我们希望得到一个
方法,梯度下降:
repeat until {
同时 对 做操作
}
线性回归是一个回归算法,目的是预测一个连续的值。
逻辑回归是分类算法,目的是预测某个离散的值。不妨假设只有二分类。
的结果是一个连续值。
我们想要对它进行转换,使得转换后
1. 大于0小于1
2. 给定一个阈值,小于阈值的为0,大于阈值的为1。
3. 能够反映出:越大,越趋近于1,反之趋近于0,这一特点。
即
这里我们选择sigmoid函数,它取值空间为(0,1),单调递增,连续可导,导数形式非常简单,是一个在机器学习领域常见的函数。公式和图形如下:
至于为什么选择这一个,可以参看:http://www.zhihu.com/question/35322351

我们设,为输入变量对应的真实值,那么直接往下看:
Target
Repeat {
simultaneous update all
}
这里梯度下降的原理我们清楚,这个代价函数就看不懂了,线性回归是取方差作为代价,这里的log是怎么回事?
想想看,我们想要的代价函数需要有什么性质?
如果真实值为1,越大越趋近于1,也就是预测的越准确。代价函数随单调递减。
反之,如果真实值为0,代价函数随单调递增。
先说下为什么不用方差和

接下来给出代价方程的另一种形式
我们把带入代价方程,得到
满足最初提到的性质。
以上证明了逻辑回归代价函数的合理性,而推导过程涉及到最大似然估计,见http://blog.csdn.net/zouxy09/article/details/20319673#python