首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《机器学习》-- 第三章 线性回归

正文共:2877 字 79 图 预计阅读时间:8 分钟

前文推送

  1. MIT线性代数相关资源汇总
  2. Pandas爬取历史天气数据
  3. 关联规则(一):基本原理
  4. 关联规则(二):Apriori算法原理及实现
  5. 《机器学习》--第一章
  6. 聊一聊sklearn顶层设计
  7. 《机器学习》--第二章

本文目录:

  • 3.1 基本形式
  • 3.2 线性回归
    • 3.2.1 一元线性回归
    • 3.2.2 多元线性回归

第三章 线性模型

3.1 基本形式

给定由

个属性描述的示例

,其中

的第

个属性上的取值,线性模型试图学得一个通过属性的线性组合来进行预测函数,即

一般用向量形式

其中

学得之后,模型就得以确定。

线性模型形式简单、易于建模,但却蕴涵着机器学习中一些重要的基本思想,许多功能更为强大的非线性模型(nonlinear model)可在线性模型的基础上通过引入层级结构高维映射而得,此外,由于

直观表达了各属性在预测中的重要性,因此线性模型有很好的可解释性(comprehensibility) / 可理解性 (understandability) 。

例:西瓜问题中学得

,则意味着可通过综合考虑色泽、根蒂和敲声来判断瓜好不好,其中根蒂最要紧,而敲声比色泽更重要。

3.2 线性回归

给定数据集

,其中

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

例如:通过历年的人口数据预测2020年人口数量。在这类问题中,往往我们会先得到一系列的有标记数据,例如:2000--13亿…2018--15亿,这时输入的属性只有一个,即年份;也有输入多属性的情形,假设我们预测一个人的收入,这时输入的属性值就不止一个了,例如:(学历,年龄,性别,颜值,身高,体重)-- 15 k。

有时这些输入的属性值并不能直接被我们的学习模型所用,需要进行相应的处理,对于连续数值型的特征,一般都可以被学习器所用,有时会根据具体的情形作相应的预处理,例如:归一化等;对于离散型的特征,针对其属性值间的特点,有不同的处理方式:

  • 若属性值之间存在“序关系”(order),则可以将其转化为连续值,例如:身高属性分为{高,中等,矮},可转化为数值:{1, 0.5, 0}。
  • 若属性值之间不存在“序关系”,则通常将其转化为向量的形式,例如:瓜类的取值{西瓜,南瓜,黄瓜},可转化为向量:{(1, 0, 0),(0, 1, 0),(0, 0, 1)}。

3.2.1 一元(简单)线性回归

(1)当输入特征只有一个的时候,就是最简单的情形。

线性回归试图学得

,其中

是误差项的随机变量,反映了自变量之外的随机因素对因变量的影响,它是不同由自变量

和 因变量

的线性关系所解释的变异性。

如何确定

?通过计算出每个样本预测值与真实值之间的误差平方并求和,通过最小化均方误差 (mean-square error,MSE) / 平方损失 (square loss) 即可。均方误差有非常好的几何意义,它对应了常用的欧几里得距离或简称“欧氏距离” (Euclidean distance)。基于均方误差最小化来进行模型求解的方法称为“最小二乘法” (least square method)。在线性回归中,最小二乘法就是试图找到一条直线,使所有样本到直线上的欧氏距离之和最小。

其中,

表示

的解 ;

是变元(即自变量argument) ,

就是使函数值达到最小值时的变量的取值

就是使函数值达到最大值时的变量的取值。

求解

使

最小化的过程,称为线性回归模型的最小二乘“参数估计” (parameter estimation)。这里

是关于

的凸函数, 因此可以通过求导的方式得到最优解的闭式(closed-form)解。

凸函数定义:对区间

上定义的函数

,若它对区间中任意两点

均有

,则称

为区间

上的凸函数。

型曲线的函数如

通常是凸函数。

令导数为 0 即可,这里先求解 3.6 式,因为其形式上更简单

继续化简 3.8 式,

,实际上就是均值,则

继续求解 3.5 式,

因为

,

由此即可得到

3.2.2 多元线性回归

multivariate linear regression

(2)当输入特征有多个的时候,例如对于一个样本有

个属性

,则可写成:

和一元的情况类似,依然使用最小二乘法来对

进行估计,但是对于多元问题,我们使用矩阵的形式来表示数据。为便于讨论,我们把

吸收入向量形式

相应的,把数据集 D 表示为一个

大小的矩阵

,其中每行对应于一个示例,该行前

个元素对应于示例的

个属性值,最后一个元素置为1,即

于是,矩阵形式的线性回归可以表示为

同时将因变量也写成向量形式

,则可以将式 3.4 推广为

同样地进行求导求解,令

,对

求导可得

式3.10 涉及到矩阵求导,可以参考维基百科矩阵运算 ,刘建平的解释,在这里我们就知道一些基本的运算即可,

向量或矩阵求导这里对矩阵的求导还分为分子布局(Numerator layout , 对应上图结果左)和分母布局(Denominator layout,对应上图结果右) ,一般准则是对于向量或者矩阵标量求导,则使用分子布局,对于标量向量或者矩阵,则使用分母布局。

由此我们可以对式3.10 展开并得到各部分的求导结果

令式 3.10 为 0 即可得到最优解的闭式解。

可以发现以矩阵的形式我们得到的闭式解很简洁,然而我们却无法忽略一个问题,

是否存在?

对于

,它是一个方阵,这是一个很好的性质,但是它却不一定满秩(比如音频,基因等,都可能特征数量大于(甚至远大于)样例数量),只有当其为满秩矩阵( full-rank matrix) 或正定矩阵(positive definite matrix)时,我们才能得到式3.11 。

现我们假设该方阵是满秩的情况,令

则多元线性回归模型可以表示为

对于现实任务中

不是满秩矩阵的情况,此时可解出多个

,它们都能使均方误差最小化,选择哪一个解作为输出,将由学习算法的归纳偏好决定,常见的做法是引入正则化(regularization)项。

本文项目地址:

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

参考网址:

  • https://zhuanlan.zhihu.com/pypcfx
  • https://github.com/Vay-keen/Machine-learning-learning-notes
  • https://en.wikipedia.org/wiki/Matrix_calculus
  • https://www.cnblogs.com/pinard/p/10750718.html
  • https://datawhalechina.github.io/pumpkin-book/#/chapter3/chapter3
  • 周志华 著. 机器学习, 北京: 清华大学出版社, 2016年1月.

PS:

1. 后台回复“线性代数”,“线代” 等任一关键词获取资源链接

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

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

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

dive into machine learning

微信号:零维领域

英文ID:lingweilingyu

下一篇
举报
领券