Я пытаюсь построить модель фраз над большим корпусом, но я продолжаю спотыкаться об ошибке памяти. Сначала я попытался поместить весь свой корпус в большой генератор. Затем я попытался сохранить модель между каждым документом:Слияние двух моделей фраз Gensim
import codecs
import gensim
import os
import random
import string
import sys
def gencorp(file_path):
with codecs.open(file_path, 'rb',encoding="utf8") as doc :
for sentence in doc:
yield sentence.split()
out_corpus_dir = "C:/Users/Administrator/Desktop/word2vec/1billionwords_corpus_preprocessed/"
file_nb = 0
bi_detector = gensim.models.Phrases()
for file in os.listdir(out_corpus_dir):
file_nb += 1
file_path = out_corpus_dir+file
bi_detector.add_vocab(gencorp(file_path))
bi_detector.save("generic_EN_bigrams_v%i"%(file_nb/10))
bi_detector = gensim.models.Phrases.load("generic_EN_bigrams_v%i"%(file_nb/10))
bi_detector.save("generic_EN_bigrams")
Но ни одно из этих решений работы. Однако generic_EN_bigrams_v0 генерируется и сохраняется. Так что мне интересно, смогу ли я обучать модели фраз для каждого документа, а затем найти способ их слияния.
Спасибо Вам за любую проницательность :)