NEURONSKE MREŽE 2. predavanje dr Zoran Ševarac sevarac@gmail.com
Zаšto neuronske mreže? Omogućavaju naprednu obradu podataka / signala bez pre-definisanog modela ili algoritma Mogu da rešavaju složene probleme koji nisu teško rešivi nekim algoritamskim postupkom Primenjive su na širok spektar problema
KADA SE KORISTE NM Kada nema jasno definisanog matematičkog modela ili drugog rešenja Kada je potrebna sposobnost učenja i iskustveno znanje Kada je potrebna otpornost na nepotpun ili pogrešan ulaz Visokodimenzionalnost Kada se sa NM postižu bolji rezultati nego sa alternativnim rešenjima (npr. odziv u realnom vremenu, tolerancija na greške)
VRSTE PROBLEMA ZA KOJE SE KORISTE VNM Klasifikacija Regresija Klasterizacija Predviđanje vremenskih serija Preprocesiranje podataka Obrada signala, prepoznavanje slika, govora ... Aproksimacija, optimizacija i modeliranje sistema Kontrola i upravljanje
PRIMERI PRIMENE Prepoznavanje slika, teksta, lica, otisaka prstiju Prepoznavanje objekata na radaru Predviđanje na berzi Medicinska dijagnostika Filtriranje šuma u signalu Aerodinamična konfiguracija ploča kod F-117 Optimizacija marketinških kampanja (predviđanje klikova) Inteligentna automatizacija procesa Računarske igre, razvoj softvera
Procedura rešavanje problema pomoću NM Priprema podataka (netipične vrednosti, normalizacija, standardizacija, kodiranje binarnim vektorima) Trening mreže Evaluacija/testiranje mreže Trening i test set Hiperparametarska optimizacija: određivanje optimalnih parametara mreže i treninga eksperimentalnim putem (broj neurona, broj slojeva neurona, parametri algoritma za učenje, podaci za trening) Validation set
Višeslojni perceptron Proširenje osnovnog perceptrona – ima jedan ili više skrivenih slojeva neurona između ulaznog i izlaznog Glatke/diferencijabilne funkcije transfera u neuronima (sigmoid tanh, ReLU ...) Koristi Backpropagation algoritam za učenje koji se zasniva na LMS algoritmu. Mogu da rešavaju složene nelinearne probleme
Backpropagation algoritma Osnovne komponente Backpropagation algoritma Funkcija greške (Loss = dE/dw): Mean Squared Error Cross Entropy Algoritam za optimizaciju: Stochastic Gradient Descent (SGD) Traži minimum funkcije greške
Backpropagation algoritam Iterativna minimizacija funkcije greske gradijentnom metodom Formula za izlazni sloj Formula za podešavanje skrivenih slojeva neurona
Parametri backpropagation algoritam Max error Max iterations Learning rate Momentum Batch mode,mini-batch
Tipični problemi Backpropagation algoritma Problem lokalnog minimuma Problem saturacije gradijenta Problem nestajućih gradijenta Preveliki gradijenti
Problem lokalnog minimuma Izvor: https://lazyprogrammer.me/tag/restricted-boltzmann-machines/
Uticaj aktivacionih funkcija - problem saturacije gradijenata i mrtvi neuroni Posledica: Ako je prvi izvod funkcije transfera u značajnom broju neurona blizu nule učenje značajno usporava ili stagnira dtf = dy/ds Sigmoid Tanh ReLU Leaky Relu https://towardsdatascience.com/activation-functions-neural-networks-1cbd9f8d91d6
Varijacije backpropagation algoritma Standardni backpropagation (SGD) Momentum Quick propagation Resilient propagation Delta bar delta Ada Grad, Ada Delta, Adam I brojni drugi
Trening i hiperparametarska optimizacija Određivanje optimalnih parametara mreže i algoritma za trening Broj skrivenih slojeva i broj neurona u svakom sloju (više ne znači bolje, cilj je imati što manje) Learning rate – brzina, korak potrebna optimalna vrednost Adaptivno podešavanje tokom učenja Momentum - ubrzanje Automatsko podešavanje parametara: Grid, random ili model based search Validacija parametara (sa probnim skupom)
Autoenkoder Nenadgledano učenje Izlazi ==Ulazi Trenira se sa Backpropagation algoritmom Otkriva kompresovanu strukturu u podacima – redukcija dimenzionalnosti https://en.wikipedia.org/wiki/Autoencoder
PROBLEMI U PRIMENI VNM Nedostatak semantike u strukturi Da li je neki problem uopšte rešiv sa NM? Problemi sa određivanjem arhitekture, i parametara algoritma za učenje Plastičnost / stabilnost
Rešenja za pojedine probleme -napredne neuronske mreže Kombinacija NM, fuzzy logike i genetskih algoritama – computational intelligence Fuzzy logika uvodi semantiku i strukturu Reinforcement learning, genetski algoritmi i sl. - pomažu u odredjivanju i optimizaciji parametara mreže i algoritma za učenje
Evaluacija klasifikatora Matrica konfuzije : TP, TN, FP, FN Metrike klasifikacije: Accuracy Precision Recall Fscore Podržava binarnu i višeklasna klasifikaciju U Neuroph Studio: Label output neurons Tools > Evaluate Classifier
Klasifikacija kvaliteta radarskih signala iz jonosfere Tip problema: binarna klasifikacija Broj ulaza: 34 Broj izlaza: 1 binarni URL: https://archive.ics.uci.edu/ml/machine-learning-databases/ionosphere/ionosphere.data