基本形式
【引言:为什么学习线性模型】
线性模型($linear model$)形式简单、易于建模,但却蕴含着机器学习中一些重要的基本思想。
许多功能更为强大的非线性模型($nonlinear model$)可在线性模型的基础上通过引入层级结构或高级映射而得。
所以,首先学习线性模型是必要的。
【定义:什么是线性模型】
给定由 $d$ 个属性描述的示例 $x = (x_1;x_2;...;x_d)$,其中 $x_i$ 是 $x$ 在第 $i$ 个属性上的取值,
线性模型试图学得一个通过属性的线性组合来进行预测的函数,即
$$f(x)=w_1x_1+w_2x_2+...+w_dx_d+b$$
一般用向量形式写成
$$f(x)=w^Tx+b$$
其中$w=(w_1;w_2;...;w_d)$,$w$ 和 $b$ 学得之后,模型就得以确定了。
【优点:线性模型的优点】
由于$w$直观表达了各属性在预测中的重要性,因此线性模型有很好的可解释性($comprehensibility$)亦称可理解性($understandability$)
例如:若在西瓜问题中学得“$f_{好瓜}(x)=0.2x_{色泽}+0.5x_{根蒂}+0.3x_{敲声}+1$”,
则意味着可通过综合考虑色泽、根蒂和敲声来判断瓜好不好,其中根蒂最要紧,而敲声比色泽更重要。
【$Overview$】
本章介绍几种经典的线性模型。
我们先从回归任务开始,然后讨论二分类和多分类任务。
线性回归
【定义:回归中的线性模型——线性回归】
给定数据集$D={(x_1,y_1),(x_2,y_2),...,(x_m,y_m)}$,其中$x_i=(x_{i1};x_{i2};...;x_{id}),y_iin mathbb{R}$。
“线性回归”($linear regression$)试图学得一个线性模型以尽可能准确地预测实值输出标记。
【简化】??????????这是干啥??????????为啥要这样?????????
为便于讨论,此时我们忽略关于属性的下标,即$D={{(x_i,y_i)}}_{i=1}^{m}$,其中$x_iin mathbb{R}$
对于离散属性,
- 若属性间存在“序”($order$)关系,可通过连续化将其转化为连续值,
例如,二值属性“身高”的取值“高”“矮”可转化为{1.0,0.1},三值属性“高度”的取值“高”“中”,“低”可转化为{1.0,0.5,0.0}
- 若属性间不存在序关系,假定有k个属性,则通常转化为k维向量,
例如属性“瓜类”的取值“西瓜”,“南瓜”,“黄瓜”可转化为{0,0,1},(0,1,0),(1,0,0)
【例子:简单的情形——属性只有一个(一元线性回归)】
我们先考虑一种最简单的情形:输入属性的数目只有一个。
线性回归试图学得
$$f(x_i)=wx_i+b,使得 f(x_i)simeq y_i$$
如何确定 $w$ 和 $b$ 呢?
显然,关键在于如何衡量 $f(x)$ 与 $y$ 之间的差别。
2.3节介绍过,均方误差(2.2)是回归任务中最常用的性能度量,因此我们可试图让均方误差最小化,即
$$(w^*,b^*)=mathop{argmin}_{(w,b)}sum_{i=1}^{m} (f(x_i)-y_i)^2=mathop{argmin}_{(w,b)}sum_{i=1}^{m} (y_i-wx_i-b)^2$$
【例子:更一般的情形——有 $d$ 个属性描述(多元线性回归)】
此时我们试图学得
【例子:进行变化——对数线性回归】
线性模型虽然简单,却有丰富的变化。
【例子:推广到一般——广义线性模型】
更一般的,考虑单调可微函数 $g(·)$ ,令
$$y=g^{-1}(w^Tx+b)$$
这样的模型称为“广义线性模型”($generalized linear model$)
其中函数 $g(·)$ 称为“联系函数”($link function$)
显然,对数线性回归是广义线性模型在 $g(·)=ln(·)$ 时的特例
逻辑回归
线性判别分析
多分类学习
类别不平衡问题