乐趣区

关于数据挖掘:拓端tecdatR语言马尔可夫转换模型研究交通伤亡人数事故预测

原文链接:http://tecdat.cn/?p=12227

原文出处:拓端数据部落公众号


摘要

本文形容了 R 语言中马尔克夫转换模型的剖析过程。首先,对模仿数据集进行具体建模。接下来,将马尔可夫转换模型拟合到具备离散响应变量的实在数据集。用于验证对这些数据集建模的不同办法。

模仿实例

示例数据是一个模仿数据集,用于展现如何检测两种不同模式的存在:一种模式中的响应变量高度相干,另一种模式中的响应仅取决于外生变量 x。自相干观测值的区间为 1 到 100、151 到 180 和 251 到 300。每种计划的实在模型为:

图 1 中的曲线表明,在不存在自相干的区间中,响应变量 y 具备与协变量 x 类似的行为。拟合线性模型以钻研协变量 x 如何解释变量响应 y。
 

> summary(mod) 

Call:
lm(formula = y ~ x, data = example)

Residuals:

      Min 1Q Median 3Q Max

-2.8998 -0.8429 -0.0427 0.7420 4.0337

> plot(ts(example))

图 1:模仿数据,y 变量是响应变量

Coefficients:
Estimate Std. Error t value Pr(>|t|)

(Intercept)    9.0486    0.1398    64.709    < 2e-16 ***
x    0.8235    0.2423    3.398    0.00077 ***

Residual standard error: 1.208 on 298 degrees of freedom
Multiple R-squared: 0.03731, Adjusted R-squared: 0.03408
F-statistic: 11.55 on 1 and 298 DF, p-value: 0.0007701

协变量的确很重要,然而模型解释的数据行为十分蹩脚。图 1 中的线性模型残差图表明,它们的自相干很强。残差的诊断图(图 2)确认它们仿佛不是白噪声,并且具备自相干关系。接下来,将自回归马尔可夫转换模型(MSM-AR)拟合到数据。自回归局部设置为 1。为了批示所有参数在两个周期中都能够不同,将转换参数(sw)设置为具备四个重量的矢量。拟合线性模型时的最初一个值称为残差。

 
标准偏差。有一些选项可管制估算过程,例如用于批示是否实现了过程并行化的逻辑参数。
 

Markov Switching Model


AIC    BIC    logLik
637.0736 693.479 -312.5368
Coefficients:
Regime 1
\-\-\-\-\-\-\-\-\-
Estimate Std. Error t value    Pr(>|t|)
(Intercept)(S)    0.8417    0.3025    2.7825    0.005394 **
x(S)    -0.0533    0.1340 -0.3978    0.690778
y_1(S)    0.9208    0.0306 30.0915 < 2.2e-16 ***
\-\-\-
Signif. codes:    0    '***' 0.001    '**' 0.01    '*' 0.05    '.' 0.1    ' ' 1

Residual standard error: 0.5034675
Multiple R-squared: 0.8375

Standardized Residuals:
Min    Q1    Med    Q3    Max
-1.5153666657 -0.0906543311    0.0001873641    0.1656717256    1.2020898986
Regime 2
---------    Estimate Std. Error t value    Pr(>|t|)
(Intercept)(S)    8.6393    0.7244 11.9261 < 2.2e-16 ***
x(S)    1.8771    0.3107    6.0415 1.527e-09 ***
y_1(S)    -0.0569    0.0797 -0.7139    0.4753
\-\-\-
Signif. codes:    0    '***' 0.001    '**' 0.01    '*' 0.05    '.' 0.1    ' ' 1

Residual standard error: 0.9339683
Multiple R-squared: 0.2408
Standardized Residuals:
Min Q1 Med Q3 Max
-2.31102193 -0.03317756 0.01034139 0.04509105 2.85245598
Transition probabilities:
Regime 1 Regime 2
Regime 1 0.98499728 0.02290884
Regime 2 0.01500272 0.97709116

模型 mod.mswm 具备协方差 x 十分显着的状态,而在其余状况下,自相干变量也十分重要。两者的 R 平方均具备较高的值。最初,转移概率矩阵具备较高的值,这表明很难从接通状态更改为另一个状态。该模型能够完满地检测每个状态的周期。残差看起来像是白噪声,它们适宜正态分布。而且,自相干隐没了。

 

 图形显示已完满检测到每个计划的周期。

> plot(mod.mswm,expl="x")

交通事故

 

交通数据蕴含 2010 年西班牙交通事故的每日人数,均匀每日温度和每日降水量。该数据的目标是钻研死亡人数与气象条件之间的关系。因为在周末和工作日变量之间存在不同的行为,因而咱们阐明了在这种状况下应用狭义马尔科夫转换模型的状况。
在此示例中,响应变量是计数变量。因而,咱们拟合了泊松狭义线性模型。

> summary(model)
Call:
glm(formula = NDead ~ Temp + Prec, family = "poisson", data = traffic)

Deviance Residuals:

Min    1Q    Median    3Q    Max
-3.1571    -1.0676    -0.2119    0.8080    3.0629

Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.1638122 0.0808726 14.391 < 2e-16 ***
Temp 0.0225513 0.0041964 5.374 7.7e-08 ***
Prec 0.0002187 0.0001113 1.964 0.0495 *
\-\-\-
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
(Dispersion parameter for poisson family taken to be 1)
Null deviance: 597.03 on 364 degrees of freedom
Residual deviance: 567.94 on 362 degrees of freedom
AIC: 1755.9
Number of Fisher Scoring iterations: 5

下一步,应用拟合马尔可夫转换模型。为了适应狭义马尔可夫转换模型,必须蕴含族参数,而且 glm 没有标准偏差参数,因而 sw 参数不蕴含其切换参数。

> 
Markov Switching Model


AIC    BIC    logLik
1713.878 1772.676 -850.9388
Coefficients:
Regime 1
\-\-\-\-\-\-\-\-\-
Estimate Std. Error t value    Pr(>|t|)
(Intercept)(S)    0.7649    0.1755    4.3584    1.31e-05 ***
Temp(S)    0.0288    0.0082    3.5122 0.0004444 ***
Prec(S)    0.0002    0.0002    1.0000 0.3173105
\-\-\-
Signif. codes:    0    '***' 0.001    '**' 0.01    '*' 0.05    '.' 0.1    ' ' 1

Regime 2
\-\-\-\-\-\-\-\-\-
Estimate Std. Error t value Pr(>|t|)

(Intercept)(S)    1.5659    0.1576    9.9359    < 2e-16 ***
Temp(S)    0.0194    0.0080    2.4250    0.01531 *
Prec(S)    0.0004    0.0002    2.0000    0.04550 *
\-\-\-
Signif. codes:    0    '***' 0.001    '**' 0.01    '*' 0.05    '.' 0.1    ' ' 1

Transition probabilities:
Regime 1 Regime 2
Regime 1 0.7287732 0.4913893
Regime 2 0.2712268 0.5086107

两种状态都有显着的协变量,但降水协变量仅在这两种状态之一中是显着的。

Aproximate intervals for the coefficients. Level= 0.95
(Intercept):
Lower Estimation Upper
Regime 1 0.4208398 0.7648733 1.108907

Regime 2 1.2569375 1.5658582 1.874779
Temp:
Lower Estimation Upper
Regime 1 0.012728077 0.02884933 0.04497059
Regime 2 0.003708441 0.01939770 0.03508696
Prec:
Lower Estimation Upper
Regime 1 -1.832783e-04 0.0001846684 0.0005526152
Regime 2 -4.808567e-05 0.0004106061 0.0008692979

 

 

因为模型是通用线性模型的扩大,因而从类对象计算出图中的 Pearson 残差。该残差有白噪声的经典构造。残差不是自相干的,但它们与正态分布不太吻合。然而,Pearson 残差的正态性不是狭义线性模型验证的要害条件。

> plot(m1,which=2)

 

 

咱们能够看到短时间内的状态调配,因为较大的状态基本上蕴含工作日。


最受欢迎的见解

1. 用 R 语言模仿混合制排队随机服务排队零碎

2.R 语言中应用排队论预测等待时间

3.R 语言中实现马尔可夫链蒙特卡罗 MCMC 模型

4.R 语言中的马尔科夫机制转换 (Markov regime switching) 模型模型 ”)

5.matlab 贝叶斯隐马尔可夫 hmm 模型

6. 用 R 语言模仿混合制排队随机服务排队零碎

7.Python 基于粒子群优化的投资组合优化

8.R 语言马尔可夫转换模型钻研交通伤亡人数事变预测

9. 用机器学习辨认一直变动的股市情况——隐马尔可夫模型的利用

退出移动版