Page cover

XGBoost & LightGBM: Tối ưu cho các bài toán về cây quyết định gradient boosting

XGBoost & LightGBM

Mục tiêu: Giải quyết hiệu quả các bài toán học máy với thuật toán Gradient Boosting dựa trên cây quyết định — nổi bật với tốc độ huấn luyện nhanh và độ chính xác cao.

🌳 XGBoost (Extreme Gradient Boosting)

  • Thư viện mạnh mẽ, tối ưu hóa thuật toán boosting truyền thống.

  • Hỗ trợ xử lý giá trị thiếu, regularization (L1/L2), song song hóa (parallel computing).

  • Được sử dụng rộng rãi trong các cuộc thi Kaggle nhờ hiệu năng vượt trội.

⚡ LightGBM (Light Gradient Boosting Machine)

  • Phát triển bởi Microsoft, tập trung vào hiệu suất với tập dữ liệu lớn.

  • Áp dụng kỹ thuật Histogram-based learningLeaf-wise growth, giúp tăng tốc độ và giảm tiêu thụ bộ nhớ.

  • Tích hợp tốt với Pandas, NumPy và Scikit-learn.

✅ Ưu điểm chung

  • Dễ tích hợp vào pipeline học máy hiện đại.

  • Hỗ trợ các bài toán: phân loại, hồi quy, xếp hạng, phát hiện bất thường,...

  • Được tối ưu hóa cho GPU (đặc biệt LightGBM).

Ví dụ với XGBoost:

import xgboost as xgb
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# Dữ liệu mẫu
data = load_breast_cancer()
X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2)

# Mô hình
model = xgb.XGBClassifier()
model.fit(X_train, y_train)

# Dự đoán & đánh giá
y_pred = model.predict(X_test)
print("Độ chính xác:", accuracy_score(y_test, y_pred))

Last updated

Was this helpful?