2. Explicar que tipo de problemas puede resolver el Perceptrón

Anuncio
Universidad de Buenos Aires
Facultad de Ingeniería
Sistemas de Programación
no convencional de Robots
(75.70)
TP
Perceptrón
Primer cuatrimestre de 2012
Docentes:
M. Ing. Hernán Merlino
Integrantes:
Padrón
85797
88816
Nombre
Zucchiatti, Martín Mauro
Pereira María Florencia
Estudio de Algoritmos de Inducción
75.70 Sistemas de Programación No Convencional de Robots
Índice
Índice ................................................................................................................................................... 2
Enunciado ........................................................................................................................................ 3
1.
Introducción ............................................................................................................................ 3
Entrenamiento ............................................................................................................................ 4
2. Explicar que tipo de problemas puede resolver el Perceptrón ................................................... 5
Problemas linealmente separables ............................................................................................. 5
Ejemplo........................................................................................................................................ 6
3. Explicar que problemas se hallaron en el percerptrón simple y por que nació el perceptrón
multicapa......................................................................................................................................... 6
Página 2 de 7
Estudio de Algoritmos de Inducción
75.70 Sistemas de Programación No Convencional de Robots
Enunciado
Sobre el Perceptrón
1. Introducción
2. Explicar que tipo de problemas puede resolver el Perceptrón.
3. Explicar que problemas se hallaron en el percerptrón simple y por que nació el perceptrón
multicapa.
1. Introducción
Las redes neuronales tienen multiples aplicaciones. Permiten, por ejemplo, dado un dato X
determinar a qué clase pertenece o determinar patrones.
McCulloch y Pitts proponen el primer modelo de red neuronal, donde una neurona recibe un
estímulo de las neuronas vecinas y si el estímulo total excede un umbral, se activa la neurona.
Es un modelo binario, dado que se realiza una suma ponderada de las entradas y se obtiene como
salida un 1 si se supera el umbral o un 0 si no.
Este tipo de neuronas son capaces de representar cualquier circuito digital, son muy parecidas a
puertas lógicas y no existe un algoritmo de entrenamiento para obtener los pesos.
A continuación mostramos un AND y un OR que pueden ser representados usando este modelo,
para luego realizar una clasificación por ejemplo.
Posteriormente, surgió el Perceptrón, desarrollado por Frank Rosenblatt. El Perceptrón es el
modelo de red neuronal más elemental. El modelo biológico más simple de un perceptrón es una
neurona. Una neurona es una célula especializada y caracterizada por poseer una cantidad
indefinida de canales de entrada llamados dendritas y un canal de salida llamado axón. Las
dendritas operan como sensores que recogen información de la región donde se hallan y la derivan
hacia el cuerpo de la neurona que reacciona mediante una sinapsis que envía una respuesta hacia
el cerebro, esto en el caso de los seres vivos.
El paper que escribió Rosenblatt sobre el Perceptrón menciona tres ideas fundamentales:



Uso de una red neuronal de una sola capa. Las entradas son X1, X2, …, XN
Los pesos (w1, w2, etc) se aprenden por entrenamiento.
Existen varias funciones de activación (lineal, sigmoide, escalón, etc.).
Página 3 de 7
Estudio de Algoritmos de Inducción
75.70 Sistemas de Programación No Convencional de Robots
Las imágenes anteriores muestran una representación de los conceptos mencionados y que un
perceptrón tiene en una capa de entrada conectada a una capa de salida (trabaja con una sola
capa).
El perceptrón usa una matriz para representar las redes neuronales y es un discriminador terciario
que
traza
Donde
su
entrada
vector
binario)
a
un
único
valor
de
salida
producto punto (que computa una suma ponderada).
El valor de
Entrenamiento
Además de proponer al perceptrón, Rosenblatt introdujo un algoritmo de entrenamiento que
permita obtener los pesos de una red para resolver un problema en particular.
El entrenamiento de un perceptrón es por medio de la regla de aprendizaje delta:
Para cada peso W se realiza un ajuste dW según la regla:
dW = LR ( T - Y ) X
Donde LR es la razón de aprendizaje, T el valor deseado, Y el valor obtenido, y X la entrada
aplicada al perceptrón.
Un pseudocódigo del algoritmo de entrenamiento es:
2.
3.
4.
5.
Crear un perceptrón con n+1 neuronas de entradas.
Inicializar los pesos al azar.
Iterar usando el set de entrenamiento computando la suma ponderada de las entradas.
Calcular la salida usando la función escalón:
Página 4 de 7
Estudio de Algoritmos de Inducción
6.
7.
75.70 Sistemas de Programación No Convencional de Robots
Comparar la salida calculada con la que debería obtenerse. Si la clasificación fue correcta, no se
modifican los pesos.
Si la clasificación fue incorrecta, actualizar los pesos:
a. Si la salida yj=1 pero tenía que ser 0, wi =w1-ax i =0,…n
b. Si la salida yj=0 pero tenía que ser 1, wi =w1+ax i =0,…n
Donde a es el parámetro de apredizaje y es constante.
2. Explicar que tipo de problemas puede resolver el Perceptrón
Problemas linealmente separables
La característica principal que deberán tener los problemas a resolver con el perceptrón es que
deben ser linealmente separables.
En un espacio 2D, se dice que conjuntos de puntos son linealmente separables si éstos pueden ser
separados por una línea recta. Generalizando a un espacio n-dimensional, se dice que un conjunto
de puntos es linealmente separable si existe un hiperplano de dimensión n-1 que separe los sets.
El rango de tareas que el Perceptrón puede manejar es mucho mayor que simples decisiones y
reconocimiento de patrones. Por ejemplo, se puede entrenar una red para formar el tiempo
pasado de los verbos en ingles, leer texto en ingles y manuscrito. El Perceptrón multicapa (MLP)
puede ser usado para la predicción de una serie de datos en el tiempo; tal a sido su éxito en la
medición de la demanda de gas y electricidad, además de la predicción de cambios en el valor de
los instrumentos financieros.
Predicción de mercados financieros, diagnósticos médicos, el Perceptrón como una red
codificadora, el Perceptrón aprende a sumar enteros.
NETtalk es un Perceptrón que es capaz de transformar texto en ingles en sonido individual
(representaciones fonéticas) y la pronunciación con la utilización de un sintetizador de voz; cuenta
Página 5 de 7
Estudio de Algoritmos de Inducción
75.70 Sistemas de Programación No Convencional de Robots
con aproximadamente 300 nodos de neuronas (siendo 80 en la capa escondida) y 20,000
conexiones individuales.
Ejemplo
Considere las funciones AND y OR, estas funciones son linealmente separables y por lo tanto
pueden ser aprendidas por un perceptrón.
Vemos en el gráfico que es posible separar los puntos en 2 grupos, por esta razón se puede
resolver el problema.
3. Explicar que problemas se hallaron en el percerptrón simple y por
que nació el perceptrón multicapa.
El perceptrón tiene como limitación que solo puede resolver problemas que sean linealmente
separables.
Une ejemplo de este tipo de problemas es la función XOR, cuya tabla de verdad es la siguiente:
Como se observa en el gráfico no existe una forma de dibujar una únic línea recta que deje a los
círculos (paridad impar) de un lado y los puntos (paridad par) del otro. Por esta razón, el
perceptrón no será capaz de separar una entrada que sea par de otra impar. La función XOR no
Página 6 de 7
Estudio de Algoritmos de Inducción
75.70 Sistemas de Programación No Convencional de Robots
puede ser aprendida por un único perceptrón puesto que requiere al menos de dos líneas para separar las
clases (0 y 1). Debe utilizarse al menos una capa adicional de perceptrones para permitir su aprendizaje. Por
esta razón este tipo de problemas solo puede resolverse con un perceptrón MultiCapa.
Página 7 de 7
Descargar