数据分析之贝叶斯算法案例

Posted xuehaiwuya0000

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据分析之贝叶斯算法案例相关的知识,希望对你有一定的参考价值。

1.贝叶斯定理

       是一个经典的条件概率定理,其在机器学习中主要用来通过结果推算出原因产生的概率。P(A/B)*P(B)=P(B/A)*P(A)

2.字符串分类案例

#案例:随机输入一个字符串,判定其最可能属于哪个类别?
#若计算P(cat/str)=P(cat)*P(str/cat)/P(str)
#由于P(str)概率相同,因此公式可以简化为:P(cat/str)=P(cat)*P(str/cat)
cat1=["a","b","c","d","e","j"]
cat2=["a","d","o","h","e"]
cat3=["a","b","l","e","h","f"]
a="abcd"

def predict(str1):

    cat=[cat1,cat2,cat3]
    p=0:0,1:0,2:0
    p1=[len(cat1)/26,len(cat2)/26,len(cat3)/26]#26个字母中出现的概率


    for i in  str1:
        for j in range(len(cat)):
            if i in cat[j]:
                p[j]+=1/len(cat[j])*p1[j]   #在cat1中字符串产生的概率,
    return sorted(p.items(),key= lambda p:p[1],reverse=True )



if __name__ == __main__:
    print(predict(a)[0])

 

以上是关于数据分析之贝叶斯算法案例的主要内容,如果未能解决你的问题,请参考以下文章

数据挖掘十大经典算法之朴素贝叶斯

朴素贝叶斯及案例实现

朴素贝叶斯分类算法介绍及python代码实现案例

5.贝叶斯算法单词拼写错误案例

聚类算法简析:朴素贝叶斯算法的场景案例

数据分析与挖掘 - R语言:贝叶斯分类算法(案例二)