NLP中的數據增強


相關方法合集見:https://github.com/quincyliang/nlp-data-augmentation

較為簡單的數據增強的方法見論文:https://arxiv.org/pdf/1901.11196.pdf

論文中所使用的方法如下:

1. 同義詞替換(SR: Synonyms Replace):不考慮stopwords,在句子中隨機抽取n個詞,然后從同義詞詞典中隨機抽取同義詞,並進行替換。(同義詞其詞向量可能也更加接近,在使用詞向量的模型中不一定有用)

2. 隨機插入(RI: Randomly Insert):不考慮stopwords,隨機抽取一個詞,然后在該詞的同義詞集合中隨機選擇一個,插入原句子中的隨機位置。該過程可以重復n次。

3. 隨機交換(RS: Randomly Swap):句子中,隨機選擇兩個詞,位置交換。該過程可以重復n次。

4. 隨機刪除(RD: Randomly Delete):句子中的每個詞,以概率p隨機刪除。(類似於神經網絡中的dropout)

第一列是訓練集的大小,第三列是每個句子生成的新句子數,第二列是每一條語料中改動的詞所占的比例

相關實現見:https://github.com/zhanlaoban/eda_nlp_for_Chinese

還有些如打亂句子的順序,隨機進行Mask,相比於直接復制能夠加入一些噪聲,以防止過擬合

還有些通過神經網絡進行數據增強的方法,但是代價相對較高,同時效果也不一定會好。

相關討論見:https://www.zhihu.com/question/305256736?sort=created

不同的數據增強方式不能確切的說誰強誰弱,對於NLP任務而言,一切從數據出發,需要結合具體任務進行檢驗。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM