美文网首页
贝叶斯分类算法——垃圾短信进行过滤实现

贝叶斯分类算法——垃圾短信进行过滤实现

作者: 大端DD | 来源:发表于2020-02-25 20:04 被阅读0次


    导入模块,定义编码格式,训练数据的占比。

    将词条转换成向量

    一开始doc_vect是一个全为0的一个列表形式的向量,vocabulary是一个词汇表(里面有所有不重复的词),用word去 遍历循环文档中的所有词汇,然后判断文档中的词汇在词汇表中有没有,有则将0改成1,这里doc_vest向量发生变化。

    解析文件中的数据

    读取数据,生成一个词库vocabulary里面的词都是不重复的,一个文档中所有的单词(重复),词的类别classes。

    解释函数NaiveBayesClassifier()

    导入模块,定义训练模型。图1是函数defaultdict的解释,defaultdict相当于统计不同类别的下的属性个数

    图1

    关于参数lambda的解释图2

    计算

    cls_probs:ham和spam这个类型的概率,就是说所有邮件中出现垃圾邮件和非垃圾邮件的两种概率

    cond_prob_vect:就是一个词出现的概率,在文档中。

    cond_probs:一个词出现在ham的概率和出现在spam的概率。

    定义主函数

    相关文章

      网友评论

          本文标题:贝叶斯分类算法——垃圾短信进行过滤实现

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