Коли увійти / випробувати свої змінні під час використання випадкових лісових моделей?


13

Я роблю регресію, використовуючи випадкові ліси для прогнозування цін на основі декількох ознак. Код пишеться на Python за допомогою Scikit-learn.

Як ви вирішите, чи слід трансформувати свої змінні, використовуючи exp/ logперед тим, як використовувати їх, щоб відповідати регресійній моделі? Чи потрібно це використовувати підхід Ансамблю, такий як випадковий ліс?



3
Я думаю, що це дещо відрізняється від цього питання, через випадковий аспект лісу / ансамблю, але, можливо, питання можна було б переформулювати після перегляду іншої публікації.
Пітер Флом - Відновіть Моніку

@PeterFlom, чи можете ви допомогти мені переробити питання? Я недостатньо досвідчений у цій галузі :)
Nyxynyx

Те, як більшість людей використовують термін «ансамбль» РФ, - це лише 1 потенційний внесок до ансамблю.
Hack-R

Відповіді:


16

Спосіб побудови випадкових лісів інваріантний монотонним перетворенням незалежних змінних. Розщеплення будуть повністю аналогічними. Якщо ви просто прагнете до точності, ви не побачите жодного покращення в цьому. Насправді, оскільки випадкові ліси здатні знаходити складні нелінійні відносини (чому ви називаєте цю лінійну регресію?) Та змінну взаємодію на ходу, якщо ви перетворите свої незалежні змінні, ви можете згладити інформацію, яка дозволяє цьому алгоритму робити це правильно.

Іноді випадкові ліси не трактуються як чорний ящик і використовуються для умовиводу. Наприклад, ви можете інтерпретувати заходи важливості змінної, які вона надає, або обчислити якісь граничні ефекти вашої незалежної змінної на залежну змінну. Зазвичай це візуалізується як графіки часткової залежності. Я впевнений, що на цю останню річ сильно впливає масштаб змінних, що є проблемою при спробі отримати інформацію більш описового характеру з Випадкових лісів. У цьому випадку це може допомогти вам перетворити змінні (стандартизувати), що може зробити схеми часткової залежності порівнянними. Не повністю впевнений у цьому, доведеться подумати над цим.

Не так давно я намагався передбачити дані підрахунку за допомогою Random Forest, регресування на квадратному корені та природний журнал залежної змінної допомогли трохи, не дуже, і недостатньо, щоб дозволити мені зберегти модель.

Деякі пакети, де ви можете використовувати випадкові ліси для висновку:

https://uc-r.github.io/lime

https://cran.r-project.org/web/packages/randomForestExplainer/index.html

https://pbiecek.github.io/DALEX_docs/2-2-useCaseApartmetns.html


6

Наголошуючи @JEquihua, точність прогнозування випадкових лісів не покращиться.

Також зауважте, якщо ви збережете як вихідний предиктор, так і трансформований предиктор (як це часто робиться в лінійній регресії), це може спричинити проблеми. Це тому, що РФ випадковим чином вибирає підмножину змінних для вирощування кожного дерева, і ви по суті поміщаєте трансформовану змінну у два рази. Якщо це сильний провісник, він звикне, і ваші випадкові ліси не будуть настільки неспорідненими, як це могло бути, що призведе до більшої дисперсії.


1
Включення як перетвореного, так і нетрансформованого прогноктора в будь-яку модель - жахлива ідея. Вони ідеально колінеарні і, безумовно, псуються з вашою моделлю, будь то випадковий ліс або лінійна регресія.
mkt -
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.