【NLP】中文情感分类单标签
章節
背景介紹
預處理
完整的 GitHub 項目代碼地址:
https://github.com/sherlcok314159/ML/blob/main/nlp/practice/sentiment.md
背景介紹
這次的任務是中文的一個評論情感去向分類:
每一行一共有三個部分,第一個是索引,無所謂;第二個是評論具體內容;第三個是標簽,由0,1,2組成,1代表很好,2是負面評論,0應該是情感取向中立。
數據預處理
bert模型是可以通用的,但是不同數據需要通過預處理來達到滿足bert輸入的標準才行。
首先,我們創造一個讀入自己數據的類,名為MyDataProcessor。其實,這個可以借鑒一下谷歌寫好的例子,比如說MrpcProcessor。
首先將DataProcessor類復制粘貼一下,然后命名為MyDataProcessor,別忘了繼承一下DataProcessor。
接下來我們以get_train_examples為例來簡單介紹一下如何讀入自己的數據。
第一步我們需要讀取文件進來,這里需要注意的是中文要額外加一個utf-8編碼。
讀取好之后,這里模仿創建train_data為空列表,索引值為0。
代碼主體跟其他的差不多,有區別的是我們這里并沒有用DataProcessor的_read_tsv方法,所以文件分割部分我們得自己寫。同時因為中文每行結束會有換行符("\n"),需要換為空白。
至于dev和test數據集處理方式大同小異,只需要將名字換一下,這里不多贅述,這里放了處理訓練集的完整函數。
然后get_labels方法,里面寫具體的labels,這里是0,1,2,那么就是0,1,2,注意不要忘了帶上英文引號就行。最重要的是去main(_)方法下面添加自己定義的數據處理類別
模型去bert官方下載中文的預訓練模型,其他的對著改改就好,相信看過我的文本分類(https://github.com/sherlcok314159/ML/blob/main/nlp/tasks/text.md)的剩下的都不需要多說。跑出來的結果如下,我用的是Tesla K80,白嫖Google Colab的,用時1h17min47s。
往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載機器學習的數學基礎專輯溫州大學《機器學習課程》視頻 本站qq群851320808,加入微信群請掃碼:
總結
以上是生活随笔為你收集整理的【NLP】中文情感分类单标签的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【NLP】5 分钟理解百度 ERNIE
- 下一篇: 猎豹浏览器禁止跟踪怎么开启 禁止跟踪功能