Вот еще один неполный ответ, который даже не касается непосредственно GLM ... В моем очень ограниченном опыте моделирования структурных уравнений (SEM) я подобрал пару идей, которые, я надеюсь, могут что-то добавить к обсуждению. Пожалуйста , имейте в виде , в течение всего этого я говорю из (ограниченного) опыта работы с SEM, не GLM самого по себе , и я довольно невежествен о том, может ли и где это различие становится важным. Я больше пользователь статистики, чем статистик, поэтому я также не уверен, что эти идеи будут применяться ко всем или даже к большинству данных; Я только обнаружил, что они применили к большинству моих.
Во-первых, я бы повторил акцент @ StephanKolassa на важности моделирования того, что вы уже знаете. Вы признаете это в качестве отступления, но я думаю, что преимущества, о которых вы спрашиваете, - это преимущества моделирования того, что вы знаете. Как таковые, они значимо отражают то, что ваша результирующая модель обладает информацией о ковариационной структуре, которую вы добавили.
В СЭМ я обнаружил (через ограниченный опыт, а не через теоретические занятия):
Преимущества
Моделирование ковариационной структуры улучшает качество соответствия (GoF), если ковариация намного сильнее, чем ее стандартная ошибка (то есть, если симметричный путь является значительным). Это означает, что вы обычно не будете улучшать GoF, моделируя корреляции, близкие к нулю, а мультиколлинеарность может вызвать проблемы для GoF, потому что это увеличивает стандартные ошибки.
Я еще не пытался получить данные для прогнозирования, но моя интуиция заключается в том, что фиксация ковариаций в нуле в вашей модели аналогична прогнозированию DV путем комбинирования набора отдельных уравнений линейной регрессии с одним IV. В отличие от этого подхода, множественная регрессия учитывает ковариацию в IV при создании модели уравнений для прогнозирования DV. Это, безусловно, улучшает интерпретируемость, отделяя прямые эффекты от косвенных эффектов, которые происходят полностью в пределах включенного набора IV. Честно говоря, я не уверен, что это обязательно улучшает прогнозирование DV. Будучи пользователем статистики, а не статистиком, я собрал воедино следующую функцию симуляционного тестирования, чтобы дать неполный ответ (очевидно, «Да, точность прогнозирования улучшается, когда модель включает в себя IV ковариацию») в этом, мы надеемся, аналогичном случае ...
simtestit=function(Sample.Size=100,Iterations=1000,IV.r=.3,DV.x.r=.4,DV.z.r=.4) {
require(psych); output=matrix(NA,nrow=Iterations,ncol=6); for(i in 1:Iterations) {
x=rnorm(Sample.Size); z=rnorm(Sample.Size)+x*IV.r
y=rnorm(Sample.Size)+x*DV.x.r+z*DV.z.r
y.predicted=x*lm(y~x+z)$coefficients[2]+z*lm(y~x+z)$coefficients[3]
bizarro.y.predicted=x*lm(y~x)$coefficients[2]+z*lm(y~z)$coefficients[2]
output[i,]=c(cor(y.predicted,y)^2,cor(bizarro.y.predicted,y)^2,
cor(y.predicted,y)^2>cor(bizarro.y.predicted,y)^2,cor(x,z),cor(x,y),cor(y,z))}
list(output=output,percent.of.predictions.improved=100*sum(output[,3])/Iterations,
mean.improvement=fisherz2r(mean(fisherz(output[,1])-fisherz(output[,2]))))}
# Wrapping the function in str( ) gives you the gist without filling your whole screen
str(simtestit())
Nзнак равно Iterations
NSample.Size
z
знак равно x
+y
знак равно x
+ z
+y
x
z
1y.predicted
2bizarro.y.predicted
output
Iterations
р2121 > 2рx
y
z
output
simtestit()
str( )
р21рpsych
р2р2IV.r
) больше. Поскольку вы, вероятно, более знакомы с вашей функцией GLM, чем я (а это совсем не так), вы, вероятно, можете изменить эту функцию или использовать основную идею для сравнения прогнозов GLM по любому количеству IV, которое вы хотите, без особых проблем. Если предположить, что это будет (или действительно) получится таким же образом, то, похоже, что основной ответ на ваш второй вопрос, вероятно, да, но насколько это зависит от того, насколько сильно коварица IV. Различия в погрешности выборки между сохраненными данными и данными, используемыми для подгонки модели, могут подавить улучшение ее прогностической точности в последнем наборе данных, потому что, опять же, улучшение кажется небольшим, если корреляции IV не сильны (по крайней мере, в максимально базовый случай только с двумя IV).
Задание свободного пути для ковариации между IV в модели означает запрос функции подбора модели для оценки коэффициента этого пути, который представляет степень ковариации между IV. Если ваша функция GLM позволяет вам указать модель, в которой ковариация между IV свободно оценивается, а не фиксируется на нуле, то, как вы надеетесь, ваша задача состоит в том, чтобы выяснить, как это сделать и как вывести свою функцию на вывод эта оценка. Если ваша функция оценивает ковариации IV по умолчанию, ваша задача еще больше упрощается до последнего вопроса (как в случае с lm( )
).
Расходы
Да, свободная оценка ковариации между IV означает, что алгоритм подбора модели должен проделать определенную работу, чтобы оценить коэффициент этого пути. Не указывать этот путь в модели обычно означает фиксацию коэффициента до нуля, что означает, что алгоритм подбора модели не должен оценивать коэффициент. Оценка дополнительных параметров ковариации означает, что для подгонки модели в целом потребуется больше времени. В моделях, оценка которых уже занимает много времени, дополнительное время может быть значительным, особенно если у вас много ИВ.
Да, свободно оцененная ковариационная структура подразумевает оценки параметров. Популяции имеют параметры ковариации, поэтому, если вы оцениваете ковариации населения, вы оцениваете параметры. Однако, если ваша модель подходит намного лучше, потому что вы предпочитаете оценивать нетривиальную корреляцию, а не фиксировать ее на нуле, вы, вероятно, можете ожидать улучшения информационных критериев Акаике и Байеса, как и другие критерии, включающие GoF. Я не знаком с критерием отклонения информации ( DIC, на который вы ссылаетесь, верно?), Но, судя по его странице в Википедии , он также включает GoF и штраф за сложность модели.
Поэтому GoF просто необходимо улучшить пропорционально больше, чем сложность модели, чтобы улучшить DIC. Если этого не произойдет в целом, критерии, подобные этим, которые штрафуют за сложность модели, ухудшатся по мере того, как вы будете оценивать больше IV ковариаций. Это может быть проблемой, если, например, ваши IV не коррелируют, но ковариационная структура в любом случае свободно оценивается, потому что вы думаете, что IV могут коррелировать, или потому что это настройка по умолчанию вашей функции. Если у вас есть предварительные теоретические основания предполагать, что корреляция равна нулю, и вы не хотите, чтобы ваша модель проверяла это предположение, это один из случаев, когда вы могли бы оправдаться, установив путь к нулю. Если ваша предыдущая теория примерно верна,
Не знаю, с какой функцией вы работаете, но еще раз, я уверен, что я не знаком с ней, поэтому я уверен, что этот ответ можно улучшить, особенно мой ответ на второй вопрос о преимуществах (с одной стороны, математический доказательство того, что я отвечаю с помощью симуляции о множественной регрессии, вероятно, доступно где-то там). Я даже не знаком с GLM в целом (при условии, что вы имеете в виду обобщенное , а не общее линейное моделирование, как подсказывает тег), поэтому я надеюсь, что кто-то прокомментирует или отредактирует этот ответ, если различия с SEM лишают законной силы мои ответы на ваши вопросы совсем.
Тем не менее, кажется, что мы десять месяцев ждали, пока гуру заговорят, так что, если это не заставит их это сделать, то, я полагаю, это придется делать самому. Дайте мне знать, если у вас есть особая функция GLM, с которой вы хотите, чтобы я связывался с R. Возможно, мне удастся выяснить, как ответить на 3-й вопрос более конкретно для вашего приложения, если вы можете указать интересующую вас функцию GLM в R. Я также не являюсь экспертом в симуляционном тестировании, но я думаю, что остальные четыре ваших вопроса могут быть протестированы на сим (более прямо) тоже.