Efficient Estimation of Word Representations in Vector Space论文笔记解读

基本信息

作者 TomasMikolov doi 10.48550
发表时间 2013 期刊 ICLR
网址 http://arxiv.org/abs/1301.3781

研究背景

1. What's known 既往研究已证实

前馈神经网络语言模型(NNLM)

循环神经网络语言模型(RNNLM)

2. What's new 创新点

Word2vec有两种模型:CBOW和Skip-gram,使得计算成本下降并且准确率提升。

Word2vec的向量表示能够自动捕捉到单词之间的语义和语法关系。

3. What's are the implications 意义

加快训练速度。

能够在大规模语料上进行词向量的训练。

衡量词向量之间的相似程度。

研究方法

1. skip-gram

通过中心单词来预测上下文单词。对于给定的一对(中心单词,上下文单词),我们希望最大化它们的共现概率。

用softmax来估计每个上下文单词的概率:

损失函数:

2. cbow(词袋模型bag-of-word)

用周围词预测中心词,求和的时候忽略了每个词的顺序。

损失函数:

最后输出V个概率,复杂度比较高,采用了2重方法降低复杂度,分别是层次softmax和负采样。

3. Hierarchical Softmax

将输出层的单词表示为一个二叉树,其中每个叶子节点都表示一个单词。每个非叶子节点都表示两个子节点的内积,每个叶子节点都表示该单词的条件概率。由于二叉树的形状,我们可以使用 l o g 2 W log_{2}W log2W个节点来表示词汇表大小为W的模型,降低计算量。

4. Negative Sampling

舍弃多分类,把多分类转变成二分类问题(正样本和负样本)。

正样本:用中心词和其中一个周围词做成正样本(jumps over)

负样本:我们随机从词表里面选一个词与over构成负样本(over again)

增大正样本的概率,减小负样本的概率。

损失函数:正样本函数+负样本函数

函数"J neg-sample "越大越好,损失函数需要加个符号让损失越小越好。
https://zhuanlan.zhihu.com/p/419804103

结果与讨论

  1. 单词向量优于以前的技术状态。
  2. 使用非常简单的模型架构可以训练高质量的词向量。计算复杂性低,可从更大的数据集中计算非常精确的高维词向量。
  3. 通过Word2vec训练出的词向量可以用于许多自然语言处理任务,例如词义相似度计算、命名实体识别和情感分析等。

重要图

文献中重要的图记录下来

相关推荐
aqi003 小时前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用
用户5191495848454 小时前
libcurl Headers API 释放后重利用漏洞:跨请求复用头句柄导致堆内存安全风险
人工智能·aigc
踩蚂蚁4 小时前
自定义语音唤醒词:从训练到部署的完整链路实践
人工智能
用户5191495848454 小时前
CVE-2025-1094 PostgreSQL SQL注入与WebSocket劫持远程代码执行利用工具
人工智能·aigc
IT_陈寒5 小时前
SpringBoot自动配置这个坑,我踩进去又爬出来了
前端·人工智能·后端
JieE21213 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
冬奇Lab16 小时前
Agent 系列(23):Web Agent——让 Agent 真正浏览网页
人工智能·llm·agent
冬奇Lab16 小时前
每日一个开源项目(第135篇):codebase-memory-mcp - 给 AI Agent 一张代码库的知识图谱
人工智能·开源·llm