nlparci

Нелинейные доверительные интервалы параметра регрессии

Синтаксис

ci = nlparci(beta,resid,'covar',sigma)
ci = nlparci(beta,resid,'jacobian',J)
ci = nlparci(...,'alpha',alpha)

Описание

ci = nlparci(beta,resid,'covar',sigma) возвращает 95% доверительных интервалов, ci для параметра нелинейного метода наименьших квадратов оценивает beta. Прежде, чем вызвать nlparci, используйте nlinfit, чтобы соответствовать нелинейной модели регрессии и добраться, коэффициент оценивает beta, невязки resid и оцененная содействующая ковариационная матрица sigma.

ci = nlparci(beta,resid,'jacobian',J) альтернативный синтаксис, который также вычисляет 95% доверительных интервалов. J является якобианом, вычисленным nlinfit. Если опция 'robust' используется с nlinfit, используйте вход 'covar', а не вход 'jacobian' так, чтобы необходимый параметр sigma принял устойчивый подбор кривой во внимание.

ci = nlparci(...,'alpha',alpha) возвращает доверительные интервалы % 100(1-alpha).

nlparci обрабатывает NaN s в resid или J как отсутствующие значения, и игнорирует соответствующие наблюдения.

Вычисление доверительного интервала допустимо для систем, где длина resid превышает длину beta, и J имеет полный ранг столбца. Когда J плохо обусловлен, доверительные интервалы могут быть неточными.

Примеры

Подгонка к экспоненциальному затуханию

Предположим, что вы имеете данные и хотите подобрать модель формы

yi = a 1 + a 2exp (–a3xi) + εi.

Здесь ai является параметрами, которые вы хотите оценить, xi точки данных, yi ответы, и εi является шумовыми условиями.

  1. Запишите указатель на функцию, который представляет модель:

    mdl = @(a,x)(a(1) + a(2)*exp(-a(3)*x));
  2. Сгенерируйте синтетические данные с параметрами a = [1;3;2] с точками данных x, распределенными экспоненциально с параметром 2 и нормально распределенный шум со стандартным отклонением 0.1:

    rng(9845,'twister') % for reproducibility
    a = [1;3;2];
    x = exprnd(2,100,1);
    epsn = normrnd(0,0.1,100,1);
    y = mdl(a,x) + epsn;
  3. Соответствуйте модели к данным, начинающим с произвольного предположения   a0 = [2;2;2]:

    a0 = [2;2;2];
    [ahat,r,J,cov,mse] = nlinfit(x,y,mdl,a0);
    ahat
    
    ahat =
        1.0153
        3.0229
        2.1070
  4. Проверяйте, является ли [1;3;2] в 95%-м доверительном интервале с помощью якобиевского аргумента в nlparci:

    ci = nlparci(ahat,r,'Jacobian',J)
    
    ci =
        0.9869    1.0438
        2.9401    3.1058
        1.9963    2.2177
  5. Можно получить тот же результат с помощью аргумента ковариации:

    ci = nlparci(ahat,r,'covar',cov)
    
    ci =
        0.9869    1.0438
        2.9401    3.1058
        1.9963    2.2177

Смотрите также

|

Представлено до R2006a