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

  • 10 de octubre de 2021
  • Vasilis Vryniotis
  • . Sin comentarios

Las últimas dos semanas estuvieron muy ocupadas en «PyTorch Land», ya que estamos preparando frenéticamente el lanzamiento de PyTorch v1.10 y TorchVision v0.11. En esta segunda entrega de la serie, cubriré algunas de las próximas funciones que se incluyen actualmente en la rama de lanzamiento de TorchVision.

Descargo de responsabilidad: Aunque el próximo lanzamiento está repleto de numerosas mejoras y mejoras de errores/pruebas/documentación, aquí estoy destacando nuevas funciones «orientadas al usuario» en dominios que personalmente me interesan. 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

El nuevo lanzamiento está repleto de nuevos modelos:

  • Kai Zhang ha agregado una implementación del arquitectura RegNet junto con pesas preentrenadas para 14 variantes que reproducen fielmente el documento original.
  • Recientemente he añadido una implementación de la Arquitectura EfficientNet junto con pesos preentrenados 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 TrivialAugmentuna nueva estrategia simple pero muy eficaz que parece proporcionar resultados superiores a AutoAugment.
  • he añadido el RandAumento método en aumentos automáticos.
  • He proporcionado una implementación de Mezcla y CutMix se transforma en referencias. Estos se moverán en transformaciones en la próxima versión una vez que finalice su API.

Nuevos operadores y capas

Se han incluido una serie de nuevos operadores y capas:

Referencias / Recetas de Entrenamiento

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 el lanzamiento:

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

En progreso y próximo

Hay muchas características nuevas y emocionantes en desarrollo que no se incluyeron en esta versión. Aquí hay algunos:

  • Moto Hira, Parmeet Singh Bhatia y yo hemos redactado un RFC, que propone un nuevo mecanismo para Versión del modelo y para el manejo de metadatos asociados a pesos pre-entrenados. Esto nos permitirá admitir múltiples pesos preentrenados 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” para mejorar la precisión de nuestros modelos pre-entrenados. El objetivo es lograr los mejores resultados de su clase para los modelos preentrenados más populares proporcionados por TorchVision.
  • Philip Meier y Francisco Massa están trabajando en un emocionante prototipo para el nuevo TorchVision conjunto de datos y Transforma API.
  • Prabhat Roy está trabajando en la ampliación de PyTorch Core AveragedModel clase para apoyar la promedio de los búferes además de parámetros. La falta de esta característica se informa comúnmente como un error y habilitar numerosas bibliotecas descendentes y marcos para eliminar sus implementaciones personalizadas de EMA.
  • Aditya Oke escribió una utilidad Que permite graficando los resultados de modelos Keypoint en las imágenes originales (la función no llegó al lanzamiento porque nos abrumamos y no pudimos revisarla a tiempo 🙁)
  • estoy construyendo un prototipo de utilidad FX que tiene como objetivo detectar Conexiones Residuales en arquitecturas Modelo arbitrarias y modificar la red para agregar bloques de regularización (como StochasticDepth).

Finalmente, hay algunas características nuevas en nuestra cartera de pedidos (PRs próximamente):

Espero que hayas encontrado interesante el resumen anterior. Cualquier idea sobre cómo adaptar el formato de la serie de blogs es muy bienvenida. Golpéame en LinkedIn o Gorjeo.



Fuente del artículo

Deja un comentario