美文网首页
SoW、BOW、Words Embedding

SoW、BOW、Words Embedding

作者: 还闹不闹 | 来源:发表于2020-05-19 11:48 被阅读0次

例句:
Jane wants to go to Shenzhen.
Bob wants to go to Shanghai.

0、词集模型(SoW,Set of Words)

  • 词集模型(Set of Words,简称SoW):单词构成的集合,每个单词只出现一次。
  • 和词袋模型唯一的不同是它仅仅考虑词是否在文本中出现,而不考虑词频
  • 也就是一个词在文本在文本中出现1次和多次特征处理是一样的。

1、词袋模型(BOW,bag of words)

  • 将所有词语装进一个袋子里,不考虑其词法和语序的问题,即每个词语都是独立的。例如上面2个例句,就可以构成一个词袋,袋子里包括Jane、wants、to、go、Shenzhen、Bob、Shanghai。

  • 假设建立一个数组(或词典)用于映射匹配:[Jane, wants, to, go, Shenzhen, Bob, Shanghai]
    那么上面两个例句就可以用以下两个向量表示,对应的下标与映射数组的下标相匹配,其值为该词语出现的次数
    [1,1,2,1,1,0,0]
    [0,1,2,1,0,1,1]
    这两个词频向量就是词袋模型,可以很明显的看到语序关系已经完全丢失。

  • 词袋模型的三部曲:分词(tokenizing),统计修订词特征值(counting)与标准化(normalizing)。
    词袋模型首先会进行分词,在分词之后,通过统计每个词在文本中出现的次数,我们就可以得到该文本基于词的特征,如果将各个文本样本的这些词与对应的词频放在一起,就是我们常说的向量化。向量化完毕后一般也会使用TF-IDF进行特征的权重修正,再将特征进行标准化。 再进行一些其他的特征工程后,就可以将数据带入机器学习算法进行分类聚类了。

SeW 与 BOW 的区别:
词袋是在词集的基础上增加了频率的维度,词集只关注有和没有,词袋还要关注有几个。

2、词向量模型

词向量模型是考虑词语位置关系的一种模型。通过大量语料的训练,将每一个词语映射到高维度(几千、几万维以上)的向量当中。通过求余弦的方式,可以判断两个词语之间的关系,例如例句中的Jane和Bob在词向量模型中。
他们的余弦值可能就接近1,因为这两个都是人名,Shenzhen和Bob的余弦值可能就接近0,因为一个是人名一个是地名。
现在常用word2vec构建词向量模型,它的底层采用基于CBOW和Skip-Gram算法的神经网络模型。

2.1 CBOW模型

CBOW模型的训练输入是 某一个特征词的 上下文相关的词对应的 词向量,而输出就是 这特定的一个词的词向量
比如上面的第一句话,将上下文大小取值为2,特定的这个词是"go",也就是我们需要的输出词向量,上下文对应的词有4个,前后各2个,这4个词是我们模型的输入。
由于CBOW使用的是词袋模型,因此这4个词都是平等的,也就是不考虑他们和我们关注的词之间的距离大小,只要在我们上下文之内即可。

这样我们这个CBOW的例子里,我们的输入是4个词向量,输出是所有词的softmax概率(训练的目标是期望训练样本特定词对应的softmax概率最大)
对应的CBOW神经网络模型输入层有4个神经元,输出层有(词汇表大小)个神经元。
隐藏层的神经元个数我们可以自己指定。通过DNN的反向传播算法,我们可以求出DNN模型的参数,同时得到所有的词对应的词向量。
这样当我们有新的需求,要求出某4个词对应的最可能的输出中心词时,我们可以通过一次DNN前向传播算法并通过softmax激活函数找到概率最大的词对应的神经元即可。

2.2 Skip-Gram模型

Skip-Gram模型和CBOW的思路是反着来的,即输入是特定的一个词的词向量,而输出是特定词对应的上下文词向量
还是上面的例子,我们的上下文大小取值为2, 特定的这个词"go"是我们的输入,而这4个上下文词是我们的输出。
这样我们这个Skip-Gram的例子里,我们的输入是特定词, 输出是softmax概率排前4的4个词。
对应的Skip-Gram神经网络模型输入层有1个神经元,输出层有(词汇表大小)个神经元。
隐藏层的神经元个数我们可以自己指定。通过DNN的反向传播算法,我们可以求出DNN模型的参数,同时得到所有的词对应的词向量。
这样当我们有新的需求,要求出某1个词对应的最可能的4个上下文词时,我们可以通过一次DNN前向传播算法得到概率大小排前4的softmax概率对应的神经元所对应的词即可。

词向量模型突出特点:
在词向量模型中,词向量与词向量之间有这非常特殊的特性。例如现在存在国王、男生、女人、皇后四个词向量,那么一个完善的词向量模型,就存在“国王-男人+女人=皇后”这样的关系。

扩展阅读:
文本特征提取:词袋模型/词集模型,TF-IDF
词袋模型
词袋模型的通俗介绍
词袋模型的通俗介绍
文本情感分析(一):基于词袋模型(VSM、LSA、n-gram)的文本表示
文本向量化表示——词袋模型
词袋模型(bag of words)原理
NLP系列之词袋模型和TFIDF模型
基于Kaggle数据的词袋模型文本分类教程

相关文章

  • SoW、BOW、Words Embedding

    例句:Jane wants to go to Shenzhen.Bob wants to go to Shang...

  • Elon Musk 6

    Words: bow to sth: to agree unwilling to do sth because o...

  • BoW(Bag of words)模型详解

    最近在研究自然场景图像和结构图像的分类时,碰巧遇到词袋模型,就顺便对其进行了学习。下文算是本人学习后的一点总结吧。...

  • 中文NLP笔记:8. 基于LSTM的文本分类

    序列模型 语言模型 N-gram 前面的词袋模型(Bag-of-Words,BoW),没有考虑每个词的顺序 有...

  • 词集模型(SOW)和词袋模型(BOW)

    (1)词集模型:Set Of Words,单词构成的集合,集合自然每个元素都只有一个,也即词集中的每个单词都只有一...

  • 词袋模型BoW和词集模型SoW

    Bag-of-Words词袋模型,经常用在自然语言处理和信息检索当中.在词袋模型中,一篇文本(文章)被表示成"装着...

  • BOW模型

    1.BOW: Bag of words 词袋模型。2.Bg: 最初被用在文本分类中,将文档表示成特征矢量。它...

  • 词袋模型

    词袋模型(Bag of words,简称 BoW ) 词袋模型假设我们不考虑文本中词与词之间的上下文关系,仅仅只考...

  • Bag-of-words模型入门

    总括 Bag-of-words模型是信息检索领域常用的文档表示方法。在信息检索中,BOW模型假定对于一个文档,忽略...

  • 文本表征:SoW、BoW、TF-IDF、Hash Trick、d

    一、文本特征 (一)基本文本特征提取 词语数量常,负面情绪评论含有的词语数量比正面情绪评论更多。 字符数量常,负面...

网友评论

      本文标题:SoW、BOW、Words Embedding

      本文链接:https://www.haomeiwen.com/subject/mpgvohtx.html