首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解算法-多项式朴素贝叶斯

理解算法-多项式朴素贝叶斯
EN

Stack Overflow用户
提问于 2016-04-25 08:09:27
回答 1查看 636关注 0票数 0

我被介绍了朴素贝叶斯分类方法(多项NB),参考迈克尔西普瑟在他的书“计算理论”中的描述。

我正在研究所描述的训练和应用多项式NB的算法,如下所示:

然而,当我解释算法的某些方面时,我会不知所措。例如,在第6行的TRAINMULTINOMIALNB(C,D)中:

  • CONCATENATE_TEXT_OF_ALL_DOCS_IN_CLASS(D,C)到底是做什么的?

到目前为止,我的理解如下。假设我们在课堂上有三个文件“电影”和“歌曲”:

代码语言:javascript
复制
MOVIES
    DOC1 = "big fish"
    DOC2 = "big lebowski"
    DOC3 = "mystic river"

SONGS
    DOC1 = "purple rain"
    DOC2 = "crying in the rain"
    DOC3 = "anaconda"    

在应用CONCATENATE_TEXT_OF_ALL_DOCS_IN_CLASS(D,C)之后,您会被留给,比如说字符串:

代码语言:javascript
复制
String concatenatedMovies = "big fish big lebowski mystic river" 
String concatenatedSongs = "purple rain crying in the rain anaconda" 

是这样的吗?任何帮助理解这一点都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-25 08:55:46

最后,您希望能够根据内容对一些文本进行分类。所以你想要能够说出它的歌曲或电影等等。

为了使用Bayes (或其他方法)实现这一点,您首先使用您的列车数据来构建模型。

首先,在第5行创建priors (类/总文档中的文档),然后计算conditional probabilities (给定类电影的单词鱼概率,给定类歌曲的单词下雨概率),第7-10行。您只需将该术语的出现除以类中的术语总数(加上一些平滑的-> +1)。这就是为什么你要串联--能够计算出一个类中出现的所有术语。

最后,在Bayes公式中插入这些值,并将一些unknonw文档分类为电影、歌曲、.更多维基

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36835094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档