数据集:data/souhu下面的所有文件夹的所有txt文件

代码:

import os
import re
import sys
import jieba
import torch
from gensim.models import Word2Vec, word2vec
import numpy as np
import jieba.analyse
import matplotlib.pyplot as plt
from tqdm import tqdm
import pickleplt.rcParams['font.sans-serif'] = ['SimHei']#用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False#用来正常显示负号#固定随机数
np.random.seed(100)
torch.cuda.manual_seed(100)
sys.stdout.flush()
nFile = 200
root_path = "datasets/souhu"
class_list = os.listdir(root_path)
all_word_list = []
for c in class_list:class_path =root_path + "/" + cfile_list = os.listdir(class_path)for name in file_list:file_path = class_path+"/" +namewith open(file_path, "r", encoding='utf-8') as f:txt = f.read()txt = re.sub("[    \t\n]*", "", txt)word_list = jieba.analyse.textrank(txt, topK = None, withWeight = False, allowPOS=('ns', 'n', 'vn', 'v'))all_word_list.extend(word_list)
result = " ".join(all_word_list)
with open("result.txt", "w", encoding="utf-8") as f:f.write(result)
f.close()
sentences = word2vec.Text8Corpus("result.txt")#加载语料
model = word2vec.Word2Vec(sentences, vector_size = 250, min_count=1) #训练模型,维度设置为200,最小词频设置为1;
model.save("my_model.model")
with open("all_word_list.pkl", "wb") as f:pickle.dump(all_word_list, f)
f.close()model = Word2Vec.load("my_model.model")
with open("all_word_list.pkl", 'rb') as f:all_word_list = pickle.load(f)
f.close()

用新生成的word2vec计算与输入单词最相近的单词:

用新生成的word2vec计算输入单词中最不同的:

# coding=utf-8
from gensim.models import Word2Vecen_wiki_wor2vec_model=Word2Vec.load('my_model.model')testwords=['苹果','数学','电影']
for i in range(3):res=en_wiki_wor2vec_model.wv.most_similar(testwords[i])print(testwords[i])print(res)testwords=['济南','北京','叶蓁蓁']
re1=en_wiki_wor2vec_model.wv.doesnt_match(testwords)
print(re1)

备注:一般是用维基百科的语料库进行word2vec的训练

word2vec——训练自己的word2vec模型相关推荐

  1. 268G+训练好的word2vec模型(中文词向量)

    268G+训练好的word2vec模型(   从网上了解到,很多人缺少大语料训练的word2vec模型,在此分享下使用268G+语料训练好的word2vec模型. 查看全文 http://www.ta ...

  2. 【深度学习】120G+训练好的word2vec模型(中文词向量)

    很多人缺少大语料训练的word2vec模型,在此分享下使用268G+语料训练好的word2vec模型. 训练语料: 百度百科800w+条,26G+ 搜狐新闻400w+条,13G+ 小说:229G+ i ...

  3. 120G+训练好的word2vec模型(中文词向量)

    从网上了解到,很多人缺少大语料训练的word2vec模型,在此分享下使用120G+语料训练好的word2vec模型. 训练语料: 百度百科800w+条,20G+ 搜狐新闻400w+条,12G+(数据下 ...

  4. word2vec训练中文模型—wiki百科中文库

    ps:整理电脑文档,将之前的做的word2vec训练的中文模型实验记录做下poko,欢迎交流学习. 1.准备数据与预处理 注意事项:请将内存最好选择8g及以上的电脑,否则可能卡顿,并在开始时候安装好p ...

  5. Python Djang 搭建自动词性标注网站(基于Keras框架和维基百科中文预训练词向量Word2vec模型,分别实现由GRU、LSTM、RNN神经网络组成的词性标注模型)

    引言 本文基于Keras框架和维基百科中文预训练词向量Word2vec模型,分别实现由GRU.LSTM.RNN神经网络组成的词性标注模型,并且将模型封装,使用python Django web框架搭建 ...

  6. Python gensim库使用word2vec 加载和保存模型、在预训练基础上训练自己的预料

    Python gensim库使用word2vec 常见: gensim.models.word2vec.Word2Vec(size=300, sg=1, min_count=1) 加载和保存模型 ge ...

  7. word2vec训练词向量 python_使用Gensim word2vector训练词向量

    注意事项 Skip-Gram models:输入为单个词,输出目标为多个上下文单词: CBOW models:输入为多个上下文单词,输出目标为一个单词: 选择的训练word2vec的语料要和要使用词向 ...

  8. 使用word2vec训练中文词向量

    https://www.jianshu.com/p/87798bccee48 一.文本处理流程 通常我们文本处理流程如下: 1 对文本数据进行预处理:数据预处理,包括简繁体转换,去除xml符号,将单词 ...

  9. 利用word2vec训练词向量

    利用word2vec训练词向量 这里的代码是在pycharm上运行的,文件列表如下: 一.数据预处理 我选用的数据集是新闻数据集一共有五千条新闻数据,一共有四个维度 数据集:https://pan.b ...

最新文章

  1. 阿里云Ecs挂载云盘
  2. 新冠图像数据分析论文集合(附链接)
  3. 英语口语(5月31日)
  4. win10 系统安装 服务器失败怎么回事,Win10正式版安装出现问题怎么办
  5. proftpd的安装配置实例
  6. sun m5000 snapshot
  7. 统计学习方法第四章朴素贝叶斯法-李航
  8. 软件设计最近发展趋势对话录
  9. 科大星云诗社动态20210302
  10. 动态规划-时间规整算法
  11. 模为2的逆元是什么_两种求模m逆元的方法
  12. 设计一算法,判断给定单链表的长度是奇数还是偶数
  13. Python使用matplotlib填充图形指定区域
  14. 【Linux】CentOS 7 安装 docker
  15. Security+ 学习笔记5 常见的网络攻击
  16. CCF——游戏(2017-12)
  17. s-msckf代码笔记(二)
  18. [Unity]Curvy插件随机生成装饰物
  19. 纯web端实现二维码识别
  20. 如何获得复权后的股票数据

热门文章

  1. 设置成GPU后仍然在使用CPU跑程序
  2. 【转】iOS开发人员必看的精品资料(100个)
  3. matlab工具箱及应用 pdf,matlab工具箱中文.pdf
  4. lumen框架的理解
  5. linux opengl安装教程,求OpenGL安装过程
  6. 【机器学习】决策树案例一:利用决策树进行年龄与音乐类型喜好分类预测
  7. 数据结构与算法之美(一):概论
  8. 硬盘的读写原理(图文详解)
  9. google统计ga.js本地化提高网站性能
  10. Android studio 放大字体