Optimiza los modelos de aprendizaje automático con la poda de modelos. Consigue una inferencia más rápida, 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 (AM) que se utiliza para optimizar los modelos entrenados reduciendo su tamaño y complejidad. Se trata de 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 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 (AD ), especialmente en campos como la visión por ordenador (VC), pueden ser extremadamente grandes e intensivos desde el punto de vista computacional. Esto plantea retos para el despliegue de los modelos, sobre todo en dispositivos con recursos limitados, como teléfonos inteligentes, sistemas integrados o en escenarios de computación de borde. 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é totalmente 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. Los marcos como PyTorch proporcionan utilidades para aplicar varios métodos de poda, como se muestra en el Tutorial de poda dePyTorch .
La poda de modelos es valiosa en muchos dominios 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 podría podarse primero y luego cuantificarse para obtener la máxima eficacia. Los modelos optimizados suelen exportarse a formatos estándar como ONNXUltralytics opciones de exportación deUltralytics ) para una amplia compatibilidad de despliegue. Plataformas como Ultralytics HUB proporcionan entornos para gestionar modelos, conjuntos de datos(como COCO), y agilizar el camino hacia el despliegue optimizado.