昌磊 王依倫 陳艷平
關鍵詞:BERT;文本分類;遷移學習
1 概述
隨著互聯(lián)網(wǎng)的發(fā)展越來越發(fā)達,教育領域也因教育信息化而發(fā)生了巨大變革,通過搜索引擎和在線答題平臺咨詢學習問題已逐漸成為學生及老師學習的一種方式[1]。在咨詢過程中,問答系統(tǒng)會對用戶提出問題的類別進行準確區(qū)分,如題目的學科或題目考查的知識點。知識點在教育教學過程中起著重要的作用,可對題庫根據(jù)知識點進行分類,然后根據(jù)學生的學習情況,有針對地將習題推薦給學生,老師也能根據(jù)學生的做題情況有針對地進行拔高訓練,為學生設計階段性學習方案,學生能更快速地掌握知識點,學習效率能得到快速提升。
傳統(tǒng)上,教師或教研人員需要人工判斷習題的題型,浪費時間和精力,而且過程十分消耗耐心。在設計建立試題庫,問答系統(tǒng)等場景下,就可以利用文本分類的方法對題目進行試題分類,即機器代替人工實現(xiàn)題型分類提高了教師的工作效率。同時也能使得試題和試卷的管理更高效而便捷,大大節(jié)省了教師的工作時間,便于教師有更多時間和精力致力于教學方法的研究,畢竟合理的教學方法也同樣影響著學生的成績。
題型分類屬于自然語言處理短文本分類任務,需要對相關文本進行處理,得到文本的向量化表示。近年來,深度學習方法漸漸興起,目前主要是采用詞嵌入的方式獲得文本的特征表示,如利用word2vec 模型學習文本中詞向量的表示,也可以用預訓練模型BERT得到文本的語義表示完成文本分類[2]。
基于轉換器的雙向編碼表征BERT是2018年由Google 推出的,在多項NLP 任務中取得了卓越的效果[3]。使用預訓練模型BERT,能夠解決一詞多義問題,而且對中文文本語義的獲取BERT 預訓練模型有更好的效果。對于不同的下游任務,BERT的結構可能會有不同的輕微變化。
2 相關研究
2.1Bert 模型
BERT模型是基于Transformer模型的一種雙向多頭自注意力編碼器組成的深層預訓練模型。雙向的意思是該模型能通過某些數(shù)據(jù)便可以獲取這個句子在上下文語義的功能[4]。BERT模型示意圖如圖1所示,可以很清楚地看到BERT采用了Transformer En? coder block進行連接,但舍棄了Decoder模塊, 這樣最終使其擁有了雙向編碼能力和強大的特征提取能力。
2.2 Transformer 和Attention 機制
多層Transformer 組裝成了Bert模型。而Atten? tion 機制又是Transformer中最關鍵的部分,它表示了各個詞語之間的聯(lián)系程度。Self-Attention就是一種可以考慮全局信息的機制。Multi-head Self-Attention 獲取輸入文本中每個不同的字基于不同題型的語義向量,然后進行線性組合,最終得到的特征向量和輸入向量長度相同,利用的就是不同的注意力機制。在Multi Head Self-Attention基礎上添加殘差連接和層歸一化及線性轉換。而Bert 模型就是由多個Trans?former Encoer堆疊起來得到的[5]。
3 基于BERT-CNN 的K12 教育題庫的題型分類模型
本文是基于K12教育題庫的題型多分類問題,采用基于樣本的遷移學習方法,其分類模型如圖3所示。
3.1 算法流程
本文提出一種基于BERT-CNN的K12教育題庫的題型分類模型,其具體的算法流程如下。
4 實驗結果及分析
4.1 實驗數(shù)據(jù)集
本文數(shù)據(jù)集采用K12教育題庫長文本20000個題目,根據(jù)對應的不同知識點,一共將文本分為6個類別,分別是:二次函數(shù)與反比例、三角函數(shù)、生理與健康、科學、設計及生物。每個題目的平均文本字符長度為20~30,訓練集、驗證集、測試集的比例為:8:1:1。
4.2 實驗環(huán)境
本次實驗編程軟件使用的是Pycharm 社區(qū)版,操作系統(tǒng)為Windows10,GPU 為NVIDIA RTX3060?;赑ython3.8,使用Anaconda 編程平臺,選擇Pytorch 作為深度學習框架。
4.3 參數(shù)設置
預訓練模型采用Google 發(fā)布的中文BERT-Base,基于64 個多頭自注意力機制和12層雙向Transfomer 編碼器對K12教育數(shù)據(jù)短文本進行動態(tài)字向量訓練。并根據(jù)數(shù)據(jù)集的特點微調BERT,以提升BERT 的下游任務的效果[7]。由于電腦顯存限制, batch _size設置為64,Epoch 設置為3, learning_rate 設置為3e-5,num_classes 表示類別總數(shù)設置為6。
4.4 實驗結果
本實驗使用“提前停止”技術,這可以更好地避免過擬合問題。對于文本分類的效果采用精確率(Preci? sion) 、召回率(Recall) 和F1值3個指標進行評價[8],實驗結果如表1所示。
5 結論
從表1可看出識別的標簽不同,評價體系得分也不同,所有標簽平均得分為0.95. 準確率也是0.95。
從實驗結果可以看出,該模型實現(xiàn)了K12教育題庫類中文文本的多分類,并且Bert- cnn在各項評測指標中的表現(xiàn)也令人滿意。但由于習題科目及知識點種類繁多,關系復雜,所以數(shù)據(jù)集的構造還需要煩瑣的工作,想要繼續(xù)提升準確性,還需要優(yōu)化數(shù)據(jù)集并優(yōu)化各種模型及參數(shù)。