【算法】隨機算法在數據智能和深度學習中有哪些應用?

2021-02-25 高效計劃與智能調度排程研究會

介紹

機器學習的主要應用之一是對隨機過程建模。機器學習中一些隨機過程的例子如下: 

泊松過程:用於處理等待時間以及隊列。  

隨機漫步和布朗運動過程:用於交易算法。  

馬爾可夫決策過程:常用於計算生物學和強化學習。

高斯過程:用於回歸和優化問題(如,超參數調優和自動機器學習)。

自回歸和移動平均過程:用於時間序列分析(如,ARIMA模型)。

在本文中,我將簡要地向你介紹這些隨機過程。  

  歷史背景

隨機過程是我們日常生活的一部分。隨機過程之所以如此特殊,是因為隨機過程依賴於模型的初始條件。在上個世紀,許多數學家,如龐加萊,洛倫茲和圖靈都被這個話題所吸引。  

如今,這種行為被稱為確定性混沌,它與真正的隨機性有著截然不同的範圍界限。  

由於愛德華·諾頓·洛倫茲的貢獻,混沌系統的研究在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)。  

如前面所述,隨機漫步用於描述離散時間過程。相反,布朗運動可以用來描述連續時間的隨機漫步。  

  隱馬爾科夫模型

隱馬爾可夫模型都是關於認識序列信號的。它們在數據科學領域有大量應用,例如:

HMMs是一種概率圖形模型,用於從一組可觀察狀態預測隱藏(未知)狀態序列。  

這類模型遵循馬爾可夫過程假設: 

因此,在處理隱馬爾可夫模型時,我們只需要知道我們的當前狀態,以便預測下一個狀態(我們不需要任何關於前一個狀態的信息)。 

要使用HMMs進行預測,我們只需要計算隱藏狀態的聯合概率,然後選擇產生最高概率(最有可能發生)的序列。  

為了計算聯合概率,我們需要以下三種信息:  

舉個簡單的例子,假設我們正試圖根據一群人的穿著來預測明天的天氣是什麼(圖5)。  

在這種例子中,不同類型的天氣將成為我們的隱藏狀態。晴天,颳風和下雨)和穿的衣服類型將是我們可以觀察到的狀態(如,t恤,長褲和夾克)。初始狀態是這個序列的起點。轉換概率,表示的是從一種天氣轉換到另一種天氣的可能性。最後,發射概率是根據前一天的天氣,某人穿某件衣服的概率。  

圖5:隱馬爾可夫模型示例[6]  

使用隱馬爾可夫模型的一個主要問題是,隨著狀態數的增加,概率和可能狀態的數量呈指數增長。為了解決這個問題,可以使用維特比算法。

如果您對使用HMMs和生物學中的Viterbi算法的實際代碼示例感興趣,可以在我的Github代碼庫中找到它。  

從機器學習的角度來看,觀察值組成了我們的訓練數據,隱藏狀態的數量組成了我們要調優的超參數。  

機器學習中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過程假設一個時間序列在一個常數均值附近均勻波動。如果我們試圖分析一個不遵循這種模式的時間序列,那麼這個序列將需要被差分,直到分割後的序列具有平穩性。

————

編輯 ∑Gemini

 來源:雷鋒網

公眾號: 高效計劃與智能調度排程研究會

微信號: APS_Society

網站:  www.itapss.cn

 

中國很多企業處於亞健康狀態,其特徵是「三高」即高交期、高庫存、高成本。精益生產、MES、APS、供應鏈優化是消除企業三高的良方,建立高效的計劃執行體系,系統的實現卓越製造。

相關焦點

  • 深度森林算法在中醫中的應用
    與利用神經網絡構建深度學習模型不同,該算法利用多種森林構建深度森林模型,不僅具備強大的表徵學習能力,而且與其他深度神經網絡算法相比,有如下優點:(1)gcForest 算法模型的級聯層數由算法自動確定,因此它不僅在大數據集上有優良的性能,在小數據集上同樣適用;(2)gcForest 算法比深度神經網絡 模型更加簡化,超參數更少,在處理不同數據集時都能表現出良好的魯棒性。
  • Python大數據綜合應用 :零基礎入門機器學習、深度學習算法原理與案例
    機器學習、深度學習算法原理與案例實現暨Python大數據綜合應用高級研修班一、課程簡介
  • 隨機過程在數據科學和深度學習中有哪些應用?
    機器學習中一些隨機過程的例子如下: 泊松過程:用於處理等待時間以及隊列。 隨機漫步和布朗運動過程:用於交易算法。 馬爾可夫決策過程:常用於計算生物學和強化學習。在"Smaller and Smaller"中,他也反覆使用了自相似性(圖1)。除了蜥蜴的外環,畫中的內部圖案也是自相似性的。每重複一次,它就包含一個有一半尺度的複製圖案。 確定性和隨機性過程有兩種主要的隨機過程:確定性和隨機性。
  • 機器學習、深度學習算法原理與案例實踐暨Python大數據綜合應用...
    原標題:機器學習、深度學習算法原理與案例實踐暨Python大數據綜合應用高級研修班通信和信息技術創新人才培養工程項目辦公室 通人辦〔2018〕 第5號 機器學習、深度學習算法原理與案例實踐暨Python
  • 深度學習最常用的學習算法:Adam優化算法
    聽說你了解深度學習最常用的學習算法:Adam優化算法?-深度學習世界。深度學習常常需要大量的時間和機算資源進行訓練,這也是困擾深度學習算法開發的重大原因。雖然我們可以採用分布式並行訓練加速模型的學習,但所需的計算資源並沒有絲毫減少。而唯有需要資源更少、令模型收斂更快的最優化算法,才能從根本上加速機器的學習速度和效果,Adam 算法正為此而生!
  • 智能決策論壇系列解讀 | 深度強化學習理論和算法
    引言:2020年9月,由中國科學院自動化研究所主辦的首屆智能決策論壇成功舉辦,20餘位專家學者齊聚線上,圍繞智能決策相關研究和應用方向進行了精彩的學術報告與交流研討。其中深度強化學習理論和算法是本次論壇的熱點話題之一,吸引了許多學者的關注。
  • 深度學習在推薦領域的應用:Lookalike 算法
    下面讓我們與英特一起結合前人的工作,實現自己的Lookalike算法,並嘗試著在新浪微博上應用這一算法。首先要確定微博領域的數據,關於微博的數據可以採用下面這幾個分類維度。有了這些數據後,怎麼做數據的整合分析?來看看現在應用最廣的方式——協同過濾、或者叫關聯推薦。
  • 《機器學習-原理、算法與應用》出版了
    SIGAI微信公眾號自去年4月份發布第一篇文章「機器學習-波瀾壯闊40年」起,到今天為止,已經累計發布文章164篇,在各個平臺的閱讀次數超過超過300萬次,深受人工智慧學習者和從業者的喜愛,其中不乏大量的精品文章。此公眾號創立之初的目的是為了幫助大家學習和掌握人工智慧技術,用於學術研究和產品研發,傳播人工智慧技術。
  • 聽說你了解深度學習最常用的學習算法:Adam優化算法?
    Adam優化算法是隨機梯度下降算法的擴展式,近來其廣泛用於深度學習應用中,尤其是計算機視覺和自然語言處理等任務。本文分為兩部分,前一部分簡要介紹了Adam優化算法的特性和其在深度學習中的應用,後一部分從Adam優化算法的原論文出發,詳細解釋和推導了它的算法過程和更新規則。
  • Quora 精選:現代深度學習方法中,數據重要還是算法重要?
    換句話說,假如我們同意在 ML 中數據並不總是比算法更重要,那麼在範圍更廣的 AI 領域,數據的重要性應該更小。正如我在另一個問題「市場認為 AI 與 ML 間的區別是什麼?」的答案中提到的,大多數人可能不太在意 ML 和 AI 之間的區別,往往將它們混合使用。實際上,今天大多數人把 AI 當做深度學習的同義詞,而深度學習其實是一種特殊的機器學習方法。
  • 深度 | 大數據算法應用的測試發展之路
    阿里妹導讀:隨著最近幾年數據計算力與機器智能算法的興起,基於大數據 AI 算法的應用愈來愈熱,大數據應用在各個行業也不斷湧現。
  • 深度強化學習算法與應用研究現狀綜述
    概述了基於值函數和策略梯度的兩類深度強化學習算法,詳細闡述了深度Q網絡、深度策略梯度及相關改進算法的原理,並綜述了深度強化學習在視頻遊戲、導航、多智能體協作以及推薦系統等領域的應用研究進展。最後,對深度強化學習的算法和應用進行展望,針對一些未來的研究方向和研究熱點給出了建議。
  • 機器學習算法匯總:人工神經網絡、深度學習及其它
    以下為原文: 學習方式根據數據類型的不同,對一個問題的建模有不同的方式。在機器學習或者人工智慧領域,人們首先會考慮算法的學習方式。在機器學習領域,有幾種主要的學習方式。將算法按照學習方式分類是一個不錯的想法,這樣可以讓人們在建模和算法選擇的時候考慮能根據輸入數據來選擇最合適的算法來獲得最好的結果。
  • 機器學習算法集錦:從貝葉斯到深度學習及各自優缺點
    選自static.coggle.it機器之心編譯在我們日常生活中所用到的推薦系統、智能圖片美化應用和聊天機器人等應用中,各種各樣的機器學習和數據處理算法正盡職盡責地發揮著自己的功效。本文篩選並簡單介紹了一些最常見算法類別,還為每一個類別列出了一些實際的算法並簡單介紹了它們的優缺點。
  • ThunderGEEK 王璠:追逐「深度學習」算法的力量
    中科創達的算法團隊也在重點的投入深度學習算法的應用研究。而在這個團隊中有一位「閃閃發光」的ThunderGEEK 技術領頭人——王璠,他是國內推動深度學習應用商業化的第一人。 90後的王璠,眼鏡配格子衫,非高材生即技術宅。北航畢業後又被保送到中國科學院計算機研究所深造,這之後他被招至百度麾下。
  • 數據算法 | 主要算法的概念、分類及應用
    算法是用來解決問題的,那麼,世界上存在的問題千千萬,當然算法也很多,從簡單的排序、查找,到複雜的數據挖掘、機器學習,現今的深度學習,無不對應著算法的存在或不斷的優化。分類算法是數據挖掘和機器學習中應用最廣的一類算法,它包含經典的決策樹算法、邏輯回歸、判別式,也包含支持向量機、神經網絡這些較新的方法。
  • 深度學習算法 | LSTM算法原理簡介及Tutorial
    LSTM(Long Short-Term Memory)算法作為深度學習方法的一種,在介紹LSTM算法之前,有必要介紹一下深度學習(Deep Learning)的一些基本背景。Hinton的團隊在ImageNet比賽(圖像識別中規模最大影響最大的比賽之一)中使用深度學習方法獲勝之後,關於深度學習的研究就呈井噴之勢;在2012年以前,該比賽結果的準確率一直處於緩慢提升的狀態,這一年突然有質的飛越,而從此之後深度學習方法也成為了ImageNet比賽中的不二選擇。
  • 深度 KDnuggets 官方調查:數據科學家最常用的十種算法
    哪些方法/算法是您在過去 12 個月中運用到一個實際的數據科學相關的應用程式中的?2016 年的調查中有了新的上榜名單:K-近鄰,46%主成分分析,43%隨機森林,38%優化,24%神經網絡 - 深度學習,19%奇異值分解,16%最大幅下降的有:關聯規則,從 2011 年的 28.6% 至 2016 年的 15.3%,同比下降 47%隆起造型,從
  • 強化學習常用算法+實際應用
    儘管監督學習和強化學習都使用輸入和輸出之間的映射,但監督學習提供給智能體的反饋是執行任務的正確動作集,而強化學習則將獎懲作為正面和負面行為的信號。 無監督學習在目標方面有所不同。無監督學習的目標是發現數據點之間的相似點和差異,而在強化學習的情況下,目標是找到合適的行為模型,以最大化智能體的總累積獎勵。
  • 深度學習 | 簡析深度學習和神經網絡算法的基本思路
    「經濟學人」說,數據是二十一世紀的新石油。如果數據是原油,資料庫和數據倉庫是在網際網路上挖掘和抽取數據的採油機,那麼深度學習視為煉油廠,最終將原油轉化為有用和有價值的產品。地下藏有很多「石化燃料」,市場上還有很多鑽機和水泵,但沒有正確的煉油工具,您就不會提煉有價值的東西,這就是深入學習的重要原因。