Logistic Regression
来源:互联网 发布:禁止系统安装软件 编辑:程序博客网 时间:2024/05/16 17:10
Logistic Regression
Logistic 函数
函数图像
逻辑斯蒂回归是分类算法,其分类原理是利用Logistic函数计算对当前数据计算其属于某一类的后验概率
二分类
对于训练数据集
对某条数据
其中:
根据其最大的后验概率对于的类别作为分类标签
在实际计算中往往在
上面的形式变成:
几率
表示一个事件发生的概率与不发生概率的比值,设发生的概率是
则几率:
对数几率
几率的对数
在逻辑斯蒂回归模型中,对数几率:
可以看出输出
如何求参数
利用极大似然估计进行求解
对于训练数据集
设
似然函数:
取对数
可以对
上面的
最终我们得到逻辑斯蒂回归问题的损失函数:
这里的损失函数是对数损失函数,常见的几种损失函数《统计学习方法》中有介绍
对上式求导,直接利用梯度下降法对
先整理上式
先对后面求导
其中:
若理解不透可以把
对
其导数:
所以
则
其中:
其中:
这里是批量梯度下降法
对于随机梯度下降法
也可以根据拟牛顿法、BFGS等求解
多分类
one-vs-all
利用二分类的思想,把其中一类当作正类,其他类当作负类,运行一次分出一类,当有k类时候运行k-1次分出k类
one-vs-one
softmax regression方法,这个特别是在神经网络的最后输出层用到的多。
对于训练数据集
对于给定的测试输入
其中
当是
softmax 回归算法的代价函数
其中:
可以看到,Softmax代价函数与logistic 代价函数在形式上非常类似,只是在Softmax损失函数中对类标记的
求解过程也是通过迭代的方式
优缺点
优点
1.实现简单
2.分类时计算量非常小,速度很快,存储资源低
3.可以输出数据属于某一类的概率
缺点
1.容易欠拟合,一般准确度不太高
2.只能处理两分类问题(在此基础上衍生出来的softmax可以用于多分类),且必须线性可分;
3.当输入数据中某些变量是噪声的时候影响预测模型
4.输入样本点需要相互独立,否则将会倾向于这些相关数据点
逻辑斯蒂回归与神经网络的区别
逻辑斯蒂回归模型图
神经网络模型图
可以看出:
1.Logistic Regression是一个单层神经网络
2.多个LR组合在一起形成神经网络模型
激活函数
1.LR中用到的是逻辑斯谛函数或者说是sigmoid函数
2.神经网络中可以用sigmoid函数 也可以用其他函数如:tanh函数等
最优解
1.LR的损失函数是凸函数,存在最优解,通过梯度下降法或者其他算法能够找到这个最优解
2.将多个LR组合在一起后形成的神经网络,损失函数不能够保证还是凸函数,通过反馈神经网络算法求解的可能陷入局部最优解
多分类
1.LR对于多分类,可以 利用One-vs-All or One-vs-One进行,对于one vs all的代价比较高, one vs one 可以是softmax算法
2.神经网络多分类中最后一层softmax算法
性能
1.LR简单,消耗内存小
2.NN模型复杂,代价高
其他
神经网络算法比较多,用处各有不同,分类、回归、语义识别、翻译等
参考1:UFLDL
参考2:《统计学习方法》
参考2:MLFAQ
.
- logistic regression
- logistic regression
- logistic regression
- Logistic Regression
- Logistic Regression
- logistic regression
- Logistic Regression
- Logistic Regression
- logistic regression
- Logistic regression
- Logistic Regression
- Logistic Regression
- Logistic Regression
- Logistic Regression
- Logistic Regression
- logistic regression
- logistic Regression
- Logistic regression
- CSS定义超链接四个状态的正确顺序L-V-H-A
- Leetcode 232. Implement Queue using Stacks
- 第十四周项目 阅读程序 2
- Gym 100917EExtreme Permutations(状压dp)
- 第十四周项目一(1) 阅读程序,解释程序运行得到的结果
- Logistic Regression
- 第十四周项目 阅读程序 3
- [sql2008错误问题] RegisteredServerException 异常
- Windows下Apache以FastCGI模式运行PHP
- 2016SDAU编程练习三1007
- 2016-5-29:实验室第四天
- ListView 头部ViewPager广告轮询图效果
- NumPy 数组组合分割
- 苹果Swift编程语言入门教程【中文版】