Treningowe sieci neuronowe

Backpropagacja to najczęstszy algorytm treningowy w sieciach neuronowych. Dzięki temu można też z niego korzystać w wielowarstwowych sieciach neuronowych. TensorFlow automatycznie obsługuje wsteczną propagację, więc nie musisz dogłębnie poznawać algorytm. Aby zrozumieć, jak to działa, zapoznaj się z tymi materiałami: Wizualne wyjaśnienie algorytmu propagacji wstecznej. Podczas przeglądania poprzedniego wyjaśnienia pamiętaj o tych kwestiach:

  • Przepływ danych przez wykres.
  • Jak programowanie dynamiczne pozwala uniknąć obliczania wykładniczego wielu ścieżek na wykresie. „Programowanie dynamiczne” oznacza tu jedynie rejestrowanie wyników pośrednich w przejściu do przodu i do tyłu.

Treningowe sieci neuronowe

  • Gradienty są ważne
    • Jeśli jest rozróżnialność, prawdopodobnie można się na niej nauczyć
  • Gradienty są ważne
    • Jeśli jest rozróżnialność, prawdopodobnie można się na niej nauczyć
  • Gradienty mogą zniknąć
    • Każda dodatkowa warstwa może stopniowo ograniczać sygnał w porównaniu z szumem
    • W tym przypadku przydatne są raporty ReLu
  • Gradienty są ważne
    • Jeśli jest rozróżnialność, prawdopodobnie można się na niej nauczyć
  • Gradienty mogą zniknąć
    • Każda dodatkowa warstwa może stopniowo ograniczać sygnał w porównaniu z szumem
    • W tym przypadku przydatne są raporty ReLu
  • Gradienty mogą eksplodować
    • Tempo uczenia się jest tu ważne
    • Pomocna może być normalizacja wsadowa (przydatna pokrętła).
  • Gradienty są ważne
    • Jeśli jest rozróżnialność, prawdopodobnie można się na niej nauczyć
  • Gradienty mogą zniknąć
    • Każda dodatkowa warstwa może stopniowo ograniczać sygnał w porównaniu z szumem
    • W tym przypadku przydatne są raporty ReLu
  • Gradienty mogą eksplodować
    • Tempo uczenia się jest tu ważne
    • Pomocna może być normalizacja wsadowa (przydatna pokrętła).
  • Warstwy ReLu mogą umrzeć
    • Zachowaj spokój i obniż tempo nauki
  • Chcemy, aby nasze funkcje były dostosowane do potrzeb użytkowników.
    • Zwykle dobrze sprawdza się zakres przybliżony do zera, zakres [-1, 1].
    • Ułatwia zbieganie się ze spadkiem gradientu dzięki unikaniu pułapki NaN
    • Unikanie wartości odstających może również pomóc
  • Możesz użyć kilku standardowych metod:
    • Skala liniowa
    • Ograniczenie twarde (przycinanie) do wartości maksymalnej, min
    • Skalowanie logu
  • Porzucenia: inna forma regularyzacji, przydatna w przypadku NN
  • Działa przez losowe „opuszczanie” jednostek w sieci dla pojedynczego kroku gradientu.
    • Istnieje tu powiązanie ze zbiorczymi modelami
  • Im więcej tracisz, tym silniejsza jest regularność
    • 0,0 = brak regularyzacji porzuceń
    • 1,0 = porzuć wszystko! niczego się nie uczy
    • Wartości pośrednie są bardziej przydatne