B-Splines VS polinomial tingkat tinggi dalam regresi

10

Saya tidak memiliki contoh atau tugas tertentu dalam pikiran. Saya baru menggunakan b-splines dan saya ingin mendapatkan pemahaman yang lebih baik tentang fungsi ini dalam konteks regresi.

Mari kita asumsikan bahwa kita ingin menilai hubungan antara variabel respon dan beberapa prediktor x 1 , x 2 , . . . , x p . Prediktor tersebut mencakup beberapa variabel numerik serta beberapa variabel kategorikal.yx1,x2,...,xp

Katakanlah setelah memasang model regresi, salah satu variabel numerik misalkan adalah signifikan. Langkah logis setelahnya adalah menilai apakah polinomial orde tinggi misalnya: x 2 1 dan x 3 1 diperlukan untuk menjelaskan hubungan secara memadai tanpa overfitting.x1x12x13

Pertanyaan saya adalah:

  1. Pada titik apa Anda memilih antara b-splines atau polinomial orde tinggi sederhana. misalnya dalam R:

    y ~ poly(x1,3) + x2 + x3
    

    vs.

     y ~ bs(x1,3) + x2 + x3
    
  2. Bagaimana Anda dapat menggunakan plot untuk menginformasikan pilihan Anda di antara keduanya dan apa yang terjadi jika plot tersebut tidak benar-benar jelas (misalnya: karena sejumlah besar titik data)

  3. Bagaimana Anda menilai istilah interaksi dua arah antara dan katakanlah x 3x2x3

  4. Bagaimana perubahan di atas untuk berbagai jenis model

  5. Apakah Anda mempertimbangkan untuk tidak pernah menggunakan polinomial orde tinggi dan selalu menyesuaikan b-splines dan menghukum fleksibilitas tinggi?

Vasilis Vasileiou
sumber
9
Saya menulis tentang ini secara ekstensif di sini: madrury.github.io/jekyll/update/statistics/2017/08/04/…
Matthew Drury
Mengingat seberapa berkembangnya mgcvitu, mengapa tidak menggunakan model aditif (umum). Pemilihan kelancaran bersifat otomatis, dan metode inferensial dikembangkan dengan baik.
generic_user

Jawaban:

17

Saya biasanya hanya mempertimbangkan splines daripada polinomial. Polinomial tidak dapat memodelkan ambang batas dan sering bersifat global, yaitu, pengamatan pada satu rentang prediktor memiliki pengaruh kuat pada apa yang dilakukan model pada rentang yang berbeda ( Magee, 1998, The American Statistician dan Regression Modeling Strategies Frank Harrell ). Dan tentu saja splines terbatas yang linier di luar simpul ekstrem lebih baik untuk ekstrapolasi, atau bahkan intrapolasi pada nilai ekstrem dari prediktor.

Satu kasus di mana Anda mungkin ingin mempertimbangkan polinomial adalah ketika penting untuk menjelaskan model Anda kepada khalayak nonteknis. Orang-orang memahami polinomial lebih baik daripada splines. (Sunting: Matthew Drury menunjukkan bahwa orang mungkin hanya berpikir mereka memahami polinomial lebih baik daripada splines. Saya tidak akan memihak pada pertanyaan ini.)

Plot seringkali tidak terlalu berguna dalam memutuskan antara cara-cara yang berbeda dalam berurusan dengan nonlinier. Lebih baik melakukan cross-validation. Ini juga akan membantu Anda menilai interaksi, atau menemukan hukuman yang baik.

Akhirnya, jawaban saya tidak berubah dengan jenis model, karena poin-poin di atas berlaku untuk model statistik atau ML.

Stephan Kolassa
sumber
Terima kasih banyak atas jawaban Anda, itu sangat membantu. Hanya pertanyaan tindak lanjut cepat. Apakah ada cara "canggih" untuk menemukan simpul? Tebakan terbaik saya adalah 1) Gunakan intuisi misalnya: jika variabel menunjukkan waktu dalam hitungan bulan, maka gunakan simpul setiap 6 atau 12? 2) memperkenalkan urutan yang melewati kisaran variabel dan menggunakan validasi silang untuk menemukan simpul optimal mungkin?
Vasilis Vasileiou
8
Orang-orang berpikir mereka memahami polinomial lebih baik daripada splines.
Matthew Drury
3
Mengenai penempatan simpul: validasi silang adalah salah satu pendekatan, tetapi jujur ​​saja, saya pikir hasilnya akan cukup tidak sensitif untuk mengetahui penempatan, selama simpul ditempatkan secara wajar dan tidak terlalu banyak berkelompok. Frank Harrell memiliki tabel dengan penempatan simpul heuristik dalam hal kuantil dari distribusi prediktor dalam Strategi Pemodelan Regresi .
Stephan Kolassa
1
Sementara jawaban Anda benar-benar valid dalam konteks ini, pernyataan Anda sangat kuat mengingat bahwa banyak proses dunia nyata dapat dimodelkan dengan lebih baik oleh polinomial.
koalo
6

Dalam bagian 7.4.5 dari "Elemen Pembelajaran Statistik", dikatakan bahwa splines sering memberikan hasil yang unggul daripada regresi polinomial, karena:

  • Ini menghasilkan cocok fleksibel;
  • Menghasilkan estimasi yang lebih stabil;
  • Polinomial dapat menghasilkan hasil yang tidak diinginkan di batas.
Bruna w
sumber