Bert需要理解的一些內(nèi)容

更多來自于GitHub:Reflection_Summary.

Bert的雙向體現(xiàn)在什么地方?

mask+attention往声,mask的word結合全部其他encoder word的信息

Bert的是怎樣實現(xiàn)mask構造的挪挤?

  • MLM:將完整句子中的部分字mask,預測該mask詞
  • NSP:為每個訓練前的例子選擇句子 A 和 B 時皿伺,50% 的情況下 B 是真的在 A 后面的下一個句子滋捶, 50% 的情況下是來自語料庫的隨機句子,進行二分預測是否為真實下一句

在數(shù)據(jù)中隨機選擇 15% 的標記疟丙,其中80%被換位[mask]颖侄,10%不變、10%隨機替換其他單詞享郊,這樣做的原因是什么览祖?

  • mask只會出現(xiàn)在構造句子中,當真實場景下是不會出現(xiàn)mask的拂蝎,全mask不match句型了
  • 隨機替換也幫助訓練修正了[unused]和[UNK]
  • 強迫文本記憶上下文信息

為什么BERT有3個嵌入層穴墅,它們都是如何實現(xiàn)的?

  • input_id是語義表達温自,和傳統(tǒng)的w2v一樣玄货,方法也一樣的lookup
  • segment_id是輔助BERT區(qū)別句子對中的兩個句子的向量表示,從[1,embedding_size]里面lookup
  • position_id是為了獲取文本天生的有序信息悼泌,否則就和傳統(tǒng)詞袋模型一樣了松捉,從[511,embedding_size]里面lookup

bert的損失函數(shù)?

  • MLM:在 encoder 的輸出上添加一個分類層,用嵌入矩陣乘以輸出向量馆里,將其轉(zhuǎn)換為詞匯的維度,用 softmax 計算mask中每個單詞的概率
  • NSP:用一個簡單的分類層將 [CLS] 標記的輸出變換為 2×1 形狀的向量,用 softmax 計算 IsNextSequence 的概率
  • MLM+NSP即為最后的損失

手寫一個multi-head attention隘世?

tf.multal(tf.nn.softmax(tf.multiply(tf.multal(q,k,transpose_b=True),1/math.sqrt(float(size_per_head)))),v)

長文本預測如何構造Tokens?

  • head-only:保存前 510 個 token (留兩個位置給 [CLS] 和 [SEP] )
  • tail-only:保存最后 510 個token
  • head + tail :選擇前128個 token 和最后382個 token(文本在800以內(nèi))或者前256個token+后254個token(文本大于800tokens)

你用過什么模塊鸠踪?bert流程是怎么樣的?

  • modeling.py
  • 首先定義處理好輸入的tokens的對應的id作為input_id,因為不是訓練所以input_mask和segment_id都是采取默認的1即可
  • 在通過embedding_lookup把input_id向量化营密,如果存在句子之間的位置差異則需要對segment_id進行處理,否則無操作;再進行position_embedding操作
  • 進入Transform模塊痢虹,后循環(huán)調(diào)用transformer的前向過程,次數(shù)為隱藏層個數(shù)主儡,每次前向過程都包含self_attention_layer奖唯、add_and_norm、feed_forward和add_and_norm四個步驟
  • 輸出結果為句向量則取[cls]對應的向量(需要處理成embedding_size)丰捷,否則也可以取最后一層的輸出作為每個詞的向量組合all_encoder_layers[-1]

知道分詞模塊:FullTokenizer做了哪些事情么寂汇?

  • BasicTokenizer:根據(jù)空格等進行普通的分詞
    • 包括了一些預處理的方法:去除無意義詞瓢阴,跳過'\t'這些詞,unicode變換健无,中文字符篩選等等
  • WordpieceTokenizer:前者的結果再細粒度的切分為WordPiece
    • 中文不處理,因為有詞綴一說:解決OOV

Bert中如何獲得詞意和句意液斜?

  • get_pooled_out代表了涵蓋了整條語句的信息
  • get_sentence_out代表了這個獲取每個token的output 輸出,用的是cls向量

源碼中Attention后實際的流程是如何的少漆?

  • Transform模塊中:在殘差連接之前,對output_layer進行了dense+dropout后再合并input_layer進行的layer_norm得到的attention_output
  • 所有attention_output得到并合并后示损,也是先進行了全連接,而后再進行了dense+dropout再合并的attention_output之后才進行l(wèi)ayer_norm得到最終的layer_output

為什么要在Attention后使用殘差結構始鱼?

殘差結構能夠很好的消除層數(shù)加深所帶來的信息損失問題

平時用官方Bert包么脆贵?耗時怎么樣医清?

  • 第三方:bert_serving
  • 官方:bert_base
  • 耗時:64GTesla卖氨,64max_seq_length,80-90doc/s
    • 在線預測只能一條一條的入?yún)啬澹瑢嶋H上在可承受的計算量內(nèi)batch越大整體的計算性能性價比越高

你覺得BERT比普通LM的新穎點系吭?

  • mask機制
  • next_sentence_predict機制

elmo、GPT村斟、bert三者之間有什么區(qū)別抛猫?

  • 特征提取器:elmo采用LSTM進行提取孩灯,GPT和bert則采用Transformer進行提取。很多任務表明Transformer特征提取能力強于LSTM峰档,elmo采用1層靜態(tài)向量+2層LSTM,多層提取能力有限掀亩,而GPT和bert中的Transformer可采用多層欢顷,并行計算能力強。
  • 單/雙向語言模型:GPT采用單向語言模型抬驴,elmo和bert采用雙向語言模型。但是elmo實際上是兩個單向語言模型(方向相反)的拼接布持,這種融合特征的能力比bert一體化融合特征方式弱。
  • GPT和bert都采用Transformer按傅,Transformer是encoder-decoder結構胧卤,GPT的單向語言模型采用decoder部分,decoder的部分見到的都是不完整的句子灌侣;bert的雙向語言模型則采用encoder部分,采用了完整句子
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末牛柒,一起剝皮案震驚了整個濱河市痊乾,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌哪审,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件滴须,死亡現(xiàn)場離奇詭異,居然都是意外死亡痛侍,警方通過查閱死者的電腦和手機魔市,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來待德,“玉大人,你說我怎么就攤上這事绘闷〗咸常” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵燎潮,是天一觀的道長扼倘。 經(jīng)常有香客問我,道長爪喘,這世上最難降的妖魔是什么纠拔? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮稠诲,結果婚禮上,老公的妹妹穿的比我還像新娘略水。我一直安慰自己劝萤,他們只是感情好,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布跨释。 她就那樣靜靜地躺著胸私,像睡著了一般鳖谈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上五续,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天龄恋,我揣著相機與錄音,去河邊找鬼郭毕。 笑死,一個胖子當著我的面吹牛扳肛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播挖息,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼兽肤,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了电禀?” 一聲冷哼從身側響起笤休,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎店雅,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腋么,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡亥揖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年圣勒,在試婚紗的時候發(fā)現(xiàn)自己被綠了摧扇。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡吁峻,死狀恐怖在张,靈堂內(nèi)的尸體忽然破棺而出用含,到底是詐尸還是另有隱情帮匾,我是刑警寧澤,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布缸夹,位于F島的核電站螺句,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蛇尚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一披摄、第九天 我趴在偏房一處隱蔽的房頂上張望勇凭。 院中可真熱鬧,春花似錦虾标、人聲如沸灌砖。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽库继。三九已至,卻和暖如春宪萄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拜英。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工居凶, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留虫给,地道東北人侠碧。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像棋蚌,于是被迫代替她去往敵國和親挨队。 傳聞我的和親對象是個殘疾皇子谷暮,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容