1.分类与回归
对于输入与输出变量均为连续的预测问题为回归问题。而输入连续,输出值离散的的预测问题成为分类问题。
逻辑回归本质上是分类,只不过是用到了回归的思想解决分类的问题。
比如预测某一地区房价,为回归问题。而预测是否得癌症,这样的问题成为分类问题。
2.线性回归
假设现在有一些数据点,我们用一条直线对这些点进行拟合,这个拟合的过程就称作线性回归,这为回归问题。
3.逻辑回归
由于逻辑回归是用来分类的,我们想要的函数是能接受所有的连续输入,然后预测出类别(离散值),这时候我们发现Sigmoid函数(一种阶跃函数)能很好的解决此问题,其公式为
其图形如下:
为了实现Logistic回归分类器,可以将每个特征都乘以一个回归系数,然后把所有的结果相加,如下:
z=w0x0 + w1x1 + w2x2 + ... + wnxn
即:
将这个总和代入g(z)中,得到一个范围在0~1之间的数值,其实对于结果g(z)我们可以理解为结果为1类的概率,比如0.3为1类的概率,但这时我们会把它分为0类,如下:
任何大于0.5的为1类,小于0.5的为0类。函数表达式为:
P(y=0|w,x) = 1 – g(z)
P(y=1|w,x) = g(z)
因此对于正确率有:
4.关于阈值
上面逻辑回归讲到的0.5即我们常设定的阈值,然而实际工作中可能有的阈值不为0.5,比如
1、癌症病人问题,如果设为0.5,则当0.49时视为无癌症,可能不太稳妥,造成医疗事故。
2、验证码识别,把阈值设高一点,能增加识别率
5.最大似然估计
理解为最大可能性概率,所有事情发生的最大概率。上面中单个样本正确的概率为
则我们追求的是让一组样本正确的概率最大,根据最大似然估计,则是让所有样本预测正确的概率相乘得到的P(总体正确)最大,
设Sigmoid函数为
则似然函数为:
为方便操作,取对数有:
x(i)理解为第i个样本Xi,y(i)为第i个样本的分类。
根据"最大似然估计",求l(θ)最大时,θ值最理想。
求最大似然函数估计值的一般步骤:
(1) 写出似然函数
(2) 对似然函数取对数,并整理
(3) 求导数
(4) 解似然方程
6.损失函数
我们在做优化时习惯让一个函数越小越好,因此我们取反后定义损失函数为:
我们利用梯度下降法更新θ
梯度下降:简单说就是从山顶上找一个最快,最陡峭的路线下山。
百度百科:梯度的本意是一个向量(矢量),表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该方向(此梯度的方向)变化最快,变化率最大(为该梯度的模)。
梯度的方向是方向导数中取到最大值(即求偏导数这个函数的最大值)的方向,梯度的值是方向导数的最大值。
对于学习率,如果设置太小会导致收敛太慢(走得太慢)。设置太大导致会错过最小值(山的最低点),导致收敛失败(无法到达山的最低点)。
总结:梯度下降其实就是斜率不断的下降,最终希望是斜率为0对应的就是在谷底的时候得到对应的k值,就是最好的k值。
求解右侧梯度部分同样需要对其求偏导,过程如下:
求出来的最大值则为下降的梯度。
Reference
https://blog.csdn.net/weixin_39445556/article/details/83930186