Gradient descent dan descent gradient descent

11

Untuk sebuah proyek, saya harus mengimplementasikan kedua metode ini dan membandingkan kinerjanya pada fungsi yang berbeda.

Sepertinya metode gradien konjugasi dimaksudkan untuk menyelesaikan sistem persamaan linear untuk

Ax=b

Di mana adalah matriks n-by-n yang simetris, pasti-positif dan nyata.A

Di sisi lain, ketika saya membaca tentang gradient descent, saya melihat contoh fungsi Rosenbrock , yaitu

f(x1,x2)=(1x1)2+100(x2x12)2

Seperti yang saya lihat, saya tidak bisa menyelesaikan ini dengan metode gradien konjugat. Atau apakah saya melewatkan sesuatu?

Philipp
sumber

Jawaban:

14

Keturunan gradien dan metode gradien konjugasi keduanya algoritma untuk meminimalkan fungsi nonlinier, yaitu, fungsi seperti fungsi Rosenbrock

f(x1,x2)=(1x1)2+100(x2x12)2

atau fungsi kuadrat multivariat (dalam hal ini dengan istilah kuadrat simetris)

f(x)=12xTATAxbTAx.

Kedua algoritma juga berbasis iteratif dan pencarian berdasarkan. Untuk sisa tulisan ini, , dan akan menjadi vektor dengan panjang ; dan adalah skalar, dan superskrip menunjukkan indeks iterasi. Keturunan gradien dan metode gradien konjugat dapat digunakan untuk menemukan nilai yang memecahkand n f ( x ) α x xdnf(x)αx

minf(x)

Kedua metode dimulai dari tebakan awal, , dan kemudian menghitung iterate berikutnya menggunakan fungsi formulirx0

xi+1=xi+αidi.

Dengan kata lain, nilai berikutnya ditemukan dengan mulai dari lokasi saat ini , dan bergerak ke arah pencarian untuk beberapa jarak . Dalam kedua metode, jarak untuk bergerak dapat ditemukan oleh pencarian baris (perkecil atas ). Kriteria lain juga dapat diterapkan. Di mana dua metode berbeda adalah dalam pilihan mereka . Untuk metode gradien, . Untuk metode gradien konjugasi, prosedur Grahm-Schmidt digunakan untuk orthogonalize vektor gradien. Secara khusus, , tetapi kemudian samaxxidiαif(xi+αidi)αididi=f(xi)d0=f(x0)d1f(x1) minus proyeksi vektor ke sehingga . Setiap vektor gradien berikutnya adalah ortogonalisasi terhadap semua yang sebelumnya, yang mengarah ke properti yang sangat bagus untuk fungsi kuadrat di atas.d0(d1)Td0=0

Fungsi kuadrat di atas (dan formulasi terkait) juga merupakan tempat pembahasan penyelesaian menggunakan metode gradien konjugasi, karena minimum tersebut dicapai pada titik mana .Ax=bf(x)xAx=b

Elaine Hale
sumber
9

Dalam konteks ini, kedua metode dapat dianggap sebagai masalah minimisasi fungsi: Ketika simetris, maka diminimalkan ketika .

ϕ(x)=12xTAxxTb
AϕAx=b

Gradient descent adalah metode yang secara iteratif mencari minimizer dengan melihat arah gradien. Konjugasi gradien serupa, tetapi arah pencarian juga diperlukan untuk menjadi ortogonal satu sama lain dalam arti bahwa .piTApj=0i,j

Bill Barth
sumber