Apa algoritma regresi stagewise maju?

14

Mungkin hanya karena saya lelah, tetapi saya mengalami kesulitan mencoba memahami algoritma Forward Stagewise Regression. Dari "Elemen Pembelajaran Statistik" halaman 60:

Regresi forward-stagewise (FS) bahkan lebih terbatas daripada regresi step-maju. Itu dimulai seperti regresi maju-langkah, dengan intersep sama dengan [rata-rata] y, dan prediktor terpusat dengan koefisien awalnya semua 0.

Pada setiap langkah algoritma mengidentifikasi variabel yang paling berkorelasi dengan sisa saat ini. Ini kemudian menghitung koefisien regresi linier sederhana dari sisa pada variabel yang dipilih ini, dan kemudian menambahkannya ke koefisien saat ini untuk variabel itu. Ini dilanjutkan sampai tidak ada variabel yang memiliki korelasi dengan residu — yaitu kuadrat-terkecil cocok ketika N> p.

Jadi, apakah ini algoritma ?:

b[1]=mean(y)
b[2..n]=0
r=(y-X*b)
index, maxCorr = max(transpose(r)*X)
while(abs(maxCorr) > someThreshold)
  b[index]=b[index]+regress(r,X[1..n][index])
  r=(y-X*b)
  index, maxCorr = max(transpose(r)*X)

Di mana b adalah vektor-kolom dari koefisien, X adalah matriks input, dan y adalah vektor-kolom dari output. Yaitu y = X * b + kesalahan.

Bertanya karena algoritma ini memberi saya hanya beberapa koefisien non-nol pada dataset yang saya uji (dengan threshold = .0001), dan akurasi prediksi sama sekali tidak bagus.

ektrules
sumber

Jawaban:

5

Mereka penulis melakukan pekerjaan yang buruk menjelaskan algoritma dalam buku mereka. Jika Anda melihat persamaan 1.6 dan 1.7 di kertas mereka , itu menjadi lebih jelas. Makalah ini memiliki formulasi yang sedikit berbeda (ia membangun residu daripada vektor koefisien), tetapi intinya adalah bahwa ia mencapai kuadrat terkecil yang cocok dengan sangat dalam langkah-langkah yang sangat kecil (ini sebabnya buku ini menyebutkan algoritma dapat mengambil "banyak lagi dari p langkah "sampai selesai). Anda bisa mengganti "kemunduran (...)" dengan sejumlah kecil, atau Anda dapat mengalikannya dengan sesuatu seperti 0,05. Main-main dengannya dan lihat apa yang berhasil.

Juga, ambang Anda tampaknya kecil. r '* X akan memberikan angka yang proporsional tetapi jauh lebih besar dari korelasi aktual (misalnya untuk data diabetes dalam makalah korelasinya ~ 70-900).

Kevin
sumber