Mengapa gradien keturunan proksimal bukan metode subgradien biasa untuk Lasso?

9

Saya berpikir untuk menyelesaikan Lasso melalui metode subgradien vanilla. Tapi saya sudah membaca orang menyarankan untuk menggunakan gradien keturunan Proksimal. Adakah yang bisa menyoroti mengapa proksimal GD daripada metode subgradien vanilla digunakan untuk Lasso?

CKM
sumber

Jawaban:

14

Solusi perkiraan memang dapat ditemukan untuk laso menggunakan metode subgradien. Misalnya, kami ingin meminimalkan fungsi kerugian berikut:

f(w;λ)=yXw22+λw1

Gradien dari istilah penalti adalah untuk dan untuk , tetapi istilah penalti tidak dapat dibedakan pada . Sebagai gantinya, kita dapat menggunakan subgradient , yang sama tetapi memiliki nilai untuk .λλ w i > 0 0 λ sgn ( w )wi<0λwi>00λsgn(w)w i = 00wi=0

Subgradien yang sesuai untuk fungsi kerugian adalah:

g(w;λ)=2XT(yXw)+λsgn(w)

Kita dapat meminimalkan fungsi kerugian menggunakan pendekatan yang mirip dengan gradient descent, tetapi menggunakan subgradient (yang sama dengan gradient di mana-mana kecuali , di mana gradien tidak terdefinisi). Solusinya bisa sangat dekat dengan solusi laso yang sebenarnya, tetapi mungkin tidak mengandung nol tepat - di mana bobot seharusnya nol, mereka membuat mengambil nilai yang sangat kecil. Kurangnya sparsity sejati adalah salah satu alasan untuk tidak menggunakan metode subgradien untuk laso. Para pemecah khusus memanfaatkan struktur masalah untuk menghasilkan solusi yang benar-benar jarang dengan cara yang efisien secara komputasi. Posting ini0mengatakan bahwa, selain menghasilkan solusi jarang, metode khusus (termasuk metode gradien proksimal) memiliki tingkat konvergensi yang lebih cepat daripada metode subgradien. Dia memberikan beberapa referensi.

pengguna20160
sumber