0
本文作者: AI研習社-譯站 | 2019-03-21 10:04 |
本文為 AI 研習社編譯的技術(shù)博客,原標題 :
BERT Technology introduced in 3-minutes
作者 | Suleiman Khan, Ph.D.
翻譯 | 胡瑛皓、stone豪
校對 | 醬番梨 審核 | 約翰遜·李加薪 整理 | 立魚王
原文鏈接:
https://towardsdatascience.com/bert-technology-introduced-in-3-minutes-2c2f9968268c
由谷歌公司出品的用于自然語言理解的預訓練BERT算法,在許自然語言處理的任務表現(xiàn)上遠遠勝過了其他模型。
BERT算法的原理由兩部分組成,第一步,通過對大量未標注的語料進行非監(jiān)督的預訓練,來學習其中的表達法。其次,使用少量標記的訓練數(shù)據(jù)以監(jiān)督方式微調(diào)預訓練模型以進行各種監(jiān)督任務。預訓練機器學習模型已經(jīng)在各種領域取得了成功,包括圖像處理和自然語言處理(NLP)。
BERT的含義是Transformer的雙向編碼器表示。 它基于Transformer架構(gòu)(由Google于2017年發(fā)布,《Attention Is All You Need》)。 Transformer算法使用編碼-解碼器網(wǎng)絡,但是,由于BERT是預訓練模型,它僅使用編碼來學習輸入文本中的潛在表達。
Photo by Franki Chamaki on Unsplash
BERT將多個transformer編碼器堆疊在一起。tranformer基于著名的多頭注意模塊(multi-head attention)。 它在視覺和語言任務方面都取得了巨大成功。關于attention的回顧,請參考此處:
http://mlexplained.com/2017/12/29/attention-is-all-you-need-explained/
BERT卓越的性能基于兩點。 首先創(chuàng)新預訓練任務Masked Language Model (MLM)以及Next Sentence Prediction (NSP). 其次訓練BERT使用了大量數(shù)據(jù)和算力。
MLM使得BERT能夠從文本中進行雙向?qū)W習,也就是說這種方式允許模型從單詞的前后單詞中學習其上下文關系。此前的模型這是做不到的。此前最優(yōu)的算法稱為Generative Pre-training (GPT) 該方法采用了從左到右的訓練方式,另外ELMo 采用淺雙向?qū)W習(shallow bidirectionality)。
MLM預訓練任務將文本轉(zhuǎn)換為tokens,把token表示作為訓練的輸入和輸出。隨機取其中15%的token進行mask,具體來說就是在訓練輸入時隱藏,然后用目標函數(shù)預測出正確的token內(nèi)容。這種方式對比以往的訓練方式,以往方式采用單方向預測作為目標或采用從左到右及從右到左兩組(單方向)去近似雙向。NSP任務通過預測后一個句子是否應該接在前一句之后,從而使得BERT可以學習句子間的關系。訓練數(shù)據(jù)采用50%順序正確的句子對加上另外50%隨機選取的句子對。BERT同時訓練MLM和NSP這兩個目標。
BERT訓練使用了33億單詞以及25億維基百科和8億文本語料。訓練采用TPU, GPU,大致情況如下.
BERT訓練設備和時間 for BERT; 使用TPU數(shù)量和GPU估算.
Fine-tuning訓練采用了2.5K~392K 標注樣本。重要的是當訓練數(shù)據(jù)集超過100K,在多種超參數(shù)設置下模型顯示了其穩(wěn)健的性能。每個fine-tuning實驗采用單個TPU均在1小時內(nèi)完成,GPU上需要幾小時。
BERT在11項NLP任務中超越了最優(yōu)的算法。主要是3類任務,文本分類、文字蘊涵和問答。BERT在SQUAD和SWAG任務中,是第一個超過人類水平的算法!
BERT 論文中結(jié)果 https://arxiv.org/abs/1810.04805
BERT目前已開源: https://github.com/google-research/bert 分別用TensorFlow和Pytorch預訓練了104種語言。
模型可進行fine-tuned,然后用于多項NLP任務,諸如文本分類、文本相似度、問答系統(tǒng)、文本標記如詞性POS命名和實體識別NER等。當然預訓練BERT計算上相當昂貴,除非你采用TPU或類似Nvidia V100這樣的GPU。
BERT技術(shù)人員同時也放出了多語言模型,模型采用Wikipedia里的100多種語言。不過多語言BERT模型比單語言模型的性能要略低幾個百分點。
BERT在MLM任務中的mask策略對真實的單詞產(chǎn)生偏見。目前還未顯示這種偏見對訓練的影響。
[1] https://cloud.google.com/tpu/docs/deciding-pod-versus-tpu
[2] Assuming second generation TPU, 3rd generation is 8 times faster. https://en.wikipedia.org/wiki/Tensor_processing_unit
[3] http://timdettmers.com/2018/10/17/tpus-vs-gpus-for-transformers-bert/
想要繼續(xù)查看該篇文章相關鏈接和參考文獻?
點擊【三分鐘帶你讀懂 BERT】或長按下方地址:雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
https://ai.yanxishe.com/page/TextTranslation/1509
AI入門、大數(shù)據(jù)、機器學習免費教程
35本世界頂級原本教程限時開放,這類書單由知名數(shù)據(jù)科學網(wǎng)站 KDnuggets 的副主編,同時也是資深的數(shù)據(jù)科學家、深度學習技術(shù)愛好者的Matthew Mayo推薦,他在機器學習和數(shù)據(jù)科學領域具有豐富的科研和從業(yè)經(jīng)驗。
點擊鏈接即可獲?。?/span>https://ai.yanxishe.com/page/resourceDetail/417
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。