refit

Класс: GeneralizedLinearMixedModel

Обновите обобщенную линейную модель смешанных эффектов

Синтаксис

Описание

пример

glmenew = refit(glme,ynew) возвращает обновленную обобщенную линейную модель смешанных эффектов, glmenew, на основе модели входа glme, используя новый вектор отклика, ynew.

Входные параметры

расширить все

Обобщенная модель линейных смешанных эффектов, заданная как GeneralizedLinearMixedModel объект. Для свойств и методов этого объекта смотрите GeneralizedLinearMixedModel.

Новый вектор отклика, заданный как вектор n -на-1 скалярных значений, где n - количество наблюдений, используемых для аппроксимации glme.

Для i наблюдений с предыдущими весами wip и биномиальный размер ni (когда применимо), значения отклика yi содержащиеся в ynew может иметь следующие значения.

РаспределениеДопустимые значенияПримечания
Binomial

{0,1wipni,2wipni,.,1}

wip и ni целочисленные значения > 0
Poisson

{0,1wip,2wip,,1}

wip является целым числом значения > 0
Gamma(0,∞)wip ≥ 0
InverseGaussian(0,∞)wip ≥ 0
Normal(–∞,∞)wip ≥ 0

Вы можете получить доступ к свойству предыдущих весов wip использование записи через точку.

glme.ObservationInfo.Weights

Типы данных: single | double

Выходные аргументы

расширить все

Обобщенная модель линейных смешанных эффектов, возвращенная как GeneralizedLinearMixedModel объект. glmenew является обновленной версией обобщенной линейной модели смешанных эффектов glme, ссылка на значения в векторе отклика ynew.

Для свойств и методов этого объекта смотрите GeneralizedLinearMixedModel.

Примеры

расширить все

Загрузите выборочные данные.

load mfr

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

  • Флаг, указывающий, использовал ли пакет новый процесс (newprocess)

  • Время вычислений для каждой партии, в часах (time)

  • Температура партии, в степенях Цельсия (temp)

  • Категориальная переменная, указывающая на поставщика (A, B, или C) химического вещества, используемого в партии (supplier)

  • Количество дефектов в партии (defects)

Данные также включают time_dev и temp_dev, которые представляют абсолютное отклонение времени и температуры, соответственно, от стандарта процесса в 3 часа при 20 степенях Цельсии.

Подбор обобщенной линейной модели смешанных эффектов с помощью newprocess, time_dev, temp_dev, и supplier как предикторы фиксированных эффектов. Включите термин случайных эффектов для точки пересечения, сгруппированного по factory, для расчета различий в качестве, которые могут существовать из-за специфичных для фабрики изменений. Переменная отклика defects имеет распределение Пуассона, и соответствующая функция ссылки для этой модели является логарифмической. Используйте метод Laplace fit, чтобы оценить коэффициенты. Задайте кодировку фиктивной переменной следующим 'effects', поэтому фиктивные переменные коэффициенты равны 0.

Количество дефектов может быть смоделировано с помощью распределения Пуассона

defectsijПуассон(μij)

Это соответствует обобщенной модели линейных смешанных эффектов

log(μij)=β0+β1newprocessij+β2time_devij+β3temp_devij+β4supplier_Cij+β5supplier_Bij+bi,

где

  • defectsij количество дефектов, наблюдаемых в партии, произведенной заводом-изготовителем i во время партии j.

  • μij - среднее количество дефектов, соответствующих заводу i (где i=1,2,...,20) во время партии j (где j=1,2,...,5).

  • newprocessij, time_devij, и temp_devij являются измерениями для каждой переменной, которые соответствуют фабрике i во время партии j. Для примера, newprocessij указывает, производится ли партия заводом-изготовителем i во время партии j использовали новый процесс.

  • supplier_Cij и supplier_Bij являются фиктивными переменными, которые используют эффекты (сумма к нулю) кодирования, чтобы указать, является ли компания C или B, соответственно, поставила химикаты для партии, произведенной заводом i во время партии j.

  • biN(0,σb2) является точка пересечения случайных эффектов для каждого завода i который учитывает специфические для завода изменения в качестве.

glme = fitglme(mfr,'defects ~ 1 + newprocess + time_dev + temp_dev + supplier + (1|factory)','Distribution','Poisson','Link','log','FitMethod','Laplace','DummyVarCoding','effects');

Использование random чтобы симулировать новый вектор отклика из подобранной модели.

rng(0,'twister');  % For reproducibility
ynew = random(glme);

Измените модель с помощью нового вектора отклика.

glme = refit(glme,ynew)
glme = 
Generalized linear mixed-effects model fit by ML

Model information:
    Number of observations             100
    Fixed effects coefficients           6
    Random effects coefficients         20
    Covariance parameters                1
    Distribution                    Poisson
    Link                            Log   
    FitMethod                       Laplace

Formula:
    defects ~ 1 + newprocess + time_dev + temp_dev + supplier + (1 | factory)

Model fit statistics:
    AIC       BIC       LogLikelihood    Deviance
    469.24    487.48    -227.62          455.24  

Fixed effects coefficients (95% CIs):
    Name                   Estimate    SE          tStat       DF    pValue    
    {'(Intercept)'}          1.5738     0.18674      8.4276    94    4.0158e-13
    {'newprocess' }        -0.21089      0.2306    -0.91455    94       0.36277
    {'time_dev'   }        -0.13769     0.77477    -0.17772    94       0.85933
    {'temp_dev'   }         0.24339     0.84657      0.2875    94       0.77436
    {'supplier_C' }        -0.12102     0.07323     -1.6526    94       0.10175
    {'supplier_B' }        0.098254    0.066943      1.4677    94       0.14551


    Lower        Upper   
        1.203      1.9445
     -0.66875     0.24696
       -1.676      1.4006
      -1.4375      1.9243
     -0.26642    0.024381
    -0.034662     0.23117

Random effects covariance parameters:
Group: factory (20 Levels)
    Name1                  Name2                  Type           Estimate
    {'(Intercept)'}        {'(Intercept)'}        {'std'}        0.46587 

Group: Error
    Name                        Estimate
    {'sqrt(Dispersion)'}        1       

Совет

  • Можно использовать refit и random для проведения моделируемого теста коэффициента правдоподобия или параметрического загрузочного ремешка.