Uniwersalne twierdzenie o aproksymacji dla sieci splotowych

14

Twierdzenie o uniwersalnej aproksymacji jest dość znanym wynikiem dla sieci neuronowych, mówiąc w zasadzie, że przy niektórych założeniach funkcja może być jednolicie aproksymowana przez sieć neuronową z dowolną dokładnością.

Czy istnieje jakiś analogiczny wynik, który stosuje się do splotowych sieci neuronowych?

Jonas Adler
źródło

Odpowiedzi:

7

To interesujące pytanie, jednak nie ma odpowiedniego wyjaśnienia, co uważa się za splotową sieć neuronową .

Czy jedynym wymaganiem jest, aby sieć obejmowała operację splotu? Czy musi obejmować tylko operacje splotu? Czy dozwolone są operacje łączenia? Sieci konwergentne stosowane w praktyce używają kombinacji operacji, często obejmujących w pełni połączone warstwy (jak tylko masz w pełni połączone warstwy, masz teoretyczną uniwersalną zdolność aproksymacji).

Aby dać ci odpowiedź, rozważ następujący przypadek: W pełni połączona warstwa z wejściami i wyjściami jest realizowana przy użyciu macierzy wag . Możesz symulować tę operację za pomocą 2 warstw splotu:reK.W.RK.×re

  1. Pierwszy z nich ma filtry kształtu . Element filtra jest równy , reszta to zera. Ta warstwa przekształca dane wejściowe w wymiarową przestrzeń pośrednią, w której każdy wymiar reprezentuje iloczyn masy i odpowiadającego jej danych wejściowych.K.×rererek,reW.k,reK.re

  2. Druga warstwa zawiera filtrów o kształcie . Elementy filtru są jedynymi, pozostałe są zerami. Ta warstwa wykonuje sumowanie produktów z poprzedniej warstwy.K.K.rekre(k+1)rek

Taka sieć splotowa symuluje sieć w pełni połączoną, a zatem ma te same uniwersalne możliwości przybliżania. Od ciebie zależy, czy taki przykład jest użyteczny w praktyce, ale mam nadzieję, że odpowiada on na twoje pytanie.

Jan Kukacka
źródło
1
Taka konstrukcja jest raczej oczywista, ale utrzymuje się tylko przy np. Zerowych warunkach brzegowych wypełnienia. Przy bardziej naturalnym wymogu np. Okresowych warunków brzegowych (co równoznaczne z tłumaczeniem przez operatora) nie udaje się.
Jonas Adler
1
Tak, ta oczywista konstrukcja zakłada, że ​​splot jest stosowany tylko na wejściu (bez wypełnienia). Jak powiedziałem, chyba że określisz, co jest dozwolone, a co nie jest w twojej definicji CNN, zakładam, że jest to prawidłowe podejście. Zauważ też, że praktyczne implikacje UAT są praktycznie żadne, więc nie jestem pewien, czy ma to sens wnikać głęboko w to, określając różne wersje CNN i demonstrując coś podobnego dla każdego z nich.
Jan Kukacka
6

Wydaje się, że na to pytanie udzielono odpowiedzi twierdzącej w ostatnim artykule Dmitrija Jarockiego: Uniwersalne aproksymacje niezmiennych map przez sieci neuronowe .

Artykuł pokazuje, że dowolna funkcja ekwiwariantna translacji może być dowolnie aproksymowana przez splotową sieć neuronową, biorąc pod uwagę, że jest ona wystarczająco szeroka, w bezpośredniej analogii do klasycznego uniwersalnego twierdzenia o aproksymacji.

Jonas Adler
źródło
3

Zobacz artykuł Universality of Deep Convolutional Neural Networks autorstwa Ding-Xuan Zhou , który pokazuje, że splotowe sieci neuronowe są uniwersalne, to znaczy, że mogą one zbliżyć dowolną funkcję ciągłą do dowolnej dokładności, gdy głębokość sieci neuronowej jest wystarczająco duża.

nbro
źródło
1
Wydaje się, że zakłada to zerowe warunki brzegowe, więc wynik powinien być taki sam jak wspomniany jan-kukacka
Jonas Adler