Está en la página 1de 35

Ajuste de curvas.

Regresión.

Curso: Métodos Numéricos en Ingenierı́a


Profesor: Dr. José A. Otero Hernández
Correo: j.a.otero@tec.mx
web: http://metodosnumericoscem.weebly.com
Universidad: ITESM CEM
beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Tópicos

1 Introducción

2 Regresión por mı́nimos cuadrados


Regresión lineal por mı́nimos cuadrados
Ejemplo
Programa MATLAB: linregr.m
Regresión cuadrática por mı́nimos cuadrados
Programa MATLAB: cuadregr.m
Ejemplo

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Tópicos

1 Introducción

2 Regresión por mı́nimos cuadrados


Regresión lineal por mı́nimos cuadrados
Ejemplo
Programa MATLAB: linregr.m
Regresión cuadrática por mı́nimos cuadrados
Programa MATLAB: cuadregr.m
Ejemplo

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ajuste de curvas
Es común que los datos se den como valores discretos,
Se podrı́a necesitar la estimación de un punto entre
valores discretos,
Se podrı́a necesitar una curva que ajuste los datos para
obtener estimaciones intermedias,
Se podrı́a necesitar una version simplificada de una
función complicada,
Estas aplicaciones se conocen como ajuste de curvas.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ajuste de curvas
Es común que los datos se den como valores discretos,
Se podrı́a necesitar la estimación de un punto entre
valores discretos,
Se podrı́a necesitar una curva que ajuste los datos para
obtener estimaciones intermedias,
Se podrı́a necesitar una version simplificada de una
función complicada,
Estas aplicaciones se conocen como ajuste de curvas.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ajuste de curvas
Es común que los datos se den como valores discretos,
Se podrı́a necesitar la estimación de un punto entre
valores discretos,
Se podrı́a necesitar una curva que ajuste los datos para
obtener estimaciones intermedias,
Se podrı́a necesitar una version simplificada de una
función complicada,
Estas aplicaciones se conocen como ajuste de curvas.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ajuste de curvas
Es común que los datos se den como valores discretos,
Se podrı́a necesitar la estimación de un punto entre
valores discretos,
Se podrı́a necesitar una curva que ajuste los datos para
obtener estimaciones intermedias,
Se podrı́a necesitar una version simplificada de una
función complicada,
Estas aplicaciones se conocen como ajuste de curvas.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ajuste de curvas
Es común que los datos se den como valores discretos,
Se podrı́a necesitar la estimación de un punto entre
valores discretos,
Se podrı́a necesitar una curva que ajuste los datos para
obtener estimaciones intermedias,
Se podrı́a necesitar una version simplificada de una
función complicada,
Estas aplicaciones se conocen como ajuste de curvas.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Métodos generales para el ajuste de curvas


Regresión: Si los datos exhiben un grado significativo de error
o ”ruido”, entonces la estrategia será obtener una sola curva
que represente la tendencia general de los datos.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Métodos generales para el ajuste de curvas


Interpolación: Si se sabe que los datos son muy precisos,
entonces la estrategia será colocar una curva o una serie de
curvas que pasen por cada uno de los puntos.

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Tópicos

1 Introducción

2 Regresión por mı́nimos cuadrados


Regresión lineal por mı́nimos cuadrados
Ejemplo
Programa MATLAB: linregr.m
Regresión cuadrática por mı́nimos cuadrados
Programa MATLAB: cuadregr.m
Ejemplo

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados


Problema: Ajustar a una lı́nea recta (y = a0 + a1 x) el conjunto
de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) es la diferencia entre el modelo (linea recta) y la
data, es decir es la diferencia entre el valor verdadero de y y el
valor aproximado a0 + a1 x. Por lo cual, se puede determinar
como:
e = y − a0 − a1 x
Para cada punto (xi , yi ) se define un error ei . La estrategia
para ajustar la linea recta consiste en minimizar la suma de los
cuadrados de los errores entre los valores verdaderos y los
valores aproximados. Esto es:
n
X n
X
Sr = e2i = (yi − a0 − a1 xi )2 beamer-tu-log
i=1 i=1
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados


Problema: Ajustar a una lı́nea recta (y = a0 + a1 x) el conjunto
de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) es la diferencia entre el modelo (linea recta) y la
data, es decir es la diferencia entre el valor verdadero de y y el
valor aproximado a0 + a1 x. Por lo cual, se puede determinar
como:
e = y − a0 − a1 x
Para cada punto (xi , yi ) se define un error ei . La estrategia
para ajustar la linea recta consiste en minimizar la suma de los
cuadrados de los errores entre los valores verdaderos y los
valores aproximados. Esto es:
n
X n
X
Sr = e2i = (yi − a0 − a1 xi )2 beamer-tu-log
i=1 i=1
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados


Problema: Ajustar a una lı́nea recta (y = a0 + a1 x) el conjunto
de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) es la diferencia entre el modelo (linea recta) y la
data, es decir es la diferencia entre el valor verdadero de y y el
valor aproximado a0 + a1 x. Por lo cual, se puede determinar
como:
e = y − a0 − a1 x
Para cada punto (xi , yi ) se define un error ei . La estrategia
para ajustar la linea recta consiste en minimizar la suma de los
cuadrados de los errores entre los valores verdaderos y los
valores aproximados. Esto es:
n
X n
X
Sr = e2i = (yi − a0 − a1 xi )2 beamer-tu-log
i=1 i=1
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Ajuste de una lı́nea recta por mı́nimos cuadrados


Para determinar los valores de a0 y a1 , hay que derivar Sr con
respecto a cada uno de los coeficientes (a0 , a1 ) e igual a cero:
n
∂Sr X
= −2 (yi − a0 − a1 xi ) = 0
∂a0
i=1
n
∂Sr X
= −2 (yi − a0 − a1 xi ) xi = 0
∂a1
i=1

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Ajuste de una lı́nea recta por mı́nimos cuadrados

n
X n
X n
X
0 = yi − a0 − a1 xi
i=1 i=1 i=1
Xn n
X n
X
0 = yi x i − a0 xi − a1 x2i
i=1 i=1 i=1

Ajuste de una lı́nea recta por mı́nimos cuadrados

n n
!
X X
yi = na0 + xi a1
i=1 i=1
n n n
! !
X X X
xi yi = xi a0 + x2i a1
i=1 i=1 i=1 beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Ajuste de una lı́nea recta por mı́nimos cuadrados

n
X n
X n
X
0 = yi − a0 − a1 xi
i=1 i=1 i=1
Xn n
X n
X
0 = yi x i − a0 xi − a1 x2i
i=1 i=1 i=1

Ajuste de una lı́nea recta por mı́nimos cuadrados

n n
!
X X
yi = na0 + xi a1
i=1 i=1
n n n
! !
X X X
xi yi = xi a0 + x2i a1
i=1 i=1 i=1 beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión lineal por mı́nimos cuadrados

Ajuste de una lı́nea recta por mı́nimos cuadrados

n
P n
P n
P
n x i yi − xi yi
i=1 i=1 i=1
a1 =  n 2
n
x2i −
P P
n xi
i=1 i=1
n
P n
P
yi xi
i=1 i=1
a0 = − a1
n n

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ejemplo

Ejemplo 1
Ajuste a una lı́nea recta los valores de x y y dados en la
siguiente tabla:

xi yi
1 0.5
2 2.5
3 2.0
4 4.0
5 3.5
6 6.0
7 5.5

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ejemplo

Solución
clear ; clc ;
x =[1 2 3 4 5 6 7 ] ;
y= [ 0 . 5 2 . 5 2 . 0 4 . 0 3 . 5 6 . 0 5 . 5 ] ;
n=length ( x ) ;
sxy=sum( x . ∗ y )
sx2=sum( x . ∗ x )
sx=sum( x )
sy=sum( y )
a1 =( n∗ sxy−sx ∗ sy ) / ( n∗sx2 −(sx ) ˆ 2 )
a0=sy / n−a1∗ sx / n

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ejemplo

Solución
% S o l u c i o n ejemplo 1
sxy = 119.5000
sx2 = 140
sx = 28
sy = 24
a1 = 0.8393
a0 = 0.0714
y = 0.0714+0.8393∗ x

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Programa MATLAB: linregr.m

Programa Matlab
function [ a ] = l i n r e g r ( x , y )
% l i n r e g r : A j u s t e de curva con r e g r e s i o n l i n e a l
% Entrada : x , y−−−−S a l i d a : a = [ a1 , a0 ]
n = length ( x ) ;
i f length ( y ) ˜= n , e r r o r ( ’ x−y d i f e r e n t e s l o n g i t u d e s ’ ) ; end
sx = sum( x ) ; sy = sum( y ) ;
sx2 = sum( x . ∗ x ) ; sxy = sum( x . ∗ y ) ;
a ( 1 ) = ( n∗ sxy−sx ∗ sy ) / ( n∗sx2−sx ˆ 2 ) ;
a ( 2 ) = sy / n−a ( 1 ) ∗ sx / n ;
% P l o t e o de l a data y l i n e a r e c t a a j u s t a d a
xp = linspace ( min ( x ) ,max( x ) , 2 ) ;
yp = a ( 1 ) ∗xp+a ( 2 ) ;
p l o t ( x ’ , y ’ , ’ o ’ , xp , yp ) ; g r i d on

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Programa MATLAB: linregr.m

Ejemplo 1: Programa Matlab

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados


Problema: Ajustar a un polinomio cuadrático
(y = a0 + a1 x + a2 x2 ) el conjunto de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) se puede determinar como:

e = y − a0 − a1 x − a2 x2

Para cada punto (xi , yi ) se define un error ei .


La estrategia para ajustar el polinomio cuadrático consiste en
minimizar la suma de los cuadrados de los errores entre los
valores verdaderos y los valores aproximados. Esto es:
n n
X X 2
Sr = e2i = yi − a0 − a1 xi − a2 x2i
i=1 i=1
beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados


Problema: Ajustar a un polinomio cuadrático
(y = a0 + a1 x + a2 x2 ) el conjunto de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) se puede determinar como:

e = y − a0 − a1 x − a2 x2

Para cada punto (xi , yi ) se define un error ei .


La estrategia para ajustar el polinomio cuadrático consiste en
minimizar la suma de los cuadrados de los errores entre los
valores verdaderos y los valores aproximados. Esto es:
n n
X X 2
Sr = e2i = yi − a0 − a1 xi − a2 x2i
i=1 i=1
beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados


Problema: Ajustar a un polinomio cuadrático
(y = a0 + a1 x + a2 x2 ) el conjunto de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) se puede determinar como:

e = y − a0 − a1 x − a2 x2

Para cada punto (xi , yi ) se define un error ei .


La estrategia para ajustar el polinomio cuadrático consiste en
minimizar la suma de los cuadrados de los errores entre los
valores verdaderos y los valores aproximados. Esto es:
n n
X X 2
Sr = e2i = yi − a0 − a1 xi − a2 x2i
i=1 i=1
beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados


Problema: Ajustar a un polinomio cuadrático
(y = a0 + a1 x + a2 x2 ) el conjunto de puntos:
(x1 , y1 ),(x2 , y2 ),· · · ,(xn , yn ).
El error (e) se puede determinar como:

e = y − a0 − a1 x − a2 x2

Para cada punto (xi , yi ) se define un error ei .


La estrategia para ajustar el polinomio cuadrático consiste en
minimizar la suma de los cuadrados de los errores entre los
valores verdaderos y los valores aproximados. Esto es:
n n
X X 2
Sr = e2i = yi − a0 − a1 xi − a2 x2i
i=1 i=1
beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Ajuste del polinomio cuadrático por mı́nimos cuadrados


Para determinar los valores de a0 , a1 y a2 , hay que derivar Sr
con respecto a cada uno de los coeficientes (a0 , a1 , a2 ) e igual
a cero:
n
∂Sr X
yi − a0 − a1 xi − a2 x2i = 0

= −2
∂a0
i=1
n
∂Sr X
yi − a0 − a1 xi − a2 x2i xi = 0

= −2
∂a1
i=1
n
∂Sr X
yi − a0 − a1 xi − a2 x2i x2i = 0

= −2
∂a2
i=1

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Ajuste del polinomio cuadrático por mı́nimos cuadrados

n n n
! !
X X X
yi = n a0 + xi a1 + x2i a2
i=1 i=1 i=1
n n n n
! ! !
X X X X
xi yi = xi a0 + x2i a1 + x3i a2
i=1 i=1 i=1 i=1
n n n n
! ! !
X X X X
x2i yi = x2i a0 + x3i a1 + x4i a2
i=1 i=1 i=1 i=1

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Programa para la solución del sistema


clear ; clc ;
syms a0 a1 a2 n sx sy sx2 sxy sx3 sx4 sx2y ;
eq1=n∗a0+sx ∗a1+sx2 ∗a2−sy ;
eq2=sx ∗a0+sx2 ∗a1+sx3 ∗a2−sxy ;
eq3=sx2 ∗a0+sx3 ∗a1+sx4 ∗a2−sx2y ;
[ a0 a1 a2 ] = s o l v e ( eq1 , eq2 , eq3 , a0 , a1 , a2 )

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Regresión cuadrática por mı́nimos cuadrados

Solución del sistema


a0 =( sx2y ∗ sx2ˆ2−sxy ∗ sx2 ∗sx3−sx4 ∗ sy ∗ sx2+sy ∗ sx3ˆ2−sx ∗ sx2y ∗
sx3+sx ∗ sx4 ∗ sxy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗
sx2+n∗ sx3 ˆ 2 )
a1 =( sx2 ˆ2∗ sxy+n∗ sx2y ∗sx3−n∗ sx4 ∗ sxy−sx ∗ sx2 ∗ sx2y+sx ∗ sx4 ∗sy
−sx2 ∗ sx3 ∗ sy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗ sx2+n
∗ sx3 ˆ 2 )
a2 =( sx2y ∗ sxˆ2−sxy ∗ sx ∗sx2−sx3 ∗ sy ∗ sx+sy ∗ sx2ˆ2−n∗ sx2y ∗ sx2+n
∗ sx3 ∗ sxy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗ sx2+n∗
sx3 ˆ 2 )

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Programa MATLAB: cuadregr.m

function [ a ] = cuadregr ( x , y )
% cuadregr : A j u s t e de curva con r e g r e s i o n c u a d r a t i c a
% Entrada : x , y−−−−S a l i d a : a = [ a2 , a1 , a0 ]
n = length ( x ) ;
i f length ( y ) ˜= n , e r r o r ( ’ x−y d i f e r e n t e s l o n g i t u d e s ’ ) ; end
sx=sum( x ) ; sy=sum( y ) ; sx2=sum( x . ∗ x ) ; sxy=sum( x . ∗ y ) ;
sx3=sum( x . ∗ x . ∗ x ) ; sx4=sum( x . ∗ x . ∗ x . ∗ x ) ; sx2y=sum( x . ∗ x . ∗ y ) ;
a ( 3 ) =( sx2y ∗ sx2ˆ2−sxy ∗ sx2 ∗sx3−sx4 ∗ sy ∗ sx2+sy ∗ sx3ˆ2−sx ∗ sx2y
∗ sx3+sx ∗ sx4 ∗ sxy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗
sx2+n∗ sx3 ˆ 2 ) ;
a ( 2 ) =( sx2 ˆ 2∗ sxy+n∗ sx2y ∗sx3−n∗ sx4 ∗ sxy−sx ∗ sx2 ∗ sx2y+sx ∗ sx4 ∗
sy−sx2 ∗ sx3 ∗ sy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗ sx2
+n∗ sx3 ˆ 2 ) ;
a ( 1 ) =( sx2y ∗ sxˆ2−sxy ∗ sx ∗sx2−sx3 ∗ sy ∗ sx+sy ∗ sx2ˆ2−n∗ sx2y ∗ sx2
+n∗ sx3 ∗ sxy ) / ( sx4 ∗ sx ˆ2−2∗ sx ∗ sx2 ∗ sx3+sx2ˆ3−n∗ sx4 ∗ sx2+n∗
sx3 ˆ 2 ) ;
% P l o t e o de l a data y l i n e a r e c t a a j u s t a d a
xp = linspace ( min ( x ) ,max( x ) , 1 0 0 ) ;
yp = a ( 3 ) +a ( 2 ) ∗xp+a ( 1 ) ∗xp . ˆ 2 ;
beamer-tu-log
p l o t ( x ’ , y ’ , ’ o ’ , xp , yp ) ; g r i d on
Introducción Regresión por mı́nimos cuadrados

Ejemplo

Ejemplo 2
Ajuste a un polinomio cuadrático los valores de x y y dados en
la siguiente tabla:

xi yi
1 0.5
2 2.5
3 2.0
4 4.0
5 3.5
6 6.0
7 5.5

beamer-tu-log
Introducción Regresión por mı́nimos cuadrados

Ejemplo

Ejemplo 2: Programa Matlab

beamer-tu-log

También podría gustarte