複雜系統能否給人工智慧提供模型思路?知乎使用者2018-01-04 17:52:23

神經科學也許可以

複雜系統能否給人工智慧提供模型思路?許鐵-巡洋艦科技2018-02-24 11:49:21

現實生活中預測的根本難題在於無處不在的複雜性,比如股市,自然災害, 長久的天氣預測,都很難做到精準。 這與迄今人類做的最成功的預測-經典物理學的預測大相徑庭,

物理預測的核心方法是動力學方法, 即人們由實驗出發抽象出引起運動改變的原因,

把這些原因量化為變數,用微分方程來描述, 從而取得對整個未來的精確解。

複雜系統能否給人工智慧提供模型思路?

圖: 麥克斯韋方程組: 一組精準的有關電場和磁場的微積分方程, 可以預測從光波的速度到磁線圈轉動發電任何的電磁學現象。

但是這種思維模式在人類試圖理解那些和自身生存最相關的東西時候卻節節潰敗。

#FormatImgID_3##FormatImgID_4#

圖: 你能舉出幾種預測很重要但是人類怎麼做都很難預測的領域嗎?

這種潰敗首先是, 還原論(把整體拆成部分)思維的潰敗。量子物理裡,我們可以通過了解金屬原子電子雲的性質, 很好的預測金屬的屬性。 而你卻無法通過了解市場上每個人的特性就很好的預測整個市場走勢。

在市場這種系統裡, 有兩個關鍵要素, 一個是個體和個體之間的互相作用(博弈),一個是系統與外部環境(地球資源)之間的相互作用(反饋),因此而形成複雜模式(Pattern), 這種模式通常無法預測。

這種型別的系統我們通常定義為複雜系統:

由大量單元互相作用組成的系統, 由於集體行為的非線性(總體不等於個體之和), 而形成具備無數層級的複雜組織。或者稱為湧現性。 複雜科學即研究複雜系統的一套聯絡不同尺度現象的數學方法。

複雜系統難以預測的原理可以從以下幾方面理解:

1,

高維詛咒:

構成現實生活的系統往往被大量未知變數決定, 比如生物由無數的細胞組成。 基因,是由無數獨立的單元組成的, 市場, 由無數的交易者組成, 這些用物理的描述方法來預測, 就是極高維度空間的運動問題。

維度,首先使得再簡單的方程形式都十分複雜難解。

2,

非線性詛咒

:高維度系統的維度之間具有複雜的相互作用,導致我們不能把系統分解為單一維度然後做加法的方法研究。 高維加上非線性我們將得到對初級極為敏感的混沌系統。

3,

反饋詛咒

: 複雜系統中反饋無處不在, 即使是一個簡單的一維繫統, 反饋也可以使得系統的特性很豐富, 最典型的反饋是某種記憶效應, 使得系統產生複雜的路徑依賴, 此刻你的現實與歷史深刻關聯,而關聯方法導致複雜的模式產生。

反身性

是一種由預測產生的特殊反饋, 當你預測股市的價格, 會引起你的交易策略變化從而影響你的預測, 是為反身性。

4,

隨機詛咒

: 複雜系統往往含有不包含確定規律的隨機噪聲,加上這些噪聲, 系統的行為更加難預測, 而很多時候, 我們也無法區分一個系統裡發現的模式是噪聲導致還是由於元件之間的相互作用。

這四大詛咒是這些系統難以理解和預測的原因, 而這個時候, 複雜系統和機器學習的方法論

可以作為一種非常有力的手段幫我們從複雜性中挖掘模式。

第一種方法叫Model approch(模型驅動)

, 即想辦法找到事物變化的原因, 用一種降維的思路列出微分方程, 即從非常繁複的要素中化簡出最重要的一個或者兩個, 從而化繁瑣為簡單,不管三七二十一先抓住主要矛盾。其中的範例便是非線性動力學。

1, 如果一個系統可以化簡到一維, 那麼你只需要研究其內部存在的反饋性質並描述它即可。 負反饋導致穩定定點產生, 正反饋導致不穩定性。 很多事物多可以抽象為一維繫統,包括簡單環境下的人口增長問題。

2, 如果一個系統可以化簡到二維, 那麼你需要研究兩個維度間的相互作用,最終可以互為負反饋而穩定下來,互為正反饋而爆發,或者產生此消彼長的週期軌道。 比如戀愛中的男女是個二維繫統, 互為負反饋就回到普通朋友, 互為正反饋在愛慾中爆發-比如羅密歐與朱麗葉, 此消彼長那是玩捉迷藏的週期遊戲。

3, 如果一個系統是三維的, 則混沌可能產生。 混沌即對初值極為敏感的運動體系。 你一旦偏離既定軌道一點, 即幾乎無法回去。

4, 如果一個系統大於三維, 那麼你需要用一個複雜網路描述它的運動, 這個時候我們可以得到我們複雜系統的主角- collective phenomena & emergence。 複雜網路的性質主要取決於單體間相互作用的方式, 以及系統與外界交換能量的方法, 這兩者又息息相關。 最終我們得到湧現。 複雜網路的動力學往往混沌難以預測,

對於高維混沌系統, 第一個方法也只能給出對事物定性的描述, 而我們可以寄出我們的

第二種方法

: 先不管資料背後錯綜複雜的動因,而是直

接以資料驅動我們的預測

。 這其中的哲學內涵即貝葉斯分析框架: 即先不預測, 而是列出所有可能的結果及根據以往知識和經驗每種結果發生的可能性(先驗機率),之後不停吸收新觀測資料, 調整每種可能結果的機率大小(後驗機率),將想得到的結果機率最大化(MAP)最終做出決策。

如果你把貝葉斯分析的框架自動化, 讓電腦完成, 你就得到機器學習的最基本框架。

機器學習如果可以進入一個問題中, 往往要具備三個條件

: 1, 系統中可能存在模式 2, 這種模式不是一般解析手段可以猜測到的。 3, 資料可以獲取。 如果三點有一點不符,都很難運用機器學習。

機器學習的一個核心任務即

模式識別

, 也可以看出它和剛才講的複雜系統提到的模式的關係。我們講複雜系統難以透過其成分的分析對整體進行預測,然而由於複雜系統通常存在模式, 我們通常可以模式識別來對系統進行歸類, 並預測各種可能的未來結果。比如一個投行女因為工作壓力過大而自殺了,

那麼在她之前的活動行為資料(比如點選手機的某些app的頻率)裡是否可能存在某種模式? 這種模式是否可以判定她之後的行為型別?

並且這個過程可否通過歷史資料由計算機學習?

如果都可以,這就是一個機器學習問題。

剛才講的幾大詛咒, 高維, 非線性, 複雜反饋,隨機性也稱為機器學習需要核心面對的幾大困難, 由此得到一系列機器學習的核心演算法。

機器學習在現實生活中被用於非常多的方面, 最常見的如商務洞察(分類,聚類, 推薦演算法), 智慧語音語義服務(時間序列處理,迴圈網路), 各種自動鑑別系統如人臉識別,虹膜識別 ,癌症檢測(深度卷積網路), 阿爾法狗,機器人控制(深度強化學習演算法)。 而由方法論分, 又可以分成有監督學習, 無監督學習, 和強化學習。

我著重講了幾種機器學習的基本方法:

1. 貝葉斯決策的基本思想:

你要讓機器做決策, 一個基本的思路是從統計之前資料探勘已有的模式(pattern)入手, 來掌握新的資料中蘊含的資訊。 這個pattern在有監督學習的例子裡, 就是把某種資料結構和假設結論關聯起來的過程,我們通常用條件機率描述。

那麼讓機器做決策, 就是透過不停的透過新資料來調整這個資料結構(特徵)與假設結果對應的條件機率。

通常我們要把我們預先對某領域的知識作為預設(prior),它是一個假設結果在資料收集前的機率密度函式,然後透過收集資料我們得到調整後的假設結果的機率密度函式, 被稱為後驗機率(posterior),最終的目標是機器得到的機率密度函式與真實情況最匹配, 即 Maximum a posterior(MAP), 這是機器學習的最終目標。

2, 樸素貝葉斯分類器到貝葉斯網路:

分類,是決策的基礎,商業中要根據收集客戶的消費特徵將客戶分類從而精準營銷。

金融中你要根據一些交易行為的基本特徵將交易者做分類。 從貝葉斯分析的基本思路出發我們可以迅速得到幾種分類器。

首當其衝的樸素貝葉斯分類器,它是機器學習一個特別質樸而深刻的模型:當你要根據多個特徵而非一個特徵對資料進行分類的時候,我們可以假設這些特徵相互獨立(或者你先假設相互獨立),然後利用條件機率乘法法則得到每一個分類的機率, 然後選擇機率最大的那個作為機器的判定。

複雜系統能否給人工智慧提供模型思路?

圖: 樸素貝葉斯分類器的基本框架, c是類別, A是特徵。

如果你要根據做出分類的特徵不是互相獨立,而是互相具有複雜關聯,這也是大部分時候我們面臨問題的真相, 我們需要更復雜的工具即貝葉斯網路。 比如你對某些病例的判定, 咳嗽, 發燒, 喉嚨腫痛都可以看做扁條體發炎的症候, 而這些症候有些又互為因果, 此時貝葉斯網路是做出此類判定的最好方法。 構建一個貝葉斯網路的關鍵是建立圖模型 , 我們需要把所有特徵間的因果聯絡用箭頭連在一起, 最後計算各個分類的機率。

複雜系統能否給人工智慧提供模型思路?

圖:貝葉斯網路對MetaStatic Cancer的診斷,此處的特徵具有複雜因果聯絡

貝葉斯分析結合一些更強的假設,可以讓我們得到一些經常使用的通用分類器, 如邏輯斯提回歸模型,這裡我們用到了物理裡的熵最大假設得到玻爾茲曼分佈, 因此之前簡單貝葉斯的各個特徵成立機率的乘積就可以轉化為指數特徵的加權平均。 這是我們日常最常用的分類器之一。 更加神奇的是, 這個東西形式上同單層神經網路。

複雜系統能否給人工智慧提供模型思路?

圖: logistic函式,數學形式通玻爾茲曼分佈, 物理裡熵最大模型的體現

3, 貝葉斯時間序列分析之隱馬模型:

貝葉斯時間序列分析被用於挖掘儲存於時間中的模式,時間序列值得是一組隨時間變化的隨機變數,比如玩牌的時候你對手先後撒出的牌即構成一個時間序列。 時間序列模式的預設setting即馬爾科夫鏈, 之前動力學模式裡講到反饋導致複雜歷史路徑依賴,當這種依賴的最簡單模式是下一刻可能出現的狀態只與此刻的狀態有關而與歷史無關, 這時候我們得到馬爾科夫鏈。

馬爾科夫鏈雖然是貝葉斯時間序列分析的基準模型,然而現實生活中遇到的時間序列問題, 通常不能歸於馬爾科夫鏈,卻可以間接的與馬爾科夫鏈關聯起來,這就是隱馬過程,所謂含有隱變數的馬爾科夫過程。

複雜系統能否給人工智慧提供模型思路?

圖: 隱馬過程示意

語音識別就是一類特別能利用隱馬過程的應用, 在這裡語音可以看做一組可觀測的時間序列, 而背後的文字是與之關聯的馬爾科夫鏈, 我們需要從可觀測的量, 按照一定的機率分佈反推不可觀測的量, 並用馬爾科夫鏈的觀點對其建模, 從而解決從語音到文字的反推過程。 當今的語音識別則用到下面緊接講的深度學習模型。

4, 深度學習

剛剛講的分類問題, 只能根據我們已知的簡單特徵對事物進行分類, 但假設我們手裡的資料連需要提取的特徵都不知道, 我們如何能夠對事物進行分類呢? 比如你要從照片識別人名, 你都不知道選哪個特徵和一個人關聯起來。 沒關係, 此時我們還有一個辦法, 就是讓機器自發學習特徵, 因此寄出深度學習大法。通常在這類問題裡, 特徵本身構成一個複雜網路,下級的特徵比較好確定, 而最高層的特徵, 是由底層特徵的組合確定的, 連我們人類自己都不能抽象出它們。

深度學習即資料內涵的模式(特徵)本身具備上述的多層級結構時候,我們的機器學習方法。 從以毒攻毒的角度看, 此時我們的機器學習機器也需要具有類似的多級結構,這就是大名鼎鼎的多層卷積神經網路。深度學習最大的優勢是具有更高階的對“結構”進行自動挖掘的能力,比如它不需要我們給出所有的特徵,而是自發去尋找最合適對資料集進行描述的特徵。 一個複雜模式-比如“人臉” 事實上可以看做一個簡單模式的層級疊加, 從人臉上的輪廓紋理這種底層模式, 到眼睛鼻子這樣的中級模式, 直到一個獨特個體這樣最高階的複雜模式, 你只有能夠識別底層模式,才有可能找到中級模式, 而找到中級模式才方便找到高階模式, 我們是不能從畫素裡一步到達這種複雜模式的。 而是需要學習這種從簡單模式到複雜模式的結構, 多層網路的結構應運而生。

複雜系統能否給人工智慧提供模型思路?

圖: 從具體特徵到抽象特徵逐級深入的多級神經網路

6, RNN和神經圖靈機

如果時間序列資料裡的模式也包含複雜的多層級結構, 這裡和我之前說的複雜系統往往由於反饋導致複雜的時間依賴是一致的, 那麼要挖掘這種系統裡的模式, 我們通常的工具就是超級前衛的迴圈神經網路RNN,這種工具對處理高維具有複雜反饋的系統有神效, 因為它本身就是一個高維具有複雜時間反饋的動力學系統。

複雜系統能否給人工智慧提供模型思路?

圖: 迴圈神經網路, 過去的資訊可以透過迴圈儲存在神經元之間

當一個複雜時間序列的問題裡面, 每個時間點的資訊都可以對未來以任何方式產生複雜影響, 那麼處理這種複雜性的一個辦法就是用迴圈神經網路,讓它自發學習這種複雜結構。 比如一個城市裡的交通流, 或者人與人之間的對話。

神經圖靈機是在多層卷積神經網路或遞迴網路基礎上加上一個較長期的記憶單元, 從而達到處理需要更復雜時間關聯的任務, 比如對話機器人。 而神經圖靈機最厲害的地方在於他可以透過機器學習傳統的梯度下降法反向破譯一個程式, 比如你寫了一個python程式, 你用很多不同的輸入得到很多對應的輸出, 你可以把它給神經圖靈機訓練, 最終本來對程式絲毫無所知的神經圖靈機居然可以如同學會了這個程式。

複雜系統能否給人工智慧提供模型思路?

圖: 神經圖靈機的基本結構, 在多級神經網路或迴圈網路(controller)的基礎上,增加一個更長時間的記憶, 記憶和神經網路之間的讀入和寫出裝置, 整個裝置都是可以被人工訓練的(可微分)

複雜系統能否給人工智慧提供模型思路?真實姓名2018-02-28 14:55:34

“Convolutional Neural Networks combined with Runge-Kutta Methods” 這個算是個例項吧。

連結:

https://

arxiv。org/abs/1802。0883

1

複雜系統能否給人工智慧提供模型思路?aluea2020-05-09 16:19:02

0202年了,過來強答一波。

最近看了一些複雜系統相關的理論,感覺對於人工智慧來說是一盆冷水。

構建論老早我們就知道不行,設計一種結構扔到環境裡自發組織出智慧,這是在想peach。

複雜系統告訴我們還原論也沒用了,一個規則無論多麼簡單隻要包含自指就有可能產生混沌。

還原論無法還原出這樣的規則(機率小到可怕),這標誌著依託於資料的深度學習對於這樣的規則毫無辦法。

而構建論+蒙特卡羅是可行的,因為人就是這麼來的,但考慮到成本問題,這一方法也變的不可行。

人腦內有沒有產生混沌自指規則?多不多?能不能人為敲定,剩下的部分再把還原論撿起來?

構建論+蒙特卡洛也是如此,解空間太大能不能加入限定規則減小範圍加快搜索?

複雜系統能否給人工智慧提供模型思路?曾經將來2020-08-22 22:25:12

準確說應該是利用人工智慧對複雜系統進行建模是否可行,在目前看來這種情況是不可行的,因為複雜系統的非線性問題是人工智慧無法解決的