Cuando la inteligencia artificial entra en juego, el papel del Control de Calidad cambia para garantizar una mejora constante.
Si su empresa ha desarrollado software anteriormente, sabrá que nunca es tan sencillo como escribir un código y ponerlo en producción. Independientemente de a quién esté destinado el software (clientes, empleados, terceros), es fundamental realizar un adecuado Control de Calidad (QA). De lo contrario, no vería las limitaciones del software e incluso podría entregar productos rotos o completamente inutilizables.
La subcontratación del aseguramiento y control de calidad es ahora un proceso central de cualquier proyecto de desarrollo de software. El proceso de diseño, construcción, prueba e implementación debe realizarse correctamente y en ese orden para lograr el éxito. Como tal, los ingenieros de control de calidad trabajan durante todo el ciclo de vida del desarrollo de software utilizando metodologías ágiles y probando todo el progreso en incrementos pequeños e iterativos, asegurándose de que el producto siempre cumpla con los objetivos adecuados.
Se esperaría que los proyectos de Inteligencia Artificial implementaran un control de calidad como este. Sin embargo, esto no suele ser el caso. Si bien el proceso iterativo estándar de 4 etapas se mantiene en su mayor parte, las operaciones impulsadas por IA pueden simplemente ponerse en producción. ¿Por qué? Debido a la naturaleza inherente de la IA: está en constante aprendizaje, está en constante evolución y por tanto requiere de una gestión continua.
Esto significa que no se realiza el control de calidad para los proyectos de IA de la misma manera que lo haría para cualquier otro proyecto. Este es el por qué.
El papel del control de calidad y las pruebas en proyectos de IA
Por definición, la IA debe probarse continuamente. Si desea desarrollar una IA que realmente funcione, no puede simplemente arrojar algunos datos de entrenamiento a un algoritmo y dar por terminado el día. La función del control de calidad y las pruebas es verificar la "utilidad" de los datos de capacitación y si hacen o no el trabajo que le pedimos que haga.
¿Cómo se hace esto? A través de técnicas sencillas de validación. Básicamente, los ingenieros de control de calidad que trabajan con IA deben seleccionar una parte de los datos de entrenamiento para usar en la etapa de validación. Luego lo colocan en un escenario elaborado y miden cómo funciona el algoritmo, cómo se comportan los datos y si la IA arroja resultados predictivos de manera precisa y consistente.
Si el equipo de control de calidad detecta errores importantes durante el proceso de validación, la IA volverá al desarrollo, tal como lo haría con cualquier otro proyecto de desarrollo de software. Después de algunos ajustes aquí y allá, la IA vuelve al control de calidad hasta que entrega los resultados esperados.
Pero a diferencia del software estándar, este no es el final del equipo de control de calidad. Utilizando algunos datos de prueba diferentes, los ingenieros de control de calidad tienen que hacer todo esto nuevamente durante un período de tiempo arbitrario, que depende de qué tan minucioso desee ser o de cuánto tiempo y recursos tenga a su disposición. Y todo esto sucede antes de que el modelo de IA entre en producción.
Esto es lo que la mayoría de la gente conoce como la “fase de entrenamiento” de la IA, donde el equipo de desarrollo prueba el algoritmo varias veces para diferentes cosas. Sin embargo, el control de calidad nunca se centra en el código real o en el algoritmo de la IA en sí: deben asumir que todo se ha implementado como debería y centrarse en probar que la IA realmente hace lo que se supone que debe hacer.
Este enfoque deja dos cosas principales con las que trabajar para los ingenieros de control de calidad: los datos de configuración de hiperparámetros y los datos de entrenamiento. El primero se prueba principalmente mediante los métodos de validación que analizamos anteriormente, pero también puede incluir otros métodos, como la validación cruzada. De hecho, cualquier tipo de proyecto de desarrollo de IA debe incluir técnicas de validación para determinar si la configuración de los hiperparámetros es correcta. Eso es sólo un hecho.
Después de eso, todo lo que queda es probar los datos de entrenamiento. Pero, ¿cómo hacen esto los ingenieros de control de calidad? No pueden simplemente probar la calidad de los datos, también necesitan probar la integridad de los datos y hacer muchas preguntas para ayudarlos a medir los resultados. Estos son siempre un buen punto de partida:
- ¿El modelo de entrenamiento está diseñado para representar con precisión la realidad que el algoritmo intenta predecir?
- ¿Existe alguna posibilidad de que los sesgos humanos o basados en datos estén influyendo en los datos de entrenamiento de alguna manera?
- ¿Existen puntos ciegos que expliquen por qué algunos aspectos del algoritmo funcionan en el entrenamiento pero no funcionan como se esperaba en contextos del mundo real?
Probar la calidad de sus datos de entrenamiento puede generar muchas más preguntas como estas a medida que avanza el proyecto. Tenga en cuenta que para responder a estas preguntas con precisión, su equipo de control de calidad necesitará acceso a muestras representativas de datos del mundo real y una comprensión integral de qué es el sesgo de la IA y cómo se relaciona con la ética de la IA.
La inteligencia artificial debe probarse en producción
En resumen, su equipo de control de calidad debe saber cuándo su software de inteligencia artificial está validado correctamente, cuándo los datos de entrenamiento cumplen con los estándares y cuándo se ha demostrado que el algoritmo entrega consistentemente los resultados esperados.
Sin embargo, cada proyecto de IA siempre tendrá una forma única de gestionar y procesar datos y, como todos sabemos, los datos siempre están creciendo y cambiando. Es por eso que el enfoque de control de calidad para el desarrollo de la IA se extiende a la etapa de producción.
Una vez que todo lo anterior reciba luz verde, Control de Calidad comenzará un nuevo ciclo, probando el rendimiento y el comportamiento de la IA a medida que recibe nuevos datos del mundo real. Independientemente del tamaño o la complejidad de su proyecto de IA, siempre desea monitorear de cerca la evolución de su IA. Y la mejor manera de hacerlo es mediante un adecuado proceso de control de calidad.
Hoy en día, esto se conoce como “Operaciones de aprendizaje automático” o, más sucintamente, Operaciones de ML. Esto implica control de versiones, gestión de software, ciberseguridad, procesos de iteración y etapas de descubrimiento donde los ingenieros de control de calidad manejan todo lo que pueda suceder una vez que la IA esté en producción. Espero que este artículo te haya ayudado a ampliar tu perspectiva sobre el control de calidad y la inteligencia artificial. ¡Buena suerte!
Si le gustó esto, asegúrese de consultar nuestros otros artículos sobre IA.
- ¿Cómo está redefiniendo GPT-3 la investigación de IA y los chatbots?
- Cómo las soluciones low-code/no-code refuerzan la IA
- ¿Cómo debería regularse la IA?
- Cómo crear un sistema de IA en 5 pasos
- El impacto de la IA en las pruebas de software: desafíos y oportunidades