- 機器學習從入門到入職:用sklearn與keras搭建人工智能模型
- 張威
- 1123字
- 2020-05-22 17:14:08
1.1 什么是機器學習
首先需要了解什么是人工智能。人工智能是計算機科學的一個分支,它企圖了解智能的實質,并生產一種新的能以人類智能相似的方式做出反應的智能機器,該領域的研究包括機器人、語言識別、圖像識別、自然語言處理和專家系統等。
人工智能所包含的類目很多,其中包括但不限于諸如計劃調度、專家系統、推薦系統等學科,其中機器學習就是人工智能中比較重要的學科之一(見圖1-1)。

圖1-1 人工智能與機器學習的關系
機器學習,使用算法解析數據并從中學習,然后對真實世界中的事件做出決策和預測。與傳統的用于解決特定任務、硬編碼的軟件程序不同,機器學習用大量的數據“訓練”,并通過各種算法從數據中學習如何完成任務。如圖1-1所示,之前所提到的監督學習、深度學習、強化學習等內容,實際上都屬于機器學習的一個子類目,它們之間的算法并不是相互獨立、相互排斥的,而是多門學科的交匯,都是基于特定的場景、任務及實現途徑劃分的。
機器學習來源于早期的人工智能領域,傳統的算法包括決策樹(Decision Tree)、聚類、分類、支持向量機(Support Vector Machine,SVM)、集成學習(Ensemble Learning)等。關于這些算法的詳細內容會在第5章至第7章詳細介紹。
根據學習數據源性質,機器學習算法可以分為監督學習(如分類問題)、無監督學習(如聚類問題)、半監督學習,它們之間的區別在于樣本是否被標記(存在標簽)。如果學習樣本存在明確的類目或者對應的數值,則該學習為監督學習;如果樣本不存在標簽,則為無監督學習;半監督學習則介于兩者之間,學習樣本的標簽不完整。
深度學習(Deep Learning)專門用于指定深度神經網絡,是利用深度神經網絡解決特征表達的一種學習過程。深度神經網絡本身并不是一個全新的概念,可大致理解為包含多個隱含層的神經網絡結構。為了提高深度神經網絡的訓練效果,人們對神經元的連接方法和激活函數(Activation Function)等方面做出相應的調整。
而深度學習在大多數場景中存在于監督學習。當然,隨著深度神經網絡模型的發展,也出現了無監督模型。2012年6月,由谷歌人工智能專家吳恩達主導的“貓實驗”項目就是對無監督學習的一次探索。在該項目中,谷歌大腦(Google Brain)開發的一個大規模神經網絡,通過學習1000萬張未標記動物圖片,最終能夠分辨出貓。深度學習的詳細內容將在第8章至第13章進行介紹。
強化學習(Reinforcement Learning)同樣是機器學習的一個分支,其主要任務不僅在于認知識別,還是強調如何基于環境而行動,以取得最大化的預期獎勵。強化學習通常包括狀態(Status)、獎勵(Rewards)及行為(Action),其運行機制如圖1-2所示。

圖1-2 強化學習的運行機制
具體過程大致如下:①代理通過識別環境,判斷當前狀態;②根據經驗觸發相應的行為;③每個行為觸發相應的獎勵,并改變相應的狀態。上述步驟重復循環,直到完成既定目標。
關于強化學習的內容,本書暫不做介紹。
- Clojure Data Analysis Cookbook
- Google Cloud Platform Cookbook
- 機器學習及應用(在線實驗+在線自測)
- AWS:Security Best Practices on AWS
- Learning Apache Cassandra(Second Edition)
- 大型數據庫管理系統技術、應用與實例分析:SQL Server 2005
- Mastering ServiceNow Scripting
- 網絡安全技術及應用
- 多媒體制作與應用
- Visual C++項目開發案例精粹
- 單片機技能與實訓
- 工業機器人實操進階手冊
- 貫通開源Web圖形與報表技術全集
- 機器人制作入門(第4版)
- PostgreSQL 10 High Performance