Red neuronal profunda. Una nueva teoría revela el secreto de cómo funcionan las redes neuronales. Por qué las redes profundas necesitan tanta memoria

Cómo un discurso en una conferencia se convirtió en una sensación mundial inteligencia artificial? Natalie Wolchower en el sitio web WIRED habló sobre un descubrimiento que podría llevar a desentrañar el secreto de cómo funcionan las redes. aprendizaje profundo.

Aunque los algoritmos conocidos como “deep Redes neuronales”, aprendieron a conducir coches, derrotar a campeones de videojuegos y Go, hacer dibujos y hacer descubrimientos científicos, desconcertaron a sus creadores porque nadie esperaba que los algoritmos de aprendizaje profundo funcionaran tan bien. Después de todo, estos sistemas se basaban en una idea extremadamente vaga de la arquitectura del cerebro (cuyo funcionamiento tampoco comprende nadie).

Al igual que el cerebro, una red neuronal profunda tiene capas de neuronas, solo artificiales, es decir, fragmentos memoria del ordenador. Cuando una neurona se activa, envía señales a sus neuronas asociadas en otra capa. Durante el aprendizaje profundo, las conexiones en la red se fortalecen o debilitan para que el sistema pueda transmitir mejor una señal de datos externos (por ejemplo, una foto de un perro) a capas de neuronas asociadas con los conceptos de alto nivel deseados, por ejemplo, "perro". Una vez que una red neuronal profunda haya aprendido de miles de fotografías de muestra de perros, podrá reconocer perros en las fotografías al igual que los humanos. El salto mágico de casos específicos a conceptos generales es lo que da poder a las redes neuronales, ya que subyace al pensamiento humano, la creatividad y otras habilidades llamadas colectivamente "inteligencia". Los expertos no sabían qué permitió que las redes de aprendizaje profundo se generalizaran y en qué medida esta percepción de la realidad era similar a la del cerebro humano.

Este julio apareció en YouTube la grabación de un discurso en una conferencia en Berlín que sugiere una posible respuesta. en su informe Naftali Tishbi , científico y neurocientífico de la Universidad Hebrea de Jerusalén, presentó evidencia que respalda una nueva teoría que explica el aprendizaje profundo. Tishby cree que las redes neuronales profundas aprenden a través de un "cuello de botella de información", un procedimiento que él y sus colegas descrito en 1999. La idea es que la red neuronal se deshaga de datos y detalles de entrada innecesarios, "empujando" información a través de embotellamiento y dejando solo los más adecuados definición general señales.Experimentos informáticos Tishby y su alumno Ravid Schwartz-Ziv mostraron cómo ocurre este procedimiento durante el aprendizaje profundo.

Estos hallazgos han entusiasmado a la comunidad de IA. "Creo que la idea del cuello de botella podría ser muy importante en la futura investigación de redes neuronales", dijo Alex Alemi de Google Research, que ya ha desarrollado Nuevos métodos de aproximación para explorar la teoría de redes neuronales más grandes. El cuello de botella puede actuar "no sólo como una herramienta teórica para comprender cómo funcionan las redes neuronales, sino también como una herramienta para crear nuevos objetivos y estructuras para las redes neuronales", dijo Alemi.

Algunos investigadores dudan de que esta teoría explique completamente el éxito del aprendizaje profundo, pero Kyle Cranmer de la Universidad de Nueva York, que utiliza el aprendizaje automático para estudiar las colisiones de partículas en el Gran Colisionador de Hadrones, dice que "esto parece ser cierto".

Geoffrey Hinton, pionero del aprendizaje profundo, le escribió una carta a Tishby después de ver su charla. "Es muy interesante. Necesitaré escucharlo diez mil veces más para entenderlo realmente, pero hoy en día es raro escuchar una interpretación que realmente idea original, que puede ser la respuesta a un gran misterio”.

Según Tishby, que considera este principio fundamental para todo aprendizaje, esta respuesta tan esperada significa que “la parte más importante del aprendizaje es el olvido”.

Embotellamiento

Tishby empezó a pensar en el cuello de botella de la información cuando otros investigadores empezaban a trabajar con redes neuronales profundas, aunque ninguno de los conceptos tenía nombre todavía. Fue en la década de 1980 cuando Tishby pensó en qué tan bien los humanos reconocen el habla de los demás, lo que era un problema en el estudio de la inteligencia artificial en ese momento. Tishby se dio cuenta de que el meollo del problema era una cuestión de relevancia: ¿cuáles son las características más significativas de una palabra hablada y cómo las separamos de variables como los acentos, la dicción y la entonación? ¿Qué señales seleccionamos del mar de datos de la realidad?

"Esta idea de relevancia de la información se ha mencionado muchas veces, pero nunca se ha articulado adecuadamente", dijo Tishby en una entrevista. “ Largos años la gente pensaba que la teoría de la información era inapropiada para pensar sobre la relevancia, y estos conceptos erróneos se remontan al propio Shannon”.

Claude Shannon, el creador de la teoría de la información, en cierto sentido inició el estudio de la información en la década de 1940 al permitir que la información fuera vista como una categoría abstracta, ceros y unos con significado puramente matemático. Como dice Tishby, Shannon aceptó la opinión de que "la información no tiene nada que ver con la semántica". Pero Tishby cree que no es así. Utilizando la teoría de la información, "se puede definir la 'relevancia' de forma rigurosa".

Imaginemos que X es conjunto complejo datos, como los píxeles en una foto de un perro, e Y es una variable simple representada por esos datos, como la palabra "perro". Puede capturar toda la información "relevante" sobre X en Y comprimiendo X tanto como pueda sin perder la capacidad de predecir Y. En su artículo de 1999, Tishby y los coautores Fernando Pereira (ahora en Google) y William Bialek ( ahora en la Universidad de Princeton) formuló esta suposición como un problema de optimización matemática. Era una idea fundamental sin aplicación práctica.

"He estado pensando en esto en diferentes contextos durante los últimos treinta años", dice Tishby. "Tengo suerte de que las redes neuronales profundas se hayan vuelto tan importantes".

Ojos en los rostros de las personas.

Aunque el concepto de redes neuronales profundas existe desde hace décadas, su rendimiento en tareas de reconocimiento de voz e imágenes aumentó a principios de la década de 2010 gracias a esquemas de entrenamiento mejorados y más potentes. procesadores de computadora. Tishby se dio cuenta de la posible conexión entre esta mejora y su principio de cuello de botella en 2014 después de leer artículos los físicos David Schwab y Pankaj Mehta.

Aprendieron que un algoritmo que inventó Hinton, llamado “red de creencias profundas”, funciona como la renormalización, una técnica utilizada en física para obtener Idea general oh sistema fisico según sus detalles. Cuando Schwab y Mehta aplicaron la red de creencias profundas a un modelo de un imán en su "punto crítico", donde el sistema es fractal en cualquier escala, descubrieron que la red utilizaba automáticamente una técnica similar a la renormalización para calcular el estado del modelo. . Esta fue una señal sorprendente de que "la extracción de características relevantes en el contexto de la física estadística y la extracción de características en el contexto del aprendizaje profundo no sólo se llaman lo mismo, sino que son la misma cosa", como dijo el biofísico. Ilya Nemenman.

El único problema es que mundo real no fractal. “El mundo natural no son oídos sobre oídos, sino ojos sobre los rostros de las personas”, dijo Cranmer. "Así que no diría que [el procedimiento de renormalización] es la razón por la cual las redes neuronales funcionan bien con imágenes". Pero Tishby, que en ese momento estaba recibiendo quimioterapia para un cáncer de páncreas, se dio cuenta de que había una idea más amplia detrás de todo esto. "Pensar en la ciencia y el papel de mis viejas ideas ha sido una parte importante de mi curación", dijo.

En 2015, Tishbi y su alumno Noga Zaslavsky ficticio que el aprendizaje profundo es un procedimiento de cuello de botella de información que elimina datos innecesarios y al mismo tiempo conserva información sobre el tema que representan los datos. Nuevos experimentos con redes neuronales profundas muestran cómo se produce el procedimiento de cuello de botella. En un caso, los investigadores utilizaron pequeñas redes que podían entrenarse para etiquetar los datos entrantes como uno o cero (“perro” o “no perro”) y crearon señales aleatorias en 282 conexiones neuronales. Luego rastrearon lo que sucedió cuando las redes comenzaron a entrenarse en 3.000 conjuntos de datos.

Algoritmo básico utilizado en la mayoría de los procedimientos de aprendizaje profundo para ajustar la respuesta. conexiones neuronales sobre los datos se llama "descenso de gradiente estocástico". Cada vez que la red recibe datos, la señal cae en cascada a través de capas de neuronas artificiales. Cuando la señal llega a la capa superior, el patrón final se puede comparar con la etiqueta correcta de la imagen: 1 o 0, "perro" o "no perro". Cualquier diferencia entre este patrón y la respuesta correcta se "propaga" a través de las capas, como un profesor corrigiendo un examen, y el algoritmo fortalece o debilita cada conexión para mejorar la red y producir la señal de salida correcta. A medida que avanza el entrenamiento, los patrones comunes en los datos del entrenamiento se reflejan en la fuerza de las conexiones y la red se vuelve experta en etiquetar correctamente los datos y reconocer un perro, una palabra o una unidad.

En sus experimentos, Tishby y Schwartz-Ziv rastrearon cuánta información almacenaba cada capa de una red neuronal profunda sobre los datos de entrada y qué información almacenaba cada capa sobre la etiqueta de salida. Los científicos han descubierto que las redes están convergiendo gradualmente en un cuello de botella de información teórico: límite teórico, obtenido en el artículo original de Tishby, Pereira y Bialek. El límite representa lo absoluto. mejor resultado, que el sistema puede obtener al extraer información relevante. En este límite, el sistema comprime los datos de entrada lo más estrechamente posible sin sacrificar la capacidad de predecir con precisión su categoría.

Tishby y Schwartz-Ziv hicieron el interesante descubrimiento de que el aprendizaje profundo se produce en dos fases: una breve fase de "sintonización" en la que la red aprende a etiquetar los datos de entrenamiento y una larga fase de "compresión" en la que la red mejora en la generalización. que se mide por el rendimiento de las redes al etiquetar nuevos datos de prueba.

Cuando una red neuronal ajusta sus conexiones para el descenso de gradiente estocástico, inicialmente la cantidad de bits que almacena sobre los datos de entrada permanece aproximadamente constante o aumenta ligeramente a medida que las conexiones se ajustan para codificar patrones en la entrada y la red recibe. Buenos resultados al colocarle etiquetas. Algunos expertos han comparado esta etapa con la memorización.

Luego el aprendizaje pasa a la fase de compresión. La red comienza a comprimir información sobre los datos de entrada, rastreando solo las características más destacadas que se correlacionan con la etiqueta de salida. Esto sucede porque en cada iteración del descenso de gradiente, se producen correlaciones aleatorias que le indican a la red que haga cosas diferentes y fortalezca o debilite las conexiones. Esta aleatorización es una compresión de la representación del sistema de los datos de entrada. Por ejemplo, algunas fotografías pueden mostrar perros en casa, mientras que otras no. Cuando la red analiza estas fotos, puede “olvidar” la correlación entre casas y perros en algunas fotos, aunque otras se resisten a ello. La comprensión del sistema de conceptos generales se forma olvidando ciertas características. De hecho, los experimentos han demostrado que la capacidad de generalización de una red neuronal mejora durante la fase de compresión. (Una red neuronal profunda entrenada con fotografías de perros se puede probar en otras fotografías, con o sin perros).

Queda por ver si el cuello de botella de la información rige todos los modos de aprendizaje profundo o si existen otros métodos de generalización además de la compresión. Algunos expertos en IA ven las ideas de Tishby como algunos de los descubrimientos teóricos recientes más importantes sobre el aprendizaje profundo. Andrew Sachs, investigador de IA y neurocientífico de la Universidad de Harvard, ha observado que algunas redes neuronales grandes no requieren una fase de compresión larga para generalizarse bien. En cambio, los investigadores programan algo llamado parada temprana, que acorta el tiempo de entrenamiento para evitar que la red codifique demasiadas correlaciones.

Tishby dice que los modelos de red analizados por Sachs y sus colegas difieren de la arquitectura de red neuronal estándar, pero la teoría del cuello de botella de la información explica su desempeño mejor que otros métodos. Las preguntas sobre si existe un cuello de botella en las redes neuronales más grandes se abordan en parte en experimentos recientes de Tishby y Schwartz-Ziv, en los que entrenan redes neuronales mucho más grandes con 330.000 conexiones para reconocer dígitos escritos a mano en la base de datos MNIST de 60.000 imágenes, que es una punto de referencia bien conocido para evaluar el rendimiento de algoritmos de aprendizaje profundo. Los científicos vieron la misma convergencia de redes; También observaron dos fases distintas de aprendizaje profundo, separadas por una transición aún más pronunciada que en pequeñas redes. "Ahora estoy completamente convencido de que se trata de un fenómeno general", afirmó Tishby.

Personas y maquinas

El misterio de cómo el cerebro filtra las señales de nuestros sentidos y las eleva al nivel de conciencia generó mucho interés entre los primeros investigadores de inteligencia artificial que esperaban recrear el proceso de aprendizaje del cerebro. En su mayor parte, ya abandonaron este camino del progreso tecnológico y comenzaron a mejorar la productividad en lugar de perseguir la plausibilidad biológica. Sin embargo, a medida que las máquinas pensantes logran hazañas cada vez mayores, incluso generando temores de que algún día la IA pueda convertirse en una amenaza existencial, muchos esperan que estos estudios revelen ideas generales sobre el aprendizaje y la inteligencia.

Brenden Lake, que estudia las diferencias y similitudes entre el aprendizaje humano y el automático, dijo que los hallazgos de Tishby representan " paso importante abrir la caja negra de las redes neuronales”, pero enfatizó que el cerebro es una caja negra mucho más compleja. Nuestros cerebros adultos, que tienen varios cientos de billones de conexiones entre 86 mil millones de neuronas, probablemente utilicen una serie de trucos para mejorar la generalización más allá de los procedimientos de aprendizaje de reconocimiento de patrones y sonidos básicos que ocurren durante la infancia y que pueden parecerse al aprendizaje profundo en muchos aspectos.

Por ejemplo, Lake dijo que las dos fases del aprendizaje profundo no son similares a la forma en que los niños aprenden las letras escritas a mano, que él estudia. Los niños no necesitan ver miles de ejemplos y comprimir su comprensión de las letras durante un largo período de tiempo para aprender otros ejemplos de esas letras y escribirlas ellos mismos. Pueden aprender esto de un ejemplo. Los modelos de Lake y sus colegas sugieren que el cerebro puede deconstruir una nueva letra como una serie de "latidos" (construcciones mentales preexistentes) lo que permite vincular el concepto de letra con el conocimiento previo. "En lugar de pensar en la imagen de una letra como un patrón de píxeles y aprender el concepto como una representación de esas características", como en los algoritmos estándar de aprendizaje automático, Lake explicó, "estoy tratando de construir un modelo causal simple de la letra". carta”, es decir, crear un atajo hacia la generalización.

Estas ideas sobre el cerebro podrían resultar útiles para la comunidad de IA, facilitando el intercambio de información entre estas áreas. Tishby cree que su teoría resultará útil en ambas disciplinas, incluso si se necesita más forma general en la formación de personas. La teoría ya nos permite comprender qué tipos de problemas pueden resolver las redes neuronales reales y artificiales. "Esto da descripción completa problemas que se pueden estudiar”, dice Tishby. Se trata de “problemas en los que puedo eliminar el ruido de la entrada sin perjudicar mi capacidad de clasificación. Se trata de problemas de visión natural y reconocimiento del habla. Estos son exactamente los tipos de problemas que nuestro cerebro puede manejar”.

Sin embargo, tanto las redes neuronales reales como las artificiales no pueden hacer frente a problemas en los que cada detalle es importante y una diferencia de minutos puede arruinar todo el resultado. Por ejemplo, muchas personas no pueden multiplicar rápidamente dos números grandes en la mente. “Tenemos una amplia gama problemas similares, problemas lógicos que son muy sensibles a cambios en una variable. Clasificación, problemas discretos, problemas criptográficos. No creo que el aprendizaje profundo me ayude jamás a descifrar códigos criptográficos”.

La generalización, un cuello de botella en la información, significa descartar algunos detalles. No es adecuado para cálculos complejos en la mente, pero no son la tarea principal del cerebro. Buscamos rostros familiares en una multitud, orden en el caos, señales perceptibles en un mundo ruidoso.

Del artículo aprenderás qué es. aprendizaje profundo. El artículo también contiene muchos recursos que puede utilizar para dominar esta área.

EN mundo moderno Desde la atención sanitaria hasta la fabricación, el aprendizaje profundo se utiliza en todas partes. Las empresas están recurriendo a esta tecnología para resolver problemas complejos como el reconocimiento de voz y de objetos, traducir automáticamente etcétera.

Uno de los logros más impresionantes de este año fue que AlphaGo venció al mejor jugador de Go del mundo. Además del Go, las máquinas han vencido a las personas en otros juegos: damas, ajedrez, reversi y Jeopardy.

Posible victoria en juego de mesa Parece inaplicable para resolver problemas reales, pero no es del todo cierto. Go fue diseñado para ser imbatible mediante inteligencia artificial. Para ello, necesitaría aprender algo importante para este juego: la intuición humana. Ahora con la ayuda de este desarrollo es posible resolver muchos problemas, inaccesible a la computadora más temprano.

Obviamente, el aprendizaje profundo todavía está lejos de ser perfecto, pero ya está cerca de ser útil comercialmente. Por ejemplo, estos coches autónomos. Empresas famosas como Google, Tesla y Uber ya Están intentando introducir coches autónomos en las calles de la ciudad.

Ford predice un aumento significativo en la participación de vehículos autónomos Vehículo para 2021. El gobierno de Estados Unidos también logró desarrollar un conjunto de reglas de seguridad para ellos.

¿Qué es el aprendizaje profundo?

Para responder a esta pregunta, es necesario comprender cómo interactúa con el aprendizaje automático, las redes neuronales y la inteligencia artificial. Para ello utilizamos el método de visualización mediante círculos concéntricos:

El círculo exterior es la inteligencia artificial en general (por ejemplo, las computadoras). Un poco más lejos está el aprendizaje automático, y justo en el centro están el aprendizaje profundo y las redes neuronales artificiales.

En términos generales, el aprendizaje profundo es simplemente un nombre más conveniente para las redes neuronales artificiales. "Profundo" en esta frase se refiere al grado de complejidad (profundidad) de la red neuronal, que a menudo puede ser bastante superficial.

Los creadores de la primera red neuronal se inspiraron en la estructura de la corteza cerebral. Un nivel básico de La red, un perceptrón, es esencialmente un análogo matemático de una neurona biológica. Y, como en el cerebro, los perceptrones que se cruzan entre sí pueden aparecer en una red neuronal.

La primera capa de la red neuronal se llama capa de entrada. Cada nodo de esta capa recibe cierta información como entrada y la transmite a los nodos posteriores de otras capas. La mayoría de las veces, no hay conexiones entre los nodos de una capa y el último nodo de la cadena genera el resultado de la red neuronal.

Los nodos en el medio se llaman nodos ocultos porque no tienen conexiones con el mundo exterior como los nodos de salida y entrada. Se llaman solo cuando se activan las capas anteriores.

El aprendizaje profundo es esencialmente una técnica de entrenamiento de redes neuronales que utiliza muchas capas para resolver problemas complejos (como el reconocimiento de voz) mediante patrones. En los años ochenta, la mayoría de las redes neuronales eran de una sola capa debido al alto costo y las capacidades limitadas de datos.

Si consideramos el aprendizaje automático como una rama o variante de la inteligencia artificial, entonces el aprendizaje profundo es un tipo especializado de dicha rama.

Usos del aprendizaje automático inteligencia informática, que no da una respuesta de inmediato. En cambio, el código se ejecutará con datos de prueba y, en función de la exactitud de sus resultados, ajustará su progreso. Para el éxito de este proceso, se suele utilizar una variedad de técnicas, software especial e informática para describir métodos estáticos y álgebra lineal.

Métodos de aprendizaje profundo

Los métodos de aprendizaje profundo se dividen en dos tipos principales:

  • Formación tutelada
  • Aprendizaje sin supervisión

El primer método utiliza datos especialmente seleccionados para lograr el resultado deseado. Requiere bastante intervención humana, porque los datos deben seleccionarse manualmente. Sin embargo, es útil para clasificación y regresión.

Imagine que es propietario de una empresa y desea determinar el impacto de las bonificaciones en la duración de los contratos de sus subordinados. Con datos recopilados previamente, un método de aprendizaje supervisado sería indispensable y muy eficaz.

El segundo método no implica respuestas preparadas previamente ni algoritmos de trabajo. Su objetivo es identificar en los datos plantillas ocultas. Generalmente se utiliza para agrupar y tareas asociativas, por ejemplo, para agrupar clientes por comportamiento. “Ellos también eligen con esto” en Amazon es una variante de la tarea de asociación.

Si bien el aprendizaje supervisado suele ser bastante conveniente, es más opcion dificil Aún mejor. El aprendizaje profundo ha demostrado ser una red neuronal que no requiere supervisión humana.

La importancia del aprendizaje profundo

Las computadoras han utilizado durante mucho tiempo la tecnología para reconocer ciertas características en una imagen. Sin embargo, los resultados estuvieron lejos de ser exitosos. Visión por computador ha tenido un impacto increíble en el aprendizaje profundo. Son estas dos técnicas las que este momento resolver todos los problemas de reconocimiento.

En particular, Facebook ha logrado reconocer rostros en fotografías mediante el aprendizaje profundo. Esto no es una simple mejora en la tecnología, sino un punto de inflexión que cambia todas las creencias anteriores: “Una persona puede determinar con un 97,53% de probabilidad si la misma persona está representada en dos fotos diferentes. El programa desarrollado por el equipo de Facebook puede hacer esto con una probabilidad del 97,25%, independientemente de la iluminación o de si la persona está mirando directamente a la cámara o de lado hacia ella”.

El reconocimiento de voz también ha sufrido cambios importantes. El equipo de Baidu, uno de los motores de búsqueda líderes en China, ha desarrollado un sistema de reconocimiento de voz que ha logrado superar a los humanos en la velocidad y precisión de la escritura de textos en inglés. dispositivos móviles. En inglés y mandarín.

Lo que es especialmente interesante es que escribir una red neuronal común para dos idiomas completamente diferentes no requirió mucho trabajo: "Históricamente, la gente veía al chino y al inglés como dos idiomas completamente diferentes". idiomas diferentes, por lo que cada uno de ellos requirió un enfoque diferente”, afirma Andrew Ng, director del centro de investigación de Baidu. “Los algoritmos de aprendizaje están ahora tan generalizados que se pueden Justo aprender."

Google utiliza el aprendizaje profundo para gestionar la energía en los centros de datos de la empresa. Pudieron reducir los costos de recursos de refrigeración en un 40%. Esto supone aproximadamente una mejora del 15 % en la eficiencia energética y millones de dólares en ahorros.

Microservicios de aprendizaje profundo

A continuación se ofrece una descripción general rápida de los servicios relacionados con el aprendizaje profundo.

Etiquetador de ilustración. Mejorado por Illustration2Vec, este servicio le permite marcar imágenes con una clasificación de “protegida”, “cuestionable”, “peligrosa”, “derecho de autor” o “general” para comprender el contenido de la imagen de antemano.

  • Complemento Theano de Google
  • Editable en Python y Numpy
  • A menudo se utiliza para resolver una gama específica de problemas.
  • No propósito general. Centrarse en la visión artificial
  • Editado en C++
  • Hay una interfaz en Python.

Cursos en línea sobre aprendizaje profundo

Google y Udacity se han asociado para crear un curso gratuito sobre aprendizaje profundo, parte del curso de aprendizaje automático de Udacity. Este programa se ejecuta desarrolladores experimentados, que quieren desarrollar un área como el aprendizaje automático y, en particular, el aprendizaje profundo.

Otra opción popular es el curso de aprendizaje automático de Andrew Ng, respaldado por Coursera y Stanford.

  1. Aprendizaje automático: Stanford por Andrew Ng en Coursera (2010-2014)
  2. Aprendizaje automático - Caltech por Yaser Abu-Mostafa (2012-2014)
  3. Aprendizaje automático: Carnegie Mellon por Tom Mitchell (primavera de 2011)
  4. Redes neuronales para el aprendizaje automático: Geoffrey Hinton en Coursera (2012)
  5. clase de redes neuronales– Hugo Larochelle de la Universidad de Sherbrooke (2013)

Libros sobre aprendizaje profundo

Mientras que los recursos de la sección anterior se basan en una base de conocimientos bastante extensa, Grokking Deep Learning, por el contrario, está dirigido a principiantes. Como dicen los autores: "Si has completado el 11º grado y tienes un conocimiento aproximado de cómo escribir Python, te enseñaremos aprendizaje profundo".

Una alternativa popular a este libro es un libro con el título autoexplicativo Libro de aprendizaje profundo. Es especialmente bueno porque cubre todas las matemáticas que necesitará para ingresar a esta área.

  1. "Aprendizaje profundo" de Yoshua Bengio, Ian Goodfellow y Aaron Courville (2015)
  2. “Redes neuronales y aprendizaje profundo” de Michael Nielsen (2014)
  3. "Aprendizaje profundo" de Microsoft Research (2013)
  4. “Tutoriales de aprendizaje profundo” del Laboratorio LISA, Universidad de Montreal (2015)
  5. “charla neuronal” de Andrej Karpathy
  6. "Introducción a los Algoritmos Genéticos"
  7. "Enfoque moderno de la inteligencia artificial"
  8. "Descripción general del aprendizaje profundo y las redes neuronales"

Vídeos y conferencias

Deep Learning Simplified es un maravilloso canal de YouTube. Aquí está su primer vídeo:

Hoy en día se habla y se escribe mucho sobre las redes neuronales artificiales, tanto en el contexto del big data y el aprendizaje automático como fuera de él. En este artículo, recordaremos el significado de este concepto, describiremos una vez más el alcance de su aplicación y también hablaremos sobre un enfoque importante asociado con las redes neuronales: el aprendizaje profundo, describiremos su concepto, así como sus ventajas. y desventajas en casos de uso específicos.

¿Qué es una red neuronal?

Como sabes, el concepto de red neuronal (NN) proviene de la biología y es un modelo algo simplificado de la estructura del cerebro humano. Pero no profundicemos en las ciencias naturales: la forma más fácil es imaginar una neurona (incluida una artificial) como una especie de caja negra con muchos orificios de entrada y una salida.

Matemáticamente, la neurona artificial realiza la transformación vectorial señales de entrada(impacta) X en el vector de salida Y usando una función llamada función de activación. Dentro de la conexión (red neuronal artificial - ANN), funcionan tres tipos de neuronas: entrada (recibir información de mundo exterior- valores de las variables que nos interesan), salida (que devuelven las variables deseadas, por ejemplo, predicciones o señales de control), así como neuronas intermedias que realizan ciertas funciones internas ("ocultas"). Por lo tanto, una ANN clásica consta de tres o más capas de neuronas, y en la segunda capa y en las siguientes (“ocultas” y de salida), cada elemento está conectado a todos los elementos de la capa anterior.

Es importante recordar el concepto. comentario, que determina el tipo de estructura de las RNA: transmisión directa de señales (las señales van secuencialmente desde la capa de entrada a través de la capa oculta y entran en la capa de salida) y estructura recurrente, cuando la red contiene conexiones que van hacia atrás, desde neuronas más lejanas a las más cercanas). Todos estos conceptos constituyen la información mínima necesaria para pasar al siguiente nivel de comprensión de las RNA: entrenar una red neuronal, clasificar sus métodos y comprender los principios de funcionamiento de cada uno de ellos.

Entrenamiento de redes neuronales

No debemos olvidar por qué se utilizan estas categorías en general; de lo contrario, corremos el riesgo de quedar atrapados en las matemáticas abstractas. De hecho, las redes neuronales artificiales significan una clase de métodos para resolver ciertos problemas prácticos, entre los cuales los principales son los problemas de reconocimiento de patrones, toma de decisiones, aproximación y compresión de datos, así como los problemas más interesantes para nosotros de análisis y predicción de conglomerados.

Sin irnos al otro extremo y sin entrar en detalles del funcionamiento de los métodos RNA en cada caso concreto, recordemos que bajo cualquier circunstancia es la capacidad de una red neuronal de aprender (con un profesor o “por sí sola” ) eso es punto clave utilizarlo para resolver problemas prácticos.

EN caso general La formación de ANN es la siguiente:

  1. las neuronas de entrada reciben variables (“estímulos”) del entorno externo;
  2. cambiar de acuerdo con la información recibida parámetros libres NS (funcionan las capas intermedias de neuronas);
  3. Como resultado de cambios en la estructura de la red neuronal, la red "reacciona" a la información de manera diferente.

Así es como algoritmo general entrenar una red neuronal (recordemos al perro de Pavlov; sí, ese es exactamente el mecanismo interno para la formación de un reflejo condicionado) y olvidemos inmediatamente: después de todo, nuestro contexto implica operar conceptos técnicos y ejemplos).

Está claro que algoritmo universal la formación no existe y, muy probablemente, no puede existir; Conceptualmente, los enfoques del aprendizaje se dividen en aprendizaje supervisado y aprendizaje no supervisado. El primer algoritmo supone que para cada vector de entrada ("aprendizaje") hay un valor requerido del vector de salida ("objetivo"); por lo tanto, estos dos valores forman un par de entrenamiento y el conjunto completo de dichos pares es el conjunto de entrenamiento. En el caso del aprendizaje no supervisado, el conjunto de entrenamiento consta únicamente de vectores de entrada, y esta situación es más plausible desde el punto de vista de la vida real.

Aprendizaje profundo

El concepto de aprendizaje profundo se refiere a una clasificación diferente y denota un enfoque para entrenar las llamadas estructuras profundas, que incluyen redes neuronales multinivel. Un ejemplo sencillo del campo del reconocimiento de imágenes: es necesario enseñar a una máquina a identificar rasgos cada vez más abstractos en términos de otros rasgos abstractos, es decir, a determinar la relación entre la expresión de todo el rostro, los ojos y la boca, y, en última instancia, grupos de píxeles de colores matemáticamente. Así, en una red neuronal profunda, cada nivel de características tiene su propia capa; Está claro que para formar un “coloso” de este tipo es necesaria la experiencia adecuada de los investigadores y el nivel de hardware. Las condiciones a favor del aprendizaje profundo de las redes neuronales se desarrollaron recién en 2006, y ocho años después podemos hablar de la revolución que este enfoque produjo en el aprendizaje automático.

Entonces, en primer lugar, en el contexto de nuestro artículo, vale la pena señalar lo siguiente: el aprendizaje profundo en la mayoría de los casos no está controlado por humanos. Es decir, este enfoque implica entrenar una red neuronal sin profesor. Ésta es la principal ventaja del enfoque "profundo": el aprendizaje automático supervisado, especialmente en el caso de estructuras profundas, requiere enormes costos de tiempo y mano de obra. El aprendizaje profundo, por otro lado, es un enfoque que modela (o al menos intenta aproximarse) al pensamiento abstracto humano, en lugar de explotarlo.

La idea, como siempre, es maravillosa, pero en el camino surgen problemas bastante naturales, en primer lugar, debido a sus pretensiones de universalidad. De hecho, si bien los enfoques de aprendizaje profundo han logrado un éxito significativo en el campo del reconocimiento de imágenes, el mismo procesamiento del lenguaje natural todavía plantea muchas más preguntas que respuestas. Es obvio que en los próximos n años es poco probable que sea posible crear un “Leonardo Da Vinci artificial” o incluso, ¡al menos! - “homo sapiens artificial”.

Sin embargo, los investigadores de inteligencia artificial ya se enfrentan a una cuestión de ética: los temores expresados ​​en cada película de ciencia ficción que se precie, desde “Terminator” hasta “Transformers”, ya no parecen divertidos (las modernas y sofisticadas redes neuronales ya pueden considerarse una solución plausible). ¡modelar el trabajo del cerebro del insecto!), pero son claramente innecesarios por ahora.

El futuro tecnológico ideal se nos presenta como una era en la que una persona podrá delegar la mayor parte de sus poderes en una máquina, o al menos podrá permitirle que le facilite una parte importante de su trabajo intelectual. El concepto de aprendizaje profundo es un paso hacia este sueño. El camino por delante es largo, pero ya está claro que las redes neuronales y todos los enfoques en desarrollo asociados con ellas son capaces de hacer realidad las aspiraciones de los escritores de ciencia ficción con el tiempo.

¿Qué es el aprendizaje profundo? 3 de marzo de 2016

Hoy en día se habla de las tecnologías de aprendizaje profundo de moda como si fuera maná del cielo. ¿Pero entienden los hablantes lo que realmente es? Pero esto no tiene concepto. definicion formal Y combina una gran cantidad de tecnologías. En este post quiero explicar de la manera más popular y esencial qué hay detrás de este término, por qué es tan popular y qué nos aportan estas tecnologías.


En resumen, esto término novedoso(aprendizaje profundo) sobre cómo ensamblar una abstracción (representación) más compleja y profunda a partir de algunas abstracciones simples a pesar de que incluso las abstracciones más simples deben ser ensambladas por la propia computadora, no por una persona. Aquellos. Ya no se trata sólo de aprendizaje, sino de metaaprendizaje. En sentido figurado, la propia computadora debe aprender cuál es la mejor manera de aprender. Y, de hecho, esto es exactamente lo que implica el término "profundo". Este término casi siempre se aplica a redes neuronales artificiales que utilizan más de una capa oculta, por lo que formalmente "profunda" también significa una arquitectura de red neuronal más profunda.

Aquí, en la diapositiva de desarrollo, puede ver claramente en qué se diferencia el aprendizaje profundo del aprendizaje ordinario. Repito, Lo que es único sobre el aprendizaje profundo es que la máquina encuentra las características por sí misma. (características clave cualquier cosa mediante la cual sea más fácil separar una clase de objetos de otra) y estructura estos signos jerárquicamente: los más simples se combinan en otros más complejos. A continuación veremos esto con un ejemplo.

Veamos un ejemplo de un problema de reconocimiento de imágenes: cómo solía ser: metimos una imagen enorme (1024 × 768, alrededor de 800 000 valores numéricos) en una red neuronal normal con una capa y vimos cómo la computadora moría lentamente, asfixiándose por la falta. de memoria y la incapacidad de comprender qué píxeles son importantes para el reconocimiento y cuáles no. Sin mencionar la efectividad de este método. Aquí está la arquitectura de una red neuronal tan regular (superficial).

Luego escucharon cómo el cerebro distingue las características, y lo hace de manera estrictamente jerárquica, y también decidieron extraer una estructura jerárquica de las imágenes. Para hacer esto, fue necesario agregar más capas ocultas (capas que se encuentran entre la entrada y la salida; en términos generales, etapas de transformación de la información) a la red neuronal. Aunque decidieron hacer esto casi inmediatamente cuando se inventaron las neuronas, luego se entrenaron con éxito redes con una sola capa oculta. Aquellos. En principio, las redes profundas existen desde hace tanto tiempo como las normales, pero no podíamos entrenarlas. ¿Que ha cambiado?

En 2006, varios investigadores independientes resolvieron este problema a la vez (además, las capacidades del hardware ya estaban bastante desarrolladas y aparecieron tarjetas de video bastante potentes). Estos investigadores son: Geoffrey Hinton (y su colega Ruslan Salakhutidinov) con la técnica de preentrenamiento de cada capa de una red neuronal con una máquina de Boltzmann restringida (perdónenme por estos términos...), Yann LeCun con redes neuronales convolucionales, y Yoshuay Bengio con codificadores automáticos en cascada. Los dos primeros fueron inmediatamente reclutados por Google y Facebook, respectivamente. Aquí hay dos conferencias: una - Hinton, el otro - Lyakuna, en el que cuentan qué es el aprendizaje profundo. Nadie puede contarte esto mejor que ellos. Otro genial conferencia Schmidhuber sobre el desarrollo del aprendizaje profundo, también uno de los pilares de esta ciencia. Y Hinton también tiene un excelente curso sobre neuronas.

¿Qué pueden hacer ahora las redes neuronales profundas? Son capaces de reconocer y describir objetos; se podría decir que “entienden” de qué se trata. Se trata de sobre el reconocimiento de significados.

Simplemente mire este video de reconocimiento en tiempo real de lo que ve la cámara.

Como dije, las tecnologías de aprendizaje profundo son Grupo entero tecnologías y soluciones. Ya he enumerado varios de ellos en el párrafo anterior, otro ejemplo es este redes recurrentes, que son exactamente los que se utilizan en el vídeo de arriba para describir lo que ve la red. Pero el representante más popular de esta clase de tecnologías siguen siendo las redes neuronales convolucionales de LyaKun. Se construyen por analogía con los principios de funcionamiento de la corteza visual del cerebro del gato, en los que se descubrieron las llamadas células simples que responden a líneas rectas en diferentes ángulos, y células complejas, cuya reacción está asociada con la activación. de un determinado conjunto de células simples. Aunque, para ser honesto, el propio LaCun no estaba centrado en la biología, decidió tarea específica(ver sus conferencias), y luego coincidió.

En pocas palabras, las redes convolucionales son redes donde el principal elemento estructural el aprendizaje es un grupo (combinación) de neuronas (generalmente un cuadrado de 3x3, 10x10, etc.), y no una. Y en cada nivel de la red, se capacitan decenas de estos grupos. La red encuentra combinaciones de neuronas que maximizan la información sobre la imagen. En el primer nivel, la red extrae los elementos más básicos y estructuralmente simples de la imagen; se podría decir, unidades de construcción: límites, trazos, segmentos, contrastes. Más arriba ya se encuentran combinaciones estables de elementos del primer nivel, y así sucesivamente en la cadena. Me gustaría enfatizar una vez más caracteristica principal Aprendizaje profundo: las propias redes forman estos elementos y deciden cuáles de ellos son más importantes y cuáles no. Esto es importante porque en el campo del aprendizaje automático, la creación de funciones es clave y ahora estamos pasando a la etapa en la que la computadora aprende a crear y seleccionar funciones. La propia máquina identifica una jerarquía de elementos informativos.

Entonces, durante el proceso de aprendizaje (ver cientos de imágenes), la red convolucional forma una jerarquía de características. varios niveles lo más hondo. En el primer nivel, pueden resaltar, por ejemplo, dichos elementos (reflejo de contraste, ángulo, borde, etc.).


En el segundo nivel, este ya será un elemento de los elementos del primer nivel. En el tercero, desde el segundo. Debemos entender que esta imagen- sólo una demostración. Ahora en Aplicación industrial, estas redes tienen de 10 a 30 capas (niveles).

Una vez que dicha red se haya entrenado, podemos usarla para la clasificación. Habiendo dado alguna imagen como entrada, grupos de neuronas en la primera capa recorren la imagen, activándose en aquellos lugares donde hay una correspondiente elemento específico elemento de imagen. Aquellos. esta red analiza la imagen en partes: primero en líneas, trazos, ángulos de inclinación, luego en partes más complejas y al final llega a la conclusión de que la imagen proviene de este tipo de combinación. Elementos basicos- esta cara.

Más sobre redes convolucionales -

Aprendí sobre las tendencias empresariales en una conferencia a gran escala en Kiev. El sábado estuvo lleno de reflexiones, en las que adquirimos nuevos conocimientos y amistades adquiridos a lo largo de las horas pasadas. En la conferencia hubo 4 flujos de información para líderes empresariales, altos directivos, especialistas en marketing, ventas, recursos humanos y otros especialistas. Uno de los oradores fue el Ministro de Infraestructuras, Volodymyr Omelyan, quien habló sobre el desarrollo de Galuzia, la renovación de carreteras y aeropuertos.

Buenos días a todos, queridos compañeros usuarios de iOS, probablemente cada uno de ustedes haya trabajado con la red y analizado datos de JSON. Para este proceso existen una gran cantidad de bibliotecas, todo tipo de herramientas que puedes utilizar. Algunos de ellos son complejos y otros son simples. Para ser honesto, yo mismo analicé JSON a mano durante mucho tiempo, sin confiar este proceso a algunas bibliotecas de terceros, y esto tenía sus ventajas.

El 9 de septiembre de 2014, durante la próxima presentación, empresa de manzana presentado propio sistema pagos móviles—Pago de Apple.

Mediante el uso sistema de pago pago de manzana usuarios de iPhone 6 y iPhone 6+, así como propietarios Últimas Versiones Apple Watch puede realizar compras en línea, usar adicionales beneficios de la manzana pagar aplicaciones móviles y realizar pagos usando tecnología NFC(Cerca de un campo de comunicación). Se utiliza para autorizar pagos. tecnología táctil Identificación o Face ID.

Las tecnologías no se detienen y los procesos de desarrollo avanzan con ellas. Si antes las empresas trabajaban según el modelo "Cascada", ahora, por ejemplo, todo el mundo se esfuerza por implementar "Scrum". También se está produciendo una evolución en la prestación de servicios de desarrollo. software. Anteriormente, las empresas proporcionaban a los clientes un desarrollo de alta calidad dentro del presupuesto y se detenían ahí, pero ahora se esfuerzan por proporcionar beneficio máximo para el cliente y su negocio, aportando su experiencia.

En los últimos años han aparecido tantas fuentes buenas, incluidas las gratuitas, que decidimos escribir una continuación de la nuestra para diseñadores.

Cada diseñador tiene un conjunto de fuentes favoritas con las que está acostumbrado y que reflejan su estilo gráfico. Los diseñadores dicen " Buenas fuentes nunca puede haber demasiadas”, pero ahora podemos imaginar con seguridad una situación en la que este conjunto consista únicamente de fuentes gratuitas.

¿Con qué frecuencia los directores de proyectos se encuentran entre la espada y la pared cuando intentan encontrar un equilibrio entre todos los requisitos y plazos del cliente y la salud mental de todo el equipo? ¿Cuántos matices hay que tener en cuenta para que haya paz y orden en ambos lados de la responsabilidad? ¿Cómo saber si eres un buen directivo o si necesitas mejorar urgentemente en todos los frentes? ¿Cómo determinar en qué aspectos exactamente usted, como PM, se está quedando atrás y en qué es bueno e inteligente? De esto se trató exactamente la próxima conferencia Code’n’Coffee.

La tecnología de reconocimiento de patrones se está convirtiendo cada vez más en parte de nuestra vida cotidiana. Empresas e instituciones lo utilizan para resolver la mayoría diferentes tareas: de la seguridad a la investigación de la satisfacción del cliente. Inversiones en productos basados ​​en esta función, prometen crecer hasta 39.000 millones de dólares en 2021. Éstos son sólo algunos ejemplos de cómo se utiliza el reconocimiento de patrones en diferentes campos.




Arriba