零、參考資料
一篇文章完全搞懂正則化(Regularization)-CSDN博客
一、 機器學習概述
0. 機器學習的層次結構
- 學習范式(最高層)? 怎么學
- 監督學習 ?
- 無監督學習 ?
- 半監督學習 ?
- ?強化學習 ?
- ?學習任務(中間層) ?
- ?分類任務 ?
- ?回歸任務 ?
- ?聚類任務 ?
- ?降維任務 ?
- ?其他任務 ?
- 學習算法(底層)? 用什么學
- 基礎算法 ?
- ?集成算法 ?
- ?深度學習算法 ?
- 概率模型算法
學習方式 | 數據特點 | 主要任務 | 典型算法 |
---|---|---|---|
監督學習 | 有標簽數據 | 分類、回歸 | 決策樹、SVM |
無監督學習 | 無標簽數據 | 聚類、降維 | K-Means、PCA |
半監督學習 | 部分有標簽 | 分類、回歸 | 標簽傳播 |
強化學習 | 獎勵信號 | 策略學習 | Q-learning |
1. 人工智能、機器學習與深度學習的關系
- 人工智能(AI)是最大的概念。它包含了所有讓機器模擬人類智能行為的技術和方法。
- 機器學習(ML)是人工智能的一個子集,是實現人工智能的一種重要方法。
- 深度學習(DL)則是機器學習的一個分支,是一種特殊的機器學習方法。
- 機器學習任務 和 機器學習算法
2. 機器學習的定義與方向
- 機器學習通過技術手段,利用已有的數據(經驗)開發可以用來對新數據進行預測的模型。
- 機器學習讓計算機從數據中學習規律,而不是通過傳統的硬編碼規則來解決問題。
- 機器學習主要研究產生模型的算法。
2-1 機器學習按基于學習方式的分類
基于學習方式的劃分:有監督學習、無監督學習、強化學習
學習方式 | 定義 | 主要任務/場景 | 常用算法 |
---|---|---|---|
監督學習 (Supervised Learning) | 使用已標記的數據進行訓練 | 分類問題:- 垃圾郵件識別 - 圖像識別 回歸問題:- 房價預測 - 銷量預測 | ? 決策樹 ? 支持向量機(SVM) ? 隨機森林 ? 邏輯回歸 ? 神經網絡 |
無監督學習 (Unsupervised Learning) | 使用未標記的數據,基于數據本身去發現數據中的模式和特征 | 聚類:- 客戶群體劃分 降維:- 特征壓縮 異常檢測 關聯分析 | ? K-means聚類 ? 主成分分析(PCA) ? 自編碼器 ? DBSCAN |
強化學習 (Reinforcement Learning) | 通過與環境交互來學習最優策略 | ? 游戲AI ? 機器人控制 ? 自動駕駛 | ? Q-learning ? DQN ? DDPG ? PPO |
半監督學習 (Semi-supervised Learning) | 同時使用標記和未標記數據進行訓練 | 適用場景:- 標記數據獲取成本高 - 未標記數據豐富 | ? 自訓練 ? 協同訓練 ? 生成模型 |
有監督學習 與 無監督學習:有監督學習,數據被打上圓和×的tag,目的是找到圓和×的邊界;無監督學習數據的tag是一樣的(沒有tag或標識),目的是找到數據聚合的特征,將數據根據特征聚類。
強化學習
無監督學習 與 強化學習的區別
- 數據形式:無監督學習:靜態數據點;? ? ? ? ? ? ? ? ? ? ? 強化學習:動態交互數據
- 學習目標:無監督學習:發現數據模式;? ? ? ? ? ? ? ? ? ?強化學習:最大化累積獎勵
- 反饋機制:無監督學習:無外部反饋;? ? ? ? ? ? ? ? ? ? ? ?強化學習:環境提供獎勵信號
- 應用場景:無監督學習:數據分析和模式識別;????????強化學習:決策制定和控制問題
有監督學習、無監督學習、強化學習的差異
比較維度 | 監督學習 | 無監督學習 | 強化學習 |
---|---|---|---|
訓練數據 | 有標記的數據(輸入和正確答案配對) | 無標記數據(只有輸入數據) | 無需預先準備的數據,通過與環境交互獲得 |
學習目標 | 學習輸入到輸出的映射關系 | 發現數據內在的結構和模式 | 學習在環境中獲得最大獎勵的策略 |
反饋方式 | 即時反饋(知道預測是否正確) | 無外部反饋 | 延遲反饋(通過獎勵信號) |
典型問題 | ? 分類(是/否判斷) ? 回歸(數值預測) | ? 聚類 ? 降維 ? 異常檢測 | ? 決策制定 ? 控制優化 ? 策略學習 |
應用場景 | ? 圖像識別 ? 垃圾郵件過濾 ? 疾病診斷 ? 房價預測 | ? 客戶分群 ? 推薦系統 ? 異常交易檢測 ? 特征提取 | ? 游戲AI ? 機器人控制 ? 自動駕駛 ? 資源調度 |
優點 | ? 準確度高 ? 結果可控 ? 容易評估 | ? 不需要標注數據 ? 可發現未知模式 ? 成本較低 | ? 能夠自主決策 ? 可以處理復雜環境 ? 持續學習改進 |
缺點 | ? 需要大量標注數據 ? 標注成本高 ? 可能過擬合 | ? 結果不易評估 ? 可解釋性較差 ? 效果不夠精確 | ? 訓練時間長 ? 需要大量試錯 ? 收斂性不穩定 |
經典算法 | ? 決策樹 ? SVM ? 神經網絡 ? 邏輯回歸 | ? K-means ? PCA ? DBSCAN ? 自編碼器 | ? Q-learning ? DQN ? DDPG ? PPO |
?2-2?機器學習按基于學習策略的分類
3. 分類和回歸的定義與區別
3-1 分類
- 分類是將不同的類別進行分開
- 目標是預測離散的類別標簽
- 輸出是類別,如:是/否、貓/狗/鳥、優/良/差
- 例子:垃圾郵件檢測(是/否)、圖像識別(貓/狗)、疾病診斷(良性/惡性)
3-2 回歸
- 回歸是找到一個空間,使得數據點盡可能落在空間上
- 目標是預測連續的數值
- 輸出是具體的數值,如:價格、溫度、身高
- 例子:房價預測、溫度預測、銷售額預測
3-3 分類和回歸的區別


4. 機器學習常見函數
4-1 損失函數
- 用于衡量模型預測值與真實值之間的差距
- 反映模型預測的好壞程度
- 目標是最小化損失函數值
- 職責:評估模型性能、提供優化目標、計算誤差大小
4-2 優化函數
- 目標:找到使損失函數最小的模型參數
- 作用:指導模型如何調整參數以提高性能
- 類比:就像在山谷中尋找最低點的過程
- 職責:決定如何更新參數、控制學習速度、避免局部最小值
- 優化函數相當于駕駛策略,參數相當于油門和方向盤。目標是到達目的地(最優解)
4-3 損失函數與優化函數的關系
- 損失函數 = 地圖(告訴你距離目標有多遠)
- 優化函數 = 導航策略(告訴你如何到達目標)
- 損失函數告訴我們"差距有多大",優化函數告訴我們"如何縮小差距"
4-4 優化函數的執行過程
4-5 優化函數的種類
基礎優化器
優化器 | 特點 | 優勢 | 劣勢 | 適用場景 |
---|---|---|---|---|
BGD (批量梯度下降) | 使用全部數據計算梯度 | - 穩定 - 準確 | - 速度慢 - 內存消耗大 | 小數據集 |
SGD (隨機梯度下降) | 每次使用單個樣本 | - 速度快 - 內存效率高 | - 不穩定 - 容易震蕩 | 大數據集 在線學習 |
Mini-batch GD | 使用小批量數據 | - 平衡速度和穩定性 - 并行計算友好 | - 需要調整批量大小 | 最常用場景 |
改進優化器
優化器 | 核心思想 | 優勢 | 劣勢 | 適用場景 |
---|---|---|---|---|
Momentum | 累積歷史梯度 | - 加快收斂 - 減少震蕩 | - 需要額外內存 - 可能過沖 | 有明顯方向的優化 |
AdaGrad | 自適應學習率 | - 適合稀疏數據 - 自動調整參數 | - 后期學習過慢 | 稀疏數據 NLP任務 |
RMSprop | 指數衰減的梯度累積 | - 解決學習率衰減 - 適應性好 | - 需要設置衰減率 | RNN訓練 非凸優化 |
現代優化器
優化器 | 原理 | 優勢 | 劣勢 | 適用場景 |
---|---|---|---|---|
Adam | 結合動量和自適應學習率 | - 收斂快 - 參數自適應 - 穩定性好 | - 計算開銷大 - 可能不收斂 | 深度學習默認選擇 |
AdaDelta | 自適應學習率無需設置 | - 無需設置學習率 - 魯棒性好 | - 計算復雜 | 對超參數敏感的任務 |
Nadam | Adam + Nesterov動量 | - 收斂更快 - 更精確 | - 計算開銷更大 | 需要快速收斂的任務 |
5. 機器學習常見評估指標
- 評估模型性能、驗證模型泛化能力、指導模型優化方向
- 評估指標是對模型效果數值上的量化
- 不同類型的機器學習 評估指標有差異
- 評價指標是建立在不同的機器學習任務上的,主要分為三大類:分類、回歸和無監督
5-1 不同學習任務的評估指標
5-2 分類學習任務的評估方法
混淆矩陣
?
5-3 分類學習任務的評估指標?
5-4 回歸任務常見評估指標
6. 學習任務
機器學習的學習任務指的是機器學習算法在訓練過程中學校要完成的具體目標。這個定義會直接影響到我們如何收集數據、選擇算法和評估結果。
6-1 本質定義
- 學習任務就是"要教會機器做什么"
- 是機器需要通過數據學習來完成的具體工作目標
6-2 主要特點
- 有明確的輸入和期望的輸出
- 可以通過數據來學習規律
- 有具體的評估標準來衡量性能
6-3 任務的構成要素
- 輸入空間:數據的特征
- 輸出空間:預測的目標
- 假設空間:可能的模型集合
- 評估準則:衡量模型好壞的標準
6-4 學習任務的作用
- 明確問題的目標
- 確定需要收集的數據類型
- 選擇合適的算法和模型
- 設定合理的評估標準
6-5 舉例
-
預測房價就是一個學習任務
- 輸入:房屋的面積、位置、年份等特征
- 輸出:預測的房價
- 評估標準:預測價格與實際價格的誤差
二、機器學習經典算法介紹
1. 線性回歸算法
1-1 定義
- 線性回歸是一種建立自變量(特征變量)和因變量(目標變量)之間線性關系的統計方法。
- 核心思想是找到條直線(或超平面),使得所有數據點到這條線的距離的平方和最小。
1-2 任務類型
分類維度 | 任務類型 | 特點 | 示例 |
---|---|---|---|
按變量數量 | 簡單線性回歸 | ? 一個自變量 ? 一個因變量 | 房屋面積預測房價 |
多元線性回歸 | ? 多個自變量 ? 一個因變量 | 用房屋面積、位置、年份等預測房價 | |
按預測目標 | 回歸預測 | ? 預測連續的數值 | 預測溫度、股票價格 |
概率預測 | ? 預測事件發生的概率 | 客戶購買概率預測 | |
按模型復雜度 | 標準線性回歸 | ? 無正則化項 ? 直接最小化均方誤差 | 基礎的線性擬合 |
正則化線性回歸 | ? Ridge回歸(L2正則化) ? Lasso回歸(L1正則化) ? 彈性網絡(L1+L2正則化) | 處理過擬合問題的高維數據建模 |
1-3 應用場景
- 銷售預測
- 房價估算
- 溫度預測
- 消費行為分析
- 經濟指標預測
- 人口增長預測
1-4 線性回歸的正則化模型
特性 | Ridge (L2) | Lasso (L1) | Elastic Net (L1+L2) |
---|---|---|---|
目標函數 | MSE + λΣθ2 | MSE + λΣ|θ| | MSE + λ?Σ|θ| + λ?Σθ2 |
正則項形式 | 平方和懲罰 | 絕對值和懲罰 | 同時包含L1和L2懲罰 |
參數效果 | 參數變小但不為0 | 參數可能變為0 | 兩種效果的結合 |
解的特點 | 唯一解 | 可能多個解 | 唯一解 |
2. 邏輯回歸算法
2-1 邏輯回歸定義
- 邏輯回歸是一種廣義線性回歸,在線性回歸的基礎上添加非線性變化,使得邏輯回歸輸出值為離散型。
- 邏輯回歸是一種將現行模型與sigmoid函數相結合的分類算法。
- 用于建立特征變量和二分類目標變量之間的非線性關系。
- 核心思想是通過sigmoid函數將現行預測值映射到[0,1]區間。
2-2 數學模型
- 線性部分:z = θ? + θ?x? + θ?x? + ... + θ?x? = θ?x
- Sigmoid函數:h(z) = 1 / (1 + e^(-z))
2-3 邏輯回歸任務類型
分類
2-4 應用場景
考生成績預測 霧霾天氣預測
2-5 邏輯回歸的多分類應用
策略類型 | 原理 | 優點 | 缺點 | 適用場景 |
---|---|---|---|---|
一對多(OvR) One-Vs-Rest | ? 將N分類轉化為N個二分類 ? 每個類別對應一個分類器 | ? 實現簡單 ? 計算效率高 ? 訓練速度快 | ? 存在類別不平衡 ? 決策邊界可能重疊 | ? 類別數較少 ? 計算資源有限 |
一對一(OvO) One-Vs-One | ? 每兩個類別訓練一個分類器 ? 共N(N-1)/2個分類器 | ? 分類器更專注 ? 類別平衡性好 | ? 分類器數量多 ? 計算開銷大 | ? 類別數適中 ? 計算資源充足 |
Softmax回歸 | ? 直接多分類 ? 輸出概率分布 | ? 原理簡單優雅 ? 概率解釋性強 | ? 計算復雜度高 ? 收斂較慢 | ? 互斥類別 ? 需要概率輸出 |
?2-6 多分類應用:一對多 One-Vs-Rest
分類維度 | 說明 |
---|---|
核心思想 | 將N個類別的多分類問題轉化為N個二分類問題 |
實現方式 | 為每個類別訓練一個二分類器,將該類別作為正類,其他所有類別作為負類 |
決策規則 | 選擇概率最高的分類器作為最終預測結果 |
??2-6 多分類應用: 一對一 One-Vs-One
分類維度 | 說明 |
---|---|
核心思想 | 在任意兩個類別之間訓練一個二分類器 |
分類器數量 | N(N-1)/2個分類器,N為類別數 |
決策方式 | 投票機制或概率綜合 |
2-7 多分類應用:Softmax
分類維度 | 說明 |
---|---|
核心思想 | 直接將線性輸出轉換為多類別概率分布 |
數學本質 | 將logistic回歸推廣到多分類的情況 |
概率輸出 | 所有類別的概率和為1,每個類別概率非負 |
3. 樸素貝葉斯算法
3-1 定義
- 基于貝葉斯定理與特征條件獨立假設的分類方法
- 算法本質??? 基于貝葉斯定理的概率分類算法
- 核心思想??? 假設特征之間相互獨立,計算后驗概率
- 基本假設??? 條件獨立假設(樸素假設)
3-2 任務類型
分類
3-3 應用場景
垃圾郵件 輿情分析
4.? k近鄰算法 (KNN)
4-1 定義
- K近鄰即從訓練集中找到與新實例最近的K個實例,根據k個實例來進行預測
- 算法本質??? 基于實例的懶惰學習算法
- 核心思想??? 物以類聚,通過鄰近樣本投票決定預測結果
- 基本假設??? 相似的實例具有相似的特征和標簽
- 決策規則??? K個最近鄰居的多數投票或加權平均
4-2 任務類型
分類 回歸
4-3 應用場景
約會匹配 商品推薦
4-4 K近鄰算法:距離度量
5. 支持向量機算法 SVM
求使兩虛線距離最遠的直線就是求解最大邊距超平面過程。直線是超平面的二維解釋。
5-1 定義
- 核心思想??? 尋找最優分離超平面,使兩類樣本間隔最大
- 支持向量??? 距離分離超平面最近的樣本點
- 間隔??? 支持向量到分離超平面的距離
- 核函數??? 將低維數據映射到高維空間的函數
5-2 任務類型
5-3 應用場景
心臟病預測 用戶竊電識別
5-4 線性可分與線性不可分
5-5 核函數
6. 決策樹算法
6-1 定義
- 決策樹是一種以樹結構形式來表達的預測分析模型
- 基本概念??? 一種樹形結構的監督學習模型,通過一系列規則對數據進行分類或回歸
- 組成部分??? 根節點:起始點;內部節點:決策點;葉節點:結果;分支:決策路徑
- 決策過程??? 從根節點開始,根據特征值進行判斷,直到達到葉節點得到結果
- 模型特點??? 直觀可解釋、自動特征選擇、處理混合數據類型、可處理缺失值
6-2 任務類型
類型 | 說明 | 特點 | 評估指標 |
---|---|---|---|
分類樹 | 預測離散類別 | 葉節點表示類別;基尼指數/信息增益分裂 | 準確率;F1分數;AUC-ROC |
回歸樹 | 預測連續值 | 葉節點表示數值;均方差分裂 | MSE;MAE;R2 |
6-3 應用場景
銀行貸款 動物識別
6-4 決策樹結構
?6-4 決策樹構建步驟
特征選擇方法 | 計算公式 | 特點 | 適用場景 |
---|---|---|---|
信息增益 | IG(D,A) = H(D) - H(D|A) | 偏向多值特征 | ID3算法 |
信息增益比 | IGR(D,A) = IG(D,A)/H(A) | 克服多值特征偏好 | C4.5算法 |
基尼指數 | Gini(D) = 1 - Σ(pi)2 | 計算簡單高效 | CART算法 |
均方誤差 | MSE = Σ(yi - ?)2/n | 適用連續值 | 回歸樹 |
7. 集成算法
類型 | 原理 | 代表算法 | 特點 |
---|---|---|---|
Bagging | 并行集成,隨機采樣 | Random Forest, Bagging | 降低方差,防過擬合 |
Boosting | 串行集成,迭代提升 | AdaBoost, GBDT, XGBoost | 降低偏差,提高精度 |
Stacking | 多層集成,元學習 | Stacking, Blending | 綜合多模型優 |
7-1 Bagging 集成學習算法
- 對于分類任務:使用投票(voting)機制
- 對于回歸任務:才使用平均(averaging)
7-2 Boosting 集成學習算法
7-3 Stacking 集成學習算法
8. 用于聚類任務的機器學習算法
8-1 聚類
- 聚類是學習任務的一種;
- 聚類屬于無監督學習的一種。
9. 機器學習算法的 欠擬合 和 過擬合
9-1 欠擬合(Underfitting)
- 定義:模型太過簡單,無法捕捉數據中的基本規律
- 特征:
- 訓練誤差大
- 測試誤差大
- 預測效果差
- 原因:
- 訓練樣本數量少
- 模型復雜度過低
- 參數還未收斂就停止循環
- 解決辦法
- 增加模型復雜度
- 增加有效特征
- 減少正則化強度
9-2 過擬合
- 定義:模型過于復雜,不僅學習了數據的真實規律,還學習了訓練數據中的噪聲
- 特征:
- 訓練誤差小
- 測試誤差大
- 泛化能力差
- 原因:
- 數據噪聲太大
- 特征太多
- 模型太復雜
- 解決辦法:
- 清洗數據
- 減少模型參數,降低模型復雜度
- 增加懲罰因子(正則化),保留所有的特征,但是減少參數的大小(magnitude)
9-3 欠擬合與過擬合對比
特征 | 欠擬合 | 適當擬合 | 過擬合 |
---|---|---|---|
模型復雜度 | 過于簡單 | 適中 | 過于復雜 |
訓練誤差 | 大 | 中等 | 小 |
測試誤差 | 大 | 中等 | 大 |
偏差 | 高 | 適中 | 低 |
方差 | 低 | 適中 | 高 |
泛化能力 | 差 | 好 | 差 |
?9-4 欠擬合與過擬合的預防
-
數據處理:
- 增加訓練數據量
- 清理噪聲數據
- 特征選擇和工程
-
模型選擇:
- 選擇合適復雜度的模型
- 使用集成學習方法
- 采用交叉驗證
-
訓練策略:
- 使用正則化技術
- 采用早停法
- 使用dropout等技術(深度學習)
9-5 圖示
10. 機器學習中的泛化能力
10-1 機器學習中泛化能力的定義
- 模型在未見過的新數據上的表現能力
- 從訓練數據中學到的規律應用到新數據的能力
- 對新樣本的預測準確程度
10-2 評估指標
指標類型 | 具體指標 | 說明 |
---|---|---|
準確性指標 | ? 準確率<br>? 精確率<br>? 召回率 | 模型預測的正確程度 |
誤差指標 | ? MSE<br>? MAE<br>? RMSE | 預測值與真實值的偏差 |
穩定性指標 | ? 方差<br>? 標準差 | 預測結果的穩定程度 |
10-3 影響泛化能力的關鍵因素
因素 | 正面影響 | 負面影響 |
---|---|---|
數據量 | 充足的訓練數據 | 數據不足 |
數據質量 | 高質量、代表性數據 | 噪聲數據、偏差數據 |
模型復雜度 | 適當的復雜度 | 過于簡單或復雜 |
特征選擇 | 有效特征 | 無關特征、冗余特征 |
訓練方法 | 合適的訓練策略 | 訓練不充分或過度 |
11 正則化
一篇文章完全搞懂正則化(Regularization)-CSDN博客
11-1 正則
- 對模型施加約束或限制
- 使模型更加"規范"或"合理"
- 防止模型"任性"(過度擬合訓練數據)
- 新的目標 = 原始目標 + 約束條件
11-2 正則化定義:
- 是指為解決適定性問題或過擬合而加入額外信息的過程。
- 正則項往往被加在目標函數當中。
- 一種防止模型過擬合的技術
- 通過添加懲罰項來控制模型復雜度
- 使模型更簡單、更具泛化能力
三、機器學習PAI平臺簡單實現
縮寫 | 全稱 | 主要功能 | 用途總結 |
---|---|---|---|
PAI-Designer | Platform for Artificial Intelligence - Designer | ? 可視化拖拽建模工具 ? 無代碼開發環境 ? 內置算法組件 ? 機器學習流程搭建 | 可視化建模 |
PAI-DSW | Platform for Artificial Intelligence - Data Science Workshop | ? Jupyter Notebook環境 ? 支持Python/R等語言 ? 交互式開發 ? 數據分析和建模 | 開發環境 |
PAI-DLC | Platform for Artificial Intelligence - Deep Learning Container | ? 深度學習環境 ? 支持TensorFlow/PyTorch ? 深度學習模型訓練 ? 容器化部署 | 深度學習 |
PAI-EAS | Platform for Artificial Intelligence - Elastic Algorithm Service | ? 模型在線服務 ? API接口調用 ? 彈性伸縮能力 ? 在線預測服務 | 模型部署 |