MLE、MAP、Bayesian-E、naive Bayes
最大似然估计
最大似然估计是一种参数的估计的方法。通过最大化似然函数,求解此时的参数的值,它认为参数的是固定。模型估计中的最大似然估计:
已知数据
D
=
{
x
1
,
x
2
,
.
.
.
,
x
n
}
D=\{x_1, x2, ..., x_n\}
D={x1,x2,...,xn},来估计模型的参数
θ
\theta
θ。利用极大似然估计的方法,我们先确定似然函数。
似然函数可以为已知数据发生的概率。我们通过对模型进行假设,最大化已知数据发生概率,来确定模型的参数值,表达式为:
a r g m a x θ p ( D ∣ θ ) arg\underset{\theta}{max}\ p(D|\theta) argθmax p(D∣θ)
一般通过假设样本之间相互独立,对似然函数取对数,令其导数为零来求得参数值。然后利用求得的参数进行预测。
贝叶斯估计
贝叶斯估计是一种对模型参数进行估计的方法。假设模型的参数服从一定分布,根据模型假设、贝叶斯公式、数据集求得模型参数的分布,预测时,求预测概率对于模型参数的期望作为最终结果。
贝叶斯公式:
P ( A ∣ B ) = P ( B ∣ A ) ∗ P ( A ) P ( B ) P(A|B)=\frac{P(B|A)*P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)∗P(A)
假设模型参数服从一定的分布,但具体参数未知,根据贝叶斯公式可得
p ( θ ∣ D ) = p ( D ∣ θ ) p ( θ ) p ( D ) p(\theta|D)=\frac{p(D|\theta)p(\theta)}{p(D)} p(θ∣D)=p(D)p(D∣θ)p(θ)
假设数据集中的样本相互独立,则
p ( D ∣ θ ) = ∏ i = 1 N p ( x i ∣ θ ) p(D|\theta) = \prod_{i=1}^{N}p(x_i|\theta) p(D∣θ)=i=1∏Np(xi∣θ)
又
p ( D ) = ∫ θ p ( D ∣ θ ) p ( θ ) d θ p(D)=\int_\theta p(D|\theta)p(\theta)d\theta p(D)=∫θp(D∣θ)p(θ)dθ
带入上上上式,得:
p ( θ ∣ D ) = ∏ i = 1 N p ( x i ∣ θ p ( θ ) ∫ θ ( ∏ i = 1 N p ( x i ∣ θ ) ) p ( θ ) d θ p(\theta|D)=\frac{\prod_{i=1}^{N}p(x_i|\theta p(\theta)}{\int_\theta (\prod_{i=1}^{N}p(x_i|\theta))p(\theta)d\theta} p(θ∣D)=∫θ(∏i=1Np(xi∣θ))p(θ)dθ∏i=1Np(xi∣θp(θ)
即求出模型参数
θ
\theta
θ的概率分布。
当我们进行预测时候,即求
p
(
x
^
∣
D
)
p(\hat{x}|D)
p(x^∣D):
p ( x ^ ∣ D ) = ∫ θ ∈ Θ p ( x ^ ∣ θ ) p ( θ ∣ D ) d θ p(\hat{x}|D)=\int_{\theta\in\Theta}p(\hat{x}|\theta)p(\theta|D)d\theta p(x^∣D)=∫θ∈Θp(x^∣θ)p(θ∣D)dθ
在使用贝叶斯估计方法对模型参数进行估计时,不仅考虑了似然函数的最大化,而且将数据的先验知识加入了计算,这样能够对模型的参数有一个更准确的估计。
最大后验概率估计
在贝叶斯估计中,我们需要求得模型参数的分布,利用此分布来对新的输入进行估计,但在实际应用过程中,贝叶斯估计的方法复杂度太高,因为我们需要求出模型参数的每一个可能的取值或者是表达式,再对其进行积分。这时候,我们可以将方法简化,不对关于 θ \theta θ的表达式求期望,而是跟最大似然估计类似,求取一个表达式的最大值时的 θ \theta θ值。虽然我们也将模型的参数视为符合一定分布的随机变量,但是这次我们只取随机分布上的一个点。根据贝叶斯公式:
p ( θ ∣ D ) = p ( D ∣ θ ) p ( θ ) p ( D ) p(\theta|D)=\frac{p(D|\theta)p(\theta)}{p(D)} p(θ∣D)=p(D)p(D∣θ)p(θ)
跟贝叶斯估计不同,这时候我们并不求出上式中 θ \theta θ的具体分布,我们仅仅求出使上式取值最大的 θ \theta θ的值,作为模型的估计参数。由于数据集已知并确定,所以分母p(D)确定,可以认为是常数,这时候我们只需要最大化分母 p ( D ∣ θ ) p ( θ ) p(D|\theta)p(\theta) p(D∣θ)p(θ)即可。
a r g m a x θ p ( D ∣ θ ) p ( θ ) arg \underset{\theta}{max}\ p(D|\theta)p(\theta) argθmax p(D∣θ)p(θ)
可以看出,最大后验估计(MAP)跟最大似然估计(MLE)非常类似,只是在表达式中多出了一项 p ( θ ) p(\theta) p(θ),此项表示模型参数的先验分布。将模型参数的先验知识考虑进来时,求解的参数的值能够更为客观,模型的准确度会更高。
朴素贝叶斯模型(naive bayes)
朴素贝叶斯法是基于贝叶斯定理和特征条件独立假设的分类方法,是一种监督学习的生成式学习方法。对于给定的数据集,首先假设特征条件独立,学习输入输出的联合概率分布;然后对于给定的的输入,利用贝叶斯公式求得后验概率最大的输出y。
设输入空间 X ⊆ R n \mathcal{X}\subseteq\mathtt{R}^n X⊆Rn为n维向量的集合,输出空间标记为集合 Y = c 1 , c 2 , . . . , c k \mathcal{Y}={c_1, c_2, ..., c_k} Y=c1,c2,...,ck。输入特征向量 x ∈ X x\in\mathcal{X} x∈X,输出类标记(class label) y ∈ Y y\in\mathcal{Y} y∈Y。X是定义在输入空间 X \mathcal{X} X的随机变量,Y是定义在输出空间 Y \mathcal{Y} Y上的随机变量。P(X,Y)是X和Y的联合概率分布。训练数据集
T = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) T={(x_1, y_1),(x_2, y_2),...,(x_N, y_N)} T=(x1,y1),(x2,y2),...,(xN,yN)
由P(X, Y)独立同分布产生。
先验概率分布为: P ( Y = c k ) , k = 1 , 2 , . . . , K P(Y=c_k),\ k=1,2,...,K P(Y=ck), k=1,2,...,K
条件概率分布为: P ( X = x ∣ Y = c k ) = P ( X ( 1 ) = x ( 1 ) , . . . , X ( n ) = x ( n ) ∣ Y = c k ) , k = 1 , 2 , . . . , K P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},...,X^{(n)}=x^{(n)}|Y=c_k), \ k=1,2,...,K P(X=x∣Y=ck)=P(X(1)=x(1),...,X(n)=x(n)∣Y=ck), k=1,2,...,K
由以上两式,可以学习到联合概率分布P(X,Y)。但是在实际应用中,求解上述两式是相当困难的。在朴素贝叶斯法中,假设条件概率分布是具有条件独立的,所以
KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲ P(X=x|Y=c_k)&=…
在使用朴素贝叶斯模型进行分类时,我们通过学习到的模型对给定输入计算后验概率$P(Y=c_k|X=x)&,将后验概率最大的类作为x的类输出。
P ( Y = c k ∣ X = x ) = P ( X = x ∣ Y = c k ) P ( Y = c k ) ∑ k P ( X = x ∣ Y = c k ) P ( Y = c k ) P(Y=c_k|X=x)=\frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_kP(X=x|Y=c_k)P(Y=c_k)} P(Y=ck∣X=x)=∑kP(X=x∣Y=ck)P(Y=ck)P(X=x∣Y=ck)P(Y=ck)
由上式和上上式可得朴素贝叶斯分类的基本公式:
P ( Y = c k ∣ X = x ) = ∏ i = 1 n P ( X ( i ) = x ( i ) ∣ Y = c k ) P ( Y = c k ) ∑ k P ( Y = c k ) ∏ i = 1 n P ( X ( i ) = x ( i ) ∣ Y = c k ) , k = 1 , 2 , . . . , K P(Y=c_k|X=x)=\frac{\prod_{i=1}^nP(X^{(i)}=x^{(i)}|Y=c_k)P(Y=c_k)}{\sum_kP(Y=c_k)\prod_{i=1}^nP(X^{(i)}=x^{(i)}|Y=c_k)},k=1,2,...,K P(Y=ck∣X=x)=∑kP(Y=ck)∏i=1nP(X(i)=x(i)∣Y=ck)∏i=1nP(X(i)=x(i)∣Y=ck)P(Y=ck),k=1,2,...,K
最大化后验概率,贝叶斯分类器可以这样表示:
y = f ( x ) = a r g m a x c k P ( Y = c k ) ∏ i = 1 n P ( X ( i ) = x ( i ) ∣ Y = c k ) ∑ k P ( Y = c k ) ∏ i = 1 n P ( X ( i ) = x ( i ) ∣ Y = c k ) y=f(x)=arg\underset{c_k}{max}\frac{P(Y=c_k)\prod_{i=1}^nP(X^{(i)}=x^{(i)}|Y=c_k)}{\sum_kP(Y=c_k)\prod_{i=1}^nP(X^{(i)}=x^{(i)}|Y=c_k)} y=f(x)=argckmax∑kP(Y=ck)∏i=1nP(X(i)=x(i)∣Y=ck)P(Y=ck)∏i=1nP(X(i)=x(i)∣Y=ck)
由于分母对于 c k c_k ck是常数,所以上式可以简化为:
y = f ( x ) = a r g m a x c k P ( Y = c k ) ∏ i = 1 n P ( X ( i ) = x ( i ) ∣ Y = c k ) y=f(x)=arg\underset{c_k}{max}P(Y=c_k)\prod_{i=1}^nP(X^{(i)}=x^{(i)}|Y=c_k) y=f(x)=argckmaxP(Y=ck)i=1∏nP(X(i)=x(i)∣Y=ck)
上式由两部分组成: P ( Y = c k ) P(Y=c_k) P(Y=ck)和 ∏ ( i = 1 ) n P ( X ( i ) = x ( i ) ∣ Y = c k ) \prod_{(i=1)^nP(X^{(i)}=x^{(i)}|Y=c_k)} ∏(i=1)nP(X(i)=x(i)∣Y=ck),我们可以用不同的方法去估计这两个数值,比如极大似然估计和贝叶斯估计。
极大似然估计
P ( Y = c k ) = ∑ i = 1 N I ( y i = c k ) N , k = 1 , 2 , . . . , K P(Y=c_k)=\frac{\sum_{i=1}^NI(y_i=c_k)}{N},\ k=1,2,...,K P(Y=ck)=N∑i=1NI(yi=ck), k=1,2,...,K
设第j个特征 x ( j ) 可 能 取 值 的 集 合 为 x^{(j)}可能取值的集合为 x(j)可能取值的集合为{a_{j1},a_{j2},…,a_{jS_j}}则:
P ( X ( j ) = a j l ∣ Y = c k ) = ∑ i = 1 N I ( X ( j ) = a j l , y i = c k ) ∑ i = 0 N I ( y i = c k ) P(X^{(j)}=a_{jl}|Y=c_k)=\frac{\sum_{i=1}^NI(X^{(j)}=a_{jl},y_i=c_k)}{\sum_{i=0}^NI(y^i=c_k)} P(X(j)=ajl∣Y=ck)=∑i=0NI(yi=ck)∑i=1NI(X(j)=ajl,yi=ck)
i = 1 , 2 , . . . , N ; l = 1 , 2 , . . . , S j ; k = 1 , 2 , . . . , K i=1,2,...,N;\ l=1,2,...,S_j;\ k=1,2,...,K i=1,2,...,N; l=1,2,...,Sj; k=1,2,...,K