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训练出的词向量可以用于许多自然语言处理任务,例如词义相似度计算、命名实体识别和情感分析等。

重要图

文献中重要的图记录下来

相关推荐
韩师傅15 小时前
前端开发消亡史:AI也无法掩盖没有设计创造力的真相
前端·人工智能·后端
AI大佬的小弟15 小时前
【小白第一课】大模型基础知识(1)---大模型到底是啥?
人工智能·自然语言处理·开源·大模型基础·大模型分类·什么是大模型·国内外主流大模型
lamentropetion15 小时前
E - Equal Tree Sums CF1656E
算法
代码游侠15 小时前
应用——智能配电箱监控系统
linux·服务器·数据库·笔记·算法·sqlite
lambo mercy15 小时前
无监督学习
人工智能·深度学习
阿里巴巴P8资深技术专家15 小时前
基于 Spring AI 和 Redis 向量库的智能对话系统实践
人工智能·redis·spring
Xの哲學15 小时前
Linux Platform驱动深度剖析: 从设计思想到实战解析
linux·服务器·网络·算法·边缘计算
sunfove15 小时前
致暗夜行路者:科研低谷期的自我心理重建
人工智能
逑之15 小时前
C语言笔记11:字符函数和字符串函数
c语言·笔记·算法
柠柠酱16 小时前
【深度学习Day4】告别暴力拉平!MATLAB老鸟带你拆解CNN核心:卷积与池化 (附高频面试考点)
深度学习