Нелинейный Curve Fitting с lsqcurvefit

lsqcurvefit позволяет вам соответствовать параметрированным нелинейным функциям к данным легко. Можно также использовать lsqnonlin; lsqcurvefit просто удобный способ вызвать lsqnonlin для аппроксимирования кривыми.

В этом примере, векторном xdata представляет 100 точек данных и векторный ydata представляет связанные измерения. Сгенерируйте данные для проблемы.

rng(5489,'twister') % reproducible
xdata = -2*log(rand(100,1));
ydata = (ones(100,1) + .1*randn(100,1)) + (3*ones(100,1)+...
    0.5*randn(100,1)).*exp((-(2*ones(100,1)+...
   .5*randn(100,1))).*xdata);

Смоделированное отношение между xdata и ydata

ydatai=a1+a2exp(-a3xdatai)+εi.

Код генерирует xdata от 100 независимых выборок экспоненциального распределения со средним значением 2. Код генерирует ydata от его уравнения определения с помощью   a = [1;3;2], встревоженный путем добавления нормальных отклонений со стандартными отклонениями [0.1;0.5;0.5].

Цель состоит в том, чтобы найти параметры aˆi, i = 1, 2, 3, для модели, которые лучше всего соответствуют данным.

Для того, чтобы соответствовать параметрам к данным с помощью lsqcurvefit, необходимо задать подходящую функцию. Задайте подходящий функциональный predicted как анонимная функция.

predicted = @(a,xdata) a(1)*ones(100,1)+a(2)*exp(-a(3)*xdata); 

Подбирать модель к данным, lsqcurvefit нуждается в первоначальной оценке a0 из параметров.

a0 = [2;2;2];

Вызовите lsqcurvefit найти параметры оптимальной подгонки aˆi.

[ahat,resnorm,residual,exitflag,output,lambda,jacobian] =...
   lsqcurvefit(predicted,a0,xdata,ydata);
Local minimum possible.

lsqcurvefit stopped because the final change in the sum of squares relative to 
its initial value is less than the value of the function tolerance.

Исследуйте получившиеся параметры.

disp(ahat)
    1.0169
    3.1444
    2.1596

Подходящие значения ahat в 8%   a = [1;3;2].

Если у вас есть программное обеспечение Statistics and Machine Learning Toolbox™, используйте nlparci функция, чтобы сгенерировать доверительные интервалы для ahat оценка.

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

| (Statistics and Machine Learning Toolbox)

Похожие темы