博客專欄

        EEPW首頁 > 博客 > CVPR深度框架訓練 | 不是所有數據增強都可以提升最終精度

        CVPR深度框架訓練 | 不是所有數據增強都可以提升最終精度

        發布人:CV研究院 時間:2022-10-19 來源:工程師 發布文章

        一、前言&簡要

        為了緩解上述問題,有研究者提出了一種簡單而高效的方法,稱為保持增強(KeepAugment),以提高增強圖像的保真度。其主要思想是首先使用顯著性map來檢測原始圖像上的重要區域,然后在增強過程中保留這些信息區域。這種信息保護策略使我們能夠生成更忠實的訓練示例。

        圖片

        在實驗上,也證明了該方法在一些現有的技術數據增強方案上有了顯著的改進,例如:自動增強、裁剪、隨機擦除,在圖像分類、半監督圖像分類、多視點多攝像機跟蹤和目標檢測等方面取得了很好的效果。

        二、知識回顧

        首先我們回一下什么叫“數據增強”?

        數據增強(Data Augmentation)是一種通過讓有限的數據產生更多的等價數據來人工擴展訓練數據集的技術。它是克服訓練數據不足的有效手段,目前在深度學習的各個領域中應用廣泛。但是由于生成的數據與真實數據之間的差異,也不可避免地帶來了噪聲問題。

        為什么需要數據增強?

        深度神經網絡在許多任務中表現良好,但這些網絡通常需要大量數據才能避免過度擬合。遺憾的是,許多場景無法獲得大量數據,例如醫學圖像分析。數據增強技術的存在是為了解決這個問題,這是針對有限數據問題的解決方案。數據增強一套技術,可提高訓練數據集的大小和質量,以便您可以使用它們來構建更好的深度學習模型。在計算視覺領域,生成增強圖像相對容易。即使引入噪聲或裁剪圖像的一部分,模型仍可以對圖像進行分類,數據增強有一系列簡單有效的方法可供選擇,有一些機器學習庫來進行計算視覺領域的數據增強,比如:imgaug (https://github.com/aleju/imgaug)它封裝了很多數據增強算法,給開發者提供了方便。 

        計算視覺數據增強

        計算視覺領域的數據增強算法大致可以分為兩類:第一類是基于基本圖像處理技術技術的數據增強,第二個類別是基于深度學習的數據增強算法。下面先介紹基于基本圖像處理技術的數據增強方法:

        1、flipping翻轉

        一般都是水平方向翻轉而少用垂直方向,即鏡像變換。圖像數據集上證實有用(CIFAR-10,ImageNet等),但無法應用在文本識別數據集(MNIST,SVHN等)

        2、color space色彩空間

        簡單做法是隔離單個色彩通道,例如R,G或B,此外可以通過簡單的矩陣運算以增加或減少圖像的亮度。更高級的做法從顏色直方圖著手,更改這些直方圖中的強度值(想到了圖像處理中的直方圖均衡)。

        3、cropping裁剪

        分統一裁剪和隨機裁剪。統一裁剪將不同尺寸的圖像裁剪至設定大小,隨機裁剪類似translation,不同之處在于translation保留原圖尺寸而裁剪會降低尺寸。裁剪要注意不要丟失重要信息以至于改變圖像標簽。

        4、rotation旋轉

        要注意旋轉度數。以MNIST為例,輕微旋轉(例如1°-20°)可能有用,再往后增加時數據標簽可能不再保留。

        5、translation位置變換

        向左,向右,向上或向下移動圖像可能是非常有用的轉換,以避免數據中的位置偏差。例如人臉識別數據集中人臉基本位于圖像正中,位置變換可以增強模型泛化能力。

        6、noise injection添加噪聲

        添加高斯分布的隨機矩陣

        7、color space transformations色彩空間增強

        照明偏差是圖像識別問題中最常見的挑戰之一,因此色彩空間轉換(也稱為光度轉換)的比較直觀有效。

        ①遍歷圖像以恒定值減少或增加像素值(過亮或過暗)

        ②拼接出(splice out)各個RGB顏色矩陣

        ③將像素值限制為某個最小值或最大值

        ④操作色彩直方圖以改變圖像色彩空間特征

        注意將彩色圖轉換黑白雖然簡化了這些操作,但精度會降低

        geometric versus photometric transformations幾何與光度轉換

        1、kernel flters內核過濾器

        平滑和銳化,即圖像處理中用卷積核滑過整幅圖像的操作。這一點尚未開發,它和CNN中卷積機制非常相似(就一樣啊),因此可以通過調整網絡參數更好地改善網絡,而不需要額外進行這樣的數據增強操作。

        2、mixing images圖像混合

        做法是通過平均圖像像素值將圖像混合在一起:

        圖片

        mixing images

        研究發現是當混合來自整個訓練集的圖像而不是僅來自同一類別的實例的圖像時,可以獲得更好的結果。其它一些做法:

        ①一種非線性方法將圖像組合成新的訓練實例:

        圖片

        非線性方法

        ②另一方法是隨機裁剪圖像并將裁剪后的圖像連接在一起以形成新圖像:

        圖片

        隨機裁剪再拼接

        這類方法從人的視角看毫無意義,但確實提升了精度。可能解釋是數據集大小的增加導致了諸如線和邊之類的低級特征的更可靠表示。

        3、random erasing隨機擦除

        這一點受到dropout正規化的啟發,隨機擦除迫使模型學習有關圖像的更多描述性特征,從而防止過擬合某個特定視覺特征。隨機擦除的好處在于可以確保網絡關注整個圖像,而不只是其中的一部分。最后隨機擦除的一個缺點是不一定會保留標簽(例如文本8->6)。

        圖片

        三、新方法

        新方法控制數據增強的保真度,從而減少有害的錯誤信息。研究者的想法是通過顯著性映射測量圖像中矩形區域的重要性,并確保數據增強后始終呈現得分最高的區域:對于裁剪,通過避免切割重要區域(見下圖a5和b5);對于圖像級轉換,通過將重要區域粘貼到轉換圖像頂部(參見下圖a6和b6)。

        圖片

        圖片

        Eq2:

        圖片

        Eq3:

        圖片

        圖片

        圖片

        四、實驗

        圖片

        圖片

        圖片

        圖片

        圖片

        CIFAR-10:https://www.cs.toronto.edu/?kriz/cifar.htmlopen-source code:https://github.com/clovaai/CutMix-PyTorchopen-ReID:https://github.com/Cysu/open-reid


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。

        物聯網相關文章:物聯網是什么




        關鍵詞: AI

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 靖州| 河北省| 建湖县| 城口县| 偏关县| 杭锦旗| 石柱| 龙口市| 平武县| 突泉县| 休宁县| 淮滨县| 巴青县| 南汇区| 清远市| 突泉县| 鹿泉市| 苗栗县| 石柱| 蓝田县| 漯河市| 渭源县| 平远县| 德庆县| 米脂县| 太康县| 安达市| 阳城县| 北流市| 龙泉市| 天气| 云梦县| 万源市| 浮山县| 祁门县| 潞西市| 金平| 安乡县| 丰都县| 若尔盖县| 乳源|