预训练:1、词向量是什么--word2vec静态词向量

      NLP里面最细粒度的是词语/字,词语组成句子、段落、文章。但词语是符号形式,如何转化成便于计算机处理的数值形式,或者说嵌入到一个数学空间,就叫词嵌入(word embedding)。

把维数为词典大小的高维空间嵌入到一个更低维数的连续向量空间。

      one-hot vector问题:维度灾难&语义鸿沟。通过词向量模型可将一个 one-hot vector映射到一个维度更低的实数向量(embedding vector),如embedding(母亲节)=[0.3,4.2,−1.5,…], embedding(康乃馨)=[0.2,5.6,−2.3,…]。

词向量获取方式:

  • 基于统计方法
    – 共现矩阵:数据稀疏、维度灾难
    – SVD:维度太高
  • 基于语言模型
          语言模型LM:学习句子的联合概率(一个句子是人话的概率)。 给定前n个词,预测下个词出现的概率---->基于n-gram的LM。常用条件概率,即给定前几个词预测下一个词出现的概率。

代表技术:word2vec工具

  • 含两种模型
    – 跳字模型(skip-gram):给定中心词,预测其周围的词
    – 和连续词袋模型(CBOW):给定上下文,预测中心词
  • 两种近似训练法
    – 负采样(negative sampling)
    – 层序softmax(hierarchical softmax)

预训练:1、词向量是什么--word2vec静态词向量_第1张图片
例如,输入X词的one-hot vec [1,0,0…]’、预测Y的one-hot vec,模型训练完后得到的神经网络权重 W(v*n) 中只有一行被激活,即用此作为X的词向量。 实际上,网络初始化的时候直接为每个词随机生成一个N维向量,把它作为模型参数学习。即,等价于 “从一个 V x N 的随机词向量矩阵里,抽取某一行”

      word2vec的词向量可以较好地表达不同词之间的相似和类比关系,但word2vec是静态词向量(基于统计即词语之间的共现)。

参考:
秒懂词向量word2vec的本质
词向量技术–从word2vec到ELMo
Sebastian Ruder 的Glove讲解

你可能感兴趣的:(自然语言理解NLU)