Está en la página 1de 16

(Miguel)

REDES NEURONALES

Las redes neuronales se han convertido en una de las familias de algoritmos del
Machine Learning mas importantes en la actualidad.
Existen de mediados del siglo pasado, pero no ha sido hasta hace unos años que
hemos empezado a utilizarlas de gran manera.
- Reconocimiento de Caracteres, imágenes y Voz
- Pronostico de Enfermedades
- Predicción versátil
- Conducción Autónoma
- Prevención de Fraude
Incluso llegar a clasificar pepinos.
Las complejidades de estos sistemas emergen desde la interacción de muchas
partes más simples trabajando conjuntamente. En este caso se definen como
Neuronas Artificiales. De manera similar a una Neurona biológicamente
establecida, se debe contemplar la Neurona como un sistema de entradas, y de
estimulos que generaran internamente un cambio, un cálculo para luego así
producir un valor de salida.
Recordemos que en un nivel profundo en la neurona tenemos un conjunto de
entradas asociadas a una serie de pesos y parámetros que se deben ajustar
internamente para obtener un valor deseado.

Básicamente la neurona actúa como un modelo de regresión lineal, que puede


tener una variación de la recta por un parámetro llamado Bias o Sesgo, y de un
Umbral posteriormente. El sesgo se encuentra representado como una entrada
extra a la neurona.
Sin embargo, se presenta una necesidad de combinar varias neuronas para poder
conseguir modelos más complejos. Una red de Neuronas.

Pero como son modelos regresión lineal, sumar muchas líneas rectas, daria como
resultado otra línea recta. Y esto hace que la red colapse como si solo tuviéramos
una única neurona solucionando un Gran problema. Y ahí aparece La función de
activación, esta lo que hará será distorsionar el plano generado por la neurona, y
que esta se adapte a la solución de modelos mucho más complejos.
Estructura de la Red Neuronal

Características y/o Ventajas


Las redes neuronales cuentan con una serie de características al trabajar con
ellas:
- Aprendizaje Adaptativo
- Auto-organización
- Tolerancia a Fallos
- Operación en tiempo real
- Fácil inserción dentro de la tecnología existente
Tipos de Neuronas Artificiales
Las neuronas artificiales se pueden clasificar de acuerdo a los valores que pueden
tomar. Por ahora es suficiente distinguir entre dos tipos principales:
a- Neuronas binarias.
b- Neuronas reales.
Las neuronas binarias solamente pueden tomar valores dentro del intervalo {0, 1}
o {-1, 1}, mientras que las neuronas reales pueden hacerlo dentro del rango [0, 1]
o [-1, 1]. Los pesos normalmente no están restringidos a un cierto intervalo,
aunque para aplicaciones específicas puede ser esto necesario.
Topología

Redes Monocapa
En las redes monocapa, se establecen conexiones entre las neuronas de la única
capa que constituye la red. Las redes monocapas se utilizan generalmente en
tareas relacionadas con lo que se conoce como autoasociación (regenerar
información de entrada que se presenta a la red de forma incompleta o
distorsionada).
Redes Multicapa:
Las redes multicapas son aquellas que disponen de un conjunto de neuronas
agrupadas en varios (2, 3, etc.) niveles o capas.
Redes de Hopfield
La red de hopfield, fue desarrollada en 1982 por John Hopfield, en una red
monocapa cuyas salidas son números binarios. Cada neurona de la red se
encuentra conectada con todas las demás, pero no consigo mismo.
La red de hopfield cuenta con dos etapas de trabajo:
- Etapa de Aprendizaje
- Etapa de Evaluacion
Los pesos de las sinapsis o relaciones, son simétricos. Y se trata de una red
autoasociativa. Esto quiere decir, que puede recibir y almacenas información
(patrones), como si de una memoria se tratase en su etapa de aprendizaje. Para
después ante una determinada entrada, la red evolucione hasta estabilizarse
ofreciendo como salida la informacion que coincida o se parezca más a su
reciente entrada.
Ejemplo
Se desea entrenar una Red de Hopfield, que sea capaz de reconocer información
(patrones) de imágenes formadas por cuatro pixeles, en una matriz de 2x2.
En la figura siguiente se muestran ejemplos de patrones que podrían utilizarse
como entradas a la red:

Los pixeles negros podrían representarse mediante el valor binario 1, y los blancos
con el valor binario -1. En este caso, las informaciones serían dos vectores de
cuatro elementos (N = 4) que contienen los valores de los pixeles. La red, por
tanto, tendría 4 neuronas para que cada una reciba el valor de un pixel.
Los valores de los vectores de entrada que representan cada patrón son:
E1= [1, 1,-1,-1] y E2 = [-1,-1, 1, 1]
Etapa de Aprendizaje:
El aprendizaje de estas dos informaciones consiste en la obtención de los pesos
de la red (matriz W).
Utilizaremos la fórmula

Para la entrada E1, la salida W1 es:

TE1 * E1 – I =
Para la entrada E2, la salida W2 es:

TE2 . E2 – I =
Sumando W1 y W2 se obtiene la matriz de pesos definitiva, W:

Una vez finalizada la fase de aprendizaje (entrenamiento), la red podría ser


utilizada como memoria asociativa de acceso por contenido, de tal forma, que al
presentarle una información, obtengamos como resultado la más parecida a la
almacenada durante el aprendizaje.
Fase de Evaluación:
Por ejemplo, ser podría comprobar lo que ocurre con el patrón de entrada
siguiente:
El vector es E = [1, -1, -1, ,1]
Utilizaremos las fórmulas indicadas en el paso 2 del algoritmo de evaluación de la
red Hopfield. Inicialmente, la salida corresponde a la propia información de
entrada. Entonces se produce la primera iteración, obteniéndose las siguientes
nuevas entradas en cada neurona:

Si suponemos una función de activación de cada neurona de tipo escalón


centrada en el origen (desplazamiento i = 0), la salida de la red después de esta
primera iteración será:
S = [1, 1, -1, -1]
Repitiendo el proceso, tomando como entrada la salida anterior, S, tenemos:

Aplicando igualmente la función de activación a este nuevo resultado (segunda


iteración de EW), la salida obtenida es:
S = [1, 1, -1, -1]
Observemos que se repite la salida de la primera iteración, entonces se ha llegado
a una situación de estabilidad, en la que la red ha generado como salida el patrón
más parecido al presentado como entrada:

Ejercicio: Punticos !!
Verificar si la red neuronal reconoce el siguiente patrón:

Ejercicio Matriz de 3x3 elaborado a Mano.

Mecanismos de Aprendizaje
El aprendizaje es el proceso por el cual una red neuronal modifica sus pesos en
respuesta a una información de entrada que brindamos.
Un aspecto importante respecto al aprendizaje de las redes neuronales es el
conocer cómo se modifican los valores de los pesos, es decir, cuáles son los
criterios que se siguen para cambiar el valor asignado a las conexiones cuando se
pretende que la red aprenda una nueva información.
Hay dos métodos de aprendizaje importantes que pueden distinguirse:
a- Aprendizaje supervisado.
b- Aprendizaje no supervisado.

El aprendizaje Supervisado, se realiza mediante un entrenamiento controlado


por un agente externo (supervisor, maestro) que determina la respuesta que
debería generar la red a partir de una entrada determinada.
Se controla la salida de la red y en caso de que ésta no coincida con la deseada,
se procederá a modificar los pesos de las conexiones, con el fin de conseguir que
la salida obtenida se aproxime a la deseada.
1) Aprendizaje por corrección de error.
2) Aprendizaje por refuerzo.
3) Aprendizaje estocástico.

(Santiago)
Aprendizaje No Supervisado, Las redes con aprendizaje no supervisado
(también conocido como auto supervisado) no requieren influencia externa para
ajustar los pesos de las conexiones entre sus neuronas.
La red no recibe ninguna información por parte del entorno que le indique si la
salida generada en respuesta a una determinada entrada es o no correcta. Estas
redes deben encontrar las características, regularidades, correlaciones o
categorías que se puedan establecer entre los datos que se presenten en su
entrada.
- Aprendizaje Hebbiano
- Aprendizaje Competitivo y Comparativo
- Los otros 3 que encontro
Redes de Kohonen (Santiago)
Que son? Caracteristicas? Algoritmo.
Ejemplos que quedo de hacer

Aplicaciones Redes Neuronales (Santiago)


Hay muchos tipos diferentes de redes neuronales; cada uno de los cuales tiene
una aplicación particular más apropiada. Algunas aplicaciones comerciales son:
Biología:
- Aprender más acerca del cerebro y otros sistemas.
- Obtención de modelos de la retina.
Empresa:
- Evaluación de probabilidad de formaciones geológicas y petrolíferas.
- Identificación de candidatos para posiciones específicas.
- Explotación de bases de datos.
- Optimización de plazas y horarios en líneas de vuelo.
- Optimización del flujo del tránsito controlando convenientemente la
temporización de los semáforos.
- Reconocimiento de caracteres escritos.
- Modelado de sistemas para automatización y control.
Medio ambiente:
- Analizar tendencias y patrones.
- Previsión del tiempo.
Finanzas:
- Previsión de la evolución de los precios.
- Valoración del riesgo de los créditos.
- Identificación de falsificaciones.
- Interpretación de firmas.
Manufacturación:
- Robots automatizados y sistemas de control (visión artificial y sensores de
presión, temperatura, gas, etc.).
- Control de producción en líneas de procesos.
- Inspección de la calidad.
Medicina:
- Analizadores del habla para ayudar en la audición de sordos profundos.
- Diagnóstico y tratamiento a partir de síntomas y/o de datos analíticos
(electrocardiograma, encefalogramas, análisis sanguíneo, etc.).
- Monitorización en cirugías.
- Predicción de reacciones adversas en los medicamentos.
- Entendimiento de la causa de los ataques cardíacos.
Militares:
- Clasificación de las señales de radar.
- Creación de armas inteligentes.
- Optimización del uso de recursos escasos.
- Reconocimiento y seguimiento en el tiro al blanco.

Software Redes Neuronales (Santiago)


Mencionar la lista que esta en las diapositivas de la profe

También podría gustarte