資料增強之mixup演算法詳解
論文地址:mixup: BEYOND EMPIRICAL RISK MINIMIZATION
(一)、什麼是資料增強?
(1). 資料增強主要指在計算機視覺領域中對影象進行資料增強,從而彌補訓練影象資料集不足,達到對訓練資料擴充的目的。
(2). 資料增強是一種資料擴充方法,可分為同類增強(如:翻轉、旋轉、縮放、移位、模糊等)和混類增強(如mixup)兩種方式。
(二)、同類資料增強方式主要有哪些?
(1). 翻轉Flip
可分為水平翻轉,垂直翻轉
(2). 旋轉Rotation
(3). 縮放Scale(向外縮放,向內縮放)
向外縮放時,最終影象尺寸將大於原始影象尺寸,大多數影象框架從新影象中剪切出一個部分,其大小等於原始影象。而向內縮放,因為它會縮小影象大小,迫使我們對超出邊界的內容做出假設。
(4). 隨機裁剪(Random Crop)
與縮放不同,隨機裁剪只是從原始影象中隨機抽樣一個部分,然後我們將此部分的大小調整為原始影象大小。
(5). 移位(Translation)
移位只涉及沿X或Y方向(或兩者)移動影象。這種增強方法非常有用,因為大多數物件幾乎可以位於影象的任何位置,移位時我們需要對邊界作出假設。
(6). 模糊(Gaussian Noise)
當您的神經網路試圖學習可能無用的高頻特徵(大量出現的特徵)時,通常會發生過擬合。具有零均值的高斯噪聲基本上在所有頻率中具有資料點,從而有效地扭曲高頻特徵。但是這也意味著較低頻率的資料(通常是您的預期資料)也會失真,但您的神經網路可以學會超越它。新增適量的噪聲可以增強網路學習能力。
(三)、mixup混類資料增強方式
(1). mixup介紹
mixup是一種運用在計算機視覺中的對影象進行混類增強的演算法,它可以將不同類之間的影象進行混合,從而擴充訓練資料集。
(2). mixup原理
假設b a t c h x 1 batch_{x1}batchx1是一個b a t c h batchbatch樣本,b a t c h y 1 batch_{y1}batchy1是該b a t c h batchbatch樣本對應的標籤;b a t c h x 2 batch_{x2}batchx2是另一個b a t c h batchbatch樣本,b a t c h y 2 batch_{y2}batchy2是該b a t c h batchbatch樣本對應的標籤,λ \lambdaλ是由引數為α \alphaα,β \betaβ的貝塔分佈計算出來的混合係數,由此我們可以得到mixup原理公式為:λ = B e t a ( α , β ) (3.1) {\lambda=Beta(\alpha,\beta)\tag{3.1}}λ=Beta(α,β)(3.1)m i x e d _ b a t c h x = λ ∗ b a t c h x 1 + ( 1 − λ ) ∗ b a t c h x 2 (3.2) mixed\_ batch_x=\lambda*batch_{x1}+(1-\lambda)*batch_{x2}\tag{3.2}mixed_batchx=λ∗batchx