NLP学习-Task 4: Contextual Word Embeddings

本文介绍了Contextual Word Embeddings,重点讲解了ELMo和GPT模型。ELMo利用Bi-LSTM模型生成深度情境化词表征,适合语义理解和语法分析。GPT则采用预训练的Transformer结构,通过无监督学习和有监督微调适应各种NLP任务。这两种模型在NLP领域展现出强大的性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NLP学习

更新流程↓
Task 1: 简介和词向量Word Vectors
Task 2: 词向量和词义Word Senses
Task 3: 子词模型Subword Models
Task 4: Contextual Word Embeddings
Task 5: 大作业
日本人综艺感从昭和时代开始就这么强了吗?
今日份的舒适
常见餐桌礼仪


Contextual Word Embeddings




1. ELMo

  Allen实验室认为好的词表征应该同时兼顾两个问题:一是单词在语义和语法上的复杂特点;二是随着语言环境的改变,这些用法也应该随之变化
  为此,Allen实验室提出了deep contextualized word representation(深度情景化词表征)。这种算法的特点是每个词的表征都是整个输入语句的函数。

具体做法:

  1. 现在大语料上以 language model为目标训练处 Bi-LSTM模型,利用它产生词语的表征 (pre-trained biLM模型)。ELMo因此得名embedding from language model。
  2. 为了应用在下游NLP任务中,一般先利用下游任务的语料库(此时,忽略掉label)进行 language model的微调(fine tuning),这种微调相当于一种domain transfer
  3. 然后才是利用label的信息进行supervised learning

  ELMo表征是“深”的,就是说它们是biLM的所有层的内部表征的函数。这样做的好处是能够产生丰富的词语表征。高层的LSTM的状态可以捕捉词语意义中和语境相关的那方面的特征(比如可以用来做语义的消歧),而低层的LSTM可以找到语法方面的特征(比如可以做词性标注)。如果把它们结合在一起,在下游的NLP任务中会体现优势。

在这里插入图片描述



 1.1. Bidirectional language models

  ELMo顾名思义是从Language Models得来的embeddings,确切的说是来自于Bidirectional language models。具体可以表示为:
p ( t 1 , t 2 , . . . , t N ) = ∏ k = 1 N p ( t k ∣ t 1 , t 2 , . . . , t k − 1 ) 和 p ( t 1 , t 2 , . . . , t N ) = ∏ k = 1 N p ( t k ∣ t k + 1 , t k + 2 , . . . , t N ) p(t_1,t_2,...,t_N)=\prod_{k=1}^{N}p(t_k|t_1,t_2,...,t_{k-1})和p(t_1,t_2,...,t_N)=\prod_{k=1}^{N}p(t_k|t_{k+1},t_{k+2},...,t_N) p(t1,t2,...,tN)=k=1Np(tkt1,t2,...,tk1)p(t1,t2,...,tN)=k=1Np(tktk+1,tk+2,...,tN)

  这里 ( t 1 , t 2 , . . . , t N ) (t_1,t_2,...,t_N) (t1,t2,...,tN)的是一系列的tokens,作为语言模型可能有不同的表达方法,最经典的方法是利用多层的LSTM,ELMo的语言模型也采取了这种方式。所以这个Bidirectional LM由stacked bidirectional LSTM来表示。

  假设输入是 t o k e n token token的表示 x k L M x_k^{LM} xkLM。在每一个位置 k k k,每一层LSTM上都输出相应的context-dependent的表征 h ⃗ k , j L M \vec{h}_{k,j}^{LM} h k,jLM

embedding通常是指将高维的数据转换为低维度的表示形式的技术。在自然语言处理中,embeddings被用来表示文本、词语或句子的语义信息。其中,contextual embedding是一种可以根据上下文理解词语含义的方法,比如ELMo和BERT等模型。这些模型通过考虑词语的上下文关系,提供了更准确且具有语义信息的嵌入表示。 除了contextual embedding外,还有其他方法来生成embeddings。例如,引入外部语料库知识比如WordNet,并利用其提取出与未见词语义相似的词来生成未见词的嵌入表示。这些方法假设底层词汇资源已经覆盖了未见词,但这并不一定是真实情况。 总的来说,embedding是将大型稀疏矢量映射到低维空间的技术,以保留语义关系。通过使用嵌套,我们可以将复杂的数据表示转化为更简洁且有意义的表示形式,便于后续的分析和应用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [A Survey on Contextual Embeddings.pdf](https://download.csdn.net/download/wilosny518/13077711)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [自然语言处理中的embeddings](https://blog.csdn.net/u013596454/article/details/120544014)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [嵌套(Embeddings)](https://blog.csdn.net/qq_38382642/article/details/103177452)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值