¿Será el hardware especializado para el aprendizaje profundo un cambio de juego?

Además de la respuesta de Eric que menciona el enfoque de Nvidia en el aprendizaje profundo utilizando GPU y los enigmáticos TPU de Google, hay otros jugadores que apuestan por hardware especializado para el aprendizaje profundo.

Sin embargo, la mayoría de los mismos se centran actualmente en redes neutrales convolucionales [1] [2]. Esta deriva no es inesperada, ya que las CNN han mostrado resultados extremadamente interesantes para las tareas de visión por computadora y, posiblemente, la visión por computadora tiene el caso de uso más interesante actualmente (autos sin conductor, realidad aumentada, drones …). La razón para elegir el diseño ASIC es una victoria obvia para los sistemas de restricción de energía.

Sin embargo, esta tendencia ciertamente no se detendrá en los ASIC. El futuro cercano traerá más diversidad. En mi humilde opinión, FPGA son extremadamente adecuados para esta tarea, especialmente dado que la arquitectura de “modelos profundos” está evolucionando muy rápidamente. Los FPGA están perfectamente ubicados en la curva de flexibilidad vs eficiencia. (Los FPGA son sustratos programables en comparación con los ASIC de arquitectura fija). La adquisición por parte de Intel de los sistemas Alerva y expertos en aprendizaje profundo FPGA Nervana lo coloca en el punto óptimo para avanzar en la carrera por dicho dispositivo.

Otra plataforma digna de atención de IBM se basa en ideas similares a las “redes neuronales artificiales”, pero adoptan una forma diferente de representar el algoritmo. Adoptan una visión más “centrada en las neuronas” para lo mismo. Podría decirse que IBM es la vanguardia de este frente con su chip de investigación: True north [3]. Estos no han sido capaces de igualar el nivel de precisión más avanzado, sin embargo, se ha demostrado que son mucho más eficientes energéticamente que otras soluciones. Si ofrecen precisión en el futuro, será extremadamente emocionante ver a otros tratando de ponerse al día. Otra mención de honor es que esta categoría es Spinnaker [4].

El hardware especializado seguramente será un factor importante en la carrera de aprendizaje profundo. Sin embargo, aún más interesante sería ver cuánto papel juega el aprendizaje profundo en el cambio de hardware (para comenzar con lo que sería CPU vs GPU vs (digamos) ruptura de TPU del área de silicio en un SoC) en un futuro próximo.

[1] Tecnología: Nervana Engine – Nervana

[2] Brazas | Tecnología de visión artificial | Movidius

[3] Chip inspirado en el cerebro

[4] SpiNNaker

En términos generales, cuanto más específica es la función del hardware, más eficiente es en esa tarea. Al mismo tiempo, sin embargo, pierde plasticidad y no puede adaptarse a las cambiantes demandas de software. Por lo tanto, el hardware adecuado para el aprendizaje profundo y otros algoritmos de inteligencia artificial debe tener la capacidad de especializarse y transformarse. Esto no sería una computadora de propósito general, o un dispositivo ASIC, sería un nuevo tipo particular de hardware neuromórfico .

Sin embargo, el hardware es solo la mitad del problema, y ​​creo que el verdadero cambio de juego será una plataforma que sea la combinación correcta de software y hardware. Esta plataforma le permitiría codificar y ejecutar aplicaciones en hardware neuromórfico tan fácilmente como ejecutaría una aplicación Python o C ++. Una plataforma accesible para el desarrollador común, que es el cambio de juego.

Las GPU de NVIDIA que se basan en la arquitectura Pascal (por ejemplo, GTX 1080) y la arquitectura Tesla (K40, K80), ya se consideran hardware especializado de aprendizaje profundo: sus especificaciones son más adecuadas para operaciones de tipo BLAS que para juegos, e incluso con medios soporte de precisión de coma flotante (como se descubrió recientemente que puede hacer que sus modelos sean dos veces más grandes y multiplicar números más rápido cuando usa la mitad del espacio para cada número de coma flotante). Casi no tiene sentido comprar una GTX 1080 (en comparación con otra tarjeta gráfica) a menos que tenga la intención de hacer una investigación de Deep Learning.

En estos días, cada hombre, mujer y niño que está aprendiendo en profundidad compra una GPU NVIDIA; así que sí, diría que el hardware especializado ya ha cambiado el juego.

Si queremos obtener algo más “especializado” que eso, entonces estaríamos considerando FPGA y ASIC. Solía ​​pensar que los FPGA y los ASIC personalizados para el aprendizaje profundo no eran una buena idea porque aún no estaba claro qué modelos deberían implementarse en ese hardware personalizado.

Desde entonces he cambiado un poco de opinión: tiene sentido usar hardware personalizado cuando se opera Deep Learning a escala, como los chips TPU de Google [1]. Incluso si el chip no es flexible para fines de investigación, el hardware especializado ahorra mucha energía a su centro de datos.

[1] https: //cloudplatform.googleblog

“Si y no.

En resumen, puede hacer cualquier cálculo en una CPU, ni siquiera necesita una GPU.

Estoy muy interesado en el nuevo motor neuronal en el iPhone X (y también el TPU de Google, y TrueNorth de IBM, etc.). En realidad, tampoco agregan ninguna capacidad sobre GPU (o CPU), excepto bajo consumo de energía.

Al menos Huawei también tiene algo similar al nuevo hardware en el iPhone X (aparentemente más potente, pero espero que Apple tome el crédito de hacer popular). Este puede ser el futuro de todos los teléfonos inteligentes, Android u otros.

El aprendizaje profundo se trata de “aprender” en dos pasos, “inferencia” (se puede hacer en TPU más potentes o solo GPU) y luego con la red neuronal resultante se puede ejecutar en el mismo o similar o el “similar” menos potente ( ?) hardware para teléfonos inteligentes. Ese es mi entendimiento.


Obviamente, el bajo consumo de energía es un problema para el hardware móvil, pero también para el hardware que no funciona con baterías, como ocurre con cualquier otro uso del servidor, el consumo de energía ahora es un gran problema directa e indirectamente por el costo.

El cerebro es mucho más eficiente que las CPU. La brecha es menor con las GPU e incluso menor con el hardware especializado de red neuronal. Sin embargo, tenga en cuenta que cuanto más especializado es el hardware, menos general es.


Dado que ahora tenemos hardware incluso en teléfonos inteligentes, creo que los algoritmos para ANNs se estabilizaron al menos mucho. Sin embargo, todavía hay mucha investigación en curso, y parte de ella para admitir mejor las GPU (ya está hecha). Tal vez, debe tal vez, esos algoritmos hacen que el hardware especializado sobre GPU no sea (mucho) necesario. Creo que en ninguna parte hemos visto el final de la investigación de ANN, así que espero que el hardware especializado ya no esté obsoleto. Pero espero ver las aplicaciones reales (ahora prácticas) que abre este nuevo hardware.