Заходи змінного значення у випадкових лісах


40

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

importance()Функція дає два значення для кожної змінної: %IncMSEі IncNodePurity. Чи є прості тлумачення цих двох значень?

Бо, IncNodePurityзокрема, це просто сума збільшення RSS після видалення цієї змінної?


1
Ви подивилися ?importance? Там є пояснення того, що означають обидва заходи ...
Нік Саббе

2
@Nick Sabbe, у мене є, і я намагаюся обернути їх головою. Мені було цікаво, чи є для них приємні інтуїтивні інтерпретації.
dcl

Відповіді:


42

Перший можна "інтерпретувати" так: якщо в вашій поточній моделі важливий предиктор, то присвоєння інших значень для цього прогноктора випадковим чином, але "реалістично" (тобто: переведення значень цього прогноктора на ваш набір даних) має мати негативний вплив щодо прогнозування, тобто: використання тієї самої моделі для прогнозування даних, що є однаковими, крім однієї змінної, повинно давати гірші прогнози.

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

Для другого: при кожному розщепленні ви можете підрахувати, наскільки цей розкол зменшує домішки вузлів (для дерев регресії, дійсно, різниці між RSS до і після розбиття). Це підсумовується для всіх розділень для цієї змінної, для всіх дерев.

Примітка: добре прочитане - Елементи статистичного навчання Хасті, Тібшірані та Фрідмана ...


3
Привіт, у мене зараз відкрита книга :)
dcl

Що означає RSS?
DavideChicco.it


10

Випадкові показники важливості для лісу, реалізовані в пакеті randomForest в R, мають химерність, оскільки корельовані прогнози отримують низькі значення важливості.

http://bioinformatics.oxfordjournals.org/content/early/2010/04/12/bioinformatics.btq134.full.pdf

У мене є модифікована реалізація випадкових лісів на CRAN, яка реалізує їх підхід до оцінки емпіричних значень p та помилкових показників виявлення, тут

http://cran.r-project.org/web/packages/pRF/index.html


1
чи пояснює це різний вихід змінної важливості, якщо ви використовуєте randomForest з пакетом caret, як caret::train(method="rf", importance = TRUE, ...)?
Agile Bean
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.