(圖源:https://www.europeanwomeninmaths.org/etfd/)
原標題 | Stochastic Processes Analysis作 者 | Pier Paolo Ippolito
翻 譯 | had_in(電子科技大學)
“The only simple truth is that there is nothing simple in this complex universe. Everything relates. Everything connects”
— Johnny Rich, The Human Script
介紹
機器學習的主要應用之一是對隨機過程建模。機器學習中一些隨機過程的例子如下:
泊松過程:用於處理等待時間以及隊列。
隨機漫步和布朗運動過程:用於交易算法。
馬爾可夫決策過程:常用於計算生物學和強化學習。
高斯過程:用於迴歸和優化問題(如,超參數調優和自動機器學習)。
自迴歸和移動平均過程:用於時間序列分析(如,ARIMA模型)。
在本文中,我將簡要地向您介紹這些隨機過程。
歷史背景
隨機過程是我們日常生活的一部分。隨機過程之所以如此特殊,是因為隨機過程依賴於模型的初始條件。在上個世紀,許多數學家,如龐加萊,洛倫茲和圖靈都被這個話題所吸引。
如今,這種行為被稱為確定性混沌,它與真正的隨機性有著截然不同的範圍界限。
由於愛德華·諾頓·洛倫茲的貢獻(https://en.wikipedia.org/wiki/Edward_Norton_Lorenz),混沌系統的研究在1963年取得了突破性進展。當時,洛倫茲正在研究如何改進天氣預報。洛倫茲在他的分析中注意到,即使是大氣中的微小擾動也能引起氣候變化。
洛倫茲用來描述這種狀態的一個著名的短語是:
“A butterfly flapping its wings in Brazil can produce a tornado in Texas”(在巴西,一隻蝴蝶扇動翅膀就能在德克薩斯州製造龍捲風 )
— Edward Norton Lorenz(愛德華·諾頓·洛倫茲)
這就是為什麼今天的混沌理論有時被稱為“蝴蝶效應”。
分形學
一個簡單的混沌系統的例子是分形(如圖所示)。分形是在不同尺度上不斷重複的一種模式。由於分形的縮放方式,分形不同於其他類型的幾何圖形。分形是遞歸驅動系統,能夠捕獲混沌行為。在現實生活中,分形的例子有:樹、河、雲、貝殼等。
圖1:MC. Escher, Smaller and Smaller [1]
在藝術領域有很多自相似的圖形。毫無疑問, MC. Escher是最著名的藝術家之一,他的作品靈感來自數學。事實上,在他的畫中反覆出現各種不可能的物體,如彭羅斯三角形和莫比烏斯帶。在"Smaller and Smaller"中,他也反覆使用了自相似性(圖1)。除了蜥蜴的外環,畫中的內部圖案也是自相似性的。每重複一次,它就包含一個有一半尺度的複製圖案。
確定性和隨機性過程
有兩種主要的隨機過程:確定性和隨機性。
在確定性過程中,如果我們知道一系列事件的初始條件(起始點),我們就可以預測該序列的下一步。相反,在隨機過程中,如果我們知道初始條件,我們不能完全確定接下來的步驟是什麼。這是因為這個過程可能會以許多不同的方式演化。
在確定性過程中,所有後續步驟的概率都為1。另一方面,隨機性隨機過程的情況則不然。
任何完全隨機的東西對我們都沒有任何用處,除非我們能識別出其中的模式。在隨機過程中,每個單獨的事件都是隨機的,儘管可以識別出連接這些事件的隱藏模式。這樣,我們的隨機過程就被揭開了神秘的面紗,我們就能夠對未來的事件做出準確的預測。
為了用統計學的術語來描述隨機過程,我們可以給出以下定義:
觀測值:一次試驗的結果。
總體:所有可能的觀測值,可以記為一個試驗。
樣本: 從獨立試驗中收集的一組結果。
例如,拋一枚均勻硬幣是一個隨機過程,但由於大數定律,我們知道,如果進行大量的試驗,我們將得到大約相同數量的正面和反面。
大數定律指出:
“隨著樣本規模的增大,樣本的均值將更接近總體的均值或期望值。因此,當樣本容量趨於無窮時,樣本均值收斂於總體均值。重要的一點是樣本中的觀測必須是相互獨立的。”
--Jason Brownlee
隨機過程的例子有股票市場和醫學數據,如血壓和腦電圖分析。
泊松過程
泊松過程用於對一系列離散事件建模,在這些事件中,我們知道不同事件發生的平均時間,但我們不知道這些事件確切在何時發生。
如果一個隨機過程能夠滿足以下條件,則可以認為它屬於泊松過程:
事件彼此獨立(如果一個事件發生,並不會影響另一個事件發生的概率)。
兩個事件不能同時發生。
事件的平均發生比率是恆定的。
讓我們以停電為例。電力供應商可能會宣傳平均每10個月就會斷電一次,但我們不能準確地說出下一次斷電的時間。例如,如果發生了嚴重問題,可能會連續停電2-3天(如,讓公司需要對電源供應做一些調整),以便在接下來的兩天繼續使用。
因此,對於這種類型的隨機過程,我們可以相當確定事件之間的平均時間,但它們是在隨機的間隔時間內發生的。
由泊松過程,我們可以得到一個泊松分佈,它可以用來推導出不同事件發生之間的等待時間的概率,或者一個時間段內可能發生事件的數量。
泊松分佈可以使用下面的公式來建模(圖2),其中k表示一個時期內可能發生的事件的預期數量。
圖2:泊松分佈公式[3]
一些可以使用泊松過程模擬的現象的例子是原子的放射性衰變和股票市場分析。
隨機漫步和布朗運動過程
隨機漫步是可以在隨機方向上移動的任意離散步的序列(長度總是相同)(圖3)。隨機漫步可以發生在任何維度空間中(如:1D,2D,nD)。
圖3:高維空間[4]中的隨機漫步
現在我將用一維空間(數軸)向您介紹隨機漫步,這裡解釋的這些概念也適用於更高維度。
我們假設我們在一個公園裡,我們看到一隻狗在尋找食物。它目前在數軸上的位置為0,它向左或向右移動找到食物的概率相等(圖4)。
圖4:數軸[5]
現在,如果我們想知道在N步之後狗的位置是多少,我們可以再次利用大數定律。利用這個定律,我們會發現當N趨於無窮時,我們的狗可能會回到它的起點。無論如何,此時這種情況並沒有多大用處。
因此,我們可以嘗試使用均方根(RMS)作為距離度量(首先對所有值求平方,然後計算它們的平均值,最後對結果求平方根)。這樣,所有的負數都變成正數,平均值不再等於零。
在這個例子中,使用RMS我們會發現,如果我們的狗走了100步,它平均會從原點移動10步(√100 = 10)。
如前面所述,隨機漫步用於描述離散時間過程。相反,布朗運動可以用來描述連續時間的隨機漫步。
隱馬爾科夫模型
隱馬爾可夫模型都是關於認識序列信號的。它們在數據科學領域有大量應用,例如:
計算生物學(https://towardsdatascience.com/computational-biology-fca101e20412)。
寫作/語音識別。
自然語言處理(NLP)。
強化學習
HMMs是一種概率圖形模型,用於從一組可觀察狀態預測隱藏(未知)狀態序列。
這類模型遵循馬爾可夫過程假設:
“鑑於我們知道現在,所以未來是獨立於過去的"
因此,在處理隱馬爾可夫模型時,我們只需要知道我們的當前狀態,以便預測下一個狀態(我們不需要任何關於前一個狀態的信息)。
要使用HMMs進行預測,我們只需要計算隱藏狀態的聯合概率,然後選擇產生最高概率(最有可能發生)的序列。
為了計算聯合概率,我們需要以下三種信息:
初始狀態:任意一個隱藏狀態下開始序列的初始概率。
轉移概率:從一個隱藏狀態轉移到另一個隱藏狀態的概率。
發射概率:從隱藏狀態移動到觀測狀態的概率
舉個簡單的例子,假設我們正試圖根據一群人的穿著來預測明天的天氣是什麼(圖5)。
在這種例子中,不同類型的天氣將成為我們的隱藏狀態。晴天,颳風和下雨)和穿的衣服類型將是我們可以觀察到的狀態(如,t恤,長褲和夾克)。初始狀態是這個序列的起點。轉換概率,表示的是從一種天氣轉換到另一種天氣的可能性。最後,發射概率是根據前一天的天氣,某人穿某件衣服的概率。
圖5:隱馬爾可夫模型示例[6]
使用隱馬爾可夫模型的一個主要問題是,隨著狀態數的增加,概率和可能狀態的數量呈指數增長。為了解決這個問題,可以使用維特比算法(https://web.stanford.edu/~jurafsky/slp3/A.pdf)。
如果您對使用HMMs和生物學中的Viterbi算法的實際代碼示例感興趣,可以在我的Github代碼庫中找到它(https://github.com/pierpaolo28/Artificial-Intelligence-Projects/blob/master/Computational%20Biology/Tutorials/Tutorial%202/Tutorial%202.ipynb)。
從機器學習的角度來看,觀察值組成了我們的訓練數據,隱藏狀態的數量組成了我們要調優的超參數。
機器學習中HMMs最常見的應用之一是agent-based情景,如強化學習(圖6)。
圖6:強化學習[7]中的HMMs
高斯過程
高斯過程是一類完全依賴自協方差函數的平穩零均值隨機過程。這類模型可用於迴歸和分類任務。
高斯過程最大的優點之一是,它們可以提供關於不確定性的估計,例如,給我們一個算法確定某個項是否屬於某個類的確定性估計。
為了處理嵌入一定程度上的不確定性的情況,通常使用概率分佈。
一個離散概率分佈的簡單例子是擲骰子。
想象一下,現在你的一個朋友挑戰你擲骰子,你擲了50個trows。在擲骰子公平的情況下,我們期望6個面中每個面出現的概率相同(各為1/6)。如圖7所示。
圖7:擲骰子公平的概率分佈
無論如何,你玩得越多,你就越可以看到到骰子總是落在相同的面上。此時,您開始考慮骰子可能是不公平的,因此您改變了關於概率分佈的最初信念(圖8)。
圖8:不公平骰子的概率分佈
這個過程被稱為貝葉斯推理。
貝葉斯推理是我們在獲得新證據的基礎上更新自己對世界的認知的過程。
我們從一個先前的信念開始,一旦我們用全新的信息更新它,我們就構建了一個後驗信念。這種推理同樣適用於離散分佈和連續分佈。
因此,高斯過程允許我們描述概率分佈,一旦我們收集到新的訓練數據,我們就可以使用貝葉斯法則(圖9)更新分佈。
圖9:貝葉斯法則[8]
自迴歸移動平均過程
自迴歸移動平均(ARMA)過程是一類非常重要的分析時間序列的隨機過程。ARMA模型的特點是它們的自協方差函數只依賴於有限數量的未知參數(對於高斯過程是不可能的)。
縮略詞ARMA可以分為兩個主要部分:
自迴歸=模型利用了預先定義的滯後觀測值與當前滯後觀測值之間的聯繫。
移動平均=模型利用了殘差與觀測值之間的關係。
ARMA模型利用兩個主要參數(p, q),分別為:
p = 滯後觀測次數。
q = 移動平均窗口的大小。
ARMA過程假設一個時間序列在一個常數均值附近均勻波動。如果我們試圖分析一個不遵循這種模式的時間序列,那麼這個序列將需要被差分,直到分割後的序列具有平穩性。
這可以通過使用一個ARIMA模型來實現,如果你有興趣瞭解更多,我寫了一篇關於使用ARIMA進行股票市場分析的文章(https://towardsdatascience.com/stock-market-analysis-using-arima-8731ded2447a)。
謝謝閱讀!
參考文獻
[1] M C Escher, “Smaller and Smaller” — 1956.訪問: https://
www.etsy.com/listing/288848445/m-c-escher-print-escher-art-smaller-and[2] 機器學習中大數定律的簡要介紹。Machine Learning Mastery, Jason Brownlee. 訪問: https://machinelearningmastery.com/a-gentle-introduction-to-the-law-of-large-numbers-in-machine-learning/
[3] 正態分佈,二項分佈,泊松分佈 , Make Me Analyst. 訪問: http://makemeanalyst.com/wp-content/uploads/2017/05/Poisson-Distribution-Formula.png
[4] 通用維基百科. Accessed at: https://commons.wikimedia.org/wiki/File:Random_walk_25000.gif
[5] 數軸是什麼?Mathematics Monste. 訪問: https://www.mathematics-monster.com/lessons/number_line.html
[6] 機器學習算法: SD (σ)- 貝葉斯算法. Sagi Shaier, Medium. 訪問: https://towardsdatascience.com/ml-algorithms-one-sd-%CF%83-bayesian-algorithms-b59785da792a
[7] DeepMind的人工智能正在自學跑酷,結果非常令人驚訝。The Verge, James Vincent. 訪問: https://www.theverge.com/tldr/2017/7/10/15946542/deepmind-parkour-agent-reinforcement-learning
[8] 為數據科學專業人員寫的強大的貝葉斯定理介紹。KHYATI MAHENDRU, Analytics Vidhya. Accessed at: https://www.analyticsvidhya.com/blog/2019/06/introduction-powerful-bayes-theorem-data-science/
via https://towardsdatascience
.com/stochastic-processes-analysis-f0a116999e4閱讀更多 AI科技評論 的文章