机器学习入门

机器学习笔记

一. 绪论

框架

框架
可以这么理解, 监督学习通过训练集获得模型, 然后根据模型来预测位置的数据; 无监督学习是输入一堆没有标签的数据, 通过模型输出分好类(贴了标签)的数据; 而强化学习是在交互过程中持续进行的过程, 目的是使回报尽量达到最大化.注意当模型中无人为超参时, 不需要设置验证集.

基本概念

误差

模型输出与真值的偏离程度, 在模型中以损失函数表示

  1. 经验误差: 训练集上的误差, 体现对训练集的 拟合能力
  2. 泛化误差: 未知样本上的误差, 体现对未知数据的 预测能力

过拟合与欠拟合

在这里插入图片描述

  1. 过拟合: 模型过于贴近训练集导致对验证和测试的数据产生较大误差
  2. 欠拟合: 训练和预测的时候都不太行

评估

hold-out 留出法评估

将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另外一个作为测试集T,即D=S∪T,S∩T=0.在S上训练出模型后,用T来评估其测试误差,作为对泛化误差的评估.需要注意保持两个集合数据分布的一致性

cross validation S-交叉验证

把样本数据随机的分成S份,每次随机的选择S-1份作为训练集,剩下的1份做测试集。当这一轮完成后,重新随机选择S-1份来训练数据。若干轮(小于S)之后,选择损失函数评估最优的模型和参数。
可以大致理解为, 将D分为互斥的s份, 每一份采用hold-out评估, 最后误差取平均值.

bootstrap自助法

假设给定的数据集包含d个样本。该数据集有放回地抽样m次,产生m个样本的训练集。这样原数据样本中的某些样本很可能在该样本集中出现多次。没有进入该训练集的样本最终形成检验集(测试集)。 显然每个样本被选中的概率是1/m,因此未被选中的概率就是 ( 1 − 1 m ) (1-\frac{1}{m}) (1m1),这样一个样本在训练集中没出现的概率就是m次都未被选中的概率,即 ( 1 − 1 m ) m (1- \frac{1}{m})^m (1m1)m。当m趋于无穷大时,这一概率就将趋近于 e − 1 = 0.368 e^{-1}=0.368 e1=0.368,所以留在训练集中的样本大概就占原来数据集的63.2%。
可以看到, 自助法它 适用于小的数据集, 在评估过程中也不会减小训练集S的规模, 但是他改变了数据集的分布, 所以会带来一定的误差

性能度量

这里想要补充一下分类和聚类. 可以这样理解: 分类的输入时有标签但是无分组的数据, 处理的时候需要根据数据的标签将同标签类的数据归入同一组, 如开头所说分类是一种监督学习的方法; 聚类的输入并没有表示类别的标签, 在处理时也不需要关心数据将会具有哪些标签, 只是把相似的数据聚到一起, 无监督学习需要聚类算法将数据聚到一起.

分类模型的性能度量

混淆矩阵

用于比较分类结果和实例的数据的差距

这里, 用T(Ture)表示预测正确, F(False)表示预测错误, P表示二分类中的正例, N表示负例;譬如测对的正例就是TP, 依次类推.

  • 准确率: a c c u r a c y = T P + T N T P + F P + T N + F N ( 测 对 的 数 在 总 数 中 的 占 比 ) accuracy=\frac{TP+TN}{TP+FP+TN+FN}(测对的数在总数中的占比) accuracy=TP+FP+TN+FNTP+TN()
  • 精确率: p r e c i s i o n = T P T P + F P ( 测 对 的 正 例 数 在 总 数 中 的 占 比 ) precision=\frac{TP}{TP+FP}(测对的正例数在总数中的占比) precision=TP+FPTP()
  • 召回率: R e c a l l = T P T P + F N ( 测 对 的 正 例 在 所 有 正 例 中 的 占 比 ) Recall=\frac{TP}{TP+FN}(测对的正例在所有正例中的占比) Recall=TP+FNTP()
  • F-score: ( 1 + β 2 ) p r e c i s i o n × r e c a l l β 2 × p r e c i s i o n + r e c a l l ( 准 确 率 与 精 确 率 的 带 权 重 调 和 ) (1+\beta^2)\frac{precision\times recall}{\beta^2\times precision+recall}(准确率与精确率的带权重调和) (1+β2)β2×precision+recallprecision×recall()
  • F1-score: 准确率与精确率的同权重调和, 即 β = 1 \beta = 1 β=1的F-score
  • 真正率: T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP
  • 假正率: F P R = F N T N + F P FPR=\frac{FN}{TN+FP} FPR=TN+FPFN
ROC, AUC与PR

ROC,AUC,PR曲线与混淆矩阵的各数据有非常直接的联系.

ROC曲线

横坐标FPR, 纵坐标TPR, 用分类的结果计算得点再连接成曲线. 显然越靠近左上角, 模型的准确率越高.

AUC

ROC的积分是模型的AUC, 用积分的含义可以解释为分类模型ROC曲线的面积.
在二分类的情况下, ROC数值大小不同对应模型的分类能力也不同:

  1. A U C = 1 AUC = 1 AUC=1: 模型具有100%完美预测的能力
  2. A U C ∈ [ 0.5 , 1 ] AUC\in [0.5, 1] AUC[0.5,1]: 在合适的阈值下, 模型预测能力优于随机预测
  3. A U C = 0.5 AUC = 0.5 AUC=0.5: 模型预测能力与随机预测相同, 此时的模型相当于在瞎猜
  4. A U C ∈ [ 0 , 0.5 ] AUC\in[0,0.5] AUC[0,0.5]: 模型预测能力相当差, 甚至低于瞎猜
PR曲线

横坐标recall, 纵坐标precision, 显然, 同一测试集, 上方的曲线预测能力更强; 在其他条件相同时, 光滑的曲线更强.

回归模型的性能度量

在学习方程时, 回归的含义是对一组变量与另一组变量之间关系的研究(给定x, y对, 计算y对x的方程). 对于回归模型的性能度量可以直接用数据表示, 不用再画图.在python中也可以直接找到对应的库函数调用.
{ L 1 − n o r m l o s s ( L 1 范 数 损 失 ) : M A E ( y , y ^ ) = 1 n ∑ i = 1 n ∣ y i − y ^ i ∣ ( 平 均 绝 对 误 差 ) L 2 − n o r m l o s s ( L 2 范 数 损 失 ) : M S E ( y , y ^ ) = 1 n ∑ i = 1 n ( y i − y ^ i ) 2 ( 平 均 平 方 误 差 ) R M S E = M S E 解 释 变 异 : 可 被 回 归 模 型 解 释 的 数 据 占 总 数 据 比 决 定 系 数 : R 2 ( y , y ^ ) = 1 − ∑ i = 1 n ( y − y ^ ) 2 ∑ i = 1 n ( y − y ‾ ) 2 ( 回 归 模 型 已 解 释 的 y 值 占 比 ) \begin{cases} L_1-norm loss(L_1范数损失):MAE(y, \hat y)=\frac{1}{n}\sum_{i=1}^n|y_i -\hat y_i|(平均绝对误差) \\ L_2-norm loss(L_2范数损失):MSE(y, \hat y)=\frac{1}{n}\sum_{i=1}^n(y_i -\hat y_i)^2(平均平方误差) \\ RMSE = \sqrt {MSE} \\ 解释变异: 可被回归模型解释的数据占总数据比 \\ 决定系数: R^2(y, \hat y) =1-\frac{\sum_{i=1}^n(y-\hat y)^2}{\sum_{i=1}^n(y-\overline y)^2}(回归模型已解释的y值占比) \end{cases} L1normloss(L1):MAE(y,y^)=n1i=1nyiy^i()L2normloss(L2):MSE(y,y^)=n1i=1n(yiy^i)2()RMSE=MSE ::R2(y,y^)=1i=1n(yy)2i=1n(yy^)2(y)
在决定系数中, y ‾ = 1 n ∑ i = 1 n y i \overline y = \frac{1}{n}\sum_{i=1}^ny_i y=n1i=1nyi

聚类模型的性能度量

约定在兰德指数中,某类别信息记为C, 聚类结果为K, CK中同类元素对数为a, 不同对数为b ;
在轮廓系数中, 样本与其他同类样本的平均距离记为a, 样本与最近不同类样本距离的平均值记为b

{ R a n d I n d e x 兰 德 指 数 : R I = a + b C 2 n ∈ [ 0 , 1 ] A d j u s t e d R a n d I n d e x 调 整 兰 德 指 数 : A R I = R I − E ( R I ) m a x ( R I ) − E ( R I ) 轮 廓 系 数 : S = b − a m a x ( a , b ) M I : 互 信 息 , 表 示 两 种 分 布 的 吻 合 程 度 A M I : 调 整 互 信 息 N M I : 标 准 化 互 信 息 \begin{cases} RandIndex兰德指数: RI = \frac{a+b}{C_2^n} \in [0,1] \\ AdjustedRandIndex调整兰德指数: ARI = \frac{RI-E(RI)}{max(RI)-E(RI)}\\ 轮廓系数: S = \frac{b-a}{max(a, b)}\\ MI: 互信息,表示两种分布的吻合程度\\ AMI: 调整互信息\\ NMI: 标准化互信息 \end{cases} RandIndex:RI=C2na+b[0,1]AdjustedRandIndex:ARI=max(RI)E(RI)RIE(RI):S=max(a,b)baMI:,AMI:NMI:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值