写在前面:
1、好多逻辑回归的算法推导要么直接省略,要么写的比较难以看懂,比如写成矩阵求导,繁难难懂,本文进行推导,会链式求导法则应当就能看懂
2、本文参考若干文章,写在附注处,如果参考未写引用,还望提出
2、本文后续可能不定时更新,如有错误,欢迎提出
一、最大似然估计(附1)
Logistic Regression Classifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数。
- 优点:计算代价不高,易于理解和实现。
- 缺点:容易欠拟合,分类精度可能不高。
- 使用数据类型:数值型和标称型数据
介绍逻辑回归之前,我们先看一问题,有个黑箱,里面有白球和黑球,如何判断它们的比例。
我们从里面抓3个球,2个黑球,1个白球。这时候,有人就直接得出了黑球67%,白球占比33%。这个时候,其实这个人使用了最大似然概率的思想,通俗来讲,当黑球是67%的占比的时候,我们抓3个球,出现2黑1白的概率最大。我们直接用公式来说明。
假设黑球占比为P,白球为1-P。于是我们要求解MAX(P*P*(1-P)),显而易见P=67%(求解方法:对方程求导,使导数为0的P值即为最优解)
我们看逻辑回归,解决的是二分类问题,是不是和上面黑球白球问题很像,是的,逻辑回归也是最大似然概率来求解。
假设我们有n个独立的训练样本{(x1, y1) ,(x2, y2),…, (xn, yn)},y={0, 1}。那每一个观察到的样本(xi, yi)出现的概率是:
上面为什么是这样呢?当y=1的时候,后面那一项是不是没有了,那就只剩下x属于1类的概率,当y=0的时候,第一项是不是没有了,那就只剩下后面那个x属于0的概率(1减去x属于1的概率)。所以不管y是0还是1,上面得到的数,都是(x, y)出现的概率。那我们的整个样本集,也就是n个独立的样本出现的似然函数为(因为每个样本都是独立的,所以n个样本出现的概率就是他们各自出现的概率相乘):
如上,根据最大似然估计我们得到了似然函数,上述这一段主要是要理解极大似然估计的思想。
附录2:
这样,在给定一定的样本之后,我们可以构造出似然函数,然后可以使用极大似然估计MLE的思想来求解参数。
但是,为了满足最小化风险理论,我们可以将MLE的思想转化为最小化风险化理论,最大化似然函数其实就等价于最小化负的似然函数。
对于MLE,就是利用已知的样本分布,找到最有可能(即最大概率)导致这种分布的参数值;或者说是什么样的参数才能使我们观测到目前这组数据的概率最大。
二、算法推导过程:
分析:
三、程序源码
附1:
最大似然、代码
作者:a_achengsong
来源:CSDN
原文:https://blog.csdn.net/csqazwsxedc/article/details/69690655
版权声明:本文为博主原创文章,转载请附上博文链接!
附录2:
算法推导
作者:jediael_lu
来源:CSDN
原文:https://blog.csdn.net/jediael_lu/article/details/77852060
版权声明:本文为博主原创文章,转载请附上博文链接!
附录3: