美文网首页
朴素贝叶斯分类

朴素贝叶斯分类

作者: Ylm007 | 来源:发表于2017-12-25 17:42 被阅读0次

目标:求
P(y=1|x)
P(y=-1|x)

根据贝叶斯公式:P(x|y)P(y)=P(y|x)
目标即:
P(y|x)=P(x|y)P(y)/P(x)
即:
P(y=1|x)=P(x|y=1)P(y=1)/P(x)
P(y=-1|x)=P(x|y=-1)P(y=-1)/P(x)
思路:从结果出发,即求P(y)的分布和先验概率P(x|y)分布,通过统计先验可得。

# 朴素贝叶斯算法
# 原理 P(A|B)=P(B|A)*P(A)/P(B)

import numpy as np

# 创建一个array ,每个样本有两个特征,第三个数据为类别,类别有两个1和-1,共6组数据
a = np.array([(1, 1, 1), (1, 2, 1), (1, 3, 1), (2, 1, 1), (2, 2, 1), (2, 3, -1), (3, 1, 1), (3, 2, -1), (3, 3, -1)]);

# 求P(A)
a1 = 0;
a0 = 0;
for ai in a:
    if ai[1] == 1:
        a1 += 1;
    else:
        a0 += 1;

pa1 = a1;
pa0 = a0;
print(pa1, pa0)

# 求解P(B|A)=P(B1|A)*P(B2|A)*P(B3|A)

# 第一维度分类,第二维度,区分特征,第三维度区分特征值
pBA = np.zeros(12).reshape((2, 2, 3));

for ai in a:
    if ai[2] == 1:
        pBA[1][0][ai[0] - 1] += 1;
        pBA[1][1][ai[1] - 1] += 1;
    else:
        pBA[0][0][ai[0] - 1] += 1;
        pBA[0][1][ai[1] - 1] += 1;

print(pBA)

print("--------------end------------------")


# 原理 P(A|B)=P(B|A)*P(A)/P(B)  ==>  P(A|B)=P(B|A)*P(A)  ==> P(B1|A)*P(B2|A)*P(B3|A)*P(A)

def classify(x, y):
    y1 = pBA[1][0][x - 1] * pBA[1][1][y - 1] * pa1;
    y0 = pBA[0][0][x - 1] * pBA[1][1][y - 1] * pa0;
    print(y1, y0);
    if y1 > y0:
        return 1;
    else:
        return -1;

# test
print(classify(3, 2))
不如

相关文章

  • 朴素贝叶斯法

    朴素贝叶斯法 朴素贝叶斯法的学习与分类 朴素贝叶斯法的参数估计 朴素贝叶斯实现 高斯朴素贝叶斯实现 使用 skle...

  • 轻松带你搞懂朴素贝叶斯分类算法

    贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。而朴素朴素贝叶斯分类是贝叶斯分类...

  • 机器学习算法朴素贝叶斯分类

    贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。而朴素朴素贝叶斯分类是贝叶斯分类...

  • 监督学习之概率模型

    贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。而朴素朴素贝叶斯分类是贝叶斯分类...

  • 朴素贝叶斯

    朴素贝叶斯 用处:朴素贝叶斯主要解决的是而分类的问题。 为什么叫朴素贝叶斯: 因为贝叶斯分类只做最原始,最简单的假...

  • 朴素贝叶斯法(NaiveBayes)

    朴素贝叶斯法(Naive Bayes) 朴素贝叶斯法是基于贝叶斯定力和特征条件独立假设的分类方法。 朴素贝叶斯法实...

  • 朴素贝叶斯(Naive Bayes)

    朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这...

  • 机器学习(九)——概率图模型之朴素贝叶斯

    朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴素,朴素贝叶斯的思想基础是这...

  • 朴素贝叶斯分类

    朴素贝叶斯分类的原理与流程 朴素贝叶斯分类是一种十分简单的分类算法,叫它朴素贝叶斯分类是因为这种方法的思想真的很朴...

  • 2019-04-25

    朴素贝叶斯:分类算法。

网友评论

      本文标题:朴素贝叶斯分类

      本文链接:https://www.haomeiwen.com/subject/lktrgxtx.html