artificiales? Las Redes Neuronales Artificiales (R.N.A.) son modelos matemticos inspirados en sistemas biol gicos, adaptados y simulados en computadoras convencionales. Los elementos que las conforman se asemejan a las neuronas biolgicas. [Wasserman 89] Introduccin (1/2) Estn inspiradas en las neuronas biolgicas y tienen habilidades de aprendizaje automtico, generalizacin y abstraccin. Con estos modelos pueden resolverse una gran variedad de problemas de reconocimiento, aproximaci n, predicci n, clasificaci n, optimizacin, etc. Introduccin (2/2) Las redes neuronales artificiales imitan la forma en que el cerebro procesa la informaci n y pueden generar aprendizaje. Esto se hace al modelar las neuronas y sus conexiones en la computadora. Bases biolgicas En el cerebro hay miles de millones de clulas llamadas neuronas. Podemos distinguir lo que se conoce como: materia gris: cuerpos de las neuronas. materia blanca: axones y es donde se realizan las conexiones entre neuronas. Estructura fsica y funcional (1/7) Estructura fsica y funcional (2/7) Soma: cuerpo principal de la c lula; contiene al ncleo. Estructura fsica y funcional (3/7) Axn: fibra nerviosa de la neurona; transporta los impulsos nerviosos producidos por el soma. Estructura fsica y funcional (4/7) Terminales del ax n: ramificaciones de la neurona. Estructura fsica y funcional (5/7) Dendritas: son las terminales mediante las cuales la neurona recibe las seales elctricas de otras clulas. Estructura fsica y funcional (6/7) Sinapsis: proceso mediante el cual se realiza la transmisin de impulsos elctricos. El cerebro humano tiene alrededor de 10 11
neuronas. Es decir 100,000,000,000 clulas. Cada neurona recibe se ales de mltiples neuronas. Se cree que cada neurona se conecta a su vez con otras 10,000 neuronas. Estructura fsica y funcional (7/7) Cuando una neurona recibe una se al que sobrepasa determinado nivel, el soma produce una se al que es enviada a otras neuronas a travs del soma. La neurona se dispara. As mismo, las seal que recibe una neurona puede verse inhibida o excitada. Componentes bsicos de una RNA Elementos de procesamiento: Neuronas Regla de activacin de los elementos. Topologa de interaccin entre los elementos de procesamiento. Regla de propagaci n a trav s de las conexiones. Regla de aprendizaje. Medio ambiente en el que el sistema opera. Capas de la RNA Una RNA consta de varias capas, cada una compuesta por un conjunto de neuronas. Las neuronas de varias capas se conectan entre s. Las capas se clasifica como: Capa de entrada, Capa(s) oculta(s) y Capa de salida Capa de entrada Esta capa recibe la informaci n que proviene del medio ambiente. Recibe una entrada por cada dato o campo en particular. Pasa la informacin a la capa oculta. Capa(s) oculta(s) Com nmente, se representa como una caja negra. Puede estar constituida por una o ms capas ocultas. Manda la informacin a la capa de salida. Capa de salida Las neuronas arrojan al exterior la informacin calculada por la RN. Representacin grfica Ejemplo Ejemplo Capas de la RNA Todas las neuronas de una capa se conectan con todas las neuronas de la capa que sigue. Redes Feed forward Un sistema feed forward es aquel que responde automticamente a un impulso o estmulo. Por ejemplo, un videojuego donde un personaje responde a los movimientos del otro. Entradas de la red (1/2) Las entradas de la red pueden ser de diferentes tipos: Booleanas Flotantes Enteras Entradas de la red Entonces las entradas tienen el problema de que pueden tener rangos muy variados. Por ejemplo: temperatura y kilos. Una forma de solucionar esto es mediante la normalizacin o escalamiento de los valores. Pesos (1/2) Las neuronas cuentan con un factor que puede permite excitar o inhibir su valor. Se define un peso para cada conexi n de entrada de una neurona. Las neuronas de la capa de entrada deben tener un peso con valor de 1. Los pesos pueden ser positivos o negativos. Pesos (2/2) Los pesos tienen la funcin de: Ajustar los valores de entrada Ayudar en el aprendizaje de la red Bias o tendencia Sirve para mover artificialmente el valor de la neurona. Puede ser til si necesitamos que la salida de la neurona presente determinada tendencia. El bias tambin tiene un peso que lo modifica. Solo hay un bias y un peso del bias por neurona. Clculo del valor de entrada de una neurona (1/2) El valor de entrada de una neurona se calcula de la siguiente manera: Clculo del valor de entrada de una neurona (2/2) Se suman las entradas de todas las neuronas multiplicadas por sus correspondientes pesos. A este valor, le adicionamos el valor restante del bias multiplicado por su peso. Esta operaci n se realiza para todas las neuronas. Clculo del valor de salida de una neurona (1/11) Se realiza mediante una funci n llamada funcin de activacin. Presentaremos las m s importantes a continuacin: Clculo del valor de salida de una neurona (2/11) Funcin de paso: Solo tiene dos posibles valores de salida: 0 y 1 Clculo del valor de salida de una neurona (3/11) Si el valor de entrada de la neurona es menor que 0, la salida ser 0. Si el valor de entrada de la neurona es mayor o igual a 0, la salida ser 1. Clculo del valor de salida de una neurona (4/11) Clculo del valor de salida de una neurona (5/11) Una alternativa para la funci n de paso es colocar el valor de 0 si el valor de la entrada es menos que z; y 1 si el valor de entrada es mayor o igual a z. Clculo del valor de salida de una neurona (6/11) Funcin de activacin lineal: El valor de la salida resulta igual al valor de entrada de la neurona. Clculo del valor de salida de una neurona (7/11) Funcin de activacin logstica: Esta funcin es asinttica a 0 y 1. Clculo del valor de salida de una neurona (8/11) Clculo del valor de salida de una neurona (9/11) Una variante de la funcin logstica es: Esta variante permite acostar o cerrar la grfica de la funcin. Clculo del valor de salida de una neurona (10/11) Qu implica esta nueva variacin de la funcin? Clculo del valor de salida de una neurona (11/11) Funcin hiperblica: Aprendizaje supervisado La red puede ser entrenada para que aprenda mediante ejemplos de sobre los cuales necesita aprender. Conjunto de entrenamiento. Contiene ejemplos de entrada y salida correcta para esa entrada. Back propagation (1/6) Supongamos que estamos en la neurona k de la capa de salida. Su salida se define como O k Su valor deseado se define como d k Back propagation (2/6) 1. Se le da a la red los valores de entrada y se deja que calcule la salida. 2. Se analiza el rango de error entre el valor de salida calculado y el esperado. 3. Con este rango de error se modifican los pesos de las neuronas. 4. El proceso se repite para las capas internas. Back propagation (3/6) 1. Se calcula el error como la diferencia entre o k y d k . 2. Esta diferencia se multiplica por la derivada de la funcin de activacin . 3. Actualizamos los valores de los pesos. Back propagation (4/6) Learning rate: es un factor que determina la importancia del conocimiento nuevo generado con respecto a un conocimiento ya establecido. Permite determinar la velocidad con la que dicho conocimiento cambia. Back propagation (5/6) El valor obtenido a partir de la frmula anterior es sumado al valor del peso actual. Con esto actualizamos los pesos de la capa de salida. Para actualizar los pesos de la capa oculta necesitamos el error de la capa de salida para multiplicarlo por la derivada de la funcin de activacin. Back propagation (6/6) Aplicaciones Reconocimiento de caracteres manuscritos, impresos, de font antiguo, etc. Construccin de memorias asociativas. Reconocimiento de voz. Control de personajes en videojuegos. Control de robots. Prediccin de series de tiempo. Toma de decisiones administrativas, financieras etc. Reconocimiento de enfermedades . Reconocimiento de seales de radio. Prediccin de seales y series de tiempo caticas. Generacin de reglas para sistemas expertos. Aplicaciones en economa para prediccin. Aplicaciones en geologa, meteorologa, astronoma. Alcances y limitaciones Las RNA no son la soluci n de todos los problemas, sino solo de aquellos en los que "las reglas de solucin no son conocidas, y existen suficientes datos ejemplos que permitan a la red aprender. Las RNA son hasta cierto punto impredecibles. Las RNA no pueden explicar como resuelven un problema. La representaci n interna generada puede ser demasiado compleja para ser analizada, an y en los casos ms sencillos.