Нелинейная оценка смешанных эффектов
beta = nlmefit(X,y,group,V,fun,beta0)
[beta,PSI] = nlmefit(X,y,group,V,fun,beta0)
[beta,PSI,stats] = nlmefit(X,y,group,V,fun,beta0)
[beta,PSI,stats,B] = nlmefit(X,y,group,V,fun,beta0)
[beta,PSI,stats,B] = nlmefit(X,y,group,V,fun,beta0,'Name',value)
beta = nlmefit(X,y,group,V,fun,beta0) подходит для нелинейной регрессионной модели смешанных эффектов и возвращает оценки фиксированных эффектов в beta. По умолчанию nlmefit подходит модель, в которой каждый параметр является суммой фиксированного и случайного эффекта, а случайные эффекты - некоррелированными (их ковариационная матрица диагональна).
X является матрицей n-за-ч n наблюдений на h предикторах.
y - вектор ответов n-на-1.
group является переменной группировки, указывающей m групп в наблюдениях. group является категориальной переменной, числовым вектором, символьной матрицей со строками для имен групп, строковым массивом или массивом ячеек символьных векторов. Дополнительные сведения о группировании переменных см. в разделе Группирование переменных.
V является матрицей m-на-g или массивом ячеек предикторов, специфичных для группы g. Это предикторы, которые принимают одинаковое значение для всех наблюдений в группе. Строки V присваиваются группам с помощью grp2idx, в соответствии с порядком, указанным grp2idx(group). Использовать массив ячеек для V если предикторы групп различаются по размеру между группами. Использовать [] для V если нет предикторов, специфичных для группы.
fun является дескриптором функции, которая принимает предикторные значения и параметры модели и возвращает подгоняемые значения. fun имеет форму
yfit = modelfun(PHI,XFUN,VFUN)
Аргументы следующие:
PHI - вектор 1 на p параметров модели.
XFUN - Массив предикторов k-by-h, где:
k = 1, если XFUN является одной строкой X.
k = ni, если XFUN содержит строки X для одной группы размера ni.
k = n, если XFUN содержит все строки X.
VFUN - Групповые предикторы, задаваемые одним из:
Вектор 1 на g, соответствующий одной группе и одной строке V.
Массив n-by-g, где j-я строка - V (I,:), если j-е наблюдение находится в группе I.
Если V пуст, nlmefit требования modelfun только с двумя входами.
yfit - Вектор k-by-1 соответствующих значений
Когда либо PHI или VFUN содержит одну строку, которая соответствует всем строкам в двух других входных аргументах.
Примечание
Если modelfun может вычислять yfit для более чем одного вектора параметров модели на вызов, используйте 'Vectorization' параметр (описанный ниже) для повышения производительности.
beta0 является вектором q-на-1 с начальными оценками для q фиксированных эффектов. По умолчанию q - количество параметров модели p.
nlmefit подгоняет модель путем максимизации аппроксимации до предельной вероятности с интегрированными случайными эффектами, предполагая, что:
Случайные эффекты являются многомерными, обычно распределенными и независимыми между группами.
Ошибки наблюдения независимы, распределены одинаково нормально и не зависят от случайных эффектов.
[beta,PSI] = nlmefit(X,y,group,V,fun,beta0) также возвращает PSI, r-by-r оцененная ковариационная матрица для случайных эффектов. По умолчанию r равно числу параметров модели p.
[beta,PSI,stats] = nlmefit(X,y,group,V,fun,beta0) также возвращает stats, структура с полями:
dfe - Степени свободы модели с ошибками
logl - Максимальная логистика для установленной модели
rmse - квадратный корень оценочной дисперсии ошибок (вычисленной на шкале журнала для exponential модель ошибки)
errorparam - Оценочные параметры модели дисперсии ошибок
aic - информационный критерий Акаике, рассчитанный как aic = -2 * logl + 2 * numParam, где numParam - количество параметров подгонки, включая степень свободы ковариационной матрицы случайных эффектов, число фиксированных эффектов и число параметров модели ошибок, и logl является полем в stats структура
bic - Байесовский информационный критерий, рассчитанный как bic = –2*logl + журнал (M) * numParam
M - количество групп.
numParam и logl определены как в aic.
Обратите внимание, что некоторые литературы предполагают, что вычисление bic должно быть, bic = –2*logl + журнал (N) * numParam, где N - количество наблюдений.
covb - Оценочная ковариационная матрица оценок параметров
sebeta - Стандартные ошибки для beta
ires - Остатки населения (y-y_population), где y_population - отдельные прогнозируемые значения
pres - Остатки населения (y-y_population), где y_population - прогнозируемые значения численности населения
iwres - отдельные взвешенные остатки;
pwres - Взвешенные остатки населения
cwres - Условные взвешенные остатки
[beta,PSI,stats,B] = nlmefit(X,y,group,V,fun,beta0) также возвращает Bматрица r-по-m оцененных случайных эффектов для m групп. По умолчанию r равно числу параметров модели p.
[beta,PSI,stats,B] = nlmefit(X,y,group,V,fun,beta0,' указывает одну или несколько дополнительных пар имя/значение параметра. Определить Name',value)Name внутри одиночных кавычек.
Используйте следующие параметры для подгонки модели, отличной от модели по умолчанию. (Модель по умолчанию получается путем установки обоих параметров FEConstDesign и REConstDesign кому eye(p)или путем установки обоих параметров FEParamsSelect и REParamsSelect кому 1:p.) Использовать не более одного параметра с 'FE' префикс и один параметр с 'RE' префикс. nlmefit требуется указать хотя бы один фиксированный эффект и один случайный эффект.
| Параметр | Стоимость |
|---|---|
FEParamsSelect | Вектор, указывающий, какие элементы вектора параметров |
FEConstDesign | Матрица проектирования p-by-q |
FEGroupDesign | Массив p-by-q-by-m, задающий другую матрицу проектирования p-by-q с фиксированными эффектами для каждой из m групп. |
FEObsDesign | Массив p-by-q-by-n, задающий другую матрицу конструкции p-by-q с фиксированными эффектами для каждого из n наблюдений. |
REParamsSelect | Вектор, указывающий, какие элементы вектора параметров |
REConstDesign | Матрица проектирования p-by-r |
REGroupDesign | Массив p-by-r-by-m, задающий различную матрицу проектирования p-by-r случайных эффектов для каждой из m групп. |
REObsDesign | Массив p-by-r-by-n, задающий другую матрицу проектирования p-by-r случайных эффектов для каждого из n наблюдений. |
Для управления итеративным алгоритмом максимизации вероятности используйте следующие параметры:
Parameter | Стоимость |
|---|---|
RefineBeta0 | Определяет, |
ErrorModel | Вектор символов или строковый скаляр, задающий форму элемента ошибки. По умолчанию:
Если этот параметр задан, вывод
|
ApproximationType | Метод, используемый для аппроксимации вероятности модели. Возможны следующие варианты:
|
Vectorization | Указывает допустимые размеры для
|
CovParameterization | Определяет параметризацию, используемую внутри для масштабированной ковариационной матрицы. Варианты: |
CovPattern | Задает логическую или числовую матрицу r-by-r В качестве альтернативы, |
ParamTransform | Вектор p-значений, задающий функцию преобразования f () для каждого из
|
Options | Структура формы, возвращенная
|
OptimFun | Определяет функцию оптимизации, используемую при максимизации вероятности. Варианты: |
[1] Lindstrom, M. J. и Д. М. Бэйтс. «Нелинейные модели смешанных эффектов для данных повторных измерений». Биометрия. Том 46, 1990, стр. 673-687.
[2] Давидиан, М. и Д. М. Гилтинан. Нелинейные модели для данных повторных измерений. Нью-Йорк: Chapman & Hall, 1995.
[3] Пинейро, J. C. и Д. М. Бэйтс. «Приближения к логарифмической функции правдоподобия в нелинейной модели смешанных эффектов». Журнал вычислительной и графической статистики. Том 4, 1995, стр. 12-35.
[4] Демиденко, Е. Смешанные модели: теория и применение. Хобокен, Нью-Джерси: John Wiley & Sons, Inc., 2004.