• No results found

Para el diseño de la red neuronal, existen una serie de parámetros que deben definirse, tales como el algoritmo de entrenamiento, la determinación de la base de datos, los parámetros de entrenamiento, número de épocas, asignación de pesos, modelo de red neuronal, función de transferencia, entre otros. A continuación se describen algunos de los parámetros más importantes a tomar en consideración.

Determinación de la base de datos de entrenamiento. Para el entrenamiento de la red, se requiere de una base de datos, representativos. Estos se obtuvieron de los cálculos numéricos por medio del método del elemento finito y fueron verificados por medio del cálculo analítico tal como se mostró en el apartado anterior. La verificación numérico- analítica resulta importante, ya que sirve para comprobar los resultados de los cálculos por ambos métodos y saber que son correctos, además, nos proporcionan un mayor grado de exactitud al llevar acabo el entrenamiento de la RNA.

Selección del algoritmo de entrenamiento. Este esta en función del las características de los datos y de los valores que se desean obtener, así mismo del tipo de aplicación que se desea dar a la RNA. Por lo anterior, se puede decir que el tipo de algoritmo depende del caso de estudio. Una característica importante al llevar acabo el entrenamiento, es la obtención del menor error posible, motivo por el cual a los modelos más comunes de RNA se les han implementado constantemente nuevos algoritmos con la finalidad de reducir el error de cálculo.

Diseño de la RNA. Para el entrenamiento de la red, es necesario definir sus características. Aquí se establecen el número de entradas a la red neuronal, así como también el número de salidas. Con relación a la estructura de la red, también es necesario especificar, el número de capas ocultas y neuronas por capa oculta que proporcionen mayor exactitud en los resultados del entrenamiento de la red y el número de épocas o ciclos de entrenamiento, así como el error máximo esperado, la función de trasferencia y el tipo de red, si es supervisada o no supervisada. Existen muchos más parámetros que se pueden variar al programar una RNA, los cuales inclusive utilizando el mismo modelo o el mismo algoritmo, nos proporcionan resultados diferentes, en cuanto a error y tiempo de entrenamiento. En el caso del diseño de las redes que se proponen para este estudio, los parámetros mencionados anteriormente, son los que se consideran.

Determinación de los datos de validación. En esta fase, es importante especificar la cantidad de datos que la red ocupara para el entrenamiento, y la cantidad de datos que utilizara el programa para validar la red neuronal. El proceso de normalización de los datos resulta importante, y dependiendo la naturaleza de los datos, el tipo de entrenamiento, y la aplicación que se desea dar, el proceso de normalización pude variar, sin embargo la herramienta de redes neuronales de MATHLAB, efectúa la normalización de los datos eficientando el proceso de calculo.

Parámetros de entrenamiento. Para entrenar la red neuronal, existen varios paquetes de cómputo que nos permiten llevar acabo dicha tarea. Algunos nos dan la oportunidad de programar la red, sin embargo resulta más complicado y tardado el llevar a cabo este proceso con algunos de ellos debido a las características especificas de cada uno y la aplicación. Algunos programas son MATHLAB, MATHCAD, entre otros, que permiten desarrollar este proceso mediante herramientas diseñadas para aplicaciones de redes neuronales. Otros programas de software libre como OCTAVE pueden considerarse para realizar esta tarea, sin embargo, cada una implica familiarizarse con las herramientas y en ocasiones conseguir o crear las librerías necesarias para la aplicación. Para el caso de análisis de esta tesis, se seleccionó MATHLAB 2008ª mediante la aplicación de redes neuronales Tolbox 6.0.

Análisis de los resultados del entrenamiento de la RNA. El motivo de esta fase es para evaluar si la red fue capaz de aprender mediante la fase de entrenamiento y a través de los datos con que se este se llevo a cabo. Así también se verifica el error que arrojo la red neural y el tiempo de cálculo necesario.

Evaluación del desempeño de la RNA. Esta es una fase de verificación, en la cual los datos obtenidos de la red se comparan con los datos descritos en las secciones anteriores tanto analíticas como numéricas. En el caso en que la RNA, no presente la eficiencia deseada, verificable por medio de un bajo porcentaje de error, se procede a modificar paramentos tales como el algoritmo de entrenamiento o el diseño de la red. En el actual estudio se evaluó y analizo el comportamiento de la RNA mediante el entrenamiento de 5 diferentes algoritmos aplicados a la red de Retropropagación o Backpropagation por sus siglas en ingles.

Conclusiones y alcances del modelo neuronal. En esta sección se describen las potencialidades de la red, lo que se puede mejorar, e incluso las deficiencias con las que esta cuenta, de la misma manera, se comparan los datos analíticos, por medio del método del elemento finito y por medio del entrenamiento de la RNA.

Para el diseño de la red neuronal propuesta, las variables que se establecen son A, w t, P que respectivamente son el tamaño de grieta, el ancho del espécimen, el espesor y la carga aplicada a este. La base de datos del entrenamiento fue obtenida mediante los cálculos por medio del Método del Elemento Finito, con los cuales se entrenaron 5 redes neuronales artificiales que se comparan en el capítulo 4 de resultados.

……

3.3.1 metodología de diseño de la RNA.

Algunos de los parámetros que se pueden modificar para el entrenamiento de una red neuronal son: las funciones de inicialización de las capas ocultas, las funciones de aprendizaje, las funciones de entrenamiento, las funciones de trasferencia, las funciones

de peso, así como el modelo de análisis. A continuación se describen las características de los parámetros de las redes que se programaron:

Datos de entrenamiento, La red neuronal se entrena con 380 datos del cálculo de K, los cuales formaron el conjunto de salidas y 380 datos del conjunto de entradas correspondientes a las variables a, w, t, P, de los cuales el 70 % forman parte del conjunto de entrenamiento, el 15% son para el conjunto de validación y el 15% restante son parte del conjunto de prueba en todos los casos de programación.

Función de transferencia. Para el actual análisis se propone la aplicación de las funciones tangente hiperbólica sigmoide debido a que es útil cuando se requiere velocidad de cálculo en la RNA, sin embargo los resultados de esta varían en función del algoritmo de entrenamiento, numero de épocas, datos en la capa ocultas, entre otros. Que se especifican para algoritmo de entrenamiento, de acuerdo a varios ensayos a fin de obtener los mejores resultados. Cabe destacar que en la literatura, no se registra aun una metodología concreta, con un adecuado grado de validez y confiabilidad que permita especificar para cada problema especifico datos como el numero de capas ocultas, épocas, neuronas, entre otros, por lo cual para cada aplicación la forma de verificación es a través de varios ensayos a prueba y error, hasta obtener el mejor entrenamiento.

Numero de épocas se define como 2000 épocas para el entrenamiento de los distintos algoritmos a verificar, cabe destacar, que si la red neuronal converge antes de que se cumpla el numero de épocas especificadas, el entrenamiento se detiene, comprobándose así que la RNA aprende. Si bien es cierto lo anterior, el grado de error puede variar al utilizar los diferentes algoritmos.

Criterios para determinar el fin de la fase de entrenamiento, Esta fase termina cuando se cumple el numero de épocas, aun si la red no converge al menor valor de error especificado, o cuando por medio de los datos de verificación se comprueba que la red converge, deteniéndose aun si no se han cumplido el numero de épocas especificadas en la programación.

Programa utilizado, Neural Network toolbox 6.0 de Matlab© versión R2008a. para entrenar la RNA.

Valor del mínimo gradiente, Se propone 1.0 e-6 en los casos a evaluar.

Capa oculta. Se programo de acuerdo a las condiciones del algoritmo a programas. En algunos casos se verifico mediante varios ensayos que el número de neuronas en la capa oculta no afectaban considerablemente los resultados, sin embargo el tiempo de cálculo se veía altamente incrementado.

Con los anteriores datos se plantea entrenar una red de retroporpagación con los siguientes algoritmos de optimización:

Acr onim o Codigo Alg or it m o de e n t r e na m ie n t o

LM trainlm Levenber g- Marquardt BFG trainbfg BFGS Quasi- Newt on RP trainrp Resilient Backpropagat ion SCG trainscg Scaled Conj ugat e Gradient

CGF traincgf Flet cher- Powell Conj ugat e Gradient OSS trainoss One St ep Secant

Tabla 3.1.Casos a evaluar con los diferentes algoritmos de entrenamiento

Los datos se compararan y se elegirá la red neuronal que proporcione el menor error cuadrático medio y el menor tiempo en calculo para llevar a cabo un entrenamiento con los datos obtenidos analíticamente y así poder comparar los resultados de la base de datos obtenida por medio del método del elemento finito y los obtenidos con la RNA contra el aquellos producto del cálculo analítico.

Para el entrenamiento de la red, se utilizara la herramienta de redes neuronales Neural Networks Tool box 6.0 de MATHLAB 2008a. Se propuso primeramente una red neuronal Backpropagation o de retroporpagacion, debido a que en la literatura se ha reportado su gran eficacia para la resolución de una gran gama de problemas ingenieriles, así también por su gran capacidad de interpolación.

Related documents