Prácticas recomendadas de Ingeniería de Software para escribir código de aprendizaje automático (ML) mantenible

Prácticas recomendadas de Ingeniería de Software para código de ML mantenible

Un científico de datos perdido en un bosque lleno de código. Relacionado con el segundo y último consejo. Imagen creada con Midjourney por el autor.

Consejos avanzados de codificación para científicos de datos

A diferencia de los proyectos tradicionales de ingeniería de software, las bases de código de ML tienden a quedarse rezagadas en cuanto a calidad del código debido a su naturaleza compleja y en constante evolución, lo que lleva a un aumento de la deuda técnica y dificultades en la colaboración. Priorizar la mantenibilidad es importante para crear soluciones de ML robustas que puedan adaptarse, escalar y ofrecer valor a lo largo del tiempo.

En los últimos años, el aprendizaje automático ha causado sensación en todo el mundo, transformando industrias desde la salud hasta las finanzas y más. A medida que más organizaciones se suman a la ola del ML para descubrir nuevas posibilidades e ideas, la importancia de escribir código de ML mantenible y robusto se vuelve crucial. Al crear código de ML que sea fácil de trabajar y que resista el paso del tiempo, los equipos pueden colaborar mejor y garantizar el éxito a medida que los modelos y los proyectos crecen y se adaptan. La siguiente sección mostrará ejemplos comunes de bases de código de ML y explicará cómo manejarlos adecuadamente.

No crees monolitos

Este consejo probablemente no sea relevante para ti, ¡pero está escrito para la persona que no está al tanto de esto (hasta ahora)!

Los scripts monolíticos, también conocidos como un solo script para todo el proyecto, pueden surgir cuando reutilizas tu código experimental en producción. ¡Copiar, pegar, listo! Siempre es una mala idea crear un solo script para un proyecto. Es difícil de leer (incluso para el autor), difícil de depurar e ineficiente. No puedes agregar fácilmente nuevas características o modificar el código, porque cada vez tiene que ejecutarse todo. También es imposible agregar pruebas unitarias, porque el monolito es “la unidad completa”.

Otro problema con un solo script es la reutilización. No puedes reutilizar el código en otros proyectos, porque es tan difícil de leer.

Solo hay una razón para escribir un monolito; y es si no te gusta el colega que se hará cargo de tu trabajo. Si quieres frustrar a esa persona, es una forma fácil de lograrlo.

¿Qué hacer en su lugar? Escribe módulos y clases. Crea diferentes archivos de código que tengan un propósito específico. Cada archivo debe contener funciones o clases y métodos. Al hacer esto, el código se vuelve mucho más fácil de leer, depurar, reutilizar y probar. En el siguiente…

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

La evolución automatizada aborda tareas difíciles

El aprendizaje por refuerzo agrupa datos no etiquetados en conjuntos de similitudes, con el objetivo de maximizar las...

Aprendizaje Automático

La caja de voz de Meta la IA que habla todos los idiomas.

En un desarrollo innovador, Meta, la empresa matriz de Facebook, ha presentado su última inteligencia artificial (IA)...

Inteligencia Artificial

Los satélites más antiguos de observación de la Tierra de NOAA obtienen 'vida prolongada

La Administración Nacional Oceánica y Atmosférica utilizará un sistema basado en la nube para extender la vida de los...

Inteligencia Artificial

Herramientas de IA principales para podcasting (2023)

Pódium Una tecnología impulsada por IA llamada Pódium tiene como objetivo acelerar significativamente la postproducci...

Inteligencia Artificial

LMSYS ORG presenta Chatbot Arena una plataforma de referencia de LLM con batallas anónimas y aleatorias realizadas por la multitud

Muchos proyectos de código abierto han desarrollado modelos lingüísticos completos que se pueden entrenar para llevar...

Inteligencia Artificial

¿Qué es MLOps?' El resultado de la traducción es

MLOps es un conjunto de métodos y técnicas para implementar y mantener modelos de aprendizaje automático (ML) en prod...