機器學習_學習筆記系列(32):引導聚集回歸(Bagging Regressor)

--

上一回我們提到bagging其方法是運用bootstrap sampling的方法取樣資料,然後再用aggregation把所有的sub-model合併起來,最後得到我們的bagging model。

而在那篇當中,我們也展示了如何運用bagging解決分類上的問題。OK那既然分類可以,回歸也一定行得通。

所以在這邊我們的資料點,故意設計成二次方多項式+sin函數

然後在這裡我們用Polynomial Kernel套入Kernel Ridge Regression回歸

我們可以看到因為bagging運算中,有些點我們沒有取到,所以最後的回歸線嚴重偏移我們的數據點,不過我們再來看看sub-models和bagging的表現

我們可以看到bagging雖然在訓練集和測試集的表現不是最好的,但是綜合起來看bagging的表現在這12個sub-models中算是很不錯的了。

而在訓練model的時候,我們常會碰到一個問題,就是有些model在訓練集表現很好,但是有嚴重的overfitting問題,導致測試集表現很差。也有些model雖然訓練集表現普通,但是測試集表現很好,但是仔細看才發現其實是測試集資料太過集中。

所以集成學習最棒的就是,我們綜合這些model,雖然不能保證我們找到的model是最好的,但可以確定aggregation後的model表現至少是還不錯的。

Python Sample Code:

Github:

Reference:

[1] Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., … & Duchesnay, E. (2011). Scikit-learn: Machine learning in Python. the Journal of machine Learning research, 12, 2825–2830.

--

--

劉智皓 (Chih-Hao Liu)

豬屎屋AI Engineer,熱愛AI研究、LLM/SD模型、RAG應用、CUDA/HIP加速運算、訓練推論加速,同時也是5G技術愛好者,研讀過3GPP/ETSI/O-RAN Spec和O-RAN/ONAP/OAI開源軟體。