機器學習新戰果,破解“蝴蝶效應”,預測火焰的下一秒形態

半個世紀前,混沌理論(Chaos theory)的先驅者們發現,“蝴蝶效應”使得長期預測變得深不可測,對複雜系統(如天氣、經濟或其他任何事物)而言,即使是最小的擾動,也能觸發一系列的連鎖反應,致使結果截然不同。如果我們不能更好更精確地理解這些系統的狀態,從而預見事件會發展成什麼樣,我們就會生活在不確定中。

這裡手動解釋一下混沌理論的背景。近半世紀以來,科學家發現許多自然現象即使可以化為單純的數學公式,但是其行徑卻無法加以預測。如氣象學家Edward Lorenz發現簡單的熱對流現象居然能引起令人無法想象的氣象變化,產生所謂的“蝴蝶效應”;60年代,美國數學家Stephen Smale發現,某些物體的行徑經過某種規則性變化之後,隨後的發展並無一定的軌跡可循,呈現失序的混沌狀態。

直到1963年,美國氣象學家愛德華·諾頓·洛倫茨提出混沌理論(Chaos),非線性系統具有的多樣性和多尺度性。混沌理論解釋了決定系統可能產生隨機結果。理論的最大的貢獻是用簡單的模型獲得明確的非週期結果。在氣象、航空及航天等領域的研究裡有重大的作用。

但現在,機器可以在此領域大顯身手了。

在《物理評論快報》(Physical Review Letters)和《混沌》(Chaos)雜誌上發表的一系列研究結果表明,科學家運用機器學習——其擁有最近在人工智能領域取得成功的同一計算技術——來預測混沌系統未來的演變。該方法因其開創性並很可能被廣泛運用而得到專家盛讚。

德國不來梅雅各布大學(Jacobs University)計算科學教授Herbert Jaeger評價道:“機器學習能預測遙遠的未來,實則令人驚喜。”

這些發現由資深混沌理論家Edward Ott和四名馬里蘭大學的學者共同完成。他們採用了一種被稱為“庫計算”的機器學習算法,來“學習”一種典型的、叫做Kuramoto-Sivashinsky方程的混沌系統。這個方程式的演化方式如同火焰鋒面,在燃燒的介質中閃爍。該方程還描述了等離子體和其他現象中的漂移波,並可作為“時空混沌和干擾研究的基礎”,奧特的研究生、論文的第一作者Jaideep Pathak說道。

經過對Kuramoto-Sivashinsky方程式以往的演算數據的訓練後,計算機就可以精確地預測出,在未來的8個“李亞普諾夫時間”(Lyapunov times)中,火焰系統將如何演變,比以往任何方法都要超前8倍。李雅普諾夫時間代表了一個混沌系統的兩個幾乎相同的狀態當出現指數差異時所用時間。因此,它通常設定了可預測性的範圍。

德國德累斯頓物理研究所混沌理論學家Holger Kantz說:“機器學習的確大有裨益。”“機器學習技術某種意義上說等同於認知真理。”

該算法本身對Kuramoto-Sivashinsky方程一無所知,它只獲取方程式演化數據。這就是機器學習法的強大所在。許多情況下,描述一種混沌系統的方程式並不為人所知,因而動力學家需努力建模以進行預測。Ott的研究結果表明你不需要那些方程式,需要的只是數據。

Kantz說:“這篇論文表明,或許有一天我們可以通過機器學習算法來預測天氣,而不是通過複雜的大氣模型。”

除了天氣預報,專家稱,機器學習技術可以幫助監測心律失常現象,監測是否有心臟病發作跡象,並監測大腦神經元的放電模式,以尋找神經元突起跡象。進一步說,它還能有助於預測海面情況,以防洶湧的海浪危及船隻,抑或發生地震。

Ott特別希望這些新工具能對預警太陽風暴發揮作用,像1859年噴出太陽表面35000英里的那一次。地磁的鉅變使得北極光在地球上隨處可見,感生電壓讓許多沒有通電的電線上產生了電流,直接斷掉了地球上的電報系統。如果今天地球受到這樣規模的太陽風暴襲擊,人類的電子設施會遭到嚴重破壞。Ott說“如果你知道能預測太陽風暴即將來臨,你只需關掉電源,之後再重啟就好了。”

機器學習新戰果,破解“蝴蝶效應”,預測火焰的下一秒形態

Ott、Pathak和他們的同事Brian Hunt、Michelle Girvan和Zhixin Lu(現就職於賓夕法尼亞大學)通過綜合現有的工具取得了成果。

約六、七年前,當強大的“深度學習”算法開始掌握像圖像和語音識別這樣的人工智能任務時,他們開始研究機器學習,並想出巧妙的方法將其運用於混沌理論。他們在深度學習革命之前就已經得到了一些有希望的結果。其中最重要的一個是,在21世紀初,Jaeger和德國混沌理論學家Harald Haas利用一個隨機連接的人工神經元網絡——形成了庫計算中的”庫”——來學習三個混沌系統協同變量的動力學法則。在對這三組數字進行訓練後,網絡可以預測出這三個變量的未來值,且預測範圍之遠令人印象深刻。然而,當有多個相互作用的變量時,計算就變得難以處理了。Ott和他的同事需要一個更為行之有效的方法,使庫計算與大型混沌系統相關聯,這些系統有大量的相互關聯的變量。例如,火焰前部邊緣的每一個位置,都對應著三個不同空間方向的速度分量。

機器學習新戰果,破解“蝴蝶效應”,預測火焰的下一秒形態

圖左至右:馬里蘭大學Jaideep Pathak,Michelle Girvan,Brian Hunt,and Edward Ott

他們花了好幾年時間才找到這個直截了當的解決辦法。“我們利用的是在空間擴展的混沌系統中相互作用的局部性”,Pathak說,“局部性意味著局部的變量受其附近變量,而非遠處變量的影響。”通過利用該理論,可以將問題分解成塊。也就是說,可以將這個問題並行解決,利用一個神經元庫來學習一個系統補丁,另一個庫來學習下一個補丁,以此類推,相鄰區域的細微重疊,闡釋了它們之間的相互作用。

並行法使得庫計算法可以處理幾乎任何大小的混亂系統,只要該任務具備合適的計算機資源庫即可。

Ott闡明庫計算分為三步過程。例如說你想用它來預測火焰蔓延趨勢。

首先,你在火焰鋒面前五個不同的點測量火焰高度,繼而測量火焰燃燒一段時間後個點位高度。將這些數據流輸入庫中隨機選擇的人工神經元中。輸入數據觸發神經元放電,進而觸發相連的神經元,並在整個網絡中發送一連串信號。

第二步是使神經網絡從輸入數據中學習火焰鋒面的動態變化。為此,輸入數據時,還要監測庫中幾個隨機選擇的神經元的信號強度。以五種不同的方式加權和組合這些信號而產生的五個數字作為輸出。目的是調整計算輸出的各種信號的權值,直到這些輸出與下一組輸入一致——下一組輸入就是下一時刻在火焰前部測量的五個新高度。Ott解釋說:“你想要的應該是,輸出和下一時刻的輸入相同。”

為得到正確的權重,該算法簡單地將每組輸出與下組輸出或五點中的每一點的預測高度與實際火焰高度進行比較。每一次增加或減少各種信號的權重,無論以哪種方式,它們的組合都給出了5個輸出的正確值。從一個時間點到下一個時間點,隨著權重的調整,預效果測逐漸提高,直到算法能夠連續預測出火焰狀態。

“第三步時其實就是在做預測了。”Ott說。在瞭解了該系統的動態之後,庫計算就可以揭示其未來演變路徑。計算機本身會進行自問。輸出作為新的輸入反饋回來,如此循環往復,以此來預測火焰鋒面五個點位高度的演變過程。其他庫也在平行地預測火焰中其他地方的高度變化過程。

在一月份發表的物理評論快報(Physical Review Letters)的論文(論文地址:http://www.bmp.ds.mpg.de/tl_files/bmp/preprints/Zimmermann_Parlitz_preprint.pdf)中,研究人員表明,他們預測的Kuramoto-Sivashinsky方程式火焰演化,與混沌系統的真實演化幾乎完全一致,直到第八個李亞普諾夫時間之後,預測才開始偏離實際情況。

常規預測混沌系統的方法是儘可能精確地測量每一個時間點的狀態,利用這些數據來校準物理模型,然後使得模型不斷髮展。由於是近似估計,必須將一個典型的系統的初始狀態測量100,000,000次,才能將初始狀態的數據用於更準確地預測混沌系統未來8個李亞普諾夫時間內的演化狀態。

這正是機器學習為“一種非常奏效且強大的方法”的原因,德國馬克斯普朗克動力和自我組織學院的Ulrich Parlitz說,他和Jaeger一樣,在21世紀初也將機器學習應用於低維度的混沌系統中。”我認為這不僅在他們給出的例子中發揮作用,而且在某種意義上來說是通用的,即可以應用於許多過程和系統中。在即將發表在《混沌》(Chaos)上的一篇論文中,Parlitz和其合作伙伴應用庫計算來預測“易激發媒介”(如心臟組織)的動態。Parlitz認為,深度學習雖然比庫計算更復雜,計算能力更強,但同其他機器學習算法一樣,也能很好地解決混沌問題。最近,麻省理工和蘇黎世聯邦理工學院的研究人員使用“長短期記憶”神經網絡,取得了類似的結果。這種神經網絡反覆循環,能夠長時期儲存臨時信息。

在《物理評論快報》發表論文之後,Ott,Pathak,Girvan,Lu等人繼續推進他們的研究,現在他們距離理想的預測技術的實現更進一步了。在《混沌》(Chaos)發表的新研究中,他們發現,通過混合數據驅動、機器學習方法和傳統的基於模型的預測,改進了諸如Kuramoto-Sivashinsky方程這樣的混沌系統的預測。Ott認為這是改善天氣預報和類似工作的更為行之有效的途徑,因為我們並不總是擁有完整的高分辨率數據或完美的物理模型。他說:”我們應該做的是基於我們擁有的知識,如果我們對某事物一無所知,我們就應該利用機器學習來填補無知的空白。”庫計算的預測本質上可以用來校正模型;在Kuramoto-Sivashinsky方程的例子中,精確的預測被進一步擴展到了12個李亞普諾夫時間。

李亞普諾夫時間的長短因不同的系統而異,從毫秒到數百萬年不等。(就天氣而言,只有幾天。)時間越短,系統更容易受蝴蝶相應的影響。混沌系統在自然界中無處不在,然而奇怪的是,混沌本身很難確定。芝加哥大學數學教授Amie Wilkinson說:”大多數人在運用動力系統時都會用到混沌這個術語,但他們在使用時確有些尷尬。”“有點時候說某事有點混沌會給人感覺有些許俗氣。”因為在沒有約定俗成的數學定義或充分必要的條件下引起了廣泛注意。Kantz同意這樣的說法“混沌並不是一個簡單的概念,”。在某些情況下,調整系統的單個參數可以使系統從混沌變為穩定,反之亦然。

Wilkinson和Kantz都在拉伸和摺疊方面定義了混沌,就像麵糰的重複拉伸和摺疊一樣。每一塊麵團在擀麵杖作用下水平伸展,在兩個空間方向上以指數的速度迅速分離,然後將麵糰摺疊壓平,在垂直方向將麵糰凸起凹陷的部分再壓平。Kantz說,天氣、森林大火、太陽風暴以及其他所有混沌系統都是這樣的。“為了使軌跡的指數發散,需要這種拉伸,為了不使系統發散到無窮大,需要一些摺疊。”摺疊來自於系統中變量之間的非線性關係。

在不同維度上的拉伸和壓縮對應於一個系統的正負“李亞普諾夫指數”。在《混沌》(Chaos)另一篇最新論文中,馬里蘭州的研究小組報告說,他們的庫計算機模型,能夠成功地從混沌系統進化數據中,瞭解這些特徵指數的值。為什麼庫計算如此善於學習混沌系統的發展動態並不是很好理解,計算機根據反饋的數據調整混沌系統動力學的公式,直到這個公式能夠複製混沌系統的動態變化過程。這項技術非常有效,事實上,Ott和其他馬里蘭研究人員現在打算用混沌理論來更好地理解神經網絡的內部機制。

Ps:“如果我們對某事物一無所知,我們就應該利用機器學習來填補無知的空白。”——Edward Ott

Ps:“機器學習技術某種意義上說等同於認知真理。”——Holger Kantz


分享到:


相關文章: