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

目录

  • 一、第一章 绪论
    • 1、重要基本术语
      • 1.1 分类与回归
      • 1.2 聚类
      • 1.3 监督学习和无监督学习
      • 1.4 泛化
      • 1.5 归纳偏好
  • 二、第二章 模型评估与选择
    • 1、评估方法
      • 1.1 留出法
      • 2.2 交叉验证法
      • 2.3 自助法
    • 2、性能度量
      • 2.1 错误率与精度
      • 2.2 查准率、查全率与F1

一、第一章 绪论

1、重要基本术语

1.1 分类与回归

  分类:若我们预测的是离散值,例如判断是“坏瓜”“好瓜”,则此类学习任务成为“分类”(classification)。对只涉及两个类别的“二分类”任务,通常称其中一个为正类,另一个为反类;涉及多个类别时,则成为“多分类”(multi-class classification)任务。
  回归:若预测的是连续值,例如西瓜的成熟度是0.95、0.37,则此类学习任务成为“回归”(regression)。

1.2 聚类

  将训练集分成若干个组,每个组成为一个“簇”,这些自动形成的簇可能对应一些潜在的概念划分,例如“深色瓜”、“浅色瓜”等,这样聚类有利于了解数据内在的规律,能为更深入的分析数据建立基础。再聚类学习中,像“深色瓜”这样的概念我们是事先不知道的,并且训练样本也不会带有这样的标记信息。

1.3 监督学习和无监督学习

  根据训练数据是否拥有标记信息,可以讲学习任务大致分为两大类:监督学习和无监督学习。
  分类和回归是监督学习的代表;
  聚类是无监督学习的代表。

1.4 泛化

  学习得到的模型适用于新样本的能力,称为泛化能力,具有强泛化能力的模型能很好的适用于整个样本空间。简单地说,模型不仅能在训练样本中工作的很好,对没见过的新样本也要能够有很好的判断能力。

1.5 归纳偏好

  在学习模型过程中,可能会有多个与训练集一致的假设,例如西瓜(色泽=青绿)或(色泽=乌黑)都有可能是个好瓜,那么模型该如何判断呢?所以任何一个有效的机器学习算法必有其归纳偏好,否则它将会被假设空间中看似在训练集上的“等效”假设所迷惑,导致无法产生确定的学习结果。
  引导算法确立“正确”偏好的一般性原则:

  奥卡姆剃刀原则:若有多个假设与观察一致,则选最简单的那个。
  但是奥卡姆剃刀原则并非唯一可行的原则,对于一个学习算法a,若它在某些问题上比算法b好,则必然存在另一些问题,在那里b比a好。哪怕b算法是“随机胡猜”这样的笨拙算法。

  没有免费午餐定理(No Free Lunch Theorem,简称NFL定理)暗喻,没有任何一个学习算法可以在任何领域任何情况下总是产生最准确的学习器,不管是什么学习算法(尽管可能看上去很笨拙),至少会存在一个目标函数能够使得随机猜测是更好的想法。
  NFL定理最重要的寓意,就是让我们清楚的认识到,脱离具体问题而空谈“什么学习算法更好”毫无意义,要谈论算法的相对优劣,必须要针对具体问题,学习算法自身的归纳偏好与问题是否相配,才是起到关键性作用的。

二、第二章 模型评估与选择

  在实际任务中,我们可能会有多种学习算法可供选择,甚至对同一个学习算法,当我们使用不同的参数配置时,也会产生不同的模型,理想的情况是对候选模型的泛化误差进行评估,选择泛化误差最小的模型,但是泛化误差往往难以直接评估,因此我们就需要根据一些标准来进行模型评估与选择。

1、评估方法

  我们需要通过实验测试来对学习器的泛化误差进行评估,因此我们需要一个“测试集”来测试学习器对新样本的判别能力,以测试集上的测试误差作为泛化误差的近似。但是我们往往只有一个包含m个样例的数据集 D = ( x 1 , y 1 ) , ( x 2 , y 2 ) , … … , ( x m , y m ) D={(x_1,y_1),(x_2,y_2),……,(x_m,y_m)} D=(x1,y1),(x2,y2),……,(xm,ym),那么就需要对数据集D进行适当的划分处理。下面是常见的处理方式:

1.1 留出法

  留出法直接讲数据集D划分为两个互斥的子集合,其中一个作为训练集S,另外一个作为测试集T,即 D = S ∪ T , S ∩ T = ∅ D=S\cup T,S\cap T=\emptyset D=STST=。在S上训练出模型后,用T来评估其测试误差,作为泛化误差的估计值。
  要注意的是,训练集和测试集的划分要尽可能保持数据分布的一致性,避免数据划分对最终结果产生影响。例如在分类任务中,至少要保持样本的类别比例相似,例如数据集D中正例占60%,反例占40%,那么S和T的样本比例也都应该正例占60%,反例占40%。
  单次使用留出法得到的估计结果往往不够稳定可靠,因此我们一般采用若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果。
  常见的划分是将2/3~4/5的样本用于训练、其余的样本用于测试。

2.2 交叉验证法

  将数据集D划分为k个大小相似的互斥子集,每个子集 D i D_i Di尽可能的保持数据的一致性,然后每次用k-1个子集作为训练集,1个子集作为测试集,然后逐一把每个子集作为测试集,进行k次实验,最终得到的结果是这k次实验的均值,称为“k折交叉验证”。
  与留出法类似,也需要重复进行p次划分,最终的结果是这p次k折交叉验证的结果均值。

2.3 自助法

  每次从D中挑选一个样本,并将其拷贝到数据集D’中,然后再将该样本放回到D中,重复m次这个过程,就得到了含有m个样本的数据集D’,这就是自助采样的过程。
  在自助采样中,很明显一部分样本可能会重复出现,另外一部分样本可能从未被采样到,一个样本在m次采样中均未被采样到的概率是 ( 1 − 1 m ) m (1-\frac 1m)^m (1m1)m,取极限得到
lim ⁡ n → ∞ ( 1 − 1 m ) m = 1 e ≈ 0.368 \lim_{n \to \infty} (1- \frac 1m)^m=\frac 1e\approx 0.368 nlim(1m1)m=e10.368
  即通过自助采样初始数据集D中约有36.8%的样本未出现在D’中,我们可以用D’作训练集,剩余作测试集。
  自助法在数据集较小、难以有效划分训练/测试集时很有用,然而,自助法产生的数据集改变了初始数据集的分布,这会引入估计偏差。在初始数据量足够时,留出法和交叉验证法更常用一些。

2、性能度量

  对学习器的泛化性能进行评估,不仅需要有效可行的实验评估方法,还需要有衡量模型泛化能力的评价标准,这就是性能度量。
  回归任务最常用的性能度量是“均方误差”
E ( f ; D ) = 1 m ∑ i = 1 m ( f ( x i ) − y i ) 2 E(f;D)=\frac 1m \sum_{i=1}^m (f(x_i)-y_i)^2 E(f;D)=m1i=1m(f(xi)yi)2

2.1 错误率与精度

  错误率是分类错误的样本数占样本总数的比例,精度是分类正确的样本数占样本总数的比例。
E ( f ; D ) = 1 m ∑ i = 1 m Ⅱ ( f ( x i ) ≠ y i ) E(f;D)=\frac 1m \sum_{i=1}^m Ⅱ(f(x_i) \neq y_i) E(f;D)=m1i=1m(f(xi)=yi)
a c c ( f ; D ) = 1 m ∑ i = 1 m Ⅱ ( f ( x i ) = y i ) = 1 − E ( f ; D ) acc(f;D)=\frac 1m \sum_{i=1}^m Ⅱ(f(x_i) = y_i)=1-E(f;D) acc(f;D)=m1i=1m(f(xi)=yi)=1E(f;D)

2.2 查准率、查全率与F1

真实情况 预测结果
正例
反例
正例
TP(真正例)
FN(假反例)
反例
FP(假正例)
TN(真反例)
  查准率P和查全率R分别定义为:

P = T P T P + F P P= \frac {TP}{TP+FP} P=TP+FPTP
R = T P T P + F N R= \frac {TP}{TP+FN} R=TP+FNTP
  查准率和查全率是一对矛盾的度量,往往查准率越高时,查全率就会偏低;二查全率越高时,查准率就会偏低。通常只有在一些简单的任务中,才可能使查准率和查全率都很高。
  以查准率为纵轴、查全率为横轴作图,就能得到查准确-查全率曲线,简称“P-R曲线”,如图所示。

西瓜书学习笔记——第一、二章_第1张图片
  若一个学习器的P-R曲线能被另外一个学习器的曲线完全包住,则可断言后者的学习能力优于前者,如图中的B和C;若有交叉,则一般难以断言两者孰优孰劣,例如A和B,只能在具体的查准率或查全率之下进行比较。
  “平衡点”(简称BEP)就是这样一个度量,它是查准率等于查全率时的取值,平衡点越高则可以认为越优。
  实际应用中更常用的时F1:
F 1 = 2 × P × R P + R F1=\frac {2\times P\times R}{P+R} F1=P+R2×P×R
  应用中根据对查准率与查全率的重视程度不同,引入F1的一般形式:
F β = ( 1 + β 2 × P × R ) β 2 × P + R F_\beta =\frac {(1+\beta ^2\times P \times R)}{\beta ^2 \times P+R} Fβ=β2×P+R(1+β2×P×R)
   β = 1 \beta =1 β=1时退化为F1
   β > 1 \beta >1 β1时查全率影响更大
   0 < β < 1 0<\beta <1 0β1时查准率影响更大

你可能感兴趣的:(学习,机器学习,聚类)