Прогнозування дисперсії гетеросептичних даних


15

Я намагаюся зробити регресію на гетеросептичних даних, де я намагаюся передбачити відхилення помилок, а також середні значення з точки зору лінійної моделі. Щось на зразок цього:

y(x,t)=y¯(x,t)+ξ(x,t),ξ(x,t)N(0,σ(x,t)),y¯(x,t)=y0+ax+bt,σ(x,t)=σ0+cx+dt.

y(x,t)xty¯(x,t)xtξ(x,t)x,txt

y¯ σy0,a,b,σ0,cd


Дивіться це пов'язане питання для деяких посилань, Варіантність як функція параметрів
Andy W

Ви спробували GARCH?
Аксакал

Узагальнені лінійні моделі - це галузь, яка займається вашою проблемою. Є книга з такою ж назвою, дуже рекомендується.
Дієго

Відповіді:


1

N(0,σ(x,t))σ(x,t)σ(x,t)=ax+bt1/y2σ(x,t)=eax+bt

modely1/y

Тепер це лише коротка історія. Більш довга версія включає в себе набагато більше видів регресії, включаючи медіану середньої регресії, деіваріантну регресію Демінга та регресію для мінімізації помилок помилково поставлених проблем, які не мають особливого відношення корисності кривої придатності до мінімізації розповсюдженої помилки. Останнє - це мандрівник, але дивіться цеяк приклад. Так що велике значення має те, що відповіді намагається отримати. Як правило, якщо хочеться встановити взаємозв'язок між змінними, рутинна OLS не є методом вибору, і регрес Тейла був би швидким і брудним покращенням у цьому. OLS мінімізується лише у напрямку y, тому нахил занадто неглибокий, а перехоплення занадто велике, щоб встановити, що є базовим співвідношенням між змінними. Якщо сказати це іншим способом, OLS дає найменшу оцінку помилок ay, заданої x, вона не дає оцінки того, як x змінюється y. Коли величини r дуже високі (0,99999+), мало значення має те, що регресія використовується, а OLS у y приблизно така ж, як OLS в x, але, коли значення r є низькими, OLS у y сильно відрізняється від OLS в х.

Підсумовуючи, багато що залежить від того, які саме міркування є мотивованими в першу чергу робити регресійний аналіз. Це диктує необхідні чисельні методи. Після цього вибору, залишки мають структуру, яка пов'язана з метою регресії, і їх потрібно проаналізувати в цьому більш широкому контексті.


0

Команда розширення STATS BREUSCH PAGAN може як перевірити залишки на гетеросцедастичність, так і оцінити її як функцію деяких або всіх регресорів.


0

Загальний підхід до подібних проблем полягає в тому, щоб збільшити (регульовану) ймовірність ваших даних.

LL(y0,a,b,σ0,c,d)=i=1nlogϕ(yi,y0+axi+bti,σ0+cxi+dti)
ϕ(x,μ,σ)=12πσe(xμ)22σ2

θ^θ=(y0,a,b,σ0,c,d)

Hθnθ^H1

Ось приклад коду в Python:

import scipy
import numpy as np

# generate toy data for the problem
np.random.seed(1) # fix random seed
n = 1000 # fix problem size
x = np.random.normal(size=n)
t = np.random.normal(size=n)
mean = 1 + x * 2 + t * 3
std = 4 + x * 0.5 + t * 0.6
y = np.random.normal(size=n, loc=mean, scale=std)

# create negative log likelihood
def neg_log_lik(theta):
    est_mean = theta[0] + x * theta[1] + t * theta[2]
    est_std = np.maximum(theta[3] + x * theta[4] + t * theta[5], 1e-10)
    return -sum(scipy.stats.norm.logpdf(y, loc=est_mean, scale=est_std))

# maximize
initial = np.array([0,0,0,1,0,0])
result = scipy.optimize.minimize(neg_log_lik, initial)
# extract point estimation
param = result.x
print(param)
# extract standard error for confidence intervals
std_error = np.sqrt(np.diag(result.hess_inv))
print(std_error)

σσ1010

Результат (оцінки параметрів та їх стандартні помилки), отриманий кодом, є:

[ 0.8724218   1.75510897  2.87661843  3.88917283  0.63696726  0.5788625 ]
[ 0.15073344  0.07351353  0.09515104  0.08086239  0.08422978  0.0853192 ]

Видно, що оцінки близькі до їх справжніх значень, що підтверджує правильність цього моделювання.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.