我在 Mysql 表中有大量文本。我想使用 NLTK 工具包对我的文本进行一些统计分析,然后再进行一些 NLP。 我有两个选择:
- 一次从我的数据库表中提取所有文本(如果需要,可能将它们放入一个文件中)并使用 NLTK 函数
- 提取文本并将其转换为可与 NLTK 一起使用的“语料库”。
后者看起来相当复杂,我还没有找到任何实际描述如何使用它的文章我只找到了这个:Creating a MongoDB backed corpus reader它使用MongoDB作为其数据库,代码相当复杂,还需要了解MongoDB。另一方面,前者看起来非常简单,但会导致从数据库中提取文本的开销。
现在的问题是,NLTK中语料库的优势是什么?换句话说,如果我接受挑战并深入研究覆盖 NTLK 方法以便它可以从 MySQL 数据库中读取,是否值得这么麻烦?将我的文本转换为语料库会给我一些我不能(或很难)用普通 NLTK 函数做的事情吗?
此外,如果您知道有关将 MySQL 连接到 NLTK 的一些信息,请告诉我。 谢谢
最佳答案
好吧,看了很多书后我找到了答案。
有几个非常有用的函数,例如搭配、搜索、common_context、similar,可用于在 NLTK 中保存为语料库的文本。自己实现它们需要相当长的时间。如果从数据库中选择我的文本并放入一个文件并使用 nltk.Text
函数,那么我可以使用我之前提到的所有函数,而无需编写那么多行代码甚至覆盖方法,以便我可以连接到 MySql。这里是更多信息的链接:nltk.Text
关于python - 在 NLTK 中创建自己的语料库的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5002913/