0
本文為 AI 研習社編譯的技術博客,原標題 :
These are the Easiest Data Augmentation Techniques in Natural Language Processing you can think of?—?and they work.
作者 | Jason Wei
翻譯 | AI小山
校對 | 醬番梨 審核 | 約翰遜·李加薪 整理 | 立魚王
原文鏈接:
https://towardsdatascience.com/these-are-the-easiest-data-augmentation-techniques-in-natural-language-processing-you-can-think-of-88e393fd610
數據增廣常用于計算機視覺。在視覺領域,你幾乎肯定可以翻折、旋轉或鏡像一幅圖片,而不用擔心它的標記發生變化。然后,在自然語言處理(NLP)領域,情況完全不同。改變一個詞有可能改變整個句子的意思。所以,沒有簡單的方法能做到數據增廣。真的是這樣么?
我向你介紹EDA:簡單數據增廣技術,可以大大提升文本分類任務的性能(在EDA Github repository有簡單的實現代碼)。EDA包含四個簡單操作,能極好地防止過擬合,并訓練出更強健的模型,分別是:
同義詞替換:在句子中隨機選取n個非停用詞。對每個選取的詞,用它的隨機選取的同義詞替換。
隨機插入:在句子中任意找一個非停用詞,隨機選一個它的同義詞,插入句子中的任意位置。重復n次。
隨機交換:任意選取句子中的兩個詞,交換位置。重復n次。
隨機刪除:對于句子中概率為p的每一個詞,隨機刪除。
這些技術真有效嗎?出乎意料,答案是肯定的。盡管生成的某些句子有點怪異,但是在數據集中的引入一些噪聲,對于訓練出一個健壯的模型來說,是極有好處的,特別是數據集比較小的時候。這篇論文指出,在5個文本分類任務的對比測試中,基于幾乎所有大小的數據集,使用EDA都擊敗了常規訓練方法,在訓練數據集較小的時候,表現尤其突出。平均來說,用EDA訓練一個循環神經網絡(RNN),只需50%的訓練數據,即可達到常規方法同等的精度。
文本分類任務的性能表現,相對于訓練集的使用百分比。使用EDA(簡單數據增廣),在小數據集時,遠勝常規方法。
我知道你在考試這個問題。真的能在做增廣操作的同時,保留其真實標記嗎?我們用畫圖形的方法來驗證一下。
假設你訓練一個關于產品的正面、負面評價的RNN,使用常規和增廣的句子都跑一遍,抽取神經網絡的最后一層,用sTNE畫一個潛在空間圖:
ProCon數據集原生及增廣句子的潛在空間圖
可以看到增廣句子的潛在空間圖緊緊圍繞著原生句子!這表明所生成的增廣句子極大可能的保留了原始句子的標記。雷鋒網雷鋒網雷鋒網
現在,我們來看看數據增廣技術中每個單獨操作的效果是什么樣的。同義詞替換好理解,但是另外三個操作真的起作用嗎?我們可以做一個實驗,單獨做其中一種操作,并代入不同的α值,參數α大致可理解為“句子中被改變的單詞的百分比”:
在不同大小的數據集下,對比其它五種文本分類方法,EDA操作的平均性能增益。參數α大致可理解為“句子中被每種增廣操作改變的單詞的百分比”。SR:同義詞替換。RI:隨機插入。RS:隨機交換。RD:隨機刪除。
你能看到,在小數據集時,性能增益非常大,達到大約2-3%,數據集大的時候,增益變小(~1%)。但是,各項操作綜合起來,如果設置的增廣參數合理(句子中改變的單詞不超過四分之一),能使訓練出的模型更健壯。
最后,對于一個真實句子,我們應該增廣出多少句子呢?答案取決于你的數據集的大小。如果你的數據集很小,很可能會出現過擬合,此時你應該生成多一些的增廣句子。如果數據集比較大,增加太多的增廣句子,意義不大,因為原有的數據已經能訓練出一個好的模型了。這個圖表顯示了相對于每個原生句子生成的增廣句子的數量的性能增益:
不同大小的數據集下全部五種文本分類任務的EDA平均性能增益。n_aug表示每原生句子生成的增廣句子的數量。
我們已經演示了在文本分類中,簡單數據增廣能顯著提升性能。如果你正用小數據集訓練一個文本分類器,并想取得更好的效果,請在模型中編程實現這些操作,或者從Github中下載EDA代碼。更多詳情請查看原文。
想要繼續查看該篇文章相關鏈接和參考文獻?
點擊【EDA:最簡單的自然語言處理數據增廣方法】即可訪問:
https://ai.yanxishe.com/page/TextTranslation/1644
AI研習社今日推薦:2019 最新斯坦福 CS224nNLP 課程
自然語言處理(NLP)是信息時代最重要的技術之一,也是人工智能的關鍵部分。NLP的應用無處不在,因為人們幾乎用語言進行交流:網絡搜索,廣告,電子郵件,客戶服務,語言翻譯,醫學報告等。近年來,深度學習方法在許多不同的NLP任務中獲得了非常高的性能,使用單個端到端神經模型,不需要傳統的,任務特定的特征工程。在本課程中,學生將深入了解NLP深度學習的前沿研究。
課程鏈接:https://ai.yanxishe.com/page/groupDetail/59
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。