Optimice los modelos de aprendizaje automático con la poda de modelos. Consiga una inferencia más rápida, un menor uso de memoria y eficiencia energética para implantaciones con recursos limitados.
La poda de modelos es una técnica de aprendizaje automático que se utiliza para optimizar los modelos entrenados reduciendo su tamaño y complejidad. Consiste en identificar y eliminar los parámetros menos importantes, como los pesos del modelo o las conexiones dentro de una red neuronal (NN), que contribuyen mínimamente al rendimiento general del modelo. El objetivo principal es crear modelos más pequeños y rápidos que requieran menos potencia de cálculo y memoria, a menudo sin una disminución significativa de la precisión. Este proceso es una aplicación específica del concepto más amplio de poda aplicado directamente a los modelos de ML, haciéndolos más eficientes para su despliegue.
El principal motor de la poda de modelos es la eficiencia. Los modelos modernos de aprendizaje profundo (deep learning, DL), especialmente en campos como la visión por ordenador (computer vision, CV), pueden ser extremadamente grandes e intensivos desde el punto de vista computacional. Esto plantea retos para la implementación de modelos, especialmente en dispositivos con recursos limitados, como smartphones, sistemas integrados o en escenarios de computación periférica. La poda de modelos ayuda a resolver estos problemas:
Las técnicas de poda de modelos varían, pero generalmente se dividen en categorías basadas en la granularidad de lo que se elimina:
La poda puede producirse después de que el modelo esté completamente entrenado o integrarse en el proceso de entrenamiento. Después de la poda, los modelos suelen someterse a un ajuste fino (más entrenamiento en la arquitectura más pequeña) para recuperar el rendimiento perdido durante la eliminación de parámetros. Frameworks como PyTorch proporcionan utilidades para implementar varios métodos de poda, como se muestra en el tutorial de poda de PyTorch.
La poda de modelos es valiosa en muchos ámbitos de la IA:
La poda de modelos es una de las diversas técnicas utilizadas para la optimización de modelos. Es distinta de, pero a menudo complementaria de:
Estas técnicas pueden combinarse; por ejemplo, un modelo puede podarse primero y cuantificarse después para obtener la máxima eficacia. Los modelos optimizados suelen exportarse a formatos estándar como ONNX(opciones de exportación de Ultralytics) para una mayor compatibilidad de despliegue. Plataformas como Ultralytics HUB proporcionan entornos para la gestión de modelos, conjuntos de datos(como COCO), y la racionalización de la ruta hacia el despliegue optimizado.