Este artículo fue escrito por el Dr. Matthew Gregory, científico de datos sénior de GOV.UK y Ganesh Senthi, director de producto sénior de GOV.UK


Imagina que estás tratando de encontrar información en línea. Podría tratarse de más o menos cualquier cosa. Se ha desplazado por docenas de resultados de búsqueda. Pero por más que lo intente, simplemente no puede encontrar la información que necesita. Aburrido y frustrado, te rindes.

Esto sucede miles y miles de veces al día, en países de todo el mundo. Y si bien puede ser molesto para el individuo, también es un gran problema para la sociedad. Conectar a las personas con la información que necesitan es muy difícil. Pero, ¿y si hubiera una mejor manera de conectar a los usuarios con el contenido deseado?

GOV.UK es el canal de servicios públicos y comunicaciones en línea de confianza del gobierno del Reino Unido. Se lanzó en 2012 para combinar casi 2.000 sitios web gubernamentales en un solo sitio.

GOV.UK respalda casi 30 millones de visitas a la semana para encontrar la información que necesitan y hacer las cosas que necesitan hacer con el gobierno, como aprender a conducir, registrarse para votar o averiguar qué deben hacer en respuesta a COVID. 19 .

machine-learning-government-algorithm_asset_image3-1024x485

Desde renovar un pasaporte hasta suscribirse a notificaciones de consejos de viaje para un próximo viaje, el sitio web conecta de manera efectiva a los usuarios con la información que necesitan. Pero para los problemas e información menos cotidianos, nuestros usuarios necesitan apoyo adicional: existe un algoritmo de aprendizaje automático que conecta los puntos y permite a las personas encontrar la información que necesitan, cuando la necesitan.

Nuestro problema

Para ayudar a los usuarios a obtener la información que necesitan, GOV.UK utiliza una serie de ayudas a la navegación, como la barra de búsqueda, el pan rallado y enlaces relacionados. Los enlaces relacionados se muestran en el lado derecho del contenido de una página, enlazando a otras páginas que pueden ser de interés.

Antes de que comenzáramos a trabajar en esto en 2019, solo alrededor del 2% de todo el contenido de GOV.UK, u 8,000 páginas, en realidad tenía enlaces relacionados. El resto no tenía ningún vínculo relacionado.

Esto fue una preocupación porque la observación y el análisis han demostrado que los buenos enlaces relacionados dan como resultado viajes de usuario más cortos, lo que permite a los usuarios encontrar el contenido que necesitan más rápido. Esto es importante porque, si los usuarios no encuentran el contenido que necesitan rápidamente, podrían darse por vencidos. Eso podría parecer trivial si todo lo que hizo GOV.UK fue ayudarlo a renovar su licencia de pesca, pero si alguien se da por vencido porque no puede encontrar la información correcta para hacer sus declaraciones de impuestos correctamente, entonces el problema se vuelve mucho más serio.

machine-learning-government-algorithm_asset_image1-1

Una captura de pantalla de una página de GOV.UK con enlaces de contenido relacionados resaltados en el lado derecho

Entonces, para mejorar la experiencia de los usuarios, investigamos si podíamos usar el aprendizaje automático en GOV.UK para generar enlaces relacionados para el 98% restante del contenido que no tenía ninguno. Como resultado de este experimento, decidimos implementar el algoritmo node2vec : generamos representaciones vectoriales de nodos en nuestro gráfico de movimiento del usuario .

Esta fue la primera vez que el equipo detrás de GOV.UK puso en producción un algoritmo de aprendizaje automático; no es mala hazaña. Para completar una tarea difícil como esta, necesita las personas y las habilidades adecuadas. Necesita un equipo multidisciplinario que combine ciencia de datos y diseño centrado en el usuario, uno como GOV.UK Data Labs . Y para obtener detalles técnicos adicionales sobre cómo lo hicimos, visite el blog aquí .

Estas son algunas de las consideraciones de alto nivel que hicieron que este proyecto fuera exitoso y nos permitió compartir nuestro éxito con la academia y la industria .

Definición de la tarea mediante un diseño basado en hipótesis

Hacer ciencia en el gobierno es difícil; no vendemos cosas, por lo que no hay una medida obvia de éxito. ¿Cómo podemos saber si un usuario ha tenido una interacción exitosa con un enlace relacionado durante su visita a GOV.UK?

El primer paso para nosotros cuando comenzamos en 2019 fue definir lo que queríamos lograr. Esto luego nos permitió evaluar si los datos estaban listos para la aplicación prevista.

También necesitábamos construir nuestro equipo. La ciencia de datos es un deporte de equipo, por lo que necesitábamos a las personas adecuadas en el momento adecuado, que juntas pudieran considerar cuidadosamente los indicadores clave de rendimiento (KPI) apropiados y plantear hipótesis con claridad. El equipo comenzó con un ingeniero de datos y un equipo de ciencia de datos, luego, hacia el final del viaje, a medida que avanzábamos hacia la producción, se convirtió en un equipo más de desarrolladores. También trabajamos en estrecha colaboración con los desarrolladores de contenido en todo momento.

Definimos nuestras hipótesis a través de una serie de talleres cuidadosamente estructurados, donde combinaríamos el conocimiento de los expertos en el dominio con la comprensión de los datos disponibles por parte de los científicos de datos. El resultado de estos talleres fue una selección de "supuestas hipótesis" que dijeron algo interesante sobre los enlaces relacionados y cómo nuestros usuarios interactúan con ellos. Los científicos de datos podrían traducirlos en hipótesis estadísticas comprobables .

Estas “ hipótesis nulas ” asumen que no sucederá nada interesante; los enlaces relacionados producidos por el algoritmo no cambian la navegación del usuario (aquí omitimos las hipótesis detalladas). Luego diseñamos un experimento utilizando una metodología estadística robusta para probar estas hipótesis nulas. Utilizamos el método científico para impulsar GOV.UK hacia un diseño óptimo.

Elegir un algoritmo

Con nuestras hipótesis estadísticas en su lugar, necesitábamos comenzar a producir los enlaces relacionados reales.

Usamos dos enfoques que usaban diferentes tipos de datos y algoritmos para generar enlaces relacionados recomendados para una página.

El primero se puede explicar usando la analogía de un humano. Si le dieras a un humano varias piezas diferentes de contenido de GOV.UK, podrían leer las palabras en cada página, comprender el significado y luego calificar qué tan similares eran entre sí. Un algoritmo puede hacer lo mismo. Sin embargo, para que el algoritmo "comprenda" las palabras de cada página, lo ayudamos procesando previamente los datos y representando el contenido numéricamente . Consulte la publicación de nuestro blog para obtener más detalles .

Limpiar y organizar los datos listos para el consumo mediante un algoritmo es difícil y siempre lleva más tiempo de lo que cree

El segundo enfoque es observar lo que la gente ha hecho históricamente. Dado lo que sabemos sobre el lugar al que van los usuarios en los recorridos que visitan esa misma página, ¿qué páginas podríamos recomendarles? Esta intuición proviene de los motores de recomendación. Por ejemplo, si los usuarios tienden a inspeccionar las reglas de caña de pescar en GOV.UK en el mismo viaje en el que solicitan una licencia de caña de pescar , podemos proporcionarles este enlace automáticamente.

Dado que estos enfoques se basan en dos conjuntos de datos diferentes, necesitábamos al menos dos algoritmos diferentes para entrenar un modelo que luego pueda predecir enlaces relacionados. Para identificar algoritmos candidatos, los científicos de datos hicieron una revisión de la literatura del dominio del problema y el tipo de datos que teníamos disponibles. Al final, nos decidimos por dos:

Preparando los datos

Mientras el equipo sopesaba los pros y los contras de diferentes algoritmos, también tuvimos que limpiar los datos para asegurarnos de que estuvieran en buenas condiciones.

Los datos no siempre está en un estado bueno para los diferentes algoritmos ml, o algos, ya que se refieren a menudo para abreviar. Debe asegurarse de que esté "listo" y ponerlo en la "forma correcta". Debe limpiarlo y preprocesarlo, de manera similar a preparar los ingredientes para su receta favorita.

Limpiar y organizar los datos listos para el consumo mediante un algoritmo es difícil y siempre lleva más tiempo de lo que cree.

Asegúrese de darle a su equipo el tiempo adecuado para realizar la ingeniería de datos y el preprocesamiento. Esto le ahorrará tiempo a largo plazo: los científicos de datos pueden ayudar a los gerentes de entrega a comprender el tiempo requerido y el riesgo de un proyecto mediante el uso de niveles de preparación de datos . Comprender los niveles de preparación de los datos puede ayudar a un equipo a priorizar proyectos al abordar proyectos en los que los datos están en mejor forma mientras se disputan los datos para más adelante.

Pasamos varios meses en ingeniería de datos y preprocesamiento antes de entrenar nuestros modelos. Un equipo diverso, como GOV.UK Data Labs, puede ayudar a entregar esto más rápidamente. Consulte el marco digital, de datos y tecnología para ver descripciones de los tipos de roles involucrados.

Datos + algoritmo = modelo

Una vez que haya preparado los datos, es posible que tenga la tentación de entrenar algoritmos complejos como una red neuronal de aprendizaje profundo. Nosotros también caímos en esta tentación que resultó en una pérdida de tiempo.

En su lugar, recomendamos ceñirse a los enfoques probados y comprobados, así como incluir una línea de base simple para determinar si los algoritmos más complejos valen la pena. Por ejemplo, si está creando un algoritmo para recomendar contenido, simplemente puede contar qué página ocurre con mayor frecuencia en los viajes de los usuarios que contienen la página para la que está prediciendo (el índice de probabilidad de registro). Esto es útil porque le brinda un marco de referencia con el que comparar su algoritmo.

Al introducir nuestros datos en un algoritmo, producimos un modelo.

Comparación con el desempeño a nivel humano

Ahora que teníamos algunos modelos en funcionamiento, el siguiente paso fue probar si eran buenos.

El "desafío de Pepsi" puede ser un buen punto de partida para evaluar las predicciones de sus modelos entrenados. Básicamente, revisa dos hojas de cálculo diferentes de enlaces relacionados; vínculos producidos por humanos versus vínculos producidos por el modelo. Si te cuesta distinguirlos, ¡sabes que el modelo está bien!

Ampliamos esta lógica e hicimos que expertos en el dominio revisaran los enlaces producidos por los diferentes modelos. En ese momento, uno de nuestros diseñadores de contenido bromeó: "¡Yo, por mi parte, doy la bienvenida a mis señores robots!"

Evaluación con el método científico

La evaluación que utiliza la opinión de expertos es subjetiva (y se limita a revisar algunos cientos de páginas). Para una evaluación objetiva a escala, podemos utilizar la gran cantidad de usuarios que visitan GOV.UK y su interacción con los enlaces producidos por estos modelos para determinar experimentalmente si la experiencia del usuario ha mejorado.

Como la mayoría de los sitios web, utilizamos análisis de usuarios (es decir, cookies) para rastrear dónde fueron los usuarios y qué hicieron (consulte aquí cómo se utilizan las cookies en nuestro sitio ). Para la evaluación, asignamos aleatoriamente a los usuarios a dos depósitos, A o B. Les mostramos a los usuarios del depósito A la página original del sitio y mostramos a los usuarios del depósito B la página con los enlaces relacionados generados por el modelo. Luego, analizamos los datos del viaje del usuario utilizando estadísticas para inferir el impacto de los cambios comparando las diferencias entre A y B. Para un análisis profundo de cómo realizamos las pruebas A / B, consulte nuestra publicación de blog .

Descubrimos que ambos algoritmos mejoraron las cosas para el usuario en comparación con la página original, pero ¿qué algoritmo fue superior? Descubrimos que era más probable que los usuarios hicieran clic en enlaces relacionados proporcionados por el algoritmo node2vec (entrenados en donde otros usuarios habían estado) que en enlaces relacionados producidos por el método de similitud de contenido (entrenados identificando contenido con palabras similares). Esto nos dio la confirmación de que necesitábamos que el algoritmo ML realmente había mejorado la experiencia del usuario y también nos ayudó a determinar con qué algoritmo deberíamos poner en marcha.

Tomando una desición

Después de desarrollar y probar diferentes modelos para resolver nuestro problema, llegó el momento de elegir en cuál invertiríamos. Al elegir su modelo, hay otras cosas a considerar además de la significancia estadística en la prueba A / B. Quizás el algoritmo más elegante funcionó mejor, pero si requiere una gran cantidad de potencia informática, puede que no valga la pena el esfuerzo adicional si las ganancias son pequeñas; los modelos simples que hacen el trabajo lo suficientemente bien pueden ser más fáciles de publicar en su sitio.

Al implementar un sistema de aprendizaje automático por primera vez en una organización, es prudente ser conservador. Teníamos un sistema de retroceso, por lo que con solo presionar un interruptor, podíamos volver a los enlaces anteriores

Es posible que también desee enlaces relacionados previstos que cambien con los tiempos y el comportamiento del usuario. Es por eso que optamos por node2vec, ya que está capacitado en las últimas semanas de los viajes de los usuarios, por lo que puede hacer frente a los cambios estacionales y los cambios en el comportamiento del usuario asociados con crisis como COVID-19.

Nuestra línea de base simple funcionó bastante bien, pero pronto alcanzó el techo de lo que podía hacer. Los algoritmos de aprendizaje automático, por el contrario, pueden ajustarse y modificarse mediante la iteración para mejorar los resultados. Por lo tanto, había más margen de mejora con node2vec.

Despliegue

La implementación de productos de aprendizaje automático en producción es siempre la parte más complicada del proceso. Es muy, muy, muy difícil, ya que este documento cubre con muy buen detalle .

machine-learning-government-algorithm_asset_image4-1024x364

Todo el código que se incluye en un algoritmo ML (Crédito de la imagen: Scully et al, 2015)

Solo una pequeña fracción de los sistemas de aprendizaje automático del mundo real está compuesta por código de aprendizaje automático, como lo muestra el pequeño cuadro negro en el medio. La infraestructura circundante requerida es amplia y compleja. Hemos tocado los otros componentes a la izquierda del cuadro de código ML (y Herramientas de análisis: pruebas A / B). Ahora consideramos el lado derecho.

La gestión de máquinas y el servicio de la infraestructura es una hazaña enorme en sí misma, también conocida como la producción del sistema ML. Esto se detalla con más detalle en nuestra publicación de blog " datos en el gobierno" . Producir, en su forma más simple, puede significar simplemente mover algún algoritmo o software a un entorno donde se usa para dar forma al resultado de un proceso, que luego es consumido por los usuarios. Cuando se aplica a la ciencia de datos, esto implica la creación de una canalización conjunta y automatizada a partir de pasos individuales, como obtener datos de entrada, ejecutar un algoritmo de aprendizaje automático y crear datos de salida útiles (enlaces relacionados para cada página del sitio).

Soporte e iteración continuos

A medida que la comunidad de aprendizaje automático (ML) continúa acumulando años de experiencia con sistemas activos, ha surgido una tendencia generalizada e incómoda: desarrollar e implementar sistemas de ML es relativamente rápido y barato, pero mantenerlos a lo largo del tiempo es difícil y costoso. Esto se ve agravado por el deseo de que su talentoso equipo trabaje en la automatización de otras cosas.

Una vez que se activa, ¡no se acaba! Monitoreamos la calidad de los enlaces y respondimos a los comentarios. El aprendizaje automático no es mágico ni una solución milagrosa, si hace algunas recomendaciones estúpidas, necesita un mecanismo de retroalimentación de los usuarios y métricas para monitorear el desempeño a medida que el mundo cambia.

Al implementar un sistema de aprendizaje automático por primera vez en una organización, es prudente ser conservador. Teníamos un sistema de retroceso, por lo que con solo presionar un interruptor, podíamos volver a los enlaces anteriores.

Ejecutar pruebas A / B periódicas de su sistema de aprendizaje automático frente a una alternativa es algo sensato, lo que garantiza que aún beneficie a sus usuarios.

Detectar buenos problemas de ciencia de datos

Para que el equipo de GOV.UK Data Labs sea eficaz, nuestra gente necesitaba tener una gran experiencia en el dominio. Esto se ha logrado mediante el manejo de solicitudes comerciales junto con las principales líneas de trabajo de nuestro equipo, como la producción de enlaces relacionados. Esto posiciona a nuestro equipo para reconocer y aprovechar las oportunidades comerciales para garantizar formas más eficientes y efectivas de utilizar la ciencia de datos. Estas mejoras generalmente se manifestarán como automatización o aumento de los procesos comerciales.

Una auditoría informal de los problemas comerciales puede proporcionar un punto de partida útil para identificar la fruta madura que puede tener un impacto inmediato y elevar el perfil del equipo. Básicamente, está buscando una tarea repetitiva que está muy restringida y para la que hay muchos datos sobre el proceso; una tarea manual que no se puede escalar.

También hemos aprendido a no estar limitados por las necesidades del usuario, ¡está bien ser proactivo y experimentar!

Junto con estas victorias rápidas, es útil tener líneas de trabajo que aborden algunos de los problemas comerciales más fundamentales que tiene. Su equipo debe adherirse a los principios ágiles, utilizando picos (incursiones breves en un área problemática) para evaluar la viabilidad, la prioridad y si vale la pena incluir a más personas.

Para que el equipo de Data Labs de GOV.UK sea eficaz, es importante conocer bien el negocio. Regularmente hacemos que nuestra gente se integre en otros equipos durante períodos cortos. Una auditoría informal de los problemas comerciales también puede ayudar a identificar ganancias rápidas. Esto puede construir el perfil del equipo mientras continúa dedicando personas a problemas comerciales más fundamentales. Contamos con las personas adecuadas enfocadas en construir el backend de datos que impulsará la visión de GOV.UK.

También hemos aprendido a no estar limitados por las necesidades del usuario, ¡está bien ser proactivo y experimentar! Especialmente en la era moderna, con algunas grandes ideas y código fuente abierto disponible públicamente para experimentar. Al experimentar, presente a los usuarios potenciales todos los datos, exponer los datos le permite formular requisitos. Llegando al mismo problema desde un ángulo diferente a la investigación de usuarios tradicional.

Al mirar hacia el exterior, a otras organizaciones, podemos inspirarnos. Observamos cómo recomiendan y sirven contenido a sus usuarios automáticamente, esto nos hizo pensar en automatizar tareas que solían consumir mucho tiempo de nuestros expertos en contenido.

La revolución de los datos

El mundo digital está cambiando rápidamente y, con él, las expectativas de nuestros usuarios sobre cómo deberían interactuar con la información y los servicios gubernamentales. El año pasado, la directora de GOV, Reino Unido, Jen Allum, expuso la visión de GOV.UK sobre cómo cumpliremos con estas expectativas . En el corazón de esta visión está transformar la forma en que usamos los datos en GOV.UK.

Este esfuerzo enfocado nos ha ayudado a resolver qué problemas resolver, identificar qué cosas podemos automatizar para el programa GOV.UK y para nuestros usuarios. Esperamos seguir haciendo todas estas cosas y más. - Matthew Gregory y Ganesh Senthi

Más lecturas / enlaces útiles:

Queremos saber lo que piensa sobre este artículo. Envíenos un artículo o envíenos sus comentarios a hello@apolitical.co

(Crédito de la imagen: Unsplash)