自然语言处理之词向量技术(二)

1. 词向量技术

词向量(word2vec)是一种表示自然语言中单词的方法,即把每个词都表示为一个N维空间内的点,即一个高维空间内的向量,通过这种方法,把自然语言计算转换为向量计算。词向量的基本内容包括:

  • 问题引入
  • 基于统计方法的词向量
  • 基于语言模型的词向量

2 问题引入

2.1 向量空间分布的相似性

  • 在计算机中表示词语时,当词语转换为向量之后,应保持词语之间在空间中具有相似性。
    自然语言处理之词向量技术(二)_第1张图片

2.2 向量空间子结构和目标

  • 词语的向量不仅能表示空间分布,还应保证空间子结构一直。
  • 词向量的最终目标是:词向量的表示可以作为机器学习、深度学习的输入和空间表示。
    自然语言处理之词向量技术(二)_第2张图片

2.3 实现词向量的挑战

  • 挑战一:如何把词转换为向量?自然语言单词是离散信号,比如“香蕉”、“橘子”、“水果”在我们看来就是3个离散的词。我们应该如何把离散的单词转换为一个向量。
  • 挑战二:如何让向量具有语义信息?我们知道,“香蕉”和“橘子”更加相似,而“香蕉”和“句子”就没有那么相似,同时,“香蕉”和“食物”,“水果”的相似程度,可能介于“橘子”和“句子”之间。那么,我们该如何让词向量具备这样的语义信息?

3 基于统计方法的词向量

3.1 OneHotEncoder

  • 独热码,在英文文献中称做ont-hot code,直观来说就是有多少个状态就有多少比特,而且只有一个比特为1,其他全为0的一种码制。
    自然语言处理之词向量技术(二)_第3张图片

3.2 词袋模型

  • 词袋模型(Bag of Words,简称BoW),即将所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的,把每一个单词都进行统计,同时计算每个单词出现的次数。
  • 词袋模型的三部曲:分词(tokenizing),统计修订词特征值(counting)与标准化(normalizing)。
  • 文档的向量表示可以直接将各词的词向量表示加和。
    自然语言处理之词向量技术(二)_第4张图片

4 基于语言模型的词向量

4.1 语言模型的概念

  • N-Gram是一种基于统计语言模型的算法。它的基本思想是将文本里面的内容按照字节进行大小为N的滑动窗口操作,形成了长度是N的字节片段序列。
  • 每一个字节片段称为gram,对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特征空间,列表中的每一种gram就是一个特征向量维度
    自然语言处理之词向量技术(二)_第5张图片

4.2 文本离散表示的缺点

  • 词向量的表示太稀疏,很难捕捉文本的含义
  • n-gram词序列随语料库膨胀太快
  • 各种距离度量都无法满足语义的内容
    自然语言处理之词向量技术(二)_第6张图片

你可能感兴趣的:(深度学习,自然语言处理)