Python za neuralne mreže
Sadržaj
Prvi deo: Osnove neuralnih mreža, Python okruženje i prvi modeli
Neuralne mreže predstavljaju jedan od najvažnijih pravaca savremene računarske inteligencije. One pokušavaju da iz podataka nauče složene obrasce, veze i reprezentacije, koristeći neurone, slojeve, težine, aktivacione funkcije i proces treniranja. Prvi deo praktikuma uvodi osnovne pojmove neuralnih mreža, Python okruženje, NumPy, podatke, tenzore, perceptron, višeslojnu mrežu, funkcije greške, optimizaciju, backpropagation i prve praktične modele.
I. Uvod u neuralne mreže i duboko učenje
1. Šta su neuralne mreže – ideja učenja kroz neurone, slojeve i podatke 2. Zašto učiti Python za neuralne mreže – put od koda do inteligentnog modela 3. Mašinsko učenje i duboko učenje – gde neuralne mreže pripadaju 4. Biološka inspiracija i veštački neuron – od intuicije do matematičkog modela 5. Kako neuralna mreža uči – težine, greške, korekcije i iteracijeII. Python okruženje, biblioteke i podaci
6. Python okruženje za deep learning – venv, Jupyter, biblioteke i radni projekat 7. NumPy i matrice – osnovni jezik računanja u neuralnim mrežama 8. Pandas i priprema podataka – ulazni skupovi, kolone, čišćenje i transformacije 9. Tenzori i oblici podataka – skalar, vektor, matrica i višedimenzionalni ulazi 10. Train, validation i test skup – kako proveravamo da li model zaista učiIII. Neuron, perceptron i osnovna mreža od nule
11. Veštački neuron u Pythonu – ulazi, težine, bias i izlaz 12. Aktivacione funkcije – sigmoid, tanh, ReLU, softmax i njihova uloga 13. Perceptron – najjednostavniji model za učenje granice odlučivanja 14. Funkcije greške – kako model meri koliko je pogrešio 15. Gradient descent – kako model korak po korak smanjuje greškuIV. Backpropagation i višeslojne neuralne mreže
16. Backpropagation – kako se greška vraća kroz mrežu 17. MLP – višeslojni perceptron i prva prava feedforward mreža 18. Skriveni slojevi – kako mreža gradi unutrašnje reprezentacije 19. Learning rate, epoch i batch size – ritam učenja neuralne mreže 20. Prva neuralna mreža od nule – NumPy implementacija malog modelaDrugi deo: TensorFlow, PyTorch, duboke arhitekture i praktični projekti
Kada se razumeju osnove neurona, slojeva, greške i optimizacije, slede alati koji se koriste u realnom radu: TensorFlow, Keras i PyTorch. Drugi deo praktikuma vodi kroz izgradnju modela pomoću gotovih biblioteka, klasifikaciju slika, rad sa tekstom, konvolutivne mreže, rekurentne mreže, LSTM, osnovnu ideju transformera, regularizaciju, čuvanje modela, evaluaciju i mini projekte. Cilj je da čitalac razume ne samo kako se kod pokreće, već i šta se zaista dešava u modelu.
V. TensorFlow i Keras u praksi
21. Uvod u TensorFlow i Keras – jednostavna izgradnja neuralnih mreža 22. Sequential model – slaganje slojeva u prvu Keras mrežu 23. Compile, fit i evaluate – životni ciklus treniranja modela 24. Klasifikacija sa Kerasom – od podataka do predikcije klase 25. Regresija sa neuralnom mrežom – predviđanje brojčanih vrednostiVI. PyTorch i ručnija kontrola modela
26. Uvod u PyTorch – tenzori, autograd i fleksibilno treniranje 27. PyTorch Dataset i DataLoader – organizacija podataka za treniranje 28. nn.Module – pravljenje sopstvene neuralne mreže u PyTorchu 29. Training loop – ručno treniranje, optimizacija i praćenje greške 30. TensorFlow ili PyTorch – kako izabrati alat za svoj projekatVII. Duboke arhitekture: slike, sekvence i tekst
31. CNN – konvolutivne neuralne mreže za slike i prostorne obrasce 32. Pooling i feature maps – kako mreža prepoznaje oblike u slikama 33. RNN – rekurentne mreže za sekvence, tekst i vremenske nizove 34. LSTM i GRU – pamćenje dužih zavisnosti u podacima 35. Transformeri – attention mehanizam i savremeni modeli jezikaVIII. Regularizacija, evaluacija, čuvanje modela i mini projekti
36. Overfitting, regularizacija i dropout – kako sprečiti da mreža pamti napamet 37. Metrike i confusion matrix – kako tumačiti uspeh neuralne mreže 38. Čuvanje i učitavanje modela – kako sačuvati naučeno znanje 39. Mini projekat – klasifikacija slika pomoću konvolutivne neuralne mreže 40. Mini projekat – tekst, sentiment ili vremenski niz pomoću neuralne mrežeZaključak: Python za neuralne mreže kao praktičan most između koda, podataka i računarske inteligencije