「自己敗北」予測モデルの処理方法


36

私は大手小売業者のMLスペシャリストによるプレゼンテーションを見ていました。そこでは、在庫切れイベントを予測するモデルを開発していました。

しばらくの間、彼らのモデルが非常に正確になったと仮定しましょう。それはどういうわけか「自己敗北」ではないでしょうか?つまり、モデルが本当にうまく機能していれば、在庫切れイベントを予測して回避することができ、最終的に在庫切れイベントがほとんどまたはまったくない状態になります。しかし、その場合、モデルを実行するのに十分な履歴データがないか、モデルが脱線します。これは、在庫切れイベントを示すために使用されていたのと同じ要因がもはや実行されないためです。

そのようなシナリオに対処するための戦略は何ですか?

さらに、反対の状況を想定することもできます。たとえば、2つのアイテムが実際にはそうでなくても、リコメンダーシステムは、リコメンダーシステムの出力によって駆動されるアイテムペアの売上の増加とともに「自己実現予言」になる場合があります関連。

どちらも、予測子の出力とそれに基づいて実行されるアクションの間で発生する一種のフィードバックループの結果であるように思えます。このような状況にどのように対処できますか?


7
(+1)高等教育が関係するいくつかの類似した状況では、人々は「自分自身をカンナバリングする」モデルについて話します。大学職員は、モデルを使用して、特定の入学および財政援助関連の目標を達成するために財政援助を授与しますが、その結果、最終的に入学希望者の入学決定は、財政援助賞によってますます決定されず、予測できません。
rolando2

1
この質問は状況にかなり依存するため、一般的に答えることは困難です。在庫切れの場合は良い解決策がありますが、推薦者の場合は、モデルが少し規範的になっても大した問題にはならないかもしれません。
デニスJaheruddin

回答:


15

在庫切れ(OOS)検出モデルが自己破棄する可能性がある2つの可能性があります。

  1. 入力とOOSの関係は時間とともに変化する可能性があります。たとえば、プロモーションはOOSの増加につながる可能性があります(プロモーション販売は通常の販売よりも予測が困難です。これは、平均売上の増加だけでなく、売上の分散もあり、「予測困難」はしばしばOOSに変換されるためです)しかし、システムとそのユーザーはこれを学び、プロモーションのために追加の在庫を置くかもしれません。しばらくすると、プロモーションとOOSの間の元の関係は保持されなくなります。

    これはしばしば「モデルシフト」または類似の方法と呼ばれます。モデルを調整することで、それを克服できます。最も一般的な方法は、入力に異なる重みを付けて、古い観測の重みを小さくすることです。

  2. 予測変数とOOSの関係が変わらない場合でも、予測変数の分布は変わる可能性があります。たとえば、特定の在庫管理単位(SKU)の販売がゼロの複数の日がOOSを通知する場合がありますが、モデルのパフォーマンスが良好な場合、OOSは全面的に削減され、ゼロ販売のシーケンスはそれほど多くない可能性があります。

    予測変数の分布の変更は問題になりません。モデルでは、OOSの確率が低くなるだけです。


最終的には、おそらくあまり心配する必要はありません。OOSがゼロになることはありません。上記のようなフィードバックメカニズムは発生しますが、OOSが完全に根絶されるまで機能しません。

  • 保留中のOOSの中には、単に回避できないものもあります。「私は棚に1つのユニットがあり、おそらく来週に5台の需要に直面するでしょうが、次の配達は今日から1週間だけです。」
  • 一部のOOSは、たとえそれら時間内に知られていれば、たとえ回避可能であっても、予測が非常に困難になります。「フォークリフトからパレットを降ろし、すべての製品を破壊することがわかっていた場合、別の製品を注文していました。」
  • 小売業者は、高いサービスレベルを目指す必要があることを理解していますが、100%を達成することはできません。人々が来て、特定の製品の在庫全体を買います。これは予測するのが難しく(上記を参照)、非常にまれであるため、これが発生する可能性のあるチャンスで棚をいっぱいにしたくありません。パレートの法則を比較してください。80%(または90%)のサービスレベルを達成するのは非常に簡単ですが、99.9%ははるかに困難です。一部のOOSは意識的に許可されています。
  • ムーアの法則に似たものがあります:MLが良くなればなるほど、より多くの期待が増加し、より困難な人々がモデルのために命を作ります。OOS検出(および予測)アルゴリズムは改善されますが、小売業者は忙しく、私たちの生活をより困難にします。
    • たとえば、バリアントの増殖を通じて。20種類のフレーバーよりもヨーグルトの4つのフレーバーでOOSを検出する方が簡単です。どうして?人々はヨーグルトを5倍も食べないからです 代わりに、ほぼ変わらない合計需要が5倍のSKUに分散され、各SKUの在庫は以前の5分の1になりました。ロングテールは拡大しており、信号は弱くなっています。
    • または、独自のデバイスを使用してモバイルチェックアウトを許可します。これにより、万引きに対する心理的障壁が低くなる可能性があります。そのため、システムインベントリは以前よりもさらに悪化します。もちろん、システムインベントリはおそらくOOSの最適な予測因子であるため、オフの場合、モデルは劣化します。

私はたまたま小売販売の予測に12年以上携わっているので、このような開発について少し考えています。


私は悲観的かもしれませんが、OOS検出以外の他のMLユースケースでも非常によく似た効果が働いていると思います。あるいは、これは悲観的ではないかもしれません。つまり、問題が「解決」されることはほとんどないということです。そのため、数十年後もまだ私たちのために仕事があります。


私は特にあなたの最後のコメントに同意します。このシナリオの最悪のバージョンは、完全雇用/無料昼食定理の出発点のようです。これがIMOを興味深い質問にしている理由です!
送信者

26

システムへの介入に関する決定をサポートするためにモデルを使用している場合、論理的には、モデルは特定の介入を条件とする結果を予測しようとする必要があります。次に、個別に最適化して、最良の結果が得られる介入を選択する必要があります。自分の介入を予測しようとはしていません。

この場合、モデルは需要(ユーザーが直接制御しない変数)を予測できます。これは、在庫選択と組み合わせて、在庫切れイベントが発生するかどうかを決定します。これは仕事であるため、需要を正しく予測するために、モデルは引き続き「報酬」を受け取るべきです。在庫切れイベントは在庫の選択とともにこの変数に依存します


2
これが実際に実際に解決される方法です。運転要因の理解を提供するのではなく、水曜日に在庫切れが発生することを予測するだけのブラックボックスモデルは、人々が仮定を理解できない場合、使用が非常に制限されます。(モデルが適切に配置されていないという重要な仮定があります)。
デニスJaheruddin

@DennisJaheruddin:一方、タイムリーな再注文にもかかわらず製品が在庫切れになる時期を予測できるモデルを作成し、殺すことができます。
ジョシュア

1
それよりも少し複雑です。なぜなら、彼らが使用したモデルでは、需要信号は1つの要素にすぎなかったからです。しかし、彼らはまた、店内の状況に基づいて他の要因を使用して、在庫が店舗にあるが棚にはない状況を考慮しました(たとえば、奥の部屋、または顧客が変わったためにレジやサービスデスクの1つに)ぎりぎりで彼らの心)。そのため、彼らは需要だけでなく、他の因果的ドライバーも使用していました。
モニカの

@Alexは、モデルが明示的に表現するかどうかに関係なく、異なる場所を管理する単純な供給/需要メカニズムのネットワークにすぎません。モデルの目的は、需要ではなく在庫レベルの予測としてより正確に記述されますが、ネットワーク内のポイント(在庫)での需要と供給の両方に制御されない要因があると具体的に検討している場合にのみ関連しますレベルが重要です。より多くの在庫を注文する、またはスタッフに棚をより定期的に補充するなどの介入は、モデルの要素である必要があります。
ウィル

在庫によって需要が変化する可能性に言及することもできます。
-Yakk

9

おそらく、補充イベントがいつ発生するかを追跡できます。次に、在庫を補充するためにモデルが使用されていなかった場合、在庫がいつ枯渇するかを計算するのは、単に計算の問題です。

これは、プラスの在庫レベルが販売レベルに依存しないことを前提としています。コメント者は、この仮定は現実には成り立たないと言っています。私はどちらの方法も知らない-私は小売データセットで仕事をしていません。しかし、簡略化として、私の提案するアプローチでは、反事実的推論を使用して推論を行うことができます。この単純化が意味のある洞察を与えるには非現実的すぎるかどうかはあなた次第です。


これがどのように質問に答えているのかわからないと思います。私が理解している問題は次のとおりです。(a)生産にモデルを実装した後、データ分布を変更したため、在庫切れの最適な予測関数は以前とは完全に異なります。(b)モデルが優れているほど、希少な欠品イベントがより多くなるため、今後の正確な予測が難しくなります。「在庫が枯渇するだろうというとき、モデルが補充インベントリに使用されていなかった」モデルは、今から生産しているので、そこにもない、ここでされても知る
ジェイクウェストフォール

@JakeWestfallこのタイプの分析は、反事実的推論と呼ばれます。在庫を常に把握しており、いつ在庫が補充されるかがわかっている場合、補充が発生しなかったと想定する反事実を作成できます。補充が発生した後に在庫から補充を差し引くだけです。これで、補充したことのない仮定を反映した時系列が作成されました。在庫切れになるまでこの時系列を繰り越してください。これで、補充なしで在庫切れがいつ発生したかがわかります。この反事実はどのように異なるデータ分布を持っていますか?
シコラックスは、モニカの復活を

私はそれをすべて理解しています。私が理解していないのは、これがOPで提起された問題をどのように解決するかです。たとえば、在庫切れの強力な予測因子は、それが月の最初の日であるかどうか(多くの人が支払いを受けるとき)であるとします。新しいモデルを使用すると、各月末にさらに多くのユニットを優先的に注文することで、これらの在庫切れイベントを回避できるようになりました。そのため、「月の最初の日」は、今後の在庫切れの有用な予測因子ではなくなります。予防的に注文しなかった場合、月の最初の在庫切れの反事実的確率を実際に計算できましたが、これはどのように正確に役立ちますか?
ジェイクウェストフォール

2
これは、再在庫が発生しなかった場合の在庫切れの事実に反する確率を提供するためです。OPは、在庫切れの発生を削減するモデルでは、生データで利用可能な在庫切れの発生が少ないという事実を「どのように処理するか」を求めています。私のポイントは、在庫切れの反事実的な発生について推論し、それを代理として使用できることです。どのような支援が必要でしたか?
Sycoraxは、Reinstate Monica

1
@Sycorax:購入者の行動は、棚に見える商品の数に影響されないと仮定します。それは無効な仮定です。影響は弱いかもしれませんが、欠けているわけではありません。
ベンフォークト


2

覚えておくべきことの1つは、MLが手段的な目標であることです。最終的に、在庫切れイベントを予測するのではなく、在庫切れイベントを防止する必要があります。在庫切れイベントの予測は、そのための手段にすぎません。したがって、タイプIIエラーに関する限り、これは問題ではありません。OOSEを引き続き使用します。この場合、モデルをトレーニングするためのデータがあります。そうでない場合は、対処するためにモデルが作成された問題が解決されています。問題になる可能性があるのは、タイプIエラーです。クマのパトロールに陥りやすい誤acy、Yを防止するために構築されたシステムXがある場合、Yは表示されないため、XがYを防止すると結論付け、Xをシャットダウンしようとする試みは「しかし、それは非常に良い仕事をしている」 Yを防ぐ!」組織が高価なプログラムに閉じ込められる可能性があるのは、Yが戻ってくるリスクを誰も望んでおらず、その可能性を許さずにXが本当に必要かどうかを見つけるのが難しいからです。

それは、コントロールグループを取得するために、(モデルに応じて)準最適な動作にときどき従事する意思の程度のトレードオフになります。それは積極的な調査の一部です。効果があると思う薬物がある場合、実際に効果があることを確認するために薬物を摂取していない対照群が必要です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.