機器學習知識點(十)馬爾可夫鏈

fjssharpsword發表於2017-03-03

馬爾可夫鏈概述

馬爾可夫鏈安德烈·馬爾可夫Andrey Markov,1856-1922)得名,是數學中具有馬爾可夫性質的離散時間隨機過程。該過程中,在給定當前知識或資訊的情況下,過去(即當期以前的歷史狀態)對於預測將來(即當期以後的未來狀態)是無關的。

  時間和狀態都是離散的馬爾可夫過程稱為馬爾可夫鏈, 簡記為{X_n=X(n),n=0,1,2,\cdots}

  馬爾可夫鏈是隨機變數X_1,X_2,X_3\cdots的一個數列。這些變數的範圍,即他們所有可能取值的集合,被稱為“狀態空間”,而Xn的值則是在時間n的狀態。如果Xn + 1對於過去狀態的條件概率分佈僅是Xn的一個函式,則

  P(X_{n+1}=x|X_0,X_1,X_2,\cdots,X_n)=P(X_{n+1}=x|X_n)

  這裡x為過程中的某個狀態。上面這個恆等式可以被看作是馬爾可夫性質。

  馬爾可夫在1906年首先做出了這類過程 。而將此一般化到可數無限狀態空間是由柯爾莫果洛夫在1936年給出的。

  馬爾可夫鏈與布朗運動以及遍歷假說這兩個二十世紀初期物理學重要課題是相聯絡的,但馬爾可夫尋求的似乎不僅於數學動機,名義上是對於縱屬事件大數法則的擴張。

  馬爾可夫鏈是滿足下面兩個假設的一種隨機過程:

  1、t+l時刻系統狀態的概率分佈只與t時刻的狀態有關,與t時刻以前的狀態無關;

  2、從t時刻到t+l時刻的狀態轉移與t的值無關。一個馬爾可夫鏈模型可表示為=(S,P,Q),其中各元的含義如下:

  1)S是系統所有可能的狀態所組成的非空的狀態集,有時也稱之為系統的狀態空間,它可以是有限的、可列的集合或任意非空集。本文中假定S是可數集(即有限或可列)。用小寫字母i,j(或Si,Sj)等來表示狀態。

  2)P=[P_{ij}]_{n\times n}是系統的狀態轉移概率矩陣,其中Pij表示系統在時刻t處於狀態i,在下一時刻t+l處於狀態i的概率,N是系統所有可能的狀態的個數。對於任意i∈s,有\sum_{j=1}^NP_{ij}=l

  3)Q=[q_1,q_2\cdots q_n]是系統的初始概率分佈,qi是系統在初始時刻處於狀態i的概率,滿足\sum_{i=1}^Nq_i=1

馬爾可夫鏈的性質


馬爾可夫鏈是由一個條件分佈來表示的

  P(Xn + 1 | Xn)

  這被稱為是隨機過程中的“轉移概率”。這有時也被稱作是“一步轉移概率”。二、三,以及更多步的轉移概率可以導自一步轉移概率和馬爾可夫性質:

  P(X_{n+2}|X_n) = \int P(X_{n+2},X_{n+1}|X_n)dX_{n+1} = \int P(X_{n+2}|X_{n+1})P(X_{n+1}|X_n)dX_{n+1}

  同樣:

  P(X_{n+3}|X_n) = \int P(X_{n+3}|X_{n+2}) \int P(X_{n+2}|X_{n+1})P(X_{n+1}|X_n)dX_{n+1}dX_{n+2}

  這些式子可以通過乘以轉移概率並求k−1次積分來一般化到任意的將來時間n+k。

  邊際分佈P(Xn)是在時間為n時的狀態的分佈。初始分佈為P(X0)。該過程的變化可以用以下的一個時間步幅來描述:

  P(X_{n+1}) = \int P(X_{n+1}|X_n)P(X_n)dX_n

  這是Frobenius-Perron equation的一個版本。這時可能存在一個或多個狀態分佈π滿足:

  \pi(X) = \int P(X|Y)\pi(Y)dY

  其中Y只是為了便於對變數積分的一個名義。這樣的分佈π被稱作是“平穩分佈”(Stationary Distribution)或者“穩態分佈”(Steady-state Distribution)。一個平穩分佈是一個對應於特徵根為1的條件分佈函式的特徵方程。

  平穩分佈是否存在,以及如果存在是否唯一,這是由過程的特定性質決定的。“不可約”是指每一個狀態都可來自任意的其它狀態。當存在至少一個狀態經過一個固定的時間段後連續返回,則這個過程被稱為是“週期的”。

離散狀態空間中的馬爾可夫鏈模型

  如果狀態空間是有限的,則轉移概率分佈可以表示為一個具有(i,j)元素的矩陣,稱之為“轉移矩陣”:

  Pij = P(Xn + 1 = i | Xn = j)

  對於一個離散狀態空間,k步轉移概率的積分即為求和,可以對轉移矩陣求k次冪來求得。就是說,如果\mathbf{P}是一步轉移矩陣,\mathbf{P}^k就是k步轉移後的轉移矩陣。

  平穩分佈是一個滿足以下方程的向量:

  \mathbf{P}\pi^* = \pi^*

  在此情況下,穩態分佈π * 是一個對應於特徵根為1的、該轉移矩陣的特徵向量。

  如果轉移矩陣\mathbf{P}不可約,並且是非週期的,則\mathbf{P}^k收斂到一個每一列都是不同的平穩分佈π * ,並且,

  \lim_{k\rightarrow\infty}\mathbf{P}^k\pi=\pi^*

  獨立於初始分佈π。這是由Perron-Frobenius theorem所指出的。

  正的轉移矩陣(即矩陣的每一個元素都是正的)是不可約和非週期的。矩陣被稱為是一個隨機矩陣,當且僅當這是某個馬爾可夫鏈中轉移概率的矩陣。

  注意:在上面的定式化中,元素(i,j)是由j轉移到i的概率。有時候一個由元素(i,j)給出的等價的定式化等於由i轉移到j的概率。在此情況下,轉移矩陣僅是這裡所給出的轉移矩陣的轉置。另外,一個系統的平穩分佈是由該轉移矩陣的左特徵向量給出的,而不是右特徵向量。

  轉移概率獨立於過去的特殊況為熟知的Bernoulli scheme。僅有兩個可能狀態的Bernoulli scheme被熟知為貝努利過程

馬爾可夫鏈的應用

科學中的應用

  馬爾可夫鏈通常用來建模排隊理論統計學中的建模,還可作為訊號模型用於熵編碼技術,如演算法編碼。馬爾可夫鏈也有眾多的生物學應用,特別是人口過程,可以幫助模擬生物人口過程的建模。隱蔽馬爾可夫模型還被用於生物資訊學,用以編碼區域或基因預測。

  馬爾可夫鏈最近的應用是在地理統計學(geostatistics)中。其中,馬爾可夫鏈用在基於觀察資料的二到三維離散變數的隨機模擬。這一應用類似於“克里金”地理統計學(Kriging geostatistics),被稱為是“馬爾可夫鏈地理統計學”。這一馬爾可夫鏈地理統計學方法仍在發展過程中。

人力資源中的應用

  馬爾可夫鏈模型主要是分析一個人在某一階段內由一個職位調到另一個職位的可能性,即調動的概率。該模型的一個基本假設就是,過去的內部人事變動的模式和概率與未來的趨勢大體相一致。實際上,這種方法是要分析企業內部人力資源的流動趨勢和概率,如升遷、轉職、調配或離職等方面的情況,以便為內部的人力資源的調配提供依據。

  它的基本思想是:通過發現過去組織人事變動的規律,以推測組織在未來人員的供給情況。馬爾可夫鏈模型通常是分幾個時期收集資料,然後再得出平均值,用這些資料代表每一種職位中人員變動的頻率,就可以推測出人員變動情況。

  具體做法是:將計劃初期每一種工作的人數量與每一種工作的人員變動概率相乘,然後縱向相加,即得到組織內部未來勞動力的淨供給量。其基本表示式為:

  N_i(t)=\sum_{j=1}^k*P_{ij}+V_i(t)

Ni(t):t時間內I類人員數量;
Pji:人員從j類向I類轉移的轉移率;
Vi(t):在時間(t-1,t)I類所補充的人員數。

  企業人員的變動有調出、調入、平調晉升與降級五種。表3 假設一家零售公司在1999至2000年間各類人員的變動情況。年初商店經理有12人,在當年期間平均90%的商店經理仍在商店內,10%的商店經理離職,期初36位經理助理有 11%晉升到經理,83%留在原來的職務,6%離職;如果人員的變動頻率是相對穩定的,那麼在2000年留在經理職位上有11人(12×90%),另外,經理助理中有4人(36×83%)晉升到經理職位,最後經理的總數是15人(11+4)。可以根據這一矩陣得到其他人員的供給情況,也可以計算出其後各個時期的預測結果。假設的零售公司的馬爾可夫分析,見下表:

1999~2000 商店經理 經理助理 區域經理 部門經理 銷售員 離職
商店經理
(n=12)
90%
11
        10%
1
經理助理
(n=36)
11%
4
83%
30
      6%
2
區域經理
(n=96)
  11%
11
66%
63
8%
8
  15%
14
部門經理
(=288)
    10%
29
72%
207
2%
6
16%
46
銷售員
(=1440)
      6%
86
74%
1066
25%
228
供給預測 15 41 92 301 1072 351

相關文章