感覺未來是大數據環境下的人工智能時代呀,不能被時代的馬車拋棄,西瓜書這么出名,簡要了解一下
1 緒論
1.1 引言
機器學習定義:利用經驗來改善計算機系統自身的性能
另外一種廣泛被引用的英文定義: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(T:任務,P:性能評估,E:數據,一段程序利用E提升了在T上的P那么就稱之為機器學習)
機器學習的主要內容即在數據中產生模型的算法
機器學習的核心即學習算法
機器學習動機:為了讓計算機系統具有人的學習能力以便實現人工智能
機器學習技術:神經網絡學習、決策樹學習、貝葉斯學習、最近鄰學習、線性學習、支持向量機學習等等
經驗在計算機中的表現為數據,那么使得機器學習成為智能分析技術的創新源之一,並且因此受到越多關注
經常和另外一種智能分析技術-數據挖掘來對比
數據挖掘:識別出巨量數據中有效的、新穎的、潛在有用的、最終可理解的模式的非平凡過程
數據挖掘可以視為機器學習與數據庫的交叉,主要利用機器學習界提供的技術來分析海量數據,利用數據庫界的技術來管理海量數據
機器學習和數據挖掘既有區別又有聯系,機器學習偏理論,數據挖掘偏應用
1.2 基本術語
數據集(dataset):類比數據庫概念中的table
示例(instance) or 樣本(sample):類比數據庫中table中的row即一行記錄或稱之為元組,在空間中也可以描述為特征向量(feature vector)
屬性(attr) or 特征(feature):類比數據庫中的col即列,空間中也叫做維數(dimensionality)
屬性空間、樣本空間、輸入空間:屬性值的取值集合
學習或者訓練:從數據中產生模型的過程
訓練數據
訓練樣本
訓練集
標記(lable):關於示例結果的信息
樣例(example):擁有了標記信息的示例
標記空間(lable space) or 輸出空間:所有標記的集合
分類(classification):預測的是離散值
回歸(regression):預測的連續值
聚類(clustering)
二分類:預測值只有兩個,一個叫正類,一個叫反類
多分類:預測值多於2
測試:學得模型后,利用模型預測的過程
有監督學習:數據集有標記(分類和回歸算法屬於此)
無監督學習:數據集沒有標記(聚類算法屬於此)
泛化(generalization):學得的模型適用於新樣本的能力
1.3 假設空間
歸納(induction):特殊到一般,泛化過程(generalization)
演繹(deduction):一般到特殊(specilization)
概念學習、布爾概念學習:研究、應用較少,因為學得語義明確泛化性能好的概念太難了
機械學習
樣本噪聲
學習:在假設空間進行搜索的過程
假設集合、假設空間、版本空間
1.4 歸納偏好
“奧卡姆剃刀”:若有多個假設與觀察一致,則選擇最簡單的那個
算法的歸納偏好是否與問題本身匹配,大多數時候直接決定了算法能否取得好的性能
“沒有免費午餐”定理,即NFL定理:在脫離實際意義情況下,空泛地談論哪種算法好毫無意義,要談論算法優劣必須針對具體學習問題
1.5 發展歷程
機器學習是人工智能研究發展到一定階段的必然產物
1.6 應用現狀
應用廣泛
“只要有數據存在的地方,機器學習就有價值”
2 模型評估與選擇
2.1 經驗誤差與過擬合
錯誤率
精度
誤差
訓練誤差
泛化誤差
過擬合:學習能力太強,除了訓練樣本中的“一般規律”學到了,連不太一般的特性也學到了
欠擬合:學習能力弱
欠擬合比較容易克服,例如在決策樹學習中擴展分支、在神經網絡學習中增加訓練輪數等;而過擬合則很麻煩,是機器學習面臨的關鍵障礙,是無法避免的,我們只能“減緩”或者減少其風險
機器學習面臨的問題通常是NP困難甚至更難,有效的學習算法必然是在多項式時間內運行完成
實際中,不同算法甚至相同算法不同調參都產生不同模型,那么使用哪個就是“模型選擇”問題
2.2 評估方法
測試集
測試誤差:用來當作泛化誤差的近似
留出法:一般要多次隨機划分重復實驗取均值,通常做法是2/3-4/5樣本用於訓練
p次k折交叉驗證法:常見的10次10折交叉驗證法
自助法:數據量少時候有用
調參
驗證集
2.3 性能度量
性能度量:對學習器的泛化性能評估
均方誤差:回歸任務最常用的性能度量
錯誤率
精度
查准率precision
P=TP/(TP+FP)
查全率recall
R=TP/(TP+FN)
查准率-查全率曲線,即P-R曲線
如果一個學習器的P-R曲線被另一個學習器的P-R曲線包住,則斷定后者性能更好,如果有交叉,則難以斷定需要個性化權衡P和R,如果仍然比較優劣,合理的判斷是比較面積大小
平衡點,是查准率=查全率的取值,以此點比較學習器的優劣
F1度量:平衡點還是過於簡單,F1更常用
Fβ=(1+β2)*P*R/((β2*P)+R)
當β=1時候為標准的F1
F1=2*P*R/(P+R)
其中,β>0度量了查全率對查准率的相對重要性,β>1時,查全率更重要,β<1,查准率更重要
多次訓練/測試得出宏查准率、宏查全率、微查准率、微查全率
ROC曲線:受試者工作特征
縱軸:真正利率TPR=TP/(TP+FN)
橫軸:假正利率FPR=FP/(TN+FP)
某個學習器的ROC曲線被另一個學習器完全包住,則后者更優;弱有交叉,則判斷下方面積AUC
代價敏感錯誤率與代價曲線
非均等代價
代價矩陣
非均等代價情況下用代價曲線替換ROC曲線
2.4 比較檢驗
統計假設檢驗(hypothesis test):假設檢驗、交叉驗證t檢驗、McNemar檢驗、Friedman檢驗與Nemenyi后續檢驗
2.5 方差與偏差
“偏差-方差分解”是解釋學習算法泛化性能的一種重要工具
3 線性模型
3.1 基本形式
易解釋,直觀表達各個屬性的重要性
3.2 線性回歸
均方誤差 or 平方損失 or 殘差:最小
最小二乘法:試圖找到一條直線,使得所有樣本到直線上的歐式距離最小
簡單回歸
多元線性回歸