【機器學習】機器學習簡介

1、人工智能與機器學習

說到人工智能,就不得不提圖靈測試。圖靈測試是阿蘭圖靈在1950年提出的一個關於機器是否可以思考的著名實驗,測試某機器是否能表現出與人等價或沒法區分的智能。主要內容是:測試者與被測試者(一我的和一臺機器)隔開的狀況下,經過一些裝置(如鍵盤)向被測試者隨意提問。 進行屢次測試後,若是測試者不能肯定出被測試者是人仍是機器,那麼這臺機器就經過了測試,並被認爲具備人類智能。python

一般咱們認爲一個智能系統須要具備如下幾個能力:算法

  • 語言能力--天然語言處理:能成功地用天然語言交流
  • 記憶能力--知識表示:存儲它知道的或聽到的信息
  • 推理能力--自動推理:運用存儲的信息來回答問題並推出新結論
  • 學習能力--機器學習:適應新狀況並檢測和預測模式
  • 感知能力--計算機視覺:感知物體
  • 規劃能力--自動規劃:根據資源制定執行策略

由此咱們能夠看出,機器學習是人工智能的一個分支,它是人工智能研究發展到必定階段的必然產物。網絡

2、機器學習的發展

二十世紀五十年代到七十年代初,人工智能研究處於」推理期「,人們認爲只要能賦予機器邏輯推理能力,機器就具備智能。框架

隨着研究向前發展,人們逐漸認識到,僅僅具備邏輯推理能力是遠遠實現不了人工智能的。要使機器具備智能,必須設法使機器擁有知識。機器學習

二十世紀七十年代中期開始,人工智能研究進入了「知識期」,但人們又認識到,由人來把知識總結出來再教給計算機是很是困難的。有人想到,若是機器可以本身學習知識就行了。性能

二十世紀八十年代是機器學習成爲一個獨立的學科領域、各類機器學習技術百花初綻的時期。(實際上最先圖靈在1950年圖靈測試的文章中就曾提到機器學習的可能,五十年代到七十年代有一些機器學習的研究如基於神經網絡的鏈接主義學習、感知機、基於邏輯表示的符號主義學習、以決策理論爲基礎的學習技術、強化學習等。但機器學習獨立成爲一個學科領域是在八十年代。)學習

這時候,人們把機器學習劃分爲「機械學習」,「示教學習」,「類比學習」,「概括學習」。測試

機械學習

死記硬背式學習,把外界輸入的信息所有記錄下來,須要時原封不動地取出來使用,實際上沒有真正的學習,僅僅在進行信息存儲與檢索。大數據

示教學習

從指令中學習。人工智能

類比學習

經過觀察和發現學習。

概括學習

從樣例中學習,即從訓練樣例中概括出學習結果。概括學習是被研究最多,應用最廣的,涵蓋了監督學習、無監督學習等。

二十世紀八十年代,概括學習的主流是符號主義學習,其表明包括決策樹學習基於邏輯的學習。典型的決策樹學習以信息論爲基礎,以信息熵的最小化爲目標,直接模擬了人類對概念進行斷定的樹形流程。基於邏輯的學習的著名錶明是概括邏輯程序設計,能夠看做機器學習與邏輯程序設計的交叉,使用一階邏輯來進行知識表示,經過修改和擴充邏輯表達式來完成對數據的概括。

二十世紀九十年代,概括學習的主流是基於神經網絡的鏈接主義學習

二十世紀九十年代中期,概括學習的主流是統計學習,其表明是支持向量機(SVM)以及更通常的「核方法(kernel methods)」。

二十一世紀初,鏈接主義學習又捲土重來,掀起以「深度學習」爲名的熱潮。深度學習是指深層神經網絡,它在語音、圖像等複雜對象的應用中表現很好,性能優越。深度學習的流行一是由於大數據的發展,數據多了;二是由於計算機硬件的發展,計算能力強了。

3、機器學習的分類

機器學習中,有個定理叫「沒有免費午飯「定理(No Free Lunch Theorem,簡稱NFL定理)。內容是不管學習算法a多聰明,學習算法b多笨拙,它們的指望性能是相同的。簡而言之,就是沒有一個通用算法能夠完美解決全部問題,咱們要根據具體問題來選擇合適的算法。

根據訓練數據是否帶有標籤(label)信息,把訓練數據中帶有標籤信息的學習算法稱爲監督學習,訓練數據中不帶標籤信息的學習算法稱爲無監督學習

監督學習的表明是分類迴歸,常見算法有線性迴歸、logistic迴歸、決策樹、貝葉斯分類、支持向量機、神經網絡等。

無監督學習的表明是聚類,常見算法有主成分分析(PCA)、K均值聚類(K-Means)等。

在後面的文章中會一一介紹這些算法和它們的代碼實現,儘可能給出不調包只用python代碼實現和使用流行的機器學習框架實現兩種實現方案。由於前者能夠更好地理解算法,後者能夠更快更方便地使用算法。 固然除了這些算法,還有數據預處理、模型的性能度量、超參數的調整等等。

相關文章
相關標籤/搜索