閱讀442 返回首頁    go 阿裏雲 go 技術社區[雲棲]


《偉大的計算原理》一信息和發現

本節書摘來華章計算機《偉大的計算原理》一書中的第3章 ,[美]彼得 J. 丹寧(Peter J. Denning)
克雷格 H. 馬特爾(Craig H. Martell)著 羅英偉 高良才 張 偉 熊瑞勤 譯 更多章節內容可以訪問雲棲社區“華章計算機”公眾號查看。

信息和發現

當我們說計算機發現了新的模式時我們想說明什麼呢?設想一個程序能夠發現數據的趨勢,首先提供一組在以往性能實驗中觀察到的輸入輸出對(x,y)給程序,然後利用統計回歸,程序找到了最好的參數a和b表示一條直線來擬合這個數據:y = ax + b,程序的輸出是直線的常規表達。這個輸出對於了解如何利用直線進行預測的用戶是有意義的。很容易設計另一個程序來使用具有參數a和b的直線來預測y,而y是由新的輸入x生成的。
這就是一個設計師使用數學知識從一係列數據中計算最佳擬合參數的過程,計算中的步驟是機械的,輸出對於那些了解數據中直線趨勢模型的人們是有意義的。這些意義來源於設計師,而不是數據的處理。
對於不了解數據中直線模型趨勢的人,也就不知道輸出的含義。但是這並不意味著輸出的含義是主觀的,隻意味著設計師沒有打算讓程序對這些用戶產生任何意義。
在20世紀80年代,研究者開始使用強大的計算機篩選大數據集來試圖發現一些模式。他們使用貝葉斯(Bayesian)推理(這是一個複雜的數據分析方法)來推算最有可能產生數據的一係列條件。貝葉斯推理基於貝葉斯條件概率統計公式:
image

它說明的是給定證據E,假設H的概率就是:給定假設H後該證據E的概率,乘以假設H的概率,再除以證據E的概率。圖3.8給出了一個簡單的示例,醫生已知病人頭疼,試圖診斷他是否患有流感。
這種情況下的發現是一個新的假設。程序能夠生成一係列假設,然後根據手中已知的情況,按照貝葉斯定律計算每一個假設的概率,把其中最有可能的假設作為這個“發現”。
在這種情況下,設計者結合貝葉斯定律和搜索方法,在給定數據下找到最大可能的假設。這個程序的輸出就是那些明白假設和數據“含義”的用戶所預期的,用戶將決定是否將這些假設視作一個發現。

image


圖3.8 韋恩圖演示了如何利用貝葉斯定律評估一個很難判斷的假設。在所有人口的集合K中包含一個子集F,代表患有流感的人,還有一個子集H,代表患有頭疼的人。醫生看到一個病人抱怨頭疼,擔心自己患上流感。根據貝葉斯定律P(F|H) = P(H|F)·P(F) / P(H)。醫學數據告訴醫生,患有頭疼的概率P(H) = 0.4,患有流感的概率P(F) = 0.2,在患有流感的人中患有頭疼的概率是P(H|F) = 2 / 3,因此P(F|H) = (2 / 3)·0.2 / 0.4 = 1 / 3,即三分之一。在沒有任何信息的時候,患有流感的概率是0.2,但若已知患頭疼,患有流感的概率則上升到0.33
在經典的信息論中,我們說貝葉斯推理發揮作用,是通過已知消息源的數據來決定消息源的內容。在消息通信中,香農合理假設消息源的內容為先驗信息。在科學發現中,消息源中包含的一係列概率最初是未知的,推理過程使得消息和它們的概率可知。貝葉斯推理是一個自動將消息源中的觀察數據轉換為消息源內容的方法。

最後更新:2017-06-26 13:32:06

  上一篇:go  協同辦公軟件提高工作效率的奧秘
  下一篇:go  《偉大的計算原理》一解決悖論