Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

fitnlm

Ajustar modelo de regresión no lineal

Descripción

ejemplo

mdl = fitnlm(tbl,modelfun,beta0) se ajusta al modelo especificado por las variables de la matriz de tabla o DataSet y devuelve el modelo no lineal.modelfuntblmdl

calcula los coeficientes del modelo mediante un procedimiento iterativo a partir de los valores iniciales.fitnlmbeta0

ejemplo

mdl = fitnlm(X,y,modelfun,beta0) se ajusta a un modelo de regresión no lineal utilizando el vector de columna como variable de respuesta y las columnas de la matriz como variables predictoras.yX

ejemplo

mdl = fitnlm(___,modelfun,beta0,Name,Value) se ajusta a un modelo de regresión no lineal con opciones adicionales especificadas por uno o más argumentos de par.Name,Value

Ejemplos

contraer todo

Cree un modelo no lineal para el kilometraje automático basado en los datos.carbig

Cargue los datos y cree un modelo no lineal.

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 

Cree un modelo no lineal para el kilometraje automático basado en los datos.carbig

Cargue los datos y cree un modelo no lineal.

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 

Cree un modelo no lineal para el kilometraje automático basado en los datos.carbig Procure más precisión bajando la opción y observe las iteraciones estableciendo la opción.TolFunDisplay

Cargue los datos y cree un modelo no lineal.

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];

Cree opciones para reducir y notificar la visualización iterativa y crear un modelo utilizando las opciones.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.9651           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.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.0583         2.66942           85         6069.05         86.7842         2.60741           86         6069.03         83.6513         2.54745           87         6069.02         80.6529         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.1367         2.17849           94         6068.94         62.9122         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.62745          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.2341         3.63254          111         6068.51         69.8362         3.26019          112         6068.51         50.3734         2.93541          113          6068.5         36.0205         2.65062          114          6068.5         25.4451         2.39969          115         6068.49         17.6693         2.17764          116         6068.49          1027.4         14.0164          117         6068.48         544.038         5.31368          118         6068.48          94.057         2.86663          119         6068.48         113.636         3.73502          120         6068.48        0.518548         1.37049          121         6068.48         4.59432         0.91283          122         6068.48         1.56363        0.629281          123         6068.48         1.13811        0.432539          124         6068.48        0.295961        0.297507 Iterations terminated: relative change in SSE less than OPTIONS.TolFun 

Especifique un modelo de regresión no lineal para la estimación mediante un identificador de función o una sintaxis de modelo.

Cargue datos de muestra.

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

Utilice un manejador de funciones para especificar el modelo Hougen-Watson para los datos de velocidad.

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 

Como alternativa, puede utilizar una expresión para especificar el modelo Hougen-Watson para los datos de velocidad.

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 

Genere datos de ejemplo del modelo de regresión no lineal

<math display="block">
<mrow>
<mi>y</mi>
<mo>=</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mi mathvariant="normal">exp</mi>
<mo stretchy="false">(</mo>
<mo>-</mo>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>3</mn>
</mrow>
</msub>
<mi>x</mi>
<mo stretchy="false">)</mo>
<mo>+</mo>
<mi>ε</mi>
<mo>,</mo>
</mrow>
</math>

Dónde

<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
</mrow>
</math>
,
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
</mrow>
</math>
Y
<math display="block">
<mrow>
<msub>
<mrow>
<mi>b</mi>
</mrow>
<mrow>
<mn>3</mn>
</mrow>
</msub>
</mrow>
</math>
son coeficientes, y el término de error se distribuye normalmente con la media 0 y la desviación estándar 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);

Establezca opciones de ajuste robustas.

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

Ajuste el modelo no lineal utilizando las opciones de ajuste robusto. Aquí, utilice una expresión para especificar el modelo.

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 

Cargue datos de muestra.

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

Especifique un manejador de funciones para ponderaciones de observación. La función acepta los valores ajustados del modelo como entrada y devuelve un vector de pesos.

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

Ajuste el modelo Hougen-Watson a los datos de velocidad utilizando la función de ponderaciones de observación especificada.

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 

Cargue datos de muestra.

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

Ajuste el modelo Hougen-Watson a los datos de velocidad utilizando el modelo combinado de desviación de error.

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 

Argumentos de entrada

contraer todo

Datos de entrada, especificados como una tabla o matriz de DataSet. Si no especifica las variables de predictor y respuesta, la última variable es la variable de respuesta y las otras son las variables predictoras de forma predeterminada.

Las variables predictoras y la variable de respuesta deben ser numéricas.

Especifique los nombres de respuesta y predictor en la especificación del modelo. Si no especifica un modelo, puede establecer una columna diferente como variable de respuesta mediante el argumento de par nombre-valor.ResponseVar Puede seleccionar un subconjunto de las columnas como predictores mediante el argumento de par nombre-valor.PredictorVars

Tipos de datos: table

Variables predictoras, especificadas como una-por-matriz, donde es el número de observaciones y es el número de variables predictoras.npnp Cada columna de representa una variable, y cada fila representa una observación.X

Tipos de datos: single | double

Variable de respuesta, especificada como un vector-by-1, donde es el número de observaciones.nn Cada entrada es la respuesta de la fila correspondiente de.yX

Tipos de datos: single | double

Forma funcional del modelo, especificada como cualquiera de las siguientes.

  • El manejador de funciones @modelfun O @(b,x)modelfunDónde

    • es un vector de coeficiente con el mismo número de elementos que.bbeta0

    • es una matriz con el mismo número de columnas o el número de columnas de variables predictoras de.xXtbl

    modelfunDevuelve un vector de columna que contiene el mismo número de filas que.(b,x)x Cada fila del vector es el resultado de evaluar modelfun en la fila correspondiente de.x En otras palabras, modelfun es una función vectorizada, una que opera en todas las filas de datos y devuelve todas las evaluaciones en una llamada de función. modelfun deben devolver números reales para obtener coeficientes significativos.

  • Vector de caracteres o escalar de cadena del formulario 'y ~ f(b1,b2,...,bj,x1,x2,...,xk)'Dónde f representa una función escalar de las variables de coeficiente escalar,..., y las variables de datos escalares,...,.b1bjx1xk

Tipos de datos: function_handle | char | string

Coeficientes para el modelo no lineal, especificado como un vector numérico. comienza su búsqueda de coeficientes óptimos de.NonLinearModelbeta0

Tipos de datos: single | double

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Ejemplo: especifica el modelo de error como el modelo combinado, excluye la segunda observación del ajuste y utiliza las opciones definidas en la estructura para controlar el procedimiento de ajuste iterativo.'ErrorModel','combined','Exclude',2,'Options',optopt

Nombres de los coeficientes del modelo, especificados como matriz de cadenas o matriz de vectores de caracteres.

Tipos de datos: string | cell

Forma del modelo de desviación de error, especificada como una de las siguientes. Cada modelo define el error utilizando una variable media-cero y unidad-varianza estándar en combinación con componentes independientes: el valor de la función y uno o dos parámetros yefab

predeterminado'constant'y=f+ae
'proportional'y=f+bfe
'combined'y=f+(a+b|f|)e

El único modelo de error permitido cuando se utiliza es.Weights'constant'

Nota

debe tener valor cuando se usa un modelo de error que no sea.options.RobustWgtFun[]'constant'

Ejemplo: 'ErrorModel','proportional'

Estimaciones iniciales de los parámetros del modelo de error para los elegidos, especificados como una matriz numérica.ErrorModel

Modelo de errorParámetrosValores predeterminados
'constant' a1
'proportional'b1
'combined',ab[1,1]

Sólo se puede utilizar el modelo de error cuando se utiliza.'constant'Weights

Nota

debe tener valor cuando se usa un modelo de error que no sea.options.RobustWgtFun[]'constant'

Por ejemplo, si tiene el valor, puede especificar el valor inicial 1 para y el valor inicial 2 para lo siguiente.'ErrorModel''combined'ab

Ejemplo: 'ErrorParameters',[1,2]

Tipos de datos: single | double

Observaciones que se excluirán del ajuste, especificadas como el par separado por comas consistente en un vector de índice lógico o numérico que indica las observaciones que se excluirán del ajuste.'Exclude'

Por ejemplo, puede excluir las observaciones 2 y 3 de 6 utilizando cualquiera de los ejemplos siguientes.

Ejemplo: 'Exclude',[2,3]

Ejemplo: 'Exclude',logical([0 1 1 0 0 0])

Tipos de datos: single | double | logical

Opciones para controlar el procedimiento de empalme iterativo, especificado como una estructura creada por.statset Los campos relevantes son los campos no vacíos en la estructura devuelta por la llamada.statset('fitnlm')

OpciónSignificadoPredeterminado
DerivStepDiferencia relativa utilizada en cálculos derivados de diferencias finitas. Un escalar positivo, o un vector de escalares positivos del mismo tamaño que el vector de parámetros estimados por la función utilizando la estructura de opciones.Statistics and Machine Learning Toolbox™eps^(1/3)
Display

Cantidad de información mostrada por el algoritmo de ajuste.

  • : No muestra información.'off'

  • : Muestra la salida final.'final'

  • : Muestra la salida iterativa en la ventana de comandos.'iter'

'off'
FunValCheckVector de caracteres o escalar de cadena que indica para comprobar si hay valores no válidos, como o, de la función de modelo.NaNInf'on'
MaxIterNúmero máximo de iteraciones permitidas. Entero positivo.200
RobustWgtFunFunción de peso para un ajuste robusto. También puede ser un identificador de función que acepte un residuo normalizado como entrada y devuelva los pesos sólidos como salida. Si usa un identificador de función, dé una constante.Tune VerOpciones robustas[]
TuneConstante de sintonización utilizada en un accesorio robusto para normalizar los residuos antes de aplicar la función de peso. Un escalar positivo. Requerido si la función Weight se especifica como un manejador de función.Consulte el valor predeterminado, que depende de.Opciones robustasRobustWgtFun
TolFunTolerancia de terminación para el valor de la función objetiva. Escalar positivo.1e-8
TolXTolerancia de terminación para los parámetros. Escalar positivo.1e-8

Tipos de datos: struct

Las variables predictoras que se usarán en el ajuste, especificadas como el par separado por comas que consta de una matriz de cadenas o matriz de vectores de caracteres de los nombres de variables de la matriz de tabla o DataSet, o un vector de índice numérico o lógico que indica qué columnas están variables predictoras.'PredictorVars'tbl

Los valores de cadena o vectores de caracteres deben estar entre los nombres de, o los nombres que especifique mediante el argumento de par nombre-valor.tbl'VarNames'

El valor predeterminado es todas las variables en, o todas las variables en excepto para.XtblResponseVar

Por ejemplo, puede especificar las variables segunda y tercera como variables predictoras utilizando uno de los siguientes ejemplos.

Ejemplo: 'PredictorVars',[2,3]

Ejemplo: 'PredictorVars',logical([0 1 1 0 0 0])

Tipos de datos: single | double | logical | string | cell

Variable de respuesta que se va a utilizar en el ajuste, especificado como el par separado por comas que consta de un nombre de variable en la matriz de tabla o DataSet, o un vector de índice numérico o lógico que indica qué columna es la variable de respuesta.'ResponseVar'tbl

Si especifica un modelo, especifica la variable de respuesta. De lo contrario, al ajustar una matriz de tabla o DataSet, indica qué variable debe usar como respuesta.'ResponseVar'fitnlm

Por ejemplo, puede especificar la cuarta variable, digamos, como la respuesta de seis variables, de una de las siguientes maneras.yield

Ejemplo: 'ResponseVar','yield'

Ejemplo: 'ResponseVar',[4]

Ejemplo: 'ResponseVar',logical([0 0 0 1 0 0])

Tipos de datos: single | double | logical | char | string

Nombres de variables, especificadas como el par separado por comas que consta de una matriz de cadenas o matriz de vectores de caracteres, incluidos los nombres de las columnas de First, y el nombre de la variable de respuesta Last.'VarNames'Xy

no es aplicable a las variables de una matriz de tabla o DataSet, ya que esas variables ya tienen nombres.'VarNames'

Por ejemplo, si en sus datos, potencia, aceleración y año de modelo de los coches son las variables predictoras, y millas por galón (MPG) es la variable de respuesta, a continuación, puede nombrar las variables de la siguiente manera.

Ejemplo: 'VarNames',{'Horsepower','Acceleration','Model_Year','MPG'}

Tipos de datos: string | cell

Ponderaciones de observación, especificadas como un vector de valores escalares no negativos o de un manejador de funciones.

  • Si especifica un vector, debe tener elementos, donde es el número de filas en o.nntbly

  • Si especifica un identificador de función, la función debe aceptar un vector de valores de respuesta pronosticados como entrada y devolver un vector de pesos positivos reales como salida.

Pesos dados,, estima la varianza del error en la observación por, donde MSE es el error cuadrado medio.WNonLinearModeliMSE*(1/W(i))

Tipos de datos: single | double | function_handle

Argumentos de salida

contraer todo

Modelo no lineal que representa un ajuste de mínimos cuadrados de la respuesta a los datos, devuelto como un objeto.NonLinearModel

Si la estructura contiene un campo no vacío, el modelo no es un ajuste de mínimos cuadrados, sino que utiliza la función de ajuste robusto.OptionsRobustWgtFunRobustWgtFun

Para las propiedades y los métodos del objeto de modelo no lineal, vea la página de clase.mdlNonLinearModel

Más acerca de

contraer todo

Opciones robustas

Función de pesoEcuaciónConstante de sintonización predeterminada
'andrews'w = (abs(r)<pi) .* sin(r) ./ r1,339
predeterminado'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
[]Sin ajuste robusto

Algoritmos

utiliza el mismo algoritmo de ajuste que.fitnlmnlinfit

Referencias

[1] Seber, G. A. F., and C. J. Wild. Nonlinear Regression. Hoboken, NJ: Wiley-Interscience, 2003.

[2] DuMouchel, W. H., and F. L. O'Brien. “Integrating a Robust Option into a Multiple Regression Computing Environment.” Computer Science and Statistics: Proceedings of the 21st Symposium on the Interface. Alexandria, VA: American Statistical Association, 1989.

[3] Holland, P. W., and R. E. Welsch. “Robust Regression Using Iteratively Reweighted Least-Squares.” Communications in Statistics: Theory and Methods, A6, 1977, pp. 813–827.

Introducido en R2013b