虚假交易的识别---Naive Bayes(朴素贝叶斯)


Naive Bayes 是建立在贝叶斯理论基础上的分类器,它依赖于较强的假设:各个预测变量相互独立。实际上,很多问题并不满足这一假设—这也是称为“朴素贝叶斯”的原因所在,同一类别的观测的各个预测变量具有一定的联系,并非完全独立。尽管如此,这种方法有许多成功的应用。

贝叶斯公式是\(P(A\|B)=\frac{P(B\|A)P(A)}{P(B)}\)。利用贝叶斯公式,在给定待判观测下,朴素贝叶斯分类器按照如下公式计算观测属于某一类别的概率:

\[P(c\|X_{1},\ldots,X_{p})=\frac{P(c)P(X_{1},\ldots,X_{p}\|c)}{P(X_{1},\ldots,X_{p})}\]

其中,c代表类别,\(X_{1},\ldots,X_{p}\)是待判观测的预测值。对于待判观测,计算属于各个类别的概率,比较这些概率,然后寻找最优可能的类别。由于给定观测下,\(P(X_{1},\ldots,X_{p})\)为定值,所以只需要比较分子\(P(c)P(X_{1},\ldots,X_{p}\|c)\)的大小就可以得出判断。在各个预测变量独立的假设下,分子进一步可以写为:

\[P(X_{1},\ldots,X_{p}\|c)=P(c)\Prod^{p}_{i=1}P(X_{i}\|c)\]
$$P(c),P(X_{i} c)$$可以通过给定的数据样本估计得到。

维基百科有很具体的算例,有助于理解上述算法。

数据不平衡问题

在虚假交易这个案例中,绝大多数交易记录都是正常的,只有少部分是虚假交易记录,也就是说数据是不平衡的,由此会给估计带来问题。正常交易记录大约占90%,而虚假交易记录只占10%,因此,即使是一个虚假记录,我们判定它为正常交易记录的置信区间是90%,这会掩盖我们对虚假交易记录的判断。另一方面,一些分类器会忽视“小团体”观测,也就是说在构建分类器时,它们没有发挥作用。如果我们最后关注的是“小团体”类别的判断,那么以上情境下会给我们带来很大的麻烦,导致判断失灵。

目前已经发展了一些技术可以解决数据不平衡问题。一种方法是修改算法,让它变得对“小团体”观测敏感起来,构建的分类器包含了“小团体”的判断机制;另一种方法是修改样本,既然存在着数据不平衡,那么就让“小团体”变大一些,让“大团体”变小一些。下面叙述第二种方法。


上篇: R笔记 下篇: Latex不同宽度的分栏设置