Implementasi PyTorch dari Jaringan Relasional - Modul Jaringan Saraf Sederhana untuk Penalaran Relasional
Diimplementasikan & diuji pada tugas semacam clevr.
Semacam CLEVR adalah versi Clevr yang disederhanakan. Ini terdiri dari 10000 gambar dan 20 pertanyaan (10 pertanyaan relasional dan 10 pertanyaan non-relasional) per setiap gambar. 6 warna (merah, hijau, biru, oranye, abu -abu, kuning) ditugaskan untuk bentuk yang dipilih secara acak (persegi atau lingkaran), dan ditempatkan pada gambar.
Pertanyaan non-relasional terdiri dari 3 subtipe:
Pertanyaan ini "non-relasional" karena agen hanya perlu fokus pada objek tertentu.
Pertanyaan relasional terdiri dari 3 subtipe:
Pertanyaan -pertanyaan ini "relasional" karena agen harus mempertimbangkan hubungan antara objek.
Pertanyaan dikodekan ke dalam vektor ukuran 11: 6 untuk vektor satu-panas untuk warna tertentu di antara 6 warna, 2 untuk vektor satu-panas dari pertanyaan relasional/non-relasional. 3 untuk vektor satu-panas dari 3 subtipe.

Yaitu, dengan gambar sampel yang ditunjukkan, kita dapat menghasilkan pertanyaan non-relasional seperti:
Dan pertanyaan relasional:
Buat Lingkungan Conda dari File environment.yml
$ conda env create -f environment.yml
Aktifkan lingkungan
$ conda activate RN3
Jika Anda tidak menggunakan Conda Instal Python 3 secara normal dan menggunakan pip install untuk menginstal sisa dependensi. Daftar dependensi dapat ditemukan dalam file environment.yml .
$ ./run.sh
atau
$ python sort_of_clevr_generator.py
untuk menghasilkan semacam dataset dan
$ python main.py
untuk melatih model RN biner. Atau, gunakan
$ python main.py --relation-type=ternary
untuk melatih model RN ternary.
Dalam makalah asli, tugas semacam clevr menggunakan model yang berbeda dari tugas Clevr. Namun, karena model yang digunakan Clevr membutuhkan waktu yang jauh lebih sedikit untuk menghitung (jaringan jauh lebih kecil), model ini digunakan untuk tugas semacam CLEVR.
| Jaringan Relasional (Zaman ke -20) | CNN + MLP (tanpa RN, Zaman 100) | |
|---|---|---|
| Pertanyaan non-relasional | 99% | 66% |
| Pertanyaan relasional | 89% | 66% |
CNN + MLP terjadi overfitting ke data pelatihan.
Jaringan relasional menunjukkan hasil yang jauh lebih baik dalam pertanyaan relasional dan pertanyaan non-hubungan.
@GNGDB mempercepat model 10 kali.