Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >《机器学习》-- 第三章 广义线性模型

《机器学习》-- 第三章 广义线性模型

作者头像
fireWang
发布于 2019-09-19 07:28:29
发布于 2019-09-19 07:28:29
9330
举报
文章被收录于专栏:零维领域零维领域

3.2.3 广义线性模型

generalized linear model

线性模型虽然简单,但却有丰富的变化。

对于样例

,当我们希望线性模型(3.2)(见上节内容:

线性模型)的预测值逼近真实标记

时,就得到了线性回归模型,我们将模型简写为式3.13:

有时像上面这种原始的线性回归可能并不能满足需求,例如:

值并不是线性变化,而是在指数尺度上变化。这时我们可以采用线性模型来逼近

的衍生物,例如

,这时衍生的线性模型(式3.14)如下所示,实际上就是相当于将指数曲线投影在一条直线上,如下图所示:

generalized_linear_model

式3.14在形式上仍然式线性回归,但实质上已经式在求输入空间到输出空间的非线性函数映射。

一般地,考虑所有

的衍生物的情形,就得到了“广义的线性模型”(generalized linear model)(式3.15)

其中,

单调可微(即连续且充分光滑),称为联系函数(link function)。

3.3 对数几率回归

线性模型可以应用于回归学习问题,利用上述广义线性模型的特征,是否可以通过一个联系函数,将预测值转化为离散值从而进行分类任务的学习呢?

考虑二分类任务,其输出标记

,而线性回归模型产生的预测值

是实值,于是我们需要将其转化为 0/1,最理想的是"单位阶跃函数" (unit-step function)

unit_step_function

由上图可知单位阶跃函数不连续,因此不能作为广义线性模型中的联系函数,于是我们希望找到能在一定程度上近似单位阶跃函数的”替代函数“ (surrogate function),并且它可以作为联系函数(单调可微)

对数几率函数(logistic function)正是替代函数之一,可将预测值投影到 0-1之间,从而将线性回归问题转化为二分类问题。(式3.17)

对数几率函数也是一种”Sigmoid 函数“ (即形似 S 的函数)。

将式 3.17 代入式 3.15 即可得到(式3.18)

基于式 3.14的变换方式,可得到(式3.19)

若将

看做样本为正例的概率,

则为反例的概率,两者比值称为”几率“ (odds), 反映了样本作为正例的相对可能性。对几率取对数则得到”对数几率“ (log odds,亦称 logit)(式3.20, 3.21)

由此可看出,式3.18 实际上是在用线性回归模型的预测结果取逼近真实标记的对数几率,因此这个模型称为“对数几率回归”(logistic regression,或 logit regression),即“逻辑回归”。

它的优点在于直接对分类可能性进行建模,无需事先假设数据分布,这样就避免了假设分布不准确所带来的问题;不仅可以预测类别,也可得到近似概率预测;对数几率函数是任意阶可导的凸函数,现有的许多数值优化算法都可直接用于求取最优解。

逻辑回归(对数几率回归)带有2个主要假设:

(1)假设数据服从伯努利分布

(2)假设模型的输出值是样本为正例的概率

若将式3.18中的

视为类后验概率估计

,则式3.19可重写为(式3.22)

因为

,于是我们可以得到(式3.23, 3.24)

于是,可以使用极大似然估计的方法(maximum likelihood estimation, MLE)来计算出

两个参数

对于给定的训练数据集

,该数据集出现的概率(即似然函数)为

对似然函数取对数得到“对数似然”(log-likelihood)

极大似然最简单的理解就是:样本所展现的状态便是所有可能状态中出现概率最大的状态。即令每个样本属于其真实标记的概率越大越好。为便于讨论,令

于是似然项可以重写为

将式3.26,3.23,3.24带入式3.25,则可以转化式3.25为

代入得到

综合上式即可得到

而损失函数即为对数似然函数的相反数,对于对数似然函数(高阶可导连续凸函数)求最大值,即是求其相反数的最小值,即损失函数的最小值。根据凸优化理论,经典的数值优化算法如梯度下降法(gradient descent method)、牛顿法(Newton method)等都可求得其最优解,于是就得到(式3.28)

注: 逻辑回归的损失函数“对数似然函数(的相反数)”,在模型GBDT分类情况下也会用到,又叫作“交叉熵”(cross-entropy,描述两组不同概率数据分布的相似程度,越小越相似)。

用一句话来描述逻辑回归的过程:逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数得出分类概率,通过阈值过滤来达到将数据二分类的目的。

3.4 线性判别分析

3.5 多分类学习

3.6 类别不平衡问题

前面介绍的分类学习方法都有一个共同的基本假设,即不同类别的训练样例数目相当,如果不同类别的训练样例数目稍有差别,通常影响不大,但若差别很大,则会对学习过程造成困扰

例如有998个反例,但正例只有2个,那么学习方法只需返回一个永远将新样本预测为反例的学习器,就能达到99.8%的精度,然而这样的学习器往往没有价值,因为它不能预测出任何正例。

类别不平衡(class-imbanlance)就是指分类问题中不同类别的训练样本相差悬殊的情况,常见的做法有三种:

  1. 在训练样本较多的类别中进行“欠采样”(under-sampling / down-sampling),即去除一些样本,比如从反例中采出100个,常见的算法有:EasyEnsemble,其利用集成学习机制,将反例划分为若干个集合供不同学习器使用,这样对每个学习器来看都进行了欠采样,但在全局来看不会丢失重要信息。
  2. 在训练样本较少的类别中进行“过采样”(oversampling / up-sampling),例如通过对正例中的数据进行插值,来产生额外的正例,常见的算法有SMOTE(Synthetic minority over-sampling technique)。
  3. 直接基于原数据集进行学习,对预测值进行“再缩放”(rescaling / re-balance)处理。其中再缩放也是代价敏感学习的基础。

前两种方法都关注于对于数据样本进行均衡,而第三种方法则是关注于对预测结果进行均衡,称为“阈值移动” (threshold-moving)。

以逻辑回归应用在二分类问题为例,当我们在用

对新样本进行预测的时候,事实上是在用预测出的

值与阈值进行比较,对于逻辑回归而言,因为联系函数的分段点在

的位置,即在几率大于 1 时判定为正例,反之为反例。(式3.46)

但是当训练集中正/反例的数目不同时,令

表示正例数目,

表示反例数目,则观测几率是

,由于我们通常假设训练集是真实样本总体的无偏采样,因此观测几率就代表了真实几率,于是,只要分类器的预测几率高于观测几率就应判定为正例,即(式3.47)

由于分类器是基于式3.46 进行决策,因此需要对其结果进行调整,使其执行式3.47,于是我们只需要令(式3.48)

这就是在决策过程中进行了再缩放。

3.7 阅读材料

“稀疏表示” (sparse representation) 近年来很受关注(详细见第十一章),但即便对多元线性回归这样简单的模型,获得具有最优“稀疏性” (sparsity)的解也并不容易。稀疏性问题本质上对应了

范数的优化,这在通常条件下是NP难问题。LASSO通过

范数来近似

范数,是求取稀疏解的重要技术。

可以证明,OvO和 OvR 都是ECOC的特例[Allwein et al., 2000]),人们以往希望设计通用的编码法, [Crammer and Singer, 2002]提出要考虑问题本身的特点,设计“问题依赖”的编码法,并证明寻找最优的离散编码矩阵是一个NP完全问题,此后,有多种问题依赖的 ECOC编码法被提出,通常是通过找出具有代表性的二分类问题来进行编码,[Escalera et al., 2010]开发了一个开源ECOC库.

MvM除了ECOC还可有其他实现方式,例如DAG (Directed Acyclic Graph)拆分法将类别划分表达成树形结构,每个结点对应于一个二类分类器,还有一些工作是致力于直接求解多分类问题,例如多类支持向量机方面的一些研究[Crammer and Singer, 2001; Lee et al, 2004])

代价敏感学习中研究得最多的是基于类别的“误分类代价” (misclassification cost), 代价矩阵如表2.2所示,在提及代价敏感学习时,默认指此类情形,已经证明,对二分类任务可通过“再缩放”获得理论最优解[Elkan,2001],但对多分类任务,仅在某些特殊情形下存在闭式解[Zhouand Liu, 2006]。

非均等代价和类别不平衡性虽然都可借助“再缩放”技术,但两者本质不同[Zhou and Liu, 2006b]。需注意的是,类别不平衡学习中通常是较小类的代价更高,否则无需进行特殊处理。

多分类学习中虽然有多个类别,但每个样本仅属于一个类别,如果希望为一个样本同时预测出多个类别标记,例如一幅图像可同时标注为“蓝天”、“白云”、“羊群”、“自然场景” ,这样的任务就不再是多分类学习,而是“多标记学习” (multi-label learning),这是机器学习中近年来相当活跃的一个研究领域。

本文项目地址:

https://github.com/firewang/lingweilingyu/blob/master/contents/Machine_Learning_Zhi-Hua_Zhou.md

参考网址:

  • https://blog.csdn.net/qq_39355550/article/details/81809467
  • https://blog.csdn.net/class_brick/article/details/79724660
  • https://blog.csdn.net/z_x_1996/article/details/70176819
  • http://www.huaxiaozhuan.com/
  • https://datawhalechina.github.io/pumpkin-book/#/chapter3/chapter3
  • 周志华 著. 机器学习, 北京: 清华大学出版社, 2016年1月.

PS:

1. 后台回复"MIT", "Pycharm","线性代数"等获取资源链接

2. 后台回复“联系“, “投稿“, “加入“ 等任一关键词联系我们

3. 后台回复 “红包” 领取红包

零维领域,由内而外深入机器学习

dive into machine learning

微信号:零维领域

英文ID:lingweilingyu

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 零维领域 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
《机器学习》学习笔记(三)——线性模型
分类的核心就是求出一条直线w的参数,使得直线上方和直线下方分别属于两类不同的样本
荣仔_最靓的仔
2021/02/02
1.7K0
《机器学习》学习笔记(三)——线性模型
《机器学习》笔记-线性模型(3)
作者:刘才权 编辑:李文臣 写在前面 1 如今机器学习和深度学习如此火热,相信很多像我一样的普通程序猿或者还在大学校园中的同学,一定也想参与其中。不管是出于好奇,还是自身充电,跟上潮流,我觉得都值得试一试。对于自己,经历了一段时间的系统学习(参考《机器学习/深度学习入门资料汇总》),现在计划重新阅读《机器学习》[周志华]和《深度学习》[Goodfellow et al]这
机器学习算法工程师
2018/03/06
1.1K0
《机器学习》笔记-线性模型(3)
Data Whale 吃瓜日记 西瓜书第三章
线性模型实际上就是多元一次函数,输入和输出的简单映射,而其他非线性模型可以通过各种方法变换为与线性模型相似的形式,例如:对数线性回归、对数几率回归。对数几率回归可以通过多种方式求最优解,如梯度下降法、牛顿法
TomoriNao
2023/12/18
1450
线性模型
给定数据集D={(x_1,y_1),(x_2,y_2),…,(x_m,y_m)};x_i=(x_{i1};x_{i2};…;x_(id)),y_i \in R
皮大大
2021/03/02
5550
logistics判别与线性模型中的4个问题
之前说过,机器学习的两大任务是回归和分类,上章的线性回归模型适合进行回归分析,例如预测房价,但是当输出的结果为离散值时,线性回归模型就不适用了。我们的任务是:将回归分析中的实数值转化为离散值或者对于离散值的概率。
double
2018/07/31
5130
[机器学习算法]逻辑回归模型
线性回归模型可以用于回归模型的学习,当我们需要用线性模型实现分类问题比如二分类问题时,需要用一个单调可微函数将线性回归的连续结果映射到分类回归真实标记的离散值上。
TOMOCAT
2020/06/09
5910
[机器学习算法]逻辑回归模型
【机器学习】对数线性模型之Logistic回归、SoftMax回归和最大熵模型
本文介绍对数线性分类模型,在线性模型的基础上通过复合函数(sigmoid,softmax,entropy )将其映射到概率区间,使用对数损失构建目标函数。首先以概率的方式解释了logistic回归为什么使用sigmoid函数和对数损失,然后将二分类扩展到多分类,导出sigmoid函数的高维形式softmax函数对应softmax回归,最后最大熵模型可以看作是softmax回归的离散型版本,logistic回归和softmax回归处理数值型分类问题,最大熵模型对应处理离散型分类问题。
yuquanle
2019/11/04
1.9K0
【一文读懂】机器学习
      看到很多人都有写博客的习惯,现在开始实习了,也把之前写过的东西整理整理,发在这里,有兴趣的同学可以一起交流交流。文笔稚嫩,希望大家宽容以待!       机器学习是人工智能(AI,artificial intelligence)发展到一定阶段的必然产物。二十世纪五十年代到七十年代,人工智能为推理期,70年代中期之后,进入到知识期,在五十年代中后期,基于神经网络的“连接主义”(connection)学习开始出现,六七十年代,基于逻辑表示的“符号主义”(symbolism)学习技术蓬勃发展。到八
微风、掠过
2018/04/10
8090
【一文读懂】机器学习
机器学习-对数几率回归(逻辑回归)算法
对数几率回归(Logistic Regression),也称逻辑回归,虽然名字中含有回归,但其实是一种分类算法。找一个单调可微函数将分类任务中的真实标记与线性回归模型的预测值联系起来,是一种广义线性回归。
唔仄lo咚锵
2023/05/23
9430
机器学习-对数几率回归(逻辑回归)算法
【机器学习笔记】:从零开始学会逻辑回归(一)
逻辑回归是一个非常经典,也是很常用的模型。之前和大家分享过它的重要性:5个原因告诉你:为什么在成为数据科学家之前,“逻辑回归”是第一个需要学习的
Python数据科学
2018/12/17
8640
【机器学习笔记】:从零开始学会逻辑回归(一)
机器学习算法: Logistic 回归 详解
分类技术是机器学习和数据挖掘应用中的重要组成部分。解决分类问题的算法也有很多种,比如:k-近邻算法,使用距离计算来实现分类;决策树,通过构建直观易懂的树来实现分类;朴素贝叶斯,使用概率论构建分类器。这里我们要讲的是Logistic回归,它是一种很常见的用来解决二元分类问题的回归方法,它主要是通过寻找最优参数来正确地分类原始数据。
数据科学工厂
2023/03/21
7260
机器学习算法: Logistic 回归 详解
机器学习算法中的概率方法
AI 科技评论按,本文作者张皓,目前为南京大学计算机系机器学习与数据挖掘所(LAMDA)硕士生,研究方向为计算机视觉和机器学习,特别是视觉识别和深度学习。
AI科技评论
2019/10/31
1.4K0
机器学习算法中的概率方法
(数据科学学习手札24)逻辑回归分类器原理详解&Python与R实现
一、简介   逻辑回归(Logistic Regression),与它的名字恰恰相反,它是一个分类器而非回归方法,在一些文献里它也被称为logit回归、最大熵分类器(MaxEnt)、对数线性分类器等
Feffery
2018/04/17
1.5K0
(数据科学学习手札24)逻辑回归分类器原理详解&Python与R实现
机器学习 学习笔记(7)多分类学习与类别不平衡
现实中常遇到多分类学习任务,有些二分类学习方法可以直接推广到多分类,但在更多情况下,是基于一些基本策略,利用二分类学习器来解决多分类问题。
2018/09/03
3K0
机器学习 学习笔记(7)多分类学习与类别不平衡
由Logistic Regression所联想到的...
很久之前就想写一篇围绕Logistic Regression(LR)模型展开的文章了,碍于时间、精力以及能力有限,时至今日才提笔构思。希望此文能够帮助初学者建立对于LR模型的立体思维,其中关于LR模型本身的理论细节本文不做过多讨论,尽可能的给读者分享与LR模型存在千丝万缕关系的一些模型以及关于LR的一些周边理论,希望笔者的联想能够对于大家有所收获、有所启迪。
张小磊
2020/04/20
3860
分类-对数几率回归(逻辑回归)算法
对数几率回归(Logistic Regression),也称逻辑回归,虽然名字中含有回归,但其实是一种分类算法。找一个单调可微函数将分类任务中的真实标记与线性回归模型的预测值联系起来,是一种广义线性回归。
唔仄lo咚锵
2022/10/07
1.1K0
分类-对数几率回归(逻辑回归)算法
机器学习13:多分类学习
有些情况下,二分类学习方法可以推广到多分类问题中;但是多数情况下需要基于一定的策略,利用二分类学习器解决多分类问题。
用户5473628
2019/08/08
6.5K0
一文详尽系列之逻辑回归
Logistic Regression 是一个非常经典的算法,其中也包含了非常多的细节,曾看到一句话:如果面试官问你熟悉哪个机器学习模型,可以说 SVM,但千万别说 LR,因为细节真的太多了。
Datawhale
2019/11/19
1.2K0
算法工程师-机器学习面试题总结(2)
线性回归是一种用于建立和预测变量之间线性关系的统计模型。其基本思想是假设自变量(输入)和因变量(输出)之间存在线性关系,通过建立一个线性方程来拟合观测数据,从而进行预测和推断。
机器学习AI算法工程
2023/09/04
6060
算法工程师-机器学习面试题总结(2)
机器学习之回归(二):广义线性模型(GLM)
导语:本文在上篇线性回归的基础上,延伸到广义线性模型,并把广义线性模型目的、假设条件来源,指数族分布、连接函数等各个函数的关系都进行详细地解释。最后用两个常见的GLM特例Logistics回归、So
汪毅雄
2017/08/28
11.1K1
机器学习之回归(二):广义线性模型(GLM)
相关推荐
《机器学习》学习笔记(三)——线性模型
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档