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.

Accesorio interactivo

La interfaz de usuario de ajuste básico

La interfaz de usuario de ajuste básico le permite interactivamente:MATLAB®

  • Modele los datos utilizando un Interpolante spline, un Interpolante de preservación de la forma o un polinomio hasta el décimo grado

  • Trace uno o más ajustes junto con datos

  • Graficar los residuos de los ajustes

  • Calcule los coeficientes del modelo

  • Calcule la norma de los residuos (una estadística que puede usar para analizar qué tan bien se ajusta un modelo a sus datos)

  • Utilice el modelo para interpolar o extrapolar fuera de los datos

  • Guarde los coeficientes y los valores calculados en el espacio de trabajo para utilizarlos fuera del cuadro de diálogoMATLAB

  • Genere código para volver a calcular los ajustes y reproduzca parcelas con nuevos datosMATLAB

Nota

La interfaz de usuario de conexión básica solo está disponible para parcelas en 2-D. Para obtener más información sobre la adaptación y el análisis de regresión, consulte la documentación y la documentación.Curve Fitting Toolbox™Statistics and Machine Learning Toolbox™

Preparación para el ajuste básico

La interfaz de usuario de ajuste básico ordena los datos en orden ascendente antes del ajuste. Si el conjunto de datos es grande y los valores no se ordenan en orden ascendente, tardará más tiempo en que la interfaz de usuario de ajuste básico preprocese los datos antes de realizar el ajuste.

Puede acelerar la IU de conexión básica ordenando primero los datos. Para crear vectores ordenados y a partir de vectores de datos, utilice la función:x_sortedy_sortedxyMATLABsort

[x_sorted, i] = sort(x); y_sorted = y(i); 

Abrir la interfaz de usuario de conexión básica

Para usar la interfaz de usuario de conexión básica, primero debe trazar los datos en una ventana de figura, utilizando cualquier comando de trazado que produzca (solo) y datos.MATLABxy

Para abrir la interfaz de usuario de conexión básica, seleccione en los menús de la parte superior de la ventana de la figura.Tools > Basic Fitting

Cuando se expande por completo haciendo doble clic en el botón de flechaen la esquina inferior derecha, la ventana muestra tres paneles. Utilice estos paneles para:

  • Seleccione un modelo y las opciones de trazado

  • Examine y exporte los coeficientes del modelo y las normas de los residuos

  • Examine y exporte valores interpolados y extrapolados.

Para expandir o contraer los paneles uno por uno, haga clic en el botón de flecha en la esquina inferior derecha de la interfaz.

Ejemplo: uso de la interfaz de usuario de conexión básica

En este ejemplo se muestra cómo usar la interfaz de usuario de conexión básica para ajustar, visualizar, analizar, guardar y generar código para las regresiones polinómicas.

Cargar y trazar datos del censo

El archivo,, contiene datos de población de Estados Unidos para los años 1790 a 1990 a intervalos de 10 años.census.mat

Para cargar y trazar los datos, escriba los siguientes comandos en el símbolo del sistema:MATLAB

load census plot(cdate,pop,'ro') 

El comando añade las siguientes variables al espacio de trabajo:loadMATLAB

  • — Un vector de columna que contiene los años de 1790 a 1990 en incrementos de 10.cdate Es la variable predictora.

  • — Un vector de columna con población estadounidense para cada año en.popcdate Es la variable de respuesta.

Los vectores de datos se ordenan en orden ascendente, por año. La trama muestra la población en función del año.

Ahora está listo para encajar una ecuación de los datos para modelar el crecimiento de la población a lo largo del tiempo.

Predecir los datos del censo con un ajuste polinomio cúbico

  1. Abra el cuadro de diálogo ajuste básico seleccionando en la ventana figura.Tools > Basic Fitting

  2. En el área del cuadro de diálogo ajuste básico, active la casilla de verificación para ajustar un polinomio cúbico a los datos.Plot fitscubic

    usa la selección para ajustarse a los datos y agrega la línea de regresión cúbica al gráfico de la siguiente manera.MATLAB

    En la computación del ajuste, encuentra problemas y emite la siguiente ADVERTENCIA:MATLAB

    El polinomio está mal condicionado. Añada puntos con valores X distintos, seleccione un polinomio con un grado inferior o seleccione "centrar y escalar X datos."

    Esta advertencia indica que los coeficientes calculados para el modelo son sensibles a los errores aleatorios en la respuesta (la población medida). También sugiere algunas cosas que usted puede hacer para conseguir un mejor ajuste.

  3. Siga usando un ajuste cúbico. Como no puede agregar nuevas observaciones a los datos del censo, mejore el ajuste transformando los valores que tiene antes de volver a calcular un ajuste.z-scores Seleccione la casilla de verificación en el cuadro de diálogo para que la herramienta de ajuste básico realice la transformación.Center and scale X data

    Para saber cómo funcionan los datos de centrado y escalado, consulte.Aprenda cómo la herramienta de adaptación básica computa los ajustes

  4. Ahora vea las ecuaciones y visualice los residuos. Además de seleccionar las casillas de verificación y, seleccione las siguientes opciones:Center and scale X datacubic

    • Show equations

    • Plot residuals

    • Show norm of residuals

Al seleccionar, se crea una subgráfica de ellas como un gráfico de barras.Plot residuals En la siguiente ilustración se muestran los resultados de las opciones de interfaz de usuario de conexión básica que seleccionó.

El ajuste cúbico es un predictor deficiente antes del año 1790, donde indica una población decreciente. El modelo parece aproximar los datos razonablemente bien después de 1790. Sin embargo, un patrón en los residuos muestra que el modelo no cumple con la suposición de error normal, que es una base para el ajuste de mínimos cuadrados. La línea identificada en la leyenda son los valores de datos observados () y ().data 1xcdateypop La línea de regresión presenta el ajuste después de centrar y escalar los valores de datos.cubic Observe que la figura muestra las unidades de datos originales, aunque la herramienta calcule el ajuste utilizando puntuaciones z transformadas.

Para comparar, intente ajustar otra ecuación polinómica a los datos del censo seleccionándolos en el área.Plot fits

Ver y guardar los parámetros de ajuste cúbico

En el cuadro de diálogo ajuste básico, haga clic en el botón de flechapara mostrar los coeficientes estimados y la norma de los residuos en el panel.Numerical results

Para ver un ajuste específico, selecciónelo en la lista.Fit Esto muestra los coeficientes en el cuadro de diálogo ajuste básico, pero no traza el ajuste en la ventana de la figura.

Nota

Si también desea mostrar un ajuste en el trazado, debe seleccionar la casilla de verificación correspondiente.Plot fits

Guarde los datos de ajuste en el espacio de trabajo haciendo clic en el botón del panel resultados numéricos.MATLABSave to workspace Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo.

Con todas las casillas de verificación seleccionadas, haga clic para guardar los parámetros de ajuste como una estructura:OKMATLAB

fit fit =       type: 'polynomial degree 3'     coeff: [0.9210 25.1834 73.8598 61.7444] 

Ahora, puede usar los resultados de ajuste en la programación, fuera de la interfaz de usuario de conexión básica.MATLAB

Derivar R2, el coeficiente de determinación

Puede obtener una indicación de qué tan bien una regresión polinómica predice los datos observados calculando el o (escrito como Rcoeficiente de determinación,R-cuadrado2). El R2 Estadística, que oscila entre 0 y 1, mide cuán útil es la variable independiente para predecir los valores de la variable dependiente:

  • Un R2 valor cercano a 0 indica que el ajuste no es mucho mejor que el modelo.y = constant

  • Un R2 valor cercano a 1 indica que la variable independiente explica la mayor parte de la variabilidad en la variable dependiente.

Para calcular R2, calcule primero un ajuste y, a continuación, obtenga de él.Residuos Un residuo es la diferencia firmada entre un valor dependiente observado y el valor que su ajuste predice para él.

residuales = yobserved -yfitted

La herramienta de ajuste básico puede generar residuos para cualquier ajuste que calcule. Para ver un gráfico de los residuales, seleccione la casilla de verificación.Plot residuals Puede ver los residuales como una barra, una línea o un gráfico de dispersión.

Después de tener valores residuales, puede guardarlos en el área de trabajo, donde puede calcular R2. Complete la parte anterior de este ejemplo para ajustar un polinomio cúbico a los datos del censo, y después realice estos pasos:

Calcular datos residuales y R2 para un cubic Fit

  1. Haga clic en el botón de flechaen la parte inferior derecha para abrir la pestaña resultados numéricos si aún no está visible.

  2. En el menú desplegable, seleccioneFit cubic Si aún no se muestra.

  3. Guarde los coeficientes de ajuste, la norma de los residuos y los residuales haciendo clic.Save to Workspace

    Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo con tres casillas de verificación y tres campos de texto.

  4. Seleccione las tres casillas de verificación para guardar los coeficientes de ajuste, la norma de los residuos y los valores residuales.

  5. Identifique las variables guardadas como pertenecientes a un ajuste cúbico. Cambie los nombres de las variables agregando un a cada nombre predeterminado (por ejemplo,, y).3fit3normresid3resids3 El cuadro de diálogo debe ser como esta figura.

  6. Haga clic.OK El accesorio básico guarda los residuos como un vector de columna de números, ajusta los coeficientes como struct y la norma de los residuos como un escalar.

    Observe que el valor que calcula el accesorio básico para la norma de los residuos es.12.2380 Este número es la raíz cuadrada de la suma de los residuos cuadrados del ajuste cúbico.

  7. Opcionalmente, puede verificar el valor de la norma de residuos que proporciona la herramienta de ajuste básico. Calcule la norma de residuos usted mismo de la matriz que acaba de guardar:resids3

    mynormresid3 = sum(resids3.^2)^(1/2)  mynormresid3 =     12.2380

  8. Calcule la variable dependiente para calcular Rsuma total de los cuadradospop2. La suma total de los cuadrados es la suma de las diferencias cuadradas de cada valor a partir de la media de la variable. Por ejemplo, utilice este código: calcula la varianza del vector de población.

    SSpop = (length(pop)-1) * var(pop)  SSpop =     1.2356e+005 
    var(pop) Se multiplica por el número de observaciones después de restar 1 para tener en cuenta los grados de libertad. Tanto la suma total de los cuadrados como la norma de los residuos son escalares positivos.

  9. Ahora, Compute R2, utilizando el cuadrado de y:normresid3SSpop

    rsqcubic = 1 - normresid3^2 / SSpop  rsqcubic =     0.9988 

  10. Por último, Compute R2 para un ajuste lineal y compararlo con el cúbico R2 valor que acaba de derivar. La interfaz de usuario de ajuste básico también le proporciona los resultados de ajuste lineal. Para obtener los resultados lineales, repita los pasos 2-6, modificando sus acciones de la siguiente manera:

    • Para calcular los coeficientes de regresión lineal de mínimos cuadrados y las estadísticas, en el menú desplegable del panel resultados numéricos, seleccioneFit linear En lugar de cubic.

    • En el cuadro de diálogo Guardar en espacio de trabajo, anexe a cada nombre de variable para identificarlo como derivado de un ajuste lineal y haga clic en.1OK Las variables, y ahora existen en el espacio de trabajo.fit1normresid1resids1

    • Utilice la variable () para calcular Rnormresid198.7782 para el ajuste lineal, como lo hizo en el paso 9 para el ajuste cúbico:

      rsqlinear = 1 - normresid1^2 / SSpop  rsqlinear =     0.9210 

    Este resultado indica que un ajuste lineal de mínimos cuadrados de los datos de población explica el 92,1% de su varianza. Como el ajuste cúbico de estos datos explica el 99,9% de esa varianza, este último parece ser un mejor predictor. Sin embargo, debido a que un ajuste cúbico predice el uso de tres variables (,x X2Y X3), un R básico2 valor no refleja completamente lo robusto que es el ajuste. Una medida más apropiada para evaluar la bondad de los ajustes multivariados es ajustado R2. Para obtener información sobre la computación y el uso de R2Ver.Los residuos y la bondad de ajuste

Precaución

R2 mide qué tan bien su ecuación polinómica es la variable dependiente, no cómo el modelo polinómico es para sus datos.predictsappropriate Cuando se analizan datos inherentemente impredecibles, un pequeño valor de R2 indica que la variable independiente no predice la variable dependiente con precisión. Sin embargo, no necesariamente significa que hay algo mal con el ajuste.

Calcular datos residuales y R2 para un ajuste lineal.  En el siguiente ejemplo, utilice la interfaz de usuario de conexión básica para realizar un ajuste lineal, guardar los resultados en el espacio de trabajo y calcular R2 para el ajuste lineal. A continuación, puede comparar R2 con el cúbico R2 valor que se deriva en el ejemplo.Calcular datos residuales y R2 para un cubic Fit

  1. Haga clic en el botón de flechaen la parte inferior derecha para abrir la pestaña resultados numéricos si aún no está visible.

  2. Seleccione la casilla de verificación en el área.linearPlot fits

  3. En el menú desplegable, seleccioneFit linear Si aún no se muestra. El área coeficientes y norma de residuos muestra las estadísticas para el ajuste lineal.

  4. Guarde los coeficientes de ajuste, la norma de los residuos y los residuales haciendo clic.Save to Workspace

    Se abre el cuadro de diálogo guardar ajuste al espacio de trabajo con tres casillas de verificación y tres campos de texto.

  5. Seleccione las tres casillas de verificación para guardar los coeficientes de ajuste, la norma de los residuos y los valores residuales.

  6. Identifique las variables guardadas como pertenecientes a un ajuste lineal. Cambie los nombres de las variables agregando un a cada nombre predeterminado (por ejemplo,, y).1fit1normresid1resids1

  7. Haga clic.OK El accesorio básico guarda los residuos como un vector de columna de números, ajusta los coeficientes como struct y la norma de los residuos como un escalar.

    Observe que el valor que calcula el accesorio básico para la norma de los residuos es.98.778 Este número es la raíz cuadrada de la suma de los residuos cuadrados del ajuste lineal.

  8. Opcionalmente, puede verificar el valor de la norma de residuos que proporciona la herramienta de ajuste básico. Calcule la norma de residuos usted mismo de la matriz que acaba de guardar:resids1

    mynormresid1 = sum(resids1.^2)^(1/2)  mynormresid1 =     98.7783

  9. Calcule la variable dependiente para calcular Rsuma total de los cuadradospop2. La suma total de los cuadrados es la suma de las diferencias cuadradas de cada valor a partir de la media de la variable. Por ejemplo, utilice este código: calcula la varianza del vector de población.

    SSpop = (length(pop)-1) * var(pop)  SSpop =     1.2356e+005 
    var(pop) Se multiplica por el número de observaciones después de restar 1 para tener en cuenta los grados de libertad. Tanto la suma total de los cuadrados como la norma de los residuos son escalares positivos.

  10. Ahora, Compute R2, utilizando el cuadrado de y:normresid1SSpop

    rsqlinear = 1 - normresid1^2 / SSpop  rsqcubic =     0.9210 

    Este resultado indica que un ajuste lineal de mínimos cuadrados de los datos de población explica el 92,1% de su varianza. Como el ajuste cúbico de estos datos explica el 99,9% de esa varianza, este último parece ser un mejor predictor. Sin embargo, un ajuste cúbico tiene cuatro coeficientes (,x X2, X3, y una constante), mientras que un ajuste lineal tiene dos coeficientes (y una constante).x Un simple R2 Estadística no tiene en cuenta los diferentes grados de libertad. Una medida más apropiada para evaluar los ajustes polinómicos es ajustado R2. Para obtener información sobre la computación y el uso de R2Ver.Los residuos y la bondad de ajuste

Precaución

R2 mide qué tan bien su ecuación polinómica es la variable dependiente, no cómo el modelo polinómico es para sus datos.predictsappropriate Cuando se analizan datos inherentemente impredecibles, un pequeño valor de R2 indica que la variable independiente no predice la variable dependiente con precisión. Sin embargo, no necesariamente significa que hay algo mal con el ajuste.

Interpolar y extrapolar valores de población

Supongamos que desea utilizar el modelo cúbico para interpolar la población de EE. UU. en 1965 (una fecha no proporcionada en los datos originales).

  1. En el cuadro de diálogo ajuste básico, haga clic en elbotón para especificar un vector de valores en el que evaluar el ajuste actual.x

  2. En el campo, escriba el siguiente valor:Enter value(s)...

    1965 

    Nota

    Utilice valores sin escala y sin centrar.x No es necesario centrar y escalar primero, aunque haya seleccionado escalar valores para obtener los coeficientes.xPredecir los datos del censo con un ajuste polinomio cúbico La herramienta de ajuste básico hace los ajustes necesarios detrás de las escenas.

  3. Haga clic.Evaluate

    Los valores y los valores correspondientes para calculados desde el ajuste y mostrados en una tabla, como se muestra a continuación:xf(x)

  4. Seleccione la casilla de verificación para mostrar el valor interpolado como un marcador de diamante:Plot evaluated results

  5. Guarde la población interpolada en 1965 en el espacio de trabajo haciendo clic en.MATLABSave to workspace

    Se abrirá el siguiente cuadro de diálogo, donde se especifican los nombres de las variables:

  6. Haga clic, pero mantenga la ventana de figura abierta si tiene la intención de seguir los pasos de la siguiente sección,.OKGenere un archivo de código para reproducir el resultado

Genere un archivo de código para reproducir el resultado

Después de completar una sesión de ajuste básico, puede generar código que recalcule los ajustes y reproduzca trazados con nuevos datos.MATLAB

  1. En la ventana de figura, seleccione.File > Generate Code

    Esto crea una función y la muestra en el editor.MATLAB El código muestra cómo reproducir mediante programación lo que hizo de forma interactiva con el cuadro de diálogo ajuste básico.

  2. Cambie el nombre de la función en la primera línea de a algo más específico, como.createfigurecensusplot Guarde el archivo de código en la carpeta actual con el nombre de archivo la función comienza con:censusplot.m

    function censusplot(X1, Y1, valuesToEvaluate1)

  3. Genere algunos datos de censo nuevos y alterados aleatoriamente:

    randpop = pop + 10*randn(size(pop));
  4. Reproduzca la gráfica con los nuevos datos y vuelva a calcular el ajuste:

    censusplot(cdate,randpop,1965)

    Necesita tres argumentos de entrada: Values () trazados en el gráfico original, además de un valor para un marcador.x,ydata 1x

    En la siguiente ilustración se muestra la gráfica que genera el código generado. La nueva gráfica coincide con la apariencia de la figura de la que generó el código, excepto los valores de datos, la ecuación para el ajuste cúbico y los valores residuales en el gráfico de barras, como se esperaba.y

Aprenda cómo la herramienta de adaptación básica computa los ajustes

La herramienta de ajuste básico llama a la función para calcular los ajustes polinómicos.polyfit Llama a la función para evaluar los ajustes. analiza sus entradas para determinar si los datos están bien condicionados para el grado de ajuste solicitado.polyvalpolyfit

Cuando encuentra datos mal condicionados, calcula una regresión tan bien como puede, pero también devuelve una advertencia de que el ajuste podría mejorarse.polyfit La sección de ejemplo de ajuste básico muestra esta advertencia.Predecir los datos del censo con un ajuste polinomio cúbico

Una forma de mejorar la confiabilidad del modelo es agregar puntos de datos. Sin embargo, no siempre es factible agregar observaciones a un conjunto de datos. Una estrategia alternativa es transformar la variable predictora para normalizar su centro y escala. (En el ejemplo, el predictor es el vector de las fechas del censo.)

La función normaliza mediante la computación:polyfitz-scores

z=xμσ

donde están los Datos predictores, es la media de, y es la desviación estándar de.xμxσx Las-puntuaciones dan a los datos una media de 0 y una desviación estándar de 1.z En la interfaz de usuario de conexión básica, se transforman los datos del predictor en puntuaciones seleccionando la casilla de verificación.zCenter and scale x data

Después de centrar y escalar, los coeficientes del modelo se calculan para los datos en función de.yz Estos son diferentes (y más robustos) que los coeficientes calculados como una función de.yx La forma del modelo y la norma de los residuos no cambian. La interfaz de usuario de conexión básica reajusta automáticamente las puntuaciones para que los trazados de ajuste en la misma escala que los datos originales.zx

Para comprender la forma en que los datos centrados y escalados se utilizan como intermediario para crear el trazado final, ejecute el siguiente código en la ventana de comandos:

 close load census x = cdate; y = pop; z = (x-mean(x))/std(x); % Compute z-scores of x data  plot(x,y,'ro') % Plot data as red markers hold on        % Prepare axes to accept new graph on top  zfit = linspace(z(1),z(end),100); pz = polyfit(z,y,3); % Compute conditioned fit yfit = polyval(pz,zfit);  xfit = linspace(x(1),x(end),100); plot(xfit,yfit,'b-') % Plot conditioned fit vs. x data

Los trazados polinómicos cúbicos centrados y a escala como una línea azul, como se muestra aquí:

En el código, el cálculo ilustra cómo normalizar los datos.z La función realiza la propia transformación si proporciona tres argumentos devueltos al llamarlo: los parámetros de regresión devueltos, ahora se basan en normalizado.polyfit

[p,S,mu] = polyfit(x,y,n)
px El vector devuelto,, contiene la media y la desviación estándar de.mux Para obtener más información, consulte la página de referencia.polyfit