1. 逻辑回归:问题只有两项,即{0, 1}。一般而言,回归问题是连续模型,不用在分类问题上,且噪声较大,但如果非要引入,那么采用逻辑回归模型。

对于一般训练集:

参数系统为:

逻辑回归模型为:

     (sigmoid函数)

    

  1. 参数求解

对于逻辑回归用来分类{0, 1}问题,假设满足伯努利模型:

可以将上式写为一般形式为:

为了得到参数θ,求最大似然估计[2],可以得到:

为了简化问题,采用ln函数,即对数似然,可以得到:

这里为了最大似然估计使参数最大化,有两种方法求解:

  1. 采用梯度上升的方法(与梯度下降类似,不过减号变为加号),即:

(批量梯度上升)

对于每一个θj,可以得到:

(随机梯度上升)

根据l(θ),有:

所以:

  1. 采用牛顿的方法

上图目标是找到f(θ)=0,所以用一个迭代的方法,从上图可以看出:

最终找到θ使得f(θ)=0。采用最大似然估计使参数最大,实际上就是找到θ使得l'(θ)=0。那么可以将上式改写为:

扩展到θ,有:

其中,H是Hession矩阵,

牛顿法是二次收敛,假设第一次迭代精度为0.01error,那么第二次0.001,第三次为0.00001。收敛速度明显高于梯度下降。可是每次需要求一次H矩阵的逆,代价很高。

求最大值时,用,求最小值时实际上也是,原因个人认为无论时求最大或者最小值都是使得l'(θ)=0,并没有本质变化。

  1. 说明:

一件事情的几率可以定义为:

其中,p为改事件发生的概率。那么对数几率logit可以定义为:

所以,对于logistic回归是对数线性回归。

  1. sigmoid函数推导

如果满足对数线性,则有

也就是说,sigmoid函数输出的值可以认为是为1类别的概率。

  1. logistic回归的损失函数

由于对数似然(logarithm likelihood, LL)是要取最大值,损失函数要求最小,所以对对数似然函数求相反数,即:

上式是建立在情况下的。

如果,那么似然函数可以定义为:

其中指数部分还要满足[0,1]的范围内。那么损失函数(负对数似然函数) 可以写为:

[1]网易公开课——斯坦福大学机器学习

[2] http://blog.csdn.net/yanqingan/article/details/6125812

**转载请注明出处!

逻辑回归(分类问题)(Logistic Regression、罗杰斯特回归)的更多相关文章

  1. 逻辑回归模型(Logistic Regression)及Python实现

    逻辑回归模型(Logistic Regression)及Python实现 http://www.cnblogs.com/sumai 1.模型 在分类问题中,比如判断邮件是否为垃圾邮件,判断肿瘤是否为阳 ...

  2. 斯坦福CS229机器学习课程笔记 part2:分类和逻辑回归 Classificatiion and logistic regression

    Logistic Regression 逻辑回归 1.模型 逻辑回归解决的是分类问题,并且是二元分类问题(binary classification),y只有0,1两个取值.对于分类问题使用线性回归不 ...

  3. 斯坦福机器学习视频笔记 Week3 逻辑回归与正则化 Logistic Regression and Regularization

    我们将讨论逻辑回归. 逻辑回归是一种将数据分类为离散结果的方法. 例如,我们可以使用逻辑回归将电子邮件分类为垃圾邮件或非垃圾邮件. 在本模块中,我们介绍分类的概念,逻辑回归的损失函数(cost fun ...

  4. matlab-逻辑回归二分类(Logistic Regression)

    逻辑回归二分类 今天尝试写了一下逻辑回归分类,把代码分享给大家,至于原理的的话请戳这里 https://blog.csdn.net/laobai1015/article/details/7811321 ...

  5. 机器学习理论基础学习3.3--- Linear classification 线性分类之logistic regression(基于经验风险最小化)

    一.逻辑回归是什么? 1.逻辑回归 逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的. logistic回归也称为逻辑回归,与线性回归这样输出 ...

  6. 美团店铺评价语言处理以及文本分类(logistic regression)

    美团店铺评价语言处理以及分类(LogisticRegression) 第一篇 数据清洗与分析部分 第二篇 可视化部分, 第三篇 朴素贝叶斯文本分类 本文是该系列的第四篇 主要讨论逻辑回归分类算法的参数 ...

  7. 分类和逻辑回归(Classification and logistic regression)

    分类问题和线性回归问题问题很像,只是在分类问题中,我们预测的y值包含在一个小的离散数据集里.首先,认识一下二元分类(binary classification),在二元分类中,y的取值只能是0和1.例 ...

  8. 机器学习算法笔记1_2:分类和逻辑回归(Classification and Logistic regression)

    形式: 採用sigmoid函数: g(z)=11+e−z 其导数为g′(z)=(1−g(z))g(z) 如果: 即: 若有m个样本,则似然函数形式是: 对数形式: 採用梯度上升法求其最大值 求导: 更 ...

  9. 逻辑回归原理 面试 Logistic Regression

    逻辑回归是假设数据服从独立且服从伯努利分布,多用于二分类场景,应用极大似然估计构造损失函数,并使用梯度下降法对参数进行估计.

随机推荐

  1. vue中遇到的坑 --- 变化检测问题(数组相关)

    最近在项目中遇到了一个问题,不知道为什么,所以最后通过动手做demo实践.查文档的方式解决了,这里做一个总结. 例1 <!DOCTYPE html> <html lang=" ...

  2. 01-struts2配置详解

    1 struts.xml配置详解 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE strut ...

  3. 10 Linux DIG Command Examples for DNS Lookup--reference

    by RAMESH NATARAJAN on FEBRUARY 29, 2012 http://www.thegeekstuff.com/2012/02/dig-command-examples/ D ...

  4. 《Python编程从入门到实践》_第九章_类

    创建一个简单的类 根据Dog类创建的每个实列都将存储名字和年龄.我们赋予了每条小狗蹲下(sit())和打滚(roll_over())的能力: class Dog(): ""&quo ...

  5. 【Postman】Postman的安装和使用

    Postman一款非常流行的API调试工具.其实,开发人员用的更多.因为测试人员做接口测试会有更多选择,例如Jmeter.soapUI等.不过,对于开发过程中去调试接口,Postman确实足够的简单方 ...

  6. javascript数组与字符串之间转换

    一.数组转字符串(将数组元素用某个字符连接成字符串) var a, b;a = new Array(0,1,2,3,4);b = a.join("-"); 二.字符串转数组(将字符 ...

  7. js 获取 Url.Action 设置area

    var url = '@Url.Action("UserEdit","User",new { Area = "Setup", id = 1} ...

  8. mybatis一对多映射

    场景: A:SecControlRulePojo.java B:SecControlSubRulePojo C:SecControlSubRuleManyPojo 实体A中包含List<B> ...

  9. linux里终端安转视频播放器的操作及显示

    [enilu@enilu ~]$ mplayerbash: mplayer: command not found[enilu@enilu ~]$ yum list | grep mplayer^C^C ...

  10. eclipse的应用和整理

    1如何在eclipse中获取动态项目的绝对路径 1.鼠标选中项目,右击菜单,选择properties2.出来弹出框,选择resource,location的值就是你想要的项目绝对路径 JSP中获得当前 ...