天天看點

Bert文本分類實踐(一):實作一個簡單的分類模型

文本分類是nlp中一個非常重要的任務,也是非常适合入坑nlp的第一個完整項目。雖然文本分類看似簡單,但裡面的門道好多好多,作者水準有限,隻能将平時用到的方法和trick在此做個記錄和分享,希望大家看過都能有所收獲,享受程式設計的樂趣。

Bert模型是Google在2018年10月釋出的語言表示模型,一經問世在NLP領域橫掃了11項任務的最優結果,可謂風頭一時無二。有關于Bert中transformer的模型細節,推薦看這篇。在此不做贅述。

Bert文本分類實踐(一):實作一個簡單的分類模型

​圖一:bert分類模型結構

Bert文本分類模型常見做法為将bert最後一層輸出的第一個token位置(CLS位置)當作句子的表示,後接全連接配接層進行分類。模型很簡單,我們直接看代碼!

測試單條樣本結果:

Bert文本分類實踐(一):實作一個簡單的分類模型

代碼連結:

jupyter版本:https://github.com/PouringRain/blog_code/blob/main/nlp/bert_classify.ipynb

py版本:https://github.com/PouringRain/blog_code/blob/main/nlp/bert_classify.py

喜歡的話,給萌新的github倉庫一顆小星星哦……^ _^