首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby文本分析

Ruby文本分析
EN

Stack Overflow用户
提问于 2011-09-30 05:16:03
回答 3查看 5K关注 0票数 12

有没有什么Ruby gem或者其他的文本分析工具?词频、模式检测等(最好理解法语)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-30 06:03:35

词频的泛化是语言模型,例如一元词(=单词率)、双词法(=词对的频率)、三元词(=世界三元组的频率)、……,通常是:n-gram

你应该寻找一个现有的语言模型工具包--在这里重新发明轮子不是一个好主意。

有一些标准工具包可用,例如,来自CMU Sphinx团队,以及HTK。

这些工具包通常是用C语言编写的(为了提高速度!!因为您必须处理大量语料库)并生成标准输出格式的ARPA n-gram文件(这些文件通常是文本格式)

请查看以下帖子,其中包含更多详细信息和链接:

Building openears compatible language model

一旦你用这些工具包中的一个生成了你的语言模型,你将需要一个Ruby Gem使语言模型可以在Ruby中访问,或者你需要将ARPA格式转换成你自己的格式。

ADI92的文章列出了更多的Ruby NLP资源。

你也可以在谷歌上搜索"ARPA语言模型“以获取更多信息

最后,重要的是检查Google's online N-gram tool。他们基于他们数字化的书籍建立了n-grams -也有法语和其他语言的版本!

票数 9
EN

Stack Overflow用户

发布于 2011-09-30 05:31:47

The Mendicant Bug: NLP Resources for Ruby包含许多有用的Ruby NLP链接。

我很久以前就尝试过使用Ruby Linguistics的东西,记得在使用它时遇到了很多问题……我不建议你一头扎进去。

如果你的大多数文本分析都涉及到计算ngram和朴素贝叶斯之类的东西,我建议你自己去做。Ruby有非常好的基本库和对正则表达式的强大支持,所以这应该不是那么棘手,而且您可以更容易地使内容适应您正在尝试解决的问题的特性。

像Stanford解析器gem一样,可以使用Java库在Ruby中解决您的问题,但这可能很棘手,因此可能不是解决问题的最佳方法。

票数 4
EN

Stack Overflow用户

发布于 2014-10-28 03:08:53

出于这个原因,我编写了gem words_counted。你可以在rubywordcount.com上看到一个演示。它有很多你提到的分析功能,还有更多。该API有很好的文档记录,可以在Github上的自述文件中找到。

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

https://stackoverflow.com/questions/7603483

复制
相关文章

相似问题

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