ELMO理解

背景

对于13年的word2vec解决了多词一义的问题(即对于意思相近的词,词向量语义空间相似度高),但是对于一词多义问题并没有完美解决。相对于以前的word2vec或GLoVe方法,2018年的ELMo(Embeddings from Language Models,嵌入语言模型)以深度Bi-LSTM为基础,动态的学习词语的向量表示(即在不同语境下,同一词语对应不同词向量表示,解决一词多义。主要用于生成词向量,需要大量语料进行预训练)。ELMo词嵌入方法在下列几种NLP问题中能有效生成最先进(SOAT)的结果:

在这里插入图片描述

思想来源

在这里插入图片描述

核心思想:1. 以LSTM为基本单元;2. 核心思想起源于深度学习中的层次表示。其中LSTM有专门笔记进行理解,不赘述。下面讲述如何起源于深度学习的层次表示。

我们知道,在CV领域,通过卷积层提取图片特征,随着卷积层的层数增加,学习到不同层级的特征,所提取到的图像特征越来越抽象化、全局化,更能代表图像所表示的内容,如下图:

在这里插入图片描述

那么自然而然就会想到,对于NLP会不会有层次化的特征?如果有那应该如何提取、表示?

在这里插入图片描述

一般认为对于NLP问题,对于提取语言特征:浅层提取句法特征(语法树特征)、深层提取在语境中的语义特征。

ELMo网络结构

如下图:

在这里插入图片描述

ELMo的网络结构是双向双层LSTM,其中的每一层都包含前向和后向两个LSTM层,

l 图中的结构使用字符级卷积神经网络(convolutional neural
network, CNN)来将文本中的词转换成原始词向量(raw word vector),当然也可以使用其他方法

l 前向迭代中包含了该词以及该词之前的一些词汇或语境的信息

l 后向迭代中包含了该词之后的信息

l 这两种迭代的信息组成了中间词向量(intermediate
word vector)

l 这些中间词向量被输入到模型的下一层

l 最终表示(ELMo)是原始词向量和两个中间词向量的加权和

原理

在这里插入图片描述
在这里插入图片描述

优点

  1. ELMo的假设前提一个词的词向量不应该是固定的,所以在一词多意方面ELMo的效果一定比word2vec要好。

  2. word2vec的学习词向量的过程是通过中心词的上下窗口去学习,学习的范围太小了,而ELMo在学习语言模型的时候是从整个语料库去学习的,而后再通过语言模型生成的词向量就相当于基于整个语料库学习的词向量,更加准确代表一个词的意思。

  3. ELMo还有一个优势,就是它建立语言模型的时候,可以运用非任务的超大语料库去学习,一旦学习好了,可以平行的运用到相似问题。

然⽽,ELMo本身也存在⼀一些问题,这也是之后为什什么出现
Self-Attention, Transformer等技术被提出的原因。

实例

一般用法:先利用大型语料进行预训练(可以直接下载训练好的),再利用下游语料进行微调,然后在进行下有任务。下面网址提供一个tensorflow版本的实例:

https://zhuanlan.zhihu.com/p/107163676?utm_source=wechat_session&utm_medium=social&utm_oi=1121841014150668288

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值