Repo ini berisi tutorial yang mencakup klasifikasi gambar menggunakan Pytorch 1.7, TorchVision 0.8, Matplotlib 3.3 dan Scikit-learn 0.24, dengan Python 3.8.
Kami akan mulai dengan menerapkan multilayer perceptron (MLP) dan kemudian beralih ke arsitektur menggunakan Convolutional Neural Networks (CNNS). Secara khusus, kami akan menerapkan Lenet, Alexnet, VGG dan ResNet.
Jika Anda menemukan kesalahan atau tidak setuju dengan penjelasan apa pun, jangan ragu untuk mengajukan masalah. Saya menyambut umpan balik apa pun, positif atau negatif!
Untuk menginstal Pytorch, lihat instruksi instalasi di situs web Pytorch.
Instruksi untuk menginstal pytorch juga harus merinci cara menginstal TorchVision tetapi juga dapat diinstal melalui:
pip install torchvision1 - Perceptron multilayer
Tutorial ini memberikan pengantar Pytorch dan Torchvision. Kami akan belajar cara: memuat kumpulan data, menambah data, mendefinisikan multilayer perceptron (MLP), melatih model, melihat output model kami, memvisualisasikan representasi model, dan melihat bobot model. Eksperimen akan dilakukan pada dataset MNIST - satu set digit grayscale tulisan tangan 28x28.
2 - Lenet
Dalam tutorial ini kami akan menerapkan arsitektur Lenet klasik. Kami akan melihat ke jaringan saraf konvolusional dan bagaimana lapisan konvolusional dan lapisan subsampling (alias pooling) bekerja.
3 - Alexnet
Dalam tutorial ini kami akan menerapkan Alexnet, arsitektur jaringan saraf konvolusional yang membantu memulai minat saat ini dalam pembelajaran mendalam. Kami akan pindah ke dataset CIFAR10 - gambar warna 32x32 di sepuluh kelas. Kami menunjukkan: Cara mendefinisikan arsitektur menggunakan nn.Sequential , cara menginisialisasi parameter jaringan saraf Anda, dan cara menggunakan pencari tingkat pembelajaran untuk menentukan tingkat pembelajaran awal yang baik.
4 - VGG
Tutorial ini akan mencakup penerapan model VGG. Namun, alih-alih melatih model dari awal, kami sebaliknya akan memuat model VGG yang sudah dilatih sebelumnya pada dataset Imagenet dan menunjukkan cara melakukan transfer pembelajaran untuk menyesuaikan bobotnya dengan dataset CIFAR10 menggunakan teknik yang disebut penyempurnaan diskriminatif. Kami juga akan menjelaskan bagaimana lapisan pengumpulan adaptif dan normalisasi batch bekerja.
5 - Resnet
Dalam tutorial ini kami akan menerapkan model ResNet. Kami akan menunjukkan cara memuat dataset Anda sendiri, menggunakan dataset Cub200 sebagai contoh, dan juga cara menggunakan penjadwal tingkat pembelajaran yang secara dinamis mengubah tingkat pembelajaran model Anda saat pelatihan. Secara khusus, kami akan menggunakan kebijakan satu siklus yang diperkenalkan dalam makalah ini dan sekarang mulai digunakan secara umum untuk melatih model visi komputer.
Berikut adalah beberapa hal yang saya lihat saat membuat tutorial ini. Beberapa di antaranya mungkin ketinggalan zaman.