skala invarian untuk algoritma line-search dan trust region

11

Dalam buku Nocedal & Wright tentang Numerical Optimization, ada pernyataan di bagian 2.2 (halaman 27), "Secara umum, lebih mudah untuk mempertahankan invarian skala untuk algoritma pencarian baris daripada untuk algoritma wilayah kepercayaan". Di bagian yang sama, mereka berbicara tentang memiliki variabel baru yang merupakan versi berskala dari variabel asli, yang dapat membantu pencarian wilayah dan wilayah kepercayaan. Pendekatan lain adalah prakondisi. Untuk metode wilayah kepercayaan, prakondisi setara dengan memiliki wilayah kepercayaan elips dan karenanya, memberikan skala invarian. Namun, intuisi yang sama tidak jelas untuk mengkondisikan pencarian garis. Dalam hal apa pencarian garis lebih cocok untuk invarian skala? Apakah ada beberapa pertimbangan praktis?

Juga, saya punya pertanyaan tentang metode preconditioning untuk wilayah kepercayaan. Untuk masalah yang sangat tidak terkondisikan, akankah prekondisi yang baik mengurangi jumlah iterasi Newton luar dan iterasi CG dalam atau hanya yang terakhir? Karena, wilayah kepercayaan adalah ellipsoidal di ruang asli, seorang pengkondisi yang baik harus mengarah pada ellipsoid yang akan cocok dengan lanskap lebih baik. Saya merasa ini mungkin mengurangi jumlah iterasi Newton luar dengan memaksa algoritma untuk mengambil arah yang lebih baik. Apakah ini benar?

haripkannan
sumber

Jawaban:

2

Saya kira mungkin ada beberapa perbedaan antara bagaimana metode pencarian garis dan wilayah kepercayaan menangani penskalaan, tapi saya benar-benar tidak melihatnya dalam praktik selama kita mengetahui penskalaan. Dan, untuk lebih jelasnya, buku Nocedal dan Wright berbicara tentang scaling afine. Penskalaan nonlinier agak sulit untuk dikuantifikasi.

f:XRAL(X)J:XR

J(x)=f(Ax)J(x)=Af(Ax)2J(x)=A2f(Ax)A
A
2J(x)δx=J(x)
A2f(Ax)Aδx=Af(Ax)
Aδx=2f(Ax)1f(Ax)

Hδx=J(x)
H
Hδx=Af(Ax)
AH

ϕ

δx=ϕ(Af(Ax))
ϕϕϕA

2J(x)δx=J(x)
tidak tepat menggunakan CG. Ini tepatnya menggunakan Steihaug-Toint dalam pengaturan wilayah-kepercayaan (hlm. 171 dalam Nocedal dan Wright) atau Newton-CG untuk pencarian garis (hlm. 169 dalam Nocedal dan Wright). Mereka bekerja cukup dekat dengan yang sama dan mereka tidak peduli tentang scaling afine. Mereka juga tidak perlu menyimpan Hessian, hanya produk vektor Hessian yang diperlukan. Sungguh, algoritma ini harus menjadi workhorses untuk sebagian besar masalah dan mereka tidak peduli tentang affine scaling.

Sejauh prekondisi untuk masalah wilayah kepercayaan, saya tidak berpikir ada cara mudah untuk memberitahu apriori jika Anda akan meningkatkan jumlah iterasi optimasi keseluruhan atau tidak. Sungguh, pada akhirnya, metode optimasi beroperasi dalam dua mode. Dalam mode satu, kita terlalu jauh dari radius konvergensi metode Newton, jadi kita mengglobal dan memaksa iterasi untuk memastikan bahwa tujuannya turun. Wilayah kepercayaan adalah satu arah. Pencarian baris adalah hal lain. Dalam mode dua, kita berada dalam radius konvergensi metode Newton, jadi kami mencoba untuk tidak mengacaukannya dan membiarkan metode Newton melakukan tugasnya. Bahkan, kita bisa melihat ini dalam bukti konvergensi hal-hal seperti metode wilayah-kepercayaan. Sebagai contoh, lihat Teorema 4.9 (hal.93 dalam Nocedal dan Wright). Sangat eksplisit, mereka menyatakan bagaimana wilayah kepercayaan menjadi tidak aktif. Dalam konteks ini, apa kegunaan dari prekondisi? Tentu saja, ketika kita berada dalam radius konvergensi metode Newton, kita bekerja jauh lebih sedikit dan jumlah iterasi CG turun. Apa yang terjadi ketika kita berada di luar radius ini? Ini semacam tergantung. Jika kita menghitung langkah Newton penuh, maka manfaatnya adalah kita melakukan lebih sedikit pekerjaan. Jika kita memotong langkah kita lebih awal karena pemotongan dari terpotong-CG, maka arah kita akan berada di subruang Krylov

{PJ(x),(PH)(PJ(x)),,(PH)k(PJ(x))}
PH
{J(x),(H)(J(x)),,(H)k(J(x))}?

Ini tidak berarti bahwa tidak ada nilai dalam mendefinisikan seorang pengkondisi yang baik. Namun, saya tidak yakin bagaimana seseorang mendefinisikan preconditioner untuk membantu dalam optimasi untuk poin jauh radius konvergensi metode Newton. Biasanya, kami merancang prekondisi untuk mengelompokkan nilai eigen dari pendekatan Hessian, yang merupakan tujuan nyata dan terukur.

tldr; Secara praktis, ada berbagai cara yang lebih besar untuk metode pencarian garis untuk menghasilkan iterate daripada metode wilayah kepercayaan, jadi mungkin ada cara yang luar biasa untuk menangani penskalaan affine. Namun, cukup gunakan metode Newton yang tidak tepat dan itu tidak masalah. Seorang preconditioner memang mempengaruhi kinerja suatu algoritma yang jauh dari radius konvergensi metode Newton, tetapi sulit untuk menghitung caranya, jadi rancanglah sebuah preconditioner untuk mengelompokkan nilai-nilai eigen dari pendekatan Hessias.

Wyer33
sumber