資料增強技術人為地生成真實資料集的不同版本以增加其規模。計算機視覺和自然語言處理(NLP)模型使用資料增強策略來處理資料稀缺和資料多樣性不足的問題。
以資料為中心的AI/ML開發實踐,如資料擴充,可以提高機器學習模型的準確性。根據一項實驗,在影象分類任務中,經過影象增強的深度學習模型在訓練損失(即對錯誤預測的懲罰)和準確性以及驗證損失和準確性方面比沒有增強的深度學習模型表現得更好。
計算機視覺中的資料增強技術
對影象有幾何和顏色空間的增強方法,以在模型中建立影象多樣性。從開放原始碼庫和相關文章中很容易找到許多關於這些增強變換的編碼例子。
新增噪點
對於模糊的影象,在影象上新增噪點可能是有用的。通過 “鹽和胡椒的噪點”,影象看起來像由白色和黑色的點組成。
為影象新增噪點(soruce: medıum)
裁剪
選擇影象的一個部分,進行裁剪,然後調整到原始影象的大小。
喵星人圖片各種裁剪(Source: Github)
翻轉
影象在水平和垂直方向上被翻轉。翻轉會重新排列畫素,同時保護影象的特徵。垂直翻轉對某些照片沒有意義,但它在宇宙學或微觀照片中可能很有用。
1. 原始影象 – 2. 水平翻轉 – 3.垂直翻轉(Source: MEDIUM)
旋轉
影象被旋轉了0-360度。每個旋轉的影象在模型中都是獨一無二的。
鳳梨不同旋轉角度影象(Source: Medium)
縮放
影象被向外和向內縮放。通過縮放,新影象中的一個物體可以比原始影象中的物體更小或更大。
車釐子縮放照片(Source: Medium)
Translation
影象沿著X軸或Y軸被遷移到不同的區域,所以神經網路在影象中到處尋找,以捕獲它。
影象遷移(Source:KDnuggets)
亮度
影象的亮度被改變,新的影象將變得更暗或更亮。這種技術允許模型在不同的照明水平下識別影象。
不同亮度的相同照片(Source: Tensorflow.org)
對比度
影象的對比度被改變,新的影象將在亮度和顏色方面有所不同。下面這張圖片的對比度是隨機改變的。
不同對比度同一花卉照片(Source: Tensorflow.org)
顏色增強
影象的顏色是由新的畫素值改變的。這裡有一個灰度影象的例子。
增強圖片顏色(Source: Tensorflow.org)
飽和度
飽和度是指影象中顏色的深度或強度。下面的影象是用資料增強的方法進行飽和的。
改變圖片顏色飽和度(Source: Tensorflow.org)
自然語言模型中的資料增強技術
資料增強技術適用於字元、單詞和文字層面。
簡易資料增強(EDA)方法
EDA方法包括簡單的文字轉換,例如,從句子中隨機選擇一個詞,用這個詞的一個同義詞代替,或者選擇兩個詞,在句子中互換。NLP處理中的EDA技術例子有
- 同義詞替換
- 文字替換(基於規則、基於ML、基於掩碼等)。
- 隨機插入
- 隨機互換
- 隨機刪除
- 詞和句子的洗牌
逆向翻譯
一個句子被翻譯成一種語言,然後用原語言再次翻譯新的句子。因此,不同的句子被創造出來。
Source: Medium
文字生成
生成式對抗網路(GAN)被訓練來生成幾個字的文字。
Source: Medium
開發人員可以通過對網路資料進行訓練來優化自然語言模型,這些資料包含大量的人類語音、語言、句法和情感。
音訊資料增強技術
音訊資料增強方法包括裁剪掉一部分資料、注入噪音、轉移時間、速度調整改變音調、混合背景噪音和掩蓋頻率。
Source: Github
高階資料增強技術
高階資料增強方法通常用於深度學習領域。這些技術中的一些是
- 對抗性訓練
- 神經風格轉移
- 基於生成對抗網路(GANs)的擴增
更多資訊,請隨時閱讀我們關於深度學習和合成資料GANs的文章。
資料增強庫
有一些供開發人員使用的庫,如Albumentations、Augmentor、Imgaug、nlpaug、NLTK和spaCy。這些庫包括幾何變換和色彩空間變換功能、核心過濾器(即用於銳化和模糊的影象處理功能)和其他文字變換。資料增強庫使用不同的深度學習框架,例如,Keras、MxNet、PyTorch和TensorFlow。
評論留言