———— 凯风自南,吹彼棘心。棘心夭夭,母氏劬劳。
概率论 (Probability Theory)
不确定性 (uncertainty) 是机器学习中一个重要概念,它一般由测量误差,温度漂移等因素引起,也可以由采样数据的有限性引起,在实际应用中有重要的指导意义。这时候就需要概率论的知识来描述模型方法的不确定性,从而提供了⼀个合理的框架来量化计算,同时需要概率分布来描述数据的分布,概率论也因此成了模式识别的⼀个中⼼基础。本文先介绍一些概率论的重要基础概念引入话题,再接着讲述两种重要的分布。
1. 概率密度 (Probability Density)
虽然生活中我们更多使用离散概率描述事件,但是对于机器学习的推导,更多情况下需要分析的对象是连续变量,这时候就需要引出概率密度 (probability density)。如果⼀个实值变量 的概率落在区间 的概率由 给出 ,那么 叫做 的概率密度。 位于区间 的概率为:
由于概率是⾮负的,并且 的值⼀定位于实轴上的某个位置,因此概率密度⼀定满足 以及 。
在变量以⾮线性的形式变化的情况下,概率密度函数通过 Jacobian 因⼦变换为不同的函数形式。考虑两个变量 具有如下非线性变化关系 ,那么函数 就变成了 。考虑⼀个概率密度函数 ,它对应于变量 的密度函数为 ,对于很⼩的 的值,落在区间 内的观测会被变换到区间 中。其中 ,那么有
表明 和 是不同的密度函数,同时也表明概率密度最⼤值取决于变量的选择。
位于区间 的 的概率由累积分布函数 (cumulative distribution function) 给出。定义为:
概率密度的加和规则和乘积 规则的形式为
加和规则的正确性可以⾮形式化地观察出来:把每个实数变量除以区间的宽度 ,然后考虑这些区间上的概率分布,取极限 ,把求和转化为积分,就得到了预期的结果。
2. 期望和协方差 (Expectation and Covariance)
涉及到概率的⼀个重要的操作是寻找函数的加权平均值。在概率分布 下,函数 的平均值被称为 的期望 (expectation),记作 。连续变量期望以对应概率密度的积分表示为
如果考虑多变量函数的期望,我们可以使⽤下标来表明被平均的是哪个变量,例如 表示 关于 的分布均值。需要注意, 是 的函数。
也可以考虑关于⼀个条件分布的条件期望 (conditional expectation),即
的⽅差 (variance) 被定义为
对于两个随机变量 和 ,协⽅差 (covariance) 被定义为
它表示在多⼤程度上 和 会共同变化。如果 和 相互独⽴,那么它们的协⽅差为 0。
在两个随机向量 和 的情形下,协⽅差是⼀个矩阵
3. 贝叶斯概率 (Bayes Probability)
在前几篇文章的最大似然估计中,我们对模型参数 进⾏推断时,在观察到数据之前,我们首先可以有⼀些关于参数 的假设,这以先验概率 的形式给出;根据 表达预测目标数据 可以通过条件概率 表达,贝叶斯定理为
它让我们能够通过后验概率 ,在观测到 之后估计 的不确定性。贝叶斯定理右侧量 由观测数据集 来估计,可以被看成参数 的函数,称为似然函数 (likelihood function)。它表达了在不同的参数向量 下,观测数据出现的可能性的⼤⼩。贝叶斯公式右侧分母是⼀个归⼀化常数,确保了左侧的后验概率分布是⼀个合理的概率密度,积分为 1,对公式两侧关于 进⾏积分, 我们可⽤后验概率分布和似然函数来表达贝叶斯定理的分母
在似然函数 中, 被认为是一个固定的参数,它的值由某种形式的估计来确定,这个估计的误差通过考察可能的数据集 的概率分布来得到,这也是我们使用大部分机器学习或深度学习模型常见的做法。而贝叶斯定理的观点则认为 是不确定的, 我们通过观察到的数据 估计 的概率分布来表达参数的不确定性。
贝叶斯观点的⼀个优点是天然包含先验概率。例如,假定投掷⼀枚普通的硬币 3 次,每次都是正⾯朝上,经典的最⼤似然模型在估计硬币正⾯朝上的概率时结果会是 1,表示所有未来的投掷都会是正⾯朝上。相反,⼀个带有合理的先验的贝叶斯的⽅法将不会得出这么极端的结论。在第一篇文章就讲过,如果使用带贝叶斯估计的模型相当于增加了 正则化,可以有效防止过拟合,尤其在有限数据集上这种效果更为明显。
然而先验概率的选择是十分麻烦的,一种针对贝叶斯⽅法的⼴泛批评就是先验概率的选择通常是为了计算的⽅便⽽不是为了反映出任何先验的知识。实际上当先验选择不好的时候,贝叶斯⽅法有很⼤的可能性会给出错误的结果。
概率分布 (Probability Distribution)
为了描述机器学习模型方法中的不确定性,我们需要研究一些特殊的概率分布。我们讨论的概率分布是在给定有限次观测 的前提下,对随机变量 的概率分布 建模,这个问题被称为密度估计 (density estimation),同时假定数据点是独⽴同分布。需要注意密度估计问题本质上是病态的,因为产⽣有限的观测数据集的概率分布有⽆限多种,任何在数据点 处⾮零的概率分布 都是⼀个潜在的候选,所以我们才要研究一些很常见的,例如之前在线性回归和分类问题中所遇到的伯努利分布和高斯分布等典型概率分布的一般性质。
我们要研究的都是参数分布 (parametric distribution),表示少量可调节的参数控制了整个概率分布,例如高斯分布的均值和方差。在之前的最大似然方法中,我们在给定观察数据集的条件下,确定最优的参数值。但在贝叶斯观点中,给定观察数据,我们需要先引⼊参数的先验分布,然后使⽤贝叶斯定理来计算对应后验概率分布。
这时候我们需要引入共轭先验 (conjugate prior),它使后验概率分布的函数形式与先验概率相同,从而使贝叶斯分析得到极⼤的简化。例如,伯努利分布参数的共轭先验叫做 Beta 分布,多项式分布参数的共轭先验叫做狄利克雷分布 (Dirichlet distribution),⾼斯分布均值的共轭先验是另⼀个⾼斯分布。关于伯努利分布等不再赘述,本文重点讨论这些共轭先验分布。
1. Beta 分布 (Beta Distribution)
首先设定二元随机变量 , 的概率被记作参数 , 的伯努利概率分布记作 ,均值和方差分别为 ,伯努利分布的参数 的最⼤似然解也是数据集 所占的⽐例,依旧是通过取负对数然后求到的方法求解。
我们也可以求解给定采样数据大小为 的条件下,观测到 的数量 的概率分布,这被称为⼆项分布 (binomial distribution)。采样 次以后,这个概率正比于 。为了得到归⼀化系数,就需要考虑所有采样 次出现 种情况的排列组合,⼆项分布可以写成
其中 , 。
为了⽤贝叶斯的观点看待这个问题,需要引⼊⼀个关于 的先验概率分布 。考虑⼀种形式简单的先验分布,我们注意到似然函数是某个因⼦与 的乘积的形式。如果我们选择⼀个正⽐于 和 的幂指数先验概率分布,那么后验概率分布(正⽐于先验和似然函数的乘积)就会有着与先验分布相同的形式,这个性质被叫做共轭性 (conjugacy)。我们把对应于伯努利分布的先验分布选择为 Beta 分布,定义为
其中 Gamma 函数 ,使用分部积分法可得 。公式 (13) 保证了 Beta 分布式的归⼀化, 即
其中均值和方差分别为 , 。 的后验概率分布可以通过把 Beta 先验与二项似然函数相乘得到后验概率形式
再通过归⼀化得到
其中 。实际上,它仅仅是另⼀个 Beta 分布,这也反映出先验关于似然函数的共轭性质。我们看到,如果⼀个数据集⾥有 次观测为 ,有 次观测为 ,那么从先验概率到后验概率, 的值变⼤了 , 的值变⼤了 。我们可以简单地把先验概率中的超参数 和 分别看成 和 的有效观测数 (effective number of observation)。
另外,如果我们接下来观测到更多的数据,那么后验概率分布可以扮演先验概率的角⾊。假想每次取⼀个观测值,然后在每次观测之后更新当前的后验分布。在每个阶段,上一次观测后的后验概率作为先验概率,与似然函数相乘再进行归一化得到新的后验概率。后验概率是⼀个 Beta 分布,对于 和 的观测总数(先验的和实际的)和参数 和 相关。观测到⼀个 对应于把 的值加 1,⽽观测到 会使 加 1。下图反应了这一过程,先验概率为 Beta 分布,参数为 ,似然函数由二项分布公式 (13) 给出,其中 ,对应于 的⼀次观测,从而后验概率分布为 Beta 分布,参数为 。
如果接受了贝叶斯观点,那么学习过程中的顺序⽅法可以⾃然得出,它与先验和似然函数的选择⽆关,只取决于数据独⽴同分布的假设。顺序⽅法每次使⽤⼀个或⼀⼩批观测值,然后在使⽤下⼀个观测值之前丢掉它们。在实时学习场景中,输⼊为⼀个稳定持续的数据流,模型必须在观测到所有数据之前就进⾏预测,同时也不需要把所有的数据都存储到内存⾥,在很多机器学习和深度学习模型中都广泛使用,例如小批量梯度下降算法。
在上面的例子中,如果我们想尽可能好地预测下⼀次的输出,那应该估计给定观测数据集 的情况下 的预测分布,预测形式为
使用公式 (17) 并代入 Beta 分布的均值,可得
这个结果可简单表述为 的观测结果(包括实际观测值和假想的先验值)所占的⽐例。当数据集⽆限⼤时 ,此时公式 (19) 变成了最⼤似然的结果。所以,贝叶斯的结果和最⼤似然的结果在数据集规模趋于⽆穷时会一致。对于有限规模的数据集, 的后验均值总是位于先验均值和 的最⼤似然估计之间。
观察 Beta 分布的方差也会发现,如果 或者 ,那么⽅差就趋于零。这个现象表明,随着观测到越来越多的数据,后验概率表示的不确定性将会持续下降。考虑⼀个⼀般的贝叶斯推断问题,参数为 ,以及对应的观测数据集 ,由联合概率分布 描述。我们有 ,其中
这表明 的后验均值在产⽣数据集的整个分布上做平均等于 的先验均值。类似地,我们可以证明
左侧项是 的先验⽅差。右侧第⼀项是 的平均后验⽅差,第⼆项是 的后验均值的⽅差。这个结果表明,平均来看 的后验⽅差⼩于先验⽅差,后验均值的⽅差越⼤,这个⽅差的减⼩就越⼤,当然这个结论也是在平均的情况下成立。
2. 狄利克雷分布 (Dirichlet Distribution)
二项分布是描述只有两种取值的变量的概率分布,实际中我们更多遇到多种可能取值的离散变量,我们采用 one-hot 编码方式,输入向量 在 个类别中属于类别 时就可以表示为 ,对应 的情况。如果我们⽤参数 表示 的概率,那么 的分布就是
其中 ,参数 满⾜ 和 ,可以看成伯努利分布对于多个输出的推⼴,反之伯努利也可以看作 时的特例,很容易推导出归一化
以及期望形式
现在考虑⼀个有 个独⽴观测值 的数据集 。对应的似然函数的形式为
可以看到似然函数对于 个数据点的依赖通过 ,表示观测到 的次数。这被称为分布的充分统计量 (sufficient statistics)。
为了找到 的最⼤似然解,我们需要关于 最⼤化 ,并且要限制 。这可以通过拉格朗⽇乘数实现,在第二篇文章中有提及,即最⼤化
令其关于 的导数等于 0,我们有 ,代入限制条件可得 ,所以最大似然解为 ,它是 次观测中, 的观测所占的⽐例。
现在考虑 在参数 和观测总数 条件下的联合分布,其形式为
称为多项式分布 (multinomial distribution)。归⼀化系数是把 个物体分成⼤⼩为 的 组的⽅案总数。
同样地,对应于多项式分布的参数 的一组共轭先验分布为
关于 的限制条件同上,其中 。概率的归⼀化形式为
这被称为狄利克雷分布 (Dirichlet distribution),其中 。⽤似然函数乘以先验,我们得到了参数 的后验分布,形式为
我们看到后验分布的形式又变成了狄利克雷分布,这说明,狄利克雷分布确实是多项式分布的共轭先验。通过确定归一化系数,可得
其中, 。 与⼆项分布的先验的 Beta 分布相同,我们可以把狄利克雷分布的参数 看成 时的有效观测数。
下一篇将讨论高斯分布。
评论(0)
您还未登录,请登录后发表或查看评论