¿Cómo manejar un modelo de predicción "autodestructivo"?

36

Estaba viendo una presentación de un especialista de ML de un minorista importante, donde habían desarrollado un modelo para predecir eventos agotados.

Supongamos por un momento que con el tiempo, su modelo se vuelve muy preciso, ¿no sería de alguna manera "autodestructivo"? Es decir, si el modelo realmente funciona bien, entonces podrán anticipar eventos agotados y evitarlos, llegando finalmente a un punto en el que tengan pocos o ningún evento agotado. Pero si ese es el caso, no habrá suficientes datos históricos para ejecutar su modelo, o su modelo se descarrilará, porque los mismos factores causales que solían indicar un evento de desabastecimiento ya no lo hacen.

¿Cuáles son las estrategias para lidiar con tal escenario?

Además, uno podría imaginar la situación opuesta: por ejemplo, un sistema de recomendación podría convertirse en una "profecía autocumplida" con un aumento en las ventas de pares de artículos impulsados ​​por la salida del sistema de recomendación, incluso si los dos artículos no son realmente tan relacionado.

Me parece que ambos son resultados de una especie de ciclo de retroalimentación que ocurre entre la salida del predictor y las acciones que se toman en base a él. ¿Cómo se puede lidiar con situaciones como esta?

Reinstalar a Mónica
fuente
77
(+1) En algunas situaciones análogas que involucran educación superior, la gente habla de un modelo que se "cannabaliza a sí mismo". Los funcionarios de la universidad, utilizando modelos, otorgan ayuda financiera para lograr ciertas metas relacionadas con la inscripción y la ayuda financiera, solo para descubrir que, como resultado, las posibles decisiones de inscripción de los estudiantes eventualmente están cada vez menos determinadas o predecibles a partir de la concesión de ayuda financiera .
rolando2
1
Esta pregunta es difícil de responder en general, ya que depende bastante de la situación. En caso de desabastecimiento, hay buenas soluciones, pero en el caso de los recomendadores, simplemente puede que no haya un gran problema si su modelo se vuelve un poco prescriptivo.
Dennis Jaheruddin

Respuestas:

15

Hay dos posibilidades por las cuales un modelo de detección agotado (OOS) podría descarrilarse automáticamente:

  1. La relación entre entradas y OOS puede cambiar con el tiempo. Por ejemplo, las promociones pueden conducir a una mayor OOS (las ventas promocionales son más difíciles de predecir que las ventas regulares, en parte porque no solo el aumento promedio de las ventas, sino también la variación de las ventas, y "más difícil de predecir" se traduce a menudo en OOS), pero el sistema y sus usuarios pueden aprender esto y acumular existencias adicionales para promociones. Después de un tiempo, la relación original entre promociones y OOS ya no se mantiene.

    Esto a menudo se llama "cambio de modelo" o similar . Puedes superarlo adaptando tu modelo. La forma más común es ponderar las entradas de manera diferente, dando menor peso a las observaciones más antiguas.

  2. Incluso si la relación entre un predictor y OOS no cambia, la distribución del predictor podría cambiar. Por ejemplo, varios días con cero ventas de una determinada unidad de mantenimiento de existencias (SKU) puede indicar un OOS, pero si el modelo funciona bien, entonces OOS podría reducirse en todos los ámbitos, y simplemente podría no haber tantas secuencias de cero ventas .

    Los cambios en la distribución de un predictor no deberían ser un problema. Su modelo simplemente generará una probabilidad menor de OOS.


Al final, probablemente no necesites preocuparte demasiado. Nunca habrá cero OOS. Se producen mecanismos de retroalimentación como los anteriores, pero no funcionarán hasta que se eliminen por completo los OOS.

  • Algunas OOS pendientes pueden simplemente no ser evitables. "Tengo una unidad en el estante y probablemente enfrentaré una demanda de cinco durante la próxima semana, pero la próxima entrega solo vence dentro de una semana".
  • Algunos OOS serán muy difíciles de predecir, incluso si son previsibles, si se hubieran conocido a tiempo. "Si hubiéramos sabido que dejaríamos caer la plataforma del montacargas y destruiríamos todo el producto, habríamos pedido otro".
  • Los minoristas entienden que necesitan apuntar a un alto nivel de servicio, pero que el 100% no se puede lograr. La gente entra y compra todo tu stock de ciertos productos. Esto es difícil de pronosticar (ver arriba) y es lo suficientemente raro como para que no desee llenar sus estantes en caso de que esto ocurra. Compare la ley de Pareto: un nivel de servicio del 80% (o incluso del 90%) es bastante fácil de lograr, pero el 99.9% es mucho más difícil. Algunos OOS están permitidos conscientemente.
  • Algo similar a lo que sostiene la ley de Moore : cuanto mejor sea ML, más expectativas aumentará y más difícil será que la gente haga la vida para el modelo. Si bien los algoritmos de detección (y pronóstico) de OOS mejoran, los minoristas están ocupados haciendo que nuestra vida sea más difícil.
    • Por ejemplo, a través de la proliferación de variantes. Es más fácil detectar OOS en cuatro sabores de yogur que en veinte sabores diferentes. ¿Por qué? Porque las personas no comen cinco veces más yogur. En cambio, la demanda total prácticamente sin cambios ahora se distribuye en cinco veces más SKU, y el stock de cada SKU es un quinto más alto que antes. La cola larga se está expandiendo y las señales se están debilitando.
    • O al permitir el pago móvil usando su propio dispositivo. Esto puede reducir las barreras psicológicas para robar en tiendas , por lo que los inventarios del sistema serán aún peores de lo que ya son , y, por supuesto, los inventarios del sistema son probablemente el mejor predictor de OOS, por lo que si están desactivados, el modelo se deteriorará.

Por casualidad, he estado trabajando en pronosticar las ventas minoristas durante más de doce años, así que tengo una pequeña idea sobre desarrollos como este.


Puedo ser pesimista, pero creo que efectos muy similares están funcionando para otros casos de uso de ML que no sean la detección de OOS. O tal vez esto no sea pesimismo: significa que los problemas probablemente nunca serán "resueltos", por lo que todavía habrá trabajo para nosotros, incluso dentro de décadas.

S. Kolassa - Restablece a Monica
fuente
Estoy especialmente de acuerdo con tu último comentario. La versión del peor de los casos de este escenario parece ser el punto de partida para un teorema de pleno empleo / no almuerzo gratis. Que es lo que hace que esta sea una pregunta interesante IMO!
senderle
26

Si está utilizando un modelo para respaldar decisiones sobre la intervención en un sistema, entonces, lógicamente, el modelo debe buscar predecir el resultado condicionado a una intervención dada. Luego, por separado, debe optimizar para elegir la intervención con el mejor resultado esperado. No estás tratando de predecir tu propia intervención.

En este caso, el modelo podría predecir la demanda (la variable que usted no controla directamente) y esto, en combinación con la elección de inventario, daría lugar a un evento de desabastecimiento o no. El modelo debe continuar siendo "recompensado" por predecir la demanda correctamente, ya que este es su trabajo. Los eventos agotados dependerán de esta variable junto con su elección de inventario .

nanoman
fuente
2
Así es exactamente como se resuelve en la práctica. Un modelo de caja negra que no proporcionaría una comprensión de los factores impulsores, sino que solo predeciría que se produciría un desabastecimiento el miércoles tendría un uso muy limitado si las personas no pueden entender las suposiciones. (Con un supuesto clave de que el modelo no está en su lugar).
Dennis Jaheruddin
@DennisJaheruddin: Por otro lado, cree un modelo que pueda predecir cuándo el producto estará agotado a pesar de un reordenamiento oportuno y usted puede matarlo.
Joshua
1
Es un poco más complejo que eso, porque en el modelo que usaron, la señal de demanda era solo un factor. Pero también utilizaron otros factores, basados ​​en las condiciones de la tienda, para dar cuenta de las situaciones en las que el stock estaba en la tienda pero no en el estante (por ejemplo, en la trastienda, o en una de las cajas registradoras o mostradores de servicio porque el cliente cambió su mente en el último minuto). Para eso, no estaban utilizando solo la demanda sino también otros factores causales.
Vuelva a instalar a Monica el
@Alex esa complejidad solo equivale a una red de mecanismos simples de oferta / demanda que gobiernan diferentes ubicaciones, ya sea que el modelo las represente o no explícitamente. El objetivo del modelo se describe con mayor precisión como la predicción de los niveles de existencias, no la demanda, pero eso solo se vuelve relevante si se considera específicamente que existen factores no controlados tanto en la oferta como en la demanda en el punto de la red (el estante) donde el stock los niveles importan Las intervenciones como pedir más existencias o hacer que el personal reponga los estantes con más frecuencia aún deben ser factores en el modelo.
Will
Es posible que desee mencionar la posibilidad de que la demanda varíe con las existencias.
Yakk
9

Presumiblemente, puede rastrear cuándo ocurren los eventos de reposición. Entonces es solo una cuestión de aritmética determinar cuándo se agotaría el stock si el modelo no se hubiera utilizado para reponer el inventario.

Esto supone que cualquier nivel de stock positivo es independiente del nivel de ventas. Un comentarista dice que esta suposición no se cumple en la realidad. No sé de ninguna manera: no trabajo en conjuntos de datos minoristas. Pero como simplificación, mi enfoque propuesto permite hacer inferencias usando razonamiento contrafactual; si esta simplificación es demasiado poco realista para dar una idea significativa depende de usted.

Sycorax dice reinstalar a Mónica
fuente
Supongo que no veo cómo esto responde la pregunta. Los problemas según los entiendo son: (a) Después de implementar el modelo en producción, la función de predicción óptima para desabastecimientos ahora es completamente diferente de lo que era antes, porque cambiamos la distribución de datos; (b) Cuanto mejor sea nuestro modelo, más raros serán los eventos de desabastecimiento y, por lo tanto, será más difícil predecirlos con precisión en el futuro. Saber "cuándo se agotaría el stock si el modelo no se hubiera utilizado para reponer el inventario" no está aquí ni allá porque el modelo está en producción de ahora en adelante
Jake Westfall
@JakeWestfall Este tipo de análisis se llama razonamiento contrafactual. Si conoce el inventario en todo momento y sabe cuándo se reabastece, puede crear un contrafactual que suponga que no se produjo el reabastecimiento: simplemente reste el reabastecimiento del inventario después de que se produjo el reabastecimiento. Ahora tiene una serie de tiempo que refleja la suposición de que nunca se reabasteció. Lleve esta serie de tiempo hacia adelante hasta que se agote. Ahora sabe cuándo se habría producido un desabastecimiento sin reposición. ¿Cómo este contrafactual tiene una distribución de datos diferente?
Sycorax dice Reinstate Monica
Entiendo todo eso. Lo que no entiendo es cómo esto resuelve los problemas planteados en el OP. Por ejemplo, supongamos que un fuerte predictor de desabastecimiento es si es el primer día de un mes (cuando a muchas personas se les paga). Con nuestro nuevo modelo, ahora podemos evitar estos eventos de desabastecimiento al ordenar de manera preventiva más unidades cerca del final de cada mes. Así que ahora el "primer día del mes" ya no será un predictor útil de desabastecimientos en el futuro. De hecho, podríamos calcular la probabilidad contrafáctica de un desabastecimiento el primer mes si no hubiéramos ordenado de manera preventiva, pero ¿cómo nos ayuda esto exactamente?
Jake Westfall
2
Esto nos ayuda porque le da una probabilidad contrafáctica de un desabastecimiento si no se hubiera producido el reabastecimiento. OP pregunta "cómo lidiar" con el hecho de que un modelo que reduzca los casos de desabastecimiento no tendrá tantos eventos de desabastecimiento disponibles en los datos sin procesar. Mi punto es que puede hacer inferencias sobre la ocurrencia contrafactual de desabastecimientos, y usar eso como un sustituto. ¿Qué tipo de ayuda querías?
Sycorax dice Reinstate Monica
1
@Sycorax: Usted asume que el comportamiento del comprador no está influenciado por la cantidad de artículos visibles en el estante. Esa es una suposición inválida. La influencia puede ser débil, pero no está ausente.
Ben Voigt
2

Una cosa para recordar es que ML es un objetivo instrumental. En última instancia, no queremos predecir eventos fuera de stock, queremos evitar eventos fuera de stock. Predecir eventos agotados es simplemente un medio para ese fin. Entonces, en lo que respecta a los errores de Tipo II, esto no es un problema. O seguimos teniendo OOSE, en cuyo caso tenemos datos para entrenar a nuestro modelo, o no, en el que se ha resuelto el problema para el que se creó el modelo. Lo que puede ser un problema son los errores de Tipo I. Es fácil caer en una patrulla de ososfalacia, donde tienes un sistema X que está construido para prevenir Y, no ves Y, entonces concluyes que X previene Y, y cualquier intento de cerrar X se descarta sobre la base "Pero está haciendo un buen trabajo evitando Y! " Las organizaciones pueden estar encerradas en programas caros porque nadie quiere arriesgarse a que Y regrese, y es difícil averiguar si X es realmente necesario sin permitir esa posibilidad.

Luego se convierte en una compensación de cuánto está dispuesto a participar ocasionalmente (según su modelo) en un comportamiento subóptimo para obtener un grupo de control. Eso es parte de cualquier exploración activa: si tiene un medicamento que cree que es efectivo, debe tener un grupo de control que no esté recibiendo el medicamento para confirmar que en realidad es efectivo.

Acumulacion
fuente