Gradient Golf

Setiap pukulan adalah satu langkah gradient descent pada permukaan loss sungguhan. Bawa bola ke titik terendah.

Arah turun tercuram−4.00
Bidikanmu: geser untuk mengatur–

Geser di lapangan, lalu lepaskan untuk memukul. Arah geseran adalah bidikanmu, dan panjangnya mengatur learning rate. Di sini kamu bisa melihat bendera, padahal model sungguhan tidak pernah bisa.

Langkah kecilLangkah besar
Pukulan0
Par3
Loss6.08

Panah kuning menunjuk lurus ke bawah. Bidik di dekatnya, dan pukulanmu akan menempel ke arah itu lalu berubah hijau.

panjang step = learning rate × slope
  • Panah kuning: arah turun tercuram, tempat slope paling negatif. Ini kebalikan dari gradient, dan belum tentu menunjuk ke bendera.
  • Cincin: slope ke segala arah dari bola, hijau untuk turun dan merah untuk naik. Titik putih adalah bidikanmu.
  • Garis putih: bidikanmu. Titik di ujungnya adalah tempat bola akan mendarat.
  • Garis hijau: bidikanmu sama dengan panah kuning, jadi keduanya berjalan di jalur yang sama.

Cara bermain

Lapangan ini adalah permukaan loss, dan lubangnya ada di titik terendah. Geser di lapangan, lalu lepaskan untuk memukul. Arah geseran adalah bidikanmu, dan panjangnya mengatur learning rate. Jarak bola adalah learning rate kali slope di bawahnya, jadi pengaturan yang sama membuat bola lebih jauh di tanah curam. Makin sedikit pukulan makin baik, seperti golf sungguhan.

Yang diajarkan tiap lubang

  1. Lapangan terbuka: learning rate mengatur langkahmu. Terlalu kecil makan waktu lama, terlalu besar akan melewati sasaran.
  2. Kabut: gradient descent hanya tahu tanah tepat di bawahnya.
  3. Dasar palsu: mengikuti slope bisa berakhir di local minimum.
  4. Momentum: menyimpan sebagian kecepatan membawa bola melewati lubang dangkal.
  5. Saddle: titik datar belum tentu titik minimum, dan noise membantu bola lolos. Plateau, yaitu area datar yang luas, juga memperlambat training dengan cara serupa.

Untuk penjelasan lengkapnya, baca Gradient Descent.

Pertanyaan umum

Apakah gerakan bola benar-benar gradient descent?

Setiap pukulan dihitung dari permukaan loss sungguhan. Saat bidikanmu ada di garis hijau tanpa momentum atau noise, titik pendaratannya tepat satu langkah gradient descent: posisi dikurangi learning rate kali gradient. Membidik ke arah lain adalah pilihan untuk game ini, karena gradient descent sungguhan tidak bisa memilih arah.

Apa itu local minimum?

Titik yang lebih rendah daripada semua titik di sekitarnya, tetapi bukan titik terendah secara keseluruhan. Slope di sana hampir nol, jadi gradient descent berhenti bergerak walaupun ada solusi yang lebih baik di tempat lain.

Kenapa learning rate yang lebih besar tidak mengeluarkan bola dari local minimum?

Panjang langkah adalah learning rate kali slope. Di local minimum, slope hampir nol, jadi learning rate yang besar pun hanya menghasilkan langkah kecil. Momentum membantu karena membawa kecepatan dari langkah sebelumnya.

Apa itu saddle point?

Titik datar yang menanjak ke beberapa arah dan menurun ke arah lain. Slope di sana hampir nol, jadi gradient descent biasa bergerak sangat lambat, sedangkan noise pada stochastic gradient descent membantunya menjauh.