Соответствуйте нелинейной модели регрессии
mdl = fitnlm(tbl,modelfun,beta0)
mdl = fitnlm(X,y,modelfun,beta0)
mdl = fitnlm(___,modelfun,beta0,Name,Value)
соответствует нелинейной модели регрессии дополнительными опциями, заданными одним или несколькими аргументами пары 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.97115 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.81091 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.452 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.15677 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.5189 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.7841 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.0327 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.14296 108 6068.54 180.878 4.56032 109 6068.53 132.084 4.06194 110 6068.52 96.2341 3.63255 111 6068.51 69.8362 3.26019 112 6068.51 50.3735 2.93541 113 6068.5 36.0205 2.65062 114 6068.5 25.4452 2.39969 115 6068.49 17.6693 2.17764 116 6068.49 1027.39 14.0164 117 6068.48 544.039 5.3137 118 6068.48 94.0576 2.86664 119 6068.48 113.636 3.73502 120 6068.48 0.518567 1.3705 121 6068.48 4.5944 0.91284 122 6068.48 1.56389 0.629322 123 6068.48 1.13809 0.432547 124 6068.48 0.295936 0.297509 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
Сгенерируйте выборочные данные из нелинейной модели регрессии
где , , и коэффициенты, и остаточный член нормально распределен со средним значением 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
tbl
Входные данныеВходные данные, заданные как таблица или массив набора данных. Если вы не задаете переменные прогноза и переменные отклика, последняя переменная является переменной отклика, и другие - переменные прогноза по умолчанию.
Переменные прогноза и переменная отклика должны быть числовыми.
Вы задаете ответ и имена предиктора в вашей образцовой спецификации. Если вы не задаете модель, можно установить различный столбец как переменную отклика при помощи аргумента пары "имя-значение" ResponseVar
. Можно выбрать подмножество столбцов как предикторы при помощи аргумента пары "имя-значение" PredictorVars
.
Типы данных: table
X
Переменные прогнозаПеременные прогноза, заданные как n-by-p матрица, где n является количеством наблюдений и p, являются количеством переменных прогноза. Каждый столбец X
представляет одну переменную, и каждая строка представляет одно наблюдение.
Типы данных: single | double
y
Переменная откликаПеременная отклика, заданная как n-by-1 вектор, где n является количеством наблюдений. Каждая запись в y
является ответом для соответствующей строки X
.
Типы данных: single | double
modelfun
— Функциональная форма модели'y
~
f(b1,b2,...,bj,x1,x2,...,xk)'
Функциональная форма модели, заданной как любое из следующих.
Указатель на функцию
или @modelfun
, где @(b,x)modelfun
b
является вектором коэффициентов с тем же числом элементов как beta0
.
x
является матрицей с одинаковым числом столбцов как X
или количество столбцов переменной прогноза tbl
.
(b,x)
modelfun
возвращает вектор-столбец, который содержит одинаковое число строк как x
. Каждая строка вектора является результатом оценки modelfun
на соответствующей строке x
. Другими словами, modelfun
является векторизованной функцией, та, которая работает со всеми строками данных и возвращает все оценки в одном вызове функции. modelfun
должен возвратить вещественные числа, чтобы получить значимые коэффициенты.
Вектор символов или скаляр строки формы
, где 'y ~ f(b1,b2,...,bj,x1,x2,...,xk)'
f
представляет скалярную функцию скалярных содействующих переменных b1
..., bj
и скалярных переменных данных x1
..., xk
.
Типы данных: function_handle
| char
| string
beta0
— КоэффициентыКоэффициенты для нелинейной модели, заданной как числовой вектор. NonLinearModel
запускает свой поиск оптимальных коэффициентов с beta0
.
Типы данных: single | double
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'ErrorModel','combined','Exclude',2,'Options',opt
задает ошибочную модель как объединенную модель, исключает второе наблюдение из подгонки и использует опции, заданные в структуре opt
, чтобы управлять итеративной подходящей процедурой.'CoefficientNames'
— Имена коэффициентов модели{'b1','b2',...,'bk'}
(значение по умолчанию) | массив строк | массив ячеек из символьных векторовИмена коэффициентов модели, заданных как массив строк или массив ячеек из символьных векторов.
Типы данных: string
| cell
'ErrorModel'
— Форма ошибочной модели отклонения'constant'
(значение по умолчанию) | 'proportional'
| 'combined'
Форма ошибочной модели отклонения, заданной как одно из следующих. Каждая модель задает ошибку стандартный средний нуль и переменная e модульного отклонения в сочетании с независимыми компонентами: значение функции f и один или два параметра a и b
'constant' (значение по умолчанию) | |
'proportional' | |
'combined' |
Единственной позволенной ошибочной моделью при использовании Weights
является 'constant'
.
options.RobustWgtFun
должен иметь значение []
при использовании ошибочной модели кроме 'constant'
.
Пример: 'ErrorModel','proportional'
'ErrorParameters'
— Первоначальные оценки ошибочных параметров моделиПервоначальные оценки ошибочных параметров модели для выбранного ErrorModel
, заданного как числовой массив.
Ошибочная модель | Параметры | Значения по умолчанию |
---|---|---|
'constant' | a | 1 |
'proportional' | b | 1 |
'combined' | a, B | [1,1] |
Можно только использовать ошибочную модель 'constant'
при использовании Weights
.
options.RobustWgtFun
должен иметь значение []
при использовании ошибочной модели кроме 'constant'
.
Например, если 'ErrorModel'
имеет значение 'combined'
, можно задать начальное значение 1 для a и начального значения 2 для b можно следующим образом.
Пример: 'ErrorParameters',[1,2]
Типы данных: single | double
'Exclude'
— Наблюдения, чтобы исключитьНаблюдения, чтобы исключить из подгонки, заданной как пара, разделенная запятой, состоящая из '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' |
FunValCheck | Вектор символов или скаляр строки указание, чтобы проверять на недопустимые значения, такие как NaN или Inf , от образцовой функции. | 'on' |
MaxIter | Максимальное количество итераций позволено. Положительное целое число. | 200 |
RobustWgtFun | Функция веса для устойчивого подбора кривой. Может также быть указатель на функцию, который принимает нормированную невязку, как введено и возвращает устойчивые веса, как выведено. Если вы используете указатель на функцию, даете постоянный Tune . См. Устойчивые Опции | [] |
Tune | Настройка постоянного используемый в устойчивом подборе кривой, чтобы нормировать невязки прежде, чем применить функцию веса. Положительная скалярная величина. Требуемый, если функция веса задана как указатель на функцию. | См. Устойчивые Опции для значения по умолчанию, которое зависит от RobustWgtFun . |
TolFun | Допуск завершения к значению целевой функции. Положительная скалярная величина. | 1e-8 |
TolX | Допуск завершения к параметрам. Положительная скалярная величина. | 1e-8 |
Типы данных: struct
'PredictorVars'
— Переменные прогнозаПеременные прогноза, чтобы использовать в подгонке, заданной как пара, разделенная запятой, состоящая из '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'
и или имя переменной в таблице или массив набора данных tbl
или логический или числовой индексный вектор указание, какой столбец является переменной отклика.
Если вы задаете модель, она задает переменную отклика. В противном случае, при подборе кривой таблице или массиву набора данных, 'ResponseVar'
указывает, который переменная fitnlm
должна использовать в качестве ответа.
Например, можно задать четвертую переменную, сказать yield
, как ответ из шести переменных, одним из следующих способов.
Пример: 'ResponseVar','yield'
Пример: 'ResponseVar',[4]
Пример: 'ResponseVar',logical([0 0 0 1 0 0])
Типы данных: single
| double
| logical
| char
| string
varnames
Имена переменных{'x1','x2',...,'xn','y'}
(значение по умолчанию) | массив строк | массив ячеек из символьных векторовИмена переменных, заданных как пара, разделенная запятой, состоящая из 'VarNames'
и массива строк или массива ячеек из символьных векторов включая имена для столбцов X
сначала и имя для переменной отклика y
в последний раз.
'VarNames'
не применим к переменным в таблице или массиве набора данных, потому что те переменные уже имеют имена.
Например, если в ваших данных, лошадиная сила, ускорение, и модельный год автомобилей являются переменными прогноза, и мили на галлон (MPG) являются переменной отклика, то можно назвать переменные можно следующим образом.
Пример: 'VarNames',{'Horsepower','Acceleration','Model_Year','MPG'}
Типы данных: string
| cell
'Weights'
— Веса наблюденияones(n,1)
(значение по умолчанию) | вектор неотрицательных скалярных значений | указатель на функциюВеса наблюдения, заданные как вектор неотрицательных скалярных значений или указателя на функцию.
Если вы задаете вектор, то он должен иметь элементы n, где n является количеством строк в tbl
или y
.
Если вы задаете указатель на функцию, то функция должна принять вектор предсказанных значений ответа, как введено, и возвращать вектор действительных положительных весов, как выведено.
Учитывая веса, W
, NonLinearModel
оценивает ошибочное отклонение при наблюдении i
MSE*(1/W(i))
, где MSE является среднеквадратической ошибкой.
Типы данных: single
| double
| function_handle
mdl
— NonlinearNonLinearModel
Нелинейная модель, представляющая припадок наименьших квадратов ответа на данные, возвращенные как объект NonLinearModel
.
Если структура Options
содержит непустое поле RobustWgtFun
, модель не является подгонкой наименьших квадратов, но использует RobustWgtFun
устойчивая подходящая функция.
Для свойств и методов нелинейного объекта модели, mdl
, смотрите страницу класса NonLinearModel
.
Функция веса | Уравнение | Значение по умолчанию, настраивающееся постоянный |
---|---|---|
'andrews' | w = (abs(r)<pi) .* sin(r) ./ r | 1.339 |
'bisquare' (значение по умолчанию) | w = (abs(r)<1) .* (1 - r.^2).^2 | 4.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) ./ r | 1.205 |
'talwar' | w = 1 * (abs(r)<1) | 2.795 |
'welsch' | w = exp(-(r.^2)) | 2.985 |
[] | Никакой устойчивый подбор кривой | — |
fitnlm
использует тот же алгоритм подбора в качестве nlinfit
.
[1] Seber, G. A. F. и C. J. Дикий. Нелинейная регрессия. Хобокен, NJ: Wiley-межнаука, 2003.
[2] DuMouchel, W. H. и Ф. Л. О'Брайен. “Интегрируя Устойчивую Опцию в Вычислительную среду Регрессии кратного”. Информатика и Статистика: Продолжения 21-го Симпозиума по Интерфейсу. Александрия, ВА: американская Статистическая Ассоциация, 1989.
[3] Голландия, P. W. и Р. Э. Велш. “Устойчивая Регрессия Используя Итеративно Перевзвешенные Наименьшие квадраты”. Коммуникации в Статистике: Теория и Методы, A6, 1977, стр 813–827.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.