Buenas!
Cuando una plataforma o tecnología comienza a ser popular, suele suceder que los Frameworks de soporte a esta tecnología comienzan a aparecer como setas en un bosque húmedo en primavera. JavaScript puede ser el mejor ejemplo de esto.
Pues bien, lo mismo esta sucediendo en el mundo de la inteligencia artificial. Las herramientas mas comunes suelen ser Caffe 2, CNTK o Tensorflow. Sin embargo, la interoperabilidad o cambio entre estas herramientas es un problema de no fácil solución. Pues bien, 2 grandes de la industria como son Facebook y Microsoft, se han puesto de acuerdo para ayudar con la migración e interacción entre estas herramientas. Y es de este acuerdo, que ha surgido ONNX.
ONNX es un proyecto comunitario creado por Facebook y Microsoft. Creemos que es necesaria una mayor interoperabilidad en la comunidad de herramientas de IA. Muchas personas están trabajando en grandes herramientas, pero los desarrolladores a menudo están encerrados en un marco o ecosistema.
ONNX es el primer paso para permitir que más de estas herramientas trabajen juntas al permitirles compartir modelos. Nuestro objetivo es hacer posible que los desarrolladores utilicen las combinaciones correctas de herramientas para su proyecto. Queremos que todos puedan llevar la IA de la investigación a la realidad lo más rápido posible sin la fricción artificial de las cadenas de herramientas.
ONNX permite que los modelos sean entrenados en un framework y luego transferidos a otro. Los modelos actualmente compatibles con Caffe2, CNTK, MXNet y PyTorch. Además, existen conectores para muchos otros frameworks.
Dando un vistazo a su repositorio de GitHub, llama la atención que en el roadmap del producto se incluyen escenarios de importación y exportación desde TensorFlow (Google).
Ahora que tengo la oportunidad de “mover modelos” pues me ahorro la necesidad de conocer a fondo los nuevos.
Happy Coding!
Saludos @ Calgary
El Bruno
References
- Open Neural Network Exchange, Home
- Open Neural Network Exchange, GitHub
- Open Neural Network Exchange, Tutorials
- Caffe2
- CNTK
- TensorFlow