Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

tf.keras.optimizers.Adagrad

TensorFlow 1 versi Lihat sumber di GitHub

Optimizer yang mengimplementasikan algoritma Adagrad.

Mewarisi Dari: Optimizer

Digunakan di notebook

Digunakan dalam tutorial

Adagrad adalah optimizer dengan tingkat pembelajaran parameter spesifik, yang disesuaikan relatif terhadap seberapa sering parameter akan diperbarui selama pelatihan. Semakin update parameter menerima, semakin kecil update.

learning_rate Sebuah Tensor , nilai floating point, atau jadwal yang adalah tf.keras.optimizers.schedules.LearningRateSchedule . Tingkat pembelajaran.
initial_accumulator_value Nilai floating point. Mulai nilai untuk akumulator, harus non-negatif.
epsilon Sebuah kecil nilai floating point untuk menghindari nol penyebut.
name Opsional nama awalan untuk operasi dibuat ketika menerapkan gradien. Defaultnya "Adagrad" .
**kwargs argumen kata kunci. Diizinkan untuk menjadi salah satu dari "clipnorm" atau "clipvalue" . "clipnorm" (float) klip gradien oleh norma; "clipvalue" (float) klip gradien berdasarkan nilai.

Referensi:

name Sebuah string yang tidak kosong. Nama digunakan untuk akumulator diciptakan untuk optimizer.
**kwargs argumen kata kunci. Boleh { clipnorm , clipvalue , lr , decay }. clipnorm adalah klip gradien dengan norma; clipvalue adalah klip gradien dengan nilai, decay termasuk untuk kompatibilitas untuk memungkinkan waktu peluruhan kebalikan dari tingkat belajar. lr disertakan untuk kompatibilitas, dianjurkan untuk menggunakan learning_rate sebagai gantinya.

ValueError Jika namanya kelainan bentuk.

iterations Variabel. Jumlah pelatihan langkah Optimizer ini telah berjalan.
weights Pengembalian variabel Optimizer ini berdasarkan urutan dibuat.

metode

add_slot

Lihat sumber

Menambahkan variabel slot yang baru untuk var .

add_weight

Lihat sumber

apply_gradients

Lihat sumber

Terapkan gradien untuk variabel.

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

Metode ini merangkum gradien dari semua replika di hadapan tf.distribute.Strategy secara default. Anda dapat agregat gradien diri dengan melewati experimental_aggregate_gradients=False .

Contoh:

 grads = tape.gradient(loss, vars)
grads = tf.distribute.get_replica_context().all_reduce('sum', grads)
# Processing aggregated gradients.
optimizer.apply_gradients(zip(grads, vars),
    experimental_aggregate_gradients=False)

 

args
grads_and_vars Daftar (gradien, variabel) pasang.
name nama opsional untuk operasi kembali. Default ke nama diteruskan ke Optimizer konstruktor.
experimental_aggregate_gradients Apakah untuk jumlah gradien dari replika yang berbeda dalam Keberadaan ini tf.distribute.Strategy . Jika False, tanggung jawab pengguna itu untuk agregat gradien. Default Benar.

Pengembalian
Sebuah Operation yang menerapkan gradien tertentu. The iterations akan secara otomatis meningkat sebesar 1.

kenaikan gaji
TypeError Jika grads_and_vars adalah kelainan bentuk.
ValueError Jika tidak ada variabel memiliki gradien.

from_config

Lihat sumber

Menciptakan optimizer dari konfigurasi nya.

Metode ini adalah kebalikan dari get_config , mampu instantiating optimizer yang sama dari config kamus.

argumen
config Sebuah Python kamus, biasanya output dari get_config.
custom_objects Sebuah Python pemetaan nama kamus untuk tambahan Python benda yang digunakan untuk membuat optimizer ini, seperti fungsi yang digunakan untuk hyperparameter a.

Pengembalian
Sebuah optimizer misalnya.

get_config

Lihat sumber

Mengembalikan konfigurasi dari optimizer.

Sebuah config optimizer adalah kamus Python (serializable) yang berisi konfigurasi dari optimizer. Optimizer yang sama dapat reinstantiated kemudian (tanpa negara disimpan) dari konfigurasi ini.

Pengembalian
Python kamus.

get_gradients

Lihat sumber

Pengembalian gradien dari loss sehubungan dengan params .

argumen
loss tensor kerugian.
params Daftar variabel.

Pengembalian
Daftar tensor gradien.

kenaikan gaji
ValueError Dalam hal gradien apapun tidak dapat dihitung (misalnya jika fungsi gradien tidak dilaksanakan).

get_slot

Lihat sumber

get_slot_names

Lihat sumber

Daftar nama untuk slot ini optimizer ini.

get_updates

Lihat sumber

get_weights

Lihat sumber

Mengembalikan berat saat optimizer.

Bobot dari optimizer adalah negara (yaitu, variabel). Fungsi ini mengembalikan nilai-nilai berat badan yang berhubungan dengan optimizer ini sebagai daftar array Numpy. Nilai pertama selalu iterasi menghitung dari optimizer, diikuti oleh variabel negara optimizer dalam urutan mereka diciptakan. daftar kembali pada gilirannya dapat digunakan untuk keadaan beban ke pengoptimalan sama diparameterisasi.

Sebagai contoh, optimizer RMSprop untuk model sederhana ini mengembalikan daftar tiga values-- jumlah iterasi, diikuti oleh nilai akar-mean-square dari kernel dan bias dari lapisan padat tunggal:

opt = tf.keras.optimizers.RMSprop()
m = tf.keras.models.Sequential([tf.keras.layers.Dense(10)])
m.compile(opt, loss='mse')
data = np.arange(100).reshape(5, 20)
labels = np.zeros(5)
print('Training'); results = m.fit(data, labels)
Training ...
len(opt.get_weights())
3

Pengembalian
nilai-nilai bobot sebagai daftar array numpy.

minimize

Lihat sumber

Meminimalkan loss oleh memperbarui var_list .

Metode ini hanya menghitung gradien menggunakan tf.GradientTape dan panggilan apply_gradients() . Jika Anda ingin memproses gradien sebelum menerapkan kemudian memanggil tf.GradientTape dan apply_gradients() secara eksplisit daripada menggunakan fungsi ini.

args
loss Sebuah callable mengambil tanpa argumen yang mengembalikan nilai untuk meminimalk