Logotipo clearml 16x9

Proyectos de aprendizaje automático bien ejecutados: Nuestra historia con ClearML

Si has trabajado en proyectos de aprendizaje automático en sus inicios, probablemente conozcas esa sensación. Tienes scripts de código por todas partes, varias hojas de cálculo con puntuaciones y parámetros anotados, y archivos con nombres aleatorios que contienen ponderaciones del modelo. 

A medida que nuestro equipo crecía y nuestros proyectos de IA se volvían más ambiciosos, nos dimos cuenta de que los métodos sencillos de las hojas de cálculo ya no eran suficientes. Necesitábamos organizarnos. Necesitábamos fiabilidad y una visión clara de nuestro trabajo. Esta es la historia de cómo, hace unos años, encontramos una herramienta clave que nos ayudó: ClearML Y lo hemos estado usando desde entonces.

Necesitábamos una herramienta que nos permitiera hacer un seguimiento de nuestros experimentos y artefactos y, sobre todo, que pusiera orden en todo nuestro proceso de desarrollo de IA. Tras analizar varias opciones, ClearML se destacó como la mejor. Tenía todas las funciones que necesitábamos, era fácil de configurar y prometía ayudarnos a gestionar nuestro trabajo de principio a fin. Decidimos adoptarla y el impacto ha sido enorme.

A continuación, analizamos con más detalle las principales maneras en que ClearML ha mejorado nuestro flujo de trabajo.

Pilar 1: Obtener los mismos resultados siempre (Reproducibilidad)

En el aprendizaje automático, es fundamental asegurarse de que los resultados sean reproducibles. De lo contrario, solucionar problemas se convierte en una pesadilla, trabajar en equipo es difícil y resulta difícil confiar plenamente en el propio trabajo.

El desafío que se presenta ante ClearML: Antes, repetir un experimento implicaba un proceso largo. Teníamos varias hojas de cálculo que se multiplicaban con cada proyecto que iniciábamos, los parámetros utilizados para ejecutar el entrenamiento debían anotarse manualmente y, una vez que el entrenamiento estaba en marcha, no teníamos una forma sencilla de verificar qué parámetros se habían utilizado. 

Cómo lo solucionó ClearML: ClearML actúa como un sistema automático de toma de notas para cada experimento. Guarda automáticamente:

  • Commit exacto de Git: Esto incluye la versión exacta de Git e, increíblemente, incluso las diferencias de Git. Ya no tendrás que preguntarte si una "pequeña prueba" formaba parte de la versión final.
  • La configuración de entrenamiento: ClearML recopila un volcado YAML completo de nuestra configuración de entrenamiento.
  • Todos los ajustes: Recuerda todos los ajustes y parámetros utilizados para ejecutar el experimento (por ejemplo, el número de GPU utilizadas, la unidad de GPU utilizada o la versión de Python).

El impacto: Ahora, repetir un experimento es tan sencillo como hacer clic en un botón de “clonar”. Esto ha sido de gran ayuda para:

  • Cómo integrar a los nuevos miembros del equipo: Pueden analizar fácilmente experimentos antiguos y comprender cómo se realizaron.
  • Detección de errores: Si un modelo no funciona correctamente, podemos volver al experimento exacto y ver qué salió mal.

Pilar 2: Ver exactamente lo que sucedió (Visibilidad total)

Para crear mejores modelos, es necesario comprender por qué un experimento arrojó un resultado determinado. Introducir datos y obtener un resultado sin tener idea de las métricas del modelo es como caminar a ciegas.

El desafío que se presenta ante ClearML: Intentamos usar nuestras propias herramientas, muy sencillas, para comparar métricas. Si bien, tras un breve entrenamiento, la herramienta cumplió su función, fue engorroso, y analizar las tendencias de rendimiento a lo largo del tiempo requirió mucho trabajo. Descifrar qué código y conjunto de datos generaban un resultado específico a menudo se convertía en una labor de detective.

gestor de experimentos clearml

Cómo lo solucionó ClearML: ClearML nos proporciona un panel de control único y fácil de usar que actúa como centro de mando para todo nuestro entrenamiento en aprendizaje automático.

  • Seguimiento automático: ClearML guarda automáticamente todos los datos numéricos, gráficos, imágenes y textos importantes que aparecen durante el entrenamiento (incluso los registros de entrenamiento sin procesar).
  • Comparación sencilla: Podemos visualizar fácilmente todos nuestros experimentos en una sola página y comparar las diferencias entre ellos, lo que facilita detectar hasta los cambios más pequeños. Podemos filtrar por métrica para comparar los resultados y encontrar los mejores.
  • Gráficos claros: Podemos realizar un seguimiento del rendimiento de nuestro modelo mediante gráficos integrados, que nos permiten ver cómo se comparan los diferentes experimentos entre sí.

El impacto: Esta transparencia nos ha permitido:

  • Soluciona los problemas más rápido: Podemos detectar rápidamente la diferencia entre una ejecución fallida y una exitosa.
  • Trabajemos mejor juntos: Los miembros del equipo pueden compartir fácilmente su trabajo con todo el contexto, de modo que todos estén al tanto de la situación (un solo enlace a ClearML a veces equivale a más de mil palabras).
  • Toma decisiones más inteligentes: Gracias a las excelentes herramientas de seguimiento y comparación, podemos elegir con confianza los mejores modelos para seguir adelante.

Pilar 3: Colocar los materiales de capacitación en el lugar correcto (Gestión sencilla)

El entrenamiento de aprendizaje automático genera muchos archivos: pesos del modelo, gráficos, datos de depuración, muestras, informes y muchos más, dependiendo del tipo de entrenamiento que se realice. Mantenerlos todos organizados es fundamental para un buen funcionamiento.

El desafío que se presenta ante ClearML: Nuestros archivos estaban ocultos en el abismo de los depósitos en la nube. Era fácil perder los modelos, ya que cada entrenamiento generaba decenas de archivos con nombres crípticos. Esto provocaba confusión, errores accidentales y dificultaba encontrar el archivo correcto cuando lo necesitábamos.

Cómo lo solucionó ClearML: ClearML garantiza que tus archivos estén disponibles cuando los necesites.

  • Almacenamiento central: Todos nuestros artefactos se almacenan en un único lugar; podemos gestionarlos fácilmente a través de la interfaz de usuario de ClearML.
  • Facilidad de navegación: Todos los gráficos, las imágenes de series temporales y de depuración, entre otros, están fácilmente disponibles para su consulta. Esto nos brinda tranquilidad y la posibilidad de acceder rápidamente a los archivos más importantes.

El impacto: Este enfoque organizado para la gestión de archivos ha dado como resultado:

  • Menos desorden y confusión: Se acabaron las dudas sobre cuál es el archivo correcto.
  • Mejor trabajo en equipo: Todos los miembros del equipo pueden encontrar y utilizar con confianza los materiales de las capacitaciones impartidas por otros ingenieros.

Panorama general: Nuestro trabajo ahora es más claro, más rápido y más fiable.

Usar ClearML fue mucho más que simplemente añadir una nueva herramienta. Nos ayudó a desarrollar mejores hábitos de trabajo. Gracias a que la plataforma gestiona gran parte del seguimiento y la organización automáticamente, nuestro equipo dedica menos tiempo al registro manual de datos y más tiempo a generar nuevas ideas.

Ahora experimentamos:

  • Ciclos de desarrollo más rápidos.
  • Menos tiempo dedicado a solucionar problemas y buscar errores tipográficos.
  • Mejor trabajo en equipo e intercambio de conocimientos.
  • Mayor confianza en nuestros modelos y en cómo los construimos.

ClearML se ha convertido en una herramienta esencial para nuestro equipo de aprendizaje automático. Aporta un nivel de claridad y eficiencia a nuestro trabajo que antes no podíamos alcanzar. Si tu equipo tiene dificultades con los aspectos más complejos del aprendizaje automático y quieres mejorar tu proceso, te recomendamos encarecidamente que le eches un vistazo a ClearML.

Compartir artículo:

También te puede gustar

Tu futuro en la robótica comienza aquí.

Ponte en contacto con Nomagic para descubrir cómo nuestra tecnología innovadora puede llevar tus procesos de logística al siguiente nivel.