老程式設計師眼中的簡明AI

weixin_34120274發表於2017-09-18

AI, Artificial Intelligence, 人工智慧。

就像每個人眼中都有一個自己的哈姆雷特一樣,每一個看AI 都是不一樣的。作為一個老程式設計師,也只是一個工作時間長一些的程式設計師而已,本沒有什麼資格定義AI,但是面對問題, 還是強作鎮定,從一個工程師角度闡述一下,“什麼是AI?”以及AI 和 大資料,機器學習,神經網路,自然語言處理等諸多名詞到底有什麼關係呢?

什麼是AI?

AI,來自於維基百科的解釋是這樣的:

Artificial intelligence is intelligence exhibited by machines, rather than humans or other animals . In computer science, the field of AI research defines itself as the study of "intelligent agents": any device that perceives its environment and takes actions that maximize its chance of success at some goal. Colloquially, the term "artificial intelligence" is applied when a machine mimics "cognitive" functions that humans associate with other human minds, such as "learning" and "problem solving". ---- wikipedia

人工智慧中的智慧如何定義呢?如何解釋智慧呢?或許, 用圖靈測試來理解人工智慧更加方便。1950年, 阿蘭圖靈提出了圖靈測試:如果一臺機器能夠與人類展開對話(通過電傳裝置)而不能被辨別出其機器身份,那麼稱這臺機器具有智慧。具體地,指測試者與被測試者(一個人和一臺機器)隔開的情況下,通過一些裝置(如鍵盤)向被測試者隨意提問。進行多次測試後,如果有超過30%的測試者不能確定出被測試者是人還是機器,那麼這臺機器就通過了測試,並被認為具有人類智慧。

73516-25c741ca4f35082b.jpg
圖靈測試.jpg

因此,人工智慧就是讓機器具有了和人難以區分的能力,簡單的說, AI 是機器所提供的一些能力,這些能力與人的能力類似甚至更高。

AI 的 結構

AI 的載體是機器,在計算機無所不在的今天(作為一個通訊專業的學生,大學讀書的時候,老師說過“通訊技術計算機”),在計算機網路無所不在的今天(網路對生活的影響巨大,以至於有了“網際網路+”等概念),AI 的載體離不開計算機和網路。

談到計算機的體系結構,就離不開馮諾伊曼體系結構。馮·諾依曼提出的計算機體系結構,奠定了現代計算機的結構理念,即計算機由控制器、運算器、儲存器、輸入裝置、輸出裝置五部分組成。

73516-eb86adbe880734c7.jpg
馮諾伊曼結構.jpg

馮·諾依曼理論的要點是:數字計算機的數制採用二進位制;計算機應該按照程式順序執行。根據馮·諾依曼體系結構構成的計算機,必須具有如下功能:把需要的程式和資料送至計算機中。必須具有長期記憶程式、資料、中間結果及最終運算結果的能力。能夠完成各種算術、邏輯運算和資料傳送等資料加工處理的能力。能夠根據需要控制程式走向,並能根據指令控制機器的各部件協調操作。能夠按照要求將處理結果輸出給使用者。

馮諾伊曼體系結構真是一個神奇的結構,我理解是自洽的,區域性和整體的結構是一致的。小到程式碼中的一個函式,大到一個計算機乃至整個軟體系統都可以用這樣一個結構來描述。而網路的存在是將結構中的模組作為功能團在空間上的拉伸, 就是它們可以不在同一個物理空間的點上。

AI 在物理上是基於計算機和網路的一種體系結構。

AI 的 能力

AI 有了計算機和網路的身體骨骼,表現出來的種種能力。

我們自己面對輸入的能力有視覺、聽覺、嗅覺、味覺和觸覺五種基本能力,相應地,AI 也具有這樣的能力:視覺——影像的檢測與識別,視訊分析等等,人臉識別和指紋識別都是AI視覺能力的一種而已;聽覺——聲音的檢測與識別,超聲分析等,語音識別只是AI聽覺能力的一種而已,嗅覺、味覺、觸覺都可能是具有感測器的,AI通過感測器可以具備這樣的能力。

對於輸出而言,我們可以是語言,動作,文字等, 相應地,AI也具有聲音合成,影像合成,文字合成等輸出能力。

儲存、計算和控制都在我們的大腦中,相應地,AI 同樣可以具有儲存、計算和控制的能力,甚至可能比人做的更好。業界有很多“智腦”的專案,以及基於AI的儲存、計算和控制能力的應用,例如大名鼎鼎的alpha狗。

因此, AI 基於計算機和網路的能力大概是這樣的:

73516-a0fc5f7fc2b2e5fd.jpeg
ai_a.jpeg

AI 的 技術

AI 是如何具備這些能力的呢? 這才涉及到當今熱門的種種技術。

嚴格來講,人工智慧和機器學習沒有直接關係,只不過目前機器學習的方法被大量的應用於解決人工智慧的問題而已。目前機器學習是人工智慧的一種實現方式,也是最重要的實現方式之一,例如提供計算機視覺的能力等等。

深度學習是一種實現機器學習的技術,源於人工神經網路的研究。

機器學習都是基於資料的,而所謂的“大資料”技術為機器學習乃至深度學習提供了源泉。

他們之間的關係大致是這樣的:

73516-0cf626778d7d4252.jpeg
ai_re.jpeg

AI 中所採用的各種技術都是為解決某些問題,進而提供或者提高某些能力。

總的來說, 一個老程式設計師眼中的AI 大致是這樣的:

73516-de7ca8f01531cb6b.jpeg
AI_all.jpeg

相關文章