NLP資料增強方法

2021-09-02 23:29:44 字數 980 閱讀 4294

以下是一些針對文字的資料的增強方法:

隨機drop和shuffle

資料增強主要採取兩種方法,一種是 drop, 對於標題和描述中的字或詞,隨機的進行刪除,用空格代替。另一種是 shuffle, 即打亂詞序。

對於"如何評價 2017 知乎看山杯機器學習比賽?" 這個問題,使用 drop 對詞層面進行處理之後,可能變成"如何 2017 看山杯機器學習 「. 如果使用 shuffle 進行處理,資料就 可能變成"2017 機器學習?如何比賽知乎評價看山杯」。 資料 增強對於提公升訓練資料量,抑制模型過擬合等十分有效.

code:

同義詞替換

在這種方法中,我們隨機的選一些詞並用它們的同義詞來替換這些詞,例如,我們將句子「我非常喜歡這部電影」改為「我非常喜歡這個影片」,這樣句子仍具有相同的含義,很有可能具有相同的標籤。但這種方法對我的任務來說沒什麼用,因為同義詞具有非常相似的詞向量,因此模型會將這兩個句子當作相同的句子,而在實際上並沒有對資料集進行擴充。

回譯

例如,如果我們把「i like this movie very much」翻譯成俄語,就會得到「мне очень нравится этот фильм」,當我們再譯回英語就會得到「i really like this movie」。回譯的方法不僅有類似同義詞替換的能力,它還具有在保持原意的前提下增加或移除單詞並重新組織句子的能力。

文件裁剪

生成對抗網路

gan是深度學習領域中最令人興奮的最新進展之一,它們通常用來生成新的影象,但它的一些方法或許也可以適用於文字資料。

預訓練的語言模型

最近很多**運用大量語料庫預訓練語言模型來處理自然語言任務得到了驚人的結果,如ulmfit,open-ai transformer和bert。語言模型是通過前面的單詞**句子中會出現的下乙個單詞。

NLP中的資料增強

相關方法合集見 較為簡單的資料增強的方法見 中所使用的方法如下 1.同義詞替換 sr synonyms replace 不考慮stopwords,在句子中隨機抽取n個詞,然後從同義詞詞典中隨機抽取同義詞,並進行替換。同義詞其詞向量可能也更加接近,在使用詞向量的模型中不一定有用 2.隨機插入 ri r...

NLP資料增強學習筆記

眾所周知,深度學習中的神經網路模型都是依靠資料驅動,優質的資料能夠顯著提公升模型的執行效果。通常來說,有監督學習的模型效能會好於無監督學習的模型。但是,有監督學習的模型需要大量的標註資料,而人工標註資料需要花費大量的人力物力,所以資料增強是一種有效的解決方案。1.傳統方法 2.深度學習方法 半監督方...

NLP資料增強 隨機替換命名實體

主要參考這位大佬的部落格 參考鏈結.輸入一句話 我不是張加,使用標註實體是因為之前寫過相關的部落格。會按照姓名實體庫里的實體隨機替換,從而擴充語料。如下 usr bin python coding utf 8 import codecs import jieba as t jieba import ...