毫無疑問,過去兩年中,機器學習和人工智慧的普及度得到了大幅提升。
如果你想學習機器算法,要從何下手呢?以我為例,我是在哥本哈根留學期間,學習AI課程入門的。我們用的教科書是一本AI經典:《Peter Norvig’s Artificial Intelligence?—?A Modern Approach》。最近我在繼續學習這些,包括在舊金山聽了幾個關於深度學習的技術演講,參加機器學習大會上。六月份,我註冊了Udacity的Intro to Machine Learning的在線課程,近期已經完成了。這篇文章,我想分享一些我所學到的、最常見的機器學習算法。
我從這個課程中學到了很多,並決定繼續學習這一專業內容。不久前,我在舊金山聽了幾個關於深度學習、神經網絡、數據架構方面的技術演講,包括在一個機器學習大會上和很多領域知名專家一起。最重要的是,我六月份註冊了Udacity 的機器學習入門的在線課程,近期已經完成了。這篇文章,我想分享一些我所學到的、最常見的機器學習算法。
機器學習算法可以分為三個大類——有監督學習、無監督學習和強化學習。
有監督學習,對訓練有標籤的數據有用,但是對於其他沒有標籤的數據,則需要預估。
無監督學習,用於對無標籤的數據集(數據沒有預處理)的處理,需要發掘其內在關係的時候。
強化學習,介於兩者之間,雖然沒有精準的標籤或者錯誤信息,但是對於每個可預測的步驟或者行為,會有某種形式的反饋。
由於我上的是入門課程,我並沒有學習強化學習,但是下面10個有監督和無監督學習算法已經足以讓你對機器學習產生興趣。
監督學習
1.決策樹 (Decision Trees)
決策樹是一個決策支持工具,它用樹形的圖或者模型表示決策及其可能的後果,包括隨機事件的影響、資源消耗、以及用途。請看下圖,隨意感受一下決策樹長這樣的:
從商業角度看,決策樹就是用最少的Yes/No問題,儘可能地做出一個正確的決策。它讓我們通過一種結構化、系統化的方式解決問題,得到一個有邏輯的結論。
2.樸素貝葉斯分類(Naive Bayes Classification)
樸素貝葉斯分類器是一類簡單概率分類器,它基於把貝葉斯定理運用在特徵之間關係的強獨立性假設上。下圖是貝葉斯公式——P(A|B)表示後驗概率,P(B|A)表示似然度,P(A)表示類別的先驗概率(class prior probability),P(B)表示做出預測的先驗概率(predictor prior probability)。
現實生活中的應用例子:
一封電子郵件是否是垃圾郵件
一篇文章應該分到科技、政治,還是體育類
一段文字表達的是積極的情緒還是消極的情緒?
人臉識別
3.普通最小二乘回歸(Ordinary Least Squares Regression)
如果你學過統計學,你可能聽過線性回歸。至少最小二乘是一種進行線性回歸的方法。你可以認為線性回歸就是讓一條直線用最適合的姿勢穿過一組點。有很多方法可以這樣做,普通最小二乘法就像這樣——你可以畫一條線,測量每個點到這條線的距離,然後加起來。最好的線應該是所有距離加起來最小的那根。
線性法表示你去建模線性模型,而最小二乘法可以最小化該線性模型的誤差。