自编程实现朴素贝叶斯算法,Navie Bayes程序(python),并对鸢尾花数据进行分类。
朴素贝叶斯
贝叶斯公式:
P ( y j ∣ X ) = P ( X ∣ y j ) P ( y j ) P ( X ) P(y_j|X)=\frac{P(X|y_j)P(y_j)}{P(X)} P(yj∣X)=P(X)P(X∣yj)P(yj)
由于 p ( X ) p(X) p(X)对于所有类为常数,故只需要最大化 P ( X ∣ y j ) P ( y j ) P(X|y_j)P(y_j) P(X∣yj)P(yj)
朴素贝叶斯即是在贝叶斯的基础上假设类条件独立,则有:
p ( X ∣ y j ) = ∏ i = 1 d P ( x i ∣ y j ) p(X|y_j)=\prod_{i=1}^dP(x_i|y_j) p(X∣yj)=i=1∏dP(xi∣yj)
每个类的先验概率 P ( y j ) = n j / n P(y_j)=n_j/n P(yj)=n