راه
۵ کیو· متوسط رو به بالامتوسطPYTHON۴ ثانیه · ۲۵۶ مگابایت

برازش GAM با پس‌برازش

مدل جمعی y=β0+f1(X1)+⋯+fp(Xp)+ϵy = \beta_0 + f_1(X_1) + \dots + f_p(X_p) + \epsilon را با الگوریتم پس‌برازش (backfitting) برازش دهید. هموارساز هر ویژگی در این تمرین ساده است: یک چندجمله‌ای درجه‌ی دو.

دقیقاً به این ترتیب، تا جواب یکتا باشد:

  1. β^0=yˉ\hat\beta_0 = \bar y و همه‌ی f^j\hat f_j ها (مقدارهایشان در nn نمونه) صفر.
  2. sweeps بار، برای j=0,1,…,p−1j = 0, 1, \dots, p - 1 به ترتیب:
    • باقی‌مانده‌ی جزئی: r=y−β^0−∑k≠jf^kr = y - \hat\beta_0 - \sum_{k \ne j}\hat f_k،
    • یک چندجمله‌ای درجه‌ی دو از rr روی ستون XjX_j برازش دهید (np.polyfit(X[:, j], r, 2)) و مقدارش را در نمونه‌ها بگیرید (np.polyval)،
    • میانگین آن را کم کنید و حاصل را f^j\hat f_j ی تازه بگذارید.
  3. مقدارهای برازش‌شده را برگردانید: y^=β^0+∑jf^j\hat y = \hat\beta_0 + \sum_j \hat f_j (آرایه‌ای به طول nn).

نمونه‌ها

ورودی نمونه ۱
[[[-0.03, -1.06], [-1.73, 0.85], [1.25, 0.19], [0.54, -1.32], [0.22, -1.3], [0.03, -0.63], [1.85, 0.08], [-1.19, -0.97], [0.2, 1.39], [-0.65, 1.62]], [1.22, 0.5, 1.73, 2.63, 2.33, 1.34, 1.6, -0.07, 2.81, 1.69], 1]
خروجی نمونه ۱
[1.7093, 0.0441, 1.7577, 2.0285, 1.9371, 1.6163, 1.3881, 0.5812, 2.5237, 2.1941]
ورودی نمونه ۲
[[[-0.03, -1.06], [-1.73, 0.85], [1.25, 0.19], [0.54, -1.32], [0.22, -1.3], [0.03, -0.63], [1.85, 0.08], [-1.19, -0.97], [0.2, 1.39], [-0.65, 1.62]], [1.22, 0.5, 1.73, 2.63, 2.33, 1.34, 1.6, -0.07, 2.81, 1.69], 50]
خروجی نمونه ۲
[1.5792, -0.0462, 1.7444, 2.2249, 2.0217, 1.273, 1.8208, 0.4785, 2.4571, 2.2267]

برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.

ورود