Saltar al contenido

Gu铆a para el ensayo de modelos

Introducci贸n

Despu茅s de entrenar y evaluar tu modelo, es hora de probarlo. La prueba del modelo consiste en evaluar su rendimiento en situaciones reales. Las pruebas tienen en cuenta factores como la precisi贸n, la fiabilidad, la imparcialidad y la facilidad de comprensi贸n de las decisiones del modelo. El objetivo es asegurarse de que el modelo funciona seg煤n lo previsto, ofrece los resultados esperados y se ajusta al objetivo general de tu aplicaci贸n o proyecto.

Model testing is quite similar to model evaluation, but they are two distinct steps in a computer vision project. Model evaluation involves metrics and plots to assess the model's accuracy. On the other hand, model testing checks if the model's learned behavior is the same as expectations. In this guide, we'll explore strategies for testing your computer vision models.

Prueba de modelos Vs. Evaluaci贸n de modelos

En primer lugar, vamos a entender la diferencia entre la evaluaci贸n y la comprobaci贸n de modelos con un ejemplo.

Suppose you have trained a computer vision model to recognize cats and dogs, and you want to deploy this model at a pet store to monitor the animals. During the model evaluation phase, you use a labeled dataset to calculate metrics like accuracy, precision, recall, and F1 score. For instance, the model might have an accuracy of 98% in distinguishing between cats and dogs in a given dataset.

Tras la evaluaci贸n, pruebas el modelo utilizando im谩genes de una tienda de animales para ver lo bien que identifica a perros y gatos en condiciones m谩s variadas y realistas. Comprueba si puede etiquetar correctamente a perros y gatos cuando est谩n en movimiento, en diferentes condiciones de iluminaci贸n o parcialmente ocultos por objetos como juguetes o muebles. La prueba de modelos comprueba que el modelo se comporta como se espera fuera del entorno de evaluaci贸n controlado.

Preparaci贸n para el ensayo con modelo

Computer vision models learn from datasets by detecting patterns, making predictions, and evaluating their performance. These datasets are usually divided into training and testing sets to simulate real-world conditions. Training data teaches the model while testing data verifies its accuracy.

Aqu铆 tienes dos puntos que debes tener en cuenta antes de probar tu modelo:

  • Representaci贸n realista: Los datos de prueba no vistos previamente deben ser similares a los datos que el modelo tendr谩 que manejar cuando se implante. Esto ayuda a obtener una comprensi贸n realista de las capacidades del modelo.
  • Tama帽o suficiente: El tama帽o del conjunto de datos de prueba debe ser lo suficientemente grande como para proporcionar informaci贸n fiable sobre el rendimiento del modelo.

Probar tu modelo de visi贸n artificial

He aqu铆 los pasos clave que debes dar para probar tu modelo de visi贸n artificial y comprender su rendimiento.

  • Ejecutar predicciones: Utiliza el modelo para hacer predicciones sobre el conjunto de datos de prueba.
  • Comparar predicciones: Comprueba lo bien que coinciden las predicciones del modelo con las etiquetas reales (ground truth).
  • Calcula las m茅tricas de rendimiento: Calcula m茅 tricas como la exactitud, la precisi贸n, la recuperaci贸n y la puntuaci贸n F1 para comprender los puntos fuertes y d茅biles del modelo. Las pruebas se centran en c贸mo reflejan estas m茅tricas el rendimiento en el mundo real.
  • Visualiza los resultados: Crea ayudas visuales como matrices de confusi贸n y curvas ROC. Te ayudar谩n a detectar 谩reas concretas en las que el modelo podr铆a no funcionar bien en aplicaciones pr谩cticas.

A continuaci贸n, se pueden analizar los resultados de las pruebas:

  • Im谩genes mal clasificadas: Identifica y revisa las im谩genes que el modelo ha clasificado mal para comprender en qu茅 se equivoca.
  • An谩lisis de errores: Realiza un an谩lisis exhaustivo de los errores para comprender los tipos de errores (por ejemplo, falsos positivos frente a falsos negativos) y sus posibles causas.
  • Sesgo e imparcialidad: Comprueba si hay sesgos en las predicciones del modelo. Aseg煤rate de que el modelo funciona igual de bien en los distintos subconjuntos de datos, especialmente si incluye atributos sensibles como la raza, el sexo o la edad.

Testing Your YOLO11 Model

To test your YOLO11 model, you can use the validation mode. It's a straightforward way to understand the model's strengths and areas that need improvement. Also, you'll need to format your test dataset correctly for YOLO11. For more details on how to use the validation mode, check out the Model Validation docs page.

Using YOLO11 to Predict on Multiple Test Images

If you want to test your trained YOLO11 model on multiple images stored in a folder, you can easily do so in one go. Instead of using the validation mode, which is typically used to evaluate model performance on a validation set and provide detailed metrics, you might just want to see predictions on all images in your test set. For this, you can use the prediction mode.

Diferencia entre los modos de validaci贸n y predicci贸n

  • Modo Validaci贸n: Se utiliza para evaluar el rendimiento del modelo comparando las predicciones con etiquetas conocidas (verdad b谩sica). Proporciona m茅tricas detalladas como la exactitud, la precisi贸n, el recuerdo y la puntuaci贸n F1.
  • Modo Predicci贸n: Se utiliza para ejecutar el modelo sobre datos nuevos, no vistos, para generar predicciones. No proporciona m茅tricas de rendimiento detalladas, pero te permite ver c贸mo funciona el modelo en im谩genes del mundo real.

Running YOLO11 Predictions Without Custom Training

If you are interested in testing the basic YOLO11 model to understand whether it can be used for your application without custom training, you can use the prediction mode. While the model is pre-trained on datasets like COCO, running predictions on your own dataset can give you a quick sense of how well it might perform in your specific context.

Overfitting and Underfitting in Machine Learning

Al probar un modelo de aprendizaje autom谩tico, especialmente en visi贸n por ordenador, es importante tener cuidado con el sobreajuste y el infraajuste. Estos problemas pueden afectar significativamente a lo bien que funciona tu modelo con nuevos datos.

Sobreajuste

El sobreajuste se produce cuando tu modelo aprende demasiado bien los datos de entrenamiento, incluyendo el ruido y los detalles que no se generalizan a los nuevos datos. En visi贸n por ordenador, esto significa que tu modelo puede funcionar muy bien con las im谩genes de entrenamiento, pero tener problemas con las nuevas.

Signos de sobreajuste

  • High Training Accuracy, Low Validation Accuracy: If your model performs very well on training data but poorly on validation or test data, it's likely overfitting.
  • Inspecci贸n visual: A veces, puedes observar un ajuste excesivo si tu modelo es demasiado sensible a peque帽os cambios o detalles irrelevantes en las im谩genes.

Insuficiente

La inadaptaci贸n se produce cuando tu modelo no puede captar los patrones subyacentes en los datos. En visi贸n por ordenador, un modelo insuficientemente ajustado puede incluso no reconocer correctamente los objetos en las im谩genes de entrenamiento.

Signos de inadaptaci贸n

  • Baja precisi贸n de entrenamiento: Si tu modelo no puede alcanzar una alta precisi贸n en el conjunto de entrenamiento, puede que est茅 infraajustado.
  • Clasificaci贸n visual err贸nea: Un fallo sistem谩tico en el reconocimiento de caracter铆sticas u objetos obvios sugiere un ajuste insuficiente.

Equilibrar la sobreadaptaci贸n y la inadaptaci贸n

La clave est谩 en encontrar un equilibrio entre el sobreajuste y el infraajuste. Lo ideal es que un modelo funcione bien tanto en los conjuntos de datos de entrenamiento como en los de validaci贸n. Supervisar regularmente el rendimiento de tu modelo mediante m茅tricas e inspecciones visuales, junto con aplicar las estrategias adecuadas, puede ayudarte a conseguir los mejores resultados.

Visi贸n general de la sobreadaptaci贸n y la inadaptaci贸n

Fuga de Datos en Visi贸n por Computador y C贸mo Evitarla

Al probar tu modelo, algo importante que debes tener en cuenta es la fuga de datos. La fuga de datos se produce cuando se utiliza accidentalmente informaci贸n ajena al conjunto de datos de entrenamiento para entrenar el modelo. El modelo puede parecer muy preciso durante el entrenamiento, pero no funcionar谩 bien con datos nuevos y desconocidos cuando se produzca una fuga de datos.

Por qu茅 se produce la fuga de datos

La fuga de datos puede ser dif铆cil de detectar y a menudo procede de sesgos ocultos en los datos de entrenamiento. He aqu铆 algunas formas habituales de que se produzca en la visi贸n por ordenador:

  • Sesgo de la c谩mara: Los diferentes 谩ngulos, la iluminaci贸n, las sombras y los movimientos de la c谩mara pueden introducir patrones no deseados.
  • Sesgo de superposici贸n: Los logotipos, las marcas de tiempo u otras superposiciones en las im谩genes pueden inducir a error al modelo.
  • Sesgo de fuentes y objetos: Las fuentes u objetos espec铆ficos que aparecen con frecuencia en determinadas clases pueden sesgar el aprendizaje del modelo.
  • Spatial Bias: Imbalances in foreground-background, bounding box distributions, and object locations can affect training.
  • Sesgo de etiqueta y dominio: Las etiquetas incorrectas o los cambios en los tipos de datos pueden provocar fugas.

Detectar la fuga de datos

Para encontrar fugas de datos, puedes

  • Comprueba el rendimiento: Si los resultados del modelo son sorprendentemente buenos, puede que tenga fugas.
  • F铆jate en la importancia de las caracter铆sticas: Si una caracter铆stica es mucho m谩s importante que otras, podr铆a indicar una fuga.
  • Inspecci贸n visual: Comprueba que las decisiones del modelo tienen sentido intuitivamente.
  • Verifica la Separaci贸n de Datos: Aseg煤rate de que los datos se han dividido correctamente antes de cualquier procesamiento.

Evitar la fuga de datos

Para evitar la fuga de datos, utiliza un conjunto de datos diverso con im谩genes o v铆deos de diferentes c谩maras y entornos. Revisa cuidadosamente tus datos y comprueba que no haya sesgos ocultos, como que todas las muestras positivas se hayan tomado a una hora concreta del d铆a. Evitar la fuga de datos ayudar谩 a que tus modelos de visi贸n por ordenador sean m谩s fiables y eficaces en situaciones del mundo real.

Qu茅 viene despu茅s del ensayo con modelo

Tras probar tu modelo, los siguientes pasos dependen de los resultados. Si tu modelo funciona bien, puedes desplegarlo en un entorno real. Si los resultados no son satisfactorios, tendr谩s que introducir mejoras. Esto podr铆a implicar analizar los errores, recopilar m谩s datos, mejorar la calidad de los datos, ajustar los hiperpar谩metros y volver a entrenar el modelo.

脷nete a la conversaci贸n sobre IA

Formar parte de una comunidad de entusiastas de la visi贸n por ordenador puede ayudar a resolver problemas y a aprender de forma m谩s eficaz. Aqu铆 tienes algunas formas de conectar, buscar ayuda y compartir tus ideas.

Recursos comunitarios

  • GitHub Issues: Explore the YOLO11 GitHub repository and use the Issues tab to ask questions, report bugs, and suggest new features. The community and maintainers are very active and ready to help.
  • Ultralytics Servidor Discord: 脷nete al servidor Discord deUltralytics para chatear con otros usuarios y desarrolladores, obtener ayuda y compartir tus experiencias.

Documentaci贸n oficial

  • Ultralytics YOLO11 Documentation: Check out the official YOLO11 documentation for detailed guides and helpful tips on various computer vision projects.

Estos recursos te ayudar谩n a superar los retos y a mantenerte al d铆a de las 煤ltimas tendencias y pr谩cticas dentro de la comunidad de visi贸n por ordenador.

En resumen

Building trustworthy computer vision models relies on rigorous model testing. By testing the model with previously unseen data, we can analyze it and spot weaknesses like overfitting and data leakage. Addressing these issues before deployment helps the model perform well in real-world applications. It's important to remember that model testing is just as crucial as model evaluation in guaranteeing the model's long-term success and effectiveness.

PREGUNTAS FRECUENTES

驴Cu谩les son las principales diferencias entre la evaluaci贸n de modelos y la comprobaci贸n de modelos en visi贸n por ordenador?

Model evaluation and model testing are distinct steps in a computer vision project. Model evaluation involves using a labeled dataset to compute metrics such as accuracy, precision, recall, and F1 score, providing insights into the model's performance with a controlled dataset. Model testing, on the other hand, assesses the model's performance in real-world scenarios by applying it to new, unseen data, ensuring the model's learned behavior aligns with expectations outside the evaluation environment. For a detailed guide, refer to the steps in a computer vision project.

How can I test my Ultralytics YOLO11 model on multiple images?

To test your Ultralytics YOLO11 model on multiple images, you can use the prediction mode. This mode allows you to run the model on new, unseen data to generate predictions without providing detailed metrics. This is ideal for real-world performance testing on larger image sets stored in a folder. For evaluating performance metrics, use the validation mode instead.

驴Qu茅 debo hacer si mi modelo de visi贸n artificial muestra signos de ajuste excesivo o insuficiente?

Para abordar el sobreajuste:

  • Regularization techniques like dropout.
  • Aumenta el tama帽o del conjunto de datos de entrenamiento.
  • Simplifica la arquitectura del modelo.

Para abordar la inadaptaci贸n:

  • Utiliza un modelo m谩s complejo.
  • Proporciona funciones m谩s relevantes.
  • Increase training iterations or epochs.

Revisa las im谩genes mal clasificadas, realiza un an谩lisis exhaustivo de los errores y controla regularmente las m茅tricas de rendimiento para mantener un equilibrio. Para m谩s informaci贸n sobre estos conceptos, explora nuestra secci贸n sobre Sobreadaptaci贸n e Inadaptaci贸n.

驴C贸mo detectar y evitar la fuga de datos en visi贸n artificial?

Para detectar fugas de datos:

  • Comprueba que el rendimiento de la prueba no es inusualmente alto.
  • Comprueba la importancia de las caracter铆sticas para obtener informaci贸n inesperada.
  • Revisa intuitivamente las decisiones del modelo.
  • Aseg煤rate de que la divisi贸n de los datos es correcta antes de procesarlos.

Para evitar la fuga de datos:

  • Utiliza diversos conjuntos de datos con varios entornos.
  • Revisa cuidadosamente los datos en busca de sesgos ocultos.
  • Aseg煤rate de que no haya solapamiento de informaci贸n entre los conjuntos de entrenamiento y de prueba.

Para conocer estrategias detalladas sobre c贸mo evitar la fuga de datos, consulta nuestra secci贸n sobre Fuga de Datos en Visi贸n por Computador.

驴Qu茅 pasos debo dar despu茅s de probar mi modelo de visi贸n artificial?

Tras la prueba, si el rendimiento del modelo cumple los objetivos del proyecto, procede a su implantaci贸n. Si los resultados son insatisfactorios, considera:

  • An谩lisis de errores.
  • Recopilar datos m谩s diversos y de mayor calidad.
  • Hyperparameter tuning.
  • Reentrenar el modelo.

Obt茅n informaci贸n de la secci贸n Prueba de Modelos Vs. Evaluaci贸n de modelos para perfeccionar y mejorar la eficacia de los modelos en aplicaciones reales.

How do I run YOLO11 predictions without custom training?

You can run predictions using the pre-trained YOLO11 model on your dataset to see if it suits your application needs. Utilize the prediction mode to get a quick sense of performance results without diving into custom training.


馃搮 Created 3 months ago 鉁忥笍 Updated 10 days ago

Comentarios