词转化为词向量

前言

2013年末,谷歌发布了word2vec工具,引起了热捧,大家几乎都认为它是深度学习在NLP的一项了不起的应用,并且很多互联网公司也开始跟进,使用word2vec解决实际问题。

NLP的相关任务中,要将我们能看懂的语言交给计算机来处理,通常需要首先将语言数学化,只有这样机器才能认得出,而词向量正是将我们看懂的词进行数学化的一种方法,就是把一个词语表示成一个向量。

一般将词语转化为向量的方法有两种:

One-Hot Representation

Distributed Representation

下面分别介绍这两种方法

1 One-Hot Representation

这种方法很暴力,直接将词典的长度标记为向量的长度,每个词向量的分量只有一个为1,其余全为0,1的位置对应该词在词典的位置,比如:

adore 表示为 [0,0,0,1,...,0,0]

respect表示为 [0,0,0,...,0,1,0,..0,0]

这种表示方法的优点是简洁清晰,用哈希表给每个词分配一个编号就可以了,比如 adore编号为102,respect编号为34214,然后配合上最大熵,SVM等算法可以完成NLP的一些任务,但是它的缺点也很明显:

1). 维数灾难,这种方法容易受到这方面的困扰,尤其是用DL的一些算法时;

2.) 不能很好地刻画词语与词语间的相似性,称为“词汇鸿沟”,因为从adore和respect的词向量,编号上,我们看不出它们之间是否存在某种关系,比如为同义词,反义词等,尽管adore和respect是一对同义词

2 Distributed Representation

这种表示是Hinton,在1986年提出的,它解决了One-Hot Representation的问题,其基本思想就是直接用一个普通的向量表示一个词,维度一般不长,比如50维,这个向量怎么表示是要经过训练的,训练方法较多,谷歌开发的word2vec便是其中一个,比如向量长这样 [0.452, 0.256, 0.912,...],当然训练的预料库不一样,或者方法不一样,最终得到了某个词的向量长的也不一样。

显然,这种方法获得了 adore 和 respect 两个词的词向量,这样他俩组成了一个词向量空间,而每一个向量则为该空间中的一个点,即向量的终端点,那么adore和repect这两个点的距离,我们就可以拿来分析了,如果它们很近,就可证明 adore和respect的语法,语义之间的相似性,这样的特性使得词向量很有意义,因此google的Mikolov等人研究出了word2vec。也就是说距离近的词,相似性可能越高。

利用这个特性,可以用于机器翻译领域,通过向量空间,把一种语言转变成另一种语言,举个别人的例子,将英语中的one, two, ..., five自动转化为西班牙语,怎么做呢,首先得到这5个词的词向量,如下图所示:

词向量

然后,训练另一套即西班牙语表示的语料库,得到了每个词的词向量,找到与英语one最相近的西班牙单词为:uno,所以one对应西班牙语的uno,依次利用这种距离相近的方法找出其他的词的对应。

英语转西班牙语

原文链接:https://mp.weixin.qq.com/s/CgVpnrTy1bDJMHtSwwa5XA

相关文章

  • flink学习-DataSourse学习

    Flink 做为一款流式计算框架,它可用来做批处理,即处理静态的数据集、历史的数据集;也可以用来做流处理,即实时的处理些实时数据流,实时的产生数据流...

    opprash
  • 马尔可夫(Markov)相关

    马尔可夫(Markov)相关概念包括马尔可夫过程(Markov Process),马尔可夫奖赏过程(Markov Reward Process),马尔可夫决策...

    opprash
  • python建模库学习

    在模型开发工程中,通常的工作的流程是使用pandas对数据进行清洗和加载,然后对处理后的数据进行建模,开发模型中的其中一个重要环节是机器学习中的“特征工程”,他...

    opprash
  • 线性代数的本质-课程笔记(上)

    00 - “线性代数的本质”系列预览:https://www.bilibili.com/video/av5977466?from=search&seid=213...

    石晓文
  • 向量空间相关概念总结-基

    之前的向量空间一节已经说过:向量空间对向量的线性组合封闭(相加和数乘),所以,向量空间可以通过“向量+线性组合”构成。也可以说,这个向量空间由这些向量所张成,反...

    坑吭吭
  • 向量空间相关概念总结-向量空间

    坑吭吭
  • 向量空间相关概念总结-线性相关

    严格定义: 如果存在不全为零的实数k1、k2...km,使上面的等式成立,则这个向量组线性相关,否则线性无关。 注:这里这个向量组里是包含...

    坑吭吭
  • 向量空间相关概念总结-向量

    坑吭吭
  • C# 已知点和向量,求距离的点

    已知一个点 P 和向量 v ,求在这个点P按照向量 v 运行距离 d 的点 B 。

    林德熙
  • 【Unity3d游戏开发】Unity3D中的3D数学基础---向量

    向量是2D、3D数学研究的标准工具,在3D游戏中向量是基础。因此掌握好向量的一些基本概念以及属性和常用运算方法就显得尤为重要。在本篇博客中,马三就来和大家一起回...

    马三小伙儿

扫码关注云+社区

领取腾讯云代金券