機器學習(Machine Learning)作為當前最為流行的資訊科技之一,已經吸引了眾多人員的廣泛關注,要想深度研究與掌握機器學習,瞭解其基礎理論與應用是一條必經之路。吳恩達教授的機器學習系列視訊內容通俗易懂,可以說是為廣大想要探索機器學習的朋友們提供了一個入門福利。之前看吳恩達機器學習的時候做了一些紙質筆記,現在打算逐步把這些筆記編寫為電子版,一方面可以溫故知新,另一方面也可以分享交流。
今天是第一部分——初識機器學習,主要了解的是機器學習的定義,以及監督學習與無監督學習的概念。
1、What is machine learning(ML) ?
ML能模擬或實現人類的學習行為,解決一些簡單但繁瑣甚至複雜的問題,巧妙地將人類智慧融入到機器智慧之中,目前已經涉及到各個行業與基礎科學中,資料庫挖掘與語音識別等都是典型的案例。
Arthur Samuel首次對ML進行了定義,他認為ML是研究無需顯式程式設計就可以賦予計算機學習能力的領域(a field of study that gives computers the ability to learn without being explicitly programmed),這是一個比較古老非形式化的定義。
Tom Mitchell給出了更形式化的定義,即假設用指標P來評估程式解決任務T的效能,若某 一程式通過利用經驗E,在任務T上獲得了效能改善,則該程式對E進行了學習(a computer program is said to learn from experience E with respect to some task T and performance measure P, if its P on T, improves with E)。
周志華的西瓜書中也指出ML就是研究如何通過計算的手段,利用經驗來改善系統自身的性 能。由於經驗通常是以資料的形式存在,因此ML的研究內容就是關於在計算機上從資料中產生模型的演算法,即學習演算法(Learning Algorithm)。
當前的學習演算法主要分為監督學習(Supervised Learning)與無監督學習(Unsupervised Learning)兩大型別。
2、What is Supervised Learning ?
監督學習(Supervised Learning)指利用給定的包含正確答案(標籤)的資料集(訓練集)對學習演算法進行訓練。不同的資料情況有不同的模型形式,從演算法的輸入特徵數量來看,有單個特徵輸入(單變數)與多個特徵輸入(多變數);從演算法的預測變數型別來看,有實值預測(迴歸問題)與類別預測(分類問題)。吳恩達老師在講授中舉了如下幾個例子:
a. 基於房子面積的房價預測問題(單特徵/實值預測)
b. 基於腫瘤尺寸的腫瘤良性與否預測問題(單特徵/類別預測{0,1})
c. 基於年齡與腫瘤尺寸的腫瘤良性與否預測問題(多特徵/類別預測{0,1})
3、What is Unsupervised Learning ?
無監督學習(Unsupervised Learning)指利用給定的不包含標籤或具有相同標籤的資料集(訓練集)對學習演算法進行訓練。針對資料集,無監督學習能自動地找到資料中的結構,並把其分成不同的簇(Clusters),是一種聚類演算法(Clustering)。
同樣在無監督學習的理解中,吳恩達老師也舉了幾個例子:
a. 谷歌新聞分組(基於新聞主題的聚類)
b. 基因類別分析(基於基因表達的聚類)
c. 社交網路分析(基於使用者社交關係/興趣的聚類)
d. 音訊身份識別(基於音訊特徵的聚類)
4、Summary
機器學習可以從大規模資料中推演出模型,有效地提升瞭解決問題的效能。監督學習與無監督學習的差異根源來自資料集的特徵,監督學習主要利用帶有標籤的資料集,實現對焦點變數的預測(prediction);無監督學習主要利用沒有標籤的資料集,實現對資料內容的洞察(insight)。