Выбор переменной в пакете земля R для MARS

Я работаю над моделью MARS, используя пакет Земли в R. Я хочу форсировать все переменные в модели. У меня есть 14 предсказателей, но в результате я получаю только 13 предсказателей. Ниже мой код.

mdl <- earth(x,y,nprune=10000, nk=1000, degree=1, thresh=1e-7,
        linpreds=c(1:14), penalty = -1,  ponly=T, trace = 0)

Вот мои вопросы

  1. Могу ли я заставить переменные вместо некоторого выбора переменных. Если да, то как?
  2. Как только я начну исследовать петли в данных, могу ли я вручную исправить узлы и затем получить оценки на их основе.

Спасибо за помощь.

1 ответ

Вы не можете принудить предикторов к модели Земля /MARS. Основой алгоритма MARS является автоматический выбор предикторов.

Но можно увеличить вероятность того, что все предикторы войдут в модель, подорвав нормальный алгоритм, установив thresh=0 и штраф =-1. Обратитесь к странице справки о земле и найдите "порог" и "штраф" в земной виньетке за подробностями и примерами.

Тем не менее, процитируем эту виньетку: "Обычно лучше не подрывать стандартный алгоритм MARS, играя с параметрами настройки, такими как порог, штраф и конечный период. Помните, что мы не ищем модель, которая лучше всего соответствует обучающим данным, а скорее модель, которая наилучшим образом соответствует базовому распределению ".

Вы не можете вручную исправить узлы. Еще раз, автоматический выбор узлов, если это присуще алгоритму MARS. Однако аргументы minspan и endpan дают вам некоторую гибкость в автоматическом размещении узлов, например, minspan=-3 позволит использовать до 3 равноотстоящих узлов на один предиктор.

Другие вопросы по тегам