贝叶斯决策论
机器学习可以理解为通过观测数据(X)推测结果(y)。同时学习推断规则(c),使得推断结果y’=c(X)与真实值y的误差尽可能的小。假如投硬币,就可以观测尺寸特征(X),通过推断规则(c)来估计正面还是反面(y)
正(1)、反(0)
假如这个给定概率p(1)=0.8,p(0)=0.2,我们就会倾向于正面向上的结果,而p(1)和p(0)就叫作先验概率,指在观测前就已知的结果概率分布。
而现实中,往往可以观测到一些属性,p(y=1|X)就是通过观测X时y=1的概率,这就叫作后验概率。
后验概率可以被看作先验概率的一种更细致的刻画和更新,因为观测了X。
而后验概率无法直接获得,引入贝叶斯公式就可以计算它。后验概率又称为条件概率,一般写作p(A|B),即当B发生时A发生的概率。
p(A&B)与p(B&A)等价,则推出贝叶斯公式。
正面向上的后验概率可以写成
背面向上的后验概率可以写成
贝叶斯决策的预测值是选取后验概率最大的结果
只要观测到X,并选择后验概率大的结果,就可以最小化预测错误概率。这个结论对所有观测值X均成立,因此只要按照这个预测逻辑,那么就可以保证错误概率最小化。
朴素贝叶斯分类器
分类器训练阶段的任务就是生成分类器,主要工作是计算每个类别训练样本中的出现频率及每个特征属性划分对每个类别的条件概率估计,并将结果记录。其输入是特征属性和训练样本,输出是分类器。
朴素贝叶斯分类器从训练数据中学习给定类标签C的每个属性Ai的条件概率,再用贝叶斯规律计算给定A1、A2…An的特定实例C的概率,然后使用最高的后验概率来预测分类。
正式定义:
- 设x={a1,a2…,am}为一个待分类项,而每个a为x的一个特征属性
- 有类别集合C={y1,y2,…yn}
- 计算P(y1|x),P(y12x),P(y3|x),P(yn|x)
- 如果P(yk|x)=max( (y1|x),P(y2|x),P(y3|x),P(yn|x))
- 则计算每各个条件概率就可以统计在各类别下各个属性的条件概率估计,即
- p(a1|y1),p(a2|y1),…p(am|y1),
- p(a1|y2,)p(a2|y2)…,p(am|y2),
- p(a1|yn),p(a2|yn)…p(am|yn),
各个特征条件独立,则根据贝叶斯定理推导
p(yi|x)=p(x|yi)p(yi)/p(x)
半朴素贝叶斯分类器
因朴素贝叶斯的属性条件独立性难以成立,因此有了半朴素贝叶斯分类器,适当考虑了一部分属性之间的相互依赖关系。
问题转化为确定每个属性的父属性
SPODE(Super-Parent ODE)假设所有的属性都依赖于同一个属性,称为超父。
TAN(Tree Augmented naive Bayes)则在最大带权生成树算法的基础上发展的一种方法。
AODE(Averaged ODE)是一种集成学习的方法,尝试将每个属性作为超父来构建SPODE,与随机森林的方法有所相似。
贝叶斯网络
贝叶斯网络,又称信念网络,是一种概率图模型,其网络拓扑结构是有向无环图(DAG)
贝叶斯网络的有向无环图中的节点表示随机变量{X1、X2…Xn},它们是可观察到的变量,或隐变量、未知参数等
连接两个节点的箭头代表此两个随机变量是具有因果关系,或非条件独立。
例如,假设节点E直接影响到节点H,即E→H,则用从E指向H的箭头建立结点E到结点H的有向弧(E,H),权值(即连接强度)用条件概率P(H|E)来表示,如下图所示:
令G = (I,E)表示一个有向无环图(DAG),其中I代表图形中所有的节点的集合,而E代表有向连接线段的集合,且令X = (Xi)i ∈ I为其有向无环图中的某一节点i所代表的随机变量,若节点X的联合概率可以表示成:
如图所示,一个简单的贝叶斯网络
因为a导致b,a和b导致c,所以有
p(a,b,c)=p(c|a,b)p(b|a)p(a)
贝叶斯网络结构形势
- head-to-head
所以有:P(a,b,c) = P(a)*P(b)*P(c|a,b)成立,化简后可得:
即在c未知的条件下,a、b被阻断(blocked),是独立的,称之为head-to-head条件独立 - tail-to-tail
在c给定的条件下,a,b被阻断(blocked),是独立的,称之为tail-to-tail条件独立 - head-to-tail
在c给定的条件下,a,b被阻断(blocked),是独立的,称之为head-to-tail条件独立。
EM算法
最大期望算法,是在概率模型中寻找参数最大数似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐形变量。
最大期望算法经过两个步骤交替进行计算:
- 计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值;
- 最大化(M),最大化在E步上求得的最大似然值来计算参数的值。M步上找到的参数估计值被用于下一个E步计算中,过程不断交替进行。
对于n个样本观察数据x=(x1,x2,x3…xn)找出样本的模型参数θ,极大化模型分布的对数似然函数如下
然后使用Jensen不等式对这个式子进行缩放如下:
(1)式是引入了一个未知的新的分布 [公式] ,分子分母同时乘以它得到的。
(2)式是由(1)式根据Jensen不等式得到的。
由于上例为期望,且log(x)为凹函数,根据Jensen不等式由1式可得2式
我们可以通过调整两个概率值Qi(Zi)和p(xi,zi)来逼近logl(θ)的真实值。
如果要满足Jensen不等式的符号,则
Qi(zi)是一个分布,满足下列条件
由这两个式子,得到
在固定其他参数θ后,Qi(zi)的计算公式就是后验概率,解决了Qi(zi)如何选择的问题
如果Qi(zi)=p(zi|xi;θ),则(2)式是我们包含隐藏数据的对数似然函数的一个下界。如果我们能最大化(2)式这个下界,则也是在极大化我们的对数似然函数。即我们需要最大化下式:
算法步骤
- 随机初始化模型参数θ的初值θ 。
- j=1,2,…,J 开始EM算法迭代:
E步:计算联合分布的条件概率期望
M步:极大化l(θ,θj)得到θj+1
θj+1 =argmax L(θ,θj)
如果θj+1已经收敛,则算法结束,否则继续迭代。
参考内容