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.

NonLinearModel clase

Clase de modelo de regresión no lineal

Descripción

Un objeto que comprende datos de entrenamiento, Descripción del modelo, información de diagnóstico y coeficientes ajustados para una regresión no lineal. Predecir las respuestas del modelo con los métodos o.PredecirFEVAL

Construcción

Cree un objeto utilizando.NonLinearModelfitnlm

Propiedades

expandir todo

Esta propiedad es de solo lectura.

Matriz de covarianza de estimaciones de coeficiente, especificada como una-por-matriz de valores numéricos. es el número de coeficientes en el modelo ajustado.ppp

Para obtener más información, consulte.Errores estándar de coeficiente y intervalos de confianza

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Nombres de coeficiente, especificados como una matriz de celdas de vectores de caracteres, cada uno de los cuales contiene el nombre del término correspondiente.

Tipos de datos: cell

Esta propiedad es de solo lectura.

Valores de coeficiente, especificados como una tabla. contiene una fila por cada coeficiente y estas columnas:Coefficients

  • — Valor del coeficiente EstimadoEstimate

  • — Error estándar de la estimaciónSE

  • —-estadística para una prueba de que el coeficiente es cerotStatt

  • —-valor para el-estadísticopValuept

Utilice (sólo para un modelo de regresión lineal) o para realizar otras pruebas en los coeficientes.anovacoefTest Se utiliza para encontrar los intervalos de confianza de las estimaciones de coeficiente.coefCI

Para obtener cualquiera de estas columnas como un vector, índice en la propiedad mediante la notación de puntos. Por ejemplo, obtenemos el vector de coeficiente estimado en el modelo:mdl

beta = mdl.Coefficients.Estimate

Tipos de datos: table

Esta propiedad es de solo lectura.

Información de diagnóstico para el modelo, especificada como una tabla. Los diagnósticos pueden ayudar a identificar valores atípicos y observaciones influyentes. contiene los siguientes campos.Diagnostics

CampoSignificadoUtilidad
apalancamientoElementos diagonales deHatMatrixEl apalancamiento indica en qué medida el valor previsto para una observación está determinado por el valor observado para esa observación. Un valor cercano indica que la predicción está determinada en gran medida por esa observación, con poca contribución de las otras observaciones.1 Un valor cercano indica que el ajuste está determinado en gran medida por las otras observaciones.0 Para un modelo con coeficientes y observaciones, el valor medio de is.PNapalancamientoP/N Una observación con mayor que puede considerarse que tiene un alto apalancamiento.apalancamiento2*P/N
CooksDistanceLa medida de Cook de cambio escalado en los valores ajustadoses una medida de cambio escalado en los valores ajustados.CooksDistance Una observación con más de tres veces la distancia media de Cook puede ser un valor atípico.CooksDistance
HatMatrixMatriz de proyección para computar ajustada a partir de respuestas observadases una-por-matriz tal que, donde es el vector de respuesta y es el vector de los valores de respuesta ajustada.HatMatrixNNFitted = HatMatrix*YYFitted

Tipos de datos: table

Esta propiedad es de solo lectura.

Grados de libertad para el error (residuos), igual al número de observaciones menos el número de coeficientes estimados, especificado como un entero positivo.

Tipos de datos: double

Esta propiedad es de solo lectura.

Valores ajustados (previstos) basados en los datos de entrada, especificados como un vector numérico. intenta hacer lo más cerca posible de los datos de respuesta.fitnlmFitted

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Información del modelo, especificada como un objeto.NonLinearFormula

Muestre la fórmula del modelo ajustado utilizando la notación de puntos.mdl

mdl.Formula

Esta propiedad es de solo lectura.

Información sobre el proceso de adaptación, especificado como una estructura con los siguientes campos:

  • — Valores de coeficiente iniciales (el vector)InitialCoefsbeta0

  • — Opciones incluidas en el argumento de par nombre-valor para.IterOptsOptionsfitnlm

Tipos de datos: struct

Esta propiedad es de solo lectura.

Probabilidad de registro de la distribución del modelo en los valores de respuesta, especificado como un valor numérico. La media se ajusta a partir del modelo y otros parámetros se estiman como parte del ajuste del modelo.

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Criterio para la comparación de modelos, especificado como una estructura con estos campos:

  • — Criterio de información de Akaike. , donde es el logverosimilitud y es el número de parámetros estimados.AICAIC = –2*logL + 2*mlogLm

  • — Criterio de información de Akaike corregido para el tamaño de la muestra. , donde está el número de observaciones.AICcAICc = AIC + (2*m*(m+1))/(n–m–1)n

  • — Criterio de información bayesiana. .BICBIC = –2*logL + m*log(n)

  • — Criterio de información consistente de Akaike. .CAICCAIC = –2*logL + m*(log(n)+1)

Los criterios de información son herramientas de selección de modelo que puede utilizar para comparar varios modelos aptos para los mismos datos. Estos criterios son medidas basadas en la probabilidad de ajuste de modelo que incluyen una penalización por complejidad (concretamente, el número de parámetros). Diferentes criterios de información se distinguen por la forma de la sanción.

Cuando se comparan varios modelos, el modelo con el valor de criterio de información más bajo es el modelo que mejor se ajusta. El modelo de mejor ajuste puede variar en función del criterio utilizado para la comparación de modelos.

Para obtener cualquiera de los valores de criterio como un escalar, índice en la propiedad mediante la notación de puntos. Por ejemplo, obtenemos el valor AIC en el modelo:aicmdl

aic = mdl.ModelCriterion.AIC

Tipos de datos: struct

Esta propiedad es de solo lectura.

Error medio cuadrado, especificado como un valor numérico. El error medio cuadrado es una estimación de la varianza del término de error en el modelo.

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Número de coeficientes en el modelo ajustado, especificado como un entero positivo. es el mismo que para los objetos. es igual a los grados de libertad para la regresión.NumCoefficientsNumEstimatedCoefficientsNonLinearModelNumEstimatedCoefficients

Tipos de datos: double

Esta propiedad es de solo lectura.

Número de coeficientes estimados en el modelo ajustado, especificado como un entero positivo. es el mismo que para los objetos. es igual a los grados de libertad para la regresión.NumEstimatedCoefficientsNumCoefficientsNonLinearModelNumEstimatedCoefficients

Tipos de datos: double

Esta propiedad es de solo lectura.

Número de variables predictoras utilizadas para ajustarse al modelo, especificadas como un entero positivo.

Tipos de datos: double

Esta propiedad es de solo lectura.

Número de variables en los datos de entrada, especificadas como un entero positivo. es el número de variables en la tabla o DataSet original, o el número total de columnas en la matriz predictora y el vector de respuesta.NumVariables

también incluye cualquier variable que no se utilice para ajustar el modelo como predictores o como la respuesta.NumVariables

Tipos de datos: double

Esta propiedad es de solo lectura.

Información de observación, especificada como una tabla-por-4, donde es igual al número de filas de datos de entrada.nn Contiene las columnas descritas en esta tabla.ObservationInfo

ColumnaDescripción
WeightsPeso de observación, especificado como un valor numérico. El valor predeterminado es.1
ExcludedIndicador de observación excluida, especificado como valor lógico. El valor es si se excluye la observación del ajuste mediante el argumento de par nombre-valor.true'Exclude'
MissingIndicador de falta de observación, especificado como valor lógico. El valor es si falta la observación.true
SubsetIndicador de si una función de ajuste utiliza o no la observación, especificada como un valor lógico. El valor es si la observación no se excluye o falta, lo que significa que la función de ajuste utiliza la observación.true

Para obtener cualquiera de estas columnas como un vector, índice en la propiedad mediante la notación de puntos. Por ejemplo, obtenemos el vector de peso del modelo:wmdl

w = mdl.ObservationInfo.Weights

Tipos de datos: table

Esta propiedad es de solo lectura.

Nombres de observación, especificados como una matriz de celdas de vectores de caracteres que contienen los nombres de las observaciones utilizadas en el ajuste.

  • Si el ajuste se basa en una tabla o un DataSet que contiene nombres de observación, utiliza esos nombres.ObservationNames

  • De lo contrario, es una matriz de celdas vacía.ObservationNames

Tipos de datos: cell

Esta propiedad es de solo lectura.

Nombres de los predictores que se utilizan para ajustarse al modelo, especificado como una matriz de vectores de caracteres de celda.

Tipos de datos: cell

Esta propiedad es de solo lectura.

Residuales para el modelo ajustado, especificado como una tabla que contiene una fila para cada observación y las columnas descritas en esta tabla.

ColumnaDescripción
RawObservado menos ajustados valores
PearsonResiduos brutos divididos por el error medio cuadrado de la raíz (RMSE)
StandardizedLos residuos brutos divididos por su desviación estándar estimada
StudentizedResiduo crudo dividido por una estimación independiente de la desviación estándar residual. El residuo para la observación se divide por una estimación de la desviación estándar de error basada en todas las observaciones excepto en la observación.ii

Se utiliza para crear una gráfica de los residuos.plotResiduals Para obtener más información, consulte.Residuos

Las filas no utilizadas en el ajuste debido a que faltan valores (in) o valores excluidos (in) contienen valores.ObservationInfo.MissingObservationInfo.ExcludedNaN

Para obtener cualquiera de estas columnas como un vector, índice en la propiedad mediante la notación de puntos. Por ejemplo, obtenga el vector residual en bruto en el modelo:rmdl

r = mdl.Residuals.Raw

Tipos de datos: table

Esta propiedad es de solo lectura.

Nombre de variable de respuesta, especificado como un vector de caracteres.

Tipos de datos: char

Esta propiedad es de solo lectura.

Error cuadrático medio cuadrado, especificado como un valor numérico. El error medio cuadrado de la raíz es una estimación de la desviación estándar del término de error en el modelo.

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Información de ajuste robusta, especificada como una estructura con los siguientes campos:

CampoDescripción
WgtFunFunción de ponderación robusta, como (ver)'bisquare'robustfit
TuneValor especificado para ajustar el parámetro (puede ser)[]
WeightsVector de pesos utilizado en la iteración final de ajuste robusto

Esta estructura está vacía a menos que se construya el modelo utilizando una regresión robusta.fitnlm

Tipos de datos: struct

Esta propiedad es de solo lectura.

Valor R cuadrado para el modelo, especificado como una estructura con dos campos:

  • — Ordinario (sin ajustar) R cuadradoOrdinary

  • — R cuadrado ajustado para el número de coeficientesAdjusted

El valor R cuadrado es la proporción de la suma total de los cuadrados explicados por el modelo. El valor R cuadrado ordinario se relaciona con las propiedades y:SSRSST

Rsquared = SSR/SST = 1 – SSE/SST,

donde está la suma total de los cuadrados, es la suma de los errores cuadrados, y es la suma de la regresión de los cuadrados.SSTSSESSR

Para obtener más información, consulte.Coeficiente de determinación (R-cuadrado)

Para obtener cualquiera de estos valores como un valor escalar, índice en la propiedad mediante la notación de puntos. Por ejemplo, obtenga el valor R cuadrado ajustado en el modelo:mdl

r2 = mdl.Rsquared.Adjusted

Tipos de datos: struct

Esta propiedad es de solo lectura.

Suma de errores cuadrados (residuales), especificado como un valor numérico.

El teorema de Pitágoras implica

SST = SSE + SSR,

donde está la suma total de los cuadrados, es la suma de los errores cuadrados, y es la suma de la regresión de los cuadrados.SSTSSESSR

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Suma de los cuadrados de regresión, especificado como un valor numérico. La suma de los cuadrados de la regresión es igual a la suma de las desviaciones cuadradas de los valores ajustados de su media.

El teorema de Pitágoras implica

SST = SSE + SSR,

donde está la suma total de los cuadrados, es la suma de los errores cuadrados, y es la suma de la regresión de los cuadrados.SSTSSESSR

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Suma total de cuadrados, especificado como un valor numérico. La suma total de los cuadrados es igual a la suma de las desviaciones cuadradas del vector de respuesta de la.ymean(y)

El teorema de Pitágoras implica

SST = SSE + SSR,

donde está la suma total de los cuadrados, es la suma de los errores cuadrados, y es la suma de la regresión de los cuadrados.SSTSSESSR

Tipos de datos: single | double

Esta propiedad es de solo lectura.

Información sobre las variables contenidas en, especificadas como una tabla con una fila para cada variable y las columnas descritas en esta tabla.Variables

ColumnaDescripción
ClassClase de variable, especificada como una matriz de celdas de vectores de caracteres, como y'double''categorical'
Range

Rango variable, especificado como una matriz de vectores de celdas

  • Variable continua: Vector de dos elementos [min,max], los valores mínimo y máximo

  • Variable categórica: Vector de valores de variable distintos

InModelIndicador de qué variables se encuentran en el modelo ajustado, especificado como vector lógico. El valor es si el modelo incluye la variable.true
IsCategoricalIndicador de variables categóricas, especificado como vector lógico. El valor es si la variable es categórica.true

también incluye cualquier variable que no se utilice para ajustar el modelo como predictores o como la respuesta.VariableInfo

Tipos de datos: table

Esta propiedad es de solo lectura.

Nombres de variables, especificadas como una matriz de vectores de caracteres de celda.

  • Si el ajuste se basa en una tabla o un conjunto de datos, esta propiedad proporciona los nombres de las variables de la tabla o DataSet.

  • Si el ajuste se basa en una matriz predictora y un vector de respuesta, contiene los valores especificados por el argumento de par nombre-valor del método de empalme.VariableNames'VarNames' El valor predeterminado es.'VarNames'{'x1','x2',...,'xn','y'}

también incluye cualquier variable que no se utilice para ajustar el modelo como predictores o como la respuesta.VariableNames

Tipos de datos: cell

Esta propiedad es de solo lectura.

Datos de entrada, especificados como una tabla. contiene valores de predictor y de respuesta.Variables Si el ajuste se basa en una tabla o matriz de DataSet, contiene todos los datos de la tabla o conjunto de datasets.Variables De lo contrario, es una tabla creada a partir de la matriz de datos de entrada y la respuesta del vector.VariablesXy

también incluye cualquier variable que no se utilice para ajustar el modelo como predictores o como la respuesta.Variables

Tipos de datos: table

Métodos

coefCIIntervalos de confianza de estimaciones de coeficiente de modelo de regresión no lineal
coefTestPrueba de hipótesis lineal en coeficientes de modelo de regresión no lineal
dispMostrar modelo de regresión no lineal
fevalEvalúe la predicción del modelo de regresión no lineal
fit(No recomendado) Ajustar modelo de regresión no lineal
plotDiagnosticsEl diagnóstico de trazado del modelo de regresión no lineal
plotResidualsLos residuales de trazado del modelo de regresión no lineal
plotSliceParcela de sectores a través de superficie de regresión no lineal ajustada
predictPredecir la respuesta del modelo de regresión no lineal
randomSimular respuestas para el modelo de regresión no lineal

Semántica de copia

Valor. Para saber cómo afectan las clases de valor a las operaciones de copia, consulte.Copiar objetos (MATLAB)

Ejemplos

contraer todo

Ajuste un modelo de regresión no lineal para el kilometraje automático basado en los datos.carbig Predecir el kilometraje de un coche promedio.

Cargue los datos de ejemplo. Cree una matriz que contenga las mediciones para la potencia () y el peso () de cada coche.XHorsepowerWeight Cree un vector que contenga los valores de respuesta en millas por galón ().yMPG

load carbig X = [Horsepower,Weight]; y = MPG;

Ajuste un modelo de regresión no lineal.

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 

Encuentra el kilometraje pronosticado de un auto promedio. Dado que los datos de ejemplo contienen algunas observaciones faltantes (), calcule la media utilizando.NaNnanmean

Xnew = nanmean(X)  
Xnew = 1×2
103 ×

    0.1051    2.9794

MPGnew = predict(mdl,Xnew)
MPGnew = 21.8073 

Más acerca de

expandir todo