作者:探碼科技, 原文鏈接: http://nbbskj.com/learning/310
? ? ? 機器學習(Machine Learning, ML)是一門多領域交叉學科,涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多門學科。專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的性能。
? ? ? 機器學習是指用某些算法指導計算機利用已知數據得出適當的模型,并利用此模型對新的情境給出判斷的過程。 由此看來,機器學習的思想并不復雜,它僅僅是對人類生活中學習過程的一個模擬。 而在這整個過程中,最關鍵的是數據,是數據,是數據!重要的事情說三遍。
? ? ? 機器學習是人工智能的一個分支,目標是賦予機器一種新的能力。 機器學習有很多定義,廣為人知的有如下兩條:“機器學習是對能通過經驗自動改進的計算機算法的研究” 機器學習是用數據或以往的經驗,以此優化計算機程序的性能標準。機器學習是人工智能的核心,并且十分廣泛的應用,例如:數據挖掘、計算機視覺、自然語言處理、生物特征識別、搜索引擎、醫學診斷、檢測信用卡欺詐、證券市場分析、DNA序列測序、語音和手寫識別、戰略游戲和機器人運用。
1、有監督學習(Supervised learning):通過生成一個函數將輸入映射為一個合適的輸出(通常也稱為標記,多數情況下訓練集都是有人工專家標注生成的)。例如分類問題,分類器更加輸入向量和輸出的分類標記模擬了一個函數,對于新的輸入向量,得到它的分類結果。
監督學習(就像一個學生通過做多套高考模擬卷并訂正答案的方式來提高高考成績。在這種情形下,數據就像是監督計算機進行學習的教師,故而得名。)
2、無監督學習(Unsupervised learning):與有監督學習相比,訓練集沒有人為標注的結果。常見的無監督學習算法有聚類。(這就像做了好多套沒有答案的模擬卷,最后還要去高考,聽上去很恐怖但是可以根據所做的題收貨價值,比方說哪些題出現頻率高,那些題愛扎堆考,等等。無監督學習希望從數據中挖掘的正是這一類信息,常見的例子有聚類,關聯規則挖掘,離群點檢測等等。)
3、半監督學習: 介于監督學習與無監督學習之間。
4、強化學習(Reinforcement learning): 通過觀察來學習如何做出動作,每個動作都會對環境有所影響,而環境的反饋又可以引導該學習算法。
? ? ? 在回歸問題中,我們會預測一個連續值。也就是說我們試圖將輸入變量和輸出用一個連續函數對應起來;而在分類問題中,我們會預測一個離散值,我們試圖將輸入變量與離散的類別對應起來。
? ? ? 通過房地產市場的數據,預測一個給定面積的房屋的價格就是一個回歸問題。這里我們可以把價格看成是面積的函數,它是一個連續的輸出值。 但是,當把上面的問題改為“預測一個給定面積的房屋的價格是否比一個特定的價格高或者低”的時候,這就變成了一個分類問題, 因為此時的輸出是‘高’或者‘低’兩個離散的值。
? ? ? 給定醫學數據,通過腫瘤的大小來預測該腫瘤是惡性瘤還是良性瘤(課程中給的是乳腺癌的例子),這就是一個分類問題,它的輸出是0或者1兩個離散的值。(0代表良性,1代表惡性)。
? ? ? 分類問題的輸出可以多于兩個,比如在該例子中可以有{0,1,2,3}四種輸出,分別對應{良性, 第一類腫瘤, 第二類腫瘤, 第三類腫瘤}。
? ? ? 下圖中上下兩個圖只是兩種畫法。第一個是有兩個軸,Y軸表示是否是惡性瘤,X軸表示瘤的大小; 第二個是只用一個軸,但是用了不同的標記,用O表示良性瘤,X表示惡性瘤。
? ? ? 在這個例子中特征只有一個,那就是瘤的大小。 有時候也有兩個或者多個特征, 例如下圖, 有“年齡”和“腫瘤大小”兩個特征。(還可以有其他許多特征,如下圖所示)
? ? ? 在無監督學習中,我們基本上不知道結果會是什么樣子,但我們可以通過聚類的方式從數據中提取一個特殊的結構。在無監督學習中給定的數據是和監督學習中給定的數據是不一樣的。在無監督學習中給定的數據沒有任何標簽或者說只有同一種標簽。如下圖所示:
?