28 de febrero de 2013

Redes Neuronales 2.0


Capítulo 2. Primeros modelos computacionales.

2.1 Células de Mc Culloch-Pitts

Estas células modelan de forma simplificada el funcionamiento de las neuronas del cerebro, así que son un dispositivo con solo dos estados: Apagado y Encendido.

Una RNA formada por este tipo de células tiene la capacidad de realizar cómputo universal.

Arquitectura y modelo matemático.

El siguiente diagrama muestra los componentes de una célula de Mc Culloch-Pitts:

Donde:
Pi, i=1,2...m, son las entradas a la RNA.
wi, i=1,2...m, son los pesos sinápticos.
∑, representa la suma de las señales.
n, es el resultado de la sumatoria antes de pasar por la función de activación, salida del soma.
ɵ, es el valor del umbral ó función de activación.
a, es la señal de salida de la célula.

Modelo matemático.
a=1, n>ɵ
a=0, n<=ɵ

Aprendizaje.

En este contexto el aprendizaje se refiere a establecer valores iniciales a los pesos sinápticos wi y luego realizar cambios en sus valores para reducir el error entre el valor deseado (a target) y el valor de la salida de la célula (a).

En el caso de la célula de Mc Culloch-Pitts aun no existía un método de ajuste automático, se realiza a prueba y error.

Si una célula es capaz de comportarse como las tres compuertas lógicas básicas AND, OR y NOT, puede realizar cualquier problema computable, esto es a lo que se le llama cómputo universal. 

Ejercicios:

Demuestre que una célula de Mc Culloch-Pitts es capaz de aprender las compuertas lógicas: AND, OR y NOT.

Pasos a seguir:
a) Definir la arquitectura.
b) Proponer pesos sinápticos wi y definir las entradas pi.
c) Aplicar el modelo matemático.
d) Se calcula la señal del error (e=a target-a).
e) Evaluar si cumple con algún criterio de finalización.

Compuerta NOT:
a) Arquitectura.
b) Tabla de verdad (conjunto de entrenamiento).

Pi
a target
D1
1
0
D2
0
1


Iteración 1.

Se proponen: w1=3, ɵ=5

c) y d) Aplicando el modelo matemático y calculando el error:

Usando el D1:

n=P1*w1=3*1=3

3>5, a=0

e=0-0=0

e) Criterios de finalización:
1.- Que e=0, para todos los datos del conjunto de entrenamiento.
2.- Que se lleve a cabo 10 iteraciones. 

Usando el D2:

n=P1*w1=3*0=0

0>5, a=0

e=0-1=-1, es diferente de cero, no cumple.

Debido a que los valores propuestos w1ɵ no funcionaron se pasa a la siguiente iteración realizando el ajuste en dichos valores.

En este ejemplo coincidió que el D2 fue el que fallo la red y se terminó la primera iteración. Sin embargo, el ajuste de w1 y ɵ se debe llevar a cabo en el momento que un dato falle.

Iteración 2.

Ahora se proponen: w1=-2, ɵ=-1

Usando el D1:

n=P1*w1=1*(-2)=-2

-2>-1, a=0

e=0-0=0

Usando el D2:

n=P1*w1=0*(-2)=0

0>-1, a=1

e=1-1=0

Como el e=0 en ambos casos se puede generalizar el entrenamiento de la red y se ha concluido el problema. La RNA de arquitectura Mc Culloch-Pitts si se comporta como una compuerta NOT.






26 de febrero de 2013

Redes Neuronales 1.3


1.3 Aplicaciones de las RNA

a) Aproximación de señales:
Dada una serie de tiempo que representa una señal o sistema y es posible usar una RNA para aproximar su comportamiento.

A partir de la señal P, se obtiene a target  y se construye un conjunto de datos (Pi, a target , i).
La regla de aprendizaje determina la manera como de forma automática cambian los valores de los parámetros de la RNA.

Este esquema de aprendizaje se lleva a cabo hasta que se cumpla un criterio  de finalización como: número máximo de iteraciones (itmax) o que el error de aprendizaje sea igual a cero o a un valor ε pequeño.

Para que la RNA realice una adecuada aproximación de las señales requiere tener un número suficientemente grande de neuronas.

La calidad y cantidad de los datos disponibles para realizar el entrenamiento de la RNA afectara significativamente su desempeño.

Se pueden usare diverso algoritmos para implementar la regla del aprendizaje, por lo que es un factor de diseño muy importante.

a.1) Pronóstico de valores:
Dado que la RNA es un aproximador universal, se puede modificar su estructura para realizar extrapolación. El tipo RNA que se usa para estas tareas son las Redes Neuronales Recurrentes.

A partir de la estructura básica de un Perceptrón multicpa, en la cual las señales de entrada solo se propagan hacia adelante hasta llegar a la salida de la RNA, Una Red neuronal recurrente tiene señales que van en diferentes sentidos, por ejemplo: La salida de la RNA puede ser también una señal de entrada.

a.2) Control de sistemas:
En este caso existen sistemas no lineales que requieren de leyes de control complejas para su correcto funcionamiento.

Existen casos donde la señal u es muy difícil de obtener porque parte de esta señal puede ser una señal de  tipo no lineal. En este caso, se puede usar una RNA para aproximar esta señal y completar la señal de entrada.
u=lineal + RNA (no lineal)

b) Clasificación de objetos:
Dado un conjunto de datos a ser separados en clases de acuerdo a un criterio dado, una RNA es capaz de llevar a cabo esta tarea de forma supervisada o no supervisada.

En el esquema supervisado lo más común es usar un Perceptrón Multicapa en el cual cada salida de la RNA representa una clase diferente.

Debido a que esta RNA es completamente conectada, si el valor si el valor de una clase es muy grande, realizar el aprendizaje computacionalmente sería muy costoso haciéndolo inviable.

En el caso del esquema no supervisado, dado un conjunto de datos y el número de clases en los que se desea separar una RNA como el mapa auto-organizado de Kohonen es capaz de realizar esta tarea.



19 de febrero de 2013

Cultura General


Mmmm cabe mencionar que no soy escritor ni mucho menos sin embargo, a veces surgen cosas de la mente que pueden ayudar o dejar una moraleja en los demás, por eso se decidió empezar con esta sección además de que estamos en el mes del amor y la amistad jaja, a continuación un preámbulo de lo que se plantea en "Cultura General".

Homenaje al azúcar.


Pequeños granitos finos,

que en la boca derretimos,

en la cara percibimos,

la dulzura que adquirimos,

en los dulces disfrutamos,

y por ella hasta lloramos

pero, si en la sangre la encontramos,

lo mejor es limitarnos.

Autor: Derlis Hernández Lara



Además aquí hay otro link en apoyo a este blog, por si gustan visitarlo, hasta la próxima.



18 de febrero de 2013

Redes Neuronales 1.2


1.2 Características de la RNA

a) Aprendizaje:

La RNA es capaz de ajustar automáticamente sus parámetros estableciendo así la relevancia que tiene cada una de las señales de entrada en el proceso. Este tipo de RNA trabaja bajo el paradigma de aprendizaje supervisado.

b) Generalización del conocimiento:

Dado un rango de funcionamiento de la RNA, una vez que termina el aprendizaje la RNA es capaz de dar una respuesta correcta a señales de entrada diferentes a las usadas para su aprendizaje, siendo así un aproximador universal.

c) Tolerancia a fallas:

Una RNA tipo Perceptrón está formada por múltiples neuronas y una vez que se finaliza de forma exitosa el aprendizaje es capaz de generalizar el conocimiento. Es posible que bajo ciertas circunstancias algunas de estas neuronas dejen de funcionar y aun así la RNA continué operando correctamente. A  esta circunstancia se le dice que la RNA puede tolerar hasta cierto grado este tipo de falla.

d) Procesamiento no-lineal:

Una RNA tipo Perceptrón Multicapa es capaz de realizar tareas como: aproximación de señales no lineales, separación no lineal de clases de objetos ó formar parte de una estructura de control no lineal. Esto es posible dado que cada una de sus neuronas contiene una función de tipo no lineal, lo que permite trabajar con esta clase de problemas.

e) Establecer niveles de importancia a cada una de las entradas de la RNA:

Una RNA representa adecuadamente el funcionamiento de la neurona biológica en el aspecto de que es capaz de modelar la relevancia de cada una de las entradas mediante los parámetros conocidos como pesos sinápticos.


11 de febrero de 2013

Redes Neuronales 1.1

Capítulo I. Introducción

1.1 Modelo biológico y artificial

Las redes neuronales artificiales (RNA) están inspiradas en la estructura y funcionamiento del cerebro humano, donde la neurona es el elemento principal. Esta célula es la unidad básica de procesamiento y consta de un cuerpo celular más o menos esférico de 5 a 10 micras de diámetro al que llegan varias ramas cortas llamadas dendritas y sale una rama principal, conocida como axón.

Las dendritas son las encargadas de recibir la información  del exterior o de otras neuronas y entregar estas señales al núcleo ó soma de la neurona. El soma es la parte que se encarga de procesar estas señales. Una vez concluido el procesamiento le pasa el resultado al axón, quien a su vez envía esta señal al exterior ó a otras neuronas.
Por otro lado, las RNA son estructuras de procesamiento que pretende emular el funcionamiento de las neuronas biológicas, por que cumplen con las siguientes características:
Aprendizaje, generalización de conocimiento, tolerancia a fallos, procesamiento no lineal de la información, establecer niveles de importancia a cada señal de entrada, etc.

1.1.1 Modelo artificial 

A partir de los elementos básicos de la neurona biológica, se construye un modelo artificial de la siguiente forma:
Donde:
Pi, i=1,2...m, son las entradas a la RNA.
wi, i=1,2...m, son los pesos sinápticos.
, representa la suma de las señales.
n, es el resultado de la sumatoria antes de pasar por la función de activación.
f(n), es la función de activación y se encarga de generar la señal de salida.
a, es la señal de salida que es generada por la función de activación.

Las ecuaciones que representan a este esquema son:

a= f(n)





4 de febrero de 2013

Redes Neuronales 1.0

Descripción del contenido a ver es este Blog:

1.- Introducción.
Fundamentos biológicos, modelo computacional (estructura básica), RNA vs Computo convencional.

2.- Primeros modelos computacionales.
Consideraciones básicas: Células de Mc. Culloch-Pitts, Perceptrón simple, Red ADALINE.

3.- Perceptrón Multicapa. (Problemas de tipo no lineal, paradigma supervisado).
Introducción, arquitectura, la propagación hacia adelante, función de activación no lineal, regla de aprendizaje, procesos de aprendizaje, capacidad de generalización, fenómeno de sobre-entrenamiento.