メルマガ登録
前編はこちら
前編では、需要予測とは何か、川中に位置する食品卸売企業のDXプロジェクトでは、メーカーへの自動発注システムにおいて需要予測はどう利用されているのかを解説しました。
後編では、機械学習による需要予測モデルの構築、運用について解説します。
【需要予測、サプライチェーンDXの関連記事】
【前編】DXに必要なのはデータを「蒸留」させるプロセス~巨大流通企業の「サプライチェーンDX」を成功に導く勘所~
「2024年問題」で日本の物流になにが起きるのか、より深く知りたい方はこちらもご覧ください。
機械学習による需要予測モデルを作るステップは、大きく分けて4つあります。
1.必要なデータを集める
2. データを加工する
3. モデルを構築する
4. モデルの評価を行う
この中で、最も難しく、工数がかかるのが、実はモデルを構築する前段階(1,2)なのです。
まず、本プロジェクトで利用する需要予測モデルを作るためには、サプライチェーン全体からデータを集めてくる必要があります。例えば、川上からは、メーカーの業務カレンダーや入数情報、川中からは食品卸業者の受注、出荷、在庫データ、川下からは小売業者からの日々の受注量やPOSの売上データなどです。加えて、天候やイベント情報など消費者の購買傾向と深く関係するデータも利用します。
これらは管理する組織が異なるので、データ形式も異なります。よって、集めてきたデータを整理し、抜けている部分を補填し、紐付ける必要があり、この作業が大変なのです。
その一番の理由は、業務で必要とされる情報と我々が必要とする情報が異なる点にあります。例えば、販売が終了した商品について考えてみましょう。終売商品情報は今後業務で利用することがないため、商品リストから削除され、履歴も残されないことがほとんどです。しかし需要予測モデルを作る側にとってみれば、過去の傾向を知る上で重要な情報なので、必要となるのです。
また、終売商品の商品コードが新商品のコードとして再利用されることがあります。業務上、ある時点での商品コードが一意であれば全く問題は生じないのですが、モデル作成の観点から見ると、過去販売分を含めた商品の区別をする必要があるため、全期間を通して固有のIDであってほしいのです。
過去のカレンダー情報が残っていないこともよくあります。業務上は現在~未来の情報があれば十分ですが、モデルを作る上ではそうはいきません。
必要な過去データが残っていない場合は、ルールベースで補填したり、現場へヒアリングを行い「おおよその数で良いから埋めてください」とお願いするなどの工夫をします。預金残高の計算等とは違って傾向がわかればよいので、ある程度誤差があっても工夫次第で利用することができるからです。
現場の人たちにとって最も大切なデータは現在のデータですが、私たち分析官にとっては過去のデータも同じくらい重要です。この考え方のずれが、DXを進める上でのデータ整備を難しくしています。これからDXに取り組む組織では、まず現在のデータも過去のデータもどちらも大切という認識合わせから始めるとよいかもしれません。
モデルの予測精度は高いに越したことはありません。しかしある程度の精度が出せるようになると、そこから先は重箱の隅をつつくような改良をしていくことになり、数%の精度向上に大変な労力がかかるようになります。業務によっては、それでも精度を高めるべきケースもありますが、在庫最適化における需要予測については、そもそも安全在庫という誤差を許容するための考え方がありますので、闇雲に予測精度を高めても費用対効果が低くなります。
さらに言うと、需要予測が外れる場合は、天候不順や災害など突発的な原因によることが多いので、こうした「想定外」のリスクを考慮したモデルを作るのは、かなり難易度が高いです。
想定外のリスクに備えるためには、モデルを高機能化するよりも、発注量を人手で修正できるようにするなど、柔軟な対応が可能なシステムを作ることが肝要だと思います。ただしこれは、データサイエンスというよりもエンジニアリングの範疇なので、データサイエンティストとしては、こうした柔軟性も考慮した上で、モデルの作成・改善を行っていくことが大切だと考えています。
PoCなどで一時的に利用するモデルを作るだけであれば、運用について考える必要はありません。ですがDXにおいては、モデルをシステムの一部として組み込むことがほとんどですから、データサイエンティストも運用について考慮する必要が出てきます。
影響を受けるポイントの1つが、モデルの構造です。
例えば、食品卸業者の自動発注システムにおける需要予測モデルを作るにあたり、PoCであれば対象倉庫を一つに絞り、その倉庫で限定的に精度の出るモデルを作ることができれば良い、となります。しかし、それをシステムに載せて全国へ展開するとなると、そのままでは数十ある倉庫それぞれに対してモデルを作成することになり、システム上の負荷、及び運用上の負荷が高くなってしまいます。そこで、できるだけ複数倉庫をまとめて予測できるモデルづくりが必要となってきます。
このように、運用を前提に考えると、需要予測モデルのデザインも変化させる必要が出てきます。
もう1つ、モデルの再学習や改善に対する配慮です。
モデルを使い続けていると、外部環境の変化などが原因で、予測精度が落ちる可能性があります。そこで、精度が落ちた際に、誰がモデルの再学習や改善を担当するのかを考えておかなければなりません。
データを理解しつくし、実際にモデルを構築したデータサイエンティストに任せるのがベストですが、いつ発生するかわからない事象に備えてデータサイエンティストを1名張り付けてしまうと、運用費が大きくかさんでしまいます。
この点を解決するためには、ある程度自動化した後、システム運用を担当しているエンジニアに業務移行するのがコスト的には現実的だと思います。しかし、モデルを構築したデータサイエンティストと運用を引き継ぐエンジニアとの役割分担やコラボレーションの仕方、情報共有の仕組みをどうしていくのかについては、まだまだ整理しきれておらず、クリアすべき課題は多いと感じています。
DX推進がようやく本格化した日本で、機械学習モデルを問題なく運用できている企業はほとんど存在していないのではないかと、私は思っています。私たちもこの先に予定されている本格運用に備えて、現在モデル運用の体制作り・仕組み作りを進めている段階です。
私が担当しているプロジェクトは、川中のDX推進が直近の目的ですが、将来的には食品サプライチェーン全体の最適化を見据えています。川中は、川上、川下両方と業務上深い関係を持っているため、サプライチェーン全体の情報を集積しやすく、また両者に影響を与えることのできるポジションです。よって、川中のDXを推進することは、サプライチェーン全体の効率化に繋げやすいと考えています。
例えば、川上に位置するメーカーであれば、川中の自動発注システムで発注頻度を調整することにより、商品の配送コストを最適化することができるでしょう。また、より長期的な需要予測ができるようになれば、製造計画の精緻化に利用することも可能です。一方、川下の小売業者では、卸業務の品質が上がることで欠品リスクが低下し、販売機会損失の減少が見込めます。
前半でも述べましたが、川中のDXを実現するためには、川上・川下含めたデータの整備が必要となります。川中だけの通常業務の延長線上とは異なる視点で取り組まないといけないため、川上にとっても、川下にとっても、追加の労力となってしまいます。しかし、相応のメリットがあることをしっかり説明した上で、サプライチェーン全体で足並みを揃えて取り組める環境を整えることが重要だと考えています。そのような説得がしやすいのも、サプライチェーン全体に利益をもたらせる川中だと思います。
総合商社では、今回開発した自動発注システムの外販を計画しておられます。これが実現すれば、システム導入までのハードルが下がるため、今後、食品サプライチェーンのDX化はより加速することでしょう。私たちブレインパッドは、本プロジェクトで得たノウハウを展開することが可能です。私自身はこの経験を活かし、日本のサプライチェーン全体の最適化、ひいては食品ロスなどの社会的問題に貢献できれば、データサイエンティスト冥利につきる大きなやりがいになると感じています。
【前編】DXに必要なのはデータを「蒸留」させるプロセス~巨大流通企業の「サプライチェーンDX」を成功に導く勘所~
【後編】DXに必要なのはデータを「蒸留」させるプロセス ~巨大流通企業の「サプライチェーンDX」を成功に導く勘所~
あなたにオススメの記事
2023.12.01
生成AI(ジェネレーティブAI)とは?ChatGPTとの違いや仕組み・種類・活用事例
2023.09.21
DX(デジタルトランスフォーメーション)とは?今さら聞けない意味・定義を分かりやすく解説【2024年最新】
2023.11.24
【現役社員が解説】データサイエンティストとは?仕事内容やAI・DX時代に必要なスキル
2023.09.08
DX事例26選:6つの業界別に紹介~有名企業はどんなDXをやっている?~【2024年最新版】
2023.08.23
LLM(大規模言語モデル)とは?生成AIとの違いや活用事例・課題
2024.03.22
生成AIの評価指標・ベンチマークとそれらに関連する問題点や限界を解説