机器学习¶
1 机器学习基本概念¶
机器学习通过对数据的优化学习,建立能够刻画数据中所蕴含语义概念或分布结构等信息的模型。
从数据利用的角度,可将机器学习划分为监督学习(supervised learning)、无监督学习(unsupervised learning)及半监督学习(semi-supervised learning)等
1.1 有监督学习¶
其目标是给定带有标签信息数据的训练集\(D=\{(x_i,y_i)\}^n_{i=1}\), 学习一个从输入\(x_i\)到输出\(y_i\)的映射,其中D被称为训练集,n是训练样例的数量。
监督学习算法从假设空间学习得到一个最优映射函数\(f\)(决策函数), 映射函数\(f\)将输入数据映射到语义标注空间,实现数据的分类和识别
无监督学习则是直接从无标签数据\(x_i\)出发学习映射函数
半监督学习则是学习过程中的数据一部分有标签,一部分没有标签
训练集,验证集,测试集:⼀旦在训练集上完成了模型参数优化后,需要在测试数据集上对模型性能进⾏测试,为了在训练优化过程中挑选更好的模型参数,⼀般可将训练集中⼀部分数据作为验证集(validation set)
离开具体场景和问题去讨论采用哪种机器学习算法是毫⽆意义的,应该在机器学习中合理引⼊已有先验假设对模型进⾏约束,以提升模型效果
泛化能力:在机器学习中,需要保证模型在训练集上所取得性能与在测试集上所取得性能保持一致,即模型具有泛化能力(generalization)。
损失函数 将映射函数记为 f 、第 i 个训练数据记为 \((x_{i}, y_{i})\) 以及 f 对 \(x_{i}\)的 预测结果记为(\(y_i\)(即 \(\widehat{y}_{i}=f(x_{i})\)),可定义损失函数 \(Loss(f(x_{i}), y_{i})\) 来估量预测值(\(\widehat y_i\)和真实值 \(y_{i}\) )之间的差异。很显然, 在训练过程中希望映射函数在训练集上累加差异最小,即 \(min \sum_{i=1}^{n} Loss(f(x_{i}), y_{i})\)。
1.1.1 经验风险与期望风险¶
映射函数𝑓在训练集上所产⽣损失⼀般被称为 经验风险\(\Re_{emp}\) (empirical risk)。经验风险越小 说明 风险被定义为: \(\(\frac {1}{n}\sum ^n_{i=1}Loss(y_i,f(x_i))\)\)
如果知道某⼀任务包含的所有数据,则可以从 所有数据中计算模型产⽣的损失,这⼀误差损 \(\Re\)(expected risk),即真实风险或真实误差 。记该任务中所有数据的联合分布为\(P(x,y)\),期望风险被定义为:
机器学习中模型优化的目标一般为经验风险最小化
期望风险\(\Re\)与经验风险\(\Re_{emp}\) 之间存在如下关系: \(\(\mathfrak{R} \leq \mathfrak{R}_{emp }+e r r\)\) 其中𝑒𝑟𝑟取值与机器学习模型的复杂程度和训练集样本数目 有关。在模型训练过程中,如果使用同一批训练数据反复 训练,模型会变得越来越复杂,虽然经验风险 会降低, 但是𝑒𝑟𝑟取值会越大,导致期望风险增加,这一现象被称 为过学习(overfitting)。
经验风险 | 期望风险 | 模型泛化能力 |
---|---|---|
经验风险小 (训练集上表现好) | 期望风险小 (所有数据上表现好) | 泛化能力强 |
经验风险小 (训练集上表现好) | 期望风险大 (所有数据上表现不好) | 过学习 (模型过于复杂) |
经验风险大 (训练集上表现不好) | 期望风险大 (所有数据上表现不好) | 欠学习 |
经验风险大 (训练集上表现不好) | 期望风险小 (所有数据上表现好) | "神仙算法"或"黄粱美梦" |
在模型优化中引入恰 当先验约束可提升模型性能。为了防止过学习,结构风险 最小化(structural risk minimization)引入正则化(regularizer) 或惩罚项(penalty term) 来降低模型模型复杂度,既最小化 经验风险、又力求降低模型复杂度,在两者之间寻找平衡: \(\(\frac{1}{n} \sum_{i=1}^{n} Loss\left(y_{i}, f\left(x_{i}\right)\right)+\lambda J(f)\)\)
其中 𝐽(𝑓)是正则化因子或惩罚项因子,\(\lambda\)是用来调整惩 罚强度的系数
1.1.2 模型度量方法¶
以二分类为例:n为训练样例的总数,正例数量和反例数量分别为prP和N。机器模型预测类型可以分为以下几类:真正例TP,假正例FP,真反例TN,假反例FN - 准确率accuracy:\(ACC=\frac{TP+TN}{P+N}\) - 错误率error rate: \(errorRate=\frac{FP+FN}{P+N}\) - 精确率precision: \(precision=\frac{TP}{TP+FP}\) - 召回率recall: \(recall = \frac{TP}{TP+FN}\)
在实际应用中,为了综合考虑精确率和召回率,可采用综合分类率F1-score:
1.1.3 参数优化¶
频率学派: 在频率学派中,频率是概率的经验基础,概 率表示的是事件发⽣频率的极限值。当重复 试验的次数趋近于⽆穷⼤时,事件发⽣的频 率会收敛到真实概率,即“频率依概率收敛于 概率”。从频率学派角度⽽⾔,对模型参数优 化学习的结果就是得到使观测数据发⽣概率 最⼤的模型参数,又称为最⼤似然估计 (maximum likelihood estimation,MLE)。这 里的最⼤似然可理解为通过调整模型参数使 得模型能够最⼤化样本情况出现的概率。
贝叶斯学派: 在贝叶斯学派中,事件发⽣的频率既与当前观 测数据有关,又与对该事件已获得的历史先验 知识有关。从贝叶斯学派角度⽽⾔,对模型参 数优化学习的结果就是似然概率(模型参数产 ⽣数据的概率)与先验概率(没有任何实验数 据时对模型参数的经验判断)乘积最⼤,又称 为最⼤后验估计(maximum a posteriori estimation, MAP)。这里的最⼤后验估计可理 解为最⼤化在给定数据样本的情况下模型参数 的后验概率。
2 监督学习:回归分析和决策树¶
2.1 回归分析¶
在现实⽣活中,往往需要分析若⼲变量之间的关系,如碳排放量与⽓候变暖之间的关系,某⼀商 品⼴告投⼊量与该商品销售量之间的关系等,这种分析不同变量之间存在关系的研究叫作回归分 析,刻画不同变量之间关系的模型称为回归模型。
线性回归一个明显的问题是对离群点非常敏感,导致模型建模建模不稳定,使结果有偏,为了缓解这个问题带来的影响,可以考虑逻辑斯蒂回归:在回归模型中引入sigmod函数的一种非线性回归模型,可以表示如下:\(\(y=\frac 1{1+e^{-z}}(sigmod函数)=\frac{1}{1+e^{-(w^Tx+b)}}\)\) 其中\(y\in (0,1)\)
logistic回归只能用于解决二分类问题,将它推广为多项逻辑斯蒂回归模型(multi-nominal logistic model,即softmax函数),用于处理多类分类问题,可以得到处理多类分类问题的softmax回归。
Sigmod函数的特点:
sigmoid函数是单调递增的,其值域为(0,1),因此使sigmoid函数输出可作为概率值。 在前面介绍的线性回归中,回归函数的值域⼀般为(−∞, +∞)
对输⼊𝑧取值范围没有限制,但当 z ⼤于⼀定数值后,函数输出⽆限趋近于1,⽽小 于⼀定数值后,函数输出⽆限趋近于0。特别地,当 \(z=0\) 时,函数输出为0.5。这里 Z 是输⼊数据 x 和回归函数的参数 w 内积结果(可视为 x 各维度进⾏加权叠加)
x 各维度加权叠加之和结果取值在0附近时,函数输出值的变化幅度比较⼤(函数值 变化陡峭),且是非线性变化。但是,各维度加权叠加之和结果取值很⼤或很小时, 函数输出值⼏乎不变化,这是基于概率的⼀种认识与需要。
2.2 决策树¶
• 决策树将分类问题分解为若干基于单个 信息的推理任务,采用树状结构来逐步 完成决策判断。事实上,人们在逻辑推 理过程中经常使用决策树的思想。
构建决策树:
- 建立决策树的过程,就是不断选择属性值对样本集进行划分,直至每个子样本为同一个类别。
- 构建决策树时划分属性的顺序选择是重要的。性能好的决策树随着划分不断进行,决策树分 支结点样本集的“纯度”会越来越高,即其所包含样本尽可能属于相同类别
- 信息熵(entropy)就是一种衡量样本集合“纯度”的一种指标,如果我们计算选择不同属性划
分后样本集的“纯度”,那么就可以比较和选择属性。信息熵越大,说明该集合的不确定性越
大,“纯度”越低。选择属性划分样本集前后信息熵的减少量被称为信息增益(information
gain),也就是说信息增益被用来衡量样本集合复杂度(不确定性)所减少的程度。