Aprendizaje profundo distribuido impresionante
Una lista curada de increíbles recursos de aprendizaje profundo distribuidos.
Tabla de contenido
Marcos
Blogs
Papeles
Libros
Marcos
- MXNET - Aprendizaje profundo distribuido/móvil ligero, portátil, flexible con un planificador DISPLOW DIP DINMATIVE DIP DIP DIP; para Python, R, Julia, Go, JavaScript y más.
- GO-MXNET-predictor-Vaya enlace para MXNET C_Predict_API para hacer una inferencia con el modelo previamente capacitado.
- Deeplearning4J - Plataforma de aprendizaje profundo distribuido para Java, Clojure, Scala.
- Kit de herramientas de aprendizaje automático distribuido (DMTK): un marco de aprendizaje automático distribuido (servidor de parámetros) por Microsoft. Permite modelos de entrenamiento en grandes conjuntos de datos en múltiples máquinas. Las herramientas actuales incluido con él incluyen: LightLDA y la incrustación de palabras distribuidas (multisentamiento).
- Elephas: Elephas es una extensión de Keras, que le permite ejecutar modelos distribuidos de aprendizaje profundo a escala con chispa.
- Horovod - Marco de capacitación distribuido para TensorFlow.
Blogs
- Keras + horvod = aprendizaje profundo distribuido sobre esteroides
- Conoce a Horovod: el marco de aprendizaje profundo distribuido de código abierto de Uber para TensorFlow
- Distribute-Dep-Learning-Part-1-An-Introduction-Training-Training-de-Neural-Networks/
- Acelerar el aprendizaje profundo utilizando SGD distribuido: una descripción general
- Introducción a sistemas distribuidos de aprendizaje profundo:
Papeles
General:
- Desmitificante de aprendizaje profundo paralelo y distribuido: un análisis de concurrencia en profundidad: analiza los diferentes tipos de concurrencia en DNNS; descenso de gradiente estocástico sincrónico y asincrónico; arquitecturas del sistema distribuido; esquemas de comunicación; y modelado de rendimiento. Según estos enfoques, también extrapola las posibles direcciones para el paralelismo en el aprendizaje profundo.
Libros
- Patrones de aprendizaje automático distribuido: este libro le enseña cómo llevar modelos de aprendizaje automático de su computadora portátil personal a grandes grupos distribuidos. Explorará conceptos y patrones clave detrás de los sistemas de aprendizaje automático distribuidos exitosos y aprenderá tecnologías como TensorFlow, Kubernetes, Kubeflow y Argo Flows de trabajo directamente de un mantenedor de llave y contribuyente, con escenarios del mundo real y proyectos prácticos.
Consistencia del modelo:
Sincronización:
Técnicas sincrónicas:
- Aprendizaje profundo con sistemas COTS HPC: tecnología de computación de alto rendimiento (COTS HPC) de productos básicos, un grupo de servidores GPU con InfiniBand Interconnects y MPI.
- Firecaffe: aceleración casi lineal de la formación de redes neuronales profundas en grupos de cómputo: la velocidad y la escalabilidad de los algoritmos distribuidos casi siempre está limitada por la sobrecarga de la comunicación entre servidores; El entrenamiento DNN no es una excepción a esta regla. Por lo tanto, la consideración clave que hace este documento es reducir la sobrecarga de comunicación siempre que sea posible, sin degradar la precisión de los modelos DNN que entrenamos.
- Sparknet: entrenamiento de redes profundas en Spark. En Actas de la Conferencia Internacional sobre Representaciones de Aprendizaje (ICLR).
- SGD de 1 bits: descenso de gradiente estocástico de 1 bits y aplicación a la capacitación distribuida de datos paralelos de DNNS del habla, en Interspeech 2014.
- Entrenamiento DNN distribuido escalable utilizando computación en la nube de GPU de productos básicos: introduce un nuevo método para ampliar el entrenamiento de descenso de gradiente estocástico (SGD) de redes neuronales profundas (DNN). El método resuelve el conocido problema de cuello de botella de comunicación que surge para SGD de datos paralelos de datos porque los nodos de cómputo con frecuencia necesitan sincronizar una réplica del modelo.
- Entrenamiento multi-GPU de convnets.: Capacitación de convnets en múltiples GPU
Técnicas sincrónicas:
- Precisión del modelo y compensación de tiempo de ejecución en el aprendizaje profundo distribuido: un estudio sistemático.
- Un algoritmo de aprendizaje rápido para redes de creencias profundas: un algoritmo de aprendizaje rápido para redes de creencias profundas
- Servidores de parámetros distribuidos conscientes de la heterogeneidad: J. Jiang, B. Cui, C. Zhang y L. Yu. 2017. Servidores de parámetros distribuidos con consumo de heterogeneidad. En Proc. Conferencia Internacional ACM 2017 sobre gestión de datos (Sigmod '17). 463–478.
- Gradiente estocástico paralelo asíncrono para la optimización no confidente: x. Lian, Y. Huang, Y. Li y J. Liu. 2015. Gradiente estocástico paralelo asíncrono para la optimización no confidente. En Proc. 28 ° INT'L conf. En NIPS - Volumen 2. 2737–2745.
- ASYNC-SGD ADATIDAD DE ASYNC PARA EL APRENDIZAJE DISTRIBUIDO DEL APRENDIZACIÓN DISTRIBUIDA: W. ZHANG, S. GUPTA, X. LIAN Y J. LIU. 2016. ASYNC-SGD ASYNC-SGD para el aprendizaje profundo distribuido. En Proc. Vigésima quinta conferencia internacional conjunta sobre inteligencia artificial (IJCAI'16). 2350–2356.
Técnicas asíncronas:
- Un análisis unificado de algoritmos de estilo Hogwild!: C. de Sa, C. Zhang, K. Olukotun y C. Ré. 2015. Taming the Wild: un análisis unificado de algoritmos de estilo Hogwild! En Proc. 28 ° INT'L conf. En NIPS - Volumen 2. 2674–2682.
- Redes profundas distribuidas a gran escala: J. Dean et al. 2012. Redes profundas distribuidas a gran escala. En Proc. 25ª Conferencia Internacional sobre Sistemas de Procesamiento de Información Neural - Volumen 1 (NIPS'12). 1223–1231.
- Descendencia de gradiente estocástico paralelo asíncrono: j. Keuper y F. Pfreundt. 2015. Descendencia de gradiente estocástico paralelo asíncrono: un núcleo numérico para algoritmos de aprendizaje automático distribuido escalable. En Proc. Taller en MLHPC. 1: 1–1: 11.
- Dogwild! -Distribuido Hogwild para CPU y GPU.: C. Noel y S. Osindo. 2014. Dogwild! -Distribuido Hogwild para CPU y GPU. En el taller de NIPS sobre el aprendizaje automático distribuido y los cálculos de matriz.
- GPU Distendencia de gradiente estocástico asíncrono para acelerar el entrenamiento de la red neuronal.: T. Paine, H. Jin, J. Yang, Z. Lin y Ts Huang. 2013. GPU Descenso de gradiente estocástico asíncrono para acelerar el entrenamiento de la red neuronal. (2013). ARXIV: 1312.6186
- ¡Hogwild!: Un enfoque sin bloqueo para paralelizar el descenso de gradiente estocástico: B. Recht, C. Re, S. Wright y F. Niu. 2011. Hogwild: un enfoque sin bloqueo para paralelizar el descenso de gradiente estocástico. En Avances en Sistemas de Procesamiento de Información Neural 24. 693–701.
- Descenso de gradiente estocástico asíncrono para el entrenamiento DNN: S. Zhang, C. Zhang, Z. You, R. Zheng y B. Xu. 2013. Descendencia de gradiente estocástico asíncrono para el entrenamiento DNN. En la Conferencia Internacional IEEE sobre Acústica, Procesamiento de discursos y señales. 6660–6663.
Comunicación no determinista:
- Gossipgrad: aprendizaje profundo escalable utilizando descenso de gradiente asincrónico basado en la comunicación de chismes
- Cómo escalar el aprendizaje profundo distribuido: cómo escalar el aprendizaje profundo distribuido?
- Servidores de parámetros distribuidos conscientes de la heterogeneidad: un estudio del aprendizaje automático distribuido en entornos heterogéneos.
Distribución y comunicación de parámetros:
Centralización:
Servidor de parámetros (PS):
- GEEPS: aprendizaje profundo escalable en GPU distribuidas con un parámetro especializado en GPU. Servidor.
- Firecaffe: Fn Iandola, MW Moskewicz, K. Ashraf y K. Keutzer. 2016: Aceleración casi lineal de capacitación de redes neuronales profundas en grupos de cálculo. En la conferencia IEEE sobre visión por computadora y reconocimiento de patrones (CVPR).
- Deepspark: H. Kim et al. 2016. Learning profundo basado en chispas que apoyan actualizaciones asíncronas y compatibilidad con cafetería. (2016).
- Escala de aprendizaje automático distribuido con el servidor de parámetros: M. Li et al. 2014. Escala de aprendizaje automático distribuido con el servidor de parámetros. En Proc. 11ª Conferencia de Usenix sobre diseño e implementación de sistemas operativos (OSDI'14). 583–598.
PS fragmentado:
- Proyecto Adam: t. Chilimbi, Y. Suzue, J. Apacible y K. Kalyanaraman. 2014. Construyendo un sistema de capacitación de aprendizaje profundo eficiente y escalable. En el 11º Simposio de Usenix sobre el diseño e implementación de sistemas operativos. 571–582.
- Redes profundas distribuidas a gran escala: J. Dean et al. 2012. Redes profundas distribuidas a gran escala. En Proc. 25ª Conferencia Internacional sobre Sistemas de Procesamiento de Información Neural - Volumen 1 (NIPS'12). 1223–1231.
- Servidores de parámetros distribuidos conscientes de la heterogeneidad: J. Jiang, B. Cui, C. Zhang y L. Yu. 2017. Servidores de parámetros distribuidos con consumo de heterogeneidad. En Proc. Conferencia Internacional ACM 2017 sobre gestión de datos (Sigmod '17). 463–478.
- Construyendo características de alto nivel utilizando aprendizaje no supervisado a gran escala: Qv LE, M. Ranzato, R. Monga, M. Devin, K. Chen, GS Corrado, J. Dean y Ay Ng. 2012. Construyendo características de alto nivel utilizando un aprendizaje no supervisado a gran escala. En Proc. 29 ° INT'L conf. En el aprendizaje automático (ICML'12). 507–514.
- Aprendizaje profundo en 15pf: clasificación supervisada y semi-supervisada para datos científicos: T. Kurth et al. 2017. Aprendizaje profundo en 15pf: clasificación supervisada y semi-supervisada para datos científicos. En Proc. Int'l conf. Para computación de alto rendimiento, redes, almacenamiento y análisis (SC '17). 7: 1–7: 11.
- Petuum: EP Xing, Q. Ho, W. Dai, Jk Kim, J. Wei, S. Lee, X. Zheng, P. Xie, A. Kumar e Y. Yu. 2015. Petuum: una nueva plataforma para el aprendizaje automático distribuido en Big Data. Transacciones IEEE en Big Data 1, 2 (2015), 49–67.
- Poseidon: H. Zhang, Z. Hu, J. Wei, P. Xie, G. Kim, Q. Ho y EP Xing. 2015. Poseidon: una arquitectura del sistema para un aprendizaje profundo eficiente basado en GPU en múltiples máquinas. (2015). ARXIV: 1512.06216
PS jerárquico:
- Precisión del modelo y compensación de tiempo de ejecución en el aprendizaje profundo distribuido: un estudio sistemático: S. Gupta, W. Zhang y F. Wang. 2016. Precisión del modelo y compensación de tiempo de ejecución en el aprendizaje profundo distribuido: un estudio sistemático. En IEEE 16ª Conferencia Internacional sobre Minería de datos (ICDM). 171–180.
- Gaia: K. Hsieh, A. Harlap, N. Vijaykumar, D. Konomis, Gr Ganger, Pb Gibbons y O. Mutlu. 2017. Gaia: Geo-distribuido Aprendizaje automático que se acerca a las velocidades de LAN. En Proc. 14º USENIX Conf. en nsdi. 629–647.
- Uso de la supercomputadora para acelerar el entrenamiento de la red neuronal: Y. Yu, J. Jiang y X. Chi. 2016. Uso de supercomputador para acelerar el entrenamiento de la red neuronal. En la 22ª Conferencia Internacional de IEEE sobre sistemas paralelos y distribuidos (ICPAD). 942–947.
Comentarios: si tiene alguna idea o desea que se agregue cualquier otro contenido a esta lista, no dude en contribuir a la lista.