Kode Pytorch untuk "Memperhatikan lebih banyak perhatian: Meningkatkan kinerja jaringan saraf konvolusional melalui transfer perhatian" https://arxiv.org/abs/1612.03928
Makalah Konferensi di ICLR2017: https://openreview.net/forum?id=sks9_ajex
Apa yang ada di repo ini sejauh ini:
Yang akan datang:
Kode ini menggunakan pytorch https://pytorch.org. Perhatikan bahwa percobaan asli dilakukan dengan menggunakan obor-autograd, sejauh ini kami telah memvalidasi bahwa percobaan CIFAR-10 dapat direproduksi secara tepat di Pytorch, dan sedang dalam proses melakukannya untuk Imagenet (hasilnya sangat sedikit lebih buruk di Pytorch, karena hyperparameters).
Bibtex:
@inproceedings{Zagoruyko2017AT,
author = {Sergey Zagoruyko and Nikos Komodakis},
title = {Paying More Attention to Attention: Improving the Performance of
Convolutional Neural Networks via Attention Transfer},
booktitle = {ICLR},
url = {https://arxiv.org/abs/1612.03928},
year = {2017}}
Pertama instal Pytorch, lalu instal Torchnet:
pip install git+https://github.com/pytorch/tnt.git@master
Kemudian instal paket Python lainnya:
pip install -r requirements.txt
Bagian ini menjelaskan cara mendapatkan hasil pada Tabel 1 kertas.
Pertama, latih guru:
python cifar.py --save logs/resnet_40_1_teacher --depth 40 --width 1
python cifar.py --save logs/resnet_16_2_teacher --depth 16 --width 2
python cifar.py --save logs/resnet_40_2_teacher --depth 40 --width 2
Untuk berlatih dengan berbasis aktivasi di DO:
python cifar.py --save logs/at_16_1_16_2 --teacher_id resnet_16_2_teacher --beta 1e+3
Untuk berlatih dengan KD:
python cifar.py --save logs/kd_16_1_16_2 --teacher_id resnet_16_2_teacher --alpha 0.9
Kami berencana untuk menambah+KD dengan beta yang membusuk untuk mendapatkan hasil transfer pengetahuan terbaik segera.
Kami menyediakan model pretrained resnet-18 dengan aktivasi berbasis di:
| Model | kesalahan val |
|---|---|
| Resnet-18 | 30.4, 10.8 |
| Resnet-18-resnet-34-AT | 29.3, 10.0 |
Tautan Unduh: https://s3.amazonaws.com/modelzoo-networks/resnet-18-at-export.pth
Definisi model: https://github.com/szagoruyko/functional-zoo/blob/master/resnet-18-at-export.ipynb
Plot konvergensi:
Unduh bobot pretrained untuk resnet-34 (lihat juga fungsional-zoo untuk informasi lebih lanjut):
wget https://s3.amazonaws.com/modelzoo-networks/resnet-34-export.pth
Siapkan data berikut fb.resnet.Torch dan jalankan pelatihan (misalnya menggunakan 2 GPU):
python imagenet.py --imagenetpath ~/ILSVRC2012 --depth 18 --width 1
--teacher_params resnet-34-export.hkl --gpu_id 0,1 --ngpu 2
--beta 1e+3