nltk 是否有一些用于写出标记化文本的序列化格式?我有一个 175mb 的文本文件,将它放入nltk.Text
对象需要 4 分钟(在 macbook 视网膜上 - 即最先进的处理器、8 gigs 的内存和 SSD)。从磁盘加载原始文件几乎是瞬间的。
完成这项工作的功能如下:
def _load_all_text(self):
if not self._text_loaded:
file = open("all_posts","r")
self._text = file.read()
self._text_loaded = True
def nltk_text(self):
self._load_all_text()
return nltk.Text(nltk.word_tokenize(self._text))
我不敢相信它需要 4 分钟才能完成,我猜这是因为 nltk 建立在 Python 垃圾收集器和列表对象之上。我对酸洗了解不多,酸洗列表会起作用吗(即,有问题的列表是 的结果word_tokenise
)?