Алгоритм градиентного бустинга
Во всех случаях, будь то описанные выше или описанные в первой главе алгоритмы, мы сталкиваемся с проблемой слабых или сильных алгоритмов. При достижения абсолютного предела работа алгоритмов машинного
обучения прекращается. В то же время авторами [130] был эмпирически доказан тот факт, что качество предсказаний того или иного алгоритма машинного обучения можно повысить вследствие увеличения композиций алгоритмов распознавания. Проблемой такого решения стало увеличение сложности самого алгоритма [131].
Исследования деления алгоритмов машинного обучения на слабые и сильные вскоре привели к выводу, что любой слабый алгоритм можно усилить лишь тем, что построить правильную композицию. То есть, эффективность и простота данного алгоритма получила очевидное преимущество. В 2001 году в работе [132] алгоритм был обобщен и получил название градиентный бустинг.
Задача классификации сетевого трафика на основе градиентного бустинга формулируется следующим образом:
входными данными будут: обучающая выборка {𝑥1, … , 𝑥𝑛}, истинные значения меток каждого объекта {𝑦1,, … , 𝑦𝑚}, количество итераций 𝑀;
выбор функции потери 𝐿(𝑦, 𝑓);
выбор базового алгоритма ℎ(𝑥, 𝜃);
подбор гиперпараметров.
С помощью алгоритма градиентного бустинга необходимо восстановить зависимость 𝑦 = 𝑓(𝑥) путем приближения 𝑓̂(𝑥), для минимизации используем функцию потерь L(𝑦, 𝑓(𝑥)):
𝑓̂(𝑥) = 𝑎𝑟𝑔 min ➪𝑥,𝑦[𝐿(𝑦, 𝑓(𝑥))], (2.10)
𝑓(𝑥)
при этом общая функция ошибки будет суммой ошибок на каждом тренировочном примере:
𝑖=1
𝐸(𝜃) = ∑𝑇 𝐸𝑖(𝑓(𝑥, 𝜃), 𝑦), (2.11)
где 𝜃-ограничение параметра поиска функции.
Алгоритм градиентного бустинга над решающими деревьями объединяет
𝑡=1
несколько деревьев регрессии ∑𝑇
𝑓𝑡(𝑥)
для аппроксимации окончательной
модели
𝑡=1
𝑓𝑇 (𝑥) = ∑𝑇
Деревья регрессии можно выразить как
𝑓𝑡(𝑥)
(2.12)
𝑤𝑞(𝑥), 𝑞 ∈ {1, 2, … , 𝐽}, (2.13) где 𝐽 – это количество листьев, 𝑞 – это правила принятия решающего дерева, а
𝑤 – вектор, обозначающий вес выборки.
Следовательно, градиентный бустинг на решающих деревьях будет обучаться в аддитивной форме на этапе 𝑡 следующим образом:
𝑖=1
Γ𝑡 = ∑𝑛 𝐿(𝑦𝑖, 𝐹𝑡−1(𝑥𝑖) + 𝑓𝑡(𝑥𝑖)). (2.14)
Пусть 𝐼𝑗 набор листа 𝑗:
Γ = ∑𝑗
((∑ 𝑔 ) 𝜔 + 1 (∑ ℎ
+ 𝜆)𝜔2), (2.15)
𝑡 𝑗=1
𝑖∈𝐼𝑗 𝑖 𝑗 2
𝑖∈𝐼𝑗 𝑖 𝑗
где 𝑔𝑖 и ℎ𝑖 являются функциями потерь первого и второго порядка.
Целевая функция градиентного бустинга имеет вид:
2
1 (∑ 𝑔 )
2
(∑ 𝑔 )
(∑ 𝑔 )2
G = ( 𝑖∈𝐼𝐿 𝑖 + 𝑖∈𝐼𝑅 𝑖 − 𝑖∈𝐼 𝑖 ), (2.16)
2 ∑𝑖∈𝐼𝐿 ℎ𝑖+𝜆
∑𝑖∈𝐼𝑅 ℎ𝑖+𝜆
∑𝑖∈𝐼 ℎ𝑖+𝜆
где 𝐼𝐿 и 𝐼𝑅 наборы данных левой и правой ветвей дерева [133].
Явными преимуществами алгоритма градиентного бустинга являются высокая вариативность алгоритма, возможность самостоятельно выбрать функцию потерь, возможность выбора базового алгоритма для обучения модели градиентного бустинга.
Недостатком данного алгоритма является трудоемкость, особенно если необходимо построить множество алгоритмов для композиций. В то же время для ускорения работы градиентного бустинга возможно применение различных алгоритмов оптимизации.
Таким образом, для задачи детектирования DDoS атак целесообразно использовать алгоритм градиентного бустинга. Тем не менее, необходимо построить различные модели на основе всех представленных алгоритмов машинного обучения с учителем для обоснованности выбора алгоритма.
Do'stlaringiz bilan baham: |