机器学习-第三章 线性模拟

3.1 基本形式

线性模型的基本形式
线性模型的基本形式

若用向量表示,则有
向量形式

3.2 线性回归

设属性x
若x是连续属性,则x直接取连续值,如,房价、身高。
若x是离散属性:
其中若x的值存在着顺序关系,那么我们可以将x的取值连续化,如属性为"高度",则取值本为"高"、"中"、"低",连续化后是"1.0"、"0.5"、"0.0";若x的值不存在顺序关系,假设有k的离散取值,则转化为k维向量,如x属性为"耳机",取值为"蓝牙耳机"、"无线耳机",可转化为(0,1)和(1,0)。

假设只有一个属性x
线性回归的目的在于构建一个线性模型,找到相应的参数,使得该模型的预测结果尽可能逼近真实结果,用数学表达如下。

线性回归的目的
从式子中可以看出,我们可以用均方误差来衡量预测值和真实值的差,那么我们的目的就转化为,找到相应的参数,使得均方误差最小,数学表达如下
目标转化:均方误差最小化
基于均方误差最小化,可以选择经典的求模型方法——"最小二乘法"。设
均方误差
对w和b求导,得到
令上两式为0

令上两式为0,单一属性时,参数w和b的解(公式)如下
w和b的求解公式

以上就是单属性的模型求解过程。

接下来看看多变量(属性)的模型求解。
多变量的模型求解思路与单变量相似,只是计算更加灵活且复杂。
设样本有d个属性,则目的变成了构建一个模型,求多个参数,使得预测值更加逼近真实值,称为"多元线性回归"。

多元线性回归

为了灵活计算和表达,我们可以将参数、数据集和真实结果用向量形式表达。如下:
向量形式表达
单一变量时的计算与上面类似

接着问题就转换为找到对应参数,使得下式最小化。
相当于使均方误差最小
令上式等于
均方误差
对w求导得
均方误差求导后
再令该式为0,可以得到最小均方误差下的参数矩阵w
该解是在X矩阵的秩等于阶时取得的
最终得到线性回归模型
多元线性回归模型
如果X矩阵的列数大于行数时,即样本的特征属性多于样本的数量时,参数w有多个解,此时就看算法的归纳偏好决定哪一个参数比较好。


接下来是广义线性模型
给定一些数据如下图,一开始使用简单的一次函数线性模拟(黄线)

建立模型后我们发现预测值与实际真相差过大,通过观察数据分布,认为样本对应的y呈现的是指数形式变化,则可以令模型的输出变化成指数型的,即
再左右两边取对数得到
这两步所作的就是"对数线性回归"
通过对数函数让输出呈指数型,又保持形式上是线性回归,即在求输入(x)输出(y)的非线性映射。这里的对数函数将预测值(y)真实值(数据)联系了起来,下图容易理解。
对数线性回归
上述的对数函数ln(·)在广义线性模型中称为"联系函数",设联系函数为g(·),考虑单调可微函数g(·),有
广义线性模型
由此可见,对数线性回归是广义线性模型在g() = ln() 时的情况。

上述讲述了用线性模型进行回归学习。

3.3 对数几率回归(分类任务)

对于分类任务,我们可以通过找一个单调可微函数将预测值和真实值联系起来。

  • 考虑二分类任务,预测值只有两种,可以由实数0/1表示。
    可以考虑最佳的模型是"单位阶跃函数":
    阶跃函数
    可以看出阶跃函数不连续、不可微,因此不能使用为g(·),可以找一个与阶跃函数近似的函数,且要单调可微。对数几率函数就符合此要求。
    对数几率函数
    对数几率函数与单位阶跃函数近似
    将对数几率函数作为g-(·) 得到
    将对数几率函数代入广义线性模型
    对上式进行如下变化
    变化
    得到
    与lny = WTx + b相似
    上述式子中,y为样本x为正例的可能性,则1 - y为反例的可能性,两者的比值称为"几率",对比值取对数,称为"对数几率"
    几率与对数几率
    接下来就是求解参数w和b。将上述式子中,y视为p(y=1|x),则1-y就是p(y=0|x),则对数几率回归可以写为
    对数几率回归
    且通过g-(·)如下变化可以得到
    我们可以通过一种估计参数的方法"极大似然估计"来估计w和b,有
    公式解析过程
    接下来问题就转化为找到参数矩阵β,使得上图最后一个式子最小化。接着就是找一个合适的算法(如牛顿法、梯度下降法),代入算法公式,然后求导令式子为0,求解出对应的参数即可,由于公式复杂难以理解,只是简单概括。
    以上就是用对数几率回归进行二分类任务的过程。总结如下:
    1.找到接近阶跃函数的对数几率函数。
    2.将对率函数作为g-(·),代入广义线性模型,进行变化得到g(·)。
    3.将y1-y用g-(·)表示。
    4.利用极大似然估计,找到参数矩阵β,使得g(·)最小化。
    5.找一个算法(牛顿法、梯度下降法),代入算法公式,求导令式子为0,求解参数即可。

梯度下降法可以去观看吴恩达老师的机器学习第二章。
梯度下降法1
梯度下降法2
梯度下降法3
牛顿法

3.4 线性判别分析

线性判别分析(LDA)
基本思想:将训练样本点投影到一条直线上,同类样本投影尽量接近,异类样本投影尽量远离;然后根据新样本投影的位置判定新样本的分类。

LDA
直线为y = wTx,设i∈{0 或 1},指表示第i类
令Xi,μi,∑i分别表示第i类样例的集合、均值向量、协方差矩阵。
则两类样本的中心在直线上的投影为wTμ0和wTμ1;两类样本在直线上所有投影的协方差为wT0w和wT1w。

为了让分类更加清晰,我们可以考虑让同类样本之间的投影尽可能小,则让同类间的协方差尽可能小;让异类样本之间的投影尽可能远,则让异类的中心距离尽可能大,则我们的目标转化为

目标
然后简化J式子,可以定义两个量Sw,Sb
Sw,Sb
那么J可以简化为
简化后的J式
式中的Sw/Sb称为"广义瑞利商",从简化后的式子中可以看出LDA的目标又可以转化为w取什么值,让Sw/Sb最大。由于计算复杂,直接给出求w的公式
w的解

3.5 多分类学习

  1. 基本思路:将多分类任务拆解成多个二分类任务。
  2. 关键:拆分多分类任务,即拆分策略。有以下三种
    假设有N个类别(Class),C1,C2,……,CN
  • 一对一(OvO,one vs. one)
    一对一就是将N个类别两两配对,为区分Ci和Cj训练一个分类器,最终可得到N(N-1)/2个分类器。测试时,新样本同时给这N(N-1)/2个分类器,可得到N(N-1)/2个结果,最终把预测最多的类别作为分类结果。

    OvO一对一

  • 一对其余(OvR,one vs. rest)
    每次将一个类的样例作为正例所有其他类的样例作为反例
    训练N个分类器。在测试时若仅有一个分类器预测为正类,则对应的类别标记作为最终分类结果。若有多个分类器预测为正类则通常考虑各分类器的预测置信度,选择置信度最大的类别标记作为分类结果。

    OvR,仅有一个分类器预测为正类
    虽然OvO训练了N(N-1)/2个分类器,OvR训练了N个分类器,OvO的开销比OvR大,但是在类别很多时,OvO的训练时间要比OvR小。

  • 多对多(MvM,Many vs. Many)
    每次将若干个类作为正类,若干个其他类作为反类。
    MvM技术:纠错输出码(ECOC)
    ECOC过程有两步:
    1)编码
    对N个类别做M次划分,每次划分将一部分M类别划为正类,一部
    分划为反类,从而形成一个二分类训练集;这样一共产生M个训练集,可训练出M个分类器。类别划分通过"编码矩阵"(coding matrix) 指定。

    编码过程

    2)解码
    M个分类器分别对新样本进行预测,这些预测标记组成一个编
    码。将这个预测编码与每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。
    解码
    以上例子中的编码矩阵是二元码,也有三元码的矩阵。
    三元码

    ECOC的特性:1)将编码的思想引入类别拆分。
    2)在解码过程中具有容错性
    如,上图二远码中对测试示例的正确预测编码是(-1,+1 ,+1 ,-1,+1) ,假设在预测时某个分类器出错了,例如f2出错从而导致了错误编码 (-1,-1 ,+1 ,-1,+1),但基于这个编码仍能产生正确的最终分类结果 C3。

3.6 类别不平衡问题

类别不平衡:分类任务中不同类别的训练样例数目差别很大的情况。如,训练集中有998个正例,2个反例。这样导致的问题就是精度过高,只要出现新样例,可以认为一定会判断为反例。

类别不平衡

实际解决方法:

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

推荐阅读更多精彩内容