Pengoptimal yang mengimplementasikan algoritma Adadelta.
Pengoptimalan Adadelta adalah metode penurunan gradien stokastik yang didasarkan pada kecepatan pembelajaran adaptif per dimensi untuk mengatasi dua kelemahan:
- penurunan kecepatan pembelajaran yang terus-menerus selama pelatihan
- kebutuhan akan kecepatan pemelajaran global yang dipilih secara manual
Adadelta adalah ekstensi Adagrad yang lebih tangguh yang mengadaptasi kecepatan pembelajaran berdasarkan jendela pembaruan gradien yang bergerak, alih-alih mengumpulkan semua gradien sebelumnya. Dengan cara ini, Adadelta terus belajar meskipun banyak pembaruan telah dilakukan. Dibandingkan dengan Adagrad, di Adadelta versi asli Anda tidak perlu menyetel kecepatan pemelajaran awal. Dalam versi ini, kecepatan pembelajaran awal dapat diatur, seperti pada kebanyakan pengoptimal lainnya.
Menurut bagian 4.3 ("Kecepatan Pembelajaran Efektif"), menjelang akhir ukuran langkah pelatihan menyatu ke 1 yang secara efektif merupakan kecepatan pembelajaran tinggi yang akan menyebabkan perbedaan. Hal ini hanya terjadi menjelang akhir pelatihan karena gradien dan ukuran langkahnya kecil, serta konstanta epsilon pada pembilang dan penyebut mendominasi gradien sebelumnya dan pembaruan parameter yang menjadikan kecepatan pembelajaran menjadi 1.
Menurut bagian 4.4("Data Ucapan"), di mana jaringan saraf besar dengan 4 lapisan tersembunyi dilatih pada korpus data bahasa Inggris AS, ADADELTA digunakan dengan 100 replika jaringan. Epsilon yang digunakan adalah 1e-6 dengan rho=0,95 yang konvergen lebih cepat dari ADAGRAD, dengan konstruksi berikut: new AdaDelta(graph, 1.0f, 0.95f, 1e-6f);
Konstanta
Rangkaian | AKI | |
Rangkaian | AKUMULATOR_UPDATE | |
mengambang | EPSILON_DEFAULT | |
mengambang | BELAJAR_RATE_DEFAULT | |
mengambang | RHO_DEFAULT |
Konstanta yang Diwarisi
Rangkaian | VARIABEL_V2 |
Konstruktor Publik
Metode Publik
Rangkaian | dapatkan Nama Pengoptimal () Dapatkan Nama pengoptimal. |
Rangkaian | keString () |
Metode Warisan
Op | applyGradients (Daftar< GradAndVar <? extends TType >> gradsAndVars, Nama string) Menerapkan gradien ke variabel |
<T memperluas TType > Daftar< GradAndVar <?>> | |
String statis | createName ( Output <? extends TType > variabel, String slotName) Membuat nama dengan menggabungkan nama variabel dan nama slot |
Tali abstrak | dapatkan Nama Pengoptimal () Dapatkan Nama pengoptimal. |
<T memperluas TType > Opsional< Variabel <T>> | |
Operasi terakhir | dapatkanTF () Mendapatkan instans Operasi Pengoptimal |
Op | |
Op |
boolean | sama dengan (Objek arg0) |
Kelas terakhir<?> | dapatkan Kelas () |
ke dalam | Kode hash () |
kekosongan terakhir | memberitahu () |
kekosongan terakhir | beri tahuSemua () |
Rangkaian | keString () |
kekosongan terakhir | tunggu (arg0 panjang, int arg1) |
kekosongan terakhir | tunggu (argumen panjang0) |
kekosongan terakhir | Tunggu () |
Konstanta
AKUMULATOR String akhir statis publik
String akhir statis publik ACCUMULATOR_UPDATE
float akhir statis publik EPSILON_DEFAULT
float akhir statis publik LEARNING_RATE_DEFAULT
float akhir statis publik RHO_DEFAULT
Konstruktor Publik
AdaDelta publik (Grafik grafik , tingkat pembelajaran mengambang)
Membuat Pengoptimal AdaDelta
Parameter
grafik | Grafik TensorFlow |
---|---|
Tingkat pembelajaran | kecepatan pembelajaran |
AdaDelta publik ( Grafik grafik, float learningRate, float rho, float epsilon)
Membuat Pengoptimal AdaDelta
Parameter
grafik | Grafik TensorFlow |
---|---|
Tingkat pembelajaran | kecepatan pembelajaran |
rho | Faktor pembusukan |
epsilon | Epsilon konstan digunakan untuk mengkondisikan pembaruan lulusan dengan lebih baik |
AdaDelta publik (Grafik grafik , Nama string, Tingkat pembelajaran mengambang)
Membuat Pengoptimal AdaDelta
Parameter
grafik | Grafik TensorFlow |
---|---|
nama | nama untuk Pengoptimal ini (defaultnya adalah 'Adadelta') |
Tingkat pembelajaran | kecepatan pembelajaran |
AdaDelta publik ( Grafik grafik, Nama string, Kecepatan pembelajaran float, float rho, float epsilon)
Membuat Pengoptimal AdaDelta
Parameter
grafik | Grafik TensorFlow |
---|---|
nama | nama untuk Pengoptimal ini (defaultnya adalah 'Adadelta') |
Tingkat pembelajaran | kecepatan pembelajaran |
rho | Faktor pembusukan |
epsilon | Epsilon konstan digunakan untuk mengkondisikan pembaruan lulusan dengan lebih baik |
Metode Publik
String publik getOptimizerName ()
Dapatkan Nama pengoptimal.
Kembali
- Nama pengoptimal.