exponenta event banner

fitnlm

Подгонка нелинейной регрессионной модели

Описание

пример

mdl = fitnlm(tbl,modelfun,beta0) подходит для модели, указанной modelfun к переменным в таблице или массиве наборов данных tblи возвращает нелинейную модель mdl.

fitnlm оценивает коэффициенты модели с использованием итеративной процедуры, начиная с начальных значений в beta0.

пример

mdl = fitnlm(X,y,modelfun,beta0) подгоняет модель нелинейной регрессии с использованием вектора столбца y в качестве переменной ответа и столбцов матрицы X в качестве переменных предиктора.

пример

mdl = fitnlm(___,modelfun,beta0,Name,Value) подходит для нелинейной регрессионной модели с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

Создание нелинейной модели для автоматического пробега на основе carbig данные.

Загрузите данные и создайте нелинейную модель.

load carbig
tbl = table(Horsepower,Weight,MPG);
modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ...
    b(4)*x(:,2).^b(5);
beta0 = [-50 500 -1 500 -1];
mdl = fitnlm(tbl,modelfun,beta0)
mdl = 
Nonlinear regression model:
    MPG ~ b1 + b2*Horsepower^b3 + b4*Weight^b5

Estimated Coefficients:
          Estimate      SE        tStat       pValue 
          ________    _______    ________    ________

    b1     -49.383     119.97    -0.41164     0.68083
    b2      376.43     567.05     0.66384     0.50719
    b3    -0.78193    0.47168     -1.6578    0.098177
    b4      422.37     776.02     0.54428     0.58656
    b5    -0.24127    0.48325    -0.49926     0.61788


Number of observations: 392, Error degrees of freedom: 387
Root Mean Squared Error: 3.96
R-Squared: 0.745,  Adjusted R-Squared 0.743
F-statistic vs. constant model: 283, p-value = 1.79e-113

Создание нелинейной модели для автоматического пробега на основе carbig данные.

Загрузите данные и создайте нелинейную модель.

load carbig
X = [Horsepower,Weight];
y = MPG;
modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ...
    b(4)*x(:,2).^b(5);
beta0 = [-50 500 -1 500 -1];
mdl = fitnlm(X,y,modelfun,beta0)
mdl = 
Nonlinear regression model:
    y ~ b1 + b2*x1^b3 + b4*x2^b5

Estimated Coefficients:
          Estimate      SE        tStat       pValue 
          ________    _______    ________    ________

    b1     -49.383     119.97    -0.41164     0.68083
    b2      376.43     567.05     0.66384     0.50719
    b3    -0.78193    0.47168     -1.6578    0.098177
    b4      422.37     776.02     0.54428     0.58656
    b5    -0.24127    0.48325    -0.49926     0.61788


Number of observations: 392, Error degrees of freedom: 387
Root Mean Squared Error: 3.96
R-Squared: 0.745,  Adjusted R-Squared 0.743
F-statistic vs. constant model: 283, p-value = 1.79e-113

Создание нелинейной модели для автоматического пробега на основе carbig данные. Стремиться к большей точности, снижая TolFun и наблюдать за итерациями, установив Display вариант.

Загрузите данные и создайте нелинейную модель.

load carbig
X = [Horsepower,Weight];
y = MPG;
modelfun = @(b,x)b(1) + b(2)*x(:,1).^b(3) + ...
    b(4)*x(:,2).^b(5);
beta0 = [-50 500 -1 500 -1];

Создать параметры для понижения TolFun а также для создания отчета об итеративном отображении и создания модели с помощью опций.

opts = statset('Display','iter','TolFun',1e-10);
mdl = fitnlm(X,y,modelfun,beta0,'Options',opts);
 
                                     Norm of         Norm of
   Iteration             SSE        Gradient           Step 
  -----------------------------------------------------------
           0     1.82248e+06
           1          678600          788810         1691.07
           2          616716     6.12739e+06         45.4738
           3          249831      3.9532e+06         293.557
           4           17675          361544         369.284
           5         11746.6         69670.5         169.079
           6         7242.22          343738         394.822
           7         6250.32          159719         452.941
           8         6172.87         91622.9         268.674
           9            6077         6957.44         100.208
          10         6076.34         6370.39         88.1905
          11         6075.75         5199.08         77.9694
          12          6075.3         4646.61          69.764
          13         6074.91         4235.96         62.9114
          14         6074.55         3885.28         57.0647
          15         6074.23          3571.1         52.0036
          16         6073.93         3286.48         47.5795
          17         6073.66         3028.34         43.6844
          18          6073.4         2794.31         40.2352
          19         6073.17         2582.15         37.1663
          20         6072.95         2389.68         34.4243
          21         6072.74         2214.84          31.965
          22         6072.55         2055.78         29.7516
          23         6072.37         1910.83          27.753
          24         6072.21         1778.51         25.9428
          25         6072.05          1657.5         24.2986
          26          6071.9         1546.65         22.8011
          27         6071.76         1444.93         21.4338
          28         6071.63         1351.44         20.1822
          29         6071.51         1265.39         19.0339
          30         6071.39         1186.06          17.978
          31         6071.28         1112.83         17.0052
          32         6071.17         1045.13          16.107
          33         6071.07         982.465         15.2762
          34         6070.98         924.389         14.5063
          35         6070.89         870.498         13.7916
          36          6070.8         820.434          13.127
          37         6070.72         773.872         12.5081
          38         6070.64         730.521         11.9307
          39         6070.57         690.117         11.3914
          40          6070.5         652.422          10.887
          41         6070.43         617.219         10.4144
          42         6070.37         584.315         9.97114
          43         6070.31          553.53         9.55489
          44         6070.25         524.703          9.1635
          45         6070.19         497.686         8.79506
          46         6070.14         472.345         8.44785
          47         6070.08         448.557         8.12028
          48         6070.03          426.21         7.81092
          49         6069.99         405.201         7.51845
          50         6069.94         385.435          7.2417
          51          6069.9         366.825         6.97956
          52         6069.85         349.293         6.73104
          53         6069.81         332.764         6.49523
          54         6069.77         317.171         6.27127
          55         6069.74         302.453          6.0584
          56          6069.7          288.55         5.85591
          57         6069.66         275.411         5.66315
          58         6069.63         262.986         5.47949
          59          6069.6          251.23          5.3044
          60         6069.57           240.1         5.13734
          61         6069.54         229.558         4.97784
          62         6069.51         219.567         4.82545
          63         6069.48         210.094         4.67977
          64         6069.45         201.108          4.5404
          65         6069.43         192.578           4.407
          66          6069.4         184.479         4.27923
          67         6069.38         176.785         4.15678
          68         6069.35         169.472         4.03935
          69         6069.33         162.518          3.9267
          70         6069.31         155.903         3.81855
          71         6069.29         149.608         3.71468
          72         6069.26         143.615         3.61486
          73         6069.24         137.907         3.51889
          74         6069.22         132.468         3.42658
          75         6069.21         127.283         3.33774
          76         6069.19         122.339         3.25221
          77         6069.17         117.623         3.16981
          78         6069.15         113.123         3.09041
          79         6069.14         108.827         3.01386
          80         6069.12         104.725         2.94002
          81          6069.1         100.806         2.86877
          82         6069.09         97.0611             2.8
          83         6069.07         93.4814         2.73358
          84         6069.06         90.0584         2.66942
          85         6069.05         86.7842         2.60741
          86         6069.03         83.6513         2.54745
          87         6069.02         80.6528         2.48947
          88         6069.01         77.7821         2.43338
          89         6068.99         75.0328         2.37908
          90         6068.98          72.399         2.32652
          91         6068.97         69.8752         2.27561
          92         6068.96         67.4561         2.22629
          93         6068.95         65.1366         2.17849
          94         6068.94         62.9123         2.13216
          95         6068.93         60.7784         2.08723
          96         6068.92         58.7308         2.04364
          97         6068.91         56.7655         2.00135
          98          6068.9         54.8787          1.9603
          99         6068.89         4349.28         18.1917
         100         6068.77         2416.27         14.4439
         101         6068.71         1721.26         12.1305
         102         6068.66         1228.78          10.289
         103         6068.63         884.002         8.82019
         104          6068.6         639.615         7.62744
         105         6068.58          464.84         6.64627
         106         6068.56         338.878         5.82964
         107         6068.55         247.508         5.14297
         108         6068.54         180.879         4.56032
         109         6068.53         132.084         4.06194
         110         6068.52         96.2343         3.63255
         111         6068.51         69.8361         3.26019
         112         6068.51         50.3734         2.93541
         113          6068.5         36.0206         2.65062
         114          6068.5         25.4451         2.39969
         115         6068.49         17.6693         2.17764
         116         6068.49         1027.39         14.0164
         117         6068.48         544.038         5.31369
         118         6068.48         94.0566         2.86662
         119         6068.48         113.636         3.73503
         120         6068.48        0.518966         1.37045
         121         6068.48         4.59364        0.912763
         122         6068.48         1.56354        0.629252
         123         6068.48         1.13804        0.432522
         124         6068.48        0.295873        0.297481
Iterations terminated: relative change in SSE less than OPTIONS.TolFun

Укажите модель нелинейной регрессии для оценки с использованием дескриптора функции или синтаксиса модели.

Загрузить данные образца.

S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;

Используйте дескриптор функции, чтобы указать модель Хугена-Ватсона для данных скорости.

mdl = fitnlm(X,y,@hougen,beta0)
mdl = 
Nonlinear regression model:
    y ~ hougen(b,X)

Estimated Coefficients:
          Estimate       SE       tStat     pValue 
          ________    ________    ______    _______

    b1      1.2526     0.86701    1.4447    0.18654
    b2    0.062776    0.043561    1.4411    0.18753
    b3    0.040048    0.030885    1.2967    0.23089
    b4     0.11242    0.075157    1.4957    0.17309
    b5      1.1914     0.83671    1.4239     0.1923


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.193
R-Squared: 0.999,  Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13

Можно также использовать выражение для указания модели Хугена-Ватсона для данных скорости.

myfun = 'y~(b1*x2-x3/b5)/(1+b2*x1+b3*x2+b4*x3)';
mdl2 = fitnlm(X,y,myfun,beta0)
mdl2 = 
Nonlinear regression model:
    y ~ (b1*x2 - x3/b5)/(1 + b2*x1 + b3*x2 + b4*x3)

Estimated Coefficients:
          Estimate       SE       tStat     pValue 
          ________    ________    ______    _______

    b1      1.2526     0.86701    1.4447    0.18654
    b2    0.062776    0.043561    1.4411    0.18753
    b3    0.040048    0.030885    1.2967    0.23089
    b4     0.11242    0.075157    1.4957    0.17309
    b5      1.1914     0.83671    1.4239     0.1923


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.193
R-Squared: 0.999,  Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13

Создание данных выборки из модели нелинейной регрессии

y = b1 + b2exp (-b3x) +

где b1, b2 и b3 - коэффициенты, и член ошибки обычно распределяется со средним значением 0 и стандартным отклонением 0,5.

modelfun = @(b,x)(b(1)+b(2)*exp(-b(3)*x));

rng('default') % for reproducibility
b = [1;3;2];
x = exprnd(2,100,1);
y = modelfun(b,x) + normrnd(0,0.5,100,1);

Задайте параметры надежного фитинга.

opts = statset('nlinfit');
opts.RobustWgtFun = 'bisquare';

Подгоните нелинейную модель с помощью опций надежного фитинга. Здесь используйте выражение для указания модели.

b0 = [2;2;2];
modelstr = 'y ~ b1 + b2*exp(-b3*x)';

mdl = fitnlm(x,y,modelstr,b0,'Options',opts)
mdl = 
Nonlinear regression model (robust fit):
    y ~ b1 + b2*exp( - b3*x)

Estimated Coefficients:
          Estimate      SE       tStat       pValue  
          ________    _______    ______    __________

    b1     1.0218     0.07202    14.188    2.1344e-25
    b2     3.6619     0.25429    14.401     7.974e-26
    b3     2.9732     0.38496    7.7232    1.0346e-11


Number of observations: 100, Error degrees of freedom: 97
Root Mean Squared Error: 0.501
R-Squared: 0.807,  Adjusted R-Squared 0.803
F-statistic vs. constant model: 203, p-value = 2.34e-35

Загрузить данные образца.

S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;

Укажите дескриптор функции для весов наблюдения. Функция принимает аппроксимированные значения модели в качестве входных данных и возвращает вектор весов.

 a = 1; b = 1;
 weights = @(yhat) 1./((a + b*abs(yhat)).^2);

Подгоните модель Хугена-Ватсона к данным скорости с помощью указанной функции весов наблюдения.

mdl = fitnlm(X,y,@hougen,beta0,'Weights',weights)
mdl = 
Nonlinear regression model:
    y ~ hougen(b,X)

Estimated Coefficients:
          Estimate       SE       tStat     pValue 
          ________    ________    ______    _______

    b1     0.83085     0.58224     1.427    0.19142
    b2     0.04095    0.029663    1.3805    0.20477
    b3    0.025063    0.019673     1.274    0.23842
    b4    0.080053    0.057812    1.3847    0.20353
    b5      1.8261       1.281    1.4256    0.19183


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 0.037
R-Squared: 0.998,  Adjusted R-Squared 0.998
F-statistic vs. zero model: 1.14e+03, p-value = 3.49e-11

Загрузить данные образца.

S = load('reaction');
X = S.reactants;
y = S.rate;
beta0 = S.beta;

Поместите модель Хугена-Ватсона в данные скорости с использованием комбинированной модели дисперсии ошибок.

mdl = fitnlm(X,y,@hougen,beta0,'ErrorModel','combined')
mdl = 
Nonlinear regression model:
    y ~ hougen(b,X)

Estimated Coefficients:
          Estimate       SE       tStat     pValue 
          ________    ________    ______    _______

    b1      1.2526     0.86702    1.4447    0.18654
    b2    0.062776    0.043561    1.4411    0.18753
    b3    0.040048    0.030885    1.2967    0.23089
    b4     0.11242    0.075158    1.4957    0.17309
    b5      1.1914     0.83671    1.4239     0.1923


Number of observations: 13, Error degrees of freedom: 8
Root Mean Squared Error: 1.27
R-Squared: 0.999,  Adjusted R-Squared 0.998
F-statistic vs. zero model: 3.91e+03, p-value = 2.54e-13

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

свернуть все

Входные данные, включающие переменные предиктора и ответа, указанные как таблица или массив наборов данных. Переменные предиктора и переменная ответа должны быть числовыми.

  • При указании modelfun используя формулу, спецификация модели в формуле определяет предиктор и переменные ответа.

  • При указании modelfun с помощью дескриптора функции последняя переменная является переменной ответа, а остальные - переменными предиктора, по умолчанию. Можно задать другой столбец в качестве переменной ответа, используя ResponseVar аргумент пары имя-значение. Чтобы выбрать подмножество столбцов в качестве предикторов, используйте PredictorVars аргумент пары имя-значение.

Имена переменных в таблице не обязательно должны быть допустимыми идентификаторами MATLAB ®. Однако если имена недопустимы, указать их нельзя modelfun используя формулу.

Имена переменных можно проверить в tbl с помощью isvarname функция. Если имена переменных недопустимы, их можно преобразовать с помощью matlab.lang.makeValidName функция.

Типы данных: table

Переменные предиктора, определенные как матрица n-by-p, где n - количество наблюдений, а p - количество переменных предиктора. Каждый столбец X представляет одну переменную, а каждая строка представляет одно наблюдение.

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

Переменная ответа, заданная как вектор n-by-1, где n - количество наблюдений. Каждая запись в y является ответом для соответствующей строки X.

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

Функциональная форма модели, указанная следующим образом.

  • Дескриптор функции @modelfun или @(b,x)modelfun, где

    • b - вектор коэффициентов с тем же количеством элементов, что и beta0.

    • x является матрицей с тем же количеством столбцов, что и X или количество переменных столбцов предиктора tbl.

    modelfun(b,x) возвращает вектор столбца, содержащий то же количество строк, что и x. Каждая строка вектора является результатом оценки modelfun в соответствующей строке x. Другими словами, modelfun является векторизированной функцией, которая оперирует всеми строками данных и возвращает все вычисления в одном вызове функции. modelfun должен возвращать вещественные числа для получения значимых коэффициентов.

  • Символьный вектор или строковая скалярная формула в форме 'y ~ f(b1,b2,...,bj,x1,x2,...,xk)', где f представляет скалярную функцию переменных скалярных коэффициентов b1,...,bj и переменные скалярных данных x1,...,xk. Имена переменных в формуле должны быть допустимыми идентификаторами MATLAB.

Типы данных: function_handle | char | string

Коэффициенты для нелинейной модели, заданные как числовой вектор. NonLinearModel начинает поиск оптимальных коэффициентов из beta0.

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

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'ErrorModel','combined','Exclude',2,'Options',opt определяет модель ошибки в качестве комбинированной модели, исключает второе наблюдение из посадки и использует опции, определенные в структуре opt для управления процедурой итеративной подгонки.

Имена коэффициентов модели, заданные как строковый массив или массив ячеек символьных векторов.

Типы данных: string | cell

Форма модели расхождения ошибок, указанная как одна из следующих. Каждая модель определяет ошибку с помощью стандартной переменной среднего нуля и единичной дисперсии e в сочетании с независимыми компонентами: значением функции f и одним или двумя параметрами a и b

'constant' (по умолчанию)y = f + ae
'proportional'y = f + bfe
'combined'y = f + (a + b 'f |) e

Единственная разрешенная модель ошибки при использовании Weights является 'constant'.

Примечание

options.RobustWgtFun должно иметь значение [] при использовании модели ошибки, отличной от 'constant'.

Пример: 'ErrorModel','proportional'

Начальные оценки параметров модели ошибок для выбранного ErrorModel, указывается как числовой массив.

Модель ошибкиПараметрыЗначения по умолчанию
'constant' a1
'proportional'b1
'combined'a, b[1,1]

Вы можете использовать только 'constant' модель ошибки при использовании Weights.

Примечание

options.RobustWgtFun должно иметь значение [] при использовании модели ошибки, отличной от 'constant'.

Например, если 'ErrorModel' имеет значение 'combined', можно указать начальное значение 1 для a и начальное значение 2 для b следующим образом.

Пример: 'ErrorParameters',[1,2]

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

Наблюдения для исключения из посадки, указанные как разделенная запятыми пара, состоящая из 'Exclude' и вектор логического или числового индекса, указывающий, какие наблюдения исключить из аппроксимации.

Например, можно исключить наблюдения 2 и 3 из 6, используя любой из следующих примеров.

Пример: 'Exclude',[2,3]

Пример: 'Exclude',logical([0 1 1 0 0 0])

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

Опции для управления процедурой итеративного фитинга, заданной как структура, созданная statset. Релевантными полями являются непустые поля в структуре, возвращаемые вызовом. statset('fitnlm').

ВыборЗначениеДефолт
DerivStepОтносительная разность, используемая в расчетах производных конечных разностей. Положительный скаляр или вектор положительных скаляров того же размера, что и вектор параметров, оцененных функцией Statistics and Machine Learning Toolbox™ с использованием структуры опций.eps^(1/3)
Display

Объем информации, отображаемой алгоритмом подгонки.

  • 'off' - Информация отсутствует.

  • 'final' - Отображение окончательных выходных данных.

  • 'iter' - отображение итеративных выходных данных в окне команд.

'off'
FunValCheckВектор символов или строковый скаляр, указывающий на необходимость проверки недопустимых значений, например NaN или Inf, из функции модели.'on'
MaxIterМаксимально допустимое число итераций. Положительное целое число.200
RobustWgtFunФункция веса для надежного фитинга. Может также быть дескриптором функции, который принимает нормализованный остаток в качестве входного значения и возвращает надежные веса в качестве выходного значения. Если используется дескриптор функции, задайте Tune константа. См. раздел Надежные параметры[]
TuneНастройка константы, используемой в надежной подгонке для нормализации остатков перед применением весовой функции. Положительный скаляр. Требуется, если функция веса указана как дескриптор функции.См. раздел Надежные параметры для значения по умолчанию, которое зависит от RobustWgtFun.
TolFunДопуск окончания для значения целевой функции. Положительный скаляр.1e-8
TolXДопуск окончания для параметров. Положительный скаляр.1e-8

Типы данных: struct

Переменные предиктора для использования в подгонке, указанные как пара, разделенная запятыми, состоящая из 'PredictorVars' и либо строковый массив, либо массив ячеек символьных векторов имен переменных в таблице или массиве наборов данных. tblили вектор логического или числового индекса, указывающий, какие столбцы являются переменными предиктора.

Строковые значения или векторы символов должны быть среди имен в tblили имена, указанные с помощью 'VarNames' аргумент пары имя-значение.

По умолчанию используются все переменные в Xили все переменные в tbl за исключением ResponseVar.

Например, можно указать вторую и третью переменные в качестве переменных предиктора, используя любой из следующих примеров.

Пример: 'PredictorVars',[2,3]

Пример: 'PredictorVars',logical([0 1 1 0 0 0])

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

Переменная ответа для использования в посадке, заданная как пара, разделенная запятыми, состоящая из 'ResponseVar' и либо имя переменной в таблице, либо массив наборов данных tblили вектор логического или числового индекса, указывающий, какой столбец является переменной ответа.

Если задана модель, она задает переменную отклика. В противном случае при подгонке таблицы или массива наборов данных 'ResponseVar' указывает, какая переменная fitnlm следует использовать в качестве ответа.

Например, можно указать четвертую переменную, скажем yield, как ответ из шести переменных, одним из следующих способов.

Пример: 'ResponseVar','yield'

Пример: 'ResponseVar',[4]

Пример: 'ResponseVar',logical([0 0 0 1 0 0])

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

Имена переменных, указанных как пара, разделенная запятыми, состоящая из 'VarNames' и строковый массив или массив ячеек символьных векторов, включающих имена столбцов X сначала и имя переменной ответа y последний.

'VarNames' неприменима к переменным в таблице или массиве набора данных, поскольку эти переменные уже имеют имена.

Пример: 'VarNames',{'Horsepower','Acceleration','Model_Year','MPG'}

Типы данных: string | cell

Веса наблюдения, заданные как вектор неотрицательных скалярных значений или дескриптор функции.

  • Если указан вектор, он должен содержать n элементов, где n - количество строк в tbl или y.

  • Если указать дескриптор функции, то функция должна принять вектор прогнозируемых значений отклика в качестве входного значения и вернуть вектор вещественных положительных весов в качестве выходного значения.

Заданные веса, W, NonLinearModel оценивает дисперсию ошибок при наблюдении i около MSE*(1/W(i))где MSE - среднеквадратичная ошибка.

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

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

свернуть все

Нелинейная модель, представляющая наименьшее квадратичное соответствие отклика на данные, возвращаемое как NonLinearModel объект.

Если Options структура содержит непустую RobustWgtFun , модель не соответствует наименьшим квадратам, но использует RobustWgtFun надежная функция подгонки.

Для свойств и методов нелинейного объекта модели: mdl, см. NonLinearModel страница класса.

Подробнее

свернуть все

Надежные варианты

Весовая функцияУравнениеКонстанта настройки по умолчанию
'andrews'w = (abs(r)<pi) .* sin(r) ./ r1.339
'bisquare' (по умолчанию)w = (abs(r)<1) .* (1 - r.^2).^24.685
'cauchy'w = 1 ./ (1 + r.^2)2.385
'fair'w = 1 ./ (1 + abs(r))1.400
'huber'w = 1 ./ max(1, abs(r))1.345
'logistic'w = tanh(r) ./ r1.205
'talwar'w = 1 * (abs(r)<1)2.795
'welsch'w = exp(-(r.^2))2.985
[]Нет прочного фитинга

Алгоритмы

  • fitnlm использует тот же алгоритм подгонки, что и nlinfit.

  • fitnlm рассматривает NaN значения в tbl, X, и y для отсутствующих значений. При подгонке модели fitnlm не использует наблюдения с отсутствующими значениями или наблюдения, при которых modelfun прибыль NaN значения. ObservationInfo свойство подогнанной модели содержит информацию о том, fitnlm использует каждое наблюдение в подгонке.

Ссылки

[1] Себер, G.A.F. и C. J. Wild. Нелинейная регрессия. Хобокен, Нью-Джерси: Wiley-Interscience, 2003.

[2] DuMouchel, W. H. и F. L. O'Brien. «Интеграция надежного варианта в вычислительную среду множественной регрессии». Информатика и статистика: материалы 21-го симпозиума по интерфейсу. Александрия, Вирджиния: Американская статистическая ассоциация, 1989 год.

[3] Холланд, П. У. и Р. Э. Уэлш. «Надежная регрессия с использованием итеративно повторно взвешенных наименьших квадратов». Сообщения в статистике: теория и методы, A6, 1977, стр. 813-827.

Представлен в R2013b