量化投资的利器:隐马尔可夫模型(二)

0
回复
4691
查看
[复制链接]

209

主题

26

回帖

1424

积分

超级版主

积分
1424
来源: 2019-6-29 11:56:31 显示全部楼层 |阅读模式
一、马尔可夫链
首先讨论在处理序列数据时最常用的数学工具—马尔可夫链1(Markov chain或者Markov process)。
马尔可夫链描述的是一个随机过程(stochastic process),比如《量化投资的利器:隐马尔可夫模型(一)》中的天气情况。更一般地,假设y1,y2,...,yn y_1, y_2, ..., y_ny
1

,y
2

,...,y
n

是按顺序排列的随机变量。这些随机变量是相互关联的,也就是说当前状态和之前的状态有关系,具体的如公式(1)所示:

20180909094732926.png
P(yi∣yi−1,yi−2,...,y0)=P(yi∣yi−1)(1) P(y_i | y_{i - 1}, y_{i - 2}, ..., y_0) = P(y_i | y_{i - 1}) \tag{1}
P(y
i

∣y
i−1

,y
i−2

,...,y
0

)=P(y
i

∣y
i−1

)(1)
上面的公式可形象地理解为:yi {y_i}y
i

是一个很“健忘”的随机过程,它的当前状态只跟前一个状态相关。针对马尔可夫链,数学上还可以证明:
P(y0,...,yi−1,yi+1,...,yn∣yi)=P(y0,...,yi−1∣yi)P(yi+1,...,yn∣yi)(2) P(y_0, ..., y_{i - 1}, y_{i + 1}, ..., y_n | y_i) = P(y_0, ..., y_{i - 1} | y_i)P(y_{i + 1}, ..., y_n | y_i) \tag{2}
P(y
0

,...,y
i−1

,y
i+1

,...,y
n

∣y
i

)=P(y
0

,...,y
i−1

∣y
i

)P(y
i+1

,...,y
n

∣y
i

)(2)
公式(2)表示,在已知当前状态的条件下,未来和过去是相互独立。这也是马尔可夫链另一个比较通俗的解释。
当的取值离散时,相应的马尔可夫链2可由转移矩阵(transition matrix)和初始分布(即随机变量y0 y_0y
0

的分布)表示。比如《量化投资的利器:隐马尔可夫模型(一)》中的天气情况可由一个的矩阵和相应的初始分布表示,如图1所示。
图1
更一般地,假设yi y_iy
i

可能的取值有n nn个,则转移矩阵Q QQ为n×n n \times nn×n的方阵,矩阵中元素的表示式为:
Qk,l=P(yi=l∣yi−1=k)(3) Q_{k, l} = P(y_i = l | y_{i - 1} = k) \tag{3}
Q
k,l

=P(y
i

=l∣y
i−1

=k)(3)
也就是说,转移矩阵中第k kk行第l ll列的元素为状态k kk到状态l ll的概率。因此第k kk行表示状态k kk到其他可能状态的概率分布,显然它们的和等于1,即∑nl=1Qk,l=1 \sum_{l=1}^n Q_{k, l} = 1∑
l=1
n

Q
k,l

=1。
以上就是马尔可夫链的数学定义。需要提醒读者注意的是,虽然它定义当前状态只跟前一状态相关,如公式(1)所示,但其实稍加变换就可以处理更为复杂的情况。比如假设当前状态跟最近的两个状态都相关,即$P(y_i | y_{i - 1}, y_{i - 2}, …, y_0) = P(y_i | y_{i - 1}, y_{i - 2}) 。针对这种情况,定义新的状态 。针对这种情况,定义新的状态。针对这种情况,定义新的状态z_i = (y_i, y_{i - 1}),显然 ,显然,显然{y_i}和 和和{z_i}是等价的,而且容易证明随机过程 是等价的,而且容易证明随机过程是等价的,而且容易证明随机过程z_i$也是一个马尔可夫链。
二、模型架构
借助上面讨论的马尔可夫链,离散情况下的隐马尔可夫的模型参数(限于篇幅,这篇文章只讨论是离散的情况)可以被分解如下3个部分。
先验概率P(Xi∣yi) P(X_i | y_i)P(X
i

∣y
i

):这部分模型与之前讨论的生成式模型没有任何差别。事实上,在实际生产中,常用朴素贝叶斯模型来处理P(Xi∣yi) P(X_i | y_i)P(X
i

∣y
i

)。
初始分布P(y0) P(y_0)P(y
0

):在离散的情况下,它就是一个多项式分布。
转移矩阵P(yi∣yi−1) P(y_i | y_{i-1})P(y
i

∣y
i−1

):它与上面的初始分布一起组成内在状态(hidden status)的马尔可夫链。
根据上面的分析,可以将隐马尔可夫模型表示成如图2所示的图像。

20180909102231613.png

根据上面假设的模型参数,可以得到数据的联合概率:
P(X,y)=P(y0)P(y1∣y0)...P(yi∣yi−1)∏jP(Xj∣yj) P(X, y) = P(y_0)P(y_1 | y_0) ... P(y_i | y_{i - 1})\prod_j P(X_j | y_j)
P(X,y)=P(y
0

)P(y
1

∣y
0

)...P(y
i

∣y
i−1

)
j


P(X
j

∣y
j

)
隐马尔可夫与其他生成式模型一样,其参数的估计原则是最大化数据的联合概率(也称为最大似然估计法);而预测公式也类似,只是需要整体考虑所有数据,具体地如公式(5)所示,其中,Y=(y0,...,yT) Y = (y_0, ..., y_T)Y=(y
0

,...,y
T

)。
Yˆ=argmaxYP(y0,y1,...,yT∣X1,X2,...,XT) \hat{Y} = argmax_Y P(y_0, y_1, ..., y_T | X_1, X_2, ..., X_T)
Y
^
=argmax
Y

P(y
0

,y
1

,...,y
T

∣X
1

,X
2

,...,X
T

)
公式(5)的求解并不容易,需要用到特殊的算法,比如著名的Viterbi算法,具体的细节请参考之后的文章隐马尔可夫模型(三)。
到目前为止,我们只讨论了隐马尔可夫链的理论部分。这些内容显得有些抽象,不太容易理解模型到底是如何运行的。在之后的文章中(隐马尔可夫模型(三)、隐马尔可夫模型(四))将讨论两个具体的例子,它们将分别展示如何在监督式学习和非监督式学习领域使用隐马尔可夫模型。
---------------------
作者:tgbaggio1
来源:CSDN
原文:https://blog.csdn.net/weixin_39844018/article/details/82555768
版权声明:本文为博主原创文章,转载请附上博文链接!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册
关注微信