Notas de la versión de CNTK v2.7

Querido comunidad,

Con nuestras contribuciones continuas a ONNX y ONNX Runtime, hemos facilitado la interoperación dentro del ecosistema del marco de inteligencia artificial y el acceso a funcionalidades de inferencia multiplataforma y de alto rendimiento para modelos tradicionales de ML y redes neuronales profundas. En los últimos años hemos sido privilegiados para desarrollar proyectos clave de aprendizaje automático de código abierto, incluido el Microsoft Cognitive Toolkit, que ha permitido a sus usuarios aprovechar los avances de todo el sector en el aprendizaje profundo a escala.

La versión 2.7 de hoy será la última versión principal de CNTK. Es posible que tengamos algunas versiones secundarias posteriores para correcciones de errores, pero estas se evaluarán por caso. No hay planes para el nuevo desarrollo de características después de esta versión.

La versión CNTK 2.7 tiene compatibilidad total con ONNX 1.4.1 y animamos a los que buscan poner en marcha sus modelos CNTK para aprovechar las ventajas de ONNX y el entorno de ejecución de ONNX. En el futuro, los usuarios pueden seguir aprovechando las innovaciones de ONNX en constante evolución a través del número de marcos que lo admiten. Por ejemplo, los usuarios pueden exportar de forma nativa modelos ONNX desde PyTorch o convertir modelos de TensorFlow a ONNX con el convertidor TensorFlow-ONNX.

Estamos muy agradecidos por todo el soporte que hemos recibido de colaboradores y usuarios a lo largo de los años desde la versión inicial de código abierto de CNTK. CNTK ha habilitado tanto a los equipos de Microsoft como a los usuarios externos para ejecutar cargas de trabajo complejas y a gran escala en todo tipo de aplicaciones de aprendizaje profundo, como los avances históricos en el reconocimiento de voz logrados por los investigadores de Microsoft Speech, los originadores del marco.

Dado que ONNX se emplea cada vez más en el servicio de modelos usados en productos de Microsoft como Bing y Office, estamos dedicados a sintetizar innovaciones de la investigación con las rigurosas demandas de producción para avanzar en el ecosistema.

Por encima de todo, nuestro objetivo es hacer innovaciones en el aprendizaje profundo en las pilas de software y hardware lo más abiertos y accesibles posible. Estaremos trabajando duro para aportar tanto los puntos fuertes existentes de CNTK como la nueva investigación de última generación en otros proyectos de código abierto para ampliar realmente el alcance de estas tecnologías.

Con gratitud,

-- El equipo de CNTK

Aspectos destacados de esta versión

  • Se ha movido a CUDA 10 para Windows y Linux.
  • Admita el bucle RNN avanzado en la exportación de ONNX.
  • Exporte modelos de más de 2 GB en formato ONNX.
  • Compatibilidad con FP16 en la acción de entrenamiento del script de cerebro.

Compatibilidad de CNTK con CUDA 10

CNTK ahora admite CUDA 10. Esto requiere una actualización para compilar el entorno en Visual Studio 2017 v15.9 para Windows.

Para configurar el entorno de compilación y tiempo de ejecución en Windows:

  • Instale Visual Studio 2017. Nota: a partir de CUDA 10 y versiones posteriores, ya no es necesario instalar y ejecutar con la versión 14.11 específica de VC Tools.
  • Instalación de Nvidia CUDA 10
  • Desde PowerShell, ejecute: DevInstall.ps1
  • Inicie Visual Studio 2017 y abra CNTK.sln.

Para configurar el entorno de compilación y tiempo de ejecución en Linux mediante Docker, compile aquí una imagen de Docker Unbuntu 16.04 con Dockerfiles. Para otros sistemas Linux, consulte dockerfiles para configurar bibliotecas dependientes para CNTK.

Compatibilidad con el bucle RNN avanzado en la exportación de ONNX

Los modelos CNTK con bucles recursivos se pueden exportar a modelos ONNX con operaciones de examen.

Exportar modelos de más de 2 GB en formato ONNX

Para exportar modelos de más de 2 GB en formato ONNX, use cntk. Function API: save(self, filename, format=ModelFormat.CNTKv2, use_external_files_to_store_parameters=False) con 'format' establecido en ModelFormat.ONNX y use_external_files_to_store_parameters establecido en True. En este caso, los parámetros del modelo se guardan en archivos externos. Los modelos exportados se usarán con archivos de parámetros externos al realizar la evaluación del modelo con onnxruntime.

2018-11-26.
Netron ahora admite la visualización de archivos CNTK v1 y CNTK v2 .model .

NetronCNTKDark1NetronCNTKLight1