一、集成算法(Ensemble Learning)
1. 基本概念
集成學習通過構建并結合多個學習器(基分類器/回歸器)來完成學習任務,旨在通過集體決策提升模型性能,類似于“多個專家的綜合判斷優于單個專家”。
2. 結合策略
簡單平均法:適用于回歸任務。
加權平均法:根據模型性能賦予不同權重。
投票法:適用于分類任務,遵循“少數服從多數”。
3. 集成方法分類
a) Bagging(Bootstrap Aggregating)
特點:并行訓練多個基學習器,彼此獨立。
代表算法:隨機森林(Random Forest)。
優勢:
處理高維數據,無需特征選擇。
可評估特征重要性。
支持并行化,訓練速度快。
可可視化分析。
b) Boosting
特點:串行訓練,后續模型聚焦于前一輪分錯的樣本。
代表算法:AdaBoost。
流程:
初始化樣本權重;
依次訓練弱分類器,調整錯分樣本權重;
組合所有弱分類器,按性能加權輸出最終結果。
c) Stacking
特點:堆疊多種不同類型的基模型,分階段訓練。
第一階段:各基模型獨立預測;
第二階段:使用第一階段輸出訓練元模型(meta-model)進行最終預測。
二、聚類算法:K-Means
1. 基本概念
無監督學習:沒有標簽,依靠數據內在結構進行分組。
聚類目標:將相似樣本劃分到同一組(簇)。
難點:評估聚類質量、確定最佳簇數(K值)、處理非球形簇。
2. 距離度量
歐式距離:多維空間中的直線距離。
曼哈頓距離:各維度絕對差之和,適用于網格狀數據。
3. K-Means 算法流程
隨機初始化K個中心點;
將每個樣本分配到最近的中心點所屬簇;
重新計算每個簇的中心點;
重復2-3步直至中心點穩定。
4. 評估指標:CH指標(Calinski-Harabasz Index)
衡量類內緊密度與類間分離度;
CH值越大,聚類效果越好。
5. 優缺點
優點:簡單、高效、適用于常規數據集。
缺點:
K值難以確定;
對初始中心點敏感;
難以識別非球形簇;
對噪聲和異常值敏感。
三、課堂實踐內容
集成學習:使用RandomForestClassifier對葡萄酒數據集進行分類。
聚類算法:使用make_blobs生成數據集,并用KMeans進行聚類分析。
四、總結
集成學習通過組合多個模型提升預測性能,主要包括Bagging、Boosting和Stacking三種策略;聚類算法如K-Means則用于無監督分組,依賴距離度量和迭代優化。兩者分別適用于監督與無監督任務,是機器學習中重要且實用的方法