Как работать с моделью саморазрушительного прогнозирования?


36

Я смотрел презентацию специалиста по ML из крупного ритейлера, где они разработали модель для прогнозирования событий на складе.

Давайте на минутку предположим, что со временем их модель становится очень точной, не будет ли это как-то «самоубийственно»? То есть, если модель действительно работает хорошо, то они смогут предвидеть события, отсутствующие на складе, и избегать их, в конечном итоге достигнув точки, когда у них будет мало или вообще нет событий со склада. Но тогда, если это так, не хватит исторических данных, чтобы запустить их модель, или их модель будет сорвана, потому что те же причинные факторы, которые использовались для обозначения события истощения запасов, больше не делают этого.

Каковы стратегии борьбы с таким сценарием?

Кроме того, можно представить себе противоположную ситуацию: например, система рекомендаций может стать «самореализующимся пророчеством» с увеличением продаж пар элементов, обусловленных выходом системы рекомендаций, даже если эти два элемента на самом деле не таковы. Связанный.

Мне кажется, что оба являются результатом своего рода петли обратной связи, которая происходит между выводом предиктора и действиями, которые предпринимаются на его основе. Как можно справиться с такими ситуациями?


7
(+1) В некоторых аналогичных ситуациях, связанных с высшим образованием, люди говорят о модели, которая «каннабизирует себя». Должностные лица колледжа, используя модели, присуждают финансовую помощь для достижения определенных целей, связанных с зачислением и финансовой помощью, только для того, чтобы выяснить, что в результате решения о зачислении будущих учеников все меньше и меньше определяются или прогнозируются из присуждения финансовой помощи ,
rolando2

1
В общем, на этот вопрос сложно ответить, так как он во многом зависит от ситуации. В случае дефицита есть хорошие решения, но в случае рекомендаций, это может просто не быть большой проблемой, если ваша модель станет немного предписывающей.
Деннис Джаэруддин

Ответы:


15

Существует две возможности, с помощью которых модель обнаружения при отсутствии на складе (OOS) может быть сорвана:

  1. Соотношение между входами и OOS может меняться со временем. Например, продвижение по службе может привести к более высокому OOS (рекламные продажи прогнозировать сложнее, чем обычные продажи, отчасти потому, что не только средний рост продаж, но и дисперсия продаж, и «труднее прогнозировать» часто переводится в OOS), но система и ее пользователи могут узнать об этом и заложить дополнительный запас для рекламных акций. Через некоторое время первоначальные отношения между рекламными акциями и OOS больше не сохраняются.

    Это часто называют «сменой модели» или подобным . Вы можете преодолеть это, адаптировав свою модель. Наиболее распространенным способом является взвешивание входных данных по-разному, придавая меньший вес более старым наблюдениям.

  2. Даже если отношения между предиктором и ООС не изменятся, распределение предиктора может измениться. Например, несколько дней с нулевыми продажами конкретной единицы хранения запасов (SKU) могут сигнализировать о OOS - но если модель работает хорошо, OOS может быть сокращена по всем направлениям, и просто может быть не так много последовательностей нулевых продаж ,

    Изменения в распределении предиктора не должны быть проблемой. Ваша модель просто выведет более низкую вероятность OOS.


В конце концов, вам, вероятно, не нужно слишком беспокоиться. Там никогда не будет ноль ООС. Механизмы обратной связи, подобные приведенным выше, существуют, но они не будут работать, пока OOS не будет полностью уничтожен.

  • Некоторые ожидающие OOS могут просто не быть доступными. «У меня есть одна единица на полке, и, вероятно, в течение ближайшей недели спрос на пять будет, но следующая поставка должна состояться только через неделю».
  • Некоторые ООП будет очень трудно предсказать, даже если они будут доступны, если они были известны вовремя. «Если бы мы знали, что мы бросим поддон с вилочного погрузчика и уничтожим весь продукт, мы бы заказали еще один».
  • Ритейлеры понимают, что им нужно стремиться к высокому уровню обслуживания, но 100% недостижимы. Люди приходят и покупают весь ваш запас на определенные продукты. Это трудно предсказать (см. Выше) и достаточно редко, чтобы вы не хотели заполнять свои полки на случай, если это может произойти. Сравните закон Парето: уровень обслуживания в 80% (или даже 90%) довольно легко достичь, но 99,9% намного сложнее. Некоторые OOS сознательно разрешены.
  • Нечто подобное закону Мура имеет место: чем лучше становится ML, тем больше будет ожиданий и тем труднее люди будут строить жизнь для модели. В то время как алгоритмы обнаружения (и прогнозирования) ООС улучшаются, розничные торговцы заняты, делая нашу жизнь более сложной.
    • Например, через вариант распространения. ООС легче обнаружить по четырем вкусам йогурта, чем по двадцати различным. Зачем? Потому что люди не едят в пять раз больше йогурта. Вместо этого в целом неизменный общий спрос теперь распределяется по пятикратному количеству SKU, и запас каждого SKU на одну пятую выше, чем раньше. Длинный хвост расширяется, и сигналы становятся слабее.
    • Или разрешив мобильную проверку с помощью вашего собственного устройства. Это может значительно снизить психологические барьеры для кражи в магазинах , поэтому инвентаризация системы будет еще хуже, чем она уже есть , и, конечно, инвентаризация системы, вероятно, является лучшим предиктором для OOS, поэтому, если они отключены, модель ухудшится.

Я работаю в прогнозировании розничных продаж уже более двенадцати лет, поэтому у меня есть представление о подобных событиях.


Я могу быть пессимистом, но я думаю, что очень похожие эффекты работают для других случаев использования ОД, чем обнаружение ООС. Или, может быть, это не пессимизм: это означает, что проблемы, скорее всего, никогда не будут «решены», поэтому у нас все еще будет работа, даже спустя десятилетия.


Я особенно согласен с вашим последним комментарием. Наихудшая версия этого сценария кажется отправной точкой для полной теоремы занятости / отсутствия бесплатного обеда. Что делает этот интересный вопрос ИМО!
senderle

26

Если вы используете модель для поддержки решений о вмешательстве в систему, то логически модель должна стремиться предсказать результат, обусловленный данным вмешательством. Затем отдельно, вы должны оптимизировать , чтобы выбрать вмешательство с лучшими ожидаемыми результатами. Вы не пытаетесь предсказать свое собственное вмешательство.

В этом случае модель может предсказать спрос (переменная, которую вы не контролируете напрямую), и это, в сочетании с выбором запаса, приведет к возникновению события отсутствия на складе или нет. Модель должна по-прежнему «вознаграждаться» за правильное прогнозирование спроса, поскольку это ее работа. Нет в наличии событий будет зависеть от этой переменной, а также от вашего выбора запаса.


2
Именно так и решается на практике. Модель «черного ящика», которая не будет обеспечивать понимание движущих факторов, а просто предсказывает, что в среду произойдет дефицит, будет иметь очень ограниченное применение, если люди не смогут понять предположения. (С ключевым предположением, что модель не на месте).
Деннис Джаэруддин

@DennisJaheruddin: С другой стороны, создайте модель, которая может предсказать, когда товара не будет в наличии, несмотря на своевременный повторный заказ, и вы сможете совершить убийство.
Джошуа

1
Это немного сложнее, потому что в используемой модели сигнал спроса был только одним фактором. Но они также использовали другие факторы, основанные на условиях магазина, для учета ситуаций, когда запас находился в магазине, но не на полке (например, в подсобном помещении или в одном из кассовых аппаратов или служб обслуживания, поскольку клиент изменился их разум в последнюю минуту). Для этого они использовали не только спрос, но и другие причинные факторы.
Восстановить Монику

@Приятно, что сложность просто сводится к сети простых механизмов спроса / предложения, регулирующих различные местоположения, независимо от того, представляет модель их явно или нет. Цель модели более точно описывается как прогнозирование уровня запасов, а не спроса, но это становится уместным только в том случае, если вы специально рассматриваете наличие неконтролируемых факторов как в спросе, так и в точке в сети (на полке), где находится запас. уровни имеют значение. Такие вмешательства, как заказ большего количества товара или более регулярное пополнение магазинов персоналом, все еще должны быть факторами в модели.
Будет

Вы можете упомянуть возможность того, что спрос зависит от акций.
Якк

9

Предположительно, вы можете отслеживать, когда происходят события пополнения запасов. Тогда это просто вопрос арифметики, чтобы решить, когда запас будет исчерпан, если модель не будет использоваться для пополнения запасов.

Это предполагает, что любой положительный уровень запасов не зависит от уровня продаж. Комментатор говорит, что это предположение не соответствует действительности. Я не знаю в любом случае - я не работаю с розничными наборами данных. Но, как упрощение, мой предложенный подход позволяет сделать выводы, используя контрфактуальные рассуждения; является ли это упрощение слишком нереальным, чтобы дать осмысленное понимание, зависит от вас.


Я думаю, я не понимаю, как это отвечает на вопрос. Проблемы, которые я понимаю, состоят в следующем: (a) После внедрения модели в производство, функция оптимального прогнозирования для запасов в настоящее время полностью отличается от того, что было раньше, потому что мы изменили распределение данных; (б) Чем лучше будет наша модель, тем реже будут происходить события с отсутствием запасов, и, следовательно, будет сложнее точно предсказать их дальнейшее развитие. Знание «когда запас будет исчерпан, если бы модель не использовалась для пополнения запасов», ни здесь, ни там нет, потому что модель уже в производстве
Джейк Уэстфолл,

@JakeWestfall Этот тип анализа называется контрфактуальным рассуждением. Если вы все время знаете инвентарь и знаете, когда он пополняется, вы можете создать контрфактуальность, предполагающую, что пополнение запасов не произошло: просто вычтите запас из инвентаря после того, как он произошел. Теперь у вас есть временной ряд, который отражает предположение, что вы никогда не пополняли запасы. Переносите этот временной ряд вперед, пока не закончите. Теперь вы знаете, когда произошла бы распродажа без пополнения запасов. Как у этого контрафакта есть другое распределение данных?
Sycorax говорит восстановить Монику

Я все это понимаю. Я не понимаю, как это решает проблемы, поднятые в ОП. Например, предположим, что сильным предиктором дефицита является первый день месяца (когда многим платят). Используя нашу новую модель, мы теперь можем избежать этих событий, превентивно заказывая больше единиц в конце каждого месяца. Так что теперь «первый день месяца» больше не будет полезным предиктором распродаж в будущем. Мы могли бы действительно рассчитать контрфактическую вероятность отсутствия на складе первого числа месяца, если бы мы не сделали упреждающий заказ, но как именно это нам поможет?
Джейк Уэстфолл

2
Это помогает нам, потому что это дает вам контрфактическую вероятность того, что пополнение запасов не произошло, если запас не произошел. ОП спрашивает, «как справиться» с тем фактом, что в модели, которая сокращает количество случаев истощения, не будет столько же случаев возникновения дефицита в исходных данных. Моя точка зрения заключается в том, что вы можете сделать выводы о не фактическом возникновении дефицита и использовать его в качестве суррогата. Какую помощь вы хотели?
Sycorax говорит восстановить Монику

1
@Sycorax: Вы предполагаете, что поведение покупателя не зависит от количества предметов, видимых на полке. Это неверное предположение. Влияние может быть слабым, но оно не отсутствует.
Бен Фойгт


2

Следует помнить, что ОД является инструментальной целью. В конечном счете, мы не хотим прогнозировать события, отсутствующие на складе, мы хотим предотвратить события, не связанные с акциями. Прогнозирование на складе событий просто средство для достижения этой цели. Так что, что касается ошибок типа II, это не проблема. Либо у нас по-прежнему есть OOSE, и в этом случае у нас есть данные для обучения нашей модели, либо у нас нет данных, в которых была решена проблема, для которой была создана модель. Что может быть проблемой, это ошибки типа I. Легко попасть в медвежий патрульзаблуждение, когда у вас есть система X, которая построена для предотвращения Y, вы не видите Y, поэтому вы делаете вывод, что X предотвращает Y, и любые попытки закрыть X прекращаются на основании "Но это делает такую ​​хорошую работу предотвращая Y! " Организации могут быть привязаны к дорогостоящим программам, потому что никто не хочет рисковать возвращением Y, и трудно понять, действительно ли X необходим, не допуская такой возможности.

Затем это становится компромиссом того, насколько часто вы готовы участвовать (в соответствии с вашей моделью) в неоптимальном поведении, чтобы получить контрольную группу. Это часть любого активного исследования: если у вас есть препарат, который вы считаете эффективным, вы должны иметь контрольную группу, которая не получает препарат, чтобы подтвердить, что он действительно эффективен.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.