Introduction to ANNs Flashcards
Jak dziala backpropagation?
Przechodzi do przodu i do tylu, oblicza gradient bledu ze wzgledu na wszystkie parametry. Potem po prostu dziala Gradient Descent, az do osiagniecia rozwiazania
Szczegolowo:
- Dzieli dane na batche ( male porcje np po 32)
- kazdy batch jest przesylany do input layer
- algorytm wylicza output kazdej warstwy, az do output, kazdy posredni wynik zostaje zachowany
- mierzymy error
- mierzymy jak kazde polaczenie OUTPUTU wplynelo na wynik - chain rule (pochodna zlozona)
- schodzimy nizej i dalej obliczamy wplyw na blad – pomiar gradientu
- Gradient descent i poprawa wag polaczen
Poczatkowe wartosci wag sa wybrane RANDOMOWO, inaczej moze wgl nie dzialac
TLU
_
Rodzaje funkcji aktywacyjnych
hyperbolic tangent
logistic function
relu
Dlaczego funkcje aktywacyjne zastapily step?
Zastapily proste step functions -step functions zawieraly tylko plaskie odcinki, na ktorych gradient nie moze dzialac, a te maja ciagle pochodne _
Po co funkcje aktywacyjne?
Polaczenie transformacji liniowych daje transormacje liniowa
Gdybysmy mieli liniowa zaleznosc miedzy warstwami, wszystkie bylyby rownowazne 1 warstwie, wypadkowej
Czym jest huber loss?
Kombincja MSE i MAE
Zaleta funkcji softmax i gdzie uzyc
Zwraca wartosci z przedzialu 0,1 ktore sumuja sie do 1. Uzyc klasyfikacji na pare klas
Cross-entropy function
_
Co jesli nasz model osiaga duzo lepsze wyniki niz na validation set?
_
Co jesli nasze dane sa bardzo skosne?
Mozna zwiekszyc wagi mniejszych klas
Po co nam sample_weight?
np jakby niektore instancje byly ocenione przez ekspertow
Po co multiple outputs?
_
Po co wiele loss functions przy multiple outputs?
moga opisywac rozne problemy, mozna im nadac wagi, poniewaz na koncu sie sumuja do lacznego kosztu
Jak dziala wide and deep network?
_
Po co robic dynamiczne modele?
umozliwiaja tworzenie wlasnych modyfikacji, petli, warunkow
Do czego sluza callbacks?
mozna ustalic co model ma robic na starcie, koncu trenowania czy kazdego epocha
Jak wprowadzic early stopping?
albo za pomoca ModelCheckPoint - save_best_only
albo za pomoca EarlyStopping
Po co i jak korzystac z Tensorboard?
Do wizualizacji trenowania naszego modelu.
Output musi byc zapisywany do binarnych - event files
Co trzeba zrobic zeby wykorzystac GridSearch albo Randomized?
trzeba opakowac nasz model w Scikit i uzyc
keras_reg = keras.wrappers.scikit_learn.KerasRegressor(build_model)
Jakie sa przykladowe biblioteki do optymalizacji hyperparametrow i na jakiej zasadzie dzialaja?
Dzialaja na zasadzie zoomingu - obiecujace przestrzenie parametrow powinny byc bardziej sprawdzane
np:
Hyperopt
Hyperas
scikit-optimize
Dlaczego warto uzyc wiekszej ilosci warstw?
Glebokie sieci maja wyzszy parameter efficiency - moga modelowac skomplikowane rzeczy z duza mniejsza iloscia neuronow niz 1 warstwa - zasada rysowania lasu
lower hidden layers model low-level struc‐
tures (e.g., line segments of various shapes and orientations), intermediate hidden
layers combine these low-level structures to model intermediate-level structures (e.g.,
squares, circles), and the highest hidden layers and the output layer combine these
intermediate structures to model high-level structures (e.g., faces).
Jaka powinna byc ilosc neuronow inputu?
taka jaka ilosc cech kazdej instancji
strech pants approach
wybieramy model ze zbyt duza iloscia warstw i neuronow -> early stopping zeby zapobiec overfittingowi
optymalna learning rate
okolo polowa maksymalnej learning rate –> lepiej zaczac od duzej i dzielic przez 3
optymalny rozmiar batch size
generalnie mniej niz 32