(57)【要約】      （修正有）【課題】需要予測の誤差を精度良く予測する。【解決手段】データ処理装置（発注量提案支援システム１）は、対象品目の需要を予測する需要予測モデルを用いて、需要を予測した需要予測値を算出する需要予測部と、需要予測値の将来の誤差を予測する誤差予測モデルを用いて、誤差を評価する誤差予測部と、を有する。需要予測部は、対象品目の需要に関する実績データから当該実績データの特徴量を抽出し、特徴量に基づいて需要を予測する。誤差予測部は、実績データ、需要予測値及び特徴量に基づいて、誤差を予測する。【選択図】図１
2020102133.tif 000002
【特許請求の範囲】
【請求項１】
対象品目の需要を予測する需要予測モデルを用いて、前記需要を予測した需要予測値を算出する需要予測部と、
前記需要予測値の将来の誤差を予測する誤差予測モデルを用いて、前記誤差を評価する誤差予測部と、を有し、
前記需要予測モデルは、前記対象品目の需要に関する実績データから当該実績データの特徴量を抽出し、前記特徴量に基づいて前記需要を予測し、
前記誤差予測モデルは、前記実績データ、前記需要予測値及び前記特徴量に基づいて、前記誤差を予測する、データ処理装置。
【請求項２】
前記実績データは、複数種別あり、
前記需要予測モデルは、
前記複数種別の実績データのそれぞれの前記特徴量を算出する第１のニューラルネットワークと、
各特徴量を合成した合成特徴量を算出する第２のニューラルネットワークと、
前記合成特徴量から前記需要予測値を算出する第３のニューラルネットワークと、を含む、請求項１に記載のデータ処理装置
【請求項３】
前記誤差予測部は、将来の所定の時点における前記誤差の予測値が基準誤差以上となる確率を求める、請求項１または２に記載のデータ処理装置。
【請求項４】
前記誤差予測部による前記誤差の評価結果がアラート発生条件を満たす場合、アラートを通知する提案部をさらに有する、請求項１乃至３のいずれか一項に記載のデータ処理装置。
【請求項５】
前記対象品目は、複数あり、
前記評価結果が前記アラート発生条件を満たす前記対象品目の数が予め定められた確認数を超えた場合、前記誤差予測モデルの再学習を行うモデル学習部をさらに有する、請求項４に記載のデータ処理装置。
【請求項６】
前記評価結果が前記アラート発生条件を満たす場合、前記需要予測モデルを別のモデルに切り替えるモデル学習部をさらに有する、請求項４または５に記載のデータ処理装置。
【請求項７】
前記提案部は、前記別のモデルを用いて算出された前記需要予測値に対する前記評価結果が前記アラート発生条件を満たさない場合、前記アラートの通知を取り止める、請求項６に記載のデータ処理装置。
【請求項８】
対象品目の需要の実績データから当該実績データの特徴量を抽出し、前記特徴量に基づいて前記需要の予測する需要予測モデルを用いて、前記需要を予測した需要予測値を算出し、
前記実績データ、前記需要予測値及び前記特徴量に基づいて、前記需要予測値の将来の誤差を予測する誤差予測モデルを用いて、前記誤差を評価する、データ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、データ処理装置に関する。
【背景技術】
【０００２】
特許文献１には、電力等のエネルギー需要の予測に利用されるデータ予測システムが開示されている。このデータ予測システムは、予測対象の過去の計測データと、過去の計測データを説明する説明因子データとを記憶し、その過去の計測データと説明因子データとの相関に基づいて、予測対象の将来の値を予測する。また、データ予測システムは、その予測値の将来の誤差を予測し、その誤差に基づいて、予測対象の予測値を補正する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−２２４２６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されたデータ予測システムでは、エネルギー需要等の比較的変動の少ない予測対象の予測値の誤差であれば、精度の良い予測が可能である。しかしながら、一般的な小売り商品のような需要の変動が大きい予測対象に対しては、誤差を精度良く予測することは難しい。
【０００５】
本開示の目的は、需要予測の誤差を精度良く予測することが可能なデータ処理装置及びデータ処理方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一つの実施態様に従うデータ処理装置は、対象品目の需要を予測する需要予測モデルを用いて、前記需要を予測した需要予測値を算出する需要予測部と、前記需要予測値の将来の誤差を予測する誤差予測モデルを用いて、前記誤差を評価する誤差予測部と、を有し、前記需要予測モデルは、前記対象品目の需要に関する実績データから当該実績データの特徴量を抽出し、前記特徴量に基づいて前記需要を予測し、前記誤差予測モデルは、前記実績データ、前記需要予測値及び前記特徴量に基づいて、前記誤差を予測する。
【０００７】
また、本発明の一つの実施態様に従うデータ処理方法は、対象品目の需要の実績データから当該実績データの特徴量を抽出し、前記特徴量に基づいて前記需要の予測する需要予測モデルを用いて、前記需要を予測した需要予測値を算出し、前記実績データ、前記需要予測値及び前記特徴量に基づいて、前記需要予測値の将来の誤差を予測する誤差予測モデルを用いて、前記誤差を評価する。
【発明の効果】
【０００８】
本発明によれば、需要予測の誤差を精度良く予測することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態の発注量提案支援システムの構成例を示すブロック図である。
【図２】データベースに保持される情報の一例を示す図である。
【図３】予測モデル部及び誤差予測部の構成例を示すブロック図である。
【図４】アラート判定処理の一例を示すフローチャートである。
【図５】誤差予測モデル更新判定処理の一例を示すフローチャートである。
【図６】予測モデル学習処理の一例を示すフローチャートである。
【図７】学習用データベースの一例を示す図である。
【図８】需要予測処理の一例を示すフローチャートである。
【図９】誤差予測モデル学習処理の一例を示すフローチャートである。
【図１０】誤差予測学習データ作成処理の一例を示すフローチャートである。
【図１１】誤差予測処理の一例を示すフローチャートである。
【図１２】予測受注量の一例を示す図である。
【図１３】提案発注量の一例を示す図である。
【図１４】サービス要件定義画面の一例を示す図である。
【図１５】受注量予測画面の一例を示す図である。
【図１６】アラート画面の一例を示す図である。
【図１７】発注量提案画面の一例を示す図である。
【図１８】予測システム状態確認画面の一例を示す図である。
【図１９】実施例に係る発注量提案支援システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面を参照して説明する。各図面において同じ機能を有するものには同じ符号を付け、その説明を省略することがある。
【００１１】
図１は、本発明の一実施形態の発注量提案支援システムの構成例を示すブロック図である。図１に示す発注量提案支援システム１は、データ処理装置の一例であり、データベース１０と、予測モデル部１１と、モデル学習部１２と、需要予測部１３と、予測データ保存部１４と、誤差予測部１５と、誤差データ保存部１６と、発注量提案部１７と、定義保存部１８とを備える。
【００１２】
データベース１０は、予測モデル部１１に入力され得る様々な情報を保持する。データベース１０に保持される情報は、例えば、需要を予測する予測対象である対象品目となり得る商品の受注履歴を示す受注実績情報、商品の発注履歴を示す発注履歴情報、商品に関する商品情報、商品を販売する店舗に関する店舗情報、天候情報及び地域情報等である。受注実績情報は、商品の過去の受注量（つまり実績受注量）を含む。発注履歴情報は、商品の過去の発注量（つまり実績発注量）を含む。商品情報は、商品の品名、ジャンル及び価格等を含む。店舗情報は、店舗の売上高等を含む。天候情報は、過去の日々の天気に関する情報（例えば、晴、曇、雨の情報）を含む。地域情報は、商品が販売されている地域に関する情報を含む。
【００１３】
図２は、データベース１０に保持される情報の一例を示す図である。図２に示す情報１２０は、商品Ａの受注実績情報である実績受注量と、商品Ａに関する商品情報である商品のメーカ、カテゴリ及び商品名と、天候情報とを示す。
【００１４】
予測モデル部１１は、需要予測モデルにて実現され、入力された情報から、対象品目の需要（例えば、受注）を予測し、需要に関する将来の情報である予測受注情報を生成して出力する。このとき、予測モデル部１１は、入力された情報の特徴量を算出し、その特徴量に基づいて需要を予測する。予測モデル部１１の予測精度は、予測モデル部１１が使用する需要予測モデルと、その需要予測モデルの多量のパラメータに応じて変化する。
【００１５】
モデル学習部１２は、データベース１０に格納されている情報や予測モデル部１１から出力された予測受注情報等に基づいて、予測モデル部１１の需要予測モデルのパラメータを調整（最適化）する。また、モデル学習部１２は、予測モデル部１１が使用する需要予測モデルを変更（設定）してもよい。
【００１６】
需要予測部１３は、予測モデル部１１を用いて、所望の予測期間における需要予測値である予測受注量を算出する。例えば、需要予測部１３は、データベース１０から、所望の予測期間に対応する情報を読み出して予測モデル部１１へ入力する。そして、需要予測部１３は、予測モデル部１１から出力された予測受注情報に基づいて、当該予測期間における商品等の予測受注量を算出し、その予測受注量を予測データ保存部１４に格納する。このとき、需要予測部１３は、算出した予測受注量を、予測期間に応じて、短期の予測受注量と、長期の予測受注量とに分けて、予測データ保存部１４に格納してもよい。例えば、需要予測部１３は、予測期間が数日の予測受注量を、短期の予測受注量として、予測期間が数週間から数か月の予測受注量を、長期の予測受注量として格納してよい。
【００１７】
誤差予測部１５は、予測モデル部１１に入力される情報、予測モデル部１１が算出する特徴量、及び予測データ保存部１４に格納される予測受注量に基づいて、予測受注量の将来の誤差を予測し、その誤差予測結果を誤差データ保存部１６に格納する。
【００１８】
発注量提案部１７は、予測データ保存部１４に格納された予測受注量に基づいて、商品の将来の発注量である提案発注量を出力することで、発注量提案支援システム１のユーザであるオペレータに商品の発注量を提案する。また、発注量提案部１７は、誤差データ保存部１６に格納された誤差予測結果に基づいて、アラートを出力する。提案発注量やアラートは、表示装置に表示され得る画面の形式で出力されてもよい。なお、オペレータは、通知された提案発注量及びアラートに基づいて発注量を決定し、発注を行うことができる。
【００１９】
定義保存部１８は、オペレータのサービス要件を示すサービス要件定義を保存する。サービス要件定義は、発注量提案部１７がアラートを出力するアラート発生条件、及び、需要予測モデル又は誤差予測モデルの更新（再学習又は切替等）を行うモデル変更条件などを含んでもよい。
【００２０】
図３は、予測モデル部１１及び誤差予測部１５の構成例を示すブロック図である。図３に示すように予測モデル部１１は、特徴量生成部１３０と、特徴量合成部１３１と、受注量予測部１３２とを有する。誤差予測部１５は、誤差予測器１４０を有する。
【００２１】
特徴量生成部１３０には、需要予測部１３によってデータベース１０から抽出された、様々な種別の時系列情報が種別を示す種別情報と共に入力される。特徴量生成部１３０は、入力された時系列情報及び種別情報から、時系列情報の特徴量を種別毎に抽出する。時系列情報は、対象品目の需要に関する実績データの一例であり、時間経過に伴って値（又は状態）が変化し得る情報である。時系列情報は、例えば、店舗の売上高、商品の売上数、売上額、又は受注量等の実績情報（履歴情報）である。また、時系列情報は、天候情報等でもよい。ここで、商品の売上数等の実績情報と、天候情報とは、種別の異なる時系列情報である。また、店舗の売上高と商品の売上数とを種別の異なる時系列情報としてもよい。また、例えば、店舗の売上高であれば、その時系列情報に対応する種別情報には店舗名等の店舗を識別する情報が含まれる。
【００２２】
特徴量生成部１３０は、時系列情報の種別に応じた特徴量生成用のニューラルネットワーク１３０Ａを有し、その種別毎のニューラルネットワーク１３０Ａを用いて、当該種別の時系列情報における特徴量を抽出してもよい。種別毎に固有のニューラルネットワーク１３０Ａを用いることにより、種別毎に顕著な特徴量を抽出することができる。
【００２３】
特徴量合成部１３１は、特徴量生成部１３０によって抽出された各種別の特徴量を、需要の予測に利用できる形式の特徴量である合成特徴量に合成する。特徴量合成部１３２は、入力された各種別の特徴量に重み付けを行って合成特徴量を出力するニューラルネットワーク１３１Ａを用いて、各種別の特徴量を合成してもよい。また、ニューラルネットワーク１３１Ａの代わりに、入力された各種別の特徴量を単純加算又は単純平均した結果を合成特徴量として出力するモジュール等が使用されてもよい。
【００２４】
予測部１３２は、ニューラルネットワーク１３２Ａを用いて予測受注量を算出して出力する。ここで、予測部１３２は、特徴量合成部１３１によって出力された合成特徴量を用いて、ニューラルネットワーク１３２Ａの初期パラメータを決定する。そして、予測部１３２は、そのニューラルネットワーク１３２Ａを用いて、期間Ｔにおける予測受注量を算出する。期間Ｔは、予測対象に関する情報、例えば、商品情報等を入力することにより定められてもよい。商品情報には、或る商品の受注実績（受注履歴）及び商品名等が含まれてよい。
【００２５】
なお、ニューラルネットワーク１３０Ａ、１３１Ａ及び１３２Ａが需要予測モデルを構成する。需要予測モデルの複数のパラメータは、モデル学習部１２によって調整（最適化）されてよい。例えば、モデル学習部１２は、或る時点から期間Ｔにおける、予測受注量と実績受注量とに基づき、予測受注量の実際に生じた誤差を算出する。そして、モデル学習部１２は、その実際の誤差を、特徴量生成部１１０、特徴量合成部１１１、及び予測部１１２へフィードバック情報１３３としてフィードバックする。これにより、ニューラルネットワーク１３０Ａ、１３１Ａ及び１３２Ａの学習が進み、予測受注量の精度が向上する。
【００２６】
誤差予測器１４０は、予測受注量の将来の誤差を予測する誤差予測モデルを用いて、予測受注量の将来の誤差を評価し、その評価結果を誤差予測結果として出力する。誤差予測モデルは、データベース１０から抽出された様々な種別の時系列情報と、予測部１３２から出力された予測受注量と、特徴量生成部１３０にて生成された特徴量とに基づいて、予測受注量の将来の誤差を評価してもよい。誤差予測モデルによる誤差の予測値である誤差予測値は、平均二乗誤差などでもよいし、ＭＡＰＥ（Mean Absolute Percentage Error：平均絶対誤差率）等のような誤差率でもよい。誤差予測結果は、アラートの通知、誤差予測モデルの更新（再学習）、予測モデル部１１が使用する需要予測モデルの変更などに用いられてもよい。
【００２７】
図４は、発注量提案部１７によるアラートを通知するか否かを判定するアラート判定処理の一例を示すフローチャートである。なお、以下の例では、予測対象となる商品には予め番号が付与されており、誤差予測結果は商品毎、つまり商品の番号毎に生成されている。発注量提案部１７は、商品の番号をカウントするカウンタを備えている。
【００２８】
ステップＳ１０１において、発注量提案部１７は、現在のカウント値であるi番目の商品の誤差予測結果を誤差データ保存部１６から読み込む。そして、フローは、ステップＳ１０２へ進む。
【００２９】
ステップＳ１０２において、発注量提案部１７は、読み込んだ誤差予測結果がアラート発生条件を満たすか否かを判定する。誤差予測結果が数値で表される場合、発注量提案部１７は、誤差予測結果が規定値以下か否かを判定してもよい。また、誤差予測結果が状態で表される場合、発注量提案部１７は、誤差予測結果が特定の状態か否かを判定してもよい。状態としては、例えば、将来の誤差監視時点における誤差予測値が基準誤差以上となる確率が高い「高誤差」、及び、将来の誤差監視時点における誤差予測値が基準誤差以上となる確率が低い「低誤差」などである。特定の状態は「高誤差」であってもよい。
【００３０】
発注量提案部１７は、誤差予測結果が規定値を超えている場合（Ｓ１０２：ＮＯ）、ステップＳ１０３へ進む。ステップＳ１０３では、発注量提案部１７は、i番目の商品に対してアラートフラグを付与する。
【００３１】
発注量提案部１７は、誤差予測結果が規定値以下の場合（Ｓ１０２：ＹＥＳ）、及び、ステップＳ１０３が終了した場合、ステップＳ１０４へ進む。ステップＳ１０４では、発注量提案部１７は、カウント値であるｉが予測対象の商品の数である全対象商品数未満か否かを判定する。
【００３２】
発注量提案部１７は、カウント値であるｉが全対象商品数未満の場合（Ｓ１０４：ＹＥＳ）、ステップＳ１０５へ進む。ステップＳ１０５では、発注量提案部１７は、カウント値であるｉをインクリメントし、ステップＳ１０１に戻る。
【００３３】
一方、発注量提案部１７は、カウント値であるｉが全対象商品数以上の場合（Ｓ１０４：ＮＯ）、ステップＳ１０６へ進む。ステップＳ１０６では、発注量提案部１７は、商品に付与したアラートフラグの全てを保存して、処理を終了する。
【００３４】
その後、発注量提案部１７は、アラートフラグが付与された商品に対するアラートを出力する。アラートは、商品の予測受注量の予測精度が低い恐れがあること等を示す情報でもよい。また、モデル学習部１２は、アラートフラグが付与された場合、予測モデル部１１の需要予測モデルを別のモデルに切り替えてもよい。このとき、発注量提案部１７は、別のモデルにて算出された予測受注量に基づいて、提案発注量を再算出して出力してもよい。また、発注量提案部１７は、別のモデルから算出された誤差予測結果が規定値より大きい場合に、アラートを出力し、別のモデルから算出された誤差予測結果が規定値以下となった場合、アラートの出力を取り止めてもよい。別のモデルは、特徴量を算出しないモデルでもよい。
【００３５】
図５は、発注量提案部１７による誤差予測モデルを更新するか否かを判定する誤差予測モデル更新判定処理の一例を示すフローチャートである。
【００３６】
ステップＳ２０１において、発注量提案部１７は、図４のステップＳ１０６で保存したアラートフラグを読み込む。そして、フローは、ステップＳ２０２へ進む。
【００３７】
ステップＳ２０２において、発注量提案部１７は、アラートフラグの総数が商品確認数未満か否かを判定する。商品確認数は、定義保存部１８に保存されたサービス要件定義に含まれる。
【００３８】
発注量提案部１７は、アラートフラグの総数が商品確認数未満の場合（Ｓ２０２：ＹＥＳ）、ステップＳ２０３へ進む。ステップＳ２０３では、発注量提案部１７は、現在の日時から誤差予測モデルを最後に更新した最終更新日時を差し引いた値、つまり最終更新日時から現在の日時までの間隔が学習間隔を超えているか否かを判定する。学習間隔は、定義保存部１８に保存されたサービス要件定義に含まれる。
【００３９】
発注量提案部１７は、アラートフラグの総数が商品確認数以上の場合（Ｓ２０２：ＮＯ）、及び、最終更新日時から現在の日時までの間隔が学習間隔を超えている場合（Ｓ２０３：Ｙｅｓ）の場合、ステップＳ２０４へ進む。ステップＳ２０４では、発注量提案部１７は、誤差予測モデルを更新する更新フラグを保存し、処理を終了する。
【００４０】
また、発注量提案部１７は、最終更新日時から現在の日時までの間隔が学習間隔以下の場合（Ｓ２０３：Ｎｏ）の場合、更新フラグを保存せずに処理を終了する。
【００４１】
なお、本フローにおいて、学習間隔を無限大にしたり、最終更新日を未来の日時に設定したりするなどして、最終更新日時から現在の日時までの間隔が常に学習間隔以下となるようにしてもよい。
【００４２】
図６は、モデル学習部１２による需要予測モデルの学習処理である予測モデル学習処理の一例を示すフローチャートである。図６の例では、予測モデル学習処理は、誤差予測部１５にて予測受注量の誤差予測値を予測するために用いる誤差予測特徴データを取得するためにも使用される。
【００４３】
ステップＳ３０１において、モデル学習部１２は、データベース１０から、学習用データベース１１Ａ（図７参照）を作成する。例えば、モデル学習部１２は、データベース１０から、或る時点よりも過去の期間Ｐにおける第１情報と、当該或る時点よりも将来の期間Ｔにおける第２情報とを抽出し、学習用レコードとして学習用データベース１１Ａに格納する。期間Ｐにおける第１情報は、例えば、或る時点よりも過去の９０日分の売上実績情報である。期間Ｔにおける第２情報は、例えば、或る時点よりも将来の期間Ｔ分の受注実績情報である。すなわち、モデル学習部１２は、データベース１０から或る商品に関する期間Ｔにおける第１情報と期間Ｐにおける第２情報とを抽出し、学習用データベース１１Ａに登録する。そして、フローは、ステップＳ３０２へ進む。
【００４４】
ステップＳ３０２において、モデル学習部１２は、学習用データベース１１Ａから予測対象とする商品の商品情報（第１情報）を抽出し、予測モデル部１１の需要予測モデルへ入力する。このとき、複数の商品を一度に予測対象としてもよい。そして、フローは、ステップＳ３０３へ進む。
【００４５】
ステップＳ３０３において、モデル学習部１２は、需要予測部１３と同様の処理（図８参照）により、期間Ｔにおける商品の予測受注量を算出する。そして、フローは、ステップＳ３０４へ進む。
【００４６】
ステップＳ３０４において、モデル学習部１２は、ステップＳ３０３にて算出した期間Ｔにおける予測受注量と、同じ期間Ｔにおける実績受注量との実際の誤差を算出する。そして、フローは、ステップＳ３０５へ進む。モデル学習部１２は、例えば、平均二乗誤差によって当該誤差を算出してよい。或いは、モデル学習部１２は、式（１）によって当該誤差を算出してよい。
【数１】
2020102133.tif 000003
【００４７】
式（１）において、Dは、予測受注量の算出に用いた商品ｉの総数を示し、Ｔは、単位あたりの期間（以下「単位期間」という）ｔの総数（全期間）を示す。単位期間ｔは、例えば、１時間、１日又は１週間等であってよい。ｘｉ，ｔは、商品ｉの単位期間ｔにおける実績受注量を示し、ｘ’ｉ，ｔは、商品ｉの単位期間ｔにおける予測受注量を示す。式（１）では、各商品の実績受注量ｘｉ，ｔと予測受注量ｘ’ｉ，ｔとの差をｗｉで除算している。これにより、受注量の大小による誤差の大小を正規化（平準化）している。
【００４８】
ステップＳ３０５において、モデル学習部１２は、Ｓ３０４で算出した誤差を、特徴量生成部１３０、特徴量合成部１３１、及び予測部１３２へフィードバックする。そして、フローは、ステップＳ３０６へ進む。
【００４９】
ステップＳ３０６において、モデル学習部１２は、ステップＳ３０１で作成した学習用データベースと、ステップＳ３０３で算出した予測受注量と、ステップＳ３０３で予測受注量を算出するために使用した特徴量とを、誤差予測特徴データとして保存する。そして、フローは、ステップＳ３０７へ進む。
【００５０】
ステップＳ３０７において、モデル学習部１２は、誤差の変動が収束した場合、或いは、予め規定した繰り返し処理数に到達した場合（Ｓ３０７：ＹＥＳ）、ステップＳ３０８へ進む。一方、モデル学習部１２は、誤差の変動が未収束であり、かつ、予め規定した繰り返し処理数に未到達である場合（Ｓ３０７：ＮＯ）、ステップＳ３０２に戻る。
【００５１】
ステップＳ３０８において、モデル学習部１２は、上述の処理によって学習した、予測モデル部１１のパラメータを保存し、処理を終了する。
【００５２】
図７は、モデル学習部１２で用いられる学習用データベース１１Ａの一例を示す図である。学習用データベース１１Ａは、図７に示すような複数の学習用レコード１０１Ａと、複数の誤差算出用レコード１０２Ａとを有する。誤差算出用レコードはテストレコードと呼んでもよい。
【００５３】
学習用レコード１０１Ａは、或る基準時刻から過去の期間Ｐにおける第１情報をデータベース１０から抽出し、結合したものである。学習用レコード１０１Ａは、例えば、予測に用いる時系列情報及び種別情報を含む。種別情報は、カテゴリカル情報と呼んでもよい。種別情報は、例えば、商品カテゴリ名、商品名、又は天気等、数値の大きさで表現できない、及び／又は、順序関係を定義できない情報である。
【００５４】
また、誤差算出用レコード１０２Ａは、或る基準時刻から将来の期間Ｔにおける第２情報をデータベースから抽出し、結合したものである。図７に示す誤差用レコード１０２Ａは、商品Ａの受注実績情報の例である。
【００５５】
図８は、需要予測部１３による需要を予測する需要予測処理の一例を示すフローチャートである。
【００５６】
ステップＳ４０１において、需要予測部１３は、データベース１０から予測受注量の算出に用いる情報を読み出す。そして、フローは、ステップＳ４０２へ進む。
【００５７】
ステップＳ４０２において、需要予測部１３は、ステップＳ４０１で読み出した情報を、予測モデル部１１へ入力する。当該予測モデル部１１は、この入力された情報に基づいて、単位期間ｔの予測受注量を出力する。需要予測部１３は、この出力された単位期間ｔの予測受注量を取得する。そして、フローは、ステップＳ４０３へ進む。
【００５８】
ステップＳ４０３において、需要予測部１３は、単位期間ｔに１単位を加算する。つまり、需要予測部１３は、単位期間ｔを１単位分進める。そして、フローは、ステップＳ４０４へ進む。
【００５９】
ステップＳ４０４において、需要予測部１３は、単位期間ｔが最大予測期間Ｔを超えている（ｔ＞Ｔ）か否かを判定する。単位期間ｔ≦最大予測期間Ｔの場合（Ｓ５０４：ＮＯ）、フローは、ステップＳ４０５へ進む。単位期間ｔ＞最大予測期間Ｔの場合（Ｓ５０４：ＹＥＳ）、フローは、ステップＳ４０７へ進む。
【００６０】
ステップＳ４０５において、需要予測部１３は、ステップＳ４０２にて算出した予測受注量を、メモリに格納する。そして、フローは、ステップＳ４０６へ進む。
【００６１】
ステップＳ４０６において、需要予測部１３は、メモリに格納された予測受注量を、新たな入力情報に追加する。そして、フローは、ステップＳ４０２へ戻る。このように、予測受注量を再度入力情報に追加することにより、任意の将来までの期間について予測を行うことができる。
【００６２】
ステップＳ４０７において、需要予測部１３は、最大予測期間Ｔについて算出した予測受注量を、ファイルに保存する。
【００６３】
図９は、モデル学習部１２による誤差予測モデルの学習処理である誤差予測モデル学習処理の一例を示すフローチャートである。誤差予測モデル学習処理は、図５のステップＳ２０４でモデル更新フラグが保存された場合に実行される。
【００６４】
ステップＳ５０１において、モデル学習部１２は、図６のステップＳ３０６で保存した誤差予測特徴データから、誤差予測学習データを作成する（図１０参照）。そして、フローは、ステップＳ５０２へ進む。
【００６５】
ステップＳ５０２において、モデル学習部１２は、誤差予測学習用データベースから予測対象とする商品の商品情報を抽出し、誤差予測部１５の誤差予測モデルへ入力する。このとき、複数の商品を一度に予測対象としてもよい。そして、フローは、ステップＳ５０３へ進む。
【００６６】
ステップＳ５０３において、モデル学習部１２は、誤差予測部１５と同様の処理（図１１参照）により、期間Ｔにおける商品の予測受注量の誤差予測値を予測する。そして、フローは、ステップＳ５０４へ進む。
【００６７】
ステップＳ５０４において、モデル学習部１２は、ステップＳ５０３にて算出した期間Ｔにおける誤差予測値と、ステップＳ５０１で作成した誤差予測学習データの高誤差フラグ（図１０参照）が付与された値との差異を算出する。そして、フローは、ステップＳ５０５へ進む。
【００６８】
ステップＳ５０５において、モデル学習部１２は、Ｓ５０４で算出した差異を、誤差予測部１５にフィードバックする。そして、フローは、ステップＳ５０６へ進む。
【００６９】
ステップＳ５０６において、モデル学習部１２は、誤差の変動が収束した場合、或いは、予め規定した繰り返し処理数に到達した場合（Ｓ５０６：ＹＥＳ）、ステップＳ５０７へ進む。一方、モデル学習部１２は、誤差の変動が未収束であり、かつ、予め規定した繰り返し処理数に未到達である場合（Ｓ５０６：ＮＯ）、ステップＳ５０２に戻る。
【００７０】
ステップＳ５０７において、モデル学習部１２は、上述の処理によって学習した、誤差予測部１５のパラメータを保存し、処理を終了する。
【００７１】
図１０は、図９のステップＳ５０１の処理、つまり誤差予測学習データを作成する誤差予測学習データ作成処理の一例を示すフローチャートである。
【００７２】
ステップＳ６０１において、モデル学習部１２は、図６のステップＳ３０６で保存した誤差予測特徴データを読み込む。そして、フローは、ステップＳ６０２へ進む。
【００７３】
ステップＳ６０２において、モデル学習部１２は、誤差予測特徴データからｉ番目の商品の将来の誤差監視時点における予測受注量の誤差予測値を取得する。そして、フローは、ステップＳ６０３へ進む。誤差監視時点は、定義保存部１８に保存されたサービス要件定義に含まれる。
【００７４】
ステップＳ６０３において、モデル学習部１２は、ステップＳ６０２で取得した誤差予測値が基準誤差未満か否かを判定する。基準誤差は、定義保存部１８に保存されたサービス要件定義に含まれる。
【００７５】
モデル学習部１２は、誤差予測値が基準誤差未満の場合（Ｓ６０３：ＹＥＳ）、ステップＳ６０４へ進む。ステップＳ６０４では、モデル学習部１２は、ｉ番目の商品に対して低誤差フラグを付与する。そして、フローは、ステップＳ６０６へ進む。
【００７６】
一方、モデル学習部１２は、誤差予測値が基準誤差以上の場合（Ｓ６０３：ＮＯ）、ステップＳ６０５へ進む。ステップＳ６０５では、モデル学習部１２は、ｉ番目の商品に対して高誤差フラグを付与する。そして、フローは、ステップＳ６０６へ進む。
【００７７】
ステップＳ６０６において、モデル学習部１２は、カウント値であるｉが全対象商品数未満か否かを判定する。
【００７８】
モデル学習部１２は、カウント値であるｉが全対象商品数未満の場合（Ｓ６０６：ＹＥＳ）、ステップＳ６０７へ進む。ステップＳ６０７では、モデル学習部１２は、カウント値であるｉをインクリメントし、ステップＳ６０２に戻る。
【００７９】
モデル学習部１２は、カウント値であるｉが全対象商品数以上の場合（Ｓ６０６：ＮＯ）、ステップＳ６０８へ進む。ステップＳ６０８では、モデル学習部１２は、誤差予測特徴データの各商品にその商品の低誤差フラグ又は高誤差フラグを加えて誤差予測学習データとして保存する。
【００８０】
図１１は、誤差予測部１５による誤差予測処理の一例を示すフローチャートである。
【００８１】
ステップＳ７０１において、誤差予測部１５は、予測受注量の誤差予測値の算出に利用する誤差予測学習データを誤差予測モデルに入力する。そして、フローは、ステップＳ７０２へ進む。
【００８２】
ステップＳ７０２において、誤差予測部１５は、誤差予測モデルを用いて、現在のカウント値であるi番目の商品の将来の誤差監視時点における誤差予測値が高誤差となる確率である高誤差確率を算出する。そして、フローは、ステップＳ７０２へ進む。誤差予測値が高誤差であるとは、誤差予測値が基準誤差以上であることを示す。
【００８３】
ステップＳ７０３において、誤差予測部１５は、高誤差確率がしきい値より大きいか否かを判定する。
【００８４】
誤差予測部１５は、高誤差確率がしきい値より大きい場合（Ｓ７０３：ＹＥＳ）、ステップＳ７０４に進む。ステップＳ７０４では、誤差予測部１５は、ｉ番目の商品に対する誤差予測結果として、誤差が高い「高誤差」を示す情報をメモリに保存する。そして、フローは、ステップＳ７０６へ進む。
【００８５】
一方、誤差予測部１５は、高誤差確率がしきい値以下の場合（Ｓ７０３：ＮＯ）、ステップＳ７０５に進む。ステップＳ７０５では、誤差予測部１５は、ｉ番目の商品に対する誤差予測結果として、誤差が低い「低誤差」を示す情報をメモリに保存する。そして、フローは、ステップＳ７０６へ進む。
【００８６】
ステップＳ７０６において、誤差予測部１５は、カウント値であるｉが全対象商品数未満か否かを判定する。
【００８７】
誤差予測部１５は、カウント値であるｉが全対象商品数未満の場合（Ｓ７０６：ＹＥＳ）、ステップＳ７０７へ進む。ステップＳ７０７では、モデル学習部１２は、カウント値であるｉをインクリメントし、ステップＳ７０２に戻る。
【００８８】
モデル学習部１２は、カウント値であるｉが全対象商品数以上の場合（Ｓ６０６：ＮＯ）、ステップＳ７０８へ進む。ステップＳ７０８では、誤差予測部１５は、全ての商品に対する誤差予測結果データを誤差データ保存部１６に保存して、処理を終了する。
【００８９】
図１２は、単位期間ｔを１日とした場合における予測受注量の一例を示す図である。
【００９０】
図１２に示すように、各商品について、予測開始日から予測期間Ｔまでの１日単位の予測受注量が算出される。予測受注量は、商品の売上数又は売上額等であってよい。なお、予測受注量には、当該予測受注量の信頼度ｃ等、当該予測受注量に対する付加情報が対応付けられてもよい。
【００９１】
図１３は、単位期間ｔを１日とした場合における提案発注量の一例を示す図である。
【００９２】
図１３に示すように、各商品について、予測開始日から予測期間Ｔまでの１日単位の提案発注量が算出される。提案発注量は、商品の発注数又は発注額等であってよい。
【００９３】
図１４は、サービス要件定義画面の一例を示す図である。サービス要件定義画面は、発注量提案部１７で生成される。
【００９４】
図１４に示すように、サービス要件定義画面１６０には、サービス要件定義、予測モデル部１１が予測受注量の予測に用いたニューラルネットワークの構造、及び、算出された予測受注量が含まれる。図１４の例では、サービス要件定義として、予測受注量の誤差の定義、基準誤差、商品確認数、誤差監視時点及び学習間隔が示されている。
【００９５】
また、サービス要件定義画面には、実績受注量と予測受注量とがまとめて表示されてよい。図１４のサービス要件定義画面１６０では、点線のグラフで実績受注量が示され、実線のグラフで予測受注量が示されている。
【００９６】
図１５は、受注量予測画面の一例を示す図である。受注量予測画面は、発注量提案部１７で生成される。
【００９７】
図１５に示すように、受注量予測画面１６１には、予測に用いられた情報、予測モデル部１１が当該予測に用いたニューラルネットワークの構造、及び、算出された予測受注量が含まれる。
【００９８】
受注量予測画面には、サービス要件定義画面と同様に、実績受注量と予測受注量とがまとめて表示されてよい。図１５の受注量予測画面１６１では、点線のグラフで実績受注量が示され、実線のグラフで予測受注量が示されている。
【００９９】
図１６は、アラート画面の一例を示す図である。アラート画面は、発注量提案部１７で生成される。
【０１００】
図１６に示すように、アラート画面１６２は、他の画面にアラートが重畳された画面でもよい。他の画面は、受注量予測画面、サービス要件定義画面、又は、後述する発注量提案画面でもよい。アラートは、例えば、予測精度が低い恐れのある商品、つまり、誤差予測結果が規定値以下の商品を通知する。
【０１０１】
図１７は、発注量提案画面の一例を示す図である。発注量提案画面は、発注量提案部１７で生成される。
【０１０２】
図１７に示すように、発注量提案画面１６３には、発注の提案に関する提案情報、及び、算出された予測受注量が含まれる。提案情報は、発注する商品の商品名と、発注する商品の次回の発注タイミングと、提案発注量とを含んでもよい。
【０１０３】
発注量提案画面には、サービス要件定義画面と同様に、実績受注量と予測受注量とがまとめて表示されてよい。図１７の発注量提案画面１６３では、点線のグラフで実績受注量が示され、実線のグラフで予測受注量が示されている。
【０１０４】
図１８は、予測システム状態確認画面の一例を示す図である。予測システム状態確認画面は、発注量提案部１７で生成される。
【０１０５】
図１８に示すように、予測システム状態確認画面１６４には、サービス要件定義、予測モデル部１１が予測受注量の予測に用いたニューラルネットワークの構造、及び、発注量提案支援システムの状態を示す予測ステータスが含まれる。予測ステータスは、各商品の予測受注量の将来の誤差の平均値である平均誤差、アラートを出力した総数、及び、次の誤差予測モデルの更新タイミング等を含んでもよい。
【０１０６】
以上説明したように、本開示は以下の事項を含む。
本開示の一態様に係る発注量提案支援システム１は、データ処理装置の一例である。データ処理装置は、対象品目（商品）の需要（受注）を予測する需要予測モデルを用いて、需要を予測した需要予測値（予測受注量）を算出する需要予測部（需要予測部１３）と、需要予測値の将来の誤差を予測する誤差予測モデルを用いて、誤差を評価する誤差予測部（誤差予測部１５）とを有する。需要予測モデルは、対象品目の需要に関する実績データ（時系列情報）から当該実績データの特徴量を抽出し、特徴量に基づいて、需要を予測する。誤差予測モデルは、実績データ、需要予測値及び特徴量に基づいて、誤差を予測する。
【０１０７】
このように、需要予測モデルの内部で生成される特徴量を用いて需要予測値の将来の誤差が予測されるので、需要予測値の誤差を精度良く予測することが可能になる。
【０１０８】
また、実績データは、複数種別ある。需要予測モデルは、複数種別の実績データのそれぞれの特徴量を算出する第１のニューラルネットワーク（ニューラルネットワーク１３０Ａ）と、各特徴量を合成した合成特徴量を算出する第２のニューラルネットワーク（ニューラルネットワーク１３１Ａ）と、合成特徴量から需要予測値を算出する第３のニューラルネットワーク（ニューラルネットワーク１３２Ａ）と、を含む。
【０１０９】
このように、複数種別の実績データのそれぞれの特徴量を合成した合成特徴量に基づいて需要予測値が算出される。このため、複数の需要データの特徴を良好に捉えることが可能になるため、需要を良好に予測し、さらには誤差を良好に評価することが可能になる。
【０１１０】
また、誤差予測部は、将来の所定の時点における誤差の予測値が基準誤差以上となる確率を求める。
【０１１１】
このように、誤差の予測値が基準誤差以上となる確率が求められるため、将来、誤差が大きくなる恐れがあることを事前に評価することが可能になる。
【０１１２】
また、データ処理装置は、誤差予測部による誤差の評価結果がアラート発生条件を満たす場合、アラートを通知する提案部（発注量提案部１７）をさらに有する。
【０１１３】
このように、評価結果がアラート発生条件を満たす場合にアラートが通知されるため、ユーザのニーズに適合したアラームの通知が可能となる。
【０１１４】
また、対象品目は、複数ある。データ処理装置は、評価結果がアラート発生条件を満たす対象品目の数が予め定められた確認数（商品確認数）を超えた場合、誤差予測モデルの再学習を行う。
【０１１５】
このように、評価結果がアラート発生条件を満たす対象品目の数が確認数を超えた場合、誤差予測モデルの再学習が行われる。このため、誤差予測モデルの予測精度を確保することが可能になる。
【０１１６】
また、データ処理装置は、評価結果がアラート発生条件を満たす場合、需要予測モデルを別のモデルに切り替えるモデル学習部（モデル学習部１２）をさらに有する。
【０１１７】
このように、評価結果がアラート発生条件を満たす場合、需要予測モデルが別のモデルに切り替えられる。このため、より適切な需要予測が可能となる。
【０１１８】
また、提案部は、別のモデルを用いて算出された需要予測値に対する評価結果がアラート発生条件を満たさない場合、アラートの通知を取り止める。
【０１１９】
このように、別のモデルにおける評価結果がアラート発生条件を満たさない場合、アラートの通知が取り止められる。このため、アラートをより適切に通知することが可能になる。
【実施例】
【０１２０】
本発明は、以下の実施例のような形態に適用されてもよい。
【０１２１】
図１９は、実施例に係る発注量提案支援システムの構成を示すブロック図である。図１９に示す発注量提案支援システム１は、図１に示した構成に加えて、定義入力部１９をさらに有する。
【０１２２】
定義入力部１９は、発注量提案支援システム１によるオペレータへのサービスの提供を始める前に、オペレータからサービス要件定義であるアラート発生条件（しきい値など）及びモデル変更条件（商品確認数など）を受け付けるインタフェースである。発注量提案部１７は、定義入力部１９が受け付けたアラート発生条件及びモデル変更条件を定義保存部１８に設定する。
【０１２３】
オペレータは、例えば、オペレータの負荷やコストを抑える低コスト重視の場合、しきい値を大きくし、アラートを出力する回数を減らし、オペレータによる商品の発注量を見直す回数を少なくする。また、発注量の精度を重視する場合、しきい値を小さくする。また、誤差予測モデルの構築コストを抑えることを重視する場合、商品確認数を上げる。このように、サービス要件定義を適宜調整することで、オペレータに最適な品質のサービスを提供することができる。
【０１２４】
上述した本発明の実施形態及び実施例は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の範囲を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【符号の説明】
【０１２５】
１…発注量提案支援システム  １０…データベース  １１…予測モデル部  １２…モデル学習部  １３…需要予測部  １４…予測データ保存部  １５…誤差予測部  １６…誤差データ保存部  １８…発注量提案部  １１０…特徴量生成部  １１１…特徴量合成部  １１２…予測部
【図１】
2020102133.tif 000004
【図２】
2020102133.tif 000005
【図３】
2020102133.tif 000006
【図４】
2020102133.tif 000007
【図５】
2020102133.tif 000008
【図６】
2020102133.tif 000009
【図７】
2020102133.tif 000010
【図８】
2020102133.tif 000011
【図９】
2020102133.tif 000012
【図１０】
2020102133.tif 000013
【図１１】
2020102133.tif 000014
【図１２】
2020102133.tif 000015
【図１３】
2020102133.tif 000016
【図１４】
2020102133.tif 000017
【図１５】
2020102133.tif 000018
【図１６】
2020102133.tif 000019
【図１７】
2020102133.tif 000020
【図１８】
2020102133.tif 000021
【図１９】
2020102133.tif 000022