赞
踩
自然语言处理(Natural Language Processing, NLP)是人工智能领域的一个分支,旨在让计算机能够理解、处理和生成人类语言。随着大数据时代的到来和信息技术的快速发展,自然语言处理技术在各个领域都有广泛的应用,如机器翻译、智能问答、情感分析、文本摘要等。
传统的自然语言处理方法主要依赖于规则和统计模型,但这些方法往往需要大量的特征工程,并且难以处理复杂的语义信息。而深度学习凭借其强大的自动特征提取能力和建模能力,为自然语言处理任务带来了突破性的进展。
词嵌入是将词映射为连续的低维实数向量的方法,这些向量能够捕捉到词与词之间的语义和句法关系。经典的词嵌入模型包括Word2Vec、GloVe等。
编码器-解码器框架是一种广泛应用于序列到序列(Sequence-to-Sequence)任务(如机器翻译、文本摘要等)的神经网络架构。其中编码器将输入序列编码为上下文向量,解码器根据上下文向量生成目标序列。
注意力机制允许模型在编码输入序列和解码生成输出序列时,专注于输入序列中的关键部分。它大大提高了模型的性能,尤其是在处理长序列时。
Transformer是一种全新的基于注意力机制的序列到序列模型,不再依赖递归和卷积操作。它的核心思想是multi-head self-attention,极大地提升了并行计算能力。
预训练语言模型(PLM)通过在大型无标注语料库上进行自监督学习,获得通用的语言表示能力。代表性模型有BERT、GPT等。PLM可用于下游NLP任务的微调。
Word2Vec包括CBOW(Continuous Bag-of-Words)和Skip-gram两种模型:
两种模型都采用神经网络和负采样来加速训练。
J = 1 T ∑ t = 1 T ∑ − m ≤ j ≤ m , j ≠ 0 log p ( w t + j ∣ w t ) J = \frac{1}{T}\sum_{t=1}^{T}\sum_{-m \leq j \leq m, j \neq 0} \log p(w_{t+j}|w_t) J=T1t=1∑T−m≤j≤m,j=0∑logp(wt+j∣wt)
其中 J J J 为目标函数, T T T 为词汇表大小, p ( w t + j ∣ w t ) p(w_{t+j}|w_t) p(wt+j∣wt) 是基于 softmax 计算的条件概率。
GloVe(Global Vectors for Word Representation)基于词共现矩阵,最小化词向量与词共现概率之间的差异:
J = ∑ i , j = 1 V f ( X i j ) ( w i T w j ′ + b i + b j ′ − log X i j ) 2 J = \sum_{i,j=1}^{V}f(X_{ij})(w_i^Tw'_j + b_i + b'_j - \log X_{ij})^2 J=i,j=1∑Vf(Xij)(wiTwj′+bi+bj′−logXij)2
其中 V V V 为词汇量, X i j X_{ij} Xij 为词共现矩阵, f f f 为加权函数, w , w ′ w, w' w,w′ 分别为词和共现向量。
FastText将词视为子词(n-gram)序列,词向量由子词向量求和得到:
v ⃗ ( w ) = 1 ∣ G w ∣ ∑ g ∈ G w v ⃗ g \vec{v}(w) = \frac{1}{|G_w|}\sum_{g \in G_w}\vec{v}_g v (w)=∣Gw∣1g∈Gw∑v g
其中 G w G_w Gw 为词 w w w 的子词集合, v ⃗ g \vec{v}_g v g 为子词 g g g 的向量表示。
传统的序列到序列模型主要采用RNN(循环神经网络)作为编码器和解码器:
引入注意力机制的序列到序列模型:
α
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。