¿Cómo funciona el algoritmo DeepMind?

Hay varios tipos de paradigma de programación.

  • El que más se usa con mucho, y el único que parece conocer, es el paradigma imperativo en el que se ocupa de la forma en que se resuelve el problema definiendo el orden exacto de la operación a resolver. Aquí considera que la instancia del problema está tan estrechamente definida que debe definir el protocolo preciso para resolverlo.
    Por ejemplo: C, Java, Python.
  • Uno de los otros paradigmas es el paradigma declarativo . En este modo, el
    La forma de resolver el problema se subcontrata a un supuesto solucionador. Simplemente describe el problema y el solucionador encuentra su propia forma de resolverlo.
    Por ejemplo: PROLOG, Broche, …

El aprendizaje profundo es muy cercano en espíritu a la llamada programación declarativa. Se basa en redes neuronales artificiales que funcionan como solucionador: le das la descripción del problema y le confías la solución. Así es como se ve:

Para una combinación dada de variables y valores, cada neurona oculta estará activada o desactivada. Puede ser una suma simple:

if (lloviendo + día de pago + lunes> = 2) entonces oculto1

(es decir, si dos de tres de estos criterios son verdaderos, entonces hidden1 es verdadero) o algo más elaborado. Y esta combinación de combinación de criterios determinará un resultado; Aquí está prediciendo si el sandwich se vende y en el algoritmo DeepMind una piedra para jugar.

La principal diferencia con PROLOG es que PROLOG le pide al programador que defina las reglas cuando se programará una red neuronal artificial. Debe darle una muestra de entrenamiento y sus resultados esperados para que pueda definir los pesos apropiados y la función de activación para cada neurona.

Espero que entiendas mejor lo que está pasando aquí. Si quieres saber más: red neuronal artificial

DeepMind no es un algoritmo, sino una startup / empresa fundada en septiembre de 2010 y luego adquirida por Google a principios de 2014 y es responsable de sistemas de vanguardia como AlphaGo y tiene la intención de resolver la inteligencia artificial general con la ayuda del poder de procesamiento de Google . La llamada Unidad de Procesamiento de Tensor (TPU) es más poderosa que una AlphaU convencional con tecnología AlphaGo, no es de extrañar que Lee no tuviera ninguna posibilidad.

Así que supongo que se refiere al aprendizaje profundo (DL), bueno, el aprendizaje profundo es un algoritmo de aprendizaje de redes neuronales que intenta aprender más y más niveles abstractos de representación de un dato dado. Tal como en el reconocimiento de imágenes, la capa de entrada se compone de píxeles sin procesar, la capa que sigue puede comprender filtros tipo gabor para detectar bordes, la capa de arriba puede contener características más abstractas, como partes de objetos o componentes, etc., hasta que a niveles altos obtenga filtros respondiendo a objetos visuales completos como la cara de un gato.

Con DL hay una estructura, es decir, una disposición capa por capa de unidades de procesamiento, cuantas más capas, más profunda es la red. Las reglas también están allí, como el algoritmo de aprendizaje tiene una regla de actualización. La cuestión es que el aprendizaje se realiza mediante ajustes de peso. La cantidad por la cual se ajusta un peso determinado se determina calculando la magnitud y la dirección de la derivada con la ayuda del algoritmo de retropropagación.

DL es como un aproximador de función general, dado un problema de reconocimiento facial, por ejemplo, asumiríamos que existe una función [matemática] Y = F (X) [/ matemática] que mapea una cara dada [matemática] X [/ matemática ] a una etiqueta [matemáticas] Y [/ matemáticas]. Ahora, ¿cuál es esta función [matemáticas] F (X) [/ matemáticas]? bien, supongamos que no lo sabemos, pero podemos configurar un sistema DL, obtener ejemplos de entrenamiento y ejecutar el algoritmo de aprendizaje generalmente basado en el descenso de gradiente estocástico (SGD) y el sistema DL aprenderá una función aproximada [matemáticas] G (X) [/ math] ahora, una vez que tenemos esta función, podemos alimentarla con una cara desconocida y ver a qué etiqueta asigna esa cara. Podemos evaluar cómo [matemática] G (X) [/ matemática] está cerca de [matemática] F (X) [/ matemática] probando el sistema DL en caras de conjuntos de prueba conocidos. Sin embargo, esto siempre será inferior al 100%.

Este tema es enorme, por lo que me gustaría señalar el aprendizaje profundo para una introducción más profunda a DL. Es divertido disfrutar.

Espero que esto ayude.

DeepMind se basa en el marco de las redes neuronales y utiliza un método llamado aprendizaje de refuerzo profundo. Esto significa que la IA puede aprender de sus experiencias y ser más eficiente en todo lo que hace. La IA es de propósito general, lo que significa que NO está preprogramada para una tarea específica desde el principio. Aprende a medida que avanza el proceso. Debido a esto y a su intuición, es más avanzado que Cortana y Siri.

La mayoría de los fenómenos en la naturaleza siguen un patrón que puede no ser aparente. Del mismo modo, los jugadores y los juegos siguen ciertos patrones que pueden no ser evidentes. Al observar muchos movimientos y juegos podemos adivinar con cierta confianza el próximo movimiento o el resultado del juego. En términos simples, deepmind observa muchos juegos y movimientos, los analiza para encontrar un patrón utilizando algoritmos de aprendizaje profundo. Usando el patrón, adivina el próximo movimiento del adversario y se mueve en consecuencia.

More Interesting

¿Cómo funciona el algoritmo de creación de coincidencias dota 2?

¿Por qué el introsort se convierte de quicksort a heapsort después de cierta profundidad?

Dado un conjunto etiquetado de nodos, ¿podemos 'siempre' construir un árbol de búsqueda binario (BST) para ellos?

¿Cuál es el mejor libro para aprender algoritmos genéticos? ¿Por qué?

¿Cuál es el método racional (algoritmo) a seguir al votar?

¿Qué estructura de datos usaría para diseñar un programa de planificación de producción?

¿Cómo verifico si un número binario es divisible por decir 'n'?

Cómo implementar un algoritmo usando la recursividad para encontrar el módulo de esta serie

¿Cuál es el código / algo para la multiplicación de matriz dispersa?

¿Debería alguien que se aplica a un campo de arranque de desarrollo ya saber cómo escribir una función para sumar una matriz multidimensional?

El año pasado, logré resolver dos problemas de ACM ICPC en las regiones. Ya que falta solo un mes para la competencia de este año, ¿puedo resolver uno o dos más este año si entreno duro hoy o no hay ninguna posibilidad?

¿Dar un nombre largo a una variable es una pérdida de memoria? ¿Int qwertyuiop_asdfghjkl_zxcvbnm; int i; tener el mismo efecto en el tiempo de compilación y ejecución?

¿Para qué sirven los bordes traseros en el algoritmo Ford-Fulkerson?

¿Cuál es la diferencia entre un algoritmo de autoaprendizaje y un algoritmo de IA?

¿Es posible tener análisis predictivos utilizando motores de recomendación? En caso afirmativo, ¿cuáles son algunos de los algoritmos de análisis predictivo utilizados por los motores de recomendación?