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 Research 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, đặc biệt là khi xử lý các tập dữ liệu lớn ( Big Data ). LightGBM nổi tiếng về tốc độ và hiệu quả, thường đạt được độ 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 , xây dựng lặp đi lặp lại một tập hợp các trình học yếu để tạo ra một mô hình dự đoán mạnh.
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 và xử lý dữ liệu quy mô lớn một cách hiệu quả:
- Gradient-based One-Side Sampling (GOSS): Phương pháp này tập trung vào các trường hợp dữ liệu có gradient lớn hơn (những trường hợp hiện đang được dự đoán kém) trong khi loại bỏ ngẫu nhiên các trường hợp có gradient nhỏ. Điều này vẫn giữ được độ chính xác trong khi giảm đáng kể lượng dữ liệu cần thiết để đào tạo từng cây.
- Gói tính năng độc quyền (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) lại với nhau, giúp giảm hiệu quả số lượng tính năng ( giảm chiều ) mà không làm mất thông tin quan trọng. Điều này giúp tăng tốc quá trình đào tạo bằng cách giảm độ phức tạp của việc tìm điểm phân chia tốt nhất.
- 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 mở rộng cây theo từng lớp, LightGBM phát triển cây theo từng lá. Nó chọn lá có mức giảm mất mát tối đa để chia tách, dẫn đến hội tụ nhanh hơn và có khả năng là cây phức tạp hơn, mặc dù đôi khi có thể dẫn đến quá mức nếu không được hạn chế đúng cách. Bạn có thể tìm hiểu thêm về tăng trưởng theo từng lá trong tài liệu chính thức .
Những tối ưu hóa này, kết hợp với việc triển khai hiệu quả tận dụng các kỹ thuật như thuật toán dựa trên biểu đồ, 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 khuôn khổ khác sử dụng thuật toán tối ưu hóa tiêu chuẩn có thể không thực hiện đượ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 độ và hiệu quả: Tốc độ đào tạo nhanh hơn đáng kể và sử dụng ít bộ nhớ hơn so với nhiều nền tảng tăng cường khác.
- Độ chính xác cao: Thường mang lại kết quả tiên tiến nhất về các tác vụ dữ liệu dạng bảng.
- Hỗ trợ GPU : Hỗ trợ đào tạo trên GPU để tăng tốc hơn nữa.
- Đào tạo song song và phân tán: Có khả năng xử lý các tập dữ liệu cực lớn thông qua đào tạo phân tán trên nhiều máy.
- Xử lý tính năng theo danh mục: Có thể xử lý trực tiếp các tính năng theo danh mục, thường loại bỏ nhu cầu về kỹ thuật tính năng mở rộng như mã hóa một lần.
- Chính quy hóa: Bao gồm các tham số để chính quy hóa (như L1 và L2) để ngăn ngừa tình trạng quá khớp.
- Xử lý dữ liệu quy mô lớn: Được thiết kế để hoạt động hiệu quả với các tập dữ liệu rất lớn có thể không vừa với bộ nhớ.
- Điều chỉnh siêu tham số: Cung cấp nhiều tham số khác nhau có thể được điều chỉnh thông qua điều chỉnh siêu tham số để tối ưu hóa hiệu suất cho các tác vụ cụ thể.
Tham khảo tài liệu chính thức của LightGBM và kho lưu trữ GitHub để biết cách sử dụng chi tiết và các tính năng nâng cao. Việc xử lý dữ liệu trước đúng cách vẫn quan trọng để có kết quả tối ưu.
So sánh với các nền tảng tăng cường khác
LightGBM thường được so sánh với các thư viện tăng cường độ dốc phổ biến khác như XGBoost và CatBoost . Những điểm khác biệt chính bao gồm:
- Tốc độ: LightGBM thường được coi là nhanh hơn XGBoost, đặc biệt là trên các tập dữ liệu lớn, do các kỹ thuật GOSS và EFB của nó. Tốc độ của CatBoost có thể cạnh tranh, đặc biệt là với các tính năng phân loại.
- Sử dụng bộ nhớ: LightGBM thường sử dụng ít bộ nhớ hơn XGBoost.
- Tính năng phân loại: CatBoost có khả năng xử lý tích hợp tinh vi cho các tính năng phân loại, thường vượt trội hơn LightGBM và XGBoost (yêu cầu xử lý trước như mã hóa one-hot) trong các tập dữ liệu có nhiều biến phân loại. LightGBM cung cấp khả năng xử lý trực tiếp nhưng có thể kém mạnh mẽ hơn phương pháp của CatBoost.
- Tăng trưởng cây: LightGBM sử dụng phương pháp tăng trưởng theo từng lá, trong khi XGBoost và CatBoost thường sử dụng phương pháp tăng trưởng theo cấp độ (mặc dù XGBoost cũng cung cấp tùy chọn theo từng lá).
- Siêu tham số: Mỗi thư viện có một bộ siêu tham số riêng cần điều chỉnh. CatBoost thường yêu cầu ít điều chỉnh hơn để có kết quả tốt.
Sự lựa chọn giữa chúng thường phụ thuộc vào đặc điểm cụ thể của tập dữ liệu (kích thước, loại tính năng) và yêu cầu của dự án. Các nguồn như bài viết so sánh này cung cấp thêm thông tin chi tiết.
Ứ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 liên quan đến dữ liệu có cấu trúc hoặc dạng bảng :
- Phát hiện gian lận: Trong lĩnh vực tài chính ( AI trong tài chính ), LightGBM có thể xử lý nhanh hàng triệu bản ghi giao dịch ( mô hình dự đoán ) để xác định các mẫu tinh vi chỉ ra hoạt động gian lận gần như theo thời gian thực. Tốc độ của nó rất quan trọng để can thiệp kịp thời. Các hệ thống phát hiện gian lận được hưởng lợi rất nhiều từ hiệu quả của nó.
- Bảo trì dự đoán: Các nhà sản xuất ( AI trong sản xuất ) sử dụng LightGBM để phân tích dữ liệu cảm biến từ máy móc. Bằng cách đào tạo dữ liệu lịch sử về hiệu suất và lỗi thiết bị, mô hình có thể dự đoán sự cố tiềm ẩn trước khi chúng xảy ra, cho phép bảo trì chủ động và giảm thời gian chết. Tìm hiểu thêm về các khái niệm bảo trì dự đoán .
Các ứng dụng phổ biến khác bao gồm dự đoán tỷ lệ khách hàng rời bỏ, hệ thống đề xuất , dự đoán tỷ lệ nhấp chuột, chấm điểm tín dụng và dự báo nhu cầu. Hiệu suất của nó đã khiến nó trở thành lựa chọn phổ biến trong các cuộc thi khoa học dữ liệu, chẳng hạn như các cuộc thi được tổ chức trên Kaggle .
Mặc dù LightGBM vượt trội với dữ liệu dạng bảng cho các tác vụ ML cổ điển, nhưng nó lại khác biệt so với các mô hình như Ultralytics YOLO . YOLO mô hình là kiến trúc học sâu (DL) chuyên biệt được thiết kế cho các tác vụ thị giác máy tính (CV) như phát hiện đối tượng , phân loại hình ảnh và phân đoạn hình ảnh trên dữ liệu hình ảnh hoặc video không có cấu trúc. Các nền tảng như Ultralytics HUB tạo điều kiện thuận lợi cho việc phát triển và triển khai các mô hình CV như vậy. LightGBM vẫn là một công cụ quan trọng cho các vấn đề về dữ liệu có cấu trúc, trong đó tốc độ và hiệu quả trên các tập dữ liệu lớn là tối quan trọng. Bạn có thể khám phá bài báo nghiên cứu LightGBM gốc để biết thêm chi tiết kỹ thuật.