COMP9321 – Data Services Engineering- Week 8

Linear Regression

这周讲了很多关于ML的内容

监督式学习

  • 回归 —— 用于理解因变量与自变量之间的关系。(连续值预估
  • 分类 —— 使用算法,将测试数据准确地分配到指定类别。(离散值预估

简单线性回归技术尝试在两个数据变量x和y之间绘制折线图。作为自变量,x沿水平轴绘制。自变量也称为解释”变量”或”预测变量”(predictor value)。因变量y在垂直轴上绘制。也可以将y 值索引为”响应变量“或”被预测变量”(predicted value)

Linear regression 可以被认为初中都学过的 y =ax +b

用若干特征 X 的线性组合去预测连续型目标 y(continuous target)。本质是找到最“合适”的线性函数y=f(X) 解释数据。课件中写成:

β向量就是回归模型的参数(coefficients / model parameters)。有时显式写出随机误差 \varepsilon。

直观例子:房价预测,特征如税费X_tax、屋龄X_age等;给出权重后可直接算预测值。

Multiple Linear Regression

  • y:因变量
  • x:自变量
  • β_0:截距
  • β_i:回归系数,表示在其它因素不变条件下,自变量 x_i 对因变量 y 的影响大小
  • 𝜀:随机误差,表示除自变量 x_1, x_2, ….., x_p 以外,其它所有可能的因素对 Y 的综合影响

线性回归假设

  • 线性(Linearity):因变量与自变量之间存在线性关系; 特征与目标近似线性关系(linear relationship)
  • 自变量之间不存在共线性(Collinearity):自变量中没有常数变量,且自变量之间不存在线性关系
  • 正态性:误差项服从正态分布;误差项近似正态(normal errors)
  • Outcome Variable must be continuous 输出值必须是连续值
  • Minimum Outliers 异常值尽量少

Correlation Coefficient 相关系

相关系数 r 的含义(1 强正、-1 强负、0 无相关)

相关系数

其中,{E} 为数学期望;分子为协方差(covariance),分母为 X 与 Y 的标准差(standard deviation)。

标准差

  • 如果 X 变大的同时 Y 也在变大,则二者正相关,相关系数趋近 +1
  • 如果 X 变大的同时 Y 反而变小,则二者负相关,相关系数趋近 -1
  • 如果 X 变大的同时 Y 没有任何有规律的变化,则二者不相关,相关系数趋近 0

方差(Variance):表征统计量(随机变量)相对均值的误差/离散度;方差越小,离散度越小,统计量越接近其平均值。

协方差(Covariance):表征统计量(随机变量)不同维度之间的误差,用于衡量不同维度之间的相关性。

方差看的是一组features数据内的离散程度,协方差是分析两组数据的特征,两个维度的分析

分析判断模型好坏

MSE 均方误差: 预测值和真实值之差平方的均值

判断模型准确值的好快, 越小越好,RMSE就是MSE开根号

Gradient Descent 梯度下降,最小化损失函数,从某个初值出发,不断沿着损失函数对参数的负梯度方向更新;学习率(learning rate)过小收敛慢、过大可能overshoot

Feature Selection

P 值

P(P value) 指当原假设为真时,得到当前或更极端样本观测结果的概率。

  • P 值很小,说明在“原假设成立”的情况下出现该结果的概率很小;依据小概率原理,我们有理由拒绝原假设
  • P 值越小,拒绝原假设的理由越充分;也可理解为结果越显著 / 越“惊讶”

通常设置显著性水平(默认 \alpha = 0.05),并在该水平下进行假设(模型)检验。

回归模型中(通常是对回归系数的显著性检验),P 值用于评估模型中 自变量与因变量之间的关系是否显著。 在假设检验框架下,P 值衡量观测结果在“原假设为真”(如:某个回归系数等于 0,即该自变量对因变量“无影响”)时出现的可能性。 当某系数的 P 值 < \alpha(如 0.05)时,可拒绝原假设,认为该自变量与因变量之间存在显著线性关系

向后去除(Backward Elimination)

一种变量选择过程:

  1. 初始模型包含所有自变量
  2. 在每一步,识别与因变量关联最弱 / 显著性最差的变量(通常是 P 值最大、或“部分相关性最小”的变量),先将其移除
  3. 重新拟合模型后,继续从剩余变量中挑出“最不显著”的变量并移除。
  4. 没有变量满足移除条件(如 P 值均小于阈值)时,过程结束,得到最终精简模型。

Classification – KNN

分类

K 近邻算法 — K Nearest Neighbors(也称为 KNNk-NN),意思是 “K 个最近的邻居”,是一种非参数惰性的监督学习分类器。 KNN 的原理就是:当预测一个新的 x 值的时候,根据它距离最近的 k 个点是什么类别来判断它属于哪个类别。

KNN 特点

KNN 是一种非参数(non-parametric)惰性(instance-based)的算法模型。

  • 非参 —— 并不是说这个算法不需要参数,而是意味着这个模型不会对数据做出任何的假设。与之相对的是线性回归(我们总会假设线性回归是一条直线)。也就是说 KNN 建立的模型结构是根据数据本身来决定的
  • 惰性 —— 同样是分类算法,逻辑回归需要先对数据进行大量训练(training),最后才会得到一个算法模型。而 KNN 算法却不需要它没有明确的训练数据的过程,或者说这个过程很快

一个例子:”根据k近邻的思想来给绿色圆点进行分类” 如果K=3,绿色圆点的最邻近的3个点是2个红色小三角形和1个蓝色小正方形,少数从属于多数,判定录色的这个待分类点属于红色的三角形一类。 如果K=5,绿色圆点的最邻近的5个邻居是2个红色三角形和3个蓝色的正方形,还是少数从属于多数,判定绿色的这个待分类点属于蓝色的正方形一类。

如何选择K这个值就变得比较重要

如何选取K

增大k的时候,一般错误率会先降低,因为有周围更多的样本可以借鉴了,分类效果会变好。但当K值更大的时候,错误率会更高,比如说你一共就35个样本,当你K增大到30的时候,KNN基本上就没意义了。

如果选择较小的K值

相当于用较小的领域中的训练实例进行预测,例如取K值为1时,一旦最近的一个点是噪声,那么就会出现偏差,“学习”的近似误差会减小,只有与输入实例较近或相似的训练实例才会对预测结果起作用,与此同时带来的问题是“学习”的估计误差会增大; K值的减小,意味着整体模型变得复杂,容易发生过拟合(overhtting)

如果选择较大的K值 相当于用较大领域中的训练实例进行预测,与输入目标点较远实例也会对预测起作用,使预测发生错误。其优点是可以减少学习的估计误盖、但缺点是学习的近似误差会增大 K值的增大,意味着整体模型变得简单,容易发生欠拟合(underftting)

近似误差:对训练集的训练误差 估计误差:对测试集的测试误差 最小化近似误差容易过拟 最小化估计误差整体的泛化能力好 泛化能力:是指机器学习算法对新鲜样本的适应能力。学习的目的是学到隐含在数据背后的规律,对具有同一规律的学习集以外的数据,经过训练的网络也能给出合适的输出,该能力称为泛化能力。

KNN算法优点

  • 简单易用,相比其他算法,KNN算是比较简洁明了的算法。
  • 模型训练时间快,因为KNN算法是情性的。
  • 预测效果好。
  • 对异常值不敏感

KNN算法缺点

  • 对内存要求较高,因为该算法存储了所有训练数据
  • 预测阶段可能很慢

Evaluation评估指标

准确率 (Accuracy)

表示模型整体预测正确的比例。

召回率 (Recall)

表示该类样本中有多少被找出来(即“召回了多少”)。在所有真实为正的样本里,模型找回了多少(TP / (TP+FN))——比如在所有真实 apple 中你漏掉(false negatives)了多少

精确率 (Precision)

在被预测为正的样本里,有多少是真的正(TP / (TP+FP))。“识别为 apple的预测里有多少真的是 apple”

F1 score

PrecisionRecall加权调和平均值

考试会有可能考这些选择题

评论

发表回复

目录