regresión lineal

9
Universidad Cat´ olica de Temuco Ingenier´ ıa Civil Inform´ atica Trabajo Recuperativo Problema de Regresi´ on Felipe Leal [email protected] 29 de Junio de 2015 1. Introducci´ on Las Redes Neuronales Artificiales son una herramienta inform´ atica que se han vuelto muy relevantes para generalizar a partir de una serie de datos. Pero se requiere de una construcci´ on sobre su estructura la cual est´ a intimamente relacionada con las caracter´ ısticas de los datos a estudiar. A continuaci´ on se presenta un an´ alisis obtenido a partir de una agrupaci´ on de observaciones en un archivo CSV. Esto se construye a partir de la programaci´ on en Python haciendo uso de la librer´ ıa PyBrain. 2. Soluci´ on Se tiene un CSV con alrededor de 5400 observaciones, cuya estructura de datos es como se muestra en la siguiente imagen: Figura 1: Archivo dataset.csv 1

Upload: angelaedo

Post on 13-Dec-2015

24 views

Category:

Documents


8 download

DESCRIPTION

Redes neuronales aplicadas a la regresión lineal para un dataset

TRANSCRIPT

Page 1: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Trabajo RecuperativoProblema de Regresion

Felipe [email protected]

29 de Junio de 2015

1. Introduccion

Las Redes Neuronales Artificiales son una herramienta informatica que sehan vuelto muy relevantes para generalizar a partir de una serie de datos. Perose requiere de una construccion sobre su estructura la cual esta intimamenterelacionada con las caracterısticas de los datos a estudiar. A continuacion sepresenta un analisis obtenido a partir de una agrupacion de observaciones en unarchivo CSV.

Esto se construye a partir de la programacion en Python haciendo uso de lalibrerıa PyBrain.

2. Solucion

Se tiene un CSV con alrededor de 5400 observaciones, cuya estructura dedatos es como se muestra en la siguiente imagen:

Figura 1: Archivo dataset.csv

1

Page 2: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Al ser leido en python los datos necesarios y configurados, se construye lared neuronal.

Esta red neuronal estara estructurada particularmente por una red mul-ticapa con backpropagation, pues es la red mas usada en muchas aplicaciones,incluyendo la Prediccion.

Para esto se contruye a partir de los datos, un vector asociado a los va-lores de entrada y uno en funcion de lo esperado. Ademas de definir seran un70 % de los datos para entrenamiento y el 30 % restante para testeo. .

Figura 2: Codigo Python

Luego al momento de crear la red neuronal, ha de ser considerado la funcionde activacion de la capa oculta y salida (f1 y f2), por el tipo de dato se haoptado por ’tanh’, creando las capas oculta y de salida con funcion de tangentehiperbolica. Existe la posiblidad de configurarlas como sigmoide, pero al revisarla prediccion se puede apreciar que esta opcion no es la correcta:

Figura 3: Salida Consola

2

Page 3: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Figura 4: Plot Datos

..

Figura 5: Plot R2

Al testear la configuracion lineal, el codigo no logra ni siquiera terminar elentrenamiento.

Luego solo resta entrenar la red, bajo la funciones de activacion sigmoide,para obtener una prediccion y las metricas de rendimiento.

3

Page 4: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

3. Analisis de los Resultados

Para analizar los resultados de las predicciones, se uso el calculo de la pre-diccion en funcion de 6 configuraciones:

1. 10 Neuronas de Entrada y 6 Neuronas en la Capa Oculta.

2. 50 Neuronas de Entrada y 25 Neuronas en la Capa Oculta.

3. 200 Neuronas de Entrada y 80 Neuronas en la Capa Oculta.

4. 1000 Neuronas de Entrada y 400 Neuronas en la Capa Oculta.

Donde se consideran las metricas de rendimiento, plot de prediccion de datos yR2 y su tiempo de ejecucion

3.1. 10 Entrada; 6 Capa Oculta

Respecto de las metricas de rendimiento para esta configuracion se tiene:

FANN Metrics

MAE: 0.240270662572

MAPE: 0.205870659296

RMSE: 0.285418851769

NMSE: 1.07781372931

R-Square: 0.0512781244492

Time (s): 15.5661828518

Esta configuracion demora poco mas de 15 segundos en obtener una predic-cion a partir del entrenamiento, lo cual es bastante rapido. Cabe destacar que lacantidad de observaciones es bastante reducida, lo que permite un aprendizajeen tan poco tiempo. Esta prediccion se aprecia a continuacion en la figura[6] yfinalmente la metrica R2: .

Figura 6: Plot Datos vs Prediccion 10-6

4

Page 5: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Figura 7: Plot R2 10-6

3.2. 50 Entrada; 25 Capa Oculta

Respecto de las metricas de rendimiento para esta configuracion se tiene:

FANN Metrics

MAE: 0.139139962849

MAPE: 0.119643908527

RMSE: 0.172036689504

NMSE: 0.391088126691

R-Square: 0.737753757418

Time (s): 32.6625928879

Esta vez, el tiempo transcurrido es superio a 30 segundos, siendo mas eficien-te que la configuracion anterior en relacion a la cantidad de neuronas en funciondel tiempo que la configuracion anterior. Pues es mas del doble en neuronaspero no mas del doble en tiempo. La precision es notablemente mayor al visua-lizar los datos reales respecto de las predicciones. Esta prediccion se aprecia acontinuacion en la figura[8] y finalmente la metrica R2 en la figura[9]: .

Figura 8: Plot Datos vs Prediccion 50-25

5

Page 6: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Figura 9: Plot R2 50-25

3.3. 200 Entrada; 80 Capa Oculta

Respecto de las metricas de rendimiento para esta configuracion se tiene:

FANN Metrics

MAE: 0.132771951985

MAPE: 0.108278475553

RMSE: 0.165831346111

NMSE: 0.363682333238

R-Square: 0.646363346716

Time (s): 20.6649198532

El tiempo de ejecucion es considerablemente menor en comparacion a laconfiguracion [50-25], postulando esta configuracion como la mas eficiente delos 3, esto genera dos interrogantes, Como sera su precision respecto de las an-teriores? y ademas, que ocurre al incrementar aun mas las neuronas?: .

6

Page 7: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

Figura 10: Plot Datos vs Prediccion 200-80

Figura 11: Plot R2 200-80

7

Page 8: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

3.4. 1000 Entrada; 400 Capa Oculta

Respecto de las metricas de rendimiento para esta configuracion se tiene:

FANN Metrics

MAE: 0.227862906372

MAPE: 0.174750249105

RMSE: 0.284308845147

NMSE: 1.00091608684

R-Square: 0.478678383486

Time (s): 97.6649069786

Esta configuracion tomo mas tiempo que cualquier otra configuracion, loque responde a la interrogante planteada en la seccion anterior. Mas neuronasno reduce el tiempo de ejecucion, como se dio en [200-80], respecto de sus grafi-cas: .

Figura 12: Plot Datos vs Prediccion 1000-400

Figura 13: Plot R2 1000-400

8

Page 9: Regresión Lineal

Universidad Catolica de Temuco Ingenierıa Civil Informatica

4. Conclusion

El uso de las redes neuronales para la prediccion es valioso y atractivo. Adiferencia de metodos basados en modelos tradicionales, las ANN, estan basadasen metodos auto adaptativos en que hay pocas suposiciones. Ademas aprendende ejemplos y capturan relaciones funcionales sutiles entre los datos, siendo ası,muy adecuadas para los problemas en los cuales, las soluciones requieren unconocimiento que es difıcil de precisar.

Respecto de la prediccion, se pudo apreciar que la tendencia de los tresprimeros casos, era mejorar la exactitud de las predicciones, sin embargo, lacuarta configuracion demostro que no necesariamente el incremento de neuro-nas puede llevar a una mejor prediccion. Es cosa de comparar el R2 en [200-80] y[1000-400], en donde se aprecia mayor precision para [200-80]. Ademas se habıaplanteado la duda sobre si el incremento de neuronas reducıa el tiempo, y estoes cierto para algunos casos, como por ejemplo el incremento de [50-25] con 32segundos a la cantidad de [200-80] con 20 segundos, no ha sı el caso de [1000-400]donde se arroja un tiempo en 97 segundos.

De lo testeado, la mas precisa y eficiente es la configuracion [200-80] confunciones de activacion sigmoide. Puesto que [200-80] tan es imprecisa.

Referencias

[1] Laurene Fausett, Fundamentals of Neural Networks, Pearson; 1 edi-tion (December 19, 1993),

[2] Antonio J. Serrano, Emilio Soria, Jose D. Martın, Redes Neurona-les Artificiales, Escola Tecnica Superior d’ Enginyeria,

[3] Mariusz Bernacki, Principles of training multi-layer neural networkusing backpropagation, http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_

en/backprop.html,

[4] Daniel San martin, Algoritmo Backpropagation, Universidad Catoli-ca de Temuco,

[5] Guoqiang Zhang, B. Eddy Patuwo, Michael Y. Hu Forecasting withartificial neural networks: The state of the art Graduate School of Ma-nagement, Kent State University, Kent, Ohio 44242-0001, USA

[6] Jeff Heaton The Number of Hidden Layers http://www.

heatonresearch.com/node/707

9