Redes Neuronales Artificiales
Parte 1: Introducción al Deep Learning
Contenido
1.Introducción
Hablar de Redes Neuronales Artificiales , Machine Learning o Deep Learning es algo que está muy de moda. Desde imagenes generadas en forma artificial GANS hasta chatbots que nos dan conversaciónes muy reales o modelos predictivos muy precisos, autos autónomos y muchas cosas que en un pasado cercano parecía lejano. Estamos en una ciclo de crecimiento exponencial Ley de moore, en el cual el cálculo computacional cada vez es mas rápido y los componentes son mas pequeños. Un dispositivo celular de esta epoca “2020” es mucho mas rápido que el hardware que se uso para ir a la luna, gracias a los avances técnológicos y las personas involucradas en muchos años de estudio prueba y error; Entender la complejidad de los algoritmos y todas las partes involucradas por completo lleva su tiempo, sin embargo hay mucho software desarrollado para que alguien que está aprendiendo con o sin experiencia en programación ya pueda estar experimentando con esta técnología. Aprender algo nuevo hoy es tan fácil como abrir el navegador y escribir lo que necesitamos saber o pedirle a una máquina que lo haga por nosotros.
Michael Nielsen nos da una introducción en su libro: las Redes neuronales son un hermoso paradigma de programación inspirado en la biología que permite que una computadora aprenda de los datos de observación.El aprendizaje profundo, es un poderoso conjunto de técnicas para aprender en redes neuronales, actualmente ambos brindan las mejores soluciones a muchos problemas en el reconocimiento de imágenes, reconocimiento de voz y procesamiento del lenguaje natural.
1.1.La_Neurona
Una neurona biológica es una célula (componente principal del sistema nervioso), cuya función principal es recibir, procesar y transmitir información a través de señales químicas y eléctricas gracias a la excitabilidad eléctrica de su membrana plasmática. Están especializadas en la recepción de estímulos y conducción del impulso nervioso entre ellas mediante conexiones llamadas sinapsis, o con otros tipos de células como, por ejemplo, las fibras musculares de la placa motora.
Morfología: Las neuronas presentan características que sustentan sus funciones: un cuerpo celular, llamado soma opericario central; una o varias prolongaciones cortas que generalmente transmiten impulsos hacia el soma celular, denominadas dendritas; y una prolongación larga, denominada axón o cilindro-eje, que conduce los impulsos desde el soma hacia otra neurona u órgano.
Red Neuronal se define como una población de neuronas físicamente interconectadas o un grupo de neuronas aisladas que reciben señales que procesan a la manera de un circuito reconocible. La comunicación entre neuronas implica un proceso electroquímico, mediante el cual una neurona es excitada a partir de cierto umbral.
En el siglo XIX Santiago Ramón y Cajal situó por primera vez a las neuronas como elementos funcionales del sistema nervioso y propuso que actuaban como entidades discretas que, intercomunicándose, establecían una especie de red mediante conexiones especializadas.
1.2.El_Perceptrón
En base a la información conocida en las décadas de 1950 y 1960 fue elaborado el concepto de perceptrones por el científico Frank Rosenblatt , inspirado en trabajos anteriores de Warren McCulloch y Walter Pitts.
En el Laboratorio Aeronáutico de Cornell en el año 1957 , Frank Rosenblatt construyó un dispositivo electrónico, siguiendo los principios biológicos de las neuronas demostrando capacidad para aprender. los cuales se simularon inicialmente en una computadora IBM 704, cuando se sostenía un triángulo ante el ojo del perceptrón, este captaba la imagen y la transmitía a lo largo de una sucesión aleatoria de líneas a las unidades de respuesta, donde se registró la imagen.
“Perceptron Research from the 50’s & 60’s :” En el siguiente video podemos ver un fragmento de un documental llamado “The Machine that Changed the World” en donde se muestra el funcionamiento del dispositivo, el cual desde imagenes de hombres y mujeres predice su género. ver video
Mucho tiempo en el cajon guardado esta tecnología no fue explotada y fue descartada dado que aun faltaban piezas claves para el desarrollo inteligente de los modelos matemáticos y la complejidad de cálculo estaba limitada al hardware de la época.
La neurona artificial o perceptrón
Modelo lineal
Entradas: x1,x2,x3 son las entradas de información de la neurona.Una perceptrón, puede tener una o mas entradas binarias(1 o 0).
Pesos: w1, w2, w3 son números reales que expresan la importancia de las respectivas entradas a la salida.Cada vez que un valor fluye a través de una conexión, se multiplica el valor por el peso de la conexión. Para la entrada x, lo que llega a la neurona es w * x.
Umbral: La b es un tipo especial de peso que llamamos el sesgo y en su lugar, ponemos un w0 = 1 en el diagrama para que el valor que llega a la neurona sea sólo b ya que 1b = b. El sesgo permite al perceptrón modificar la salida independientemente de sus entradas.
Salida: La y es la salida de la neurona en la cual se determina por la suma ponderada de:
¿Que podemos hacer con una neurona?
- Permite hacer funciones lógicas
- Primera aproximación a las redes neuronales
- Capacidad de computación universal
Este modelo básico tiene sus limitaciones para resolver problemas complejos ya que una neurona por si sola,solo puede resolver pequeñas pruebas y sin embargo al tener 1 o mas entradas los resultados siempre son lineales, con los años se desarrollaron varios modelos y para dar mayor poder de cálculo y la no linealidad que se necesita para el desarrollo actual de los proyectos de hoy en día se utilizan funciones de activación, tema que trataremos en la proxima parte.
2.Recursos
Neurona
The Machine that Changed the World
Deep Tutorial ANN
ryanholbrook
Michael Nielsen