天天看点

【机器学习】逻辑斯蒂回归原理

逻辑斯蒂函数

引入: 在线性感知器算法中,我们使用了一个f(x)=x函数,作为激励函数,而在逻辑斯蒂回归中,我们将会采用sigmoid函数作为激励函数,所以它被称为sigmoid回归也叫对数几率回归(logistic

regression),需要注意的是,虽然它的名字中带有回归,但事实上它并不是一种回归算法,而是一种分类算法。它的优点是,它是直接对分类的可能性进行建模的,无需事先假设数据分布,这样就避免了假设分布不准确所带来的问题,因为它是针对于分类的可能性进行建模的,所以它不仅能预测出类别,还可以得到属于该类别的概率。除此之外,sigmoid函数它是任意阶可导的凸函数。在这篇文章中,将会使用到梯度上升算法,可能有很多同学学到这里会有点迷糊,之前我们所使用的是,梯度下降算法为什么到这里却使用的是梯度上升算法?

​​解释logistic回归为什么要使用sigmoid函数​​​

准备数据

import numpy as np
 
X = np.random.randn(50,4)
X.shape

w = np.random.randn(4) 
X[[0]].dot(w)

#或者 w.T.dot(X[0])      

3.154665990657282

'''假如有一个罐子,里面有黑白两种颜色的球,数目多少不知,
两种颜色的比例也不知。我们想知道罐中白球和黑球的比例,
但我们不能把罐中的球全部拿出来数。现在我们可以每次任意从已经摇匀
的罐中拿一个球出来,记录球的颜色,然后把拿出来的球 再放回罐中。
这个过程可以重复,我们可以用记录的球的颜色来估计罐中黑白球的比例。
假如在前面的一百次重复记录中,
有七十次是白球,请问罐中白球所占的比例最有可能是多少?'''
# 请问罐子中白球的比例是多少?很多种可能10%,5%,95%……
# 请问罐子中白球的比例最有可能是多少?70%,进行精确计算,‘感觉’ 
# ‘感觉’的计算
# 假设白球的概率是p,黑球1-p
# 取出一个球是白球的概率 :p
# 取出两个球,都是白球的概率:p**2
# 取出3个球,2个白球一个黑球的概率:p**2*(1-p)
# 取出100个球,70是白球,30个是黑球,概率:p**70*(1-p)**30
f(p) = p**70*(1-p)**30      
【机器学习】逻辑斯蒂回归原理

将似然函数变成log函数

梯度上升添加符号就变为梯度下降

再求导求出j点的梯度

!!!

我是这样认为的:所谓的梯度“上升”和“下降”,一方面指的是你要计算的结果是函数的极大值还是极小值。计算极小值,就用梯度下降,计算极大值,就是梯度上升;另一方面,运用上升法的时候参数是不断增加的,下降法是参数是不断减小的。但是,在这个过程中,“梯度”本身都是下降的。

【机器学习】逻辑斯蒂回归原理

提取共同系数

【机器学习】逻辑斯蒂回归原理
【机器学习】逻辑斯蒂回归原理

手写笔记个人总结使用

【机器学习】逻辑斯蒂回归原理
【机器学习】逻辑斯蒂回归原理
【机器学习】逻辑斯蒂回归原理

可参考

​​彻底搞懂逻辑斯蒂回归​​

PS:公众号内回复 :Python,即可获取最新最全学习资源!

公众号:刘旺學長