在贝叶斯分类器中,构造分类器需要知道类概率密度函数p(x∣ωi)
如果按先验知识已知其分布,则只需知道分布的参数即可
例如:类概率密度是正态分布,它完全由其均值向量和协方差矩阵所确定
对均值向量和协方差矩阵的估计即为贝叶斯分类器中的一种参数估计问题
参数估计的两种方式
一种是将参数作为非随机变量来处理,例如矩估计就是一种非随机参数的估计
另一种是随机参数的估计,即把这些参数看成是随机变量,例如贝叶斯参数估计
2.3.1 定义
均值
设模式的概率密度函数为p(x),则均值的定义为:
m=E(x)=∫xxp(x)dx 其中,x=(x1,x2,…,xn)T,m=(m1,m2,…,mn)T
由大数定律有,均值的估计量为:
m^=N1j=1∑Nxj 协方差
协方差矩阵为:
C=c11c21⋮cn1c12c22⋮cn2⋯⋯⋱⋯c1nc2n⋮cnn 其中,每个元素的定义为:
cij=E{(xi−mi)(xj−mj)}=∫−∞∞∫−∞∞(xi−mi)(xj−mj)p(xi,xj)dxidxj 其中,xi、xj和mi、mj分别为x、m的第i和j个分量。
将协方差矩阵写成向量的方式为:
C=E{(x−m)(x−m)T}=E{xxT}−mmT 则根据大数定律,协方差的估计量可以写为:
C^≈N1k=1∑N(xk−m^)(xk−m^)T 2.3.2 迭代运算
均值
假设已经计算了N个样本的均值估计量,此时若新增一个样本,则新的估计量为:
m^(N+1)=N+11j=1∑N+1xj=N+11[j=1∑Nxj+xN+1]=N+11[Nm^(N)+xN+1] 迭代的初始化取m^(1)=x1
协方差
协方差与均值类似,当前已知
C^(N)=N1j=1∑NxjxjT−m^(N)m^T(N) 则新加入一个样本后:
C^(N+1)=N+11j=1∑N+1xjxjT−m^(N+1)m^T(N+1)=N+11[j=1∑NxjxjT+xN+1xN+1T]−m^(N+1)m^T(N+1)=N+11[NC^(N)+Nm^(N)m^T(N)+xN+1xN+1T]− (N+1)21[Nm^(N)+xN+1][Nm^(N)+xN+1]T 由于m^(1)=x1,因此有C^(1)=0
2.3.4 贝叶斯学习
将概率密度函数的参数估计量看成是随机变量θ,它可以是纯量、向量或矩阵
按这些估计量统计特性的先验知识,可以先粗略地预选出它们的密度函数
通过训练模式样本集{xi},利用贝叶斯公式设计一个迭代运算过程求出参数的后验概率密度p(θ∣xi)
当后验概率密度函数中的随机变量θ的确定性提高时,可获得较准确的估计量
具体而言,就是:
p(θ∣x1,⋯,xN)=p(xN∣x1,⋯,xN−1)p(xN∣θ,x1,⋯,xN−1)p(θ∣x1,⋯,xN−1) 其中,先验概率p(θ∣x1,⋯,xN−1)由迭代计算而来,而全概率则由以下方式计算:
p(xN∣x1,⋯,xN−1)=∫xp(xN∣θ,x1,⋯,xN−1)p(θ∣x1,⋯,xN−1)dθ 因此,实际上需要知道的就是初始的p(θ)
单变量正态密度的均值学习