机器学习 周志华 第二章模型评估与选择有感

文章目录
  1. 1. 摘要
  2. 2. 正文
  3. 3. 问题

[原创,转载请附网址:http://dongshuyan.top]

摘要

学这一章之前,我最初的疑问就是:为什么要把这一章放在绪论之后,不先将怎么建立模型呢?后来读着读着才发现只有知道什么样子的模型是好的才能有一个设计模型的方向。这样我们就可以向着这个方向来设计我们的模型了。
进入正题:这一章讲的中心就是怎么从多个模型中去选择一个最优的模型。其步骤大致如下:
总线
接着我将对让我比较有感悟的方面做仔细记录。

正文

一、首先是经验误差,泛化误差,过拟合,欠拟合等的概念,书上讲的很好很清晰,比老师上课讲的好。

二、然后评估方法里主要是讲了怎么样去在一个总的数据集D中选出(或者说划分为)训练集S与测试集T,才能较好的利用这些数据估计出学习器的自身各种性质。写到这里,我突然想到,估算系统参数,不就是我们概率论中学习的参数估计?我找时间回顾了一下当时学的,主要有两种方法:

  • 1     矩估计法:数据越多,其样本各阶矩会趋近于总体数据的各阶矩。
  • 2     极大似然估计法:参数使得出现被选出样本的情况的概率最大。

三、调参过程书上写的就是对n个互相独立的参数进行枚举取最优,这样的话可以借助神经网络、遗传算法、智能退火等智能算法调参。

四、性能度量,在性能度量的过程中其关键就是怎么样选取一个f(x)使得其可以表示出学习器在我们希望看到的方面的能力。
(1)其中最常用的两种是错误率和精度。(若连续则积分)
错误率:         公式2-1             (2-1)
精 度:         公式2-2             (2-2)
(2)到后面在观察其他方面时还会有其他方面的要求倾向,于是就有了查准率P,查全率R。F1是查准率与查全率的加调和平均,而 是T与P的加权调和平均。(调和平均更加注重较小值)。
(3)ROC 和AUC是用来看学习器的泛化能力的。与P 和R只是观测的角度不同其余很像。
泛化能力:
泛化能力
值得一提的是ROC图的绘制,这个地方的各种式子证明起来都不太好理解,因为一开始不太明白这个图的绘制原理。不过后来就理解了一下。设一共有m+个正例与m-个反例,则图像的绘制过程主要是将曲线变成折线而且是只有“向上走”和“向右走”。若出现在这里的是正例则向上走1/m+否则向右走1/m-(这样正好走到(1,1))。理解方式是:我们希望是所有的正例都在前面,所有的反例都在后面,这样就说明我们学习器学的的经验可以精确的将对错分开。所以在计算
公式2-3             (2-3)
的时候,理解方式就是没出现一组“反例出现在正例之前”则给1分的罚值,“反例预测值与正例一致”则给0.5分的罚值。其中面积是每个小格子的面积。

(4)代价敏感错误率与代价曲线,即是真的看成假的与假的看成真的惩罚值不同

五、比较检验:我们希望比较的是泛化性能。通过以上的过程我们已经基本可以比较出不同学习器在测试集上的性能好坏,而我们目前可以通过假设检验来计算把以上结论推到学习器泛化能力的正确概率是多少。
(概率论知识,多看书,多理解,不过为什么是那些分布呢?)

六、利用“偏差-方差分解”解释学习算法泛化性能。
泛化误差可以分解为偏差、方差与噪声之和。


总结这一章:

1      概率TM原来是这么用的呀。
2      这些观测不同方向给出的公式好巧妙。
3      学习器一定要有一个学习方向!即我们希望他在哪方面性能更好。

问题

1. 为什么 P24“若可彻底避免过拟合,则通过经验误差最小化就能获得最优解,这就以为着我们构造性地证明了‘P=NP’;因此,只要相信‘P≠NP’,过拟合就不可避免”?
    在我看来,这可能意味着我们的方向不是一个单调的线,可能我们的学习器在样本上很好,但是在其他样本上就未必了。仔细想一下,若没有过拟合,则训练误差就是泛化误差,换句话说,在只要被从训练集中总结出的经验就一定是对的,这有没有可能被实现呢?若样本集中可以包含所有特例,且要求学习器必须总结出符合所有样本的经验才采用的话(例如利用学习器求取凸包的话,有没有可能实现“无过拟合”呢?)不过这样的话啊,这确实就是一个P问题,而不是NP问题。过拟合不可避免的前提到底是什么呢?

2. 在交叉验证法中的那个特例留一法,其每组模型只有一个测试样本,这样难道不会使其误差过大吗?

3. P31中第二段第三行“按此顺序逐个把样本作为正例进行预测,则每次可以计算出当前的查全率、查准率”这句话我理解了很多次。目前我认为是一开始让学习器认为所有样本全错,然后在排第一位的对,然后第二个。换句话说,学习器的工作只有排序,而我们的工作是调整学习器的阈值来使在已排好的序列中依次成为正例。所以我们是在调整阈值。不懂的地方是,若两个样本的预测值一样怎么办吗?取平均吗?

4. 在绘制ROC图时遇到正例预测值与反例预测值一样时,我感觉按照书上的写法是走出来一个三角形,是这样吗?计算AUC与lrank时,若遇到正例预测值与反例预测值一样时,则按小块面积为面积处理?