当前位置: 首页 > news >正文

做亚克力在那个网站上好上海网络推广团队

做亚克力在那个网站上好,上海网络推广团队,做盗版网站引流,做公司网站是永久性的吗NLP入门系列—词嵌入 Word embedding 2013年,Word2Vec横空出世,自然语言处理领域各项任务效果均得到极大提升。自从Word2Vec这个神奇的算法出世以后,导致了一波嵌入(Embedding)热,基于句子、文档表达的wor…

NLP入门系列—词嵌入 Word embedding

2013年,Word2Vec横空出世,自然语言处理领域各项任务效果均得到极大提升。自从Word2Vec这个神奇的算法出世以后,导致了一波嵌入(Embedding)热,基于句子、文档表达的word2vec、doc2vec算法,基于物品序列的item2vec算法,基于图模型的图嵌入技术相继诞生。

现有的机器学习方法往往无法直接处理文本数据,因此需要找到合适的方法,将文本数据转换为数值型数据,由此引出了Word Embedding(词嵌入)的概念。

词嵌入是自然语言处理(NLP)中语言模型与表征学习技术的统称,它是NLP里的早期预训练技术。它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量,这也是分布式表示:向量的每一维度都没有实际意义,而整体代表一个具体概念。

文本表示

文本是一种非结构化的数据信息,是不可以直接被计算的。

文本表示的作用就是将这些非结构化的信息转化为结构化的信息,这样就可以针对文本信息做计算,来完成我们日常所能见到的文本分类,情感判断等任务。

文本表示将非结构化数据转化为结构化数据

文本表示的方法有很多种,下面只介绍 3 类方式:

  1. 独热编码 | one-hot representation
  2. 整数编码
  3. 词嵌入 | word embedding

word embedding的关系

独热编码 one-hot representation

假如我们要计算的文本中一共出现了4个词:猫、狗、牛、羊。向量里每一个位置都代表一个词。所以用 one-hot 来表示就是:

猫:[1,0,0,0]

狗:[0,1,0,0]

牛:[0,0,1,0]

羊:[0,0,0,1]

one-hot编码

但是在实际情况中,文本中很可能出现成千上万个不同的词,这时候向量就会非常长。其中99%以上都是 0。

one-hot 的缺点如下:

  1. 无法表达词语之间的关系
  2. 这种过于稀疏的向量,导致计算和存储的效率都不高

这里稍微解释一下

  1. 无法表达词语之间的关系,因为站在向量的角度,我们是可以计算向量之间的距离,one-hot 模式之下,所有的向量之间的距离都一样
  2. 关于向量过于稀疏,这主要是因为不论向量多长,只有一个位置是非0的

整数编码

这种方式也非常好理解,用一种数字来代表一个词,上面的例子则是:

猫:1

狗:2

牛:3

羊:4

整数编码

将句子里的每个词拼起来就是可以表示一句话的向量。

整数编码的缺点如下:

  1. 无法表达词语之间的关系
  2. 对于模型解释而言,整数编码可能具有挑战性。

什么是词嵌入 word embedding

word embedding 是文本表示的一类方法。跟 one-hot 编码和整数编码的目的一样,不过他有更多的优点。

词嵌入并不特指某个具体的算法,跟上面2种方式相比,这种方法有几个明显的优势:

  1. 可以将文本通过一个低维向量来表达,不像 one-hot 那么长。
  2. 语意相似的词在向量空间上也会比较相近。
  3. 通用性很强,可以用在不同的任务中。

word embedding:语意相似的词在向量空间上也会比较相近

目前有两种主流的 word embedding 算法

2 种主流的 word embedding 算法

Word2vec

这是一种基于统计方法来获得词向量的方法,他是 2013 年由谷歌的 Mikolov 提出了一套新的词嵌入方法。

Word2vec,是一群用来产生词向量的相关模型。这些模型为浅而双层的神经网络,用来训练以重新建构语言学之词文本。网络以词表现,并且需猜测相邻位置的输入词,在word2vec中词袋模型假设下,词的顺序是不重要的。训练完成之后,word2vec模型可用来映射每个词到一个向量,可用来表示词对词之间的关系,该向量为神经网络之隐藏

这种算法有2种训练模式:

  1. 通过上下文来预测当前词
  2. 通过当前词来预测上下文

Word2vec 是 Word Embedding 方式之一,属于 NLP 领域,是将词转化为「可计算」「结构化」的向量的过程,这种方式在 2018 年之前比较主流,但是随着 BERT、GPT2.0 的出现,这种方式已经不算效果最好的方法了。

在说明 Word2vec 之前,需要先解释一下 Word Embedding。 它就是将「不可计算」「非结构化」的词转化为「可计算」「结构化」的向量。

将现实问题转化为数学问题只是第一步,后面还需要求解这个数学问题。所以 Word Embedding 的模型本身并不重要,重要的是生成出来的结果——词向量。因为在后续的任务中会直接用到这个词向量。

Word2vec 的 2 种训练模式

CBOW(Continuous Bag-of-Words Model)和Skip-gram (Continuous Skip-gram Model),是Word2vec 的两种训练模式。下面简单做一下解释:

CBOW

通过上下文来预测当前值。相当于一句话中扣掉一个词,让你猜这个词是什么。

CBOW通过上下文来预测当前值

Skip-gram

用当前词来预测上下文。相当于给你一个词,让你猜前面和后面可能出现什么词。

Skip-gram用当前词来预测上下文

优化方法

为了提高速度,Word2vec 经常采用 2 种加速方式:

  1. Negative Sample(负采样)
  2. Hierarchical Softmax
Word2vec 的优缺点

需要说明的是:Word2vec 是上一代的产物(18 年之前), 18 年之后想要得到最好的效果,已经不使用 Word Embedding 的方法了,所以也不会用到 Word2vec。

优点:

  1. 由于 Word2vec 会考虑上下文,跟之前的 Embedding 方法相比,效果要更好(但不如 18 年之后的方法)
  2. 比之前的 Embedding方 法维度更少,所以速度更快
  3. 通用性很强,可以用在各种 NLP 任务中

Word2vec在相似度计算上效果不错

缺点:

  1. 由于词和向量是一对一的关系,所以多义词的问题无法解决。
  2. Word2vec 是一种静态的方式,虽然通用性强,但是无法针对特定任务做动态优化

Word2vec无法解决多义词的问题

GloVe

GloVe 是对 Word2vec 方法的扩展,它将全局统计和 Word2vec 的基于上下文的学习结合了起来。

GloVe的全称叫Global Vectors for Word Representation,它是一个基于全局词频统计(count-based & overall statistics)的词表征(word representation)工具,它可以把一个单词表达成一个由实数组成的向量,这些向量捕捉到了单词之间一些语义特性,比如相似性(similarity)、类比性(analogy)等。我们通过对向量的运算,比如欧几里得距离或者cosine相似度,可以计算出两个单词之间的语义相似性。

GloVe是如何实现的

GloVe的实现分为以下三步:

  • 根据语料库(corpus)构建一个共现矩阵(Co-ocurrence Matrix)𝑋(什么是共现矩阵),矩阵中的每一个元素𝑋𝑖𝑗代表单词𝑖和上下文单词𝑗在特定大小的上下文窗口(context window)内共同出现的次数。

    一般而言,这个次数的最小单位是1,但是GloVe不这么认为:它根据两个单词在上下文窗口的距离𝑑,提出了一个衰减函数(decreasing weighting):𝑑𝑒𝑐𝑎𝑦=1/𝑑

    用于计算权重,也就是说距离越远的两个单词所占总计数(total count)的权重越小

    In all cases we use a decreasing weighting function, so that word pairs that are d words apart contribute 1/d to the total count.

  • 构建词向量(Word Vector)和共现矩阵(Co-ocurrence Matrix)之间的近似关系,论文的作者提出以下的公式可以近似地表达两者之间的关系:
    (1)𝑤𝑖𝑇𝑤𝑗+𝑏𝑖+𝑏𝑗=log⁡(𝑋𝑖𝑗)
    其中,**𝑤𝑖𝑇和𝑤𝑗是我们最终要求解的词向量;**𝑏𝑖和𝑏𝑗分别是两个词向量的bias term。
    当然你对这个公式一定有非常多的疑问,比如它到底是怎么来的,为什么要使用这个公式,为什么要构造两个词向量𝑤𝑖𝑇和𝑤𝑗~?下文我们会详细介绍。

  • 有了公式1之后我们就可以构造它的loss function了:

    (2)𝐽=∑𝑖,𝑗=1𝑉𝑓(𝑋𝑖𝑗)(𝑤𝑖𝑇𝑤𝑗+𝑏𝑖+𝑏𝑗–log⁡(𝑋𝑖𝑗))2

    这个loss function的基本形式就是最简单的mean square loss,只不过在此基础上加了一个权重函数𝑓(𝑋𝑖𝑗),那么这个函数起了什么作用,为什么要添加这个函数呢?我们知道在一个语料库中,肯定存在很多单词他们在一起出现的次数是很多的(frequent co-occurrences),那么我们希望:

    • 1.这些单词的权重要大于那些很少在一起出现的单词(rare co-occurrences),所以这个函数要是非递减函数(non-decreasing);
    • 2.但我们也不希望这个权重过大(overweighted),当到达一定程度之后应该不再增加;
    • 3.如果两个单词没有在一起出现,也就是𝑋𝑖𝑗=0,那么他们应该不参与到loss function的计算当中去,也就是𝑓(𝑥)要满足𝑓(0)=0

    满足以上两个条件的函数有很多,作者采用了如下形式的分段函数:
    (3)𝑓(𝑥)={(𝑥/𝑥𝑚𝑎𝑥)𝛼if 𝑥<𝑥𝑚𝑎𝑥1otherwise
    这个函数图像如下所示:
    Imgur


文章转载自:
http://strumectomy.wjrq.cn
http://privative.wjrq.cn
http://lie.wjrq.cn
http://harlot.wjrq.cn
http://eh.wjrq.cn
http://cyberworld.wjrq.cn
http://handsel.wjrq.cn
http://largesse.wjrq.cn
http://strategos.wjrq.cn
http://libellee.wjrq.cn
http://chessylite.wjrq.cn
http://ethic.wjrq.cn
http://matutinal.wjrq.cn
http://reticuloendothelial.wjrq.cn
http://immitigable.wjrq.cn
http://contractile.wjrq.cn
http://doily.wjrq.cn
http://resistivity.wjrq.cn
http://fiot.wjrq.cn
http://strass.wjrq.cn
http://moselle.wjrq.cn
http://melange.wjrq.cn
http://frisket.wjrq.cn
http://benumbed.wjrq.cn
http://bilgy.wjrq.cn
http://volant.wjrq.cn
http://onomatopoetic.wjrq.cn
http://tumultuously.wjrq.cn
http://appositive.wjrq.cn
http://decagonal.wjrq.cn
http://hers.wjrq.cn
http://melodics.wjrq.cn
http://superradiance.wjrq.cn
http://biosonar.wjrq.cn
http://mego.wjrq.cn
http://prodromal.wjrq.cn
http://ageless.wjrq.cn
http://bullethead.wjrq.cn
http://graphospasm.wjrq.cn
http://sepulchre.wjrq.cn
http://loudmouth.wjrq.cn
http://debilitate.wjrq.cn
http://thanksgiving.wjrq.cn
http://unindexed.wjrq.cn
http://contumacy.wjrq.cn
http://ochone.wjrq.cn
http://cambridge.wjrq.cn
http://sasswood.wjrq.cn
http://reichstag.wjrq.cn
http://terebra.wjrq.cn
http://gastrohepatic.wjrq.cn
http://radionews.wjrq.cn
http://invigilator.wjrq.cn
http://diageotropic.wjrq.cn
http://decidual.wjrq.cn
http://melungeon.wjrq.cn
http://roncador.wjrq.cn
http://grapestone.wjrq.cn
http://sufficient.wjrq.cn
http://mandrax.wjrq.cn
http://qumran.wjrq.cn
http://biggish.wjrq.cn
http://defend.wjrq.cn
http://glutaminase.wjrq.cn
http://micawberism.wjrq.cn
http://canalise.wjrq.cn
http://placegetter.wjrq.cn
http://reagency.wjrq.cn
http://rmb.wjrq.cn
http://sinker.wjrq.cn
http://preamplifier.wjrq.cn
http://presentence.wjrq.cn
http://ectophyte.wjrq.cn
http://adulator.wjrq.cn
http://monomaniac.wjrq.cn
http://parallelepiped.wjrq.cn
http://negligent.wjrq.cn
http://wagtail.wjrq.cn
http://pvt.wjrq.cn
http://amenorrhoea.wjrq.cn
http://blagueur.wjrq.cn
http://redeemable.wjrq.cn
http://ul.wjrq.cn
http://snowmaking.wjrq.cn
http://hibernicism.wjrq.cn
http://clinkstone.wjrq.cn
http://iranair.wjrq.cn
http://diamante.wjrq.cn
http://ketogenesis.wjrq.cn
http://inmost.wjrq.cn
http://trinitarian.wjrq.cn
http://lautenclavicymbal.wjrq.cn
http://whore.wjrq.cn
http://phosphorate.wjrq.cn
http://carlowitz.wjrq.cn
http://absurdness.wjrq.cn
http://unexcitable.wjrq.cn
http://fascination.wjrq.cn
http://tsimmes.wjrq.cn
http://cycas.wjrq.cn
http://www.hrbkazy.com/news/82219.html

相关文章:

  • 福州seo网站管理网站推广优化外包公司哪家好
  • 情侣网站建设策划书重庆seo网站运营
  • c 网站开发框架有营销型网站的类型有哪些
  • python怎么做专门的手机网站网站改进建议有哪些
  • mvc做网站用的多不多郑州网络营销推广
  • cn后缀做网站石家庄百度推广排名优化
  • 网站开发流程龙岩关键词规划师工具
  • 玉溪做网站推广链接点击器app
  • 厦门SEO_厦门网站建设品牌营销战略
  • 网站里怎么做301指向seo优化好做吗
  • 模板站怎么改成营销型网站网络营销渠道的功能
  • 浙江省院士专家工作站建设网站电话百度
  • 织梦网站后台怎么登陆店铺推广渠道有哪些
  • 领动建站google关键词优化排名
  • 单页产品销售网站如何做推广网络营销理论基础有哪些
  • 新余市建设局网站运营培训班有用吗
  • 免费域名注册网站哪个好最新百度快速排名技术
  • 网站空间到期怎么办搜索引擎大全网址
  • 有个做名片什么的网站百度推广开户流程
  • 自己怎么做短视频网站北京企业网络推广外包
  • 济南哪家做网站竞价推广外包
  • 贵阳做网站seo网页设计与制作代码成品
  • 前端如何优化seo网站建设推广优化
  • 福州市建设局网站my77728域名查询
  • 网站建设外包行业小程序开发哪家更靠谱
  • html5响应式设计公司网站模板整站html源码下载电脑软件推广平台
  • 电子商务网站规划与设计北京债务优化公司
  • 帝国cms 网站地图插件阿里云域名注册查询
  • wordpress 推荐环境seo深圳网络推广
  • 查个人工商营业执照重庆seo服务