第N7周打卡:调用Gensim库训练Word2Vec模型

一、准备工作





二、训练Word2Vec模型

python 复制代码
from gensim.models import Word2Vec
 
model = Word2Vec(result_stop,     # 用于训练的语料数据
                 vector_size=100, # 是指特征向量的维度,默认为100。
                 window=5,        # 一个句子中当前单词和被预测单词的最大距离。
                 min_count=1)     # 可以对字典做截断,词频少于min_count次数的单词会被丢弃掉, 默认值为5。

三、模型应用

3.1 计算词汇相似性

python 复制代码
# 计算两个词的相似度
print(model.wv.similarity('沙瑞金', '季昌明'))
print(model.wv.similarity('沙瑞金', '田国富'))

3.2 找出不匹配的词汇

python 复制代码
# 选出最相似的5个词
for e in model.wv.most_similar(positive=['沙瑞金'], topn=5):
    print(e[0], e[1])

3.2 计算词汇的词频

四、总结

Word2Vec 模型学习总结

4.1Word2Vec 是一种非常强大的词嵌入(Word Embedding)技术,通过学习单词的分布式表示,可以将单词映射到高维向量空间中,使得语义相似的单词在向量空间中的距离更近。

4.2主要参数理解

4.2.1​​vector_size (特征向量维度)​​

决定了词向量的维度大小

通常设置在50-300之间

维度越高能捕捉更多特征,但也需要更多数据和计算资源

4.2.2​​window (上下文窗口大小)​​

控制训练时考虑的上下文范围

较大的窗口能捕捉更多主题信息(文档级语义)

较小的窗口捕捉更多语法/功能信息(局部语义)

4.2.3​​min_count (最小词频)​​

过滤低频词的重要参数

设置过低会导致模型学习不常见词的噪声

设置过高会丢失一些有价值但低频的词

4.3模型特点总结

​​4.3.1分布式表示​​

将单词表示为稠密向量

解决了传统one-hot表示的高维稀疏问题

​​4.3.2语义捕捉能力​​

能够捕捉"国王-男人+女人≈女王"这样的语义关系

相似词在向量空间中距离相近

4.3.3两种训练算法​​

CBOW (Continuous Bag-of-Words):通过上下文预测当前词

Skip-gram:通过当前词预测上下文(适合小数据集)

实际应用经验

​​数据预处理很重要​​

分词质量直接影响模型效果

去除停用词、特殊符号等噪声

考虑词干提取或词形还原

​​参数调优建议​​

大数据集可以使用更大的window和vector_size

小数据集建议使用Skip-gram算法

min_count根据语料大小设置,一般5-20

​​4.3.4模型评估方法​​

相似词检索:model.wv.most_similar('单词')

词语类比:model.wv.most_similar(positive='女人', '国王', negative='男人')

可视化降维检查(如t-SNE)

相关推荐
挖掘狂人24 分钟前
程序员转型抉择:转 Agent 开发还是转全栈?一份基于招聘市场的冷静分析
人工智能·程序员·agent
墨林陌25 分钟前
AI 热点日报(2026-11-10):英伟达AI Day首尔开幕,苹果重回市值第一,黄仁勋遭免职调查
人工智能
Kapaseker39 分钟前
你花大价钱买的那张 5090 可能跑不了本地 AI 模型
人工智能
程序员果子1 小时前
本体构建方法
人工智能·python·知识图谱·agent框架·本体
深蓝AI1 小时前
Meta FAIR 开源 e-means:k-means 十分之一的轮数跑出更低损失,已并入 Faiss
人工智能·程序员
IT_陈寒1 小时前
Vue这个奇葩的响应式问题让我加班到凌晨
前端·人工智能·后端
yunhuibin1 小时前
AI分类任务种类
人工智能·自然语言处理·分类
东坡肘子1 小时前
参与学生移动应用大赛有感 -- 肘子的 Swift 周报 #161
人工智能·swiftui·swift
天天被压力1 小时前
【A股分钟级高频数据完全手册 #11】券商实时行情数据接口:实时交易(券商源)接入与字段
java·人工智能·python