Jakie są przydatne techniki powiększania danych dla głęboko splotowych sieci neuronowych?

13

Tło: Niedawno zrozumiałem na głębszym poziomie znaczenie powiększania danych podczas szkolenia splotowych sieci neuronowych po tym znakomitym przemówieniu Geoffreya Hintona .

Wyjaśnia, że ​​splotowe sieci neuronowe obecnej generacji nie są w stanie uogólnić układu odniesienia badanego obiektu, co utrudnia sieci zrozumienie, że lustrzane obrazy obiektu są takie same.

Niektóre badania podjęły próbę zaradzenia temu. Oto jeden z wielu przykładów . Myślę, że to pomaga ustalić, jak ważne jest dziś krytyczne powiększanie danych podczas szkolenia splotowych sieci neuronowych.

Techniki powiększania danych rzadko są porównywane ze sobą. W związku z tym:

Pytania:

  • Jakie są artykuły, w których lekarze stwierdzili wyjątkowo lepszą wydajność?

  • Jakie techniki powiększania danych okazały się przydatne?

Rhadar
źródło
Cześć @rhadar, czy masz jakieś wiadomości? Dzięki :)
nullgeppetto

Odpowiedzi:

1

Sec. 1: Rozszerzanie danych Ponieważ głębokie sieci muszą być trenowane na ogromnej liczbie obrazów szkoleniowych, aby osiągnąć zadowalającą wydajność, jeśli oryginalny zestaw danych obrazów zawiera ograniczone obrazy szkoleniowe, lepiej jest zwiększyć dane, aby zwiększyć wydajność. Również zwiększanie ilości danych staje się koniecznością podczas szkolenia głębokiej sieci.

  • Istnieje wiele sposobów powiększania danych, takich jak popularne odwracanie w poziomie, losowe kadrowanie i drżenie kolorów. Co więcej,
    możesz wypróbować kombinacje wielu różnych procesów, np.
    Wykonując obrót i skalowanie losowe w tym samym czasie. Ponadto
    możesz spróbować zwiększyć nasycenie i wartość (składowe S i V
    przestrzeni kolorów HSV) wszystkich pikseli do potęgi od 0,25 do 4 (to samo
    dla wszystkich pikseli w łatce), pomnożyć te wartości przez współczynnik
    między 0,7 i 1,4 i dodać do nich wartość od -0,1 do 0,1.
    Możesz także dodać wartość od [-0,1, 0,1] do odcienia (
    składnik H HSV) wszystkich pikseli obrazu / poprawki.

  • Krizhevsky i in. 1 zaproponowałem fantazyjne PCA podczas treningu słynnego Alex-Net w 2012 roku. Fancy PCA zmienia intensywność
    kanałów RGB w obrazach treningowych. W praktyce możesz najpierw wykonać PCA na zestawie wartości pikseli RGB w obrazach treningowych. A
    następnie, dla każdego obrazu treningowego, po prostu dodaj następującą ilość do
    każdego piksela obrazu RGB (tj. I_ {xy} = [I_ {xy} ^ R, I_ {xy} ^ G, I_ {xy} ^ B] ^ T ):
    [bf {p} _1, bf {p} _2, bf {p} _3] [alpha_1 lambda_1, alpha_2 lambda_2, alpha_3
    lambda_3] ^ T gdzie, bf {p} _i i lambda_i są i-tym wektorem własnym i
    wartością własną odpowiednio z 3 x 3 macierzy kowariancji wartości pikseli RGB
    , a alpha_i jest losową zmienną wyciągniętą z Gaussa
    ze średnim zerem i odchyleniem standardowym 0,1. Pamiętaj, że każdy
    alpha_i jest rysowany tylko raz dla wszystkich pikseli określonego
    obrazu treningowego, dopóki obraz ten nie zostanie ponownie użyty do treningu. Oznacza to
    znaczy, kiedy model spełnia taką samą szkolenie zdjęcie ponownie, będzie
    losowo produkować inny alpha_i do powiększania danych. W 1 , ale
    twierdził, że „wyobraźnia PCA mógłby w przybliżeniu uchwycić ważną
    właściwość naturalny obraz, a mianowicie, że tożsamość obiekt jest niezmienny do zmian w intensywności i barwy oświetlenia”. Do
    wyników klasyfikacji ten schemat obniżył wskaźnik błędów w pierwszej 1
    o ponad 1% w konkurencji ImageNet 2012.

(Źródło: Must Know Tips / Tricks in Deep Neural Networks (autor: Xiu-Shen Wei))

Patrick Conway
źródło