class NaiveBayesClassifier def __init__self selfvocabulary = set # 词汇表 selfclass_total = defaultdictint # 每个类别的文档数 selfword_total = defaultdictint # 每个类别中所有单词出现次数之和 s
词汇表
每个类别的文档数
每个类别中所有单词出现次数之和
每个类别中每个单词出现次数
defaultdict是一个特殊的字典,它在初始化时可以指定默认值类型,如果字典中不存在某个键,则返回默认值而不是抛出KeyError异常。在这个实现中,我们使用了三个defaultdict,用于存储不同的统计信息。
vocabulary是一个集合,用于存储所有出现过的单词,它的作用是去重,避免重复统计单词。
class_total是一个字典,用于存储每个类别中文档的数量。在训练过程中,我们会统计每个文档所属的类别,并将该类别的文档数加1。
word_total是一个字典,用于存储每个类别中所有单词出现次数之和。在训练过程中,我们会统计每个单词在某个类别中出现的次数,并将该类别的word_total加上该单词的出现次数。
word_given_class是一个嵌套字典,用于存储每个类别中每个单词出现的次数。在训练过程中,我们会统计每个单词在每个类别中出现的次数,并将该次数存储在word_given_class[class][word]中,其中class表示类别,word表示单词
原文地址: https://www.cveoy.top/t/topic/hhwP 著作权归作者所有。请勿转载和采集!