8. Redes neuronales
Summary
TLDRLa clase magistral se centra en las redes neuronales, un paradigma de computación y aprendizaje que permite clasificar y tomar decisiones de manera más eficiente. Se explora la historia y evolución de las redes neuronales, desde la idea inicial de Frank Rosenblatt hasta el desarrollo del perceptrón multicapa por Paul Werbos. Se destaca la importancia de la retropropagación, un algoritmo clave para el entrenamiento de estas redes. Además, se discuten las características fundamentales de las redes neuronales, como su alta paralelismo, robustez frente a fallos y capacidad de generalización. La clase también aborda la aplicación de estas tecnologías en diversos campos, como la banca y la bolsa, destacando su eficacia en el manejo de variables heterogéneas y su potencial para predecir tendencias en entornos con valores continuos.
Takeaways
- 🧠 Las redes neuronales son un paradigma de computación y aprendizaje que permite la clasificación y toma de decisiones en diferentes patrones.
- 📈 El aprendizaje en las redes neuronales ocurre durante las fases de entrenamiento y permite a la red extrapolar decisiones a situaciones no vistas anteriormente.
- 🤖 El perceptrón multicapa es una de las redes neuronales más utilizadas y se centra en la clasificación de patrones complejos.
- 📚 La historia de las redes neuronales comienza en la mitad del siglo pasado con el primer modelo formal de una neurona.
- 🔄 El entrenamiento de una red neuronal implica un ciclo iterativo que puede requerir cambios en la estructura de la red para mejorar soluciones.
- 🔄 La retropropagación es un algoritmo clave en el entrenamiento de redes neuronales, permitiendo la modificación de pesos para minimizar errores.
- 💡 Las neuronas en las redes neuronales funcionan a través de la recepción de impulsos, conexión con otras neuronas y amplificación de estos impulsos.
- 🔗 La robustez de las redes neuronales frente a fallos se debe a su capacidad para mantener aceptables salidas incluso cuando algunas neuronas fallan.
- 🧐 Las redes neuronales son adaptables y generalizan su conocimiento a nuevos elementos, lo que las hace útiles para la clasificación de patrones heterogéneos.
- 🔍 El diseño de una red neuronal implica la definición de su topología, elección de patrones de entrenamiento y validación, y posible implementación en hardware o software.
- 📉 Las aplicaciones de las redes neuronales son variadas, incluyendo la predicción de valores en el mercado de valores y la clasificación de patrones en entornos con variables heterogéneas.
Q & A
¿Qué son las redes neuronales y cómo se definen en el ámbito de la computación y el aprendizaje?
-Las redes neuronales son un paradigma de computación y aprendizaje que permite clasificar de una mejor manera cualquier patrón en el que se trabaje, siendo fundamentales en la toma de decisiones y capaz de aprender y extrapolar a decisiones en las cuales no ha sido entrenada anteriormente.
¿Cuál es el propósito principal de las redes neuronales?
-El propósito principal de las redes neuronales es emular el comportamiento de las neuronas del cerebro humano para la clasificación y el aprendizaje de patrones, con la capacidad de generalizar y extrapolar conocimientos a nuevos patrones.
¿Qué es el perceptrón multicapa y cómo se relaciona con las redes neuronales?
-El perceptrón multicapa es una de las redes neuronales que tiene mayor aplicación, capaz de clasificar patrones de tipo heterogéneo y sin limitaciones. Es una evolución del primer perceptrón y permite la interconexión de múltiples neuronas en varias capas para obtener una salida deseada después del entrenamiento.
¿Cómo se aborda el diseño de una red neuronal?
-El diseño de una red neuronal implica definir su topología y arquitectura, elegir los patrones de entrada y salida, y seguir un ciclo que puede ser recursivo para modificar la estructura de la red y mejorar las soluciones.
¿Qué es la retropropagación y cómo se utiliza en el entrenamiento de redes neuronales?
-La retropropagación es un algoritmo utilizado en el entrenamiento de redes neuronales que consiste en modificar los pesos iniciales en función de la diferencia entre la salida esperada y la salida obtenida, con el objetivo de corregir el error y mejorar la precisión de la red.
¿Por qué son importantes las redes neuronales en el manejo de variables heterogéneas?
-Las redes neuronales son importantes en el manejo de variables heterogéneas porque pueden tratar y generalizar patrones complejos que involucran diferentes tipos de datos, lo que es especialmente útil en áreas como la banca, donde se consideran variables como la edad, el salario y el historial crediticio.
¿Cómo son las redes neuronales aplicadas en problemas con valores de carácter continuo?
-Las redes neuronales son adecuadas para problemas con valores continuos, como la predicción de valores económicos o la evolución de indicadores en el tiempo, ya que pueden manejar y generalizar patrones en espacios de alta dimensionalidad y proporcionar respuestas dentro de un dominio específico.
¿Qué es la función de un neurona en una red neuronal y cómo se relaciona con los pesos y el término independiente?
-La función de un neurona en una red neuronal es recibir impulsos, conectarse con otras neuronas y amplificar estos impulsos. Los pesos modulan los valores de las entradas y el término independiente, o bias, modifica el sumatorio de las entradas, lo que da lugar a la salida de la neurona, que es el resultado de la multiplicación de las entradas por los pesos más el término independiente.
¿Cuáles son algunos de los tipos de redes neuronales mencionados en el script?
-En el script se mencionan varios tipos de redes neuronales, incluyendo el perceptrón multicapa, las redes de Hopfield, las redes co-ligaduras funcionales y las memorias auto-asociativas.
¿Cómo se aborda la fase de validación en el diseño de una red neuronal?
-La fase de validación se aborda utilizando patrones que no han sido utilizados en la fase de entrenamiento para verificar que la red funcione adecuadamente con datos nuevos, lo que permite validar su capacidad de generalización y su rendimiento óptimo.
¿Por qué las redes neuronales son consideradas robustas frente a fallos?
-Las redes neuronales son consideradas robustas frente a fallos porque, incluso si una de las neuronas falla, las salidas de la red siguen siendo aceptables debido a su alta capacidad de generalización y su naturaleza adaptativa.
¿Cómo se relaciona el concepto de aprendizaje en las redes neuronales con la capacidad de la red para extrapolar información a nuevos patrones?
-El aprendizaje en las redes neuronales se relaciona con su capacidad de extrapolación porque, después de entrenarse con un conjunto de patrones, la red es capaz de aplicar lo aprendido a nuevos patrones que no forman parte del conjunto de entrenamiento, lo que demuestra su habilidad para generalizar y prever soluciones adecuadas.
Outlines
🧠 Introducción a las Redes Neuronales y el Perceptrón Multicapa
En esta introducción a las redes neuronales, se explica cómo estas funcionan como un paradigma de computación y aprendizaje, capaces de clasificar patrones y tomar decisiones. Se detalla el funcionamiento de la red durante su entrenamiento y su capacidad para generalizar decisiones en escenarios no entrenados. Se hace especial énfasis en el perceptrón multicapa, repasando su historia, desde los primeros modelos de neurona en la década de 1940, hasta las mejoras significativas como la introducción de la retropropagación en 1986 que permitieron superar limitaciones anteriores.
🔍 Tipos y Características de las Redes Neuronales
Este segmento aborda los diferentes tipos de redes neuronales y sus aplicaciones específicas, como las redes de Hopfield o las memorias autoasociativas, destacando su utilidad en la clasificación de patrones. Las redes neuronales se describen como robustas y altamente paralelas, lo que facilita su implementación tanto en hardware como en software. Se resalta su naturaleza adaptativa mediante el uso del algoritmo de retropropagación, crucial para ajustar los pesos de las conexiones neuronales en función de los errores observados durante el entrenamiento.
🧩 Diseño y Entrenamiento de Redes Neuronales
Este párrafo explica el proceso de diseño y entrenamiento de redes neuronales utilizando el algoritmo de retropropagación. Se inicia definiendo la arquitectura de la red, incluyendo el número de capas y neuronas, y se seleccionan patrones de entrada y salida para el entrenamiento. El entrenamiento se ajusta según los resultados, modificando algoritmos o patrones si es necesario. Finalmente, se valida la red con nuevos patrones no utilizados en el entrenamiento para asegurar su funcionamiento óptimo.
🌐 Aplicaciones y Validación de Redes Neuronales
El último párrafo destaca la aplicación práctica de las redes neuronales, particularmente en áreas donde se manejan datos heterogéneos y continuos, como en la concesión de créditos bancarios. Se discute la necesidad de un gran volumen de patrones de entrenamiento para lograr una generalización efectiva y se menciona la fase de validación, crucial para asegurar que la red funcione adecuadamente con patrones nuevos. Se concluye enfatizando la relevancia de estas tecnologías en la clasificación y predicción en dominios específicos.
Mindmap
Keywords
💡Redes neuronales
💡Perceptrón multicapa
💡Aprendizaje supervisado
💡Retropropagación
💡Pesos
💡Función de activación
💡Generalización
💡Topología de red
💡Validación de la red
💡Aplicaciones de las redes neuronales
💡Heterogeneidad de datos
Highlights
Las redes neuronales se definen como un paradigma de computación y aprendizaje que mejora la clasificación de patrones.
La red neuronal es capaz de aprender y extrapolar decisiones para patrones no vistos anteriormente.
Se centrará en la red neuronal multicapa, una de las redes con mayor aplicación.
La historia de las redes neuronales comienza en mediados del siglo pasado con el primer modelo formal de una neurona.
Frank Rosenblatt en 1958 dio la idea del perceptrón, un concepto clave en el aprendizaje de patrones.
Paul Werbos en 1974 resolvió los límites del perceptrón con la introducción de la retropropagación.
Las neuronas en las redes reciben impulsos, se conectan y amplifican, similar al cerebro humano.
El aprendizaje en las redes neuronales implica la modificación de pesos y términos independientes.
Las redes neuronales son paralelas, robustas frente a fallos y poseen una gran capacidad de generalización.
El perceptrón multicapa es capaz de clasificar patrones de tipo heterogéneo sin limitaciones.
El algoritmo de retropropagación es fundamental para el entrenamiento de redes neuronales.
La fase de diseño de una red neuronal incluye la definición de su estructura y la elección de patrones de entrenamiento y validación.
Las redes neuronales son adaptables y aprenden a partir de un conjunto de patrones para luego generalizar soluciones.
Las redes neuronales son especialmente útiles en problemas con variables heterogéneas y de carácter continuo.
Se pueden utilizar en áreas como la concesión de créditos bancarios, donde se manejan múltiples variables heterogéneas.
También son aplicables en la bolsa de valores para predecir la evolución de ciertos valores a través del análisis de redes neuronales.
El éxito de las redes neuronales depende de la cantidad y calidad de los patrones utilizados para su entrenamiento.
Después de la validación, las redes neuronales pueden ser implementadas en hardware o como sistemas de apoyo a la toma de decisiones.
Transcripts
bienvenidos a la clase magistral sobre
redes neuronales las redes neuronales se
definen como paradigma de computación y
aprendizaje en realidad es uno de los
elementos que nos permite
clasificar de una mejor manera cualquier
patrón en la cual vayamos a trabajar
dentro del mundo de la toma de
decisiones y a la vez la propia red es
capaz de aprender y en ese aprendizaje
que ahora veremos durante las fases de
entrenamiento él posteriormente va a
poder extrapolar a decisiones en las
cuales no ha sido entrenada
anteriormente es decir a clasificaciones
para las cuales no les hemos enseñado un
patrón especial
esta clase la vamos a dedicar aunque
veremos una clasificación de algunos
tipos de redes nos vamos a centrar más
bien
en una de las redes neuronales que
tienen mayor aplicación que es el
perceptor multicapa
veremos un poco de historia e
introducción a lo que son las redes
neuronales algunos tipos de redes las
características fundamentales que tienen
las redes veremos lo que es el
percepción y concretamente el perceptor
multicapa como evolución de ese primer
pc el perfecto e importante haré
hincapié en las fases de diseño de una
red neuronal cómo se diseña y cómo
veremos que metodológicamente vamos a
seguir un ciclo que a veces es recursivo
puesto que tendremos que modificar
aparte de lo que va a ser la propia
estructura de la red para mejorar las
soluciones y por último veremos algunas
aplicaciones
pues las redes neuronales no son tan
antiguas estamos hablando de mediados
del siglo pasado en el cual ya aparece
un primer modelo formal de lo que es una
neurona como intentando emular lo que
hacen las neuronas del cerebro humano
las neuronas de las redes neuronales y
concretamente la neurona lo que hace
recibir en nuestro cerebro un impulso y
ese impulso le permite conectarse con
otras neuronas y ese impulso puede ser
amplificado y eso es lo que da lugar
pues a recuerdos a experiencias etcétera
que son almacenadas dentro de nuestro
cerebro el gp en el año 49 ya anunció lo
que podría ser el ajuste por pesos que
es fundamental a la hora de la
implementación de una red neuronal o de
un entrenamiento de la red ya rosenblatt
en el 58 dio la idea de lo que podía ser
el perceptor ya se critica en el 69 casi
10 10 años después que ese percepción
puede clasificar cosas pero no todas
esa crítica con la función x org y ya en
el año 74 paul verbos pues da la
solución a esa a esa percepción y
enuncia lo que se denomina el percepción
multicapa de manera que da solución a
esa clasificación intentando poder
clasificar patrones de tipo heterogéneo
sin tener ningún tipo de limitación para
esa misma solución en el año 86 llegaron
en raml jari y maxilar
aplicando ya la retro pop retro
propagación lo que ocurre es que por
curiosidad en el caso de paul verbos el
labio publicado en su tesis doctoral que
se habían leído pocos entonces pues
parece que
el avance es más de remediar y maxilar
cuando en realidad ya la base estaba
apuesta por volver vos
una neurona en la evolución en la forma
de emular la neurona cómo funciona en el
cerebro en esa conexión neuronal que
tenemos en nuestra nuestro cerebro pues
es lo que hacemos es intentar
hacer entradas y esas entradas vamos a
analizarlas y en ese análisis lo único
que vamos a hacer es un sumatorio de los
valores de las entradas lo que ocurre es
que vamos a modular es esos valores de
las entradas mediante unos factores que
denominamos pesos
estas v dobles son las que los pesos que
van a modular los valores de las
entradas y además le vamos a añadir lo
que se denomina un término independiente
y en ese término independiente es un
valor que va a modificar como sumatorio
lo que va a ser esta salida luego la
salida de la neurona va a ser el
resultado de los productos de las
entradas por sus términos independientes
más
de las entradas por sus pesos más el
término independiente y todo esto
modulado con una función determinada
bueno pues este este es el elemento
básico de la neurona tipos de redes pues
hay muchas desde la de line el perfecto
nos manda line el perfecto multicapa las
redes de hoop field en las redes de
redes co ligadura funcional todos van
alrededor del mismo concepto y cada una
tiene aplicaciones diferentes
de lo que puede ser las memorias auto
asociativas en las cuales a partir d
parte de la información queremos
extrapolar la toda después del
aprendizaje o bien a lo que puede ser la
propia el propio perceptor multicapa que
vamos a utilizar como clasificador y es
al que me voy a referir principalmente
en esta clase magistral
las características que tienen las redes
neuronales como las he definido al
principio son un paradigma un modelo de
computación y de aprendizaje a la vez no
porque debido a su alto paralelismo es
decir vamos a estar con
computacionalmente tratando de manera
paralela todo lo que los sumatorios que
están entrando a cada una de esas
neuronas desde el punto de vista
hardware son fácilmente implementables
aunque la mayoría de las veces el
laboratorio las simulamos con software y
lo que hacemos es ver cuál sería su
funcionamiento y cómo podríamos obtener
la red óptima entrenarla y una vez que
ya está ahí sabemos cuál es la topología
que va a tener esa red pues la
implementamos desde el punto de vista
el hardware
son robustas frente a fallos es decir
que en un momento determinado en un
percepción multicapa si nos falla alguna
de las neuronas
normalmente las salidas siguen siendo
aceptables y tienen gran capacidad de
generalización es decir nos permiten
extrapolar su conocimiento
a otros elementos en los cuales estamos
no han sido entrenados y nos pueden dar
una solución y generalizar esa solución
para una entrada determinada que no ha
visto previamente tienen naturaleza
adaptativa y ahora veremos cómo se
implementa a través del algoritmo de
retro propagación el back tracking lo
que vamos a hacer es ese ese algoritmo
en el cual vamos a ir realimentando con
las salidas hasta que al final
consigamos
entrenar en lo que es la red neuronal
bueno vamos a ver la base de ese
perceptor como he dicho fue desarrollado
por rosenblatt y lo que intenta es
dividir clasificar a partir del
aprendizaje de patrones sencillos
puede haber una función de adaptación a
esa función que lo que hace es adaptar
el sumatorio de las entradas por los
pesos más ese término independiente
podría ser una función de tipo sismo y
dar una función de tipo tangencial y se
demuestra mediante la aplicación del
perceptor simple es decir esa neurona
que hemos estado viendo y su aplicación
pues que tiene ese par habilidad lineal
es decir si imaginemos la función porque
tenemos expresada a por entradas y
salidas aquí a la derecha en el cual y
representadas aquí a la izquierda pues
podríamos ver que es capaz de buscar esa
separa bilidad es decir decirnos que es
está en un extremo y que se está en otro
esto en realidad lo que está buscando es
un clasificador estos pertenecen a esta
parte de este conjunto esto pertenece a
este otro conjunto lo podría hacer
de manera automática una vez que
tuviéramos entrenado el perceptor
bien bueno pues a la crítica de
percepción está en esa en esa función
x horno si intentamos el percepción
entrenarlo para que solucione la función
x ahora resulta que nos encontramos esa
función x es representada en el plano
enlaces así ordenadas pues tendríamos
los unos y los ceros aquí y ahora como
separamos pues cualquier función lineal
que intente separar los ceros y los 1
veremos que es imposible pues es la
crítica fundamental a que el perceptor
nos soluciona
bien la solución ya la dio paul verbos y
es el perceptor multicapa en el cual
podremos hacer una separada de esas
regiones que son convexas mediante no la
utilización de un solo percepción sino
la utilización de un perfecto que es
multicapa podemos tener varias neuronas
en varias capas y entre ellas que estén
interconectadas con lo cual podríamos
conseguir justo la salida después de lo
que es el entrenamiento de la red
neuronal
para entrenar esa red neuronal
necesitamos utilizar el algoritmo de
retro propagación ese algoritmo de retro
propagación lo que va a hacer es
modificar los pesos iniciales en los
cuales vamos a sacar lo que es la salida
de esa neurona modificarla dependiendo
del resultado que tengamos en ese
entrenamiento es decir ese peso que
vamos a obtener después de ese
entrenamiento es función del peso
anterior y es función de la salida que
estamos esperando viendo con la
diferencia que hemos obtenido la salida
esperada menos la diferencia de la
salida obtenida de manera que intentemos
corregir este error mediante la
modificación del peso mediante esa
modificación del peso
bien de una manera gráfica lo que vamos
a hacer en ese algoritmo de retro
propagación es vamos a inicialmente
definir su topología cuál es su
arquitectura tendrá unas neuronas que
son las neuronas de entrada tendrá unas
neuronas de la capa intermedia tendrá
neuronas en la capa de salida y estará
funcionando el algoritmo de retro
propagación de manera que lo que vamos a
hacer es a partir de unas entradas esas
entradas van a alimentar a otras
neuronas multiplicadas por sus pesos
correspondientes nuevamente se
modificarían por los pesos y por sus
términos independientes hasta obtener la
función de salida esa función de salida
se va a comparar con la salida esperada
y lo que vamos a hacer es modificar por
retro propagación los valores de los
pesos
el próximo patrón así sucesivamente
hasta que al final consigamos que dentro
del rango que hayamos definido pues
tengamos por comparativa la salida
esperada con la salida que hemos
proporcionado esté ya dentro del rango
aceptable y estemos viendo que para
todos los patrones en los cuales estamos
entrenando la red pues ya obtenemos la
solución esperada es decir consiste en
elegir una serie de patrones de entrada
una serie de patrones de salida y
entrenar la red para que dados esos
patrones nos dé la salida adecuada
como diseñamos esa esa red neuronal
inicialmente definimos su topología su
arquitectura en la cual pues vemos el
número de capas el número de neuronas
que va a tener y elegimos cuáles son los
patrones y las salidas para un problema
concreto que conocemos que a través de
un conjunto de patrones vamos a obtener
una salida determinada pues escogemos
esa elección de patrones hay que tener
en cuenta que en esa elección vamos a
dejar una serie de patrones para el
entrenamiento y una serie de patrones
para la validación las fase de
validación lo que nos va a permitir es
comprobar que la red está funcionando
adecuadamente con patrones que no ha
sido entrenado previamente con ella es
decir que esos patrones no han sido
utilizados en la fase de entrenamiento y
lo que nos va a hacer es validar ese
funcionamiento óptimo de la red
elementos que nunca ha visto por eso las
redes se dice que está aprendiendo es
uno de los paradigmas de aprendizaje
aprende con unos patrones patrones y es
capaz de extrapolar y dar una solución
adecuada con otros que no ha conocido
previamente bueno pues una vez que hemos
elegido los patrones empezamos elegimos
el algoritmo de entrenamiento que son
múltiples y pasamos a la fase de
entrenamiento esa fase de entrenamiento
pues con el algoritmo de retro
propagación hasta que consigamos
entrenar la red adecuadamente una vez
que ya tenemos entrenada la red pues
entraríamos en la fase de validación en
cualquiera de estos escalones del diseño
del del perceptor multicapa o de la red
neuronal nos podemos encontrar que pues
resulta que tras la fase de
entrenamiento pues no llegamos a una
solución adecuada y necesitamos
modificar el algoritmo de entrenamiento
o bien necesitamos modificar la elección
de patrones porque son pocos o son
muchos no solo
adecuados tenemos que redefinir la
arquitectura puesto que no estamos
consiguiendo soluciones con un número de
capas o con un número de neuronas tanto
en la fase entrenamiento como en la fase
de validación una vez que ya tengamos
aprobada la fase de validación
pasaríamos directamente a la explotación
de la red y posiblemente a su
implementación desde el punto de vista
hardware si fuera necesario es decir
hacer el microchip adecuado para el
dispositivo en el cual queremos que
funcione o bien dejarla como sistema
software que nos sirva dentro de un
sistema de apoyo a la toma de decisiones
bueno como para finalizar incidir en que
son elementos fundamentales para lo que
va a ser la clasificación de patrones
que a partir de algo que ya conoce y
entrenamos la red es capaz de extrapolar
dentro de un dominio muy concreto que se
aplican especialmente cuando las
variables en las cuales vamos a trabajar
son variables de tipo heterogéneo es
decir imagínense ustedes qué
una aplicación puede ser para
a conceder un crédito en banca y para la
concesión de la banca pues el banco
utiliza variables como por ejemplo puede
ser la edad o como puede ser el salario
o como por ejemplo puede ser el tener o
haber tenido otro tipo de créditos
anteriores si se hagan ustedes cuenta
las variables de entrada son
absolutamente heterogéneas qué tiene que
ver la edad con el número de hipotecas
que haya tenido uno antes o con el
salario pues ese es a tratamiento en ese
número de patrones de tipo heterogéneo
lo facilita la red neuronal también
resuelve bien en problemas en los cuales
esos valores son de carácter continuo
porque una clasificación por ejemplo en
la cual estuviéramos en un entorno
discreto pequeño no necesitamos una red
neuronal podemos utilizar una tabla si
esto ocurre entonces la salida es tal
otra para este valor conceda se no
conceda se pero claro cuando ya estamos
hablando de valores
continuo como puede ser tiempo que
estamos viviendo en valores continuos
como pueden ser distancias que estamos
viviendo en valores continuo como puede
ser valores económicos en valores
continuos pues la red neuronal es idónea
para poder aplicarlo
necesitamos un conocimiento de gran
número de patrones para poder entrenar y
poder tener una respuesta y esa
interpolación pues va a tener su
respuesta dentro de un dominio concreto
no para la red no resuelve cualquier
dominio si no está siendo entrenada para
ese dominio concreto no nos vale para
todo tipo de clasificadores y nos vale
para hacer predicciones podríamos tener
como valores de entrada algo que ha
ocurrido en el pasado como valores de
salida lo que está ocurriendo en el
presente de manera que en un momento
determinado cuando metamos como valores
de entrada lo que tenemos en el presente
podamos intentar predecir el futuro
por eso son de aplicación también por
ejemplo en temas de bolsa los cuales
intentamos ver cómo evolucionan
determinados valores a través de su
tratamiento con redes neuronales bueno
pues nada más agradecerle eso a su
atención y asistencia a esta clase
magistral y espero verles en próximas
clases magistrales muchísimas gracias
5.0 / 5 (0 votes)