【Gensim + TSNE使用】word2vec词向量处理中文小说
本文使用Gensim对小说斗破苍穹进行词嵌入可视化
流程
- 数据预处理,将小说数据滤除停止词,分词book_loader()。
- 调用gensim.models.word2vec对语料建立词向量。
- 词嵌入,使用TSNE进行数据降维,使用plt可视化词嵌入结果。
效果图
男主与各个女主的词向量嵌入到了一起
本文用到的资源:
代码实现
数据导入及预处理
import os, time, re
import numpy as np
import jieba
from gensim.models.word2vec import Word2Vec,Text8Corpus
import re
from gensim.models import word2vec
from sklearn.manifold import TSNE
import matplotlib.pyplot as plt
plt.rcParams["font.sans-serif"] = ["SimHei"] # 用來正常顯示中文標籤
plt.rcParams["axes.unicode_minus"] = False # 用來正常顯示負號
def book_loader():
with open(r"D:\Edge_Download\斗.破苍穹.txt", "r") as f: # 打开文件
data = f.read() # 读取文件
data = re.sub(r'[^\w\s]', ''