2

我有一个巨大的论坛数据数据库。我需要从数据库中提取语料库用于 NLP 目的。提取步骤具有参数(例如 FTS 查询),我想将带有参数元数据的语料库保存在文件系统上。

一些语料库将有几十兆字节。用元数据保存文件的最佳方法是什么,这样我就可以在不加载整个文件的情况下读取元数据。

我正在使用以下可能相关的技术:PyQt、Postgres、Python、NLTK。

一些注意事项:

  1. 我希望语料库脱离重量级数据库。
  2. 我不想使用 sqlite,因为元数据的结构非常简单。
  3. 据我所知,酸洗不允许部分反序列化。
  4. 我不希望有单独的元数据文件。
  5. 我有协议缓冲区的经验,但又似乎过于沉重。

我想我可以将元数据腌制为字符串,并让文件的第一行代表元数据。这似乎是我认为最简单的方法。也就是说,如果泡菜格式是 ASCII 安全的。

4

2 回答 2

2

在 NLTK 的术语中,“语料库”是整个集合,可以包含多个文件。听起来您可以将每个论坛会话(称之为“语料库”)存储到一个单独的文件中,使用允许您在文件开头存储元数据的结构化格式。

NLTK 通常为此目的使用 XML,但不难推出您自己的语料库阅读器,该阅读器读取文件头,然后遵循PlainTextCorpusReader. 或任何最适合您的文件格式的标准阅读器。如果您使用 XML,您还必须扩展XMLCorpusReader和提供方法sents()words()等等。

于 2012-08-06T18:55:21.890 回答
0

为什么不在您的语料库文件中添加 JSON 标头?或者任何其他类型的结构化格式......我现在可以想到 Jekyll 帖子中的YAML 前端问题

于 2012-08-05T15:36:33.610 回答