Ir al contenido

Blog


How DoorDash Quickly Spins Up Multiple Image Recognition Use Cases

November 3, 2021

|
Chi Zhang

Chi Zhang

DoorDash dispone de abundantes datos de imágenes recogidos por los Dashers, nuestros conductores de reparto, que utilizamos en una serie de casos de uso. Podemos utilizar esta riqueza de datos para varias cosas, como comprobar si las bolsas de pizza están bien equipadas, si las tiendas están cerradas o si se ha preparado el catering, entre otras muchas posibilidades. Con el gran volumen de datos de imágenes que llegan a diario, es imposible que los humanos examinen las imágenes manualmente y confirmen la información asociada a ellas. Por lo tanto, es fundamental crear una solución automatizada, reactiva y reutilizable para extraer información importante de las imágenes y avanzar en casos de uso en multitud de ámbitos, desde la logística hasta el fraude. 

En el pasado, DoorDash dependía de proveedores externos para analizar los datos de imágenes entrantes en un proceso lento, costoso y en gran medida no escalable. Nuestra solución actual de reconocimiento de imágenes descrita aquí nos permite crear nuevos modelos de casos de uso de forma rápida, eficiente, económica y a escala.

El tratamiento interno de imágenes sienta nuevas bases

La creación de una solución de reconocimiento de imágenes centrada en DoorDash mitiga múltiples preocupaciones creadas al trabajar con proveedores externos, entre las que se incluyen:

  • Perfecta integración con las fuentes y servicios internos de datos de imágenes existentes
  • Análisis rápidos y borrado de datos sensibles de los consumidores que la normativa sobre privacidad obliga a la empresa a desechar en cuestión de días.
  • Transferencia rápida de datos para mantener frescos los casos de uso y gestionar los problemas de privacidad adicionales.
  • Reducción de costes y rápida escalabilidad para gestionar las crecientes demandas internas a medida que DoorDash amplía sus líneas de negocio.

Desde el punto de vista de la ingeniería, una solución interna es fácil de mantener y puede ampliarse y mejorarse fácilmente con modelos de aprendizaje automático más avanzados, una canalización de datos más rápida y un soporte más sólido a través de múltiples servicios.

Una solución ligera nos mantiene ágiles

Una vez tomada la decisión de crear una solución interna, buscamos un equilibrio entre el tradicional enfoque de equipo pesado para crear modelos sofisticados y una solución racionalizada de iteración rápida. Las soluciones típicas de reconocimiento de imágenes requieren abundantes datos etiquetados para alimentar el modelo y un trabajo exhaustivo realizado por ingenieros de datos para poner el modelo en producción. 

En DoorDash, sin embargo, valoramos la iteración rápida y los resultados inmediatos (¡después de todo, está en el nombre!), así que optamos por una solución ligera que pudiera ponerse al día rápidamente. En lugar de dedicar tiempo y recursos a un ajuste de modelos excesivamente complicado, hemos adoptado el aprendizaje por transferencia, aprovechando modelos de visión por ordenador preentrenados con nuestros propios datos etiquetados para el entrenamiento de modelos. Estos modelos se integran en tareas diarias de extracción, transformación y carga (ETL) de sistemas en tiempo real para comprobar su eficacia y precisión en línea.

Nuestra solución: Construir una red neuronal profunda

Nuestra red neuronal profunda (como se muestra en la Fig. 1) evoluciona a través de los siguientes pasos: 

  1. Entrenamos modelos de reconocimiento de imágenes con datos etiquetados limitados, utilizando ResNet como red troncal. Equilibramos el conjunto de datos seleccionando imágenes de clases distribuidas uniformemente, al tiempo que aplicamos el preprocesamiento de imágenes y el aumento de datos.
  1. Producimos modelos en la empresa rápidamente, independientemente del origen del caso de uso. Dependiendo del caso, aprovechamos el ETL diario o un servicio de predicción en tiempo real para alojar el modelo entrenado y guardar los resultados en tablas que puedan utilizar los servicios posteriores.
  1. Supervisamos continuamente el rendimiento del modelo a través de paneles de seguimiento que registran el rendimiento y predicen el estado del trabajo. Dado que algunos datos son sensibles al tiempo, maximizamos el uso de las imágenes en bruto para extraer información de forma rápida y eficiente.
Fig. 1. En la construcción del modelo, se utilizan datos de imágenes históricas con etiquetas para entrenar un modelo DNN y, a continuación, las partes interesadas evalúan el rendimiento para satisfacer los requisitos de precisión. Por último, el modelo se produccionaliza mediante ETL o un servicio de predicción en tiempo real para generar resultados de predicción que serán consumidos por servicios posteriores.

Cómo seleccionar los problemas empresariales adecuados 

A medida que la empresa crece en profundidad y amplitud, surgen nuevos casos de uso procedentes de muchos equipos diferentes que desean utilizar el sistema para resolver sus problemas. Aunque el proceso avanza rápidamente hacia las soluciones, es importante priorizar qué casos de uso deben abordarse en primer lugar. DoorDash ha establecido unas sencillas preguntas y reglas para identificar los casos más convincentes:  

  • ¿Tiene el caso de uso un impacto empresarial significativo para la empresa?
    • No todos los problemas empresariales interesantes tienen la misma importancia. Los casos de uso que pueden generar beneficios o reducir costes se convierten en la máxima prioridad. Por ejemplo, utilizamos esta solución para reconocer bolsas de pizza de modo que nuestro sistema de expedición pueda asignar los pedidos de pizza a aquellos Dashers que dispongan del equipo adecuado, lo que redunda en mejores experiencias para el consumidor. 
  • ¿Puede resolverse el problema mediante un modelo de clasificación de imágenes?
    • En algunos casos de uso, los datos de imagen deben combinarse con otros datos para mejorar la solución. Por ejemplo, algunos Dasher denuncian fraudulentamente el cierre de una tienda subiendo una imagen falsa del escaparate y cobrando después la mitad de los gastos de envío. Nuestra solución de reconocimiento de imágenes puede comparar un escaparate adecuado con la imagen enviada por el Dasher y utilizar información GPS en tiempo real para discernir si el Dasher se encuentra en la tienda correcta.
  • ¿Disponemos de datos anotados para la formación?
    • Los socios comerciales que deseen utilizar la solución deben proporcionar definiciones de etiquetas con imágenes reales para facilitar la formación.

Tres respuestas afirmativas conducirán a la incorporación de un nuevo caso de uso, que puede completarse en unas pocas semanas. Cuando nos asociamos con un equipo empresarial interno para incorporar un nuevo caso de uso, que necesita un caso de uso de aprendizaje profundo, primero ejecutamos un piloto, que incluye la creación y las pruebas del modelo. Si el socio está satisfecho con el rendimiento general, pasamos el modelo a la fase de producción completa e introducimos sus datos de predicción en los servicios posteriores.

Identificar el mejor público para las soluciones de imagen ligeras

Las empresas deseosas de incorporar los datos de imágenes generados a partir de sus operaciones diarias a menudo se ven atrapadas en el uso de proveedores externos porque carecen de una plataforma y de los conocimientos necesarios para llevar a cabo el procesamiento de imágenes por sí mismas. Un sistema ligero similar al de DoorDash puede reducir costes, acelerar la resolución de problemas, agilizar la integración de productos y estandarizar datos y casos de uso en todos los equipos.

Al desarrollar una solución de procesamiento de imágenes capaz de iteraciones rápidas y plazos de entrega cortos, las empresas pueden evitar tener que contratar a un equipo dedicado a la visión por ordenador o a la ingeniería de datos. El canal ligero y reutilizable de DoorDash es ideal para probar rápidamente pruebas de concepto con socios comerciales de diversas funciones. De hecho, después de que el primer caso de uso se beneficiara de la solución, tres casos más estuvieron rápidamente listos para ser incorporados. 

Sobre el autor

  • Chi Zhang

    Chi Zhang es ingeniera de aprendizaje automático en el equipo ETA ML de DoorDash. Se centra en el modelado predictivo y el uso de ML para resolver problemas del mundo real.

Trabajos relacionados

Ubicación
San Francisco, CA; Mountain View, CA; Nueva York, NY; Seattle, WA
Departamento
Ingeniería
Ubicación
San Francisco, CA; Sunnyvale, CA
Departamento
Ingeniería
Ubicación
San Francisco, CA; Sunnyvale, CA; Seattle, WA
Departamento
Ingeniería
ID de trabajo: 3013456
Ubicación
Pune, India
Departamento
Ingeniería
Ubicación
San Francisco, CA; Seattle, WA; Sunnyvale, CA
Departamento
Ingeniería