Я пытаюсь внедрить RPART, чтобы потом что-то сделать.Пока что только для регрессионной (ANOVA) модели.Все кажется довольно чистым, кроме одного - как RPART выбирает наилучшее разделение среди нескольких предикторов с одинаковым улучшением.
Например, у меня есть три предиктора для начального разделения, которые дают идентичные результаты (такое же улучшение, такое же разделение, идеальные суррогаты)друг другу) - скажем X310
, X312
и X317
.RPART по умолчанию выбирает X312
, но это не первый предиктор в последовательности столбцов.Если я переставлю столбцы, RPART выберет либо X312
, либо X317
, но не X310.
Вот пример сводки, когда он выбирает X312
:
Node number 1: 100 observations, complexity param=0.7123717
mean=0.5155042, MSE=0.08350028
left son=2 (47 obs) right son=3 (53 obs)
Primary splits:
X312 < 0.03673 to the left, improve=0.7123717, (0 missing)
X317 < 0.0187715 to the left, improve=0.7123717, (0 missing)
X310 < 0.0440585 to the left, improve=0.7123717, (0 missing)
X318 < 0.0167545 to the left, improve=0.7123435, (0 missing)
X323 < 0.0101715 to the left, improve=0.7092180, (0 missing)
И когда он выбирает X317
:
Node number 1: 100 observations, complexity param=0.7123717
mean=0.5155042, MSE=0.08350028
left son=2 (47 obs) right son=3 (53 obs)
Primary splits:
X317 < 0.0187715 to the left, improve=0.7123717, (0 missing)
X312 < 0.03673 to the left, improve=0.7123717, (0 missing)
X310 < 0.0440585 to the left, improve=0.7123717, (0 missing)
X318 < 0.0167545 to the left, improve=0.7123435, (0 missing)
X323 < 0.0101715 to the left, improve=0.7092180, (0 missing)
И снова все идентично,Я пытался посмотреть на код C для RPART, но не смог найти никаких дополнительных проверок.Буду очень признателен за любые идеи.