使用 ipython 2.7 和非 Ascii 字符的语料库。
清理过程似乎很好,但是一旦我使用 Wordnet 或 Porter 对语料库进行词形还原,文件的大小就会成倍增加。请看下面的代码
from nltk.corpus import stopwords
tokenized_docs_no_stopwords = []
for doc in tokenized_docs_no_punctuation:
new_term_vector = []
for word in doc:
if not word in stopwords.words('english'):
new_term_vector.append(word)
tokenized_docs_no_stopwords.append(new_term_vector)
和例行公事
from nltk.stem.porter import PorterStemmer
from nltk.stem.wordnet import WordNetLemmatizer
porter = PorterStemmer()
wordnet = WordNetLemmatizer()
preprocessed_docs = []
for doc in tokenized_docs_no_stopwords:
final_doc = []
for word in doc:
final_doc.append(porter.stem(word))
#final_doc.append(snowball.stem(word))
#final_doc.append(wordnet.lemmatize(word))
preprocessed_docs.append(final_doc)
似乎使语料库大了 10 倍。去除停用词和词法提取的目标不应该减少语料库的大小吗?
我尝试过调整缩进,但我觉得可能有一个比“追加”例程更有效的循环,但我更关心内存的指数增长。
我正在研究这里的例子
http://stanford.edu/~rjweiss/public_html/IRiSS2013/text2 任何帮助或指导将不胜感激