Nền tảng AI

Gradient Boosting là gì?

mm
Thêm Unite.AI vào các nguồn ưu tiên của bạn trên Google

Gradient boosting xây dựng một mô hình dự đoán cộng dồn theo từng giai đoạn. Mỗi mô hình học yếu mới — thường là một cây quyết định nông — được huấn luyện để giảm lỗi của tập hợp hiện tại bằng cách xấp xỉ gradient âm của hàm mất đã chọn.

Dự đoán cuối cùng là tổng của nhiều chỉnh sửa nhỏ. Điều này có thể mô hình hoá các mối quan hệ phi tuyến và tương tác trong dữ liệu dạng bảng, nhưng cần xác thực cẩn thận vì cùng độ linh hoạt có thể vừa khớp với nhiễu và rò rỉ dữ liệu.

Những điểm chính

  • Gradient boosting là gradient descent hàm số: mỗi mô hình học di chuyển tập hợp về phía giảm mất mát.
  • Tốc độ học và số cây cân bằng kích thước bước với độ dài mô hình.
  • Độ sâu cây kiểm soát độ phức tạp của tương tác; việc lấy mẫu ngẫu nhiên và regularization có thể giảm overfitting.
  • XGBoost, LightGBM và CatBoost là các triển khai liên quan với các lựa chọn kỹ thuật và xử lý tính năng phân loại khác nhau.
What is Gradient Boosting? diagram showing initial model, calculate gradient, fit small tree, scale update, add to ensemble, validate
Mỗi cây sửa chữa tập hợp hiện tại; việc dừng sớm giới hạn các vòng không cần thiết.

Sửa lỗi tuần tự

Bắt đầu bằng một dự đoán hằng số đơn giản. Tính toán cách mà hàm mất sẽ thay đổi cho mỗi ví dụ huấn luyện, sau đó huấn luyện một cây quyết định cho các gradient âm đó. Thêm một phiên bản đã được điều chỉnh tỉ lệ của cây vào tập hợp và lặp lại.

Đối với hồi quy lỗi bình phương, gradient âm chính là phần dư, giúp quá trình trở nên trực quan. Các hàm mất khả vi khác tạo ra các pseudo‑residual khác nhau cho phân loại, hồi quy bền vững hoặc xếp hạng.

Tốc độ học, độ sâu cây và số vòng

Tốc độ học nhỏ hơn làm cho mỗi cây điều chỉnh nhẹ nhàng hơn và thường đòi hỏi nhiều vòng hơn. Cây nông hạn chế mức độ tương tác; cây sâu hơn nắm bắt các mẫu phức tạp hơn nhưng tăng phương sai và chi phí.

Không có cài đặt tốt nhất độc lập với dữ liệu. Hãy điều chỉnh đồng thời với việc xác thực có nhận thức thời gian hoặc nhóm khi cần, và sử dụng dừng sớm trên tập xác thực phản ánh môi trường triển khai.

Regularization và lấy mẫu ngẫu nhiên

Lấy mẫu ngẫu nhiên theo hàng giới thiệu tính ngẫu nhiên và có thể giảm phương sai. Lấy mẫu ngẫu nhiên theo cột hạn chế việc dựa vào cùng các đặc trưng lặp lại. Các hình phạt L1/L2, kích thước lá tối thiểu, ngưỡng lợi nhuận chia tách và độ sâu tối đa hạn chế các cây riêng lẻ.

Regularization không khắc phục rò rỉ mục tiêu hay việc chia tách không đại diện. Kiểm soát overfitting phải bắt đầu từ quy trình dữ liệu.

XGBoost, LightGBM và CatBoost

XGBoost giới thiệu một hệ thống tăng cường cây có khả năng mở rộng và regularized với các thuật toán nhận thức độ thưa. LightGBM sử dụng kỹ thuật histogram và tăng trưởng theo lá để đạt hiệu quả. CatBoost bao gồm các kỹ thuật có thứ tự được thiết kế để giảm rò rỉ mục tiêu khi xử lý các tính năng phân loại.

Các mặc định của thư viện và cách xử lý phân loại khác nhau. Các bài kiểm tra nên bao gồm thời gian tiền xử lý, bộ nhớ, độ trễ dự đoán và hành vi giá trị thiếu bản địa thay vì chỉ tốc độ huấn luyện.

Đánh giá và giải thích

Sử dụng các chỉ số giữ lại phù hợp với nhiệm vụ, hiệu chỉnh xác suất cho các quyết định rủi ro và kiểm tra các nhóm phụ. Tầm quan trọng của đặc trưng dựa trên số lần chia tách hoặc lợi nhuận có thể bị thiên lệ và không thiết lập tính nhân quả.

Phụ thuộc một phần, hiệu ứng địa phương tích lũy và các đóng góp kiểu SHAP có thể giúp kiểm tra hành vi, nhưng các đặc trưng tương quan làm phức tạp việc giải thích. Một mô hình tuyến tính hoặc đơn điệu đơn giản hơn có thể là lựa chọn ưu tiên khi các ràng buộc chính sách hoặc giải thích chiếm ưu thế.

Cây tuần tự và sửa lỗi phần dư

Gradient boosting xây dựng một mô hình cộng dồn từng mô hình học yếu một. Mỗi cây mới xấp xỉ gradient âm của hàm mất đã chọn đối với các dự đoán hiện tại — phần dư cho hồi quy lỗi bình phương và tín hiệu lỗi đã biến đổi cho phân loại. Tốc độ học điều chỉnh đóng góp của mỗi cây, trong khi độ sâu cây kiểm soát các tương tác. Nhiều cây nông có thể nắm bắt các quan hệ phi tuyến phức tạp. Không giống như bagging, các cây phụ thuộc và tuần tự, điều này cải thiện độ khớp nhưng làm cho phương pháp nhạy cảm với nhiễu, rò rỉ và việc điều chỉnh.

Các triển khai như cây quyết định tăng cường gradient sử dụng giảm thiểu, lấy mẫu ngẫu nhiên theo hàng và đặc trưng, chia tách histogram, regularization và xử lý giá trị thiếu hiệu quả. XGBoost sử dụng thông tin bậc hai và các hình phạt rõ ràng; LightGBM phát triển các lá và dùng kỹ thuật histogram và lấy mẫu; CatBoost xử lý các biến phân loại bằng thống kê có thứ tự được thiết kế để giảm rò rỉ mục tiêu. Các mặc định và cách xử lý phân loại của chúng khác nhau. Tiền xử lý và tìm kiếm siêu tham số phải diễn ra trong vòng huấn luyện, đặc biệt khi có mã hoá mục tiêu.

Điều chỉnh, giải thích và đánh giá

Các yếu tố kiểm soát chính bao gồm số cây, tốc độ học, độ sâu tối đa hoặc số lá, dữ liệu lá tối thiểu, lấy mẫu theo hàng và cột, và regularization. Tốc độ học thấp hơn thường cần nhiều cây hơn. Sử dụng dừng sớm trên tập xác thực và sau đó xác nhận trên tập kiểm tra chưa được chạm tới. Đánh giá các chỉ số riêng lớp, hiệu chỉnh, chi phí lỗi và hiệu năng theo thời gian và nhóm phụ. Tree boosting có thể chiếm ưu thế trong các bài kiểm tra bảng nhưng vẫn thua so với mô hình tuyến tính khi các quan hệ đơn giản hoặc dữ liệu không ổn định.

Tầm quan trọng của đặc trưng dựa trên lợi nhuận có thể ưu tiên các biến có nhiều cơ hội chia tách. Hãy sử dụng tầm quan trọng hoán vị và SHAP một cách thận trọng, kiểm tra các đặc trưng tương quan, và thực hiện các thử nghiệm phản thực hoặc ablation. Các giải thích mô tả mô hình đã được huấn luyện, không phải các hiệu ứng nhân quả. Phụ thuộc một phần có thể đánh giá các tổ hợp đặc trưng không khả thi khi các dự đoán tương quan. Kiểm tra xem việc thiếu dữ liệu hoặc định danh có phải là lối tắt và liệu các ràng buộc đơn điệu có được biện minh bởi quy tắc miền hay không.

Vận hành trong môi trường sản xuất

Chuẩn hóa toàn bộ pipeline đặc trưng, ánh xạ phân loại, mô hình và ngưỡng. Xác thực dự đoán trên các phiên bản thư viện hoặc trình biên dịch khác nhau và đo độ trễ với số cây và kích thước batch thực tế. Giám sát schema, thiếu dữ liệu, drift phân loại, phân phối điểm số, hiệu chỉnh và kết quả. Các phân loại mới và hệ thống nguồn thay đổi có thể đưa các ví dụ qua các nhánh không mong muốn. Giữ bằng chứng rollback và tái huấn luyện. Gradient boosting mạnh mẽ cho dữ liệu có cấu trúc, nhưng độ chính xác của nó phụ thuộc vào ý nghĩa đặc trưng ổn định, xác thực không rò rỉ và các kiểm soát vận hành quanh một tập hợp phức tạp.

Ví dụ thực tế: gradient boosting cho việc phân loại yêu cầu bồi thường

Một công ty bảo hiểm sử dụng các cây tăng cường để ưu tiên các yêu cầu bồi thường cho việc xem xét chuyên môn, không phải để từ chối thanh toán. Các đặc trưng bị giới hạn trong thông tin có sẵn tại thời điểm tiếp nhận, mã hoá phân loại được thực hiện trong các fold, và các yêu cầu được chia theo khách hàng và thời gian. Một mô hình logistic regularized và một số thư viện boosting được so sánh. Báo cáo đánh giá cung cấp mức recall tại năng lực người xem, hiệu chỉnh, gánh nặng sai, thời gian xử lý và lỗi trên các loại yêu cầu và các nhóm bị ảnh hưởng liên quan.

Các giải thích hiển thị các trường nguồn và độ không chắc chắn nhưng không được mô tả là nguyên nhân gây gian lận. Các phân loại có hỗ trợ thấp và schema thiếu dẫn đến việc xem xét thông thường. Toàn bộ pipeline đặc trưng, mô hình và ngưỡng được phiên bản hoá; giám sát theo dõi việc thiếu dữ liệu, các phân loại mới, drift điểm số, ghi đè và kết quả. Một thay đổi chính sách hoặc hệ thống nguồn yêu cầu đánh giá lại. Mô hình sẽ bị loại bỏ nếu nó chỉ chuyển đổi khối lượng công việc hoặc tạo ra sự kiểm tra không công bằng mà không có lợi ích vận hành đã được xác minh.

Bằng chứng triển khai và sẵn sàng vận hành

Một quyết định triển khai cần hơn một buổi trình diễn thành công. Xác định người dùng mục tiêu, môi trường vận hành, đầu vào, đầu ra, các phụ thuộc, người sở hữu và hậu quả của mỗi lỗi quan trọng. Thiết lập một baseline có thể tái tạo và một tập đánh giá có phiên bản trước khi điều chỉnh. Kiểm tra các trường hợp thông thường, điều kiện biên, đầu vào sai định dạng hoặc thiếu, sự dịch chuyển phân phối, mất kết nối phụ thuộc, lạm dụng, và các nhóm hoặc môi trường có khả năng bị thiếu hụt. Đo lường chất lượng nhiệm vụ cùng với hiệu chỉnh hoặc độ không chắc, độ trễ, thông lượng, chi phí tài nguyên, khả năng tiếp cận, quyền riêng tư và bảo mật. Ghi lại mọi biến đổi và ngưỡng để người đánh giá độc lập có thể tái tạo kết quả và phân biệt bằng chứng với một nguyên mẫu hấp dẫn.

Trước khi ra mắt, chỉ định quyền chịu trách nhiệm cho việc phát hành, ngoại lệ, thay đổi, rollback và ngừng sử dụng. Sử dụng triển khai theo giai đoạn, duy trì một phương án dự phòng an toàn, và xác minh giám sát bằng các lỗi được chèn cố ý. Telemetry vận hành nên tiết lộ chất lượng đầu vào, hành vi đầu ra, phiên bản mô hình hoặc quy tắc, sức khỏe phụ thuộc, ghi đè của con người và kết quả đã xác nhận mà không thu thập dữ liệu nhạy cảm không cần thiết. Xác định ngưỡng cảnh báo và người chịu trách nhiệm phản hồi, sau đó xem xét bằng chứng thực tế sau triển khai thay vì giả định hiệu năng offline sẽ kéo dài. Đánh giá lại mỗi khi nguồn dữ liệu, người dùng, mô hình, nhà cung cấp, chính sách, phần cứng hoặc mục tiêu thay đổi. Một hệ thống được duy trì cũng cần có tài liệu về phục hồi, học hỏi từ sự cố, quy trình xóa và lưu trữ, và một điểm rõ ràng khi nó nên bị vô hiệu hoá hoặc thay thế.

Câu hỏi thường gặp

Gradient boosting có giống với gradient descent không?

Nó áp dụng ý tưởng gradient descent trong không gian hàm, thêm các mô hình học giảm mất mát. Mô hình học cơ bản thường là một cây thay vì một vector tham số được cập nhật trực tiếp.

Tại sao lại sử dụng nhiều cây nông?

Mỗi cây thực hiện một chỉnh sửa hạn chế. Tổng của chúng có thể biểu diễn các hàm phức tạp trong khi độ sâu và tốc độ học kiểm soát mức độ mô hình khớp với các tương tác.

Tài liệu tham khảo chính

Blogger và lập trình viên với chuyên môn về Machine Learning và Deep Learning topics. Daniel hy vọng giúp đỡ người khác sử dụng sức mạnh của AI cho lợi ích xã hội.