西瓜书学习笔记——第一章&第二章


前言

本文为学习西瓜书和南瓜书的学习记录笔记,供自己复习回顾和大家参考。


第一章绪论

1.1 机器学习发展历史

  1. 机器学习的发展历经:推理期,知识期,学习期,深度学习期
  2. 推理期的人们认为只要赋予机器处理逻辑推理的能力,机器就有智能;知识期的人们认为还得让机器拥有知识;学习期人们认为如果机器自己能够学习才是智能的体现。
  3. 机器学习被划分为:机械学习,示教学习,类比学习和归纳学习,归纳学习,即广义上“从样例学习”被广为研究。
  4. 20世纪80年代,“从样例中学习”的一大主流为符号主义学习,其代表包括决策树(Decision Tree)和基于逻辑学习(Inductive Logic Programming)。
  5. 20世纪90年代中期之前,“从样例中学习”的另一主流技术是基于神经网络的连接主义学习。最大局限是“试错性”(调参,过拟合)。
  6. 20世纪90年代中期, 统计学习(Statistical Learning)占据主流舞台,代表技术是支持向量机(SVM)以及更一般的核方法(Kernel)。
  7. 21世纪初,连接主义卷土重来,掀起了以深度学习(Deep Learning)为名的热潮。深度学习的前身是连接主义学习,改进点为多层神经网络,适用于数据变大,算力变强,存取效率变高的现代。

1.2 基本术语

  • 分类: 预测离散值
  • 回归: 预测连续值
  • 聚类: 将训练集中的内容分为一些簇,训练样本不拥有标记信息
  • 有监督学习: 如分类和回归
  • 无监督学习: 如聚类
  • 泛化: 使得模型可以适用于新样本的能力

1.3 假设空间

  • 归纳和演绎: 前者是从特殊到一般的Generalization泛化过程,后者是从一般到特殊的Specialization特化过程(公理-引理)
  • 归纳学习(Inductive Learning): 广义理解是”从样例中学习“。狭义理解是从训练数据中学得概念(Concept),概念学习研究较少因为涉及语义(Semantic),概念学习中最基本的是布尔概念学习(指是/不是为目标概念的*学习,比如我们上图中的好瓜和坏瓜)
  • 假设空间(Hypothesis Space): 学习的过程可以看做一个在所有假设(Hypothesis)组成的空间(即”假设空间“)中进行搜索的过程,搜索目标是找到与训练集匹配(Fit)的假设,即能够将训练集中的瓜全部判断正确的假设。
  • 版本空间: 与训练集一致的“假设空间”,eg. 色泽=all,根蒂=蜷缩,敲声=all与色泽=all,根蒂=蜷缩,敲声=清脆)即存在着一个与训练集一致的假设集合,称之为版本空间。

1.4 归纳偏好

  • 归纳偏好: 在机器学习算法在学习过程中对某种类型假设的偏好。任何一个有效的机器学习算法都必须要有偏好,否则会被假设空间中的看似在训练集中“等效”的假设所迷惑从,从而产生无法确定的结果。

  • 奥卡姆剃刀: 若多个假设与观察一致,选择最简单的那个。

第二章

2.1 经验误差与过拟合

  • 训练误差(training error)或经验误差(empirical error): 学习器在训练集上的误差。
  • 泛化误差(generalization error): 在新样本上的误差。
  • 过拟合(overfitting): 当学习器把训练样本学得“太好”了的时候,很可能已经把训练样本中自身的一些特点当作了所有潜在样本都会具有的一般性质,这种导致泛化性能下降的现象称为过拟合。过拟合是无法彻底避免的,所能做到的只是“缓解”,或者说减小其风险。
  • 欠拟合(underfitting): 相对于过拟合现象,指对训练样本的一般性质尚未学好。欠拟合通常是由于学习能力低下而造成的,则比较容易克服。
    欠拟合和过拟合对比:
    在这里插入图片描述

2.2 评估方法

  • 留出法(hold-out): 直接将数据集D划分为两个互斥的集合,一个集合为训练集S,另一个作为测试集T。但由于训练集划分部分给了测试集,导致训练集的缩小使得降低了评估结果的保真性(fidelity)。常见做法是将大约2/3~4/5的样本用于训练,剩余样本用于测试。
  • 交叉验证法(cross validation): 将数据集划分成k个大小相似的互斥子集,遍历训练k次,每次使用k-1组子集的并集作为训练集,余下的那个子集作为测试集;最终返回的是这k个测试结果的均值。交叉验证法评估结果的稳定性喝保真性在很大程度上取决于k的取值,所以为强调这一点,通常把交叉验证法又称为“k折交叉验证”(k-fold cross validation)。当k=样本数目时,则得到交叉验证法的一个特例:留一法(Leave-One-Out,简称LOO)。留一法使用的训练集与初试数据集相比只少了一个样本,因此评估结果往往被认为比较准确,但当数据集比较大时,训练m个模型的计算开销可能是难以忍受的。
  • 自助法(bootstrapping): 从包含m个数据集D中自助有放回的采样m次,生成数据集D’用作训练集。自助法在数据集较小、难以有效划分训练/测试集时很有用。
  • 调参(parameter tuning)与最终模型: 在进行模型评估与选择时,除了要对适用学习算法进行选择,还需对算法参数进行设定,这就是通常所说的“参数调节”或简称“调参”。现实中常用的做法是对每一个参数选定一个范围和变化步长,例如在[0,
    0.2]范围内以0.05为步长,则实际要评估的候选参数值有5个。

2.3 性能度量

对学习器的泛化性能进行评估,不仅需要有可行的实验估计方法,还需要有衡量模型泛化能力的评价标准,这就是性能度量(performance measure)。

  • 错误率: 错误率是分类错误的样本数占样本总数的比例。

  • 精度: 精度则是分类正确的样本数占样本总数的比例。

  • 查准率(precision)与查全率(recall): 查准率可理解为“检索出的信息中有多少比例是用户感兴趣的”。查全率为“用户感兴趣的信息中有多少被检索出来了”。若希望查准率高,则会刻意提高挑选时的把握,导致部分范围内的选项漏过,使得查全率低;若希望查全率高,则会尽量把所有可能选项都选上,导致部分非优项也被包括,使得查准率低。所以查准率和查全率是一对矛盾的度量。

  • 在这里插入图片描述
    在这里插入图片描述
    上图P_R图中,一般来说P越大,R越小。评价标准如下:

  • 根据一个学习期的PR曲线是否被另一个的包住:包住者好

  • 根据PR曲线下面积大小:越大越好

  • 根据平衡点(Break-Event Point,BEP,即查准率=查全率时刻):越大越好

  • 根据F1度量:F1 = 2PR/P+R

  • 根据F1度量的一般形式Fβ = (1+β^2)PR / (Pβ^2)+R

  • 根据宏观查准率、查全率(macro-P、macro-R):先算率再平均

  • 根据TP, FP, TN, FN的平均值,计算出微查准率(micro-P)等:先平均再算率

  • F1度量: 基于查准率与查全率的调和平均定义的。F1是 Fβ=((1+β^2)PR) / ((β^2 * P) + R) Fβ=((1+β2)∗P∗R)/((β2∗P)+R) 当β=1时的特殊情况,此时查全率与查准率的相对重要性相同;对于加权平均调和 Fβ Fβ,当β>1时查全率有更大影响;当β<1时查准率有更大影响。

2.4 比较检验

  • 假设检验(hypothesis test): 根据测试错误率估推出泛化错误率的分布。关于单个学习器泛化性能的假设进行检验。

  • 交叉验证t检验: 基本思想是若两个学习器的性能相同,则它们使用相同的训练/测试集得到的测试错误率应相同。所以分别对两个学习器用k折交叉验证法得到两A、B组测试错误率,然后通过以下公式计算,当小于临界值tα/2,k-1,则假设不能被拒绝,即认为两个学习器没有显著差别;反之则认为有显著差别,且平均错误率低的那个学习器性能较优。这里tα/2,k-1是自由度为k-1的t分布上尾部累积分布为α/2的临界值。
    T t = ∣ ( k ) ∗ μ / σ ∣ . \mathrm{Tt}=\left|(\sqrt{k})^{*} \mu / \sigma\right|. Tt=(k )μ/σ.

  • 5x2交叉验证: 对于交叉验证t检验,欲进行有效的假设检验,一个重要的前提是测试错误率均为泛化错误率的独立采样,然而通常情况下由于样本有限,在使用交叉验证等实验估计方法时,不同轮次的训练会有一定程度的重叠,这就使得测试错误率实际上并不独立,会导致过高估计假设成立的概率。为缓解这一问题,可采用“5x2交叉验证”法。即做5次2折交叉验证,在每次2折交叉验证之前随机将数据打乱,使得5次交叉验证中的数据划分不重复。
    交叉验证示意图:
    在这里插入图片描述

  • McNemar检验: 对二分类问题,通过留出法不仅可以估计出学习器A和B的测试错误率,还可获得两学习器分类结果的差别。若假设两学习器性能相同,则两学习器检错样本数应该相等即 |e₀₁ - e₁₀| ∣e₀₁−e₁₀∣,且差的绝对值即 |e₀₁ - e₁₀| ∣e₀₁−e₁₀∣服从正态分布。McNemar检验考虑变量Tχ₂,公式如下,服从自由度为1的χ²分布,即标准正态分布变量的平方。给定显著α,当以上变量值小于临界值χα²时,不能拒绝假设,即认为两学习器的性能没有显著差别;否则拒绝假设,认为两者性能有显著差别,且平均错误率较小的那个学习器性能较优。
    T χ 2 = ( ∣ e 01 − e 10 ∣ − 1 ) 2 / ( e 01 + e 10 ) . \mathrm{T} \chi_{2}=\left(\left|e_{01}-\mathrm{e}_{10}\right|-1\right)^{2} /\left(e_{01}+\mathrm{e}_{10}\right). Tχ2=(e01e101)2/(e01+e10).

  • Friedman检验: 相比于交叉验证t检验与McNemar检验都是在一个数据集上比较两个算法的性能,该方法适用于更多时候我们需在一组数据集上对多个算法进行比较。Friedman检验通过对比Tχ²或更常用的是τF,公式如下,τF检验的常用临界值查表。若“所有算法的性能相同”这个假设被拒绝,则说明算法的性能显著不同,这时需要进行“后续检验”(post-hoc test)来进一步区分各算法。常用的则有Nemenyi后续检验。
    T χ 2 = ( k − 1 ) / k ∗ 12 N / ( k 2 − 1 ) ∑ ( 1 − > k ) ( r i − ( k + 1 ) / 2 ) 2 = 12 N / ( k ( k + 1 ) ) ( ∑ ( 1 − > k ) ( r i ) 2 − ( ( k ( k + 1 ) 2 ) / 4 ) ) . \begin{aligned} T \chi^{2}=(k-1) / k * 12 N /\left(k^{2}-1\right) \sum(1->k)(r i-(k+1) / 2)^{2} \\ \quad=12 N /(k(k+1))\left(\sum(1->k)(r i)^{2}-\left(\left(k(k+1)^{2}\right) / 4\right)\right) \end{aligned}. Tχ2=(k1)/k12N/(k21)(1>k)(ri(k+1)/2)2=12N/(k(k+1))((1>k)(ri)2((k(k+1)2)/4)).

  • Nemenyi后续检验: 计算出平均序值差别的临界值域CD。qɑ公式如下,常用取值查表。
    C D = q a ∗ ( k ( k + 1 ) / 6 N ) . C D=q a^{*} \quad(\sqrt{k}(k+1) / 6 N). CD=qa(k (k+1)/6N).

2.5 偏差与方差

  • 偏差: 偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。
  • 方差: 方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。
  • 噪声: 噪声表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。
  • 偏差-方差分解(bias-variance decomposition): 人们往往还希望了解学习器“为什么”具有这样的性能,偏差-方差分解是解释学习算法泛化性能的一种重要工具。泛化误差可分解为偏差、方差和噪声之和。偏差-方差分解说明,泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。给定学习任务时,为了取得好的泛化性能,则需使偏差较小,即能够充分拟合数据,并且使方差较小,即使得数据扰动产生的影响小。
  • 偏差-方差窘境(bias-variance dilemma): 一般来说偏差和方差是有冲突的,这称为偏差-方差窘境。给定学习任务时,假定我们能控制学习算法的训练程度,则在训练不足时,学习器的拟合能力不够强,训练数据的扰动不足以使学习器产生显著变化,此时偏差主导了泛化错误率;随训练程度的加深,学习器的拟合能力逐渐增强,训练数据发生的扰动渐渐能被学习器学习到,方差逐渐主导了泛化错误率;在训练充足后,学习器的拟合能力非常强,训练数据发生的轻微扰动都会导致学习器发生显著变化,若训练数据自身的、非全局的特性被学习到了,则将发生过拟合。

参考资料

《机器学习》西瓜书读书笔记:「第一、二章」
西瓜书阅读笔记—第一章
西瓜书第二章学习笔记- 上

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值