2011-02-15 52 views
6

我在Mysql表格中有大量的文本。我想使用NLTK工具包进行一些统计分析,然后再对我的文本做一些NLP。 我有两个选择:在NLTK中创建自己的语料库的优势

  1. 从我的数据库表(也许他们将在必要时文件)的一次提取所有的文本,并使用NLTK功能
  2. 提取文本,并把它变成一个“语料库“可以与NLTK一起使用。

后者似乎相当复杂,我还没有发现,实际上描述了如何使用它,我只发现这个任何文章:Creating a MongoDB backed corpus reader它使用的MongoDB作为其数据库和代码很复杂,还需要知道的MongoDB。另一方面,前者似乎非常简单,但会导致从DB中提取文本的开销。

现在的问题是,NLTK中语料库的优势是什么?换句话说,如果我接受挑战并深入研究覆盖NTLK方法,以便它可以从MySQL数据库中读取数据,那么值得一提吗?将我的文本转换为语料库是否能够为我提供一些我不能(或者很难处理)普通NLTK函数的事情?

此外,如果你知道关于连接MySQL到NLTK的事情,请让我知道。 谢谢

回答

3

在阅读了很多后,我发现答案。 有几个非常有用的功能,如搭配,搜索,common_context,类似的可以用于在NLTK中保存为语料库的文本。自己实施它们需要相当长的时间。如果从数据库中选择我的文本并放入文件并使用nltk.Text函数,那么我可以使用前面提到的所有函数,而无需编写如此多的代码行,甚至覆盖方法,以便我可以连接到MySql。这里是链接更多信息: nltk.Text

+3

我是MongoDB文章的作者,但我认为你做出了最好的决定。当文本位于数据库中时,使用纯文本文件可能会遇到很多困难。我把这篇文章写成了可能的例子,但这并不总是一个好主意。 – Jacob 2011-02-15 21:22:46

相关问题