Czy sieci neuronowe uczą się funkcji lub funkcji gęstości prawdopodobieństwa?


19

Pytanie może brzmieć nieco dziwnie, ponieważ jestem nowy w wnioskowaniu statystycznym i sieciach neuronowych.

Kiedy w problemach z klasyfikacją za pomocą sieci neuronowych mówimy, że chcemy nauczyć się funkcji która odwzorowuje przestrzeń wejściową na przestrzeń wyjściową :fxy

f(x;θ)=y

Czy dopasowujemy parametry ( ) do modelowania funkcji nieliniowej czy do modelowania funkcji gęstości prawdopodobieństwa?θ

Naprawdę nie wiem, jak lepiej napisać pytanie. Przeczytałem kilka razy obie rzeczy (funkcja gęstości prawdopodobieństwa lub funkcja po prostu taka), więc moje zamieszanie.

Odpowiedzi:


15

Ściśle mówiąc, sieci neuronowe spełniają funkcję nieliniową.

Można je interpretować jako dopasowanie funkcji gęstości prawdopodobieństwa, jeśli zostaną wybrane odpowiednie funkcje aktywacji i spełnione zostaną określone warunki (wartości muszą być dodatnie i 1 itd.). Ale to jest pytanie, jak zdecydujesz się zinterpretować ich wyniki, a nie to, co faktycznie robią. Pod maską nadal są to nieliniowe estymatory funkcji, które wybierasz do zastosowania w konkretnym problemie estymacji PDF.


3
@sdiabr faktycznie Ci nie używać próg jeśli chciał sieci do symulacji pdf - od PDF może mieć inne wartości oprócz 1 i 0. Z progu staje się prosty klasyfikator.
Skander H.

2
Właściwy sposób, aby na to spojrzeć, polega na tym, że progowanie jest problemem zewnętrznym w stosunku do tego, czego uczy się sieć. Nieprzestrzeganie tego rozróżnienia powoduje wiele problemów w stosowaniu ML do rzeczywistych problemów.
Matthew Drury

1
Tak okej, rozumiem. Więc zapominając o progach, to modelowałbym pdf? Myślę, że pomyliłem się z progami, ponieważ przeczytałem coś o modelowaniu rozkładu Bernouilli. Jednak bez progu to już Bernoilli, prawda? W przypadku, gdy mamy tylko jeden węzeł wyjściowy z funkcją aktywacji sigmoidalnej, który dałby 0 lub 1 z prawdopodobieństwem p lub (1-p)
sdiabr

1
Tak, znów się pomyliłem, dzięki @CagdasOzgenc. Spróbujmy jeszcze raz: używając funkcji sigmoidalnej w warstwie wyjściowej bezpośrednio modelujemy plik pdf, prawda? po jakiejkolwiek dystrybucji, której może się nauczyć.
sdiabr

2
Nie uczysz się jednak o rozkładzie prawdopodobieństwa nieznanych współczynników, a zatem nie uczysz się o tylnym rozkładzie predykcyjnym.
Brash Equilibrium

11

Zasadniczo sieci neuronowe nie są wykorzystywane do modelowania całkowitej gęstości prawdopodobieństwa. Ich celem jest po prostu modelowanie średniej rozkładu (lub w sytuacji deterministycznej po prostu funkcja nieliniowa). Niemniej jednak bardzo możliwe jest modelowanie całkowitej gęstości prawdopodobieństwa za pomocą sieci neuronowych.

Jednym łatwym sposobem na to jest na przykład w przypadku Gaussa emisja średniej z jednego wyjścia i wariancji z innego wyjścia sieci, a następnie zminimalizowanie jako części proces szkolenia zamiast typowego błędu kwadratu. Jest to procedura największego prawdopodobieństwa dla sieci neuronowej.logN(y|x;μ,σ)

Gdy trenujesz tę sieć za każdym razem, gdy podłączysz wartość jako dane wejściowe, otrzymasz μ i σ , a następnie możesz podłączyć całą tryplet y , μ , σ do gęstości f ( y | x ) N ( μ , σ ), aby uzyskać wartość gęstości dla dowolnego y lubisz. Na tym etapie możesz wybrać, który y wartość zostanie zastosowana w oparciu o funkcję strat prawdziwy domeny. Należy pamiętać, że dla μ aktywacja wyjścia powinna być nieograniczona, aby można było emitować -xμσy,μ,σf(y|x)N(μ,σ)yyμ do + inf, podczas gdy σ powinno być aktywacją dodatnią.inf+infσ

Zasadniczo, chyba że chodzi o funkcję deterministyczną, o którą nam chodzi, standardowy trening straty kwadratowej stosowany w sieciach neuronowych jest właściwie tą samą procedurą, którą opisałem powyżej. Pod kaptur rozkład zakłada domyślnie bez trosce o Ď a jeżeli dokładnie zbadać - l O g N ( Y | x ; μ , σ ) daje ekspresję na kwadrat strat ( Utrata funkcja estymatora największej wiarygodności Gaussa ). W tym scenariuszu zamiast yGaussianσlogN(y|x;μ,σ)ywartość według twoich upodobań utkniesz w emitowaniu za każdym razem, gdy otrzymasz nową wartość x .μx

Klasyfikacji wyjście będzie rozkład zamiast G U s s I n , który posiada jeden parametr do emisji. Jak podano w drugiej odpowiedzi, parametr ten wynosi od 0 do 1, więc aktywacja wyjścia powinna być odpowiednio. Może to być funkcja logistyczna lub coś innego, co służy temu samemu celowi.BernoulliGaussian01

Bardziej wyrafinowanym podejściem jest Bishop's Mixture Density Networks. Możesz przeczytać o tym w często cytowanym dokumencie tutaj:

https://publications.aston.ac.uk/373/1/NCRG_94_004.pdf


Ojej mnie pobiłeś 😀 Chciałem zacytować MDN Bishopa ... Jest też inny sposób na uzyskanie sieci neuronowych do generowania plików pdf, który jest oczywiście paradygmatem bayesowskim. Napiszę na to odpowiedź.
DeltaIV

Kolejny fajny artykuł na temat sieci gęstości mieszanin, używany do przewidywania warunków surfowania: icml.cc/Conferences/2005/proceedings/papers/…
Matthew Drury

Czy należy zmienić „cały triplet y, μ, σ” na „cały triplet x, μ, σ”?
moh

@moh no. x jest podane i nie pojawi się w gęstości.
Cagdas Ozgenc

1

Moja odmienna odpowiedź brzmi: w najbardziej imponujących praktycznych zastosowaniach (na przykład w tych, które są najbardziej rozpowszechniane w mediach), nie jest to ani funkcja, ani prawdopodobieństwo. Realizują stochastyczne podejmowanie decyzji.

Na powierzchni wygląda na to, że NN po prostu pasuje do funkcji, ustaw w kolejce uniwersalne odniesienie aproksymacyjne . W niektórych przypadkach, gdy stosowane są pewne funkcje aktywacyjne i określone założenia, takie jak błędy Gaussa lub podczas czytania artykułów w sieci Bayesian, wydaje się, że NN może generować rozkłady prawdopodobieństwa.

To wszystko przy okazji. Celem NN jest modelowanie procesu decyzyjnego. Kiedy samochód jest prowadzony przez AI, jego NN nie próbuje obliczyć prawdopodobieństwa, że ​​ma przed sobą przedmiot, a następnie biorąc pod uwagę, że istnieje obiekt do obliczenia prawdopodobieństwa, że ​​jest to człowiek. Ani też nie oblicza mapowania sygnałów wejściowych czujników na różnego rodzaju obiekty. Nie, NN powinien podjąć decyzję na podstawie wszystkich danych wejściowych, aby skręcić w bok lub kontynuować jazdę. Nie oblicza prawdopodobieństwa, mówi samochodowi, co ma robić.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.