• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed sieci neuronowe funkcje aktywacji

Object Storage Arubacloud
+1 głos
749 wizyt
pytanie zadane 8 grudnia 2019 w Python przez Ziito Obywatel (1,110 p.)
zamknięte 8 grudnia 2019 przez Ziito
Siemka, mam takie pytanko o co chodzi z funkcjami aktywacji w sieciach neuronowych? Tzn. chodzi mi o to że wiem że są potrzebne a nawet wymagane i że bez nich ani rusz ale nie mogę jakoś tego przyswoić na "chłopski rozum" dlaczego takie a nie inne?, czy ktoś może mi to wytłumaczyć na przykładzie AI w grze? powiedzmy że mamy postać X którą jest agent i co dalej?
komentarz zamknięcia: asdasd

2 odpowiedzi

0 głosów
odpowiedź 8 grudnia 2019 przez reaktywny Nałogowiec (41,050 p.)

Funkcje ReLU, Sigmoid i TanH są najczęściej wykorzystywane bo po prostu najlepiej się sprawdzają w większości zagadnień (mają mniej przecieków i szybciej prowadzą do dobrego rozwiązania). Ale to wiele zależy od budowy sieci i zastosowanych rozwiązań w poszczególnych warstwach. Na YT Siraj Rival ciekawie omawia temat, ponadto zobacz: https://mlfromscratch.com/activation-functions-explained/#/

komentarz 8 grudnia 2019 przez reaktywny Nałogowiec (41,050 p.)
Zitto chyba swoje niezadowolenie adresował do mnie ;) nie do @mmarszik !
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
Odpowiadam @mmarszik napisał całą litanię poczym zadawał durne pytania dobra nie ważne poszukam odowiedzi na lepszym forum. Żegnam

 

EDIT: Każdy tutaj się zna na sieciach neuronowych, ale nikt nie potrafi nic wytłumaczyć XD typowa polsza XD, no nic papa
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)

@Ziito, Poczytaj jakąś książkę, ja lubię Osowskiego :)

komentarz 8 grudnia 2019 przez tkz Nałogowiec (42,000 p.)

@Ziito z tego co czytam to same truizmy, nic konkretnego. Chyba to jeden ze sposobów by bycia "znafcą". Żadne konkretne wytłumaczenie nie padło...

komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)

@Ziito, Po prostu nigdy wczesniej nie słyszałem o przeciekach w kontekście funkcji. Słyszałem o parzystych, różnowartościowych, monotonicznych, wielomianowych, ciągłych, danych tabelami, liniowych, nieliniowych, łatwych, trudnych, wypukłych... ale że mają przecieki słyszałem pierwszy raz i dopytuję co autor ma na myśli.

–2 głosów
odpowiedź 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
edycja 8 grudnia 2019 przez mmarszik
W wielu sieciach stosuje się funkcje aktywacji w postaci f(x) = x, czyli funkcja na wyjściu zwraca to samo co pobiera na wejście. Taka funkcja istnieje tylko formalnie, bo w praktyce nie wpływa na działanie sieci. Co więcej, sieci bez funkcji aktywaji uczą się bardzo szybko, bardzo dokładnie i w niektórych zadaniach stanowią najlepszy model. Też szybko działają. Więc pytanie: do czego są potrzebne, z praktycznego punktu widzenia zawiera błędne założenie, bo nie zawsze są potrzebne.

Natomiast formalnie są potrzebne do defniowania sieci, nawet jeśli to jest funkcja f(x)=x, to wiemy od razu z jaką siecią mamy do czynienia.

Jeśli stosujemy funkcję aktywacji f(x)=x, to kolejne warstwy sieci nie zwiększają możliwości (tejże sieci).

W przypadku innych funkcji aktywacji (nieliniowych) zwiększamy teoretyczne możliwości sieci, np. w klasycznym perceptronie wielowarstwowym można zwiększać ilość warstw dzięki zastosowaniu nieliniowej funkcji aktywacji. Od możliwości teoretycznych do praktycznych nie zawsze jest prosta droga.

Podsumowując:
funkcje nieliniowe; f(x) = y
 - znacznie zwiększają możliwości sieci
 - pojawia się sens robienia splotów
- komplikują model
- metody regularyzacji są bardzo trudne
- bardzo trudno znaleźć optymalny model
- trudno dobrać algorytmy uczenia
- najlepiej jak mamy ogromną ilość danych
- utrudniają ekstrakcję wiedzy z wyuczonych sieci
 - znacznie wydłużają czas uczenia
 - pojawia się problem przeuczenia
- pojawia się problem utykania w minimach lokalnych (raczej w rozległych punktach siodłowych).

funkcje liniowe f(x) = x (czyli tak jakby bez funkcji aktywacji)
 - mają ograniczone możliowści
 - rozwiązanie zawsze może być optymalne w sensie średnich kwadratów
 - łatwo wyliczyć pochodną z kwadratu wag i znaleźć optymalne rozwiązanie też w tym sensie
 - uczenie jest jednoprzebiegowe, czas jest około M * N^2 + 0.5 * N^3 (m - ilość danych, n - ilość synaps)
 - w związku z powyższym: nie wpadają w minima lokalne
 - też można uczyć iteracyjnie i przerwać uczenie przed przeuczeniem
 - można zwiększyć możliwości tych sieci przez rozszerzenie funkcjonalne Pao, ale szukanie rozszerzenia
   też jest bardzo trudne - chyba że coś wiemy o modelu.

Ale to nie wyczerpuje tematu, są np. sieci na bazie funkcji radialnych, są sieci z mieszanymi funkcjami aktywacji, itd.

Pozdrawiam

Edit, z tymi splotami przesadziłem, w sieciach liniowych (bez funkcji aktywacji) też można stosować sploty, ale to robi się tylko wtedy, gdy mamy bardzo mało danych i gdy wiemy, że splatane wejścia korelują z sobą, najlepiej gdy splatane wejścia zawierają losowy szum a poza tym są skorelowane z sobą (najlepiej skorelowane liniowo, bo używamy modelu liniowego).
komentarz 8 grudnia 2019 przez tkz Nałogowiec (42,000 p.)
Dlaczego dostał downvoty? Wydaje mi się dużo lepszą odpowiedzią od tej wyżej...
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
Bo to odpowiedź na pytanie "dlaczego" a nie "jak"
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
Odpowiedź na pytanie 'jak' zastosować sieć neuronową do trudnego zadania wymaga minimu 30 stron ogólnej lektury i potem 30 stron lektury z jednego typu sieci. Potem próba rozwiązania danego zadania przy pomocy sieci neuronowych wymaga wiedzy które opis zawiera się w minimum kilku książkach po 200 stron, w tym nauka programowania, podsta informatyki, matematyki, analizy algorytmów, podstaw optymalizacji. Nawet jak ktoś ma opanowaną tę wiedzę to do trudnych zadań będzie potrzebował zespołu a nie własnych rąk i wiedzy 'co i jak'. Nawet jak będzie zespół, to zadanie może się okazać zbyt trudne, albo zespół może nie mieć szczęścia, bo też szczęście jest potrzebne przy rozwiązywaniu zadań przy pomocy sieci neuronowych.
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
Aha czyli wg ciebie nie mogę nauczyć się nic o sieciach neuronowych bo nie przeczytałem 50.000 stron, nie mam zespołu 50 najwybitniejszych umysłów wszech czasów i ultra-hiper-turbo szczęścia? Czy ja napisałem że chcę stworzyć sieć neuronwą dzięki której Elon Musk bedzie mnie błagał na kolanach żebym dla niego pracował? Chcę pojąć jak to działa i dlaczego, nikt nie rodzi się z tą wiedzą prawda? no chyba że jestem nie godny to przepraszam że w ogóle śmiem śmieć jaśnie panie
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
To ja przepraszam że nie przepisałęm w odpowiedzi całej książki Osowskiego :)
komentarz 8 grudnia 2019 przez tkz Nałogowiec (42,000 p.)

@Ziito, Z tego co ja wywnioskowałem, to po prostu brak Ci wiedzy by cokolwiek zrozumieć. Nie tylko tej z zakresu sztucznej inteligencji, ale i z matematyki. 

komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)

https://www.youtube.com/watch?v=sWPlLQgwxG8 

po obejżeniu 20 minut tego wykładu zdobyłem odpowiedzi na moje pytanie i o wiele więcej, a przez ponad godzinę na tym "forum informatycznym" tylko niechęć do czegokolwiek. Oficjalnie kończę temat i proszę aby żaden wymądrzający się, udający znawcę  programista-specjalista pracujący na kasie w lidlu nie udzielał już żadnej odpowiedzi w tym wątku. Dziękuję do widzienia.

komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
Ale za to ja proszę, żebyś teraz Ty się podzielił swoją wiedzą, bo my staraliśmy się najlepiej jak to możliwe w kilku zdaniach na formu. Ale zrób to bez wymądrzania się ;-)
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
Temat zamknięty, czytać nie umiemy?
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
Otwieram, czytać nie umiemy? :)
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
My chętnie i w dobrej wierze próbowaliśmy Cię w pośpiechu podszkolić, tak jak to w warunkach formu najlepiej możliwe. Dlaczego się dziwisz, że teraz chcemy abyś Ty się podzielił z nami wiedzą, którą, jak piszesz, już zdobyłeś? Podziel się, będziemy wdzięczni. Otwieram dyskusję! Aha, i mam prośbę: jak będziesz nam tłumaczył o sieciach neuronowych, to nie rób tego błedu co ja i nie pisz tego co ktoś CI kiedyś powiedział, ja oczekuję samych orygnialnych wiadomości :)
komentarz 8 grudnia 2019 przez Comandeer Guru (601,590 p.)

@Ziito, proszę nie obrażać innych użytkowników forum.

komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
NIe obrażam tylko pytam
komentarz 8 grudnia 2019 przez Comandeer Guru (601,590 p.)
Nie mam zamiaru dyskutować, Twoje słowa w stosunku do @mmarszik są ewidentnie obraźliwe i jeśli taka sytuacja się powtórzy, zostaną wyciągnięte konsekwencje.
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
może pan commanderek coś powie na temat tego że padło tu tyle odpowiedzi i żadnej trafnej? chce zamknąć temat ale kolega nachalny usiłuje za wszelką cenę ciągnąć to dalej co jest oznaką debilizmu dla mnie. POwiedziałem już że chce zamknąć temat i to właśnie robię i prośżę uprzejmie nie pisać więcej nic bo mnie wkurzają te powiadomienia. ELO
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)

@Ziito,
Powiedziałęś że przez 20 minut z tamtego (zresztą bardzo dobrego) filmu nabrałeś wiedzy,bądź konsekwentny, podziel się w zarysie tą wiedzą. Powiedziało się A, to wypada powiedzieć B.

komentarz 8 grudnia 2019 przez Comandeer Guru (601,590 p.)
@Ziito, widzę, że nie chcesz zrozumieć. Kolejny taki komentarz oznacza ban.
komentarz 8 grudnia 2019 przez Ziito Obywatel (1,110 p.)
Po pierwsze to jakie konsekwencje? zablokujecie mnie? i co z tego? założe nowe konto i koniec tematu. Po drugie nie mam zamiaru dyskutować wracam do nauki i żegnam ozięble.
komentarz 8 grudnia 2019 przez mmarszik Mądrala (7,390 p.)
Pytam nie po to, aby kogoś blokować, tylko żeby poszerzyć swoją wiedzę, bo z Twoich słów wynika, że można czegos się od Ciebie dowiedzieć. A jak nie chcesz, to po co piszałeś że dowiedziałeś sie tak dużo?

Podobne pytania

0 głosów
1 odpowiedź 459 wizyt
0 głosów
1 odpowiedź 807 wizyt
0 głosów
0 odpowiedzi 248 wizyt
pytanie zadane 9 marca 2022 w Inne języki przez Kobzdziej Nowicjusz (120 p.)

92,579 zapytań

141,432 odpowiedzi

319,663 komentarzy

61,964 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...