天天看點

Python3破冰人工智能,你需要掌握一些數學方法

為什麼要把數學模組化與當今火熱的人工智能放在一起?

首先,數學模組化在字面上可以分解成數學+模組化,即運用統計學、線性代數和積分學等數學知識,建構算法模型,通過模型來解決問題。數學模組化往往是沒有對與錯,隻有“更好”(better),就好像讓你評價兩個蘋果哪個更好吃,隻有好吃、不好吃或者更好吃,沒有對與錯。

人工智能(Artificial Intelligence, AI),你可以将其了解為是一種“黑科技”,人類通過它,讓計算機能夠“更好”地像人一樣思考。可以說“算法模型”是人工智能的“靈魂”,沒有算法模型,一切都是“水中月”“鏡中花”!

是以,《Python 3破冰人工智能》将從數學模組化入手,由淺入深地為讀者揭開AI的神秘面紗。

Python3破冰人工智能,你需要掌握一些數學方法

數學模組化

數學模組化與人工智能

1.數學模組化簡介

數學模組化是利用數學方法解決實際問題的一種實踐。即通過抽象、簡化、假設、引進變量等處理過程,将實際問題用數學方式表達,建立起數學模型,然後運用先進的數學方法及計算機技術進行求解。數學模組化可以通俗地了解為數學+模組化,即運用統計學、線性代數,積分學等數學知識,建構數學模型,通過模型解決問題。

按照傳統定義,數學模型是對于一個現實對象,為了一個特定目的(實際問題),做出必要的簡化假設(模型假設),根據對象的内在規律(業務邏輯、資料特征),運用适當的數學工具、計算機軟體,得到的一個數學結構。

亞裡士多德說,“智慧不僅僅存在于知識之中,而且還存在于應用知識的能力中”。數學模組化就是對數學知識最好的應用,通過數學模組化,你會發現,生活中很多有意思的事情都可以靠它來解決,其流程如圖1-1所示。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-1 數學模組化流程

2.人工智能簡介

對于普通大衆來說,可能是近些年才對其有所了解,其實人工智能在幾十年以前就被學者提出并得到一定程度的發展,伴随着大資料技術的迅猛發展而被引爆。

(1)人工智能的誕生

最初的人工智能其實是20世紀30至50年代初一系列科學研究進展交彙的産物。1943年,沃倫·麥卡洛克(Warren McCulloch)和瓦爾特·皮茨(Walter Pitts)首次提出“神經網絡”概念。1950年,阿蘭·圖靈(Alan Turing)提出了著名的“圖靈測試”,即如果一台機器能夠與人類展開對話(通過電傳裝置)而不能被辨識出其機器身份,那麼稱這台機器則具有智能。直到如今,圖靈測試仍然是人工智能的重要測試手段之一。1951年,馬文·明斯基(Marvin Minsky)與他的同學一起建造了第一台神經網絡機,并将其命名為 SNARC (Stochastic Neural Analog Reinforcement Calculator)。不過,這些都隻是前奏,一直到1956年的達特茅斯會議,“Artificial Intelligence”(人工智能)這個詞才被真正确定下來,并一直沿用至今,這也是目前AI誕生的一個标志性事件。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-2  達特茅斯會議參會者50年後聚首照[1]

[1] 達特茅斯會議參會者50年後再聚首,左起:Trenchard More、John McCarthy、Marvin Minsky、Oliver Selfridge和Ray Solomonoff(攝于2006年),圖檔版權歸原作者所有。

在20世紀50年代,人工智能相關的許多實際應用一般是從機器的“邏輯推理能力”開始着手研究。然而對于人類來說,更進階的邏輯推理的基礎是“學習能力”和“規劃能力”,我們現在管它叫“強化學習”與“遷移學習”。可以想象,“邏輯推理能力”在一般人工智能系統中不能起到根本的、決定性的作用。目前,在資料、運算能力、算法模型、多元應用的共同驅動下,人工智能的定義正從用計算機模拟人類智能,演進到協助引導提升人類智能,如圖1-3所示。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-3  下一代人工智能

(圖檔來源《新一代人工智能發展白皮書》)

(2)人工智能的概念

人工智能(Artificial Intelligence),英文縮寫為AI,它是研究開發用于模拟、延伸和擴充人的智能的理論、方法、技術及應用系統的一門新的技術科學。它企圖了解智能的實質,并生産出一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識别、圖像識别、自然語言處理和專家系統等。

人工智能從誕生以來,理論和技術日益成熟,應用領域也不斷擴大,可以設想,未來人工智能帶來的科技産品,将會是人類智慧的“容器”,也可能超過人的智能。

(3)人工智能、機器學習、深度學習

下面我們來介紹下主要與人工智能相關的幾個概念,要搞清它們的關系,最直覺的表述方式就是同心圓,如圖1-4所示,最先出現的是理念,然後是機器學習,當機器學習繁榮之後就出現了深度學習,今天的人工智能大爆發是由深度學習驅動的。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-4  AI、機器學習、深度學習的關系

人工智能(AI)、機器學習(ML)、深度學習(DL)的關系為DL⊆ML⊆AI。

人工智能,即AI是一個寬泛的概念,人工智能的目的就是讓計算機能夠像人一樣思考。機器學習是人工智能的分支,它是人工智能的重要核心,是使計算機具有智能的根本途徑,其應用遍及人工智能的各個領域。深度學習是機器學習研究中的一個新領域,推動了機器學習的發展,并拓展了人工智能的領域範圍。甚至有觀點認為,深度學習可能就是實作未來強AI的突破口。

可以把人工智能比喻成孩子大腦,機器學習是讓孩子去掌握認知能力的過程,而深度學習是這個過程中很有效率的一種教學體系。

是以可以這樣概括:人工智能是目的、結果;深度學習、機器學習是方法、工具。

本書講解了人工智能、機器學習、深度學習的相關應用,它們之間的關系,常見的機器學習算法等知識,希望你通過對本書的學習,深刻了解這些概念,并可以輕而易舉地給别人講解。

3.數學模組化與人工智能關系

無論是數學模組化還是人工智能,其核心都是算法,最終的目的都是通過某種形式來更好地為人類服務,解決實際問題。在研究人工智能過程中需要數學模組化思維,是以數學模組化對于人工智能非常關鍵。

下面通過模拟一個場景來了解人工智能與數學模組化之間的關系。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-5   AI 機器人

某患者到醫院就診,在現實生活中,醫生根據病人的一系列體征與症狀,判斷病人患了什麼病。醫生會親切地詢問患者的症狀,通過各種專項檢查,最後進行确診。在人工智能下,則考慮通過相應算法來實作上述過程,如德國的輔助診斷産品Ada學習了大量病例來輔助提升醫生診病的準确率。

情景①:如果用數學模組化方法解決,那麼就通過算法建構一個恰當的模型,也就是通過圖1-1所示的數學模組化流程來解決問題。

情景②:如果用人工智能方法解決,那麼就要制造一個會診斷疾病的機器人。機器人如何才能精準診斷呢?這就需要利用人工智能技術手段,比如采用一個“人工智能”算法模型,可能既用了機器學習算法,也用了深度學習算法,不管怎樣,最終得到的是一個可以落地的疾病預測人工智能解決方案。讓其具有思考、聽懂、看懂、邏輯推理與運動控制能力,如圖1-5所示。

通過上面的例子可以看出,人工智能離不開數學模組化。在解決一個人工智能的問題過程中,我們将模型的建立與求解進行了放大,以使其結果更加精準,如圖1-6所示。

Python3破冰人工智能,你需要掌握一些數學方法

▲圖1-6   AI下對數學模組化的流程修正

可見,從數學模組化的角度去學習人工智能不失為一種合适的方法。

Python3破冰人工智能,你需要掌握一些數學方法
《Python 3破冰人工智能:從入門到實戰》

作者:黃海濤

編輯推薦:

  • 數學基礎:從曆年數學模組化競賽入手,解讀人工智能中的數學方法。
  • 程式設計實踐:100餘個代碼執行個體,全面講解網絡爬蟲、資料存儲與資料分析等内容。
  • 算法應用:實戰案例輔以豐富圖解,詳盡分析人工智能算法特性及其應用場景。

本書創新性地從數學模組化競賽入手,深入淺出地講解了人工智能領域的相關知識。本書内容基于Python 3.6,從人工智能領域的數學出發,到Python在人工智能場景下的關鍵子產品;從網絡爬蟲到資料存儲,再到資料分析;從機器學習到深度學習,涉及自然語言處理、機器學習、深度學習、推薦系統和知識圖譜等。 

此外,本書還提供了近140個代碼案例和大量圖表,全面系統地闡述了算法特性,個别案例算法來自于工作經驗總結,力求幫助讀者學以緻用。

- END -