Python gensim库使用word2vec 加载和保存模型

1. 训练模型

读取训练数据并使用jieba分词,可以准备自己想要训练的语料,

import os

import jieba
# 读取训练数据
pos_file_list = os.listdir('data/pos')
neg_file_list = os.listdir('data/neg')
pos_file_list = [f'data/pos/{x}' for x in pos_file_list]
neg_file_list = [f'data/neg/{x}' for x in neg_file_list]
pos_neg_file_list = pos_file_list + neg_file_list
# 分词
for file in pos_neg_file_list:
    with open(file, 'r', encoding='utf-8') as f:
        text = f.read().strip()  # 去读文件,并去除空格
        text_cut = jieba.cut(text)  # 使用jieba进行分词
        
        result = ' '.join(text_cut)  # 把分词结果用空格组成字符串
        
        with open('test.txt', 'a', encoding='utf-8') as fw:
            fw.write(result)  # 把分好的词写入到新的文件里面
            pass
        pass
    pass

准备好分词后的文件,在一般的NLP处理中,会需要去停用词。由于word2vec的算法依赖于上下文文,而上下文有可能就是停用词。因此对于word2vec,我们可以不用去停用词

现在我们可以直接读分词后的文件到内存。这里使用了word2vec提供的LineSentence类来读文件,然后套用word2vec的模型

读取分好的词,进行训练

from gensim.models import word2vec
sentences = word2vec.LineSentence('test.txt')
model = word2vec.Word2Vec(sentences, hs=1, min_count=1, window=3, size=100)

2. 加载和保存模型

gensim生成的模型有三种:
第一种是 默认的model文件(可以继续 进行tuning)
第二种是bin文件(c风格)
第三种是 txt文件(比较大)
from gensim.models import Word2Vec

# 第一种
model = Word2Vec.load(word2vec.model) 
model.save('word2vec.model')
# 第二种
model = gensim.models.KeyedVectors.load_word2vec_format('word2vec.bin',binary=True)
model.wv.save_word2vec_format('word2vec.bin')
# 第三种
gensim.models.KeyedVectors.load_word2vec_format('word2vec.txt',binary=False)
model.wv.save_word2vec_format('word2vec.txt')



3.使用

  • 找出某一个词向量最相近的词集合
  • 查看两个词的相近程度
  • 找出不同类的词
  • 查看某个词的向量

参考连接:

使用 gensim 训练词向量_a857553315的博客-CSDN博客

gensim库word2vec使用 - hziwei - 博客园

python实现gensim.word2vec模型训练实例_WxyangID的博客-CSDN博客_python word2vec 模型
 

Python gensim库使用word2vec 加载和保存模型、在预训练基础上训练自己的预料_sinat_28375239的博客-CSDN博客

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小金子的夏天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值