一,根據輸出空間來分類。
1, 分類(classification)
1.1 二值分類 (binary classification):輸出爲 {+1, -1}。
1.2 多值分類 (multiclass classification):輸出爲有限個類別,{1, 2, 3, ... , K}
2, 迴歸(regression)
輸出空間:實數集 R , 或 區間 [lower, upper]
3, 結構學習(structured learning):典型的有序列化標註問題
輸出是一個結構(如句子中每個單詞的詞性), 可以成爲 hyperclass, 通常難以顯示地定義該類。
需要重點研究的是二值分類和迴歸。
二, 根據數據標籤(label) 情況來分類。
1, 有監督學習(supervised learning):訓練數據中每個xi 對應一個標籤yi。
應用:分類
2, 無監督學習(unsupervised learning):沒有指明每個xi 對應的是什麼,即對x沒有label。
應用:聚類,密度估計(density estimation), 異常檢測。
3, 半監督學習(semi-supervised learning):只有少量標註數據,利用未標註數據。
應用:人臉識別;醫藥效果檢測。
4, 增強學習(reinforcement learning):通過隱含信息學習,通常無法直接表示什麼是正確的,但是可以通過”懲罰“不好的結果,”獎勵“好的結果來優化學習效果。
應用:廣告系統,撲克、棋類遊戲。
總結:有監督學習有所有的yi;無監督學習沒有yi;半監督學習有少量的yi;增強學習有隱式的yi。
三, 根據不同的協議來分類。
1, 批量學習 - Batch learning
利用所有已知訓練數據來學習。
2, 在線學習 - online learning
通過序列化地接收數據來學習,逐漸提高性能。
應用:垃圾郵件, 增強學習。
3, 主動學習 - active learning
learning by asking:開始只有少量label, 通過有策略地”問問題“ 來提高性能。
比如遇到xi, 不確定輸出是否正確,則主動去確認yi 是什麼,依次來提高性能。
四, 通過輸入空間來分類。
1, 離散特徵 - concrete features
特徵中通常包含了人類的智慧。例如對硬幣分類需要的特徵是(大小,重量);對信用分級需要的特徵是客戶的基本信息。這些特徵中已經蘊含了人的思考。
2, 原始特徵 - raw features
這些特徵對於學習算法來說更加困難,通常需要人或機器(深度學習,deep learning)將這些特徵轉化爲離散(concrete)特徵。
例如,數字識別中,原始特徵是圖片的像素矩陣;聲音識別中的聲波信號;機器翻譯中的每個單詞。
3, 抽象特徵 - abstract features
抽象特徵通常沒有任何真實意義,更需要認爲地進行特徵轉化、抽取和再組織。
例如,預測某用戶對電影的評分,原始數據是(userid, itemid, rating), rating 是訓練數據的標籤,相當於y。這裏的(userid, itemid)本身對學習任務是沒有任何幫助的,我們必須對數據所進一步處理、提煉、再組織。
總結:離散特徵具有豐富的自然含義;原始特徵有簡單的自然含義;抽象特徵沒有自然含義。
原始特徵、抽象特徵都需要再處理,此過程成爲特徵工程(feature engineering),是機器學習、數據挖掘中及其重要的一步。離散特徵一般只需要簡單選取就夠了。