Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Facultad de Ingenierı́a
Ingenierı́a Fı́sica
Regresión Polinomial
11 de mayo de 2020
Índice general
Capı́tulos Página
1. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1. Regresión Polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2. Regresión Lineal Múltiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Formulación general de una matriz para mı́nimos cuadrados lineales . . . . . . . . . . 3
2. Ejercicios Resueltos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1. Regresión Polinomial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.2. Regresión lineal múltiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Problemario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1. Problema 17.17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4. Código . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2/11
1. Resumen
1.1. Regresión Polinomial
El procedimiento de mı́nimos cuadrados se puede extender fácilmente al ajuste de datos con un polinomio
de grado superior. Por ejemplo, suponga que ajustamos un polinomio de segundo grado o cuadrático:
y = a0 + a1 x + a2 x2 + e
Obtenemos la derivada de la anterior ecuación con respecto a cada uno de los coeficientes desconocidos
del polinomio,
∂Sr
= −2 (yi − a0 − a1xi − a2 x2i )
P
∂a0
∂Sr
= −2 [(yi − a0 − a1xi − a2 x2i )xi ]
P
∂a1
∂Sr
= −2 [(yi − a0 − a1xi − a2 x2i )x2i ]
P
∂a1
Estas ecuaciones se igualan a cero y se reordenan para desarrollar el siguiente conjunto de ecuaciones
normales:
x2i a2 =
P P P
(n)a0 + ( xi ) ai + yi
P P 2 P 3 P
( xi ) a 0 + xi a1 + xi a2 = xi yi (2)
P 3 P 4
x2i a0 + xi a2 = x2i yi
P P
xi a1 +
donde todas las sumatorias van desde i = 1 hasta n. Observe que las tres ecuaciones anteriores son lineales
y tienen tres incógnitas: a0 , a1 y a2 . Los coeficientes de las incógnitas se evalúan de manera directa, a partir
de los datos observados. En este caso, observamos que el problema de determinar un polinomio de segundo
grado por mı́nimos cuadrados es equivalente a resolver un sistema de tres ecuaciones lineales simultáneas.
El caso bidimensional se extiende con facilidad a un polinomio de m-ésimo grado como sigue
y = a0 + a1 x + a2 x2 + · · · + am xm + e
El análisis anterior se puede extender fácilmente a este caso más general. Ası́, se reconoce que la deter-
minación de los coeficientes de un polinomio de m-ésimo grado es equivalente a resolver un sistema de m + 1
ecuaciones lineales simultáneas. En este caso, el error estándar se formula como sigue:
s
Sr
Sy/x = (3)
n − (m + 1)
y = a0 + a1 x1 + a2 x2 + e
Los “mejores” valores para los coeficientes se determinan al realizar la suma de los cuadrados de los
residuos,
n
X
Sr = (yi − a0 − a1 x1i − a2 x2i )2 (4)
i=1
∂Sr P
= −2 (yi − a0 − a1x1i − a2 x2i )
∂a0
∂Sr P
= −2 [(yi − a0 − a1x1i − a2 x2i )x1i ]
∂a1
∂Sr P
= −2 [(yi − a0 − a1x1i − a2 x2i )x2i ]
∂a1
Los coeficientes que dan la suma mı́nima de los cuadrados de los residuos se obtienen al igualar a cero
las derivadas parciales y expresando el resultado en forma matricial:
P P P
n x1i x2i
a0
yi
P P
x21i
P P
x1i x1i x2i a1 =
x1i yi (5)
P P P 2
P
x2i x1i x2i x2i a2 x2i yi
y = a0 + a1 x1 + a2 x2 + · · · + am xm + e
La regresión lineal múltiple tiene además utilidad en la obtención de ecuaciones de potencias de la forma
general
Tales ecuaciones son extremadamente útiles cuando se ajustan datos experimentales. Para usar regresión
lineal múltiple, la ecuación se transforma al aplicar logaritmos:
y = a0 z0 + a1 z1 + a2 z2 + · · · + am zm + e (6)
{Y } = [Z]{A} + {E}
donde [Z] es una matriz de los valores calculados de las funciones z en los valores medidos de las variables
independientes,
z01 z11 ··· zm1
z02 z12 ··· zm2
[Z] = .
.. .. ..
.. . . .
z0n z1n ··· zmn
donde m es el número de variables en el modelo y n es el número de datos.
El vector columna {Y } contiene los valores observados de la variable dependiente
{Y }T = y1
y2 ··· yn
El vector columna {A} contiene los coeficientes desconocidos
{A}T = a0
a1 ··· am
y el vector columna {E} contiene los residuos
{E}T = e1
e2 ··· en
La suma de los cuadrados de los residuos en este modelo se definen como
2
n
X m
X
Sr = yi − aj zji
i=1 j=0
Esta cantidad se minimiza tomando las derivadas parciales con respecto a cada uno de los coeficientes
e igualando a cero la ecuación resultante. El resultado de este proceso son las ecuaciones normales, que se
expresan en forma matricial como
2. Ejercicios Resueltos
2.1. Regresión Polinomial
Ajustar a un polinomio de segundo grado los datos dados en las dos primeras columnas de la tabla 1.
Tabla 1: Cálculos para un análisis de error del ajuste cuadrático por mı́nimos cuadrados
x4i = 979
P P
m=2 xi = 15
P P
n=6 yi = 152,6 xi yi = 585,6
x3i = 225
P
y = 25,433
Resolviendo estas ecuaciones con una técnica como la eliminación de Gauss se tiene a0 = 2,47857,
a1 = 2,35929 y a2 = 1,86071. Por lo tanto, la ecuación cuadrática por mı́nimos cuadrados en este caso es
6 16,5 14 a0 54
16,5 76,25 48 a1 = 243,5
14 48 54 a2 100
a0 = 5 a1 = 4 a2 = −3
y x1 x2 x21 x22 x1 x2 x1 y x2 y
5 0 0 0 0 0 0 0
10 2 1 4 1 2 20 10
9 2.5 2 6.26 4 5 22.5 18
0 1 3 1 9 3 0 0
3 4 6 16 36 24 12 18
P 27 7 2 49 4 14 189 54
54 16.5 14 76.25 54 48 243.5 100
En las siguientes figuras se muestra el plano que surge de la regresión lineal múltiple.
3. Problemario
x 3 4 5 7 8 9 11 12
y 1.6 3.6 4.4 3.4 2.2 2.8 3.8 4.6
a3 = 0,04667602
a2 = −1,04120692
a1 = 7,14381722
a0 = −11,48870718
Sy/x = 0,570031
r2 = 0,828981
4. Código
Código usado para la regresión polinomial.
1 im po rt numpy a s np
2 from m a t p l o t l i b im por t p y p l o t
3 im po rt p y l a b a s p l
4
5 n=i n t ( i n p u t ( ’ \ n I n t r o d u z c a e l número de d a t o s : ’ ) )
6 g=i n t ( i n p u t ( ’ \ n I n t r o d u z c a e l grado d e l p o l i n o m i o : ’ ) )
7 m=g
8
9 x=np . z e r o s ( n )
10 y=np . z e r o s ( n )
11
12 p r i n t ( ” \ n I n t r o d u z c a cada dato x : ” )
13 f o r i in range (n) :
14 x [ i ] = input ()
15
16 p r i n t ( ” \ n I n t r o d u z c a cada dato y : ” )
17
18 f o r i in range (n) :
19 y [ i ] = input ()
20
21 # A j u s t e a una r e c t a ( v a r i a b l e 1 , v a r i a b l e 2 , grado )
22 p = np . p o l y f i t ( x , y , g )
23
24 p r i n t ( ’ \n [ a2 , a1 , a0 ]=\n ’ )
25 print (p)
26
27 Sr = [ ]
28
29 f o r i in range (n) :
30 Sr . append ( ( y [ i ]−p [ 3 ] − p [ 2 ] ∗ x [ i ]−p [ 1 ] ∗ x [ i ]∗∗2 −p [ 0 ] ∗ x [ i ] ∗ ∗ 3 ) ∗ ∗ 2 )
31
32 s r=sum ( Sr )
33
34 syx=np . s q r t ( s r / ( n−(m+1) ) )
35
36 ym=sum ( y ) /n
37 Ym= [ ]
38
39 f o r i in range (n) :
40 Ym. append ( ( y [ i ]−ym) ∗ ∗ 2 )
41
42 ym1=sum (Ym)
43
44 r 2 =(ym1−s r ) /ym1
45
46 r=np . s q r t ( r 2 )
47
48 p r i n t ( ’ \ n E r r o r e s t a n d a r de l a e s t i m a c i o n : ’ , syx )
49 p r i n t ( ’ \ n C o e f i c i e n t e de d e t e r m i n a c i o n : ’ , r 2 )
50 p r i n t ( ’ \ n C o e f i c i e n t e de c o r r e l a c i o n : ’ , r )
51
52 p r i n t ( ’ \ nEl modelo e x p l i c a e l ’ , r 2 ∗ 1 0 0 , ’ % de l a i n c e r t i d u m b r e o r i g i n a l ’ )
53
54 x r=np . a r a n g e ( 0 , 1 0 0 )
55 y r=p [ 0 ] ∗ x r ∗∗3+p [ 1 ] ∗ x r ∗∗2+p [ 2 ] ∗ x r+p [ 3 ]
56
57 p l . s c a t t e r ( x , y , c o l o r= ’ b l a c k ’ )
58 p l . p l o t ( xr , yr , ’ b ’ )
59 pl . xlim ( [ x [ 0 ] , x [ n − 1 ] ] )
60 pl . ylim ( [ y [ 0 ] , y [ n − 1 ] ] )
61 #p l . x t i c k s ( ( ) )
62 #p l . y t i c k s ( ( ) )
63 p l . show ( )
Listing 1: Regresión Polinomial Cúbica
Bibliografı́a
[1] Steven C. Chapra & Raymund P.Conale, Métodos numéricos para ingenieros, 6a ed., J. Peters, Ed.
México: McGraw-Hill, 2011, pp. 429-439.