python - 在 NLTK 中创建自己的语料库的优势

标签 python mysql database nltk

我在 Mysql 表中有大量文本。我想使用 NLTK 工具包对我的文本进行一些统计分析,然后再进行一些 NLP。 我有两个选择:

  1. 一次从我的数据库表中提取所有文本(如果需要,可能将它们放入一个文件中)并使用 NLTK 函数
  2. 提取文本并将其转换为可与 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/

相关文章:

python - '~' 在 python 中是什么意思?

python - PyYaml 合并两个 yaml 文件

python - 使用 python/pandas 将任意多列转换为键值对

MySQL - 带连接的 GROUP_CONCAT

mysql - 在 Windows 上重置 root mysql

python - 使用 pexpect 时关闭 ssh 连接的正确方法?

php - 使用 AdoDB 向数据库中插入数据

mysql - 规范数据库 MySQL

mysql - 使用 Laravel 存储具有多个选择框的数组值

database - 什么对服务器更费力?数据库的数量还是数据量?