假设有N种可能的类别标记,即$y=\{c_{1},c_{2}...c_{N}\}$,$\lambda_{ij}$是将一个真实标记为$c_{j}$的样本误分类为$c_{i}$所产生的损失,指望损失为:ide
$R(c_{i}|x)=\sum_{j=1}^{N}\lambda_{ij}p(c_{j}|x)$函数
咱们是但愿找到一个断定准则 h ,一最小化整体风险:优化
$R(h)=E_{x}[R(h(x)|x)]$lambda
显然只要每个样本都选择那个能使条件风险$R(c|x)$最小类别标记,即im
$h^{*}(x)=\underset{c \in y}{arg \ min}R(c|x)$数据
若是目标是最小化分类错误率,则误判损失$\lambda_{ij}$可写成:集合
$\lambda_{ij}=\left\{\begin{matrix}0,if\ i = j\\ 1,otherwise\end{matrix}\right.$错误
此时的风险为:参数
$R(c|x)=1-P(c|x)$
最小化分类错误率的贝叶斯最优化分类器:
$h^{*}(x)=\underset{c \in y}{arg \ max}P(c|x)$
因此要求后验几率:
$P(c|x)=\frac{P(x,c)}{P(x)}$
$=\frac{P(c)P(x|c)}{P(x)}$
其中,$P(c)$是类的先验几率,$P(x|c)$是样本x相对于类标记c的类条件几率,$P(x)$是归一化的证据因子,给定样本x,证据因子与类别标记无关,所以估计$P(c|x)$的问题转化为如何基于训练数据D来估计先验$P(x)$和似然$P(x|c)$
对于$P(x)$,根据大数定律,当数据集包含充足的独立同分布样本时,可经过各种样本出现的频率来估计。
对于$P(x|c)$,它因为涉及关于x的全部属性的联合几率,直接根据样本出现的频率来估计将会遇到严重的困难,例如假设样本的d个属性都是二值的,则样本空间都有$2^{d}$种可能的取值,在现实应用中,这个值每每远大于训练样本数m,也就是说有不少取值在训练集中根本就没有出现过,“未观测到”和“出现几率为0”是不一样的。
极大似然估计:
假定$P(x|c)$具备某种肯定的几率分布形式,再基于训练样本对几率分布的参数进行估计。假设$P(x|c)$具备肯定的形式而且被参数向量$\theta_{c}$惟一肯定,则咱们的任务是利用训练集D估计参数$\theta_{c}$,记$P(x|c)$为$P(x|\theta_{c})$(要已知整体分布,是n个属性的联合几率分布,计算量大,难以从有限的样本中得出)
令$D_{c}$表示训练集D中第c类样本组合的集合,假设这些样本是独立同分布的,则参数$\theta_{c}$对于数据集$D_{c}$的似然是(估计每个类别的参数,即类别的分布是不一样的):
$P(D_{c}|\theta_{c})=\prod_{x\in D_{c}}P(x|\theta_{c})$
在$\theta_{c}$全部的取值中,找到一个能使数据出现的可能性最大,即:
$LL(\theta_{c})=logP(D_{c}|\theta_{c})=\sum_{x\in D_{c}}logP(x|\theta_{c})$
极大似然估计$\widehat{\theta_{c}}$为:
$\widehat{\theta_{c}}=\underset{\theta_{c}}{arg \ max}LL(\theta_{c})$
假设几率密度函数$P(x|c) \sim N(\mu_{c},\sigma_{c}^{2})$,则:
$\widehat{\mu_{c}}=\frac{1}{|D_{c}|}\sum_{x\in D_{c}}x$
$\widehat{\sigma_{c}}^{2}=\frac{1}{|D_{c}|}\sum_{x\in D_{c}}(x-\widehat{\mu_{c}})(x-\widehat{\mu_{c}})^{T}$
朴素贝叶斯:
利用极大似然估计来估计后验几率的主要困难是$P(x|c)$是全部属性上的联合几率,难以从有限的样本中得出,全部朴素贝叶斯假设每个属性相互独立,则每个属性都有本身的几率分布:
$P(c|x)=\frac{P(c)P(x|c)}{P(x)}=\frac{P(c)}{P(x)}\prod_{i=1}^{d}p(x_{i}|c)$
其中$d$为属性数目,$x_{i}$为$x$在第$i$个属性上的取值。
即朴素贝叶斯表达式:
$h_{nb}(x)=\underset{c\in y}{arg\ max}P(c)\prod_{i=1}^{d}p(x_{i}|c)$
令$D_{c}$表示训练集$D$中第$c$类样本组成的集合。
$P(c)=\frac{|D_{c}|}{|D|}$
对于离散型属性,令$D_{c_{i}x_{i}}$表示$D_{c}$中在第$i$个属性上的取值为$x_{i}$的样本组成的集合:
$p(x_{i}|c)=\frac{|D_{c_{i}x_{i}}|}{|D_{c}|}$
对于连续型属性,假设$P(x_{i}|c) \sim N(\mu_{c,i},\sigma_{c,i}^{2})$,其中$\mu_{c,i}$和$\sigma_{c,i}^{2}$分别是第$c$类样本在第$i$个属性上取值的均值和方差,则:
$P(x_{i}|c)=\frac{1}{\sqrt{2\pi }\sigma_{c,i}}exp(-\frac{(x_{i}-\mu_{c,i})^{2}}{2\sigma_{c,i}^{2}})$
为避免因训练集样本不充分而致使几率值为0的状况(某一个属性的几率为0),所以加入拉普拉斯修正:
$\widehat{P}(c)=\frac{|D_{c}|+1}{|D|+N}$
$\widehat{P}(x_{i}|c)=\frac{|D_{c_{i}x_{i}}|+1}{|D_{c}|+N_{i}}$
其中$N$表示训练集$D$中可能的类别数,$N_{i}$表示第$i$个属性可能的取值数