Что такое «начальные значения» в функции glm ()?

12

Какие параметры start, etastart, mustartв GLM () функцию ? Я искал в документах и ​​Интернете, но я не нашел четкого объяснения, что это значит.

Это похоже на байесовские «начальные значения» для цепочек, но я сомневаюсь, что это связано, так как функция glm () в R является статистикой частых ...

любознательный
источник

Ответы:

10

Это просто связано с техникой оценки - как получается набор оценок для параметров в модели. Обобщенная линейная модель подгоняется методом итеративно переоцененных наименьших квадратов. Для начала выбирается произвольный набор весов (часто все равны начальному), затем выбираются оценки параметров в линейном предикторе, которые минимизируют взвешенную сумму квадратов невязок. Эти оценочные параметры в линейном предикторе используются для оценки нового вектора средних. Отсюда выводится новый набор весов - например, в зависимости от того, какое семейство и функция связи используются, дисперсия ответа может быть пропорциональна среднему значению ответа, поэтому веса будут обратно пропорциональны среднему значению. Этот новый набор весов используется в новой итерации всей процедуры.

Таким образом, три аргумента для glm (), о которых вы спрашивали, являются просто способом для пользователя запустить процедуру в некоторой произвольной точке, вместо того, чтобы позволить ему выбирать свою собственную начальную точку по умолчанию. Из файла справки, на который вы ссылаетесь:

  • start - начальные значения параметров в линейном предикторе.
  • etastart - начальные значения для линейного предиктора.
  • mustart - начальные значения для вектора средних.
Питер Эллис
источник
Спасибо, Питер! Это полностью напоминает байесовскую процедуру MCMC! Я думал, что пакеты для часто используемых программ более умны и не работают таким образом :-) Это то, что меня смутило ... почему на земле есть что-то вроде начальных значений в пакете для часто используемых пользователей :-)
Любопытно,
1
Иногда без начальных значений вы можете не сойтись или сойтись на локальном максимуме, который не является глобально оптимальным решением. Так что хорошо иметь возможность попробовать разные начальные значения.
Питер Эллис
Я начинаю чувствовать, что даже glm()байесовский :-)
Любопытно
4
@Curious Это не особенно байесовский. Все, что вы просите, - это чтобы программный пакет нашел конкретную точку с помощью техники поиска. Начальные значения просто говорят ему, с чего начать - он не придает особого значения этому ответу, но может помочь, если он блуждает по сложному пространству. Нет ничего особенно байесовского в том, что «я начну, скажем, с 0,05 и буду работать оттуда…»
Fomite