MulaiMulai sekarang secara gratis

Bahaya minimum lokal

Pertimbangkan plot dari fungsi loss berikut, loss_function(), yang memiliki sebuah minimum global (ditandai dengan titik di sebelah kanan) dan beberapa minimum lokal, termasuk yang ditandai dengan titik di sebelah kiri.

Grafik dari fungsi satu variabel yang memiliki beberapa minimum lokal dan satu minimum global.

Dalam latihan ini, Anda akan mencoba menemukan minimum global dari loss_function() menggunakan keras.optimizers.SGD(). Anda akan melakukannya dua kali, masing-masing dengan nilai awal input ke loss_function() yang berbeda. Pertama, Anda akan menggunakan x_1, yaitu variabel dengan nilai awal 6.0. Kedua, Anda akan menggunakan x_2, yaitu variabel dengan nilai awal 0.3. Perhatikan bahwa loss_function() sudah didefinisikan dan tersedia.

Latihan ini adalah bagian dari kursus

Pendahuluan TensorFlow di Python

Lihat Kursus

Petunjuk latihan

  • Atur opt untuk menggunakan pengoptimal stochastic gradient descent (SGD) dengan laju pembelajaran 0,01.
  • Lakukan minimisasi menggunakan fungsi loss, loss_function(), dan variabel dengan nilai awal 6.0, x_1.
  • Lakukan minimisasi menggunakan fungsi loss, loss_function(), dan variabel dengan nilai awal 0.3, x_2.
  • Cetak x_1 dan x_2 sebagai array numpy dan periksa apakah nilainya berbeda. Itulah nilai minimum yang diidentifikasi oleh algoritme.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Initialize x_1 and x_2
x_1 = Variable(6.0,float32)
x_2 = Variable(0.3,float32)

# Define the optimization operation
opt = keras.optimizers.____(learning_rate=____)

for j in range(100):
	# Perform minimization using the loss function and x_1
	opt.minimize(lambda: loss_function(____), var_list=[____])
	# Perform minimization using the loss function and x_2
	opt.minimize(lambda: ____, var_list=[____])

# Print x_1 and x_2 as numpy arrays
print(____.numpy(), ____.numpy())
Edit dan Jalankan Kode