基于 Bert 論文構(gòu)建 Question-Answering 模型
訪問【W(wǎng)RITE-BUG數(shù)字空間】_[內(nèi)附完整源碼和文檔]
摘要 本文拜讀了提出 Bert 模型的論文,考慮了在 Bert 中算法模型的實現(xiàn).比較了 Bert 與其他如 Transformer、GPT 等熱門 NLP 模型.BERT 在概念上很簡單,在經(jīng)驗上也很強大。它推動了 11 項自然語言處理任務(wù)的最新技術(shù)成果,而這 11 項 NLP 任務(wù)可分類為四大自然語言處理下游任務(wù),本文聚焦分析實現(xiàn)一個簡單的問答任務(wù),使用了來自 BERT-large 的訓練集,測試數(shù)據(jù)集(作業(yè)四爬取的 wiki 數(shù)據(jù)集),測試結(jié)果令人滿意。
關(guān)鍵詞 Bert; Transformer; GPT; NLP; 問答任務(wù)
一、前言
由于本課設(shè)用的 BERT-large 真的巨巨巨巨大。有 24 層,1024 大小的 embedding,總共 340M 個參數(shù)!總的來說,它是 1.34GB。然而國內(nèi)下載實在太慢,故使用 Google Colab 提供的 jupyter 來運行相關(guān)代碼。
想做但沒有做出的:利用 bertviz(),一個 Transformer 模型中可視化注意力的工具,時間有些倉促,原本覺得能更好地展示 Bert 的運行過程,種種原因沒有細看。
可視化的替代方案:將文本語段中的開始詞和結(jié)束詞分別評分,然后將其可視化。對于簡短的文本有較好的效果。
數(shù)據(jù)集根據(jù)課設(shè),一個簡單聯(lián)動作業(yè)四的 wiki 數(shù)據(jù)集中的文本內(nèi)容(Demo),由于爬取的數(shù)據(jù)沒有答案標簽,因此只簡單判斷答案。
大規(guī)模數(shù)據(jù)集以及部分參考代碼來自的 HW7 問答,數(shù)據(jù)集(包括訓練集、驗證集和測試集[文章 + 問題 + 答案])。
二、論文的簡短介紹
涉及領(lǐng)域,前人工作等
本文主要涉及 NLP 的一種語言模型,之前已經(jīng)出現(xiàn)了【1】ELMo 和【2】GPT 這些較為強大的模型,ELMo 的特征提取器不是很先進,GPT 沒有使用雙向,這篇論文結(jié)合兩者的思想或做法,大大提升了最終效果。
2.1 中心思想
本論文文在前人研究基礎(chǔ)上,沿用了 pre-train 和 fine-tuning 結(jié)構(gòu)。使用雙向 transformer 結(jié)構(gòu)(不同于 ELMO 的雙向,而是"掩蔽語言模型"(MLM)),并加入 Next Sentence Prediction(NSP),在 11 個自然語言處理任務(wù)上獲得了新的最先進的結(jié)果。



