learning to learn
1.0.0
python train.py --problem=mnist --save_path=./mnist
Bendera baris perintah:
save_path
: Jika ada, pengoptimal akan disimpan ke jalur yang ditentukan setiap kali kinerja evaluasi ditingkatkan.num_epochs
: Jumlah periode pelatihan.log_period
: Waktu sebelum kinerja dan waktu rata-rata dilaporkan.evaluation_period
: Periode sebelum pengoptimal dievaluasi.evaluation_epochs
: Jumlah periode evaluasi.problem
: Masalah untuk dilatih. Lihat bagian Masalah di bawah.num_steps
: Jumlah langkah optimasi.unroll_length
: Jumlah langkah pembukaan gulungan untuk pengoptimal.learning_rate
: Kecepatan pembelajaran.second_derivatives
: Jika true
, pengoptimal akan mencoba menghitung turunan kedua melalui fungsi kerugian yang ditentukan oleh masalah. python evaluate.py --problem=mnist --optimizer=L2L --path=./mnist
Bendera baris perintah:
optimizer
: Adam
atau L2L
.path
: Jalur ke pengoptimal yang disimpan, hanya relevan jika menggunakan pengoptimal L2L
.learning_rate
: Kecepatan pembelajaran, hanya relevan jika menggunakan pengoptimal Adam
.num_epochs
: Jumlah periode evaluasi.seed
: Benih untuk pembuatan nomor acak.problem
: Masalah untuk dievaluasi. Lihat bagian Masalah di bawah.num_steps
: Jumlah langkah optimasi. Skrip pelatihan dan evaluasi mendukung masalah berikut (lihat util.py
untuk detail selengkapnya):
simple
: Fungsi kuadrat satu variabel.simple-multi
: Fungsi kuadrat dua variabel, dengan salah satu variabel dioptimalkan menggunakan pengoptimal yang dipelajari dan variabel lainnya menggunakan Adam.quadratic
: Kumpulan fungsi kuadrat sepuluh variabel.mnist
: Klasifikasi mnist menggunakan jaringan dua lapis yang terhubung penuh.cifar
: Klasifikasi Cifar10 menggunakan jaringan saraf konvolusional.cifar-multi
: Klasifikasi Cifar10 menggunakan jaringan saraf konvolusional, yang menggunakan dua pengoptimal yang dipelajari secara independen. Satu untuk mengoptimalkan parameter dari lapisan konvolusional dan satu lagi untuk parameter dari lapisan yang terhubung sepenuhnya. Masalah baru dapat diimplementasikan dengan sangat mudah. Anda dapat melihat di train.py
bahwa metode meta_minimize
dari kelas MetaOptimizer
diberikan fungsi yang mengembalikan operasi TensorFlow yang menghasilkan fungsi kerugian yang ingin kita minimalkan (lihat problems.py
sebagai contoh).
Semua operasi dengan efek samping Python (misalnya pembuatan antrean) harus dilakukan di luar fungsi yang diteruskan ke meta_minimize
. Fungsi cifar10
di problems.py
adalah contoh bagus fungsi kerugian yang menggunakan antrean TensorFlow.
Penafian: Ini bukan produk resmi Google.