西瓜书 第三章 线性模型

这一章从线性回归入手,然后从广义线型回归引入对数几率回归来解决二分类问题,再引入多分类,但是无论无论是前面提到的二分类还是多分类的解决办法都是在以不同类训练样本数相同的前提下进行筛选选择器的,所以最后介绍了类别不平衡应该怎么办。

3.1基本形式

线性模型:可以通过属性的线性组合来进行预测的函数,即
f(x)=w_1x_1+w_2x_2+...+w_dx_d+d
该式子一般用向量表示:f(x)=w^Tx+b
【注】w=(w_1;w_2;...w_d),只要w和b确定模型就可以确定,w表示各属性在预测中的重要性

3.2线性回归

线性回归:试图学得一个线性模型来尽可能的预测真实输出标记。

最简单的线性回归

只有一个输入属性;对于离散属性,若其有序则通过连续化转化为连续值,若不存在序关系则转化为向量。
【例】属性体重“胖”“瘦”可以转化为{1.0,0.0};没有序关系属性如“瓜类”的取值“西瓜、南瓜、黄瓜”则转化为(0,0,1)(0,1,0)(1,0,0)。
线性回归试图得到:①f(x_i)=wx_i+b,使得f(x_i)≈y_i
那么要如何求得w,b呢?这里用“最小二乘法”来求解,即均方误差最小化,(w^*,b^*)={arg min}_(w,b){\sum_{i=1}^m(f(x_i)-y_i)^2}
通过对均方误差最小化分别对w,b求偏导令其为0,得到w={\frac{\sum_{i=1}^m{y_i(x_i-\check{x})}}{\sum_{i=1}^m{x_i^2-\frac{1}{m}(\sum_{i=1}^m{x_i})^2}}}③,b=\frac{1}{m}\sum_{i=1}^m(y_i-wx_i)④,其中\check{x}=\frac{1}{m}\sum_{i=1}^mx_i为x的均值。
整理一下思路:线性回归要得到式子①,那么①里面的未知数怎么求,利用②式子最小二乘法求,通过对②求偏导等于0,来得到解,即式子③和式子④

多元线性回归

输入多个属性,试图得到f(x_i)=w^Tx_i+b,使得f(x_i)≈y_i
这里将w,b用向量\hat{w}=(w,b)表示把数据集D用m*(d+1)的矩阵X来表示。
根据前面最小二乘法令E_\hat{w}=(y-X\hat{w})^T(y-X\hat{w}),对\hat{w}求导等于零来得到解。

假设当X^TX为满秩矩阵或正定矩阵时\hat{w^*}=(X^TX)^{-1}X^Ty,回归模型为f(\hat{x_i})=\hat{x_i}(X^TX)^{-1}X^Ty
【注】现实任务往往X^TX不满秩,所以会有多个\hat{w},此时结果由算法的学习偏好决定。

广义线性模型

y=g^{-1}(w^Tx+b)
【注】g(x)为单调可微函数,被称为联系函数,将线性回归模型的预测值与真实标记联系起来

3.3对数几率回归

这一节介绍了分类,通过广义线性模型找到一个单调可微函数将分类任务的真实值与线性回归的预测值联系起来即可。
这里用对数几率函数:y=\frac{1}{1+e^{-z}}来充当g(x),从而得到y=\frac{1}{1+{e^{-(w^Tx+b)}}}
对式子①进行变换得到\ln{\frac{y}{1-y}}={w^Tx+b}
【注】若将y作为样本x为正例的可能性,那么\frac{y}{1-y}则称为“几率”,\ln\frac{y}{1-y}称为“对数几率”。
那么如何求得w,b,这里用了极大似然法(推导就不列出来)。
最后得到一个关于β的高阶可导连续凸函数l(β)=\sum_{i=1}^m(-y_iβ^T\hat{x_i}+\ln(1+e^{β^T\hat{x_i}}))。通过梯度下降法、牛顿法等都可求得这个函数的最优解β^*=argmin_βl(β)

3.4线性判别分析

线性判别分析(LDA):设法将样例投到一条线上,同类样例尽可能接近,不同样例间尽可能远离,将新样例投到线上通过其位置来分类。简单点就是正例尽量投在一起,反例投一起,正反例尽可能远离,拿到新样例投上去看更接近哪。

LDA的二维示意图.png

【注】+表示正例,-表示反例

二分类线性判别分析

数据集D=\{(x_i,y_i)\}_{i=1}^m,y_i\in\{0,1\},令X_i、u_i、\sum{i}分别表示i\in\{0,1\}类示例的集合、均值向量、协方差矩阵,w表示直线。
线性判别分析有两个目标:①同类样例投影点尽可能接近,即同类投影点协方差(w^T\sum{0w}+w^T\sum{1w})尽可能小②异类尽可能远离,即类中心点之间的距离(||w^Tu_0-w^Tu_1||^2_2)尽可能大。所以同时还要考虑二者,则可以得到最大化目标J={\frac{||w^Tu_0-w^Tu_1||^2_2}{w^T\sum{0w}+w^T\sum{1w}}}={\frac{w^T{(u_0-u_1)}(u_0-u_1)^Tw}{w^T(\sum_0+\sum_1)w}}①。
定义“类内散度矩阵”S_w=\sum0+\sum1=\sum_{x∈X_0}(x-u_0)(x-u_0)^T+\sum_{x∈X_1}(x-u_1)(x-u_1)^T
定义“类间散度矩阵”S_b=(u_0-u_1)(u_0-u_1)^T,
将式子①重写为J=\frac{w^TS_bw}{w^TS_ww}这就是LDA要求的最大化目标,即S_b与S_w的“广义瑞利商”
那么w怎么求呢?因为上式分子分母都有w二次项所以解w长度无关只和方向有关。
由拉格朗日乘子式得S_bw={\lambda}S_ww(λ是拉格朗日乘子)
又因为S_bw方向衡为u_0-u_1,所以令S_bw={\lambda}(u_0-u_1)代入上式最终得w=S_w^{-1}(u_0-u_1)

多分类线性判别分析

假设存在N个类,且第i类示例数为m_i
定义“全局散度矩阵”S_t=S_b+S_w=\sum_{i=1}^m(x_i-u)(x_i-u)^T
【注】u是所有示例的均值向量
定义“每个类别的散度矩阵之和”S_w=\sum_{i=1}^NS_{w_i}
【注】S_{w_i}=\sum_{x∈X_i}(x-u_i)(x-u_i)^T
由上式①和②得S_b=S_t-S_w=\sum_{i=1}^Nm_i(u_i-u)(u_i-u)^T,所以多分类LDA有多种实现方法,使用S_b,S_t,S_w任何两个就可以了。

3.5多分类学习

多分类学习一般使用拆解法,即拆分为若干个二分类任务求解。
①“一对一(OvO)”将N个类别两两配对得到N(N-1)个二分类任务,将两个类别C_i,C_j训练一个分类器,共有N(N-1)个,最终得到N(N-1)个预测结果,出现次数最多的类别为最终分类结果。
②“一对其余(OvR)”每次把一个类的例子作为正例其他为反例,来训练出N个分类器,在测试时若只有一个分类器预测出正例,则对应类别标记作为最终结果,若有多个正例,则要考虑分类器的预测置信度,选择置信度最大的类标记作为分类结果。
③“多对多(MvM)”将若干个类作为正类,若干个其他类作为反类。常用MvM技术“纠错输出码简称ECOC”。
ECOC主要分为两步①编码:对N个类别做M次划分,每次将一部分作为正类另一部分为反类,从而形成二分类训练集,训练出M个分类器。②解码:M个分类器分别对测试样本进行预测,这些预测标记组成一个编码,将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。
类别划分主要通过“编码矩阵”,常见的有二元码(正类、反类)和三元码(正类、反类、停用类)。

二元码、三元码.png

【注】+1表示正类,-1表示反类,0表示停用类
【补】对于同一个学习任务,ECOC编码越长纠错越强;对于同等长度编码,任意两个类别之间的编码距离越远,则纠错能力越强。

3.6类别不平衡问题

前面所有提到的分类学习方法有一个前提:即不同类别的训练例数目相同。
类别不平衡:指分类任务中不同类别的训练例数目差别很大的情况。
面对类别不平衡的基本处理方法:
“欠采样”即除去一些反例,使得正、反例数目接近。常利用集成学习机制,将反例分为若干个集合供不同学习器使用。
“过采样”即增加一些正例,使得两者数目接近。常使用SMOTE算法,通过对训练集里的正例插值产生额外的正例。
“阙值移动”按原训练集进行学习,但在使用训练好的分类器预测时,将下面式子①代入决策过程。

【解】“再缩放”。令{\frac{y}{1-y}}*\frac{m^-}{m^+}①来与1比较。
在前面线性分类器我们有几率\frac{y}{1-y}若其大于1则为正例。但是这是在正反例数目相同的情况下,令m^+为正例数目,m^-反例数目,则判断{\frac{y}{1-y}}>\frac{m^+}{m^-}为正例。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容