AWS y Facebook anunció hoy dos nuevos proyectos de código abierto en torno a PyTorch, el popular marco de aprendizaje automático de código abierto. El primero de ellos es TorchServe, un marco de servicio de modelos para PyTorch que facilitará a los desarrolladores poner sus modelos en producción. El otro es TorchElastic, una biblioteca que facilita a los desarrolladores la creación de trabajos de capacitación tolerantes a fallas en clústeres de Kubernetes, incluidas las instancias puntuales EC2 de AWS y el servicio Elastic Kubernetes.
En muchos sentidos, las dos compañías están tomando lo que han aprendido al ejecutar sus propios sistemas de aprendizaje automático a escala y están incorporando esto al proyecto. Para AWS, eso es principalmente SageMaker, la plataforma de aprendizaje automático de la compañía, pero como me dijo Bratin Saha, vicepresidente de AWS y gerente general de servicios de aprendizaje automático, el trabajo en PyTorch estuvo motivado principalmente por solicitudes de la comunidad. Y aunque obviamente hay otros servidores modelo como TensorFlow Serving y Multi Model Server disponibles hoy, Saha argumenta que sería difícil optimizarlos para PyTorch.
“Si tratamos de tomar otro modelo de servidor, no podríamos citar optimizarlo tanto, así como crearlo dentro de los matices de cómo PyTorch a los desarrolladores les gusta ver esto ”, dijo. AWS tiene mucha experiencia en la ejecución de sus propios servidores modelo para SageMaker que pueden manejar múltiples marcos, pero la comunidad estaba pidiendo un servidor modelo que se adaptara a cómo funcionan. Eso también significó adaptar la API del servidor a lo que los desarrolladores de PyTorch esperan de su marco de elección, por ejemplo.
Como me dijo Saha, el servidor que AWS y Facebook están lanzando ahora como código abierto es similar a lo que AWS está usando internamente. “Está bastante cerca”, dijo. “En realidad, comenzamos con lo que teníamos internamente para uno de nuestros servidores modelo y luego lo presentamos a la comunidad, trabajamos estrechamente con Facebook, para iterar y obtener comentarios, y luego lo modificamos para que esté bastante cerca”.
Bill Jia, vicepresidente de infraestructura de inteligencia artificial de Facebook, también me dijo que está muy contento de cómo su equipo y la comunidad han impulsado a PyTorch en los últimos años. “Si nos fijamos en toda la comunidad de la industria, un gran número de investigadores y usuarios empresariales están utilizando AWS”, dijo. “Y luego descubrimos que si podemos colaborar con AWS y unir PyTorch, Facebook y AWS pueden obtener muchos beneficios, pero más aún, todos los usuarios pueden obtener muchos beneficios de PyTorch. Esa es nuestra razón por la que queríamos colaborar con AWS “.
En cuanto a TorchElastic, el objetivo aquí es permitir a los desarrolladores crear sistemas de capacitación que puedan funcionar en grandes grupos de Kubernetes distribuidos donde es posible que desee utilizar instancias spot más baratas. Sin embargo, estos son preferentes, por lo que su sistema debe ser capaz de manejar eso, mientras que tradicionalmente, los marcos de capacitación de aprendizaje automático a menudo esperan un sistema en el que la cantidad de instancias permanezca igual durante todo el proceso. Eso también es algo que AWS creó originalmente para SageMaker. Ahí, sin embargo, AWS lo gestiona completamente, por lo que los desarrolladores nunca tienen que pensarlo. Para los desarrolladores que desean un mayor control sobre sus sistemas de entrenamiento dinámico o mantenerse muy cerca del metal, TorchElastic ahora les permite recrear esta experiencia en sus propios grupos de Kubernetes.
AWS tiene un poco de reputación cuando se trata de código abierto y su compromiso con la comunidad de código abierto. En este caso, sin embargo, es agradable ver a AWS liderar el camino para llevar parte de su propio trabajo en la construcción de servidores modelo, por ejemplo, a la comunidad PyTorch. En el ecosistema de aprendizaje automático, eso es muy esperado, y Saha hizo hincapié en que AWS ha colaborado durante mucho tiempo con la comunidad como uno de los principales contribuyentes a MXNet y a través de sus contribuciones a proyectos como Jupyter, TensorFlow y bibliotecas como NumPy.
Source link