Machine Learning centrado en el ser humano

A medida que el aprendizaje automático (ML) afecta cada vez más a diversos grupos de interés y grupos sociales, se ha vuelto necesario que una gama más amplia de desarrolladores, incluso aquellos sin capacitación formal en ML, puedan adaptar y aplicar ML a sus propios problemas. En los últimos años, se han realizado muchos esfuerzos para reducir la barrera del aprendizaje, abstrayendo el comportamiento complejo del modelo en API de nivel superior. Por ejemplo, Google ha estado desarrollando TensorFlow.js, un marco de código abierto que permite a los desarrolladores escribir código ML en JavaScript para que se ejecute directamente en los navegadores web.

En «Software Developers Learning Machine Learning: Motivations, Hurdles, and Desires», que recibió un premio al mejor artículo en la conferencia IEEE sobre Lenguajes visuales y computación centrada en el ser humano (VL ​​/ HCC), Google compartió sus resultados de una encuesta a gran escala de 645 personas que usaron TensorFlow.js. La gran mayoría de los encuestados eran desarrolladores de software o web, que eran bastante nuevos en el aprendizaje automático y generalmente no usaban ML como parte de su trabajo principal.

¿Con qué luchan más los desarrolladores cuando usan frameworks de ML?


Curiosamente, el desafío más común reportado por los desarrolladores no fue la falta de una API clara, sino su propia falta de comprensión conceptual de ML, lo que obstaculizó su capacidad para usar con éxito los frameworks de ML. Estos obstáculos iban desde las etapas iniciales de elegir un buen problema al que podrían aplicar TensorFlow.js (por ejemplo, los encuestados informaron que no sabían «a qué aplicar ML, dónde ML tiene éxito, y dónde no»), a crear la arquitectura de una red neuronal (por ejemplo, «¿cuántas unidades [debo] poner al agregar capas al modelo?») y saber cómo establecer y ajustar los parámetros durante el entrenamiento del modelo (por ejemplo, «decidir qué optimizador o funciones de pérdida usar»). «). Sin una comprensión conceptual de cómo los diferentes parámetros afectan los resultados, los desarrolladores se sintieron abrumados por el espacio aparentemente infinito de parámetros para sintonizar al depurar modelos ML.

Sin suficiente apoyo conceptual, a los desarrolladores también les resultó difícil transferir las lecciones aprendidas de los tutoriales API de «hola mundo» a sus propios problemas del mundo real. Si bien los tutoriales proporcionan sintaxis para implementar modelos específicos, generalmente no proporcionan el andamiaje conceptual subyacente necesario para generalizar más allá de ese problema específico.

¿Qué quieren los desarrolladores?

Un deseo común era tener acceso a bibliotecas de modelos canónicos de ML, para que pudieran modificar una plantilla existente en lugar de crear nuevas desde cero. Actualmente, los modelos pre-entrenados se están haciendo más disponibles en muchas plataformas de ML, incluido TensorFlow.js. Sin embargo, en su forma actual, estos modelos no proporcionan soporte explícito para el consumo de principiantes.

Los desarrolladores también deseaban que los frameworks pudieran proporcionar las mejores prácticas de ML, es decir, consejos y trucos prácticos que podrían usar al diseñar o depurar modelos. Si bien los expertos en ML pueden adquirir estrategias heurísticas y recurrentes a través de años de prueba y error dedicados, la simple decisión de «¿qué parámetro debería intentar ajustar primero?» puede ser abrumador para los desarrolladores que no son expertos en ML.

Finalmente, a pesar de que los marcos de ML no son plataformas de aprendizaje tradicionales, los desarrolladores de software los están tratando como vehículos livianos para aprender haciendo. Por ejemplo, un encuestado explicó que «prefiero aprender haciendo, así que me gustaría ver más tutoriales, ejemplos» integrados en los frameworks de ML. A algunos les resultó difícil tomar un curso en línea formal, y preferirían aprender en pedazos pequeños a través de retoques prácticos: «Debido al resto de la vida, tengo que adaptar el aprendizaje en pequeños bloques de 5-15 minutos».

Viendo hacia adelante


En última instancia, a medida que las fronteras de ML siguen evolucionando, proporcionar consejos prácticos y conceptuales para desarrolladores de software y crear una reserva compartida de mejores prácticas curadas por la comunidad puede beneficiar tanto a expertos como a principiantes de ML. Con suerte, estos hallazgos de la investigación allanan el camino para diseños más centrados en el usuario de futuros frameworks de ML.

Articulo original Carrie J. Cai, Senior Research Scientist, Google Research y Philip J. Guo, Assistant Professor, UC San Diego

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Accedé al descuento del15%

Suscribiéndote a Nuestro Newsletter, y recibí el cupón para tu inscripción.