PRML Chapter 01 Introduction
最近油管上的Siraj Raval小哥发起了一个“100 Days of ML Code Challenge”的活动,在Gayhub上也得到了众多程序员的响应,因此,本系列将以PRML为Base,在100天内,由浅入深,从定义、公式推导到代码实现等几个方面以综述的形式对ML进行学习。
第一章PRML通过一些例子对机器学习与模式识别的一些重要基础概念进行了解释,而其中主要包括概率论、决策论,以及信息论三方面的知识。
A. Probabillity theory
概率论的主要意义在于对不确定性的量化定义,这也可以看作是人类对于未知的观察与定义。
a. Prior knowledge
要搞懂概率论在讲什么,首先要知道随机试验、样本点、样本空间的定义,
-
随机试验:称具有以下三个特点的试验为随机试验:
- 明确性:试验的所有可能结果事前已知;
- 随机性:在每次试验之前,究竟哪一种结果会出现,事先无法确定;
- 重复性:试验可以在相同条件下重复进行。
- 样本点:随机试验的每一个可能的结果称为的一个样本点。
- 样本空间:随机试验的所有样本点的集合称为的样本空间。
以掷硬币为例,在试验前,我们知道其结果有正面、反面(明确性);每次试验前,无法确定是正面还是反面(随机性);显然,试验可以在相同条件下重复进行(重复性)。因此,我们可以称掷硬币为一个随机试验。对于掷硬币这一随机试验,我们可以看到其具有两个样本点“正面”、“反面”,由此易知样本空间为{“正面”,“反面”}。
通过以上的知识,很自然的,我们能够得到概率的公理化定义,即给每个样本点赋予一个数值表示这个样本点在每次试验中出现的几率。更一般地,设随机试验的样本空间为,对的每一个随机事件赋予一个实数,记为,如果集合函数满足以下三个约束条件,则称为事件的概率。
概率论中有两个重要的概念是概率分布和概率密度,前者是对整个样本空间的分布进行的函数式描述,而后者是对具体的样本点的分布情况进行的描述。为了更方便的定义这两个概念,我们首先引入随机变量的概念,
- 随机变量:设E为一个随机试验,为其样本空间,若对每一个,都有唯一的实数与之对应,则称是定义在上的随机变量。
对比概率的公理化定义与随机变量的定义可以看出,其主要区别在于,概率的公理化为每一个样本点定义了一个具体的数值,而随机变量将所有的数值抽象为一个变量。由此,概率分布定义为,
- 概率分布函数:设为一随机变量,对任意实数,称概率为随机变量的分布函数,记作,即
由上式易知,概率分布函数描述的是样本空间中在的区间。对于概率密度函数,考虑连续型随机变量,从下式可以看出概率分布函数与概率密度函数的关系,其中为概率密度函数。
b. Rules of probabillity
PRML中也提到两个重要的规则,加和规则(sum rule)和乘积规则(product rule),这两个规则在之后的模型推导中起到了重要作用,对于两个事件的情况,其定义如下。
- sum rule:
- product rule:
其中称为联合概率,表示事件和同时发生的概率;称为条件概率,表示事件发生的条件下事件发生的概率;称为边缘分布,表示仅考虑事件发生的概率。
c. Expectations and covariances
-
期望:函数在概率密度函数下均值被称作期望,可以理解为对函数的加权平均。离散型随机变量和连续型随机变量的期望形式如下,
特别地,多变量情况下我们经常会考虑对于单个变量的期望值,其形式如下,显然下式表示的期望是关于变量的函数,
-
方差:用于衡量函数与偏离程度,其定义如下,
但是更常用的计算形式通过以下推导得到,
协方差:对于两个随机变量,协方差度量其相互影响机制,即度量是正相关的还是反相关的。具体定义为,但更常用的计算公式通过如下推导得到,
d. Bayesian probabilities
要理解贝叶斯学派的思想,我们首先通过加和规则和乘积规则得出贝叶斯定理,因为联合概率显然有,因此,
通过上式可以得出贝叶斯定理为,
其中,
考虑数据集服从参数为的某个分布,我们现在需要推断出参数以实现对新数据的预测,通过贝叶斯定理可以得到,
从式(1.13)可以看出,贝叶斯定理通过参数先验分布和似然函数来得到后验分布,即
在机器学习与模式识别领域,主要分为频率学派和贝叶斯学派,通过式(1.13)和(1.14)可以直观的反映其各自的主张,
- 频率学派:频率学派关注的主要是数据集中样本X的分布,即样本空间。其认为参数是固定的但尚未确定的,因此其主要关注似然函数,通过最大化似然函数求得参数的点估计。其主要思想是“maximize the probability of the data given the parameters”,即通过寻找的点估计,使得数据集出现的可能性达到最大。
- 贝叶斯学派:贝叶斯学派则更多的关注于参数的分布,即参数空间,其核心思想是认为参数服从某一分布,其主要关注似然函数与参数的先验分布的乘积,所以有“maximize the probability of the parameters given the data”,即在给定数据集的情况,寻找参数的最优分布。
B. Descition theory
在机器学习与模式识别中,决策论关注的主题是“对预测模型输出的不同目标值,应该采取何种操作”。例如,当我们的医疗模型对癌症图像进行识别时,给出了85%的概率时,我们是判断其患癌还是不患癌,我们是相信这85%的概率还是相信那15%的概率,显然地,对于癌症诊断,没有患病预测为患病的代价明显小于患病了预测为没有患病的代价,因此给前者增加一个小于后者的惩罚参数是一个不错的选择,这种简单的操作即为决策论讨论的范围。解析来我们将逐步讨论决策论的一些方法。
a. Minimizing the misclassification rate
首当其冲的策略为最小化误分类率(minimizing the misclassification rate),定义如下,
很显然,该方法的核心策略便是最小化分类的错误率,亦相当于最大化分类正确率。
b. Minimizing the expected loss
在现实中的某些情况,如果我们仅仅使用最小化误分类率往往是不合理的。例如,我们上边提到的癌症预测,因为对于数据集,患病的样本数远远小于没有患病的样本数,假设数据集中99%的样本没有患病,那么如果模型对所有的数据都预测为没有患病,那么正确率即高达99%,这显然是不合理的,尤其是对漏诊的患者而言,代价巨大。为了解决这一问题,我们可以采取加权的方式,即给每一种分类情况分配一个损失,仍然以癌症预测为例,我们可以将患病而漏诊的损失设置为1000,而没有患病而误诊的损失设置为10,这样,我们可以得到最小化期望损失(minimizing the expected loss)的函数,形式如下,
其中表示将类别为k的样本分类为类别j的损失。
c. The reject option
拒绝选项(reject option)也是一种常用到的决策方法,其主要方式是给模型设置一个阈值,当我们的模型给出了高于这一阈值的预测精度,则认为可以相信这一预测,而当预测精度低于这一阈值时则可能需要其他辅助手段来进行决策包括人类介入等操作。以癌症预测为例,我们可以认为模型给出的预测精度低于90%时,不再保留模型意见而需要医生介入进行判断。
C. Information theory
信息论的一个主要议题即是对信息的量化。现实生活中,我们经常提及的一个词是“信息量”,并且我们总是以“大”和“小”来对某一事件的信息量进行衡量。显然地,当我们认为一个事件信息量小时,其实我们往往在说的是“这个事情我已经知道了,都确定了”;而当我们认为一个事件信息量大时,其实我们往往在说“这个事情我之前不知道啊,接下来会怎么发展不确定啊”。正因为以上这些现象,要量化信息且尊重常识与直觉,我们可以认为低概率事件的信息量大于高概率事件,因此有以下关于信息的一些理论。
a. Information
由于生活中关于信息的感觉,我们可以定义对于一个概率分布的信息为为,
由于定义为概率分布的负对数形式,因此当越小时,信息越大;当越大时,信息越小。对于负对数的底数我们也可以采用,这样就变成了自然对数,在之后的讨论中都使用自然对数。同时,我们可以定义在整个概率分布上的均值信息为熵,
类似地,对于连续性随机变量有,
b. Relative entropy & mutual information
相关熵(Relative entropy)亦称为KL散度被定义为如下形式,
KL散度可以看作是两分布和之间的不相似程度,最大化KL散度等驾驭最大化似然函数。同时,由式(1.20)显然可知,;KL散度还有一个重要性质,即,且等号当且仅当时成立,要证明这一性质,需要引入Jensen不等式(1.21),
由期望的定义和式(1.21),我们可以把Jensen不等式看作,
因此,对于KL散度,由式(1.21)和式(1.23)有如下推导,
因为概率分布的性质,,由此,得证。对于两个变量,我们定义互信息为(mutual information)有如下形式,
由式(1.24)可知,互信息定义为p(x,y)与p(x)p(y)的KL散度,由条件独立性,如果,我们责成变量相互独立。又由于KL散度时衡量两个分布的不相似性程度的,因此,可以看出,互信息衡量的是两个变量相互独立的程度。一般地,我们在计算互信息时,更多的使用如下定义,