Un adelanto de TorchVision v0.11 - Memorias de un desarrollador de TorchVision - 2

Un adelanto de TorchVision v0.11 - Memorias de un desarrollador de TorchVision - 2

Un adelanto de TorchVision v0.11 – Memorias de un desarrollador de TorchVision – 2 PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.
Un adelanto de TorchVision v0.11 - Memorias de un desarrollador de TorchVision - 2

Las últimas dos semanas estuvieron muy ocupadas en “PyTorch Land” mientras preparamos frenéticamente el lanzamiento de PyTorch v1.10 y TorchVision v0.11. En esta segunda entrega de las series, Cubriré algunas de las próximas funciones que se incluyen actualmente en la rama de lanzamiento de TorchVision.

Cláusula de exención de responsabilidades: Aunque la próxima versión está repleta de numerosas mejoras y mejoras de errores / pruebas / documentación, aquí estoy destacando nuevas funciones "orientadas al usuario" en los dominios que me interesan personalmente. Después de escribir la publicación del blog, también noté un sesgo hacia las características que revisé, escribí o seguí de cerca su desarrollo. Cubrir (o no cubrir) una característica no dice nada sobre su importancia. Las opiniones expresadas son únicamente mías.

Nuevos modelos

La nueva versión está repleta de nuevos modelos:

  • Kai Zhang ha agregado una implementación del Arquitectura RegNet junto con pesas previamente entrenadas para Variantes de 14 que reproducen fielmente el papel original.
  • Recientemente agregué una implementación del Arquitectura EfficientNet junto con pesos pre-entrenados para las variantes B0-B7 proporcionados por Luke Melas-Kyriazi y Ross Wightman.

Nuevos aumentos de datos

Se han agregado algunas técnicas nuevas de aumento de datos a la última versión:

  • Samuel Gabriel ha contribuido TrivialAumento, una nueva estrategia simple pero altamente efectiva que parece proporcionar resultados superiores a AutoAugment.
  • He agregado el RandAumento método en aumentos automáticos.
  • He proporcionado una implementación de Mixup y CutMix se transforma en referencias. Estos se moverán en transformaciones en la próxima versión una vez que se finalice su API.

Nuevos operadores y capas

Se han incluido varios operadores y capas nuevos:

Referencias / Recetas de formación

Aunque la mejora de nuestros scripts de referencia es un esfuerzo continuo, aquí hay algunas características nuevas incluidas en la próxima versión:

Otras mejoras

Aquí hay algunas otras mejoras notables agregadas en la versión:

  • Alexander Soare y Francisco Massa han desarrollado un Utilidad basada en FX que permite extraer características intermedias arbitrarias de arquitecturas modelo.
  • Nikita Shulga ha agregado soporte de CUDA 11.3 a TorchVision.
  • Zhongkai Zhu ha arreglado el problemas de dependencia de JPEG lib (este problema ha causado grandes quebraderos de cabeza a muchos de nuestros usuarios).

En progreso y siguiente

Hay muchas funciones nuevas y emocionantes en desarrollo que no se incluyeron en esta versión. A continuación, presentamos algunos:

  • Moto Hira, Parmeet Singh Bhatia y yo hemos redactado un RFC, que propone un nuevo mecanismo para Control de versiones del modelo y para el manejo de metadatos asociados a pesos previamente entrenados. Esto nos permitirá admitir múltiples pesos previamente entrenados para cada modelo y adjuntar información asociada como etiquetas, transformaciones de preprocesamiento, etc. a los modelos.
  • Actualmente estoy trabajando en el uso de las primitivas agregadas por el "Baterias incluidas"Proyecto con el fin de mejorar la precisión de nuestra modelos pre-entrenados. El objetivo es lograr los mejores resultados de su clase para los modelos pre-entrenados más populares proporcionados por TorchVision.
  • Philip Meier y Francisco Massa están trabajando en un prototipo emocionante para el nuevo TorchVision Conjunto de datos y Transforma API.
  • Prabhat Roy está trabajando para extender PyTorch Core AveragedModel clase para apoyar el promediación de los búferes además de los parámetros. La falta de esta característica se informa comúnmente como un error y habilitar numerosas bibliotecas posteriores y marcos para eliminar sus implementaciones personalizadas de EMA.
  • Aditya Oke escribió una utilidad Que permite trazando los resultados de los modelos de Keypoint en las imágenes originales (la función no llegó al lanzamiento porque nos inundaron y no pudimos revisarla a tiempo 🙁)
  • Estoy construyendo un prototipo de utilidad FX que tiene como objetivo detectar conexiones residuales en arquitecturas de modelo arbitrarias y modificar la red para agregar bloques de regularización (como StochasticDepth).

Por último, hay algunas características nuevas en nuestra cartera de pedidos (las relaciones públicas estarán disponibles próximamente):

Espero que el resumen anterior le haya resultado interesante. Cualquier idea sobre cómo adaptar el formato de la serie de blogs es bienvenida. Golpéame en Etiqueta LinkedIn or Twitter.

Sello de tiempo:

Mas de Caja de datos