確率論的予測(サプライチェーン)

learn menu
Joannes Vermorelによる、2020年11月

予測は、特定の結果を「予測」として特定するのではなく、将来のすべての可能な結果に関連付けられた確率のセットを含む場合、確率論的であると言われます。複雑なシステムが関係する場合、不確実性が不可避である場合には、確率論的予測が重要です。サプライチェーンでは、確率論的予測は不確実な将来の状況に対して堅牢な意思決定を行うために不可欠です。特に、需要とリードタイムは、サプライチェーン分析の2つの重要な側面であり、確率論的予測を介して最もよく対処されます。確率論的な視点は、期待されるが不確かなリターンに基づいて意思決定を経済的に優先するために自然に適しています。さまざまな統計モデルが確率論的予測を提供します。一部は確定論的な対応物に構造的に近く、他のものは非常に異なります。確率論的予測の精度を評価するには、確定論的な対応物とは異なる特定のメトリックが必要です。確率論的予測の利用には、確定論的な対応物とは異なる専門のツールが必要です。

確率論的予測を示す多くのサイコロ

確定論的予測と確率論的予測

サプライチェーンの最適化は、将来のイベントを適切に予測することに依存しています。数値的には、これらのイベントは「予測」として予測され、これらの将来のイベントを数量化するために使用されるさまざまな数値方法を含みます。1970年代以降、最も広く使用されている予測の形式は、確定論的な時系列予測です。時間の経過とともに測定される数量(たとえば、製品の需要の単位)が将来に予測されます。時系列の過去の部分は過去のデータであり、将来の部分は予測です。

確定論的予測としての移動平均
MAは「移動平均」を表し、疎な時系列では特にうまく機能しません。

これらの時系列予測は、「確定論的」と言われます。なぜなら、将来の各時点に対して、予測は将来の結果にできるだけ近づく単一の値を提供するからです。実際、予測は単一の値であるが、予測が完全に正確である可能性はほとんどないと広く理解されています。将来の結果は予測から逸脱します。確定論的予測の将来の結果への適合度は、平均二乗誤差(MSE)などの精度メトリックによって定量的に評価されます。

確率論的予測は、将来の結果の予測に対して異なる視点を持っています。最良の結果として1つの値を生成する代わりに、確率論的予測はすべての可能な結果に確率を割り当てます。言い換えれば、すべての将来のイベントは可能であり、同じ確率ではないだけです。以下は、実世界のほとんどの状況で観察される「ショットガン効果」を示す確率論的な時系列予測の可視化です。次のセクションでこの可視化を詳しく見直します。

確率論的な需要予測。
高い不確実性を示す確率論的な予測の例。

時系列は、時間の経過に伴って測定される数量であり、おそらく最も広く知られているデータモデルであり、最も広く使用されています。このデータモデルは、確定論的または確率論的な手段の両方で予測することができます。ただし、予測のためには、通常よりも豊富な代替データモデルも存在し、その両方の予測に適しています。たとえば、ジェットエンジンを修理する会社は、次回のメンテナンス作業に必要な予備部品の正確なリストを予測したいと考えるかもしれません。この予測は、時系列の予測ではありませんが、この作業に関連する確定論的な予測は、部品の正確なリストとその数量です。逆に、確率論的な予測は、部品の組み合わせごとに(数量を含む)この特定の組み合わせが修理に必要なものである確率です。

また、「予測」という用語はある種の予測を強調していますが、過去(しかし未知の)の特性についても、そのシステムに関する任意の統計的に推測された記述に一般化することができます。 統計的予測 の実践は、より現代的な統計的学習の視点が登場する前の20世紀に登場しました。この視点では、任意の時間的次元に関係なく実行できるデータ駆動型の外挿を包括しています。明確さのために、以下では「予測」という用語を引き続き使用しますが、時間的な側面は常に過去が既知で将来が未知であることを意味するわけではありません。たとえば、ある会社は、この日に製品が在庫切れでなかった場合に、その店舗で行われたであろう販売を推定したいと考えるかもしれません。この推定は、サービスの品質の観点で問題の大きさを数量化するのに役立ちます。ただし、イベントが過去のものであるため、「実際の」販売数は決して観測されません。それにもかかわらず、まだ自明に観測されていないと仮定すれば、過去の需要の統計的推定は、将来の需要の推定に非常に近い問題です。

確率論的予測は、情報的には確定論的な予測よりも豊かです。確定論的予測は将来の結果の「最良の推測」を提供しますが、代替案については何も言いません。実際、確率分布の平均値、中央値、モードなどを取ることで、確率論的予測を確定論的な予測に変換することは常に可能です。しかし、逆は成り立ちません。確定論的な予測から確率論的な予測を復元することはできません。

しかし、確率論的予測は統計的には確定論的予測よりも優れていますが、サプライチェーンではまだあまり使用されていません。ただし、過去10年間でその人気は着実に増加しています。歴史的には、確率論的予測はより多くの計算リソースを必要とするため、後に登場しました。サプライチェーンの目的で確率論的予測を活用するには、専門のソフトウェアツールが必要であり、これらのツールは頻繁に利用できない場合もあります。

サプライチェーンのユースケース

サプライチェーンの最適化は、将来の状況を不完全に推定した上で、将来の状況に最も有益に対処するための「適切な」意思決定を行うことで構成されます。しかし、将来のイベントに関連する不確実性は、大きな範囲で削減することはできません。したがって、将来のイベントの予測が不完全である場合、企業は意思決定を堅牢にする必要があります。これは、安全在庫分析を通じて20世紀中頃以来、最小限に行われてきました。しかし、以下で見るように、歴史的な興味の他に、安全在庫を「ネイティブ」の確率論的数値レシピよりも優先する理由はもはやありません。

確率論的予測の視点は、不確実性に対して過激な立場を取ります。このアプローチでは、不確実性を最大限に「数量化」しようとします。サプライチェーンでは、コストは統計的な極値に集中する傾向があります。予期せぬ需要が在庫切れを引き起こし、予期せぬ需要が在庫の廃棄を引き起こします。その間、在庫はうまく回転します。確率論的予測は、現代のサプライチェーンに普遍的に存在するこれらの低頻度で高コストな状況を管理しようとする試みと言えます。確率論的予測は、サプライチェーン内のリスク管理の実践の中核要素として見なすことができ、見なすべきです。

サプライチェーンの多くの側面は、確率論的予測に特に適しています。例えば、以下のようなものがあります:

  • 需要: 衣料品、アクセサリー、スペアパーツなど、多くの他の製品は、不規則で/または断続的な需要と関連付けられる傾向があります。製品の導入は成功するかどうかは不確かです。競合他社のプロモーションは、市場シェアの大部分を一時的かつ不規則に食い込む可能性があります。
  • リードタイム: 海外輸入は、チェーンのどの段階でもさまざまな遅延を引き起こす場合があります(生産、輸送、税関、受け入れなど)。在庫切れの問題に直面する場合、現地のサプライヤーでも長いリードタイムがまれに発生する場合があります。リードタイムは「ファットテール」の分布になりがちです。
  • 収穫量(生鮮食品): 多くの生鮮製品の生産量と品質は、天候などの条件に依存しますが、これらは会社の制御範囲外です。確率論的予測は、シーズン全体のこれらの要素を数量化し、クラシックな天気予報の関連性の範囲を超える可能性を提供します。
  • 返品(eコマース): 顧客が同じ商品を3つの異なるサイズで注文する場合、2つのサイズが返品される可能性が高いです。一般的には、地域によって差異がありますが、顧客は返品ポリシーがある場合には好意的な返品を利用する傾向があります。各注文の返品確率を評価する必要があります。
  • スクラップ(航空): 修理可能な航空機部品(一般的にはロータブルと呼ばれる)は、修理に失敗することがあります。この場合、部品は廃棄され、もう一度航空機に取り付けることはできません。部品が修理を生き延びるかどうかを事前に知ることは通常できませんが、部品が廃棄される確率を推定する必要があります。
  • 在庫(B2C小売業): 顧客は小売店から商品を移動させたり、損傷させたり、盗んだりすることがあります。したがって、電子的な在庫レベルは、顧客が実際に感じる棚上の利用可能性の近似値に過ぎません。顧客が感じる在庫レベルは、確率論的予測を通じて評価する必要があります。

この短いリストは、確率論的予測に適格な角度が、単一の伝統的な「需要予測」の角度をはるかに超えることを示しています。供給チェーンのよく設計された最適化には、すべての関連する不確実性要素を考慮する必要があります。リーン生産が強調するように、不確実性を減らすことができる場合もありますが、通常は経済的なトレードオフが関与し、その結果、ある程度の不確実性が不可避です。

ただし、予測は将来についての教養ある意見に過ぎません。確率論的予測は非常に詳細な意見と見なされるかもしれませんが、この点では確定論的な予測と根本的に異なるわけではありません。確率論的予測の供給チェーンにおける価値は、この詳細な構造が利用されてより利益の上がる意思決定を行うために活用される方法にあります。特に、確定論的な予測の品質を評価するために確定論的な精度指標が使用される場合、確率論的予測は通常、確定論的な予測よりも正確であることは期待されていません。

変動性の擁護

供給チェーンへのアプローチによっては、変動性は必ずしも供給チェーンにとって悪いものであるという誤解がありますが、そうではありません。第二の誤解は、変動性をエンジニアリングで排除できるというものですが、それはできません。

変動性は、さまざまな状況で供給チェーンにとってプラスの影響を持ちます。たとえば、需要側では、ファッション、文化製品、ソフトおよびハードの高級品など、ほとんどの垂直市場は新しさによって推進されています。ほとんどの新製品は成功しない(ミス)ですが、成功する(ヒット)ものは巨大なリターンを生み出します。追加の変動性は、超過リターンの確率を高めるため、リスクは制限されたままです(最悪の場合、在庫全体が無価値になります)。市場に押し出される新製品の絶え間ない流れは、「ヒット」の持続的な更新を保証し、古い製品は衰退していきます。

供給側では、高度に変動する価格提供を保証する調達プロセスは、他の要素が同等である場合に優れています。実際、最も低価格のオプションが選択され、他のオプションは却下されます。調達価格の「平均」が低いかどうかは重要ではありません。重要なのは、より低価格の供給源を見つけることです。したがって、良い調達プロセスは、確立された供給源に制限するのではなく、新しいサプライヤーの定期的な探索を重視することによって変動性を増加させるように設計されるべきです。

時には、変動性はより微妙な理由で有益である場合があります。たとえば、ブランドがプロモーション活動において予測しやすすぎる場合、顧客はパターンを認識し、プロモーションが行われるまで購入を遅らせるようになります。プロモーション活動の変動性 - 不規則性さえも - は、この行動をある程度緩和します。

サプライチェーン自体には混乱要因が存在する場合、変動性も有益です。新製品が常にテレビキャンペーンとラジオキャンペーンの両方で発売される場合、テレビとラジオのそれぞれの影響を統計的に区別することは統計的に困難になります。チャネルに応じてキャンペーンの強度に変動性を追加することで、これらの操作からより多くの統計情報を抽出し、後でマーケティングリソースのより良い割り当てのための洞察に変換することができます。

もちろん、すべての変動性が良いわけではありません。リーン生産は、サプライチェーンの生産側において、変動性が通常有害であることを正しく強調しています、特に遅延の変動性に関してはそうです。実際、LIFO(後入れ先出し)プロセスが偶然にも発生する可能性があり、それによってリードタイムの変動性が悪化します。そのような状況では、偶発的な変動性は、通常はより良いプロセスを通じて、時にはより良い設備や施設を通じて工学的に排除する必要があります。

変動性は、有害であっても、頻繁に削減できないものです。次のセクションで見るように、サプライチェーンは小数の法則に従います。顧客自身が自分が何を買おうとしているかを常に確実に予測できるわけではないのに、店舗レベルが決定論的な観点から信頼できるようになることを考えるのは妄想です。より一般的には、変動性を減らすことは常にコストがかかります(さらに減らすとさらに高くなります)、変動性のマージナルな削減は収益の減少しかもたらしません。したがって、変動性を削減できる場合でも、経済的な影響のためにほとんど完全に排除することは非常に稀です。

小数の法則

サプライチェーンの小数の法則は次のように述べることができます: チェーン全体で小数が優勢である。この観察的な法則は、規模の経済とその他のいくつかの要因によって引き起こされ、サプライチェーンの構造的な側面のほとんどを駆動しています:

  • 1日に数万単位の材料を提供するサプライヤーは、最小注文数量(MOQ)や価格のブレイクポイントによって、発注が頻繁に行われるのを防いでいます。特定の日にサプライヤーに渡される発注の数は、ほとんどが一桁の数字に過ぎません。
  • 1日に数万単位の製品を生産する工場は、数千単位の大量生産を通じて運営される可能性があります。生産量は通常、パレット全体で包装されます。特定の日におけるバッチの数は、最大で2桁の数字です。
  • 1日に数万単位の製品を受け取る倉庫は、トラックによって配達され、各トラックは倉庫にその積荷全体を降ろします。特定の日におけるトラックの配達数は、非常に大きな倉庫でも2桁の数字を超えることはほとんどありません。
  • 在庫に数万単位の製品を保持できる小売店は、数千の異なる製品参照でそのアソートメントを広げる傾向があります。各製品の在庫数は、ほとんどが一桁の数字を超えることはほとんどありません。

もちろん、単位を変更することで数字を膨らませることは常に可能です。たとえば、パレットの数を数える代わりに、パレットの「グラム」の数、またはその金銭的価値を米ドルセントで数えると、大きな数字が現れます。ただし、小数の法則は、合理的なサプライチェーンの観点から物事を数えるという概念とともに理解する必要があります。理論的には、この原則はかなり主観的に見えるかもしれませんが、現実では、現代のサプライチェーンの明らかな離散的な実用性のためにそうではありません: バンドル、ボックス、パレット、コンテナ、トラック…

この法則は、確率的予測の観点から非常に関連性が高いです。まず、サプライチェーンの状況では「離散的な」予測が優勢であることを示しています。つまり、予測される結果(または決定される結果)は「整数」であり、分数ではありません。確率的予測は「離散的な」状況に特に適しています。なぜなら、各離散的な結果に対して確率を推定することができるからです。対照的に、確定的な予測は離散的な結果に対して苦労します。たとえば、ある製品の予想される日次販売数が1.3単位であるというのはどういう意味でしょうか?単位は分数で売られません。この文からはより合理的な「離散的な」解釈が推測されますが、その確率的な対応(たとえば、需要が0単位の確率が27%、1単位の確率が35%、2単位の確率が23%など)の方がはるかに直感的であり、興味の対象の離散的な性質を包括しています。

さらに、確率的予測は、生の計算リソースの観点からは非常に困難に見えるかもしれませんが、実際にはそうではありません。これは、小数の法則によるものです。実際には、上記で議論された日次製品販売に戻ると、ある日に需要が100を超える可能性を数値的に評価する意味はありません。これらの確率はゼロに丸められるか、あるいはいくらかの任意の非常に小さい値に丸められます。サプライチェーンモデルの数値的な精度への影響は無視できるほどです。経験則として、確率的予測には、確定的な予測の約3桁のオーダーの計算リソースが必要であると考えるのが合理的です。ただし、このオーバーヘッドにもかかわらず、サプライチェーンのパフォーマンスに対する利点は、計算リソースのコストをはるかに上回ります。

確率的予測の精度指標

何が起ころうとも、適切に設計された確率的予測は、この結果が実際に発生する確率がゼロではなかったことを示しています。これは興味深いことです。なぜなら、初めに見る限り、確率的予測は現実に対して何らかの免疫を持っているかのように思えるからです。まるで占い師が非常に曖昧な予言的な声明をし、それが決して間違っていないことを証明できないかのようです。占い師は常に後から予言の解釈方法についての説明を作り出すことができます。実際には、確率的予測の品質を定量的に評価するための複数の方法が存在します。これらの方法のいくつかは、確定的予測の精度を評価するために使用されるメトリクスに似た「メトリクス」です。その他の方法は、確定的な視点と比較して、より根本的で革新的な方法に分岐します。

確率的予測の精度を評価するための4つの異なるアプローチを簡単に見てみましょう:

  • ピンボール損失関数
  • 連続ランク付け確率スコア(CRPS)
  • ベイズ的尤度
  • 生成的対抗的視点

ピンボール損失関数は、確率的予測から導かれる分位数の推定値の精度指標を提供します。例えば、ある商品の店舗において、顧客の需要に対して98%以上の確率で在庫数量が大きいか等しい場合、この数量は需要が0単位、1単位、…と増えるにつれて確率が98%を超えるまでの確率を単純に合計することで直接的に得ることができます。ピンボール損失関数は、このバイアスのある将来の需要の推定値の品質を直接的に測定するものです。これは、確率的予測の累積密度関数の任意の点の品質を評価するためのツールと見なすことができます。

連続ランク付け確率スコア(CRPS)は、確率の質量を観測結果に移動するために必要な確率の質量の「移動量」と解釈できるメトリックを提供します。これは、確率的な視点における平均絶対誤差(MAE)の最も直接的な一般化です。CRPSの値は、観測結果自体の測定単位と同じ次元を持ちます。この視点は、現在のドキュメントの範囲を超える「輸送理論」とモンジュ・カントロビッチ距離を介して、1次元の状況だけでなく、任意のメトリック空間に一般化することができます。

尤度とそのクロスエントロピーの類似物は、_最小の驚きの度合い_というベイズ的な視点を採用しています:観測結果の確率が高ければ高いほど良いとされます。例えば、2つの確率的モデルAとBがあるとします:モデルAは、任意の日における需要が0単位である確率が50%であると述べています。モデルBは、任意の日における需要が0単位である確率が1%であると述べています。3日間の需要を観測し、以下の観測結果を得ました:0、0、1。モデルAはこれらの観測結果を生成する確率がおおよそ10%であり、モデルBではおおよそ0.01%の確率でした。したがって、モデルBはモデルAと比較して正しいモデルである可能性が非常に低いです。尤度はモデルを評価するための意味のある_絶対的な_基準を持つ決定論的な視点から逸脱しています。代わりに、尤度はモデルを_比較_するためのメカニズムを提供しますが、数値的にはモデルを_比較する以外の用途にはあまり使われません。

生成的対抗的視点は、最も現代的な視点です(Ian Goodfellow et al.、2014)。基本的に、この視点は、「最も優れた」確率モデルは、実際の結果と区別がつかないモンテカルロスタイルの結果を生成することができるモデルであると述べています。例えば、地元のハイパーマーケットの過去の取引リストを考慮する場合、この履歴を過去の任意の時点で切り捨て、確率モデルを使用してその後も偽のが現実的な取引を生成することができます。データセットが「実際の」データから「偽の」データに移行する時点を統計的に分析しても復元することができない場合、モデルは「完璧」と見なされます。生成的対抗的アプローチのポイントは、任意の確率モデルの欠陥を悪化させるメトリックを「学習」することです。特定のメトリックに焦点を当てる代わりに、この視点は機械学習技術を再帰的に利用してメトリック自体を「学習」します。

確率的予測の品質をより良く評価する方法を模索することは、まだ研究の活発な領域です。「より良い予測を作成する方法」と「予測がより良いかどうかを判断する方法」との間には明確な区別がありません。最近の研究では、これらの2つの間の境界線がかなり曖昧になっており、次のブレークスルーは、確率的予測の見方自体にさらなる変化をもたらす可能性が高いです。

極小確率と対数尤度

確率的予測のプリズムを通して多次元の状況を見ると、非常に小さな確率が自然に生じます。これらの小さな確率は、コンピュータが無限に正確な数値を処理しないため問題です。生の確率値は、数値の精度制限によりゼロに丸められることがよくあります。この問題の解決策は、計算リソースの観点から非常に効率が悪い任意精度計算にソフトウェアをアップグレードすることではなく、「対数トリック」を使用することです。このトリックは、乗算を加算に変換します。このトリックは、確率的予測に関わるほとんどのソフトウェアでいずれかの方法で活用されています。

$$X_1, X_2, \ldots, X_n$$ は、与えられた店舗内で提供されるすべての$$n$$個の異なる商品の需要を表すランダム変数とします。$$\hat{x}_1, \hat{x}_2, \ldots, \hat{x}_n$$ は、各商品の終日の経験的な需要に対応します。$$X_1$$ によって支配される最初の商品の場合、$$\hat{x}_1$$ を観測する確率は $$P(X_1=\hat{x}_1)$$ と書かれます。 . さて、わかりやすさのために、すべての商品が需要に関して厳密に独立していると仮定しましょう。$$\hat{x}_1, \hat{x}_2, \ldots, \hat{x}_n$$ を観測する共同事象の確率は次のようになります:

$$P(X_1=\hat{x}\_1 \ldots X_n=\hat{x}\_n)=\prod_{k=1}^{n}P(X_k=\hat{x}_k)$$

もし$$P(X_k=\hat{x}_k) \approx \tfrac{1}{2}$$(大まかな近似)であり、$$n=10000$$ である場合、上記の共同確率はおおよそ $$\tfrac{1}{{2^{10000}}} \approx 5 \times 10^{-3011}$$ となり、非常に小さな値です。この値はアンダーフローし、つまり、一般的に科学計算に使用される64ビット浮動小数点数でも、表現可能な最小の数値を下回ります。

「対数トリック」は、式の対数を扱うことで構成されます。つまり、次のようになります:

$$lnP(X_1=\hat{x}_1 \ldots X_n=\hat{x}\_n)= \sum_k^n lnP(X_k=\hat{x}_k)$$

対数は乗算の連続を加算の連続に変換するため、乗算の連続よりも数値的に安定していることが証明されています。

「対数トリック」の使用は、確率的予測が関与する場合に頻繁に行われます。_対数尤度_は、文字通り尤度の対数です(前述で紹介された)が、一般的な浮動小数点数のタイプを考慮すると、生の尤度は通常数値的に表現できません。

確率的予測のアルゴリズムの種類

コンピュータによる確率的予測の生成に関する問題は、機械学習の領域と同じくらい広範です。もし、ある場合には、2つの領域の区別があるとすれば、それは主観的な選択の問題です。それにもかかわらず、このセクションでは、確率的予測を得るために使用できる注目すべきアルゴリズム的アプローチの比較的選択的なリストを紹介します。

20世紀初頭、おそらく19世紀末に、需要の不確実性が正規分布に従うという考え方が生まれました。正規分布の事前計算済みテーブルが他の科学、特に物理学で既に確立されていたため、安全在庫の適用には、需要レベルを事前存在するテーブルから取り出した「安全在庫」係数との乗算が必要でした。逸話的には、1990年代までに書かれた多くのサプライチェーンの教科書には、正規分布のテーブルが付録に含まれていました。残念ながら、このアプローチの主な欠点は、サプライチェーンにとって正規分布は合理的な提案ではないということです。まず、サプライチェーンに関しては、何もが正規分布に従うとは安全に仮定できません。第二に、正規分布は連続分布であり、サプライチェーンのイベントの離散的な性質とは相容れません(上記の「小数の法則」を参照)。したがって、技術的には「安全在庫」には確率的な要素がありますが、基本的な方法論と数値レシピは決定論的な視点に向けられています。ただし、このアプローチは、明確さのためにここにリストされています。

2000年代初頭に、アンサンブル学習法(その最もよく知られた代表はランダムフォレストと勾配ブースティング木である)は、確率的視点から確率的予測に拡張するのが比較的簡単でした。アンサンブル学習のキーポイントは、決定木などの多数の弱い決定論的予測子を優れた決定論的予測子に組み合わせることです。ただし、ミキシングプロセスを調整して、集合学習法を確率的予測法に変換することも可能です。これらの方法は非パラメトリックであり、サプライチェーンで一般的に見られるファットテールおよび/または多峰性の分布に適合することができます。ただし、これらの方法には2つの注目すべき欠点があります。まず、このクラスのモデルが生成する密度確率関数は、ゼロを含むことが多く、対数尤度指標を活用する試みを妨げます。より一般的には、これらのモデルはベイズの視点にはあまり適合していないと言えます。なぜなら、新しい観測値はモデルによって頻繁に「不可能」と宣言されるからです(つまり、確率がゼロ)。ただし、この問題は正則化手法によって解決できます1。第二に、モデルは入力データセットのかなりの部分と同じくらい大きくなる傾向があり、予測操作は「学習」操作とほぼ同じくらい計算コストがかかります。

2010年代に爆発的に登場した「ディープラーニング」という名前で知られるハイパーパラメトリックな手法は、ほとんど「偶然に」確率的でした。実際、ディープラーニングが本当に輝く(例:画像分類など)ほとんどのタスクは確定的な予測に焦点を当てていますが、上記で議論された対数尤度の変種であるクロスエントロピー指標は非常に急勾配を示し、頻繁に確率的勾配降下法(SGD)に適しています。これがディープラーニング手法の核となっています。したがって、ディープラーニングモデルは確率的に設計されていることがわかりますが、確率に興味があったわけではありません。損失関数が確率的予測を反映する場合、勾配降下法がより速く収束するからです。したがって、ディープラーニングに関しては、サプライチェーンはディープラーニングモデルの実際の確率的な出力に興味を持っており、他のほとんどのユースケースでは確率分布を平均値、中央値、またはモードに縮小しています。混合密度ネットワークは、複雑な確率分布を学習するために設計されたディープラーニングネットワークの一種です。結果自体はパラメトリックな分布であり、ガウス分布からなる場合もあります。ただし、実際には「安全在庫」とは異なり、多くのガウス分布の混合物はサプライチェーンで観察されるファットテールの振る舞いを反映する場合があります。ディープラーニング手法はしばしば最先端の技術と見なされますが、特に密度の混合物が関与する場合、数値の安定性を確保することは「ダークアート」の一部です。

ディファレンシャブルプログラミングは、2010年代の終わりに人気を博したディープラーニングの子孫です。ディープラーニングと多くの技術的属性を共有していますが、焦点は大きく異なります。ディープラーニングは任意の複雑な関数(例:囲碁のプレイ)を学習するために、大量の単純な関数(例:畳み込み層)を積み重ねることに焦点を当てていますが、ディファレンシャブルプログラミングは学習プロセスの微細構造に焦点を当てています。最も細かく、最も表現力のある構造は、文字通りプログラムとしてフォーマットすることができます。これには、分岐、ループ、関数呼び出しなどが含まれます。ディファレンシャブルプログラミングは、サプライチェーンにとって非常に興味深いものです。なぜなら、問題は高度に構造化された方法で現れる傾向があり、その構造は専門家には既知です2。たとえば、特定のシャツの販売は、異なる色の他のシャツによって食い合わされる可能性がありますが、3つのサイズ離れたシャツの販売によって食い合わされることはありません。このような構造的な先行知識は、データ効率を高めるために重要です。実際、サプライチェーンの観点からは、データの量は非常に限られている傾向があります(小数の法則を参照)。したがって、問題を構造的に「フレーム化」することで、望ましい統計的パターンが学習されることが保証されます。構造的な先行知識は、数値の安定性の問題にも役立ちます。アンサンブル法と比較して、構造的な先行知識は特徴エンジニアリングよりも時間をかけずに済む傾向があります。また、モデルのメンテナンスも簡素化されます。一方で、ディファレンシャブルプログラミングはまだ比較的新しい視点です。

モンテカルロの視点(1930年/1940年)は、異なる視点から確率的予測にアプローチするために使用することができます。これまでに議論されたモデルは、明示的な確率密度関数(PDF)を提供しています。しかし、モンテカルロの視点からは、モデルをランダムに生成するジェネレーターまたはサンプラーに置き換えることができます。PDFは、ジェネレーターの結果を平均化することで回復することができますが、PDFは計算リソースの要件を減らすために完全に回避されることがしばしばあります。実際、ジェネレーターは、それが表現するPDFよりもはるかにコンパクトなデータでエンジニアリングされることがよくあります。確率的予測に直接取り組むために上記にリストされた手法を含むほとんどの機械学習手法は、ジェネレーターの学習に貢献することができます。ジェネレーターは、低次元のパラメトリックモデル(例:状態空間モデル)またはハイパーパラメトリックモデル(例:ディープラーニングのLSTMおよびGRUモデル)の形を取ることができます。アンサンブル法は、モンテカルロアプローチをサポートするためにはほとんど使用されません。なぜなら、アンサンブル法の「予測」操作は高い計算コストがかかるためです。

確率予測の取り扱い

確率予測から有用な洞察と意思決定を導くには、専門的な数値ツールが必要です。確定的な予測では、単なる数値が存在しますが、確率予測自体は明示的な確率密度関数またはモンテカルロジェネレータです。確率ツールの品質は、実際には確率予測の品質と同じくらい重要です。このツールがないと、確率予測の活用は確定的なプロセスに退化します(以下の「アンチパターン」セクションで詳しく説明します)。

たとえば、ツールは次のようなタスクを実行できる必要があります:

  • 不確実な生産リードタイムと不確実な輸送リードタイムを組み合わせて、「合計」の不確実なリードタイムを取得する。
  • 不確実な需要と不確実なリードタイムを組み合わせて、注文する予定の在庫によってカバーされる「合計」の不確実な需要を取得する。
  • 不確実な注文返品(ECサイト)と不確実なサプライヤー注文の到着日を組み合わせて、不確実な顧客リードタイムを取得する。
  • 統計的な方法によって生成された需要予測に、パンデミックなどの歴史的データに反映されない文脈の高レベルな理解から手動で導かれたテールリスクを追加する。
  • 不確実な需要と在庫の賞味期限(食品小売業)の不確実な状態を組み合わせて、不確実な終日の残り在庫を取得する。

すべての確率予測(需要予測だけでなく)が適切に組み合わされると、サプライチェーンの意思決定の最適化が行われるべきです。これには、制約条件とスコア関数に対する確率的な視点が含まれます。ただし、このツールの側面は、本文書の範囲を超えています。

確率予測を扱うための2つの主要なツールの「フレーバー」があります。第1に、確率変数上の代数、第2に、確率的プログラミングです。これら2つのフレーバーは互いを補完し合い、利点と欠点の組み合わせが異なります。

確率変数の代数は通常、明示的な確率密度関数で動作します。代数は通常の算術演算(加算、減算、乗算など)をサポートしますが、確率変数を統計的に独立して扱います。代数は、確定的な対応物(つまり、単なる数値)とほぼ同じ数値の安定性を提供します。すべての中間結果は後で使用するために永続化でき、データパイプラインの整理やトラブルシューティングに非常に便利です。一方、これらの代数の表現力は限定される傾向があります。確率変数間の微妙な条件付き依存関係をすべて表現することは通常不可能です。

確率的プログラミングは、問題にモンテカルロの視点を採用します。ロジックは一度書かれ、通常は完全に確定論的な視点に従っていますが、ツール(つまり、モンテカルロプロセス)を通じて何度も実行され、必要な統計情報を収集します。最大の表現力は、「プログラム的」な構造を通じて実現されます。任意の複雑な確率変数間の依存関係をモデル化することができます。確率的プログラミングを通じてロジック自体を記述することも、確率変数の代数と比較してわずかに簡単になる傾向があります。一方、数値の安定性(より多くの反復がより高い精度をもたらす)と計算リソース(より多くの反復にはより多くのコストがかかる)の間には、常にトレードオフがあります。さらに、中間結果は通常すぐにアクセスできないため、存在は一時的であり、計算リソースへの圧力を軽減するためです。

深層学習の最近の研究では、上記に示した2つの手法を超えるアプローチも存在することが示されています。たとえば、変分オートエンコーダーは、データ上で非常に複雑な変換を行いながら「潜在空間」上で操作を行う視点を提供します(例:写真のポートレートからメガネを自動的に除去する)。これらの手法は概念的に非常に興味深いですが、サプライチェーンの問題に取り組む際の実用的な関連性は、現時点ではほとんど示されていません。

確率予測の可視化

離散確率分布を視覚化する最も簡単な方法は、ヒストグラムです。垂直軸は確率を示し、水平軸は興味のある確率変数の値を示します。たとえば、リードタイムの確率予測は次のように表示されます:

probabilistic-forecast-leadtime
日次バケットで観測されたリードタイムの経験的分布

特定の期間にわたる将来の需要は、ヒストグラムでも表現することができます。より一般的には、ヒストグラムは相対整数の集合$${ℤ}$$上のすべての一次元確率変数に適しています。

等間隔の時系列の確率的な相当物を視覚化することは、もっとも困難です。実際、一次元の確率変数とは異なり、このような分布の標準的な視覚化方法はありません。注意が必要ですが、期間は独立しているとは仮定できません。したがって、「確率的な」時系列を表現するために、期間ごとにヒストグラムを並べることは可能ですが、この表現方法ではサプライチェーンのイベントの展開方法を誤って表現してしまいます。

probabilistic-demand-intervals
分位点のしきい値を用いた確率的な需要予測

たとえば、新しく立ち上げられた製品が好調で高い販売量を達成すること(ヒット)もあり得ます。同じ新しく立ち上げられた製品が失敗し、低い販売量をもたらすこと(ミス)もあり得ます。ただし、ヒットまたはミスの販売レベルの日々の大きな変動は非常に起こりにくいです。

サプライチェーンの文献で一般的に見られる予測区間は、やや誤解を招くものです。これらは実際のサプライチェーンの状況を代表するものではなく、低い不確実性の状況を強調する傾向があります。

rob-hyndman-prediction-intervals
Visualization of probabilistic forecastsからの抜粋、Rob J Hyndman、2014年11月21日

これらの予測区間は、特定の分位点のしきい値を強調するために、確率分布と並べて表示されています。

より良い表現方法は、強い期間間の依存関係を改善しないが、時間の経過に伴う累積値を見ることで、その分位点を取り、それを復元して期間ごとの増分を得ることです(本記事の冒頭で示した確率予測の最初のイラストを参照)。視覚化は同じですが、基礎となる意味が異なります。これにより、非常に好ましい(または好ましくない)シナリオを示す分位点が得られます。

確率予測のアンチパターン

確率予測は、多くの人々が「直感的に」未来を考える方法に挑戦します。このセクションでは、確率予測の最も誤解されやすい側面のいくつかについて説明します。

「予測不可能な」出来事は存在しない

決定論的な観点からは、宝くじの結果を予測することは不可能です。なぜなら、当たる確率は「百万分の一」だからです。しかし、確率的な観点からは、この問題は些細なものです。すべてのチケットには「百万分の一」の当選確率があります。結果の非常に高い分散は、現象自体の「予測不可能性」とは混同されるべきではありません。宝くじの場合と同様に、現象自体は完全に理解できます。確率予測は分散を数量化し構造化することに関するものであり、分散を排除することではありません。

「正規」分布などというものは存在しない

正規分布、またはガウス分布は、サプライチェーンや物理学の教科書ではよく見られます。しかし、人間の事柄に関しては、「通常」分布されるものはほとんどありません。正規分布は、平均偏差に比べて大きな偏差が非常にまれであるため、モデルによっては、それ自体が不可能とされる(つまり、1/10億以下の確率)ことがあります。需要、リードタイム、返品などは、通常分布されないパターンの例です。正規分布の唯一の利点は、教科書の演習問題を作るのに適していることであり、明示的な解析的な解に適しています。

確率の選り抜き

確率分布に直面した場合、平均値や中央値など、分布の1点を選び出して、その数値に基づいて進めることは誘惑されるかもしれません。しかし、このプロセスは予測の確率的な側面の本質に反します。確率は1つの点推定に収束すべきではありません。なぜなら、どの点が選ばれても、このプロセスによって情報の大量の損失が生じるからです。したがって、やや不安定かもしれませんが、確率は可能な限りそのまま保持することが意図されています。収束点は通常、最終的なサプライチェーンの意思決定であり、不確実な未来に直面しながら収益を最大化します。

統計的な外れ値の削除

多くの古典的な数値手法(移動平均など)は、予測の決定論的な観点に基づいており、統計的な外れ値に遭遇すると誤動作します。そのため、多くの企業では、これらの外れ値を手動で「クリーンアップ」するプロセスを確立しています。しかし、このようなクリーニングプロセスの必要性は、これらの数値手法の不備を明らかにしています。逆に、統計的な外れ値は確率予測の重要な要素であり、分布の「裾」で何が起こっているかをより良く把握するために貢献します。言い換えれば、これらの外れ値は、さらなる外れ値に遭遇する可能性を数量化するための鍵です。

剣を持って銃撃戦に臨む

確率分布を操作するためには、特殊なツールが必要です。確率予測を行うことは、会社に実際の価値を提供するための多くのステップのうちの1つに過ぎません。多くのサプライチェーンの専門家は、適切なツールがないために確率予測を無視することがあります。多くの企業のソフトウェアベンダーは、いまや「確率予測」(および「AI」や「ブロックチェーン」)をサポートしていると主張していますが、実際にはわずかな確率モデルを表面的に実装するだけです(前述のセクションを参照)。確率予測モデルを展示することは、その数値結果を活用するための包括的なツールを持たない限り、ほとんど価値がありません。

ノート


  1. Envisionのsmooth()関数は、ある種の離散サンプリングプロセスを通じてランダム変数を正規化するのに便利です。 ↩︎

  2. 問題の構造に関する事前知識は、解自体の事前知識と混同してはいけません。 1950年代に先駆けて導入された「エキスパートシステム」は、手書きのルールの集まりとして失敗しました。なぜなら、人間の専門家は、実際の数値ルールに彼らの直感を文字通りに変換することに失敗するからです。微分可能プログラミングで使用される構造的な事前知識は、解の詳細ではなく、原則を示しています。 ↩︎