Apa langkah-langkah untuk mengubah jumlah kuadrat tertimbang ke bentuk matriks?

8

Saya baru mengonversi rumus ke bentuk matriks. Tetapi ini diperlukan untuk kode pembelajaran mesin yang efisien. Jadi saya ingin mengerti cara "benar", bukan hal koboi yang saya lakukan.

Baiklah kita mulai, saya mencoba untuk mengubah jumlah kuadrat tertimbang dari bentuk di bawah ini ke dalam bentuk matriks. Saya sering melihat bentuk matriks sebagai setara dengan yang di bawah ini, dan tidak ada penjelasan tentang bagaimana itu diturunkan.

J(w)=saya=1mkamusaya(wTxsaya-ysaya)2

di mana adalah bobot untuk setiap kesalahan sampel . Juga, , , , , . adalah nilai prediksi, hasil dari mengalikan vektor bobot dengan vektor fitur.kamusayasayaxsayaRnwRnyRkamusayaRsaya=1,...,mwTxsaya

Inilah yang saya pikirkan, dan saya menjadi kreatif. Jadi jangan ragu untuk melewatkan sampai akhir jika saya bersinggungan.

Biarkan menjadi vektor kolom fungsi yang mewakili kesalahan non-kuadrat. Kami dapat mewakili lebih dari sebagair(wTxsaya-ysaya)2saya=1,...,m

(1)r2=[r1r2rm][r1r2rm]

Hasil vektor dikalikan dengan vektor adalah matriks (skalar).1×mm×11×1

Biarkan menjadi vektor bobot yang menimbang setiap kesalahan sampel. Karena kita perlu menimbang kesalahan kuadrat, kita perlu memasukkan dalam Formula sebelum mendapatkan skalar. Karena kita ingin pertama tetap sebagai vektor , kita mendefinisikan sebagai matriks diagonal dengan istilah diagonal yang berasal dari . Kami sekarang memiliki:kamukamu1r1×mUkamu

(2)J(w)=[r1r2rm][kamu1000kamu2000kamum][r1r2rm]

Kita dapat menyederhanakan ini menjadi

(3)J(w)=rTUr

Sekarang kita memperluas . Kami memiliki dikalikan dengan , memberi kami mana X sekarang merupakan matriks dan adalah vektor kolom. Biarkan y menjadi vektor vektor kolom mewakili label . Sekarang . Kami mengganti ini menjadi Formula , memberi kami jumlah kuadrat tertimbang terakhir dalam bentuk matriks: rxsayaRnwRnXwm×nwn×1m×1y=1,...,mr=(Xw-y)3

(4)J(w)=(Xw-y)TU(Xw-y)

Pertama, apakah ini masuk akal? Kedua, dan yang paling penting, apakah ini sebenarnya yang seharusnya Anda lakukan?

Terima kasih

vega
sumber
1
Ini: math.stackexchange.com/questions/198257/… mungkin membantu Anda!
kjetil b halvorsen
+1: Lucu bahwa Anda pikir Anda sedang melakukan 'hal-hal koboi'. Ini persis cara untuk melakukannya, meskipun saya tidak akan pernah menuliskannya secara komprehensif (pekerjaan yang sangat baik!). Ini adalah bab dari buku kursus ekonometrika 1 saya selama studi ekonometrik saya. Halaman 120 menjelaskan cara menulis ulang fungsi (mudah) menjadi notasi matriks dan halaman 121 adalah contoh Anda tanpa bobot (notasi yang sedikit berbeda). Jika saya ingat dengan benar, bab lain juga menangani penduga WLS (yang pada dasarnya adalah ekspresi Anda).
Marcel10
Terlihat bagus untukku.
Matthew Gunn

Jawaban:

1

Saya akan berani menjawab pertanyaan ini: Segala sesuatu yang Anda sajikan benar.

Apa yang pada dasarnya Anda peroleh adalah teorema Gauss-Markov: penaksir kuadrat terkecil tertimbang adalah penaksir tidak bias linier terbaik untuk data tertimbang. Estimator ini meminimalkan jumlah kuadrat-tertimbang (tampilan pertama Anda) dan diberikan oleh: . Berikut adalah matriks desain dengan kolom set pertama untuk yang vektor yang (ini adalah istilah intercept).β^WL.S=(XTWX)(XTWY)X1n×1

Hasil ini berlaku untuk matriks kovarians yang sewenang-wenang. Namun, data independen tertimbang diwakili dengan vektor bobot sepanjang diagonal dari matriks berat. (notasi Anda memiliki sebagai koefisien regresi dan sebagai bobot, jadi untuk menghindari kebingungan, matriks desain adalah dan .wkamuX=[x],W=diag(kamu),β=[w]

The bukti dari teorema Gauss Markov adalah dengan kontradiksi. Lihat di sini . Maksudnya adalah bahwa kita tidak secara analitik memperoleh estimator seperti itu langsung dari fungsi kerugian. Anda mungkin telah melihat pendekatan seperti itu yang digunakan untuk mendapatkan persamaan estimasi regresi linier dan logistik.

AdamO
sumber