Интерпретация для nlin_causality.test из пакета NlinTs в R
Детали функции говорят:
Тест оценивает, вызывает ли второй временной ряд первый. Для выполнения теста оцениваются две искусственные нейронные сети MLP, одна из которых использует только целевые временные ряды (ts1), а вторая - оба временных ряда.
Я использую следующий код:
for (i in series[-5]) {
prueba = nlin_causality.test(ts1 = peru[,"gap_y"],ts2 = peru[,i],lag = 4,
LayersUniv = 1,LayersBiv = 1,iters = 10000,bias = F)
og_nl[i,1] = round(prueba$Ftest,4)
og_nl[i,2] = round(prueba$pvalue,4)
}
и на выходе получается следующая таблица:
+-------------+-----------+----------+
| Variable | F-stat | P-value |
+-------------+-----------+----------+
| Inflación | 0.4468 | 0.7744 |
| Var.PBI | 2.2039 | 0.0766 |
| Var.Emisión | 2.7633 | 0.0335 |
| gap_y | 0.5546 | 0.6963 |
+-------------+-----------+----------+
Итак, из деталей функции я понимаю, что нулевая гипотеза состоит в том, что ts2 вызывает ts1, поэтому, если у меня значение pvalue ниже моего 0,05 в моем случае, я могу сказать, что ts2 не вызывает ts1?
Спасибо
1 ответ
Интерпретация этого теста аналогична тесту причинности Грейнджера. В целом, p-значение теста - это вероятность наблюдать данный результат в предположении, что H0 истинно. Для этого теста H0 является гипотезой не-причинности. Так, используя пороговое значение, например, 5%, значение p_value больше 0,05 означает, что ts2 не вызывает ts1.
В качестве примечания, размер скрытых слоев как для одномерной, так и для двумерной моделей - это векторы, а не целые числа. Например, LayersUniv = c(1, 2) эквивалентно модели MLP с двумя скрытыми слоями, где первый содержит один нейрон, а второй - нейроны.
Бест, Юсеф