Saya ingin tahu tentang prosedur berulang yang dapat digunakan untuk menemukan bentuk fungsional dari fungsi y = f(A, B, C) + error_term
mana saya hanya masukan adalah seperangkat pengamatan ( y
, A
, B
dan C
). Harap dicatat bahwa bentuk fungsional f
tidak diketahui.
Pertimbangkan dataset berikut:
AA BB CC DD EE FF == == == == == == 98 11 66 84 67 10500 71 44 48 12 47 7250 54 28 90 73 95 5463 34 95 15 45 75 2581 56 37 0 79 43 3221 68 79 1 65 9 4721 53 2 90 10 18 3095 38 75 41 97 40 4558 29 99 46 28 96 5336 22 63 27 43 4 2196 4 5 89 78 39 492 10 28 39 59 64 1178 11 59 56 25 5 3418 10 4 79 98 24 431 86 36 84 14 67 10526 80 46 29 96 7 7793 67 71 12 43 3 5411 14 63 2 9 52 368 99 62 56 81 26 13334 56 4 72 65 33 3495 51 40 62 11 52 5178 29 77 80 2 54 7001 42 32 4 17 72 1926 44 45 30 25 5 3360 6 3 65 16 87 288
Dalam contoh ini, asumsikan kita tahu itu FF = f(AA, BB, CC, DD, EE) + error term
, tapi kami tidak yakin tentang bentuk fungsional f(...)
.
Prosedur apa / metode apa yang akan Anda gunakan untuk sampai pada menemukan bentuk fungsional f(...)
?
(Poin bonus: Apa tebakan terbaik Anda pada definisi yang f
diberikan data di atas? :-) Dan ya, ada jawaban "benar" yang akan menghasilkan R^2
lebih dari 0,99.)
FF
"hasil pembakaran" danAA
jumlah bahan bakar, danBB
jumlah oksigen, Anda akan mencari istilah berinteraksiAA
danBB
R^2 >= 0.99
satu ingin menemukan yang dengan kinerja terbaik untuk rasio kompleksitas (dan tentu saja keluar dari kecocokan sampel). Maaf karena tidak menulisJawaban:
Untuk menemukan bentuk fungsional pas terbaik (disebut free-form atau symbolic regression) untuk data coba alat ini - sepengetahuan saya ini adalah yang terbaik yang tersedia (setidaknya saya sangat bersemangat tentang hal itu) ... dan itu bebas :-)
http://creativemachines.cornell.edu/eureqa
EDIT : Saya mencobanya dengan Eureqa dan saya akan mencoba:
R 2 = 0,99988
Saya akan menyebutnya sangat pas (Eureqa memberikan solusi pemasangan lain yang lebih baik, tetapi ini juga sedikit lebih rumit. Eureqa lebih menyukai yang ini, jadi saya memilih yang ini) - dan Eureqa melakukan segalanya untuk saya dalam beberapa detik setelah laptop normal ;-)
sumber
Untuk itu, perhatikan bahwa teknik standar analisis data eksplorasi (EDA) dan regresi (tetapi tidak bertahap atau prosedur otomatis lainnya) menyarankan menggunakan model linier dalam bentuk
Menggunakan OLS, ini mencapai atas 0,99. Dihibur oleh hasil seperti itu, seseorang tergoda untuk menyejajarkan kedua sisi dan mundur pada , , , dan semua kotak dan produk mereka. Ini segera menghasilkan model f a b ∗ c a ∗ b ∗ cR2 f Sebuah b ∗ c a ∗ b ∗ c
dengan MSE root di bawah 34 dan disesuaikan dari 0,9999R2 . Koefisien estimasi 1,0112 dan 0,988 menunjukkan data dapat secara artifisial dihasilkan dengan rumus
ditambah sedikit kesalahan distribusi normal dari SD kira-kira sama dengan 50.
Edit
Menanggapi petunjuk @ knorv, saya melanjutkan analisis. Untuk melakukannya, saya menggunakan teknik yang telah berhasil sejauh ini, dimulai dengan memeriksa matriks sebar residu terhadap variabel asli. Benar saja, ada indikasi yang jelas korelasi antara dan residual (meskipun OLS regresi terhadap , , dan tidak tidak menunjukkan adalah "signifikan"). Melanjutkan dalam nada ini saya mengeksplorasi semua korelasi antara istilah kuadrat dan residu baru dan menemukan hubungan kecil tapi sangat signifikan denganf a a 2 b * c a a 2 , ... , e 2 , a * b , a * c , ... , d * e b 2Sebuah f Sebuah Sebuah2 b ∗ c Sebuah Sebuah2, ... , e2, a ∗ b , a ∗ c , ... , d∗ e b2 . "Sangat signifikan" berarti bahwa semua pengintaian ini melibatkan melihat sekitar 20 variabel yang berbeda, jadi kriteria saya untuk signifikansi pada ekspedisi memancing ini adalah sekitar 0,05 / 20 = 0,0025: sesuatu yang kurang ketat dapat dengan mudah menjadi artefak dari probing for fit.
Ini memiliki semacam aroma model fisik yang kami harapkan, dan karenanya mencari, hubungan dengan koefisien "menarik" dan "sederhana". Jadi, misalnya, melihat bahwa koefisien estimasi adalah -0,0092 (antara -0,005 dan -0,013 dengan kepercayaan 95%), saya memilih menggunakan -1/100 untuk itu. Jika ini adalah dataset lain, seperti pengamatan sistem sosial atau politik, saya tidak akan membuat perubahan seperti itu tetapi hanya menggunakan perkiraan OLS apa adanya.b2
Pokoknya, peningkatan kecocokan diberikan oleh
dengan rata-rata residual , standar deviasi 26,8, semua residu antara -50 dan +43, dan tidak ada bukti ketidaknormalan (walaupun dengan dataset sekecil itu kesalahannya bahkan dapat terdistribusi secara seragam dan orang tidak dapat membedakannya). Pengurangan dalam deviasi standar residu dari sekitar 50 menjadi sekitar 25 akan sering dinyatakan sebagai "menjelaskan 75% dari varian residu."0
Saya tidak mengklaim bahwa ini adalah yang formula yang digunakan untuk menghasilkan data . Residunya cukup besar untuk memungkinkan beberapa perubahan yang cukup besar pada beberapa koefisien. Sebagai contoh, 95% CIs untuk koefisien , , dan konstanta adalah [-0,4, 2,7], [-0,013, -0,003], dan [-7, 61]. Intinya adalah bahwa jika ada kesalahan acak sebenarnya telah diperkenalkan dalam prosedur pembuatan data (dan itu berlaku untuk semua data dunia nyata), yang akan menghalangi identifikasi definitif dari koefisien (dan bahkan semua variabel yang mungkin terlibat) ). Itu bukan batasan metode statistik: itu hanya fakta matematika.b 2Sebuah b2
BTW, menggunakan regresi kuat saya bisa cocok dengan model
dengan SD residual 27,4 dan semua residu antara -51 dan +47: pada dasarnya sama baiknya dengan fit sebelumnya tetapi dengan satu variabel lebih sedikit. Itu lebih pelit dalam arti itu, tetapi kurang pelit dalam arti bahwa saya belum membulatkan koefisien ke nilai-nilai "baik". Namun demikian, ini adalah bentuk yang biasanya saya sukai dalam analisis regresi jika tidak ada teori yang ketat tentang nilai-nilai apa yang seharusnya dimiliki oleh koefisien dan variabel mana yang harus dimasukkan.
Kemungkinan ada hubungan kuat tambahan yang mengintai di sini , tetapi mereka harus cukup rumit. Kebetulan, mengambil data yang SD aslinya adalah 3410 dan mengurangi variasinya menjadi residu dengan SD 27 adalah pengurangan varians 99,99384% ( dari fit baru ini). Orang akan terus mencari efek tambahan hanya jika SD residual terlalu besar untuk tujuan yang dimaksudkan. Dengan tidak adanya tujuan selain menebak-nebak OP, saatnya untuk berhenti.R2
sumber
Pertanyaan Anda perlu disempurnakan karena fungsinya
f
hampir pasti tidak ditentukan secara unik oleh data sampel. Ada banyak fungsi berbeda yang dapat menghasilkan data yang sama.Yang sedang berkata, Analisis Varians (ANOVA) atau "studi sensitivitas" dapat memberi tahu Anda banyak tentang bagaimana input Anda (AA..EE) mempengaruhi output Anda (FF).
Aku hanya melakukan ANOVA cepat dan menemukan model yang cukup baik:
FF = 101*A + 47*B + 49*C - 4484
. Fungsi ini tampaknya tidak bergantung pada DD atau EE secara linear. Tentu saja, kita bisa melangkah lebih jauh dengan model dan menambahkan istilah kuadratik dan campuran. Akhirnya Anda akan memiliki model yang sempurna yang sesuai dengan data dan tidak memiliki nilai prediksi. :)sumber
Secara umum, tidak ada makan siang gratis dalam pembelajaran mesin:
/ edit: juga, SVM radial dengan C = 4 dan sigma = 0,206 dengan mudah menghasilkan R2 0,99. Mengekstraksi persamaan aktual yang digunakan untuk memperoleh dataset ini dibiarkan sebagai latihan untuk kelas. Kode dalam R.
sumber
Semua Model salah tetapi beberapa berguna: GEPBox
Y (T) = - 4709.7
+ 102.60 * AA (T) - 17.0707 * AA (T-1)
+ 62.4994 * BB (T) + 41.7453 * CC (T) + 965.70 * ZZ (T)
di mana ZZ (T) = 0 FOR T = 1,10 = 1 LAINNYA
Tampaknya ada "hubungan tertinggal" antara Y dan AA DAN perubahan yang dijelaskan dalam mean untuk pengamatan 11-25.
Ingin tahu hasil jika ini bukan data kronologis atau spasial.
sumber
ORDER BY
). Baris tidak memiliki urutan khusus yang melekat. Jadi Anda dapat mengatur ulang dengan aman tanpa kehilangan informasi apa pun. Maaf jika saya membingungkan Anda :-)AA(T-1)
istilah dalam persamaan Anda tidak masuk akal dalam konteks ini.AA(T-1)
r kuadrat dari 97,2
Estimasi / Pemeriksaan Diagnostik untuk Variabel YY
X1 AAS
X2 BB
X3 BBS
X4 CC
Jumlah Residu (R) = n 25
Jumlah Derajat Kebebasan = nm 20
Residual Mean = Jumlah R / n -.141873E-05
Jumlah Kuadrat = Jumlah R 2 .775723E + 07
Varians = SOS / (n) 310289.
Disesuaikan Varians = SOS / (nm) 387861.
Standar Deviasi RMSE = SQRT (Adj Var) 622.785
Standar Kesalahan Rata-rata = Standar Dev / (nm) 139.259
Rata-rata / Standar Kesalahan = Mean / SEM -.101877E-07
Mean Absolute Deviation = Jumlah (ABS (R)) / n 455.684
Nilai AIC (Kegunaan var) = nln + 2m 326.131
Nilai SBC (Kegunaan var) = nln + m * lnn 332.226
Nilai BIC (Kegunaan var) = lihat Wei p153 340.388
R Square = .972211
Durbin-Watson Statistik = [- A (T -1)] ** 2 / A 2 1.76580
**
MODEL KOMPONEN LAG COEFF STANDAR PT
# (BOP) NILAI NILAI KESALAHAN
SERI INPUT X1 AAS AA SQUARED
SERI INPUT X2 BB BB SEBAGAI DIBERIKAN
SERI INPUT X3 BBS BB SQUARED
SERI INPUT X4 CC CC SEBAGAI DIBERIKAN
sumber