什么是词向量?(NPL入门)腾讯云开发者社区

在自然语言处理任务中,首先需要考虑词如何在计算机中表示。通常,有两种表示方式:one-hotrepresentation和distributionrepresentation。

传统的基于规则或基于统计的自然语义处理方法将单词看作一个原子符号被称作one-hotrepresentation。one-hotrepresentation把每个词表示为一个长向量。这个向量的维度是词表大小,向量中只有一个维度的值为1,其余维度为0,这个维度就代表了当前的词。例如:苹果[0,0,0,1,0,0,0,0,0,……]one-hotrepresentation相当于给每个词分配一个id,这就导致这种表示方式不能展示词与词之间的关系。另外,one-hotrepresentation将会导致特征空间非常大,但也带来一个好处,就是在高维空间中,很多应用任务线性可分。

wordembedding指的是将词转化成一种分布式表示,又称词向量。分布式表示将词表示成一个定长的连续的稠密向量。

分布式表示优点:(1)词之间存在相似关系:是词之间存在“距离”概念,这对很多自然语言处理的任务非常有帮助。(2)包含更多信息:词向量能够包含更多信息,并且每一维都有特定的含义。在采用one-hot特征时,可以对特征向量进行删减,词向量则不能。

本小节来简单介绍词向量的生成技术。生成词向量的方法有很多,这些方法都依照一个思想:任一词的含义可以用它的周边词来表示。生成词向量的方式可分为:基于统计的方法和基于语言模型(languagemodel)的方法。

通过统计一个事先指定大小的窗口内的word共现次数,以word周边的共现词的次数做为当前word的vector。具体来说,我们通过从大量的语料文本中构建一个共现矩阵来定义wordrepresentation。例如,有语料如下:Ilikedeeplearning.IlikeNLP.Ienjoyflying.则其共现矩阵如下:

矩阵定义的词向量在一定程度上缓解了one-hot向量相似度为0的问题,但没有解决数据稀疏性和维度灾难的问题。

既然基于co-occurrence矩阵得到的离散词向量存在着高维和稀疏性的问题,一个自然而然的解决思路是对原始词向量进行降维,从而得到一个稠密的连续词向量。对2.1.1中矩阵,进行SVD分解,得到矩阵正交矩阵U,对U进行归一化得到矩阵如下:

SVD得到了word的稠密(dense)矩阵,该矩阵具有很多良好的性质:语义相近的词在向量空间相近,甚至可以一定程度反映word间的线性关系。

语言模型生成词向量是通过训练神经网络语言模型NNLM(neuralnetworklanguagemodel),词向量做为语言模型的附带产出。NNLM背后的基本思想是对出现在上下文环境里的词进行预测,这种对上下文环境的预测本质上也是一种对共现统计特征的学习。较著名的采用neuralnetworklanguagemodel生成词向量的方法有:Skip-gram、CBOW、LBL、NNLM、C&W、GloVe等。接下来,以目前使用最广泛CBOW模型为例,来介绍如何采用语言模型生成词向量。

生成word的distributionrepresentation的模型有很多,生成的向量效果差距不大(生成向量的效果更取决于良好的训练数据)。本节以CBOW模型中的层次化的softmax为例,介绍如何采用神经网络生成词向量。CBOW模型是预测上下文已知的情况下,当前词出现的概率。上下文的选取采用窗口方式,即只将当前词窗口范围内的词作为上下文。中心词概率公式如下:P(wt|wt-k,wt-(k-1)…,wt-1,wt+1,wt+2…,wt+k)=P(wt|context)

CBOW采用了一种Hierarchicalsoftmax技术,利用哈夫曼树对词表进行分类,用一连串的二分类来近似多分类。

加入哈夫曼树后,中心词的概率可表示入下:p(w_t│context)=∏(i=1)^k〖p(d_i|q_i,context)〗=∏(i=1)^k〖σ(v_context^T*q_i)〗其中,v_context^T为窗口内词的词向量的加权平均,q_i为结点i的结点向量,σ(*)为神经网络激活函数。从公式中可以看出,中心词的概率是从根节点到词所在的叶节点所走过路径概率的乘积。对中心词概率做极大似然估计,可得到模型的损失函数。损失函数如下:Loss=-Likelihood=-(1-code[j])logσ(v_context^T*q_i)-code[j]log(1-σ(v_context^T*q_i))code[j]为结点j的哈夫曼编码。有了损失函数,就可以通过梯度下降法求得词向量。注意,损失函数中有2个带求参数,分别为〖词向量(v〗_context^T)和结点向量〖(q〗_i)。可以看出,CBOW模型是一个语言模型。在训练好后,语言模型的参数v_context^T作为副产出,得到词向量。

例如,词”苹果”可以指代水果也可以指代苹果手机。在对“苹果”进行训练时,将会对其对应的词向量向两个方向拉伸,进而造成词向量歧义。词向量的歧义将会对词向量的应用效果产生影响。例如,对苹果进行序列标注,指代手机的苹果应打上品牌词标签,而指代水果的苹果对应打上产品词标签。对同一个词打上多种不同的标签而采用同一个词向量,将降低词性标注的效果。通常解决这一问题是对词向量进行聚类,以多个向量来表示同一个词。例如,在RNNs分词项目时,发现字向量的歧义问题将影响分词效果。因此,我按品类对字进行了聚类,得到的聚类效果如下:

左边是颜色中红色的红,可以看出它与其它颜色的距离较近。右边是手机品类红米手机的“红”,可以看到它最相似的词是“小”字,因为在京东的商品title里,手机品类中红米手机和小米手机出现的次数较多,进而使得“红”字和“小”字的语境相似。

还可以利用NNLM方法,将我们感兴趣的其它实体生成向量。例如,我曾利用word2vec将每个sku(商品id)embedding成向量。我们将每个用户某个月购买的母婴类商品按序进行排列做为一条训练样本,例如:

我们利用sku向量做为特征,训练模型预测用户年龄,准确率达90%。

深度学习模型具有比传统模型更强的特征抽取能力。在自然语言处理中,传统统计特征包含的信息量过少,这也一直限制着深度学习在自然语言处理中的应用。词向量由于包含了更丰富的信息,使得深度学习能够处理绝大多数自然语言处理应用。词向量虽然为深度学习在自然语言处理领域带来了希望,但目前词向量仍有许多不完善的地方,例如:虽然知道词向量比统计特征包含更多信息,但并不知道词向量包含了哪些信息(如每维特征代表的意义)。词向量的训练采用无监督方式,不能很好的利用先验信息。词向量是神经网络语言模型的副产物,其损失函数不是由具体应用构建。因此,不是词向量训练的越好,应用效果就越好。

随着词向量研究的深入,这些问题都将会得到解决。深度学习在自然语言处理领域的前景将会更加光明。

THE END
1.“阴阳怪气”,英语不是yinyang!要这样说下面聊聊“阴阳怪气”对应的英文说法是什么。中文“阴阳怪气”有三种不同的用法: 1.首先是形容词用法——“阴阳怪气的”,我们可以用sarcastic(/sɑk?st?k/) ,两词意为“讽刺的、挖苦的”。 例如:I think he’s being sarcastic.(我认为他是在阴阳怪气)。 http://www.360doc.com/content/24/0502/14/51809127_1122151615.shtml
2.洛阳诗词协会洛阳诗词协会元宵节活动在2024.2.21如期举行了。今天雪好大。为话动祝福。风调雨顺闹元宵了。 在欢快的《好运全都来》曲声中开场了。 02:47 24年洛阳诗词协会元宵佳节联欢活动暨第三届诗词大赛颁奖大会主持词开场舞:《好运全都来》陈香、郑静琴等……主持人登台、音乐起(望春风)……男主持人:东风夜放花千树https://www.meipian.cn/512pjat5
3.科学研究写作Unit2关于方法论的写作单数的可数名词需要限定词 限定词是一个比如the,a,my,this,one,some这样的词。遵守这条规则有两个问题需要解决,首先,很难确定哪些名词是可数的,其次,如何决定是使用a还是使用the? 让我们看看第一个问题。那些是可数名词,那些看起来很难区分,许多经常被认为不可数的名词实际上可以用“可数”来表示。例如,像“deathttps://www.jianshu.com/p/60d2095cb708
4.政治书里表达顺序的用词首先其次再次XX最后那个XX是什么?想不起来首先其次再次XX最后那个XX是什么?想不起来了 扫码下载作业帮搜索答疑一搜即得 答案解析 查看更多优质解析 解答一 举报 你所说的xx,一般表示为第四、第五,这样整体来看就是首先,其次,再次,第四,第五最后.但是一般来说,用首先其次再次最后这种顺序词的点一般都在三到五个,有较多的点要阐述时一般就直接https://qb.zuoyebang.com/xfe-question/question/9f693cc6ea1b2ba86af34e9f5075d6c4.html
5.首先是什么意思怎么读木兮汉语提供首先是什么意思、怎么读、近义词和反义词有哪些。首先,首先的意思,首先是什么意思,首先什么意思,首先的近义词,首先的反义词,首先的拼音,首先的解释,首先的同义词https://www.1saying.com/expression/415836
6.首先,其次,再次,最后是什么关联词,他们之间可以用分号吗?答案解析 查看更多优质解析 解答一 举报 递进关联词,可以用分号. 解析看不懂?免费查看同类题视频解析查看解答 相似问题 除了首先、接着、然后、再、最后,还有什么类似的关联词? 用“首先……然后……最后" 写关联词! 特别推荐 热点考点 2022年高考真题试卷汇总 2022年高中期中试卷汇总 2022年高中期末试卷汇总https://www.zybang.com/question/f79ba9910c9baa978fe8cbfb8eeeab59.html
7.首先是什么意思拼音怎么读首先的近义词反义词用首先造句首先首先拼音shǒu xiān 注音ㄕㄡˇ ㄒ一ㄢ 词性副词 近义词起首 反义词最后 分字解释 shǒu首xiān先 ※ "首先"的意思解释、首先是什么意思由古文词典百科汉语词典查词提供。近音词、同音词 shòu xiǎn寿险 shǒu xiàn首宪 shòu xiàn寿限 shǒu xiàn首县 shòu xiàn寿县 shǒu xiàn手线 shǒu https://www.dzcmedu.com/shiwen/cidian/212/
8.python共词矩阵共词矩阵是什么python 共词矩阵 共词矩阵是什么 话不多说,直接上干货。 首先介绍相关概念: 词嵌入:把词映射为实数域上向量的技术也叫词嵌入(word embedding)。 词向量的分类表示: 一、共现矩阵 通过统计一个事先指定大小的窗口内的word共现次数,以word周边的共现词的次数做为当前word的vector。具体来说,我们通过从大量的https://blog.51cto.com/u_16213636/8550697
9.首先的相关词首先词典反查首先的相关词:上釉、义利之辨、产业革命、人工选择、人本主义、人权、从属价值、代数学基本定理、伦琴射线、余数定理、作为、保证率、,首先[ shǒu xiān ]的解释:⒈最先;最早:首先报名。 ⒉第一(用于列举事项):首先,是大会主席报告;其次,是代表发言。 https://cidian.gei6.com/fancha__ac0iap3l.html
10.首先的近义词是什么首先的近义词:最初 最初(zuì chū)的解释:最早的时期、开始的时候。如:「我们最初认识的地方是在淡水河畔。」 首先的近义词:起首 起首(qǐ shǒu)的解释:开始、开头。 【造句】起首爷爷并不肯答应,后来才点头同意。 首先的近义词:最先 最先(zuì xiān)的解释:最早。如:「哥伦布最先发现新大陆。」 http://www.yuwenke.com/jinyici/shouxian8.html
11.初三英语知识点总结初三英语24. crowdv.挤满其形容词和过去式及过去分词都是:crowded 25. set n. 一套v. 设置 26. can’t stop doing 忍不住做某事 I can’t stop laughing. 我忍不住笑 27. make faces 做鬼脸 28. face to face 面对面 29. learn…by oneself 自学 如: I learn English by my self. 我自学英语。 https://m.hujiang.com/zx/p251900/
12.新广告法极限用语德客易采首先介绍下哪些是极限词 《中华人民共和国广告法》中规定的极限词字有: 1、国家级、世界级、最高级、顶级 国家级、世界级、最高级、顶级、顶尖、高级、高档、世界领先、遥遥领先、一马当先; 国家示范、全国领先、行业顶尖、行业领先、领衔、问鼎、开创之举、填补国内空白。 https://www.shangyexinzhi.com/article/3284064.html
13.搜狗输入法的以词定字是什么搜狗输入法的以词定字是什么 搜狗输入法当想输入某个字,但是这个字很靠后时,用以词定字功能可以很快输入该字。例如:想输入“济”字,输入“经济”时不要敲空格,而按下设置的键,例如“[]”中的“]”即可输入“济”字。由于此功能使用人数较少,所以输入法默认是关闭的,如果想使用,可以选中打开这个功能。https://g.pconline.com.cn/x/292/3036153.html
14.自然语言处理—文本分类综述/什么是文本分类由于这些词的用处太普遍,去除这些词,对于文本分类来说没有什么不利影响,相反可能改善机器学习效果。停用词去除组件的任务比较简单,只需从停用词表中剔除定义为停用词的常用词就可以了。 文本特征提取(特征选择) nlp 任务非常重要的一步就是特征提取(对应机器学习中的特征工程步骤,也叫做降维),在向量空间模型中,文本https://blog.csdn.net/a1097304791/article/details/121472163