机器学习 Logistic Regression
Logistic Regression
之前我们讨论过回归问题,并且讨论了线性回归模型。现在我们来看看分类问题,分类问题与回归问题类似,只不过输出变量一个是离散的,一个是连续的。我们先关注二分类问题,假设
输出变量 y 只能取 0 或者 1 两个值,直观上,对于所有的输入变量,我们都希望可以映射到 [0-1] 的范围内, 为此,我们可以建立如下的函数:
其中,
称之为 logistic 函数 或者 sigmoid 函数. 很容易看出这个函数的值域在(0-1)之间。我们可以求得 logistic 函数的导数为:
那么,对于 logistic 回归模型,如何估计参数 θ。我们之前讲过,从最大似然估计出发,可以导出最小均方误差函数,也就是
最小二乘回归模型。同样地,我们仍然可以利用最大似然估计的方法来拟合 logistic 回归模型的参数,我们先给出如下的概率假设:
考虑到 y 只能取 0 或 1 两个值,上面的概率分布可以用一个式子表示成:
假设一组训练集含有m个训练样本,并且训练样本是相互独立的,那么这组训练集的概率分布为:
对上式取对数,可以得到:
如何使得上式的概率最大?我们可以利用梯度下降法,定义如下的式子:
其中,∇θl(θ) 是函数 l(θ) 对 θ 的导数。
为了推导l(θ) 对 θ 的导数,我们先考虑只有一对训练样本的情况。则:
因此,我们可以得到如下的参数 θj的更新表达式:
我们可以看到,这个表达式和第一讲里的LMS更新表达式很像,两者的区别在于LMS里的 hθ(x) 是一个线性函数,所以我们称之为线性回归,而这里的 hθ(x) 是一个非线性函数。
Generalized Linear Models
迄今为止,我们探讨了一个回归问题(第一讲),也探讨了一个分类问题(第三讲)。在回归问题中,我们定义了如下的概率分布:y|x;θ∼N(μ,σ2), 而在分类问题中,我们定义了另外一种概率分布:y|x;θ∼Bernoulli(ϕ). 接下来,我们将说明,上面所提到的两种分布,是一个广义分布族的特殊情况。这个广义分布族我们称之为,Generalized Linear Models (GLMs) (广义线性模), 我们也将说明该广义分布族中的其他模型能够适用于其他的回归或者分类问题。
The exponential family
首先我们定义一个指数族分布。如果任何一组变量满足指数族分布,那么该变量的概率分布可以表示为:
其中,η 称之为 natural parameter 或者 canonical parameter, T(y) 是 sufficient statistic, a(η)是log partition function. e−a(η)是归一化参数。
对于给定的 T,a,b,可以得到关于 η 的一组概率分布,不同的 η 对应着不同的概率分布。
接下来,我们将证明,Bernoulli分布和Gaussian分布是属于指数分布中的两种情况。Bernoulli分布,假设均值为ϕ,写作Bernoulli}(ϕ),输出变量的范围为y∈{0,1}, 那么,Bernoulli分布可以表示成 p(y=1;ϕ)=ϕ, p(y=0;ϕ)=1−ϕ,不同的ϕ可以得到不同均值的\textbf{Bernoulli}分布。我们将会看到,通过设置T,a,b,式(1)可以变成Bernoulli分布。
Bernoulli分布可以写成:
为了用式(1)表示Bernoulli分布,我们可以定义 η=log(ϕ/(1−ϕ)),我们也可以得到 ϕ=1/(1+e−η),进一步的,我们可以定义
我们可以看到,通过定义合适的 T,a,b,Bernoulli分布可以用广义的指数分布族表示。
接下来,我们看看Gaussian分布和广义指数分布族的关系,我们定义高斯分布为 N∼(μ,σ2),在讨论最大似然概率的时候,我们曾经看到方差 σ2 对最终的结果没有影响,为了简化这个问题,这里假定
方差为1,即σ2=1, 那么Gaussian概率分布可以表示为:
因此,我们可以定义
同样可以看到,Gaussian分布可以表示成指数分布。
事实上,我们常见的很多分布都是指数分布族中的一种,像multinomial (二项式分布), Poisson (泊松分布), 还有Gamma 分布,Beta分布等。
构造 Generalized Linear Models(GLMs)
这一章节,我们将要探讨如何构造Generalized Linear Models(GLMs),通常情况下,当我们考虑一个回归问题或者分类问题,我们希望预测随机变量y的值,y
是关于x的函数值,为了能够建立GLM模型,求得y关于x的条件分布,我们先给出三个假设:
1: y|x;θ∼ExponentialFamily(η), 即给定x和θ,y的分布是满足指数族分布的。
2:给定x,我们的目标是预测T(y)关于x的期望值,大多数情况下,T(y)=y,这意味着我们希望预测值h(x)满足 h(x)=E[y|x].
3: natural parameter η与输入x满足线性关系,即 η=θTx.
这三个假设可以让我们派生出一系列非常优美的学习算法,我们称之为广义线性模型,这些模型可以非常有效地建立关于y的不同的概率分布,接下来,我们将简单证明
之前提到的logistic regression和一般最小二乘(LMS)都从GLMs 演化而来。
为了证明一般最小二乘是广义线性模型中的一个特例,我们先假设目标变量y是连续的,并且假设y关于x的条件分布服从高斯分布 N∼(μ,σ2),我们把指数族分布式(1) 定义成高斯分布的形式,那么 μ=η,因此,我们有:
从上式可以看出,第一个等式基于假设2,因为高斯分布的期望就是均值μ,所以第二个等式也成立,第三个等式基于假设1,最后一个等式基于假设3。
我们可以看到从这三个假设可以推导出一般最小二乘的假设函数是 hθ(x)=θTx,所以一般最小二乘属于广义线性模型中的一种。现在我们看看 logistic regression, 这里我们探讨的是二分类问题,所以y∈{0,1}。考虑到y只能取0,1两个值,所以选择Bernoulli分布来表示y相对于x的条件分布,Bernoulli表示成指数分布族的时候,我们知道ϕ=1/(1+e−η), 而且注意,如果 y|x;θ∼Bernoulli(ϕ),那么 E[y|x;θ]=ϕ,所以和一般最小二乘的推导相似,我们可以得到:
因此我们可以得到logistic regression的假设函数 hθ(x)=1/(1+e−θTx),所以logistic regression也是广义线性模型中的一种. 一般来说,某个分布的期望与natural parameter η的关系可以用函数g表示为(g(η)=E[T(y);η]),函数g称为canonical response function,而g的反函数g−1称为canonical link function。所以高斯分布的 canonical response function就是 identify function,而Bernoulli分布的 canonical response function就是 logistic function。
参考文献
Andrew Ng, “Machine Learning”, Stanford University.
机器学习 Logistic Regression的更多相关文章
- 在opencv3中实现机器学习之:利用逻辑斯谛回归(logistic regression)分类
logistic regression,注意这个单词logistic ,并不是逻辑(logic)的意思,音译过来应该是逻辑斯谛回归,或者直接叫logistic回归,并不是什么逻辑回归.大部分人都叫成逻 ...
- Stanford机器学习---第三讲. 逻辑回归和过拟合问题的解决 logistic Regression & Regularization
原文:http://blog.csdn.net/abcjennifer/article/details/7716281 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...
- 机器学习总结之逻辑回归Logistic Regression
机器学习总结之逻辑回归Logistic Regression 逻辑回归logistic regression,虽然名字是回归,但是实际上它是处理分类问题的算法.简单的说回归问题和分类问题如下: 回归问 ...
- 机器学习入门11 - 逻辑回归 (Logistic Regression)
原文链接:https://developers.google.com/machine-learning/crash-course/logistic-regression/ 逻辑回归会生成一个介于 0 ...
- 李宏毅机器学习笔记3:Classification、Logistic Regression
李宏毅老师的机器学习课程和吴恩达老师的机器学习课程都是都是ML和DL非常好的入门资料,在YouTube.网易云课堂.B站都能观看到相应的课程视频,接下来这一系列的博客我都将记录老师上课的笔记以及自己对 ...
- 【机器学习】逻辑回归(Logistic Regression)
注:最近开始学习<人工智能>选修课,老师提纲挈领的介绍了一番,听完课只了解了个大概,剩下的细节只能自己继续摸索. 从本质上讲:机器学习就是一个模型对外界的刺激(训练样本)做出反应,趋利避害 ...
- 机器学习算法与Python实践之(七)逻辑回归(Logistic Regression)
http://blog.csdn.net/zouxy09/article/details/20319673 机器学习算法与Python实践之(七)逻辑回归(Logistic Regression) z ...
- Coursera公开课笔记: 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)” 清晰讲解logistic-good!!!!!!
原文:http://52opencourse.com/125/coursera%E5%85%AC%E5%BC%80%E8%AF%BE%E7%AC%94%E8%AE%B0-%E6%96%AF%E5%9D ...
- 【机器学习】Logistic Regression 的前世今生(理论篇)
Logistic Regression 的前世今生(理论篇) 本博客仅为作者记录笔记之用,不免有非常多细节不正确之处. 还望各位看官能够见谅,欢迎批评指正. 博客虽水,然亦博主之苦劳也. 如需转载,请 ...
随机推荐
- ios错误ignoring file xxx missing required architecture x86_64 in file
错误ignoring file xxx missing required architecture x86_64 in file 解决方法: 1.在Project target里“Architectu ...
- python爬虫学习研究
目标:做一个小爬虫项目 2017年6月4日13:32:17 mooc网教程Python爬虫入门一之综述要学习Python爬虫,我们要学习的共有以下几点:Python基础知识Python中u ...
- EhCache 集群 配置(RMI方式)
这里先说明下环境:JDK1.6.ehcache-core-2.1.0.jar.Tomcat6.Spring3.0.2.使用的是RMI方式配置集群的,这里先吐槽下遇到的情况,在搜相关知识的时候发现到处都 ...
- MySql 查询列中包含数据库的关键字
MySQL查询列表中包含数据的关键字的处理办法是用``把关键字包起来(tab键上面的字符)
- 洛谷P2296 寻找道路==codevs3731 寻找道路
P2296 寻找道路 题目描述 在有向图G 中,每条边的长度均为1 ,现给定起点和终点,请你在图中找一条从起点到终点的路径,该路径满足以下条件: 1 .路径上的所有点的出边所指向的点都直接或间接与终点 ...
- 九度OJ 1260:珍珠项链 (字符串处理、DP)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:101 解决:27 题目描述: 假设有一条珍珠项链,有很多珍珠,r代表红色, b代表蓝色, w代表白色. 假设你在某一处剪开之后,你会沿着顺时 ...
- iphone传感器
传感器 什么是传感器 传感器是一种感应\检测装置, 目前已经广泛应用于智能手机上 传感器的作用 用于感应\检测设备周边的信息 不同类型的传感器, 检测的信息也不一样 iPhone中的下面现象都是由传感 ...
- Java语言实现简单FTP软件------>本地文件管理模块的实现(九)
首先看一下界面: 1.本地文件列表的显示功能 将本地的当前目录下所有文件显示出来,并显示文件的属性包括文件名.大小.日期.通过javax.swing.JTable()来显示具体的数据.更改当前文件目录 ...
- test_bdc
[转]REPORT zbdc_test_by_shir. * 定义个BDC格式的内表**************************************************DATA : B ...
- mysql 中 all any some 用法
-- 建表语句 CREATE TABLE score( id INT PRIMARY KEY AUTO_INCREMENT, NAME ), SUBJECT ), score INT); -- 添加数 ...