Download Redes Neuronales

Document related concepts

Red neuronal de impulsos wikipedia , lookup

Red neuronal artificial wikipedia , lookup

Neuroph wikipedia , lookup

Conexionismo wikipedia , lookup

Software de redes neuronales wikipedia , lookup

Transcript
Redes
Neuronales
Artificiales
parte 1
(apuntes de la materia)
Por: M. C. Ernesto Cortés Pérez
Ingeniería en Computación
[email protected]
UNISTMO
• Neurona Biológica
Redes Neuronales
2
Sistema Nervioso
Redes Neuronales
3
Sistema Nervioso Central
El cerebro y la
médula espinal se
comunican por una
abertura situada en
la base del cráneo y
están también en
contacto con las
demás zonas del
organismo a través
de los nervios.
Redes Neuronales
4
Hemisferios
Redes Neuronales
5
Número de neuronas en el Cerebro Humano
• 1011 Neuronas
(procesadores)
• Poder desconocido
• 1000 – 10000
conecciones por
neurona
Redes Neuronales
6
Número de neuronas en algunas especies
• Mosca, 100,000
• Lombriz de tierra, 300
• Medusa de mar, 7,000
Redes Neuronales
7
Redes Neuronales
Redes Neuronales
8
Redes Neuronales
Redes Neuronales
9
Fisiología de una Neurona
Redes Neuronales
10
Fisiología de una Neurona
Redes Neuronales
11
Soma
•Del soma parte una
prolongación
larga
llamada axón. Esta
prolongación permite
llevar
información
hacia el cerebro, en el
caso de las neuronas
receptoras,
y
del
cerebro
hacia
el
cuerpo,
en
las
neuronas motoras.
Redes Neuronales
12
Dendritas
• A través de las dendritas se comunican y
mandan información entre sí las neuronas.
Redes Neuronales
13
Axones
Redes Neuronales
14
Proceso químico
Redes Neuronales
15
Arquitectura Neuronal
• Las ramificaciones y
la organización de
las neuronas no son
al azar, por el
contrario, se sabe
que su distribución
es
extraordinariamente
precisa.
Redes Neuronales
16
• Neuronas Artificiales
Redes Neuronales
17
Orígenes de las RN
1949
Teoría de la Redes Neuronales
– Walter Pitts junto a Bertran Russell y Warren
McCulloch intentaron explicar el funcionamiento del
cerebro humano, por medio de una red de células
conectadas entre sí.
– Lo aplicaron a la implementación de operaciones
lógicas.
– Partieron del menor suceso psíquico (estimado por
ellos): el impulso todo/nada, generado por una célula
nerviosa.
Redes Neuronales
18
Orígenes de las RN
1949
Conductividad de las sinapsis de las RN
– El fisiólogo Donald O. Hebb (de la McGill University)
expuso que una percepción o un concepto se
representa en el cerebro por un conjunto de neuronas
activas simultáneamente.
– Afirmó que la memoria se localiza en las conexiones
entre las neuronas (sinápsis).
– La regla de aprendizaje de Hebb presenta de manera
intuitiva el modo en que las neuronas memorizan
información.
Esta regla indica que las conexiones entre dos neuronas
se refuerzan si ambas son activadas.
Redes Neuronales
19
Synapse concept
• The synapse to the incoming signal can be changed
during a "learning" process [1949]
Hebb’s Rule:
If an input of a neuron is repeatedly and persistently
causing the neuron to fire, a metabolic change
happens in the synapse of that particular input to
reduce its resistance
Redes Neuronales
20
Orígenes de la IA
1950•
Se considera a Alan Mathison Turing (1912-1953) el
padre de la Inteligencia Artificial, por su famosa Prueba
de Turing
– Está fundamentado en la hipótesis positivista
de que, si una máquina se comporta en todos
los aspectos como inteligente, entonces debe
ser inteligente.
Redes Neuronales
21
Orígenes de la IA
1951
• Aparecen los primeros programas “inteligentes”. Corrían sobre una
Mark I en la Universidad de Manchester.
– Ej: Juego de ajedrez escrito por Dietrich Prinz.
• Minsky y Edmonds montaron la primera máquina de redes
neuronales
– Formada por 40 neuronas que imitaban el cerebro de una
rata.
– Minsky la usó para hacer su tesis doctoral.
– La RN era estática. No tenía posibilidades de aprender.
1956
• Aparece el término "inteligencia artificial" durante una conferencia
convocada por McCarthy.
– McCarthy fue el inventor del lenguaje LISP.
Redes Neuronales
22
Orígenes de la IA
1957
La primera red neuronal
– Frank Rosenblatt presentó el Perceptron, una red
neuronal con aprendizaje supervisado cuya regla de
aprendizaje era una modificación de la propuesta
por Hebb.
– El principal aporte del Perceptron es que la
adaptación de las conexiones entre las neuronas se
realiza teniendo en cuenta el error entre la salida
que da la red y la salida que se desea.
– En la fase siguiente de operación, la red «es capaz»
de responder adecuadamente cuando se le vuelven
a presentar los patrones de entrada.
Redes Neuronales
23
Orígenes de la IA
1959
• Widrow publica una teoría sobre la adaptación neuronal y unos
modelos inspirados en esa teoría, el Adaline (Adaptative Linear
Neuron) y el Madaline (Multiple Adaline).
– Estos modelos fueron usados en numerosas aplicaciones y
permitieron usar, por primera vez, una red neuronal en un
problema importante del mundo real: filtros adaptativos para
eliminar ecos en las líneas telefónicas.
• Rosemblatt utilizó la regla Delta como estrategia de aprendizaje.
1962
Redes Neuronales
24
Orígenes de la IA
1966
• Joseph Weizenbaum diseñó un Chatbot llamado ELIZA el
cual parodiaba al psicólogo Carl Rogers.
– Un Chatbot es un programa que intenta mantener una
conversación con una persona.
– Se dice erróneamente que Eliza "simula" (o tanto peor,
"emula") a un psicólogo terapeuta.
– El simular la psicoterapia evitó a Weizenbaum el tener que
proveer al programa de una base de conocimiento del mundo
real ya que para reformular la pregunta no es necesario tener un
gran conocimiento del tema en discusión.
• Ejemplo: en el caso ¿Quién es tu compositor favorito? puede ser
preguntando ¿Es este un tema de interés para Ud? o ¿Qué me puede
decir Ud. de su compositor favorito?
Redes Neuronales
25
Orígenes de la IA
1966
• Joel Moses demostró el poder del razonamiento simbólico para la
integración de problemas a través de su programa Macsyma, el
primer programa exitoso basado en conocimiento en
matemáticas.
– Macsyma resolvía: factorización de polinomios, ecuaciones
diferenciales, integrales indefinidas, etc.
1969
• Minsky y Papert demostraron las grandes limitaciones de esta
red.
– PROBLEMA: Una red del tipo Perceptron no es capaz
de aprender todas las posibles combinaciones entre
entradas y salidas
Redes Neuronales
26
Orígenes de la IA
70´s
• Alain Colmerauer desarrolló el lenguaje de programación
Prolog.
• Ted Shortliffe demostró el poder de los sistemas basados en
reglas para representación del conocimiento e inferencia en
diagnóstico médico.
– MYCIN es llamado el primer sistema experto. Fue
desarrollado en LISP.
• Pocos investigadores (Grossberg y Kohonen) trabajan en:
– Procesamiento de Señales Adaptivo
– Reconocimiento de patrones.
– Modelización biológica.
Redes Neuronales
27
Orígenes de la IA
80´s
• Resurgen las Redes Neuronales con la aplicación del
algoritmo Backpropagation descripto por Paul Werbos en
1974.
• El desafío japonés de la quinta generación dió lugar al auge
de los sistemas expertos
– El objetivo era ordenar a la máquina realizar un
propósito en lugar de instruirla para ello.
– Promueven la creación de código a partir de reglas.
– Al no alcanzar sus objetivos, el campo sufrió un
nuevo retraso.
Redes Neuronales
28
Reaparecen las RN
80´s
1980 Proyecto DARPA (Defense Advanced Research
Projects Agency).
1983 Hopfield y los modelos BAM de Kosko
reimpulsaron el tema.
1987 IEEE International Conference on Neural
Networks
1988 Journal de la INNS
(International Neural Networks Society)
1990 IEEE Transaction on Neural Networks.
Redes Neuronales
29
Redes Neuronales Artificiales (RNA)
• El cerebro humano
– Procesa información imprecisa rápidamente.
– Aprende sin instrucciones explícitas.
– Crea representaciones internas que permiten
estas habilidades.
• Las Redes Neuronales Artificiales o simplemente
Redes
Neuronales,
buscan
emular
el
comportamiento del cerebro humano.
Redes Neuronales
30
Redes Neuronales
• Su funcionamiento se encuentra inspirado en el cerebro
humano en lo que se refiere a:
– Procesamiento de la información proveniente del
entorno en tiempo real, combinándola o comparándola
con información almacenada y obteniendo respuestas
adecuadas incluso en situaciones nuevas.
– Robustez y tolerancia a fallas
– Capacidad de adaptación.
– Manejo de información
inconsistente.
difusa,
con
ruido
e
– Procesamiento paralelo.
Redes Neuronales
31
Inteligencia Artificial
• Inteligencia Artificial convencional (deductiva)
– Sistemas Expertos
– Razonamiento basado en casos
• Inteligencia Computacional (inductiva)
– Redes Neuronales
– Lógica difusa
– Algoritmos Genéticos
Redes Neuronales
32
Neuronas biológicas
Redes Neuronales
33
Similitudes entre una neurona biológica y una artificial
Los
pesos
Wi X
son
la intensidad
deseñales
la sinápsis
que
Las
esentradas
la función
representan
que la las
neurona
debe
quesobrepasar
provienen
iumbral
para
conecta
activarse;
dos
neuronas;
este
proceso
tanto
X
ocurre
Wi por
son las
valores en
de
otras
neuronas
y que
son capturadas
i comobiológicamente
el
reales.
cuerpo de la célula.
dendritas
Redes Neuronales
34
Red Neuronal Artificial
Redes Neuronales
35
Partes de una red neuronal artificial
• Neurona
Redes Neuronales
36
Neural Net Limitations
• Neural Nets are good for prediction and estimation when:
– Inputs are well understood
– Output is well understood
– Experience is available for examples with “train” the
neural net application (expert system)
• Neural Nets are only as good as the training set used to
generate it. The resulting model is static and must be
updated with more recent examples and retraining for it to
stay relevant.
Redes Neuronales
37
Partes de una red neuronal artificial
• Capas
Redes Neuronales
38
Ejemplo: Reconocimiento de caracteres escritos a mano.
• La red está organizada en tres capas
– Capa de entrada
– Capa oculta
– Capa de salida
• La cantidad de nodos en cada capa dependerá del
problema a resolver
– Ej: La capa de salida contendrá tantos nodos como
tipos de caracteres distintos se desee reconocer.
Redes Neuronales
39
Ejemplo: Reconocimiento de caracteres escritos a mano.
• Qué información se ingresará en la capa de
entrada?
– Ej: imagen del carácter representado por una
matriz de 10x8 pixels ingresada por filas.
• Falta indicar la cantidad de elementos de
procesamiento de la capa oculta y entrenar la
red con pares de datos.
Redes Neuronales
40
Resolución de problemas utilizando RN
• No es necesario tener un proceso bien definido para
transformar algorítmicamente una entrada en la
salida correspondiente.
• Sólo se necesita una colección de ejemplos
representativos del problema a resolver.
• La RN se adapta para reproducir las salidas
deseadas cuando se le presenta una entrada dada.
Redes Neuronales
41
a) Caracteres reconocidos correctamente
b) Caracteres no reconocidos
Redes Neuronales
42
Real Estate Appraiser
Redes Neuronales
43
Loan Prospector
• A Neural Network (Expert System) is like a black box that knows
how to process inputs to create a useful output.
• The calculation(s) are quite complex and difficult to understand
Redes Neuronales
44
Aspectos a considerar para utilizar un RNA
• Indicar la arquitectura
– La cantidad de entradas y salidas están
determinadas por el problema a resolver.
• Algoritmo de entrenamiento
– Forma de obtener el conocimiento que
quedará almacenado en los pesos de la red.
• Entrenar y probar.
Redes Neuronales
45
Coronary
Disease
STOP
Neural
Net
Redes Neuronales
46
Examples in Medical Pattern Recognition
Diagnosis
• Protein Structure Prediction
• Diagnosis of Arteritis
• Diagnosis of Myocardial Infarction
• Interpretation of ECGs
• Interpretation of Chest X-rays
Prognosis
• Prognosis of Breast Cancer
• Outcomes After Spinal Cord Injury
Redes Neuronales
47
Myocardial Infarction Network
Duration
Pain
2
Intensity Elevation
Pain ECG
4
1
Myocardial Infarction
0.8
Smoker
1
Age
50
Male
1
“Probability” of MI
Redes Neuronales
48
• Presenting the data
Redes Neuronales
49
Redes Neuronales
50