Питання
Я намагаюся зрозуміти, як прогноз зберігається в інтервалі коли робимо бінарну класифікацію з підвищенням градієнта.
Припустимо, що ми працюємо над проблемою бінарної класифікації, і наша цільова функція - втрата журналу, , де - цільова змінна а - наша поточна модель.
Під час навчання наступного слабкого учня таким, що нашою новою моделлю є , який механізм повинен тримати ? Або, можливо, більш відповідне питання, чи існує такий механізм?
Більше інформації про те, що я роблю
Я намагаюся реалізувати збільшення градієнта, використовуючи дерева регресії. Що я уникаю, це помножити на коефіцієнт c ∈ [ 0 , c max ] , так що H + c max h не йде нижче нуля або вище одиниці, і я вибираю c в цьому діапазоні, що мінімізує функція втрат.
Це спричиняє таку проблему: Після декількох раундів у мене є одна точка, яка ідеально класифікована, і найкращий доступний розкол для натискання класифікатора в напрямку градієнта хоче просунути цю точку вище однієї, що я переконуюсь, що цього не відбудеться встановлення . Таким чином, всі наступні ітерації виберуть однаковий розріз і однаковий c = 0 .
Я спробував звичайні практики регуляризації
- Зниження швидкості навчання шляхом множення на μ = 0,01 . Це просто затримує проблему.
- Підгрупуючи простір функцій, але деякі пункти класифікувати дуже просто, вони відмічають майже кожне поле у "Це позитив?" форми, і майже кожен «добрий розкол» показує таку поведінку.
Я думаю, що це не проблема параметрів, і повинен бути більш надійний спосіб виправити це. Я не відкидаю можливості порушення моєї реалізації, але я не знайшов нічого, щоб вирішити цю проблему.
Те, що ми маніпулюємо, в умовах логістичних втрат, має бути ймовірністю, тож як ми цього уникнути?
Моя інтуїція полягала б у тому, щоб поставити модель, яку ми будуємо, , в сигмовидну функцію такою, що вона обмежена [ 0 , 1 ] , і я думаю, що це спрацювало б, але я хочу знати, чи є інші рішення. Оскільки збільшення градієнта здається успішно використаним у класифікаційних завданнях, має існувати "правильне" (тобто з виправданням) рішення.