语言自走炮 2019-05-19 09:29 采纳率: 0%
浏览 1389
已结题

如何解决训练词向量word2vec时出现的内存问题?

用13GB的语料进行词向量的训练的话,用16GB的电脑,怎样防止内存溢出

最近在学习自己训练词向量,整理了13GB的小说语料,
昨晚设置好从分词做到词向量训练,结果今天早上看了一下内存溢出。
仅仅只完成了130M的分词,连词向量的训练都没开始就宕机了。
下图为执行代码 分词工具使用的是北大的pkuseg

请问应该如何修改代码?
这是我第一次做实战性质的项目 完全没有经验
还请各位前辈帮忙修改代码

#文本预处理
sentences = []
rules = u"[\u4e00-\u9fa5]+"
pattern = re.compile(rules)
f_writer = open("data/分词后的1s1lCN13G.txt", "w", encoding="utf-8")

with open("data/1s1lCN13G.txt", "r" , encoding="utf-8") as f_reader:
    for line in f_reader:
        if line == "" or line is None:
            continue
        line = " ".join(seg.cut(line))
        seg_list = pattern.findall(line)
        word_list = []
        for word in seg_list:
            if word not in stop_words:
                word_list.append(word)
        if len(word_list) > 0:
            sentences.append(word_list)
            line = " ".join(word_list)
            f_writer.write(line + "\n")
            f_writer.flush()
f_writer.close()
#模型训练
model = word2vec.Word2Vec(sentences,sg=1,hs=1,window=10,min_count=20,iter=10,size=256,workers=16)
model.save("data/13G")
  • 写回答

2条回答 默认 最新

  • threenewbee 2019-05-19 09:43
    关注
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!