前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《机器学习》-- 第三章 广义线性模型

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

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

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 删除。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 3.2.3 广义线性模型
  • 3.3 对数几率回归
  • 3.4 线性判别分析
  • 3.5 多分类学习
  • 3.6 类别不平衡问题
  • 3.7 阅读材料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档