Apache MXNet es un marco de software de aprendizaje profundo de código abierto que entrena e implementa redes neuronales profundas . Su objetivo es ser escalable, permite un entrenamiento rápido de modelos y admite un modelo de programación flexible y múltiples lenguajes de programación (incluidos C++ , Python , Java , Julia , MATLAB , JavaScript , Go , R , Scala , Perl y Wolfram Language ). La biblioteca MXNet es portátil y puede escalarse a múltiples GPU [2] y máquinas. Fue desarrollado conjuntamente por Carlos Guestrin en la Universidad de Washington , junto con GraphLab. [3]
En septiembre de 2023, ya no se desarrolla activamente. [4] Apache MXNet fue efectivamente abandonado debido a una combinación de factores que incluyen la falta de contribuciones significativas, compilaciones obsoletas y un cambio de enfoque por parte de su principal patrocinador, Amazon, hacia otros marcos como PyTorch. El proyecto no tuvo nuevos lanzamientos durante más de un año y hubo muy pocas solicitudes de extracción o actualizaciones de los contribuyentes, lo que llevó a su traslado a Apache Attic en 2023. Además, la comunidad comenzó a migrar a otros marcos que ofrecían soporte y desarrollo más sólidos. actividad. [5]
Apache MXNet es un marco de aprendizaje profundo escalable que admite modelos de aprendizaje profundo, como redes neuronales convolucionales (CNN) y redes de memoria a corto plazo (LSTM).
MXNet se puede distribuir en una infraestructura de nube dinámica utilizando un servidor de parámetros distribuidos (según una investigación de la Universidad Carnegie Mellon , Baidu y Google [6] ). Con múltiples GPU o CPU , el marco puede acercarse a una escala lineal.
MXNet admite programación tanto imperativa como simbólica. El marco permite a los desarrolladores realizar un seguimiento, depurar, guardar puntos de control, modificar hiperparámetros y realizar detenciones anticipadas .
MXNet admite Python, R, Scala, Clojure, Julia, Perl, MATLAB y JavaScript para el desarrollo front-end y C++ para la optimización back-end.
El marco admite la implementación de un modelo entrenado en dispositivos de gama baja para realizar inferencias, como dispositivos móviles, mediante el uso de Amalgamation. [7] Otros objetivos de implementación incluyen dispositivos de Internet de las cosas (usando AWS Greengrass), computación sin servidor (usando AWS Lambda ) o contenedores . Estos entornos de gama baja solo pueden tener una CPU más débil o una memoria (RAM) limitada y deberían poder utilizar los modelos que fueron entrenados en un entorno de nivel superior (clúster basado en GPU, por ejemplo).
MXNet cuenta con el respaldo de proveedores de nube pública, incluidos Amazon Web Services (AWS) [8] y Microsoft Azure . [9] Actualmente, MXNet cuenta con el respaldo de Intel , Baidu , Microsoft , Wolfram Research e instituciones de investigación como Carnegie Mellon , MIT , la Universidad de Washington y la Universidad de Ciencia y Tecnología de Hong Kong . [10]