9. Pytorch és a kézzel írt számjegyek (MNIST)
Megismerkedünk a Pytorch keretrendszerrel, úgy hogy saját hálózatot éptünk és tanítunk. Kézzel írt számjegyeket fogunk felismerni az MNIST dataset segítségével.
A Pytorch az egyik legismertebb és legnagyszerűbb keretrendszer neurális hálók tanítására. Ezt a rendszert kezdjük megismerni ezzel a tanfolyammal.
Kézzel írt számjegyeket fogunk felismerni az MNIST dataset segítségével. Látni fogjuk, hogy a képek pixeleit Tensor formátummá kell alakítanunk, hogy használni tudjuk a hálózatunkban. Figyelni kell a méretekre és a típusra is! A Tensorok közeli rokonai a Numpy arraynek - ami arról híres, hogy C-ben van implementálva. Annyira, hogy megelégszenek ugyan azzal a memóriával is, azaz amikor egy Tensorból Numpy array lesz, a háttérben nem is történik tényleges másolás, csak egy másik pointer fog arra címre mutatni.
Létrehozzuk első saját "fully connected" kétrétegű neurális hálózatunkat és végig vesszük a betanítás lépéseit. A végén meg kiszámoljuk a pontosságát a teszt adatok segítségével.
1. Pytorch telepítése
2. MNIST datasettel saját hálózatot tanítunk
3. Kétrétegű hálózatot hozunk létre
4. MNIST letöltése
5. Megnézzük a képeket a datasetből matplotlibbel
6. Hogyan lesz ebből predikció?
7. A kimenet valószínűséggé alakítása
8. SoftMax valószínűségre
9. Loss function
10. CrossEntropy loss
11. Gradient descent
12. CrossEntropy pytorchban
13. Stochastic gradient descent(SGD)
14. Trainloader, segít csoportosan betölteni a képeket
15. Transform a képekre
16. Trainloader felboncolása
17. Hálózat tanítása
18. Kép méretezése
19. Zerograd, paraméterek nullzása
20. Loss kiiratása
21. Testdataset letöltése
22. Accuracy kiszámolása
23. Prediction avagy inference
24. Accuracy, tensorból numpy array és azon a mean()
25. Hyperparameters
26. Hyperparameter tuning, manualseed
Project letöltése
Péter Litkei