人工智能(Artificial Intelligence)是一個最廣泛的概念,人工智能的目的就是讓計算機這台機器能夠像人一樣思考。
機器學習(MachineLearning)是實作人工智能的方式,專門研究計算機怎樣模拟或實作人類的學習行為,以擷取新的知識或技能,使之不斷改善自身的性能。
深度學習(Deep Learning)是一種機器學習的方法,它試圖使用包含複雜結構或由多重非線性變換構成的多個處理層(神經網絡)對資料進行高層抽象的算法。
人工神經網絡是機器學習中的一類算法
深度學習就是其中一種神經網絡算法。
深度學習還有個别名叫(UnsupervisedFeature Learning)顧名思義就是,不要人參與特征的選取過程。
深度學習的實質是通過建構具有很多隐層的機器學習模型和海量的訓練資料,來學習更有用的特征,進而最終提升分類或預測的準确性。
是以“深度模型”是手段,“特征學習”是目的。
“深度”:通過多隐層感覺器,組合底層特征行程跟加抽象的高層表示屬性類别或特征,已發現資料的分布式特征。
“學習”:模拟人腦分析學習的神經網絡。
神經網絡是一組大緻模仿人類大腦構造設計的算法,用于識别模式。神經網絡通過機器感覺系統解釋傳感器資料,能夠對原始輸入進行标記或聚類等操作。神經網絡所能識别的模式是數值形式,是以圖像、聲音、文本、時間序列等一切現實世界的資料必須轉換為數值。
在深度學習網絡中,每一個節點層在前一層輸出的基礎上學習識别一組特定的特征。随着神經網絡深度增加,節點所能識别的特征也就越來越複雜,因為每一層會整合并重組前一層的特征。
深度學習的過程是分為訓練和推理(既“評估”)兩個過程,通過訓練過程來獲得資料模型,然後用于評估新的資料。
資料模型分為兩種:
判别模型(DiscriminativeModel):可以直接用來判别事物的(比如分類)。既然直接可以用來分類,也就是說我們可以在已知屬性的條件下,對該記錄進行判斷。是以,判别模型是對條件機率進行的模組化,也就是\(p(Y|X)\)。這裡\(X\)就是屬性集合,實際上就是一個向量;而\(Y\)則可能是一個值(此時對應分類問題),可能是一個向量(此時對應序列标注問題)。判别模型常用于處理分類問題(比如鑒定垃圾郵件)、圖像識别等等。
生成模型(GenerativeModel):可以描述資料的生成過程。換句話說,已知了這個模型,我們就可以産生該模型描述的資料。而資料由兩部分組成,也就是\((X,Y)\),前者是特征,後者則是類别(\(Y\)是标量)或者序列類别(\(Y\)是向量)。要描述整個資料,也就是要對\(p(X,Y)\)進行模組化,是以是對聯合機率進行模組化。生成模型本身不是做分類或者序列标注的,但是可以用來解決這些問題,也可以用于生成式問題,比如聊天機器人、比如AI譜曲等問題。
機器學習可以分成下面幾種類别:
監督學習: 從給定的訓練資料集中學習出一個函數,當新的資料到來時,可以根據這個函數預測結果。監督學習的訓練集要求是包括輸入和輸出,也可以說是特征和目标。訓練資料中的目标是由人标注的。常見的監督學習算法包括回歸分析和統計分類。
無監督學習: 與監督學習相比,訓練集沒有人為标注的結果。常見的無監督學習算法有聚類。
半監督學習: 介于監督學習與無監督學習之間。它主要考慮如何利用少量的标注樣本和大量的未标注樣本進行訓練和分類的問題。。
增強學習: 通過觀察來學習做成如何的動作。每個動作都會對環境有所影響,學習對象根據觀察到的周圍環境的回報來做出判斷。
在傳統的機器學習領域,監督學習最大的問題是訓練資料标注成本比較高,而無監督學習應用範圍有限。利用少量的訓練樣本和大量無标注資料的半監督學習一直是機器學習的研究重點。
目前非常流行的深度學習GAN模型和半監督學習的思路有相通之處,\(GAN\)是“生成對抗網絡”(Generative Adversarial Networks)的簡稱,包括了一個生成模型\(G\)和一個判别模型\(D\),\(GAN\)的目标函數是關于\(D\)與\(G\)的一個零和遊戲,也是一個最小-最大化問題。
\(GAN\)實際上就是生成模型和判别模型之間的一個模仿遊戲。生成模型的目的,就是要盡量去模仿、模組化和學習真實資料的分布規律;而判别模型則是要判别自己所得到的一個輸入資料,究竟是來自于真實的資料分布還是來自于一個生成模型。通過這兩個内部模型之間不斷的競争,進而提高兩個模型的生成能力和判别能力。
探尋有趣之事!