1. 程式人生 > >Machine Learning(機械學習)

Machine Learning(機械學習)

前言

      動手寫這個是為了記錄下自己在學習machine lerning的整個過程,為了更好的回顧和志同道合者一起討論學習進步。我是一邊跟著在coursera上觀看machine learning課程,一邊學習並記錄。這個基本上是每學完一章內容,就會更新一次,記錄這章的知識,和一些個人的理解。大家如果初學machine learning,也可以看下coursera上的課程(關於那個在coursera上看視訊,可能會存在視訊一直緩衝,無法播放問題,這個網上也有很多解決辦法,如果大家還不能解決,可以私聊我,我可以幫大家看下是什麼問題),雖然課程全英文的,有些難以理解,但大家可以一起交流學習。

       最後,如果內容有什麼錯誤的理解,希望大家不吝賜教,指正,謝謝!

第一章 介紹

1.1 定義與理解

Tom Mitchell provides a more modern definition: "A computer program is said to learn from experience E with respect to some class of tasks T and performance measure P, if its performance at tasks in T, as measured by P, improves with experience E."

    我的理解:Machine learning就是讓一個機器學會像人一樣有思考學習的能力,先通過觀察人的行為獲得experience,再進行和人一樣的行為,給他一些task,並學會思考下一步該怎麼做,這個過程就是machine learning。通俗的來講,例如讓機器人學會下象棋,人如何下象棋的過程是experience E,讓機器人學會下象棋是task T,讓機器人做出下一步怎樣來贏對手就是performance P。

 

1.2 Machine learning的分類

    Machine learning大體分為兩種:supervised learning和unsupervised learning。supervised learning(監管學習)就是一組人工標記的資料推測出假設函式的學習方法輸入和輸出之間是有一種函式關係的,我們給個輸入,輸出的結果是我們已經知道的正確範圍內的,就是可以預測結果的。supervised learning又分為regression(迴歸)和classification(分類)。Unspervised learning(無監管機器學習)用的 Training data(訓練資料) 沒有標籤。系統會試著自學。

  1. 2.1 Regression(迴歸)

  用來預測目標值,輸出的結果不是隻有兩種的,是一個連續的問題。(在後續的內容中會有詳細的分析)

 Attribute(屬性) 是一種資料型別,比如汽車的里程。Feature 根據語境有幾種意思,一般它表示的就是:屬性 + 值,比如 里程:15,000,有時候這兩個名詞也會交替使用。

                                                                                       圖1 regression

  1. 2.2 Classification(分類)

預測的結果只有兩種,是一個離散的問題,例如郵件垃圾過濾器得到一個郵件,會知道它的類別屬於正常郵件還是垃圾郵件。或者對一個腫瘤分析是良性還是惡性,結果都是兩種,可以簡單地用0和1來表示。

                                                                                        圖2 classification

 

  1. 2.3 Unsupervised learning(無監管機器學習)  

   沒有給任何的特徵,進行學習。(關於這個後面還會進行詳細分析)

                                                                              圖3 unsupervised learning