ELMO,BERT,GPT的原理和用法

2021-10-25 17:58:12 字數 1339 閱讀 5008

李巨集毅-elmo, bert, gpt講解: 李巨集毅-elmo, bert, gpt講解

在elmo之前word2vec是靜態的embdding,靜態embedding的特點是同乙個詞,在不通語境下是同乙個embedding。然而這不符合語言學的特點,例如:「太陽就是日」和「我日你大爺」。很明顯兩個「日」表達的意思並不相同,但是如果使用word2vec做靜態embedding,那麼神經網路看到的「日」是同樣的語意。於是就延伸出帶有上下文的embedding(contextualized word embedding)。這種embeding可以保證同乙個字在不同的語境下有不同的embeding。而本文介紹的三個網路都是contextualized word embedding

簡單來說就就是乙個自回歸的雙向rnn,其中隱含層的輸入被當做詞的embedding

elmo在使用時一般可以取出多個隱含層的輸出加權做為該詞的embedding

具體權重可以由下游任務去學習得到

bert實際上使用了transformer的encoder作為編碼器,使用大量文字進行預訓練

在訓練時主要解兩個任務:

bert是一種自編碼模型

簡單的分成4中情況:

任務例項

下游任務用法

句子分類

句子情感分析

下游任務直接使用cls標記的embedding

序列標註

詞性標註,ner

下游任務使用每個詞輸出的embedding

兩句話分析關係

句子相似度

下游任務直接使用cls標記的embedding

squad

閱讀理解

見下圖

黃,藍向量分別代指起始和結束位置。

gpt實際上使用了transformer的decoder作為編碼器,使用大量文字進行預訓練

自回歸的language model

不開源

RPC原理和通訊原理

一次完整的 rpc呼叫流程 同步呼叫,非同步另說 如下 1 服務消費方 client 呼叫以本地呼叫方式呼叫服務 2 client stub 接收到呼叫後負責將方法 引數等組裝成能夠進行網路傳輸的訊息體 3 client stub 找到服務位址,並將訊息傳送到服務端 4 server stub 收到...

加法原理和乘法原理

設事件a有m種產生方式,事件b有n種產生方式,則當a和b的產生方式不重疊時,事件a或b之一 有m n種產生方式。可推廣多個事件 設事件a有m種產生方式,事件b有n種產生方式,則當a和b的產生方式彼此獨立時,事件a與b有m n種產生方式。無論事件a採用何種方式產生,都不影響事件b。可推廣多個事件 例1...

va start va end 的使用和原理

1 當無法列出傳遞函式的所有實參的型別和數目時,可用省略號指定參數列 void foo void foo parm list,2 函式引數的傳遞原理 函式引數是以資料結構 棧的形式訪問,從右至左入棧.eg 先介紹一下可變參數列的呼叫形式以及原理 首先是引數的記憶體存放格式 引數存放在記憶體的堆疊段中...