LightGBM

Оновлено: 31.07.2023

Light GBM - це фреймворк, заснований на техніці дерев рішень, який можна використовувати для ранжування, класифікації та інших додатків машинного навчання.

Оскільки він заснований на алгоритмах дерев, він розбиває дерево на частини на основі найкращого збігу, на відміну від інших методів бустінгу, які розбивають дерево за рівнем або глибиною, а не за листками. Як наслідок, підхід за листками зменшує більше втрат, ніж метод за рівнями, що призводить до значно вищої точності, ніж будь-яка з існуючих стратегій бустінгу. Крім того, він шокуюче швидкий, саме тому він називається Light.

Розщеплення вздовж листка збільшує складність і може призвести до надмірної підгонки; однак цього можна уникнути, ввівши опцію максимальної глибини, яка задає глибину, на яку буде виконуватися розщеплення.

Переваги LightGBM

  • Більша швидкість та ефективність навчання: Light GBM використовує підхід на основі гістограми, який розбиває безперервні значення ознак на дискретні біни, прискорюючи процес навчання.
  • Нижче використання пам'яті: Неперервні значення замінюються дискретними, що призводить до меншого використання пам'яті.
  • Краще, ніж будь-який інший метод навчання з точки зору точності: Використовує стратегію розбиття на рівні, а не на рівні, для побудови значно складніших дерев, що є основним елементом для отримання більшої точності. Однак це може призвести до надмірної підгонки, якій можна запобігти, збільшивши параметр максимальної глибини.
  • Сумісність з великими наборами даних: У порівнянні з XGBOOST, він здатний працювати так само добре з великими наборами даних, вимагаючи при цьому значно менше часу на навчання.
  • Заохочується паралельне навчання.

Параметри

Дуже важливо ознайомитися з основними параметрами алгоритму, з яким ви працюєте. У документації LightGBM перераховано понад 100 параметрів, але вам не обов'язково вивчати їх усі. Давайте подивимось на різні параметри.

Параметри управління

  • Максимальна глибина: Це значення визначає глибину дерева, а також перенавчання моделі. Зменшіть максимальну глибину, якщо ваша модель здається переобтяженою.
  • Мінімальна кількість даних у листі: Мінімальна кількість записів у листі також використовується для запобігання перенавчання моделі.
  • Частка ознак: Визначає випадково вибраний параметр для створення дерев на кожній ітерації. Якщо значення дорівнює 0.7, це означає, що буде використано 70% параметра.
  • Частка заповнення: Ця функція перевіряє фракцію даних, яка буде використана в кожній ітерації. Часто використовується для прискорення навчання та уникнення надмірного припасування.
  • Раннє зупинення раунду: Якщо показник валідації даних покращився у попередніх раундах раунду дострокової зупинки. Це зменшить кількість непотрібних ітерацій.
  • Регуляризація задається лямбдою. Її значення змінюються від 0 до 1. Min gain to split: Ця змінна використовується для регулювання кількості розбиття дерева.
.

Параметри, які є важливими

  • Задача - описує завдання, яке буде виконуватися над даними. Він може або навчатися на даних, або робити прогнози на їх основі.
  • Підвищення- Тут вказується тип алгоритму.
  • Застосування- Ця опція визначає, чи буде виконуватися регресія або класифікація. Регресія є параметром програми за замовчуванням у LightGBM.
.

Налаштування

Налаштування параметрів - це важливий крок, який роблять аналітики даних, щоб отримати точну ефективність, швидкі результати та уникнути надмірного налаштування.

Якщо ви хочете отримати відмінну точність, зробіть наступне:

  • Використовуйте меншу швидкість навчання з великою кількістю ітерацій.
  • Максимуму bin слід надавати великі значення.
  • Присвоюйте велике число num leaves.
  • Обсяг даних для навчання слід збільшити.
  • Використовуйте характеристики категорій.

Якщо вам потрібно прискорити процес, зробіть наступне:

  • Максимальний бін повинен мати малі значення.
  • Використовуйте пакування, налаштувавши фракцію пакування та частоту.
  • Додискретизація ознак вмикається налаштуванням фракції ознак.
  • Використовуйте збереження бінарних даних для пришвидшення завантаження даних у майбутньому.
.

Коли мова йде про отримання швидких і високоточних результатів, LightGBM вважається дуже швидким алгоритмом і найбільш часто використовуваним алгоритмом у машинному навчанні. В інструкції до LightGBM є понад 100 налаштувань на вибір.