Word2Vec
Word2Vec
Word2Vec有两种形式,一种是Skip-gram,另一种是CBOW。
- Skip-gram:已知中心词 ,预测上下文词
- CBOW:已知上下文词 ,预测中心词
1. Softmax 损失函数
公式:
含义
- 目标:最大化中心词 和上下文词 的相似性,同时最小化中心词 与其他非上下文词的相似性。
- 问题:每次计算梯度时,都需要遍历整个词汇表 ,计算所有词的概率。这在大规模语料中计算量非常大,效率较低。
2. 负采样(Negative Sampling,NEG)
为了解决 Softmax 的计算问题,Word2Vec 引入了负采样(NEG)方法,通过对部分负样本进行优化,避免计算整个词汇表 。
公式:
含义
- 正样本:使用 和 (即真实的上下文词)。
- 负样本:从词汇表中随机采样一部分非上下文词(集合 )作为负样本。
- 目的:让中心词 和真实上下文 的相似性最大化,同时最小化 与负样本的相似性。
- 效率提升:负采样只需要计算一小部分负样本,大幅减少了计算复杂度。
- :代表一个Batch,其中一条样本(, )由一个中心词 和其上下文 组成
优点
- 显著降低了计算复杂度,特别是当词汇表很大时。
- 性能通常足够好,尤其是在实际应用中。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?