吃瓜教程 | 第三章 线性模型

3.1 基本形式

线性模型(linear model)试图学得一个通过属性的线性组合来进行预测的函数:

一般用向量表示为:
 

 其中。w和b学得之后,模型就得以确定。

3.2 线性回归

线性回归(linear regression)试图学得一个线性模型以尽可能准确地预测实值输出标记。

线性回归试图学得:

均方误差是回归任务中最常用的性能度量,可试图让均方误差最小化来确定w和b。

 基于均方误差最小化的来进行模型求解的方法称为“最小二乘法(least square method)”

在线性回归中,最小二乘法就是试图找到一条直线,使所有样本到直线上的欧式距离之和最小。

求解w和b的使

最小化的过程,称为线性回归模型的“参数估计”。

对w和b分别求偏导,并令其为0,可得:

 

 多元线性回归

 

 

 

为满秩矩阵或正定矩阵时, 令3.10为0可得:

 

 对数线性回归

 

 广义线性模型

 

3.3 对数几率回归

对于线性模型产生的预测值,一般希望能够转化成二分类的标签,比如0/1,理想的一个转化是使用单位阶跃函数(unit-step function)

 但是阶跃函数不连续,而我们希望其单调可微,因此需要一个替代函数(surrogate function),因此就有了对数几率函数(logistic function)

 对数几率函数是一种“Sigmoid”函数

 若将y视为样本x作为正例的可能性,则1-y是其反例的可能性,两者比值

称为“几率(odds)”,反映了x作为整理的相对可能性,对几率去对数则得到“对数几率”(log odds,也称logit)

 则有:

 通过“极大似然法”来估计w和b,

 

 

由于该函数是关于β \betaβ的凸函数,利用梯度下降、牛顿法等可以得到全局最优解,即极大值。

 

3.4 线性判别分析(linear discriminant analysis,LDA)

思想十分简单,对于二分类问题,将样本投影到直线上,使得同类样本投影点尽可能接近,异类样本点投影尽可能远离。

 

3.5 多分类学习

很多情况下,多分类是利用二分类学习实现的。通常对于多分类学习,可以拆解成二分类,通常的拆分方法有:

一对一(one vs. one, OvO)
将数据集中的类别两两配对进行学习,预测中最终取被分类器投票最多的类别。

一对其余(One vs. Rest,OvR)
每次将数据集中的一类作为正例,其余类别均为反例,进行学习,这样学习器个数比一对一时候少很多,但是每个学习器涉及的样本数更多,最终选择分类器中预测置信度最大的预测结果。

 

多对多(Many vs. Many,MvM)
每次将其中几类作为正例,另外几类作为反例,但是正反例选取不随意,需要特殊设计,书上介绍了一个最常用的技术:纠错输出码(error correcting output codes,ECOC),他将编码的思想引入类别拆分,从而使得解码中有一定的容错性(联想计算机组成原理中的汉明码)

ECOC 编码/学习
对于N个类别划分M次,每次让一部分为正类,一部分为负类,对应了M个分类器,从而有N个类各自的M位编码。学习之后形成“编码矩阵”(coding matrix),常用的为二元码和三元码(多一个停用类)。

ECOC 解码/预测
对于要预测/测试的样本,将其经过M个分类器编码后,得到其M位编码,选择与该编码距离最小的类编编码作为对应的预测类别。

 

3.6. 类别不平衡问题

对过多类的类欠采样(undersampling)/下采样(downsampling)
对多的类少采样,从而使训练用的数据集中各类别数相当。欠采样要注意不要随意丢弃,因为可能丢掉一些关键信息,常用的算法是EasyEnsemble,利用集成学习机制,将过多的类样本划分为几个数据集,共不同的学习器使用,从而在学习器上进行了欠采样但总体没有丢失信息。

对过少的类过采样(oversampling)/上采样(upsampling)
对少的类多采样,从而使训练用的数据集中各类别数相当。过采样注意不是重复对正例样本采样,代表性算法为SMOTE,对训练集正例的样本进行插值产生额外正例,这样做可以防止过拟合。

预测时的阈值移动(threshold-moving)
训练时还是使用原始的类别不平衡的数据集,但是预测时,将观测几率考虑进去,从而相当于进行预测阈值的放缩/平移。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值