詞向量
參考論文: Efficient Estimation of Word Representations in Vector Space
CBOW (Continuous Bag-of-Word): 挑一個要預測的詞,來學習這個詞前後文中詞語和預測詞的關係。
Skip-Gram: 使用文中的某個詞,然後預測這個詞周邊的詞。相比 CBOW 最大的不同,就是剔除掉了中間的那個 SUM 求和的過程,將詞向量求和的這個過程不太符合直觀的邏輯,而Skip-Gram沒有這個過程。
句向量
Seq2Seq Learning 參考論文: Sequence to Sequence Learning with Neural Networks
將一個 sequence 轉換成另一個 sequence。也就是用Encoder壓縮並提煉第一個sequence的資訊,然後用Decoder將這個資訊轉換成另一種語言或其他的表達形式。
In practice: Google's NMT System. 參考論文: Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation
CNN for NLP 參考論文:Convolutional Neural Networks for Sentence Classification
注意力
CNN Attention Neural Image Caption Generation 參考論文: Show, Attend and Tell: Neural Image Caption Generation with Visual Attention
Seq2Seq Attention Mechanism 參考論文:Effective Approaches to Attention-based Neural Machine Translation
NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE
Transformer 參考論文:Attention Is All You Need
Layer Normalization 參考論文:Layer Normalization
Other Normalization 參考論文:PowerNorm: Rethinking Batch Normalization in Transformers
RNN 與 attention 參考論文: Transformers are RNNs: Fast Autoregressive Transformers with Linear Attention
預訓練模型
ELMo 參考論文:Deep contextualized word representations
找出詞語放在句子中的意思。ELMo還是想用一個向量來表達詞語,不過這個詞語的向量會包含上下文的資訊。
ELMo的訓練:前向LSTM預測後文的資訊,後向LSTM預測前文的資訊。訓練一個順序閱讀者+一個逆序閱讀者,在下游任務的時候, 分別讓順序閱讀者和逆序閱讀者,提供他們從不同角度看到的資訊。
GPT 參考論文:Improving Language Understanding by Generative Pre-Training
Language Models are Unsupervised Multitask Learners
Language Models are Few-Shot Learners
用非監督的人類語言資料,訓練一個預訓練模型,然後拿著這個模型進行finetune, 基本上就可以讓你在其他任務上也表現出色。
BERT 參考論文:BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
BERT 和 GPT 還有 ELMo 是一個性質的東西。 它存在的意義是要變成一種預訓練模型,提供 NLP 中對句子的理解。ELMo 用了雙向 LSTM 作為句子資訊的提取器,同時還能表達詞語在句子中的不同含義;GPT 呢, 它是一種單向的語言模型,同樣也可以用 attention 的方式提取到更加豐富的語言意思資訊。