機器學習基礎知識 -- 學習摘記

機器學習

機器學習本質是一項監督分類/迴歸問題,"監督"表示你有許多樣本,假設你知道這些樣本的正確答案,我們不斷地把樣本交給機器,並告訴機器這些樣本是正確或錯誤的,對機器進行訓練,最終達到機器學習的目的。

1、有監督學習(數據有label)

監督學習就是教會計算機去完成任務,如:根據你已經標記爲垃圾郵件的郵件學習識別垃圾郵件,根據你喜歡的電影推薦其他你可能喜歡的電影…
監督學習可以理解爲以下兩種模型:

  • 迴歸模型:根據之前的數據預測出一個準確的輸出值
    迴歸問題通常是用來預測一個值,例如一個產品的實際價格爲500元,通過迴歸分析預測值爲499元,我們認爲這是一個比較好的迴歸分析。
    一個比較常見的迴歸算法是線性迴歸算法(LR),迴歸是對真實值的一種逼近預測。
  • 分類模型:根據之前的數據和分類/標籤將輸入數據準確地進行分類
    分類問題是用於將事物打上一個標籤,通常結果爲離散值。例如判斷一幅圖片上的動物是一隻貓還是一隻狗,分類通常是建立在迴歸之上,分類的最後一層通常要使用softmax函數進行判斷其所屬類別。
    分類並沒有逼近的概念,最終正確結果只有一個,錯誤的就是錯誤的,不會有相近的概念。最常見的分類方法是邏輯迴歸,或者叫邏輯分類。
    分類模型和迴歸模型本質一樣,分類模型可將回歸模型的輸出離散化,迴歸模型也可將分類模型的輸出連續化。
    兩者的區別在於輸出變量的類型。
  • 定量輸出稱爲迴歸,或者說是連續變量預測;
  • 定性輸出稱爲分類,或者說是離散變量預測。

2、無監督學習(數據無label)

是否有監督(supervised),就看輸入數據是否有標籤(label)。輸入數據有標籤,則爲有監督學習,沒標籤則爲無監督學習。

最簡單也最普遍的一類機器學習算法就是分類(classification)。對於分類,輸入的訓練數據有特徵(feature),有標籤(label)。所謂的學習,其本質就是找到特徵和標籤間的關係(mapping)。
這樣當有特徵而無標籤的未知數據輸入時,我們就可以通過已有的關係得到未知數據標籤。在上述的分類過程中,如果所有訓練數據都有標籤,則爲有監督學習(supervised learning)。

如果數據沒有標籤,顯然就是無監督學習(unsupervised learning)了,也即聚類(clustering)。
目前分類算法的效果還是不錯的,但相對來講,聚類算法就有些慘不忍睹了。確實,無監督學習本身的特點使其難以得到如分類一樣近乎完美的結果。

3、特徵和標籤

特徵提取
在機器學習中,我們通常會把特徵作爲輸入,然後嘗試生成標籤,最終進行分類。

4、決策面
機器學習就是將數據,根據特徵和標籤轉換爲決策面(分類)。

決策面分爲:
線層決策面:決策面爲一條直線
非線性局側面:決策面不是一條直線(一條直線無法決策的)

5、使用算法
常見的計算決策面的算法有:
樸素貝葉斯
支持向量機

基礎庫:scikit-learn官網,scikit-learn是一個python學習算法庫,包含了豐富的機器學習算法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章