- Transformer自然語言處理實戰:使用Hugging Face Transformers庫構建NLP應用
- (澳)路易斯·湯斯頓等
- 1363字
- 2024-05-23 17:22:20
1.3 NLP的遷移學習
如今,計算機視覺的常見做法是使用遷移學習,即在一項任務上訓練像ResNet這樣的卷積神經網絡,然后在新任務上對其進行適配或微調。遷移學習允許網絡利用從原始任務中學到的知識。在架構上,這是指將模型拆分為主體和頭,其中頭是指針對任務的網絡。在訓練期間,主體學習來源于領域的廣泛特征,并將學習到的權重用于初始化新任務的新模型[8]。與傳統的監督學習相比,這種方法通常會產生高質量的模型,這些模型在各種下游任務中效果更佳,并且使用的標注數據更少。這兩種方法的組合如圖1-7所示。

圖1-7:傳統監督學習(左)和遷移學習(右)的比較
在計算機視覺中,模型首先在包含數百萬張圖像的ImageNet(https://image-net.org)等大規模數據集上進行訓練。這個過程稱為預訓練,其主要目的是向模型傳授圖像的基本特征,例如邊或顏色。然后,這些預訓練模型可以在下游任務上進行微調,例如使用相對較少的標注示例(通常每個類幾百個)對花種進行分類。微調模型通常比在相同數量的標注數據上從頭開始訓練的監督模型具有更高的準確率。
盡管遷移學習成為計算機視覺的標準方法,但多年來,人們并不清楚NLP的類似預訓練過程是怎么樣的。從而導致NLP應用程序通常需要大量的標注數據才能實現高性能。即便如此,這種性能也無法與視覺領域的成就相提并論。
在2017年和2018年,幾個研究小組提出了新的方法,最終令遷移學習也能成功應用到NLP領域。這種方法始于OpenAI研究人員的研究,他們通過使用從無監督預訓練中汲取的特征在情感分類任務上獲得了出色的性能[9]。緊隨其后的是ULMFiT,它使用預訓練LSTM模型構建了一個可以適用于各種任務的通用框架[10]。
如圖1-8所示,ULMFiT包括以下三個主要步驟:
預訓練
最初的訓練目標非常簡單:根據前面的單詞預測下一個單詞。這類任務稱為語言建模,所生成的模型稱為語言模型。這種方法的優雅之處在于不需要標注數據,并且可以使用來自Wikipedia等來源的大量可用文本[11]。
領域適配
在大規模語料庫上進行預訓練得出語言模型之后,下一步就是將其適配于業務領域語料庫(例如,從Wikipedia遷移到電影評論的IMDb語料庫,如圖1-8所示)。這一階段仍然使用語言建模方法,但現在模型必須預測目標語料庫中的下一個單詞。
微調
這一步使用目標任務的分類層對語言模型進行微調(例如,對圖1-8中的電影評論的情感進行分類)。

圖1-8:ULMFiT工作流程(由Jeremy Howard提供)
通過引入一個可行的NLP預訓練和遷移學習框架,ULMFiT填補了令Transformer起飛的缺失部分。2018年,發布了兩類將自注意力與遷移學習相結合的Transformer模型:
GPT
僅使用Transformer架構的解碼器部分,以及與ULMFiT相同的語言建模方法。GPT在BookCorpus1[12]上進行預訓練,該語料庫由7000本來自冒險、幻想和浪漫等各種流派的圖書組成。
BERT
僅使用Transformer架構的編碼器部分,以及一種稱為掩碼語言建模的特殊形式的語言建模。掩碼語言建模的目的是預測文本中隨機掩碼的單詞。如,給定一個句子,如“I looked at my[MASK]and saw that[MASK]was late.”,該模型需要預測[MASK]所掩碼的單詞最有可能的候選者。BERT在BookCorpus和英語Wikipedia上進行預訓練。
GPT和BERT在各種NLP基準測試中創下新高,從而開創了Transformer時代。
但是由于各個研究實驗室在不同的框架(PyTorch或TensorFlow)上發布模型,而這些模型無法兼容于其他框架,NLP從業者將這些模型移植到他們自己的應用程序中經常會遇到困難。于是Hugging FaceTransformers庫(https://oreil.ly/Z79jF)這個能夠跨50多個架構的統一API應運而生。該庫催化了Transformer研究的爆炸式增長,并迅速滲透到NLP從業者中,從而可以輕松地將Transformer模型集成到當今的許多實際應用中。接下來我們看看這個庫吧!
- EJB 3.0 Database Persistence with Oracle Fusion Middleware 11g: LITE
- AJAX and PHP: Building Modern Web Applications 2nd Edition
- Microsoft SharePoint 2010 Administration Cookbook
- 新編三維CAD習題集
- Adobe創意大學After Effects產品專家認證標準教材(CS6修訂版)
- 剪映視頻后期剪輯零基礎入門到精通
- BackTrack 5 Wireless Penetration Testing Beginner's Guide
- Capture One 22 Pro高級實戰教程
- UI功夫:PC和APP界面設計全流程圖解
- 陌上花開:古風CG插畫繪制技法精解(花卉篇)
- Microsoft Azure: Enterprise Application Development
- Elasticsearch數據搜索與分析實戰
- HBase企業應用開發實戰
- 中文版Photoshop 2020基礎培訓教程
- AutoCAD 2010 機械設計與制作技能基礎教程