El Open Neural Network Exchange ( ONNX ) [ ˈɒnɪks ] [ 2 ] es un ecosistema de inteligencia artificial de código abierto [ 3 ] de empresas tecnológicas y organizaciones de investigación que establecen estándares abiertos para representar algoritmos de aprendizaje automático y herramientas de software para permitir un formato estándar para representar modelos de aprendizaje automático. ONNX está disponible en GitHub .
Historia
ONNX se llamaba originalmente Toffee [ 4 ] y fue desarrollado por el equipo PyTorch de Facebook . [ 5 ] En septiembre de 2017, Facebook y Microsoft lo renombraron como ONNX . [ 6 ] Posteriormente, IBM , Huawei , Intel , AMD , Arm y Qualcomm anunciaron su apoyo a la iniciativa. [ 3 ]
En octubre de 2017, Microsoft anunció que agregaría su plataforma Cognitive Toolkit y Project Brainwave a la iniciativa. [ 3 ]
En noviembre de 2019, ONNX fue aceptado como proyecto de posgrado en Linux Foundation AI. [ 7 ]
En octubre de 2020, Zetane Systems se convirtió en miembro del ecosistema ONNX. [ 8 ]
Intención
La iniciativa tiene como objetivos:
Interoperabilidad del marco
Permite a los desarrolladores mover modelos de aprendizaje automático entre diferentes marcos, que pueden utilizarse en distintas etapas del proceso de desarrollo, como el entrenamiento, el diseño de la arquitectura o la implementación en dispositivos móviles. [ 6 ]
Optimización compartida
Proporcionar una representación común que puedan utilizar los proveedores de hardware y otros desarrolladores para aplicar optimizaciones a los modelos de redes neuronales artificiales en múltiples marcos de aprendizaje automático. [ 6 ]
Contenido
ONNX proporciona definiciones de un modelo de grafo de computación extensible, operadores integrados y tipos de datos estándar , centrados en la inferencia (evaluación). [ 6 ] . El formato del contenedor es Protocol Buffers . [ 9 ]
Cada grafo de flujo de datos de computación es una lista de nodos que forman un grafo acíclico . Los nodos tienen entradas y salidas. Cada nodo es una llamada a un operador. Los metadatos documentan el grafo. Los operadores integrados deben estar disponibles en cada marco de trabajo compatible con ONNX. [ 6 ]
Los modelos ONNX se pueden entrenar en un único entorno, como PyTorch o TensorFlow , y luego exportarlos a ONNX. Este formato permite transferir los modelos del entorno de entrenamiento a otros entornos para su prueba o implementación. Una vez que un modelo está en formato ONNX, se puede ejecutar en diferentes sistemas de ejecución o en diversas plataformas de hardware, como GPU o aceleradores de IA especializados. El uso de un formato común permite utilizar la misma representación del modelo en múltiples sistemas y entornos. [ 10 ]
Véase también
- Formato de intercambio de redes neuronales
- Comparación de software de aprendizaje profundo
- Lenguaje de marcado de modelos predictivos : un formato de intercambio de modelos predictivos basado en XML.
- PicklingTools: una colección de herramientas de código abierto que permite a los sistemas C++ y Python compartir información de forma rápida y sencilla.
Referencias
- ↑ "Versión 1.22.0" . 15 de junio de 2026. Consultado el 16 de junio de 2026 .
- ↑ @onnxai (13 de marzo de 2018). "Hola Hu, no se escribe igual, pero se pronuncia igual que Onyx" ( Tweet ) – vía Twitter .
- 1 2 3 "El ecosistema de IA abierta de Microsoft y Facebook gana más apoyo" . Engadget . Consultado el 11 de octubre de 2017 .
- ↑ "Codemod Toffee -> ONNX, toffee -> onnx. Cambiar los nombres de los archivos para que coincidan · pytorch/pytorch@6d8d5ba" . GitHub . Consultado el 12 de octubre de 2021 .
- ↑ "Un exportador de modelos para PyTorch por ezyang · Solicitud de extracción n.° 2565 · pytorch/pytorch" . GitHub . Consultado el 12 de octubre de 2021 .
- 1 2 3 4 5 "Microsoft y Facebook crean un ecosistema abierto para la interoperabilidad de modelos de IA: Microsoft Cognitive Toolkit" . Microsoft Cognitive Toolkit . 7 de septiembre de 2017. Consultado el 11 de octubre de 2017 .
- ↑ "LF AI & Data Day – ONNX Community Meetup – Silicon Valley" . Comunidad en línea de LF .
- ↑ "Zetane Systems se une a la comunidad ONNX para acelerar la innovación de código abierto y universal..." . 14 de octubre de 2020.
- ↑ Geel, Patrick (2023). Particionamiento de redes neuronales para entornos con recursos limitados (Tesis). Universidad Tecnológica de Delft. pág. 10. Recuperado el 6 de abril de 2026 .
- ↑ Zhang, J. (2019). "ONNX: Interoperabilidad de modelos para el aprendizaje automático". arXiv : 1906.05676 [ cs.SE ].
Enlaces externos
- Boyd, Eric (7 de septiembre de 2017). "Microsoft y Facebook crean un ecosistema abierto para la interoperabilidad de modelos de IA: Microsoft Cognitive Toolkit" . Microsoft Cognitive Toolkit . Recuperado el 11 de octubre de 2017 .
- onnx: Open Neural Network Exchange , Open Neural Network Exchange, 11 de octubre de 2017 , consultado el 11 de octubre de 2017
- Software gratuito de Microsoft
- Software que utiliza la licencia Apache.
- Formatos de intercambio de datos de redes neuronales
- Software de 2017
- Aprendizaje automático aplicado