LightGBM, viết tắt của Light Gradient Boosting Machine, là một khuôn khổ tăng cường độ dốc mã nguồn mở, hiệu suất cao do Microsoft phát triển. Nó được sử dụng rộng rãi trong Machine Learning (ML) cho các tác vụ như phân loại, hồi quy và xếp hạng. LightGBM đặc biệt được biết đến với tốc độ và hiệu quả của nó, đặc biệt là khi làm việc với các tập dữ liệu lớn, thường mang lại độ chính xác cao trong khi tiêu thụ ít bộ nhớ hơn so với các thuật toán tăng cường khác. Nó xây dựng dựa trên các khái niệm được tìm thấy trong các thuật toán cây quyết định và là một phần của họ các phương pháp tăng cường độ dốc.
LightGBM đạt được tốc độ và hiệu quả như thế nào
LightGBM sử dụng một số kỹ thuật cải tiến để tối ưu hóa hiệu suất:
- Lấy mẫu một phía dựa trên độ dốc (GOSS): Phương pháp này tập trung vào các trường hợp dữ liệu có độ dốc lớn hơn (những trường hợp thường chưa được đào tạo đầy đủ) và loại bỏ ngẫu nhiên các trường hợp có độ dốc nhỏ, duy trì độ chính xác trong khi giảm đáng kể khối lượng dữ liệu để đào tạo.
- Gói tính năng loại trừ (EFB): Kỹ thuật này gói các tính năng loại trừ lẫn nhau (các tính năng hiếm khi có giá trị khác không cùng lúc, phổ biến trong dữ liệu thưa thớt) lại với nhau, giúp giảm số lượng tính năng mà không làm mất nhiều thông tin.
- Tăng trưởng cây theo từng lá: Không giống như tăng trưởng theo từng cấp độ truyền thống được sử dụng bởi nhiều thuật toán khác như XGBoost , LightGBM phát triển cây theo từng lá (theo chiều dọc). Nó chọn lá mà nó tin rằng sẽ mang lại mức giảm mất mát lớn nhất, điều này thường dẫn đến hội tụ nhanh hơn và độ chính xác tốt hơn, mặc dù đôi khi nó có thể dẫn đến quá mức trên các tập dữ liệu nhỏ hơn nếu không được điều chỉnh đúng cách thông qua điều chỉnh siêu tham số .
Những tối ưu hóa này giúp LightGBM cực kỳ nhanh và tiết kiệm bộ nhớ, cho phép đào tạo trên các tập dữ liệu lớn mà các nền tảng khác không thể làm được.
Các tính năng chính của LightGBM
LightGBM mang lại một số lợi thế cho những người thực hành ML:
- Tốc độ đào tạo nhanh: Đào tạo nhanh hơn đáng kể so với nhiều thuật toán tăng cường khác nhờ GOSS và EFB.
- Giảm sử dụng bộ nhớ: Tối ưu hóa việc xử lý dữ liệu và tích hợp tính năng giúp giảm dung lượng bộ nhớ.
- Độ chính xác cao: Thường đạt được kết quả tiên tiến nhất trên các tác vụ dữ liệu dạng bảng.
- Hỗ trợ GPU : Có thể tận dụng khả năng tăng tốc GPU để đào tạo nhanh hơn.
- Đào tạo song song và phân tán: Hỗ trợ đào tạo phân tán để xử lý các tập dữ liệu cực lớn trên nhiều máy. Bạn có thể khám phá tài liệu chính thức của LightGBM để biết thêm chi tiết.
- Xử lý các tính năng phân loại: Có thể xử lý trực tiếp các tính năng phân loại, đơn giản hóa quá trình xử lý dữ liệu trước .
So sánh với các Framework Boosting khác
Mặc dù LightGBM, XGBoost và CatBoost đều là các thư viện tăng cường độ dốc mạnh mẽ, nhưng chúng có những điểm khác biệt chính:
- Tree Growth: LightGBM sử dụng tăng trưởng theo từng lá, trong khi XGBoost thường sử dụng tăng trưởng theo từng cấp độ. CatBoost sử dụng cây quyết định oblivious (đối xứng).
- Tính năng phân loại: LightGBM và CatBoost có chức năng xử lý tích hợp cho các tính năng phân loại, thường đơn giản hóa quy trình làm việc so với XGBoost thường yêu cầu mã hóa một lần hoặc xử lý trước tương tự.
- Tốc độ & Bộ nhớ: LightGBM thường nhanh hơn và sử dụng ít bộ nhớ hơn XGBoost, đặc biệt là trên các tập dữ liệu lớn, do GOSS và EFB. CatBoost cũng có tính cạnh tranh, đặc biệt là vượt trội về hiệu suất xử lý tính năng theo danh mục.
Sự lựa chọn giữa chúng thường phụ thuộc vào đặc điểm tập dữ liệu cụ thể và yêu cầu của dự án.
Ứng dụng trong thế giới thực
Điểm mạnh của LightGBM khiến nó phù hợp với nhiều ứng dụng xử lý dữ liệu có cấu trúc hoặc dạng bảng:
- Phát hiện gian lận: Trong tài chính, LightGBM có thể xử lý nhanh chóng khối lượng lớn dữ liệu giao dịch để xác định các hoạt động có khả năng gian lận gần như theo thời gian thực, tận dụng tốc độ và độ chính xác của nó. Điều này phù hợp với xu hướng rộng hơn của AI trong tài chính .
- Dự đoán Tỷ lệ nhấp (CTR): Các nền tảng quảng cáo trực tuyến sử dụng LightGBM để dự đoán khả năng người dùng nhấp vào quảng cáo, tối ưu hóa vị trí đặt quảng cáo và tạo doanh thu dựa trên dữ liệu hành vi người dùng trên quy mô lớn. Bạn có thể tìm thấy ví dụ về cách sử dụng nó trong các cuộc thi Kaggle .
- Bảo trì dự đoán: Phân tích dữ liệu cảm biến từ máy móc công nghiệp để dự đoán các lỗi tiềm ẩn, cho phép lập lịch bảo trì chủ động và giảm thời gian chết. Điều này rất quan trọng trong các lĩnh vực như AI trong sản xuất .
- Hỗ trợ chẩn đoán y khoa: Hỗ trợ phân tích dữ liệu bệnh nhân (thông tin lâm sàng có cấu trúc) để dự đoán nguy cơ hoặc kết quả bệnh tật, đóng góp vào AI trong chăm sóc sức khỏe .
Trong khi LightGBM nổi trội với dữ liệu dạng bảng, nó khác biệt với các mô hình như Ultralytics YOLO , được thiết kế cho các tác vụ thị giác máy tính như phát hiện đối tượng và phân đoạn hình ảnh trên dữ liệu hình ảnh không có cấu trúc. Các công cụ như Ultralytics HUB giúp quản lý vòng đời của các mô hình thị giác máy tính như vậy. LightGBM vẫn là một công cụ quan trọng đối với các vấn đề ML cổ điển liên quan đến các tập dữ liệu có cấu trúc.