Sieć zbudowana z wzniesień, a nie płaszczyzn
Standardowa sieć feedforward buduje swoją powierzchnię decyzyjną z hiperkłównie – każda preaktywacja jednostki ukrytej to iloczyn we·x, a sigmoid lub ReLU przekształca go w miękką lub twardą granicę półprzestrzeni. Sieć o radialnych bazowych funkcjach robi coś innego: każda jednostka ukryta oblicza odległość od wejścia do przechowywanego centrum i przekształca tę odległość w wzniesienie, które jest największe w centrum i maleje na zewnątrz. Najczęstszym wyborem jest Gaussowska:
φ_i(x) = exp( -‖x - c_i‖² / (2σ_i²) ) c_i = centre of basis function i (a point in input space) σ_i = width — how fast the bump decays away from c_i y(x) = Σ_i w_i · φ_i(x) + b (output is a weighted sum of bumps)
Lokalne versus globalne przybliżenie
Ta lokalność jest cechą definiującą. Ukryta jednostka w wielowarstwowej sieci neuronowej wpływa na wynik wszędzie po jednej stronie jej hiperprzestrzeni, aż do nieskończoności; funkcja bazowa Gaussa wpływa na wynik tylko w sąsiedztwie własnego centrum i jej wpływ zanika zasadniczo za kilkoma szerokościami. To sprawia, że sieci RBF są lokalnymi przybliżaczami: dodawanie danych treningowych daleko od istniejących centrów nie zakłóca dopasowania w pobliżu tych centrów, co jest użyteczną właściwością, gdy model musi być aktualizowany stopniowo bez ponownego trenowania wszystkiego od zera. Cena to przekleństwo wymiarowości — liczba wzniesień potrzebnych do ułożenia obszaru rośnie bardzo szybko wraz z wymiarem wejściowym, ponieważ stała szerokość funkcji Gaussa pokrywa tylko małą hiperobjętość w wysokich wymiarach.
Dwustopniowe szkolenie
Ponieważ model jest liniowy względem wag po usunięciu 'wąskich miejsc', sieci RBF są prawie zawsze trenowane w dwóch oddzielnych etapach, zamiast przez pełną propagację wstępną. Po pierwsze, wybierz centra c_i – najczęściej poprzez uruchomienie k-means clustering na danych treningowych, dzięki czemu centra znajdują się tam, gdzie faktycznie leżą dane, lub w kontekstach inżynierskich, poprzez wybranie podzbioru punktów treningowych. Po drugie, z ustalonymi centrami i szerokościami, obliczanie wag wyjściowych jest liniową regresją najmniej kwadratową: zbuduj macierz Φ z φ_i(x_j) dla każdego punktu treningowego i funkcji bazowej, a następnie rozwiąż w równoległym kroku w = (ΦᵀΦ)⁻¹Φᵀy (lub jego wersję z regularyzacją Ridge), bez konieczności używania gradientu ani lokalnych minimów – jest to rozwiązanie analityczne.
Dlaczego są uniwersalnymi przybliżaczami
Przy odpowiedniej liczbie centrów, sieć RBF z funkcjami bazowymi (lub innymi dopuszczalnymi) rozkładem Gaussiana może przybliżyć dowolną ciągłą funkcję na zwartym obszarze do arbitarnego stopnia precyzji – to samo gwarantowanie uniwersalnego przybliżenia, które obowiązuje dla MLP sygnolowych, udowodnione dla sieci RBF przez Parka i Sandberga w 1991 roku. Intuicyjnie nie jest to zaskoczenie: suma wystarczająco wąskich rozkładów Gaussiana, których centra są gęsto rozmieszczone, może odtworzyć dowolny kształt gładkiego wgłębienia, tak jak sumowanie Riemanna wąskich prostokątów reprodukuje jakąkolwiek całkowalną funkcję w miarę tego, jak prostokąty stają się coraz cieńsze.
Gdzie sieci RBF nadal wygrywają
Problemy z dokładną interpolacją, gdzie chcemy, aby powierzchnia przechodziła przez każdy punkt treningowy precyzyjnie (jedna centra na punkt danych, rozwiązane analitycznie), aproksymacja funkcji dla systemów sterowania i wszechobecny jądro RBF w maszynach wektoryzacji wsparcia – to dokładnie ten sam miar podobieństwa Gaussa używany jako jądro zamiast warstwy ukrytej. Sieć interpolacyjna i sztuczek z jądrem SVM są, matematycznie rzecz ujmując, tą samą ideą w dwóch różnych ramach.
Frequently asked questions
Jak sie sie sieć RBF różni od normalnej (MLP) sieci neuronowej?
Sieć MLP posiada jednostkę ukrytą reagującą na półprzestrzeń zdefiniowaną przez hiperpłaszczyznę, a jej odpowiedź nigdy nie zanika całkowicie daleko od tej płaszczyzny. Jednostka ukryta w sieci RBF reaguje na odległość od punktu centralnego i jej odpowiedź maleje do bliskiej zeru, gdy się przesunie o kilka szerości, co czyni sieci RBF lokalnymi przybliżaczami, a sieci MLP globalnymi.
Dlaczego trening sieci RBF zwykle odbywa się w dwóch oddzielnych etapach zamiast jednego przejścia wstecznego propagacji?
Ponieważ po ustaleniu centrów i szerości, warstwa wyjściowa jest prostą kombinacją liniową funkcji baz, więc jej wagi mogą być rozwiązane dokładnie metodą najmniejszych kwadratów. Podział treningu na niezarządzaną lokalizację centrów (np. k-means) a następnie liniowe rozwiązanie jest szybszy i unika problemów z lokalnymi minimami wynikających z trenowania wszystkiego wspólnie przy użyciu gradientu.
Dlaczego sieci RBF potrzebują znacznie więcej centrów w wysokich wymiarach?
Każdy bump Gaussa pokrywa niewielki hiperobjętość wokół punktu centralnego, a objętość przestrzeni wejściowej rośnie wykładniczo wraz z liczbą wymiarów. Pokrycie tej przestrzeni bumpami o stałej szerokości wymaga więc wykładniczej liczby centrów w miarę wzrostu wymiarowości – ten sam problem wymiarowości, który dotyczy każdego lokalnego, opartego na odległości metody.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Radial Basis Function Network i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Radial Basis Function Network