Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

tf.compat.v1.train.AdamOptimizer

Lihat sumber di GitHub

Optimizer yang mengimplementasikan algoritma Adam.

Mewarisi Dari: Optimizer

Digunakan di notebook

Digunakan dalam panduan Digunakan dalam tutorial

Referensi:

Adam - Sebuah Metode Stochastic Optimization: . Kingma et al, 2015 ( pdf )

learning_rate Sebuah Tensor atau nilai floating point. Tingkat pembelajaran.
beta1 Sebuah nilai float atau float tensor konstan. Tingkat peluruhan eksponensial untuk estimasi saat 1st.
beta2 Sebuah nilai float atau float tensor konstan. Tingkat peluruhan eksponensial untuk estimasi saat-2.
epsilon Sebuah konstan kecil untuk stabilitas numerik. epsilon ini adalah "epsilon topi" di Kingma dan Ba ​​kertas (dalam formula sebelum Bagian 2.1), bukan epsilon di Algoritma 1 kertas.
use_locking Jika kunci digunakan Benar untuk operasi update.
name nama opsional untuk operasi dibuat ketika menerapkan gradien. Defaultnya adalah "Adam".

metode

apply_gradients

Lihat sumber

Terapkan gradien untuk variabel.

Ini adalah bagian kedua dari minimize() . Ini mengembalikan sebuah Operation yang berlaku gradien.

args
grads_and_vars Daftar (gradien, variabel) pasang sebagai dikembalikan oleh compute_gradients() .
global_step Opsional Variable untuk kenaikan per satu setelah variabel telah diperbarui.
name nama opsional untuk operasi kembali. Default ke nama diteruskan ke Optimizer konstruktor.

Pengembalian
Sebuah Operation yang menerapkan gradien tertentu. Jika global_step tidak ada, operasi yang juga increment global_step .

kenaikan gaji
TypeError Jika grads_and_vars adalah kelainan bentuk.
ValueError Jika tidak ada variabel memiliki gradien.
RuntimeError Jika Anda harus menggunakan _distributed_apply() sebagai gantinya.

compute_gradients

Lihat sumber

Hitung gradien dari loss untuk variabel-variabel di var_list .

Ini adalah bagian pertama dari minimize() . Ia mengembalikan daftar (gradien, variabel) pasang di mana "gradien" adalah gradien untuk "variabel". Perhatikan bahwa "gradien" bisa menjadi Tensor , sebuah IndexedSlices , atau None jika tidak ada gradien untuk variabel diberikan.

args
loss Sebuah Tensor mengandung nilai untuk meminimalkan atau mengambil callable tanpa argumen yang mengembalikan nilai untuk meminimalkan. Ketika eksekusi ingin diaktifkan itu harus menjadi callable.
var_list Daftar opsional atau tuple dari tf.Variable untuk memperbarui untuk meminimalkan loss . Default ke daftar variabel yang dikumpulkan dalam grafik di bawah kunci GraphKeys.TRAINABLE_VARIABLES .
gate_gradients Cara gerbang perhitungan gradien. Bisa GATE_NONE , GATE_OP , atau GATE_GRAPH .
aggregation_method Menentukan metode yang digunakan untuk menggabungkan istilah gradien. Nilai yang valid didefinisikan di kelas AggregationMethod .
colocate_gradients_with_ops Jika Benar, coba colocating gradien dengan yang sesuai op.
grad_loss Pilihan. Sebuah Tensor memegang gradien dihitung untuk loss .

Pengembalian
Daftar (gradien, variabel) pasang. Variabel selalu hadir, tapi gradien bisa None .

kenaikan gaji
TypeError Jika var_list mengandung apa pun dari Variable obyek.
ValueError Jika beberapa argumen yang tidak valid.
RuntimeError Jika disebut dengan eksekusi bersemangat diaktifkan dan loss tidak callable.

Kompatibilitas bersemangat

Ketika eksekusi bersemangat diaktifkan, gate_gradients , aggregation_method , dan colocate_gradients_with_ops diabaikan.

get_name

Lihat sumber

get_slot

Lihat sumber

Kembali slot bernama name dibuat untuk var oleh Optimizer.

Beberapa Optimizer subclass menggunakan variabel tambahan. Misalnya Momentum dan Adagrad penggunaan variabel untuk update menumpuk. Metode ini memberikan akses ke Variable obyek jika untuk beberapa alasan Anda membutuhkan mereka.

Gunakan get_slot_names() untuk mendapatkan daftar nama slot yang diciptakan oleh Optimizer .

args
var Sebuah variabel dilewatkan ke minimize() atau apply_gradients() .
name Sebuah benang.

Pengembalian
The Variable untuk slot jika dibuat, None sebaliknya.

get_slot_names

Lihat sumber

Kembali daftar nama-nama slot diciptakan oleh Optimizer .

Lihat get_slot() .

Pengembalian
Sebuah daftar string.

minimize

Lihat sumber

Menambahkan operasi untuk meminimalkan loss oleh memperbarui var_list .

Metode ini hanya menggabungkan panggilan compute_gradients() dan apply_gradients() . Jika Anda ingin memproses gradien sebelum menerapkannya panggilan compute_gradients() dan apply_gradients() secara eksplisit daripada menggunakan fungsi ini.

args
loss Sebuah Tensor mengandung nilai untuk meminimalkan.
global_step Opsional Variable untuk kenaikan per satu setelah variabel telah diperbarui.
var_list Daftar opsional atau tuple dari Variable objek untuk memperbarui untuk meminimalkan loss . Default ke daftar variabel yang dikumpulkan dalam grafik di bawah kunci GraphKeys.TRAINABLE_VARIABLES .
gate_gradients Cara gerbang perhitungan gradien. Bisa GATE_NONE , GATE_OP , atau GATE_GRAPH .
aggregation_method Menentukan metode yang digunakan untuk menggabungkan istilah gradien. Nilai yang valid didefinisikan di kelas AggregationMethod .
colocate_gradients_with_ops Jika Benar, coba colocating gradien dengan yang sesuai op.