IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日新電機株式会社の特許一覧 ▶ 国立大学法人京都工芸繊維大学の特許一覧

特許7607296モデル生成装置、予測装置、モデル生成方法、および予測方法
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-12-19
(45)【発行日】2024-12-27
(54)【発明の名称】モデル生成装置、予測装置、モデル生成方法、および予測方法
(51)【国際特許分類】
   G06N 20/00 20190101AFI20241220BHJP
   G06F 17/15 20060101ALI20241220BHJP
   G06F 18/27 20230101ALI20241220BHJP
   G06Q 10/04 20230101ALI20241220BHJP
   G06F 123/02 20230101ALN20241220BHJP
【FI】
G06N20/00 130
G06F17/15
G06F18/27
G06Q10/04
G06F123:02
【請求項の数】 9
(21)【出願番号】P 2023221626
(22)【出願日】2023-12-27
【審査請求日】2024-10-03
【早期審査対象出願】
(73)【特許権者】
【識別番号】000003942
【氏名又は名称】日新電機株式会社
(73)【特許権者】
【識別番号】504255685
【氏名又は名称】国立大学法人京都工芸繊維大学
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】森本 充
(72)【発明者】
【氏名】竹原 輝巳
(72)【発明者】
【氏名】角田 あかり
(72)【発明者】
【氏名】井尻 有策
(72)【発明者】
【氏名】寶珍 輝尚
【審査官】新井 則和
(56)【参考文献】
【文献】特開2020-129314(JP,A)
【文献】特開2012-170740(JP,A)
【文献】特開2022-083834(JP,A)
【文献】藤原 佑介 外,勾配ブースティング木と並列処理を用いたビル電力需要予測,第81回(2019年)全国大会講演論文集(4) インタフェース コンピュータと人間社会 学会予稿集,2019年02月28日,pp. 4-639~4-640
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
G06F 17/15
G06F 18/27
G06Q 10/04
G06F 123/02
(57)【特許請求の範囲】
【請求項1】
施設における需要電力量を予測するための予測モデルを生成するモデル生成装置であって、
前記モデル生成装置は、
前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出し、
前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択し、
前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、
前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成し、
前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出し、
前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する、モデル生成装置。
【請求項2】
前記第1モデルから出力される前記需要電力量の予測値を第1予測値と称し、
前記第2モデルから出力される前記需要電力量の予測値を第2予測値と称し、
前記モデル生成装置は、
前記実績値の予測対象期間に属する各時点の少なくとも一部を、複数の切替時点候補として設定し、
(i)前記予測対象期間の始点である予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(ii)前記切替時点候補の次の時点から前記予測対象期間の終点である予測終了時点までの各時点における前記第1予測値と、に基づき、複数の前記切替時点候補の内から切替時点を選択する、請求項1に記載のモデル生成装置。
【請求項3】
前記モデル生成装置は、
複数の前記切替時点候補のそれぞれについて、(i)前記予測開始時点から前記予測終了時点までの各時点における前記実績値と、(ii)前記予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(iii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1予測値と、に基づき、前記予測対象期間における前記第1予測値と前記第2予測値との総合誤差を算出し、
前記総合誤差に基づいて、複数の前記切替時点候補の内から、前記切替時点を選択する、請求項2に記載のモデル生成装置。
【請求項4】
前記実績値と前記第1予測値との誤差を第1誤差と称し、
前記実績値と前記第2予測値との誤差を第2誤差と称し、
前記モデル生成装置は、
(i)前記予測開始時点から前記切替時点候補までの各時点における前記第2誤差の累積値と、(ii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1誤差の累積値と、の和を算出し、
前記和を、前記予測対象期間に属する時点の総数によって除算した値を、前記総合誤差として算出する、請求項3に記載のモデル生成装置。
【請求項5】
前記モデル生成装置は、複数の前記切替時点候補の内、前記総合誤差の最小値に対応する切替時点候補を、前記切替時点として選択する、請求項3または4に記載のモデル生成装置。
【請求項6】
学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測装置であって、
前記学習フェーズでは、
前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、
前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、
前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、
前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、
前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、
前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、
前記予測装置は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する、予測装置。
【請求項7】
前記第1モデルから出力される前記需要電力量の予測値を第1予測値と称し、
前記第2モデルから出力される前記需要電力量の予測値を第2予測値と称し、
前記学習フェーズでは、
予測開始時点から予測終了時点までの各時点の少なくとも一部が、複数の切替時点候補として設定されており、
(i)前記予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(ii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1予測値と、に基づき、複数の前記切替時点候補の内から切替時点が選択されており、
前記予測装置は、
前記学習フェーズにおける前記予測開始時点から前記切替時点までの時間長を、切替時間長として算出し、
前記予測フェーズにおける予測開始時点に前記切替時間長を加算した時点を、前記予測フェーズにおける切替時点として設定し、
前記予測フェーズにおける前記予測開始時点から、前記予測フェーズにおける前記切替時点までの各時点について、前記第2モデルに前記第2予測値を出力させ、
前記予測フェーズにおける前記切替時点の次の時点から、前記予測フェーズにおける予測終了時点までの各時点について、前記第1モデルに前記第1予測値を出力させる、請求項6に記載の予測装置。
【請求項8】
施設における需要電力量を予測するための予測モデルを生成するモデル生成方法であって、
前記モデル生成方法は、
前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出する工程と、
前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択する工程と、
前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出する工程と、
前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成する工程と、
前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出する工程と、
前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する工程と、を含んでいる、モデル生成方法。
【請求項9】
学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測方法であって、
前記学習フェーズでは、
前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、
前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、
前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、
前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、
前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、
前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、
前記予測方法は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する工程を含んでいる、予測方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の一態様は、施設における需要電力量を予測するための予測モデルを生成するモデル生成装置に関する。
【背景技術】
【0002】
近年、施設における様々な種類のエネルギー需要量を予測するために機械学習が利用されている。例えば、下記の特許文献1には、蓄熱利用システムにおける熱負荷を、ニューラルネットワークによって予測する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開平9-89348号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の一態様は、施設における需要電力量の予測精度を高めることを目的とする。
【課題を解決するための手段】
【0005】
本発明の一態様に係るモデル生成装置は、施設における需要電力量を予測するための予測モデルを生成するモデル生成装置であって、前記モデル生成装置は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出し、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択し、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成し、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出し、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する。
【0006】
本発明の一態様に係る予測装置は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測装置であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、前記予測装置は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する。
【0007】
本発明の一態様に係るモデル生成方法は、施設における需要電力量を予測するための予測モデルを生成するモデル生成方法であって、前記モデル生成方法は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出する工程と、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択する工程と、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出する工程と、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成する工程と、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出する工程と、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する工程と、を含んでいる。
【0008】
本発明の一態様に係る予測方法は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測方法であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、前記予測方法は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する工程を含んでいる。
【発明の効果】
【0009】
本発明の一態様によれば、施設における需要電力量の予測精度を高めることができる。
【図面の簡単な説明】
【0010】
図1】参考形態における情報処理装置の要部の構成を例示するブロック図である。
図2】参考形態における訓練データとしての実績データの例である。
図3】参考形態における訓練データとしての就業状態データの例である。
図4図3の就業状態データに前値補間を施すことによって生成されたデータの例である。
図5図2の実績データと図4のデータとを組み合わせることによって生成されたデータの例である。
図6】ラグとACとの対応関係を示すテーブルの例である。
図7】ラグとACとの関係を示すグラフの例である。
図8図5のデータにラグ特徴量を追加することによって生成されたデータの例である。
図9】8のデータにローリング特徴量コンポーネントとローリング特徴量とを追加することによって生成されたデータの例である。
図10図9のデータからローリング特徴量コンポーネントを削除することによって生成されたデータの例である。
図11図10のデータに時点相当量を追加することによって生成されたデータの例である。
図12図11のデータに曜日を追加することによって生成されたデータの例である。
図13図12のデータにおける各特徴量に対して標準化を施すことによって生成されたデータの例である。
図14】等差数列要素を選択する処理の流れを例示するフローチャートである。
図15】参考形態における予測フェーズにおける前処理後入力データの例である。
図16】実施形態1における情報処理装置の要部の構成を例示するブロック図である。
図17】就業日に着目して就業日非ローリングラグを導出する処理の例を示す。
図18】休日に着目して休日非ローリングラグを導出する処理の例を示す。
図19図17および図18の処理によって決定された非ローリングラグの一覧を示す。
図20】就業日に着目して就業日ローリングラグを導出する処理の例を示す。
図21】休日に着目して休日非ローリングラグを導出する処理の例を示す。
図22図20および図21の処理によって決定されたローリングラグの一覧を示す
図23】実施形態1において生成された新たな時系列データの例である。
図24】実施形態1において生成された新たな時系列データの別の例である。
図25】実施形態1において生成された新たな時系列データの別の例である。
図26】実施形態1において生成された新たな時系列データの別の例である。
図27】実施形態2における情報処理装置の要部の構成を例示するブロック図である。
図28】予測対象期間の各時点における第1モデルの誤差を示すグラフの例である。
図29】予測対象期間の各時点における第2モデルの誤差を示すグラフの例である。
図30】予測対象期間の各時点における第1モデルの誤差および第2モデルの誤差を示すグラフの例である。
図31】複数の切替時点候補のそれぞれに対応する総合誤差の例を示す。
図32】予測フェーズにおける第1モデル用の入力データの例を示す。
図33】予測フェーズにおける第2モデル用の入力データの例を示す。
【発明を実施するための形態】
【0011】
〔参考形態〕
実施形態1の情報処理装置1Aの説明に先立ち、参考形態としての情報処理装置1について述べる。説明の便宜上、参考形態にて説明した構成要素(コンポーネント)と同じ機能を有する構成要素については、以降の各実施形態では、同じ符号を付記し、その説明を繰り返さない。また、簡潔化のため、公知技術と同様の事項についても、説明を適宜省略する。本明細書において述べる各コンポーネントおよび各数値はいずれも、特に矛盾のない限り単なる例示である。それゆえ、例えば、特に矛盾のない限り、各コンポーネントの位置関係および接続関係は各図の例に限定されない。また、各図の例における日付と曜日との対応関係は、必ずしも実際のカレンダーのものと一致していないことに留意されたい。本明細書では、特に矛盾のない限り、2つの数AおよびBについての表記「A~B」は、「A以上かつB以下」を表す。
【0012】
(情報処理装置1の概要)
図1は、参考形態における情報処理装置1の要部の構成を例示するブロック図である。情報処理装置1は、制御装置9および記憶部90を備えていてよい。制御装置9は、情報処理装置1の各部を統括的に制御する。制御装置9は、モデル生成装置10および予測装置20を備えていてよい。
【0013】
後述の通り、モデル生成装置10は、施設における需要電力量を予測するための予測モデルを、機械学習によって生成する。このことから、モデル生成装置10は、学習装置と称されてもよい。予測装置20は、モデル生成装置10によって予め生成された予測モデルを用いて、上記施設における需要電力量の予測値を導出する。
【0014】
本発明の一態様における施設は、例えば、時間帯、曜日、および当該施設内における従業者の就業状態の内の少なくとも1つに応じて、需要電力量の変動が生じうる施設であればよい。本発明の一態様における施設の例としては、工場などの工業施設、ショッピングモールなどの商業施設、および、病院などの医療施設を挙げることができる。
【0015】
記憶部90は、制御装置9の処理に用いられる各種のデータおよびプログラムを格納する。図1の例では、実績データと就業状態データとが記憶部90に格納されているものとする。本明細書では、実績データとは、所定の時間分解能にて記録された、施設における需要電力量の実績値を示すデータ(より詳細には、データ構造)を総称的に指す。本明細書では、特に矛盾のない限り、「需要電力量」という文言は、需要電力量の実績値を指すものとする。
【0016】
実績データは、時点と需要電力量とが対応付けられたデータであるので、需要電力量の時間推移を示す時系列データの例である。本明細書の例では、実績データにおける時間分解能は1分である。本明細書の例では、時間分解能が1分のデータにおける時点は、「年/月/日 時/分」形式(「yyyy/mm/dd /hh/mm」形式)によって表現されているものとする。時点は、データ構造におけるキーとして使用されてよい。
【0017】
本明細書では、就業状態データとは、施設における日毎の就業状態を示すデータを総称的に指す。一例として、就業状態データとは、ある日が当該施設の就業日であるか否かを示すデータであってよい。就業状態データは、日付と就業状態とが対応付けられたデータであるので、就業状態の日ごとの推移を示す時系列データの例である。本明細書の例では、以下に述べる前値補間が施される前の就業状態データにおける時間分解能は1日である。本明細書の例では、時間分解能が1日のデータにおける日付は、「年/月/日」形式(「yyyy/mm/dd」形式)によって表現されているものとする。
【0018】
(参考形態における学習フェーズ)
以下、情報処理装置1の動作の一例について述べる。情報処理装置1の処理は、学習フェーズにおける処理(モデル生成装置10の一連の処理)と、予測フェーズにおける処理(予測装置20の一連の処理)と、に大別される。はじめに、学習フェーズの例について説明する。
【0019】
図1に示す通り、モデル生成装置10は、データ取得部11、前処理部12、学習部13、および評価部14を備えていてよい。データ取得部11は、学習時データ取得部または第1データ取得部と称されてもよい。前処理部12は、学習時前処理部または第1前処理部と称されてもよい。
【0020】
図1に示す通り、記憶部90には、学習フェーズにおいて用いられる実績データDZと就業状態データDSとが格納されていてよい。以下、例えば、実績データDZを単にDZを略称する。データ取得部11は、学習フェーズにおける入力データセットとしてDZおよびDSを取得する。そして、データ取得部11は、当該入力データセットを訓練データと検証データとに分割する。
【0021】
図2のDZ0は、訓練データとしての実績データの例である。DZ0は、DZの一部である。本明細書の例では、実績データに記録されている需要電力量の単位はkWhであるものとする。図3のDS0は、訓練データとしての就業状態データの例である。DS0は、DSの一部である。本明細書の例では、就業状態データ内に記録されている就業状態は、質的変数(より詳細には、名義尺度)に予め変換されているものとする。図3の例における「1」という就業状態の値は、その日(当該就業状態に対応する日)が就業日であることを示す。その一方、「0」という就業状態の値は、その日が休日であることを示す。
【0022】
ただし、就業状態データに記録されている就業状態の種類は、上記の例に限定されない。例えば、「長期休暇日」という就業状態の種類が就業状態データに記録されていてもよい。長期休暇日とは、所定の長期休暇(例:夏季休暇期間)に属する休日を意味する。この場合、例えば、「-1」という就業状態の値によって、その日が長期休暇日であることが示されてよい。
【0023】
前処理部12は、学習部13による機械学習アルゴリズムの実行に先立ち、訓練データに一連の前処理を施すことにより、前処理後訓練データを生成する。次いで、学習部13は、機械学習アルゴリズムを実行することにより、当該前処理後訓練データに基づいて予測モデルを生成する。
【0024】
まず、前処理部12は、DS0に記録されている就業状態について前値補間を実行することにより、新たなデータを生成する。図4のDS1は、当該新たなデータの例である。DS1は、前値補間後就業状態データと称されてもよい。具体的には、前処理部12は、前値補間によって、DS0をDZ0と等しい時間分解能(例:1分)を有する新たなデータへと変換する。図4に示す通り、前値補間の結果として、DS1では、同じ日付に属する就業状態は、全ての時点において同じ値を有する。
【0025】
次いで、前処理部12は、時点をキーとして用いてDZ0とDS1とを組み合わせることにより、新たなデータを生成する。図4のDZ1は、当該新たなデータの例である。例えば、前処理部12は、DS1における「就業状態」の列をDZ0に追加することにより、DZ1を生成する。DZ1は、就業状態データ付実績データと称されてもよい。
【0026】
次いで、前処理部12は、DZ1における需要電力量の自己相関係数(autocorrelation coefficient)を算出する。本明細書では、当該自己相関係数をACと略記する。具体的には、前処理部12は、ラグ(lag)を様々に変化させ、ラグ毎のACを算出する。ラグは、時系列データとしての特徴量に対して設定される時間的な遅延量を表す。
【0027】
前処理部12は、ラグ単位量とラグ次数との積としてラグを設定してよい。そして、前処理部12は、決定したラグ毎にACを算出してよい。一例として、ラグ単位量は、情報処理装置1のユーザによって予め設定された一定値であってよい。本明細書では、ラグ単位量が30分である場合を例示する。ただし、前処理部12によってラグ単位量が設定されてもよい。例えば、前処理部12は、DZ1の時間分解能(例:1分)をラグ単位量として設定してもよい。
【0028】
前処理部12は、ラグとACとの対応関係を示すテーブルを生成してよい。図6のLTは、当該テーブルの例を示す。図6の例では、LTにおけるキーとして、ラグ次数が使用されてよい。図6の例では、前処理部12は、ラグ次数を1から1008まで変化させることにより、1008通りのラグを設定する。したがって、前処理部12は、1008通りのACを算出する。本明細書の例におけるラグは、日単位の時間長を表す量である。
【0029】
上述の通り、ラグ単位量は30分であるので、ラグ次数1は30分に相当する。したがって、ラグ次数48は1日(=30分×48)に相当する。そして、ラグ次数336(=48×7)は、7日すなわち1週に相当する。そして、ラグ次数672(=336×2)は14日すなわち2週に相当し、ラグ次数1008(=336×3)は21日すなわち3週に相当する。
【0030】
本明細書では、データ構造の要素番号を整数iによって総称的に表す。図6の例におけるiは、ラグ次数に等しい値であってよい。そこで、図6の例において、iに対応するラグをlag[i]と表記する。また、iに対応するACをAC[i]と表記する。以上の説明から明らかである通り、i>1におけるlag[i]は、i番目に短いラグを表す。本明細書では、特に矛盾のない限り、一般的なプログラミング言語の記法に従って、データ構造の要素番号の最小値は0であるものとする。図6には示されていないが、当業者であれば明らかである通り、lag[0]=0であり、AC[0]=1である。
【0031】
前処理部12は、ACに基づいて、設定した複数のラグの内から特殊ラグを選択(抽出)する。一例として、前処理部12は、複数のラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有するACに対応するラグを、特殊ラグとして選択してよい。
【0032】
一般的に、機械学習の分野では、2つのデータ間の相関係数が0.7以上である場合に、当該データ間に強い正の相関が存在していると考えることができる。このことから、一例として、自己相関閾値は0.7~1であればよい。自己相関閾値は、ユーザによって任意に設定可能な値であってよい。本明細書では、自己相関閾値が0.7である場合を例示する。
【0033】
そして、施設内における需要電力量の変動は、短期的にはおおよそ1日前後の周期を有していると一般的に考えられる。したがって、時間長閾値は、比較的短期的な需要電力量の変動トレンドを把握するために適切と考えられる値に設定されていればよい。時間長閾値も、ユーザによって任意に設定可能な値であってよい。本明細書では、時間長閾値が1日である場合を例示する。
【0034】
当業者であれば明らかである通り、ラグが短い場合には、1に近いACが生じやすい。そこで、上記の通り時間長閾値を設定することにより、多くの短いラグが特殊ラグとして選択されることを避けることができる。すなわち、選択される特殊ラグの数を減らすことができる(図6の例におけるラグ次数1~3の行を参照)。その結果、後述の説明から理解できる通り、予測モデルの品質を向上させることができる。
【0035】
上述の通り、1日という時間長閾値は、i=48に対応する。図6の例では、i≧48の範囲において、
AC[48]=0.78
AC[336]=0.73
AC[672]=0.70
AC[1008]=0.72
が、自己相関閾値以上の値を有している。したがって、前処理部12は、
lag[48]=1
lag[336]=7
lag[672]=14
lag[1008]=21
を、特殊ラグとして選択する。
【0036】
発明者らは、ある工場において得られた実績データを用いて、当該工場におけるラグとACとの関係を導出した。図7は、発明者らによって導出された、当該工場におけるラグとACとの関係を示すグラフである。図7のグラフにおいて、横軸はラグ次数を示し、縦軸はACを示す。図7のグラフにおける横軸は、ラグに読み替えることができる。図7のグラフのトレンドは、図6の例に概ね一致している。
【0037】
次いで、前処理部12は、抽出した複数の特殊ラグを昇順にソートしてよい。そして、前処理部12は、ソートされた当該特殊ラグを要素として含む配列Plagを生成してよい。参考形態の例では、前処理部12は、Plag=[1,7,14,21]を生成する。そして、前処理部12は、Plagの要素の内、等差数列を成す要素(等差数列要素)を選択する。等差数列要素の選択手法については後述する。
【0038】
参考形態の例では、前処理部12は、Plagの要素の内、1番目以降の要素であるPlag[1:]=[7,14,21]を、等差数列要素として選択する。これらの等差数列要素は、初項の値が7であり、かつ、公差が7である等差数列を成す。
【0039】
そして、前処理部12は、Plagの要素の内、等差数列要素を除いた要素を、残余要素として選択する。残余要素は、非等差数列要素(等差数列を成さない要素)と称されてもよい。参考形態の例では、前処理部12は、Plagの要素の内、0番目の要素であるPlag[0]=[1]を、残余要素として選択する。
【0040】
前処理部12は、上述の通り選択した特殊ラグを需要電力量に対して設定することにより、新たな特徴量を導出する。例えば、前処理部12は、新たな特徴量として、ローリング特徴量(rolling feature)およびラグ特徴量(lag feature)の少なくとも一方を導出してよい。
【0041】
上述の図7を踏まえると、等差数列要素に該当する特殊ラグは、需要電力量における変動の比較的長期的な周期性を表現するために適していると考えられる。そこで、前処理部12は、等差数列要素に当該する特殊ラグを、ローリング特徴量を導出するための特殊ラグであるローリングラグとして選択してよい。参考形態の例では、前処理部12は、ラグ「7、14、および21」をローリングラグとして選択する。前処理部12は、当該ローリングラグに基づいてローリング特徴量を導出する。
【0042】
そして、前処理部12は、残余要素に該当する特殊ラグを、ローリング特徴量とは別の特徴量を導出するための特殊ラグである非ローリングラグとして選択してよい。参考形態の例では、前処理部12は、ラグ「1」を非ローリングラグとして選択する。当該非ローリングラグは、需要電力量における変動の比較的短期的な周期性を表現するために適していると考えられる。そこで、前処理部12は、当該非ローリングラグに基づいてラグ特徴量を導出する。
【0043】
参考形態では、ローリング特徴量の導出に先立ち、ラグ特徴量が導出される場合を例示する。ただし、当業者であれば明らかである通り、ラグ特徴量の導出に先立ち、ローリング特徴量が導出されてもよい。本明細書の例における各処理は、特に矛盾のない限り、任意の順序で実行されてよい。
【0044】
前処理部12は、非ローリングラグを需要電力量に対して設定することにより、当該需要電力量に対応する新たな特徴量としてのラグ特徴量を導出する。図8のDZ2は、DZ1にラグ特徴量を追加することによって生成されたデータの例を示す。参考形態の例では、非ローリングラグが1であるため、前処理部12は、「1日前の需要電力量」をラグ特徴量として導出する。したがって、図8の例において、時点「2021/4/1 0:00」の行に属する「1日前の需要電力量」は、「2021/3/31 0:00における需要電力量」を表す。また、時点「2022/3/31 23:59」の行に属する「1日前の需要電力量」は、「2022/3/30 23:59における需要電力量」を表す。
【0045】
次いで、前処理部12は、非ローリングラグを需要電力量に対して設定することにより、当該需要電力量に対応する新たな特徴量としてのローリング特徴量を導出する。まず、前処理部12は、ある時点に対して、ローリングラグだけ前の時点の需要電力量を、当該時点に対応するローリング特徴量の構成要素(ローリング特徴量コンポーネント)として取得する。参考形態の例では、ローリングラグが7、14、および21であるため、前処理部12は、「7日前の需要電力量」、「14日前の需要電力量」、および「21日前の需要電力量」を、ローリング特徴量コンポーネントとして取得する。前処理部12は、当該ローリング特徴量コンポーネントをDZ2に追加する。
【0046】
次いで、前処理部12は、ローリング特徴量コンポーネントの統計値をローリング特徴量として導出する。本明細書では、統計値が平均値である場合を例示する。したがって、前処理部12は、「7日前の需要電力量」と「14日前の需要電力量」と「21日前の需要電力量」との平均値を導出する。前処理部12は、当該平均値をローリング特徴量としてDZ2にさらに追加する。
【0047】
図9のDZ3は、DZ2にローリング特徴量コンポーネントとローリング特徴量とを追加することによって生成されたデータの例を示す。図9の例において、時点「2021/4/1 0:00」の行に属する「7日前の需要電力量」、「14日前の需要電力量」、および「21日前の需要電力量」は、「2021/3/25 0:00における需要電力量」を、「2021/3/18 0:00における需要電力量」、および「2021/3/11 0:00における需要電力量」をそれぞれ表す。そして、時点「2021/4/1 0:00」の行に属する「平均(7,14,21日前)需要電力量」は、同時点の行に属する「7日前の需要電力量」と「14日前の需要電力量」と「21日前の需要電力量」との平均値を表す。
【0048】
ローリング特徴量の取得後には、ローリング特徴量コンポーネントはもはや不要であると考えられる。そこで、前処理部12は、ローリング特徴量の取得後に、DZ3からローリング特徴量コンポーネントを削除してよい。図10のDZ4は、DZ3からローリング特徴量コンポーネントを削除することによって生成されたデータの例を示す。
【0049】
次いで、前処理部12は、DZ4に記録されている時点を、所定の型に変換することにより、当該時点に対応する特徴量である時点相当量を導出する。そして、前処理部12は、当該時点相当量をDZ4に追加する。一例として、前処理部12は、基準時点「0:00」から対象時点までの経過時間を時間(h)単位で表す量として、時点相当量を設定してよい。図11のDZ5は、DZ4に時点相当量を追加することによって生成されたデータの例を示す。
【0050】
図11の例では、「0:00」からの1分間の経過時間は、1/60(≒0.01667)という時点相当量に対応する。参考形態の例では、時点の年(y)、月(m)、および日(d)を考慮せずに、時間(h)および分(m)のみを用いて時点相当量が導出されている。ただし、当業者であれば明らかである通り、年、月、および日の少なくともいずれかを考慮した型として導出された量が、時点相当量として導出されてもよい。
【0051】
ただし、当業者であれば明らかである通り、時点相当量は必ずしも導出されなくともよい。本発明の一態様に係る予測モデルは、特殊ラグを需要電力量に対して設定することにより導出された新たな特徴量を説明変数として用いて、需要電力量の予測値を出力できるように設定されていればよいためである。
【0052】
次いで、前処理部12は、例えばカレンダーデータを参照することにより、DZ5に記録されている時点の日付に対応する曜日を決定する。そして、前処理部12は、当該曜日をDZ5に追加する。図12のDZ6は、DZ5に曜日を追加することによって生成されたデータの例である。図12の例では、前処理部12は、質的変数(名義尺度)に変換した曜日をDZ5に追加することにより、DZ6を生成している。本明細書の例では、曜日0~6は、日曜日~土曜日をこの順に表す。したがって、図12の例における曜日4は、木曜日を表す。
【0053】
図12に示す通り、DZ6において、需要電力量、および当該需要電力量に基づいて導出された新たな特徴量は、例えば曜日および就業状態を示す特徴量(カレンダー特徴量)に比べて大きい値となりうる。したがって、前処理部12は、DZ6に含まれている各特徴量に対するスケーリングを実行してよい。これにより、各特徴量の数値範囲を同程度に揃えることができるので、より高い性能を有する予測モデルを生成することが可能となる。
【0054】
本明細書では、前処理部12がスケーリングとして標準化(standardization)を実行する場合を例示する。前処理部12は、DZ6に含まれているある特徴量について、当該特徴量の平均値(μ)および標準偏差(σ)を導出する。そして、前処理部12は、導出したμおよびσを用いて、当該特徴量を標準化する。本明細書では、学習モデルの生成前の標準化に用いたμおよびσを、標準化パラメータと称する。図13のDZ6Sは、DZ6の各特徴量に対して標準化を施すことによって生成されたデータの例である。参考形態の例では、DZ6が、前処理後訓練データとして用いられる。
【0055】
学習部13は、需要電力量に基づいて導出された新たな特徴量が追加された後の、当該需要電力量の時系列データに基づいて、機械学習によって予測モデルを生成する。したがって、一例として、学習部13は、所定の機械学習アルゴリズムを実行することにより、前処理後訓練データ(例:DZ6S)に基づいて予測モデルを生成してよい。
【0056】
本発明の一態様に係る予測モデルは、予測対象時点における需要電力量の予測値を、目的変数として出力できる学習済モデルであればよい。したがって、機械学習アルゴリズムの種類は、回帰タスクを解くことが可能なものであれば、特に限定されない。機械学習アルゴリズムの例としては、ニューラルネットワーク(Neural Network,NN)、サポートベクターマシン(Support Vector Machine,SVM)、および決定木(Decision Tree,DT)などを挙げることができる。
【0057】
参考形態の例では、学習部13は、DZ6Sに含まれている、(i)任意の予測対象時点における需要電力量を目的変数の真値(正解データ)として用いるとともに、(ii)当該予測対象時点以前における需要電力量以外の各特徴量を説明変数として用いることにより、説明変数から目的変数を導出する予測モデルを生成する。
【0058】
予測モデルの生成後、学習部13は、当該予測モデルに、各特徴量の標準化パラメータを組み込んでよい。学習部13は、当該予測モデルに、ローリングラグと非ローリングラグとをさらに組み込んでよい。
【0059】
評価部14は、学習部13によって生成された予測モデルを評価する。具体的には、評価部14は、当該予測モデルの予測性能を評価する。評価部14による評価に先立ち、前処理部12は、検証データに対して、上述の訓練データと同じ様式の一連の前処理を実行することにより、前処理後検証データを生成する。したがって、参考形態の例では、前処理後検証データは、DZ6Sと同じ様式のデータ構造を有している。このため、参考形態における前処理後検証データでは、予測モデルに組み込まれている標準化パラメータを用いて各特徴量が標準化されている。
【0060】
評価部14は、前処理後検証データを用いて予測モデルを評価する。具体的には、評価部14は、前処理後検証データを予測モデルに入力することにより、当該予測モデルに予測値を出力させる。そして、評価部14は、当該予測値と、前処理後検証データに示されている需要電力量の真値とに基づいて、予測モデルの予測精度を示す指標値を導出する。
【0061】
指標値は、機械学習分野において、回帰タスクにおける予測精度の評価に使用されるものであればよく、特に限定されない。指標値の例としては、平均絶対誤差(Mean Absolute Error,MAE)および平均平方二乗誤差(Root Mean Square Error,RMSE)などを挙げることができる。評価部14は、指標値の導出が完了した後に、予測モデルを記憶部90に格納してよい。
【0062】
なお、モデル生成装置10は、指標値が所定の閾値を下回る場合には、学習部13に予測モデルを再び生成させてよい。この場合、予測モデルの再生成に先立ち、例えば当該予測モデルのハイパーパラメータが再設定されてよい。このように、予測フェーズにおいて使用される予測モデルの性能を補償するために、閾値以上の指標値が得られるまで予測モデルの生成が繰り返されてよい。この場合、評価部14は、閾値以上の指標値が初めて得られた予測モデルを、記憶部90に格納してよい。
【0063】
(等差数列要素の選択手法の例)
図14は、等差数列要素を選択する処理の流れの例を示すフローチャートである。まず、前処理部12は、S1に先立ち、上述の配列Plagの要素数NPlagを取得する。参考形態の例では、Plag=[1,7,14,21]であるので、NPlag=4である。
【0064】
S1において、前処理部12は、NPlagが2以上であるか否かを反映する。NPlagが2以上である場合(S1でYES)、S2に進む。他方、NPlagが1以下である場合(S1でNO)、前処理部12は、図14の処理を終了させる。この場合、前処理部12は、Plagは等差数列要素を含んでいないと判定する。
【0065】
S2において、前処理部12は、Plagの要素を指すための要素番号iを0に初期化する。S3において、前処理部12は、Plagが等差数列要素を含んでいることを示すフラグflgをTrue(真)に初期化する。
【0066】
S4において、前処理部12は、iがNPlag-2よりも小さいか否かを判定する。iがNPlag-2よりも小さい場合(S4でYES)、S5に進む。他方、iがNPlag-2以上である場合(S4でNO)、S8に進む。
【0067】
S5において、前処理部12は、a0にPlag[i]を代入する。a0は、想定される等差数列の初項である。このように、S5において、前処理部12は、a0をPlag[i]と等しい値に設定する。S6において、前処理部12は、dにPlag[i+1]-a0を代入する。dは、想定される等差数列の公差である。このように、S6において、前処理部12は、dをPlag[i+1]-a0と等しい値に設定する。次いで、S7において、前処理部12は、Plagの要素を指すための要素番号jに、i+2を代入する。そして、S11に進む。
【0068】
S8~S10はそれぞれ、S5~S7と対になる処理である。S8において、前処理部12は、a0に0を代入する。すなわち、S8において、前処理部12は、a0を0に設定する。S9において、前処理部12は、dにPlag[i]-a0を代入する。このように、S9において、前処理部12は、dをPlag[i]-a0と等しい値に設定する。次いで、S10において、前処理部12は、jにi+1を代入する。そして、S11に進む。
【0069】
S11において、前処理部12は、next_dにPlag[j]-Plag[j-1]を代入する。next_dは、想定される等差数列における、dの次の公差である。このように、前処理部12は、next_dをPlag[j]-Plag[j-1]と等しい値に設定する。
【0070】
S12において、前処理部12は、next_dがdに等しいか否かを判定する。next_dがdに等しい場合(S12でYES)、S13において、前処理部12は、jを1だけカウントアップする。そして、S15に進む。他方、next_dがdに等しくない場合(S12でNO)、S14において、前処理部12は、flgをFalse(偽)に更新する。そして、S16に進む。
【0071】
S15において、前処理部12は、jがNPlag以上であるか否かを判定する。jがNPlag以上である場合(S15でYES)、S16に進む。他方、jがNPlagよりも小さい場合(S15でNO)、S11に戻る。したがって、jがNPlagに等しくなるまで、S11~S13およびS15の処理が繰り返される。
【0072】
S16において、前処理部12は、flgがFalseであるか否かを判定する。flgがFalseである場合(S16でYES)、S17において、前処理部12は、iを1だけカウントアップする。そして、S19に進む。他方、flgがFalseでない場合(S16でNO)、すなわち、flgがTrueである場合、S18に進む。
【0073】
S18において、前処理部12は、Plagの要素の内、i番目以降の要素であるPlag[i:]を配列apに代入する。配列apは、等差数列要素を格納するための配列である。S18の完了後、前処理部12は、図14の処理を終了させる。処理の終了時におけるflgがTrueである場合(言い換えれば、処理の終了時における配列apが空配列でない場合)、前処理部12は、Plagが等差数列要素を含んでいると判定する。この場合、前処理部12は、等差数列要素の選択結果としてapを出力してよい。
【0074】
S19において、前処理部12は、iがNPlag以上であるか否かを判定する。iがNPlag以上である場合(S19でYES)、S20に進む。他方、iがNPlagよりも小さい場合(S19でNO)、S3に戻る。したがって、iがNPlagに等しくなるまで、S3~S16、S17、およびS19の処理が繰り返される。
【0075】
S20において、前処理部12は、空配列を配列apに代入する。すなわち、前処理部12は、配列apを空配列に設定する。S20の完了後、前処理部12は、図14の処理を終了させる。処理の終了時におけるflgがFalseである場合(言い換えれば、処理の終了時における配列apが空配列である場合)、前処理部12は、Plagは等差数列要素を含んでいないと判定する。この場合、前処理部12は、空配列としてのapを、等差数列要素の選択結果として出力してよい。
【0076】
参考形態の例では、S2においてi=0に設定された後、S5において、a0=Plag[0]=1に設定される。したがって、S6において、d=Plag[1]-a0=7-1=6に設定される。そして、S7において、j=2に設定される。このため、S11において、next_d=Plag[2]-Plag[1]=14-7=7に設定される。この場合、dがnext_dに等しくないので、S14においてflgがFalseに設定される。その後、S17において、iが1にカウントアップされる。
【0077】
S3においてflgがTrueに更新された後、S5において、a0=Plag[1]=7に設定される。したがって、S6において、d=Plag[2]-a0=14-7=7に設定される。そして、S7において、j=3に設定される。このため、S11において、next_d=Plag[3]-Plag[2]=21-14=7に設定される。したがって、dがnext_dに等しく、かつ、flgがTrueであるため、S18において、Plag[1:]=[7,14,21]がapとして設定される。
【0078】
(参考形態における予測フェーズ)
続いて、図1を再び参照し、学習フェーズに後続する予測フェーズの例について説明する。予測装置20は、データ取得部21、前処理部22、予測演算部23、および予測結果出力部24を備えていてよい。データ取得部21は、予測時データ取得部または第2データ取得部と称されてもよい。前処理部22は、予測時前処理部または第2前処理部と称されてもよい。
【0079】
図1に示す通り、記憶部90には、予測フェーズにおいて用いられる実績データDZPと就業状態データDSPとが格納されていてよい。予測フェーズでは、リアルタイムでの需要電力量予測が実行されてよい。このため、実績データDZPは、リアルタイムで更新されてよい。データ取得部21は、予測フェーズにおける入力データとしてDZPおよびDSPを取得する。DZPは、DZと同じ様式のデータ構造を有しているものとする。また、DSPは、DSと同じ様式のデータ構造を有しているものとする。加えて、データ取得部21は、学習フェーズにおいてモデル生成装置10によって記憶部90に格納された予測モデルを取得する。
【0080】
前処理部22は、予測フェーズにおける入力データセットに対して、上述の学習フェーズと同じ様式の一連の前処理を実行することにより、前処理後入力データを生成する。前処理部22の処理の例について以下に述べる。
【0081】
まず、前処理部22は、DSP中の就業状態に対して前値補間を実行することにより、予測フェーズにおける前値補間後就業状態データ(便宜上、DSP1と称する)を生成する。前値補間の結果、DSP1は、DZPと等しい時間分解能(例:1分)を有している。
【0082】
次いで、前処理部22は、時点をキーとして用いてDZPとDSP1とを組み合わせることにより、予測フェーズにおける就業状態データ付実績データ(便宜上、DZP1と称する)を生成する。
【0083】
次いで、前処理部22は、学習フェーズにおいて決定された特殊ラグを取得する。例えば、前処理部22は、学習フェーズにおいて決定されたローリングラグと非ローリングラグとを、予測モデルから読み出してよい。前処理部22は、学習フェーズにおいて決定された特殊ラグを予測フェーズにおける需要電力量に対して設定することにより、予測フェーズにおける新たな特徴量を導出する。
【0084】
前処理部22は、予測フェーズにおける需要電力量に対して非ローリングラグを設定することにより、予測フェーズにおける新たな特徴量としてのラグ特徴量を導出してよい。そして、前処理部22は、当該ラグ特徴量をDZP1に追加することによって、新たなデータ(便宜上、DZP2と称する)を生成してよい。参考形態の例では、非ローリングラグが1であるため、前処理部22は、「1日前の需要電力量」を予測フェーズにおけるラグ特徴量として取得する。
【0085】
次いで、前処理部22は、予測フェーズにおける需要電力量に対してローリングラグを設定することにより、予測フェーズにおける新たな特徴量としてのローリング特徴量を導出してよい。まず、前処理部22は、ローリングラグに応じて、予測フェーズにおけるローリング特徴量コンポーネントを取得する。参考形態の例では、ローリングラグが7、14、および21であるため、前処理部22は、予測フェーズにおける「7日前の需要電力量」、「14日前の需要電力量」、および「21日前の需要電力量」を、予測フェーズにおけるローリング特徴量コンポーネントとして取得する。そして、前処理部22は、当該ローリング特徴量コンポーネントをDZP2に追加する。
【0086】
次いで、前処理部22は、予測フェーズにおける「7日前の需要電力量」と「14日前の需要電力量」と「21日前の需要電力量」との平均値を導出し、当該平均値を予測フェーズにおけるローリング特徴量として取得する。そして、前処理部22は、当該ローリング特徴量をDZP2にさらに追加する。
【0087】
以上の通り、前処理部22は、DZP2に予測フェーズにおけるローリング特徴量コンポーネントとローリング特徴量とを追加することによって、新たなデータ(便宜上、DZP3と称する)を生成してよい。ローリング特徴量の取得後に、前処理部22は、DZP3からローリング特徴量コンポーネントを削除することによって、新たなデータ(便宜上、DZP4と称する)を生成してよい。
【0088】
次いで、前処理部22は、DZP4に記録されている時点を、予測フェーズにおける時点相当量に変換する。そして、前処理部22は、当該時点相当量をDZ4に追加することにより、新たなデータ(便宜上、DZP5と称する)を生成する。
【0089】
次いで、前処理部22は、DZP5に記録されている時点の日付に対応する曜日(質的変数に変換した曜日)をDZ5に追加することにより、新たなデータ(便宜上、DZP6と称する)を生成する。
【0090】
次いで、前処理部22は、学習フェーズにおいて決定された標準化パラメータを、予測モデルから読み出す。そして、前処理部22は、当該標準化パラメータを用いてDZP6の各特徴量を標準化する。図15のDZP6Sは、DZP6の各特徴量に対して標準化を施すことによって生成されたデータの例である。DZP6Sは、予測フェーズにおける前処理後入力データとして用いられる。図15では、キーとしての時点については図示が割愛されている。すなわち、図15では、予測フェーズにおける需要電力量の予測に用いられる説明変数のみが示されている。
【0091】
一例として、予測フェーズでは、30分ごとに需要電力量予測が実行されてよい。また、予測フェーズでは、例えば24時間を超える将来の期間に亘る(例:現時点から36時間後までに亘る)需要電力量の予測値が導出されてよい。このことから、予測フェーズでは、例えば「1日前の需要電力量」の一部のセルの値は未知となりうる。図15の例では、NULLという表記によって、未知の値(すなわち空白値)を有するセルが示されている。DZP6S内に空白値が存在する場合、前処理部22は、所定の補間手法を用いて当該空白値を補間してよい。
【0092】
一例として、前処理部22は、予測モデルを用いて、1日前の需要電力量の既知の値に基づいて、空白値を補間してよい。例えば、前処理部22は、ある空白値に対応する1日前の需要電力量の既知の値を予測モデルに入力することにより、当該入力に応じた予測値を予測モデルに出力させてよい。そして、前処理部22は、当該予測値を当該空白値の補間値として設定してよい。
【0093】
予測演算部23は、予測フェーズにおける需要電力量に基づいて導出された新たな特徴量が追加された後の、当該需要電力量の時系列データに基づいて、需要電力量の予測値を予測モデルに出力させる。したがって、予測演算部23は、前処理後入力データ(例:DZP6S)を予測モデルに入力することにより、当該予測モデルに予測値を出力させてよい。具体的には、予測演算部23は、前処理後入力データ内の各特徴量を、説明変数として予測モデルに供給する。予測モデルは、当該説明変数に応じた予測値を、目的変数として出力する。
【0094】
予測結果出力部24は、予測モデルによって出力された需要電力量の予測値に基づいて、予測結果データを生成する。例えば、予測結果出力部24は、各予測値と各時点とを対応付けたデータを、予測結果データとして生成してよい。予測結果出力部24は、生成した予測結果データを出力する。
【0095】
また、予測結果出力部24は、需要電力量の予測値(単位:kWh)を、別の単位に換算してもよい。一例として、予測結果出力部24は、需要電力量の予測値を、需要電力の予測値(単位:kW)へと換算してよい。この場合、予測結果出力部24は、換算後の各予測値と各時点とを対応付けたデータを、予測結果データとして生成してよい。
【0096】
(情報処理装置1の効果)
モデル生成装置10によれば、学習フェーズにおいて、AC(需要電力量の自己相関係数)に基づいて特殊ラグを選択できる。次いで、特殊ラグを需要電力量に対して設定することにより、新たな特徴量を導出できる。このように、モデル生成装置10によれば、新たな特徴量は、需要電力量の変動の周期性を表すと期待される特徴量(例:上述のローリング特徴量およびラグ特徴量)を、ACに基づいて導出できる。それゆえ、当該新たな特徴量を、需要電力量の予測に有益であると期待される説明変数として得ることが可能となる。
【0097】
そして、モデル生成装置10によれば、需要電力量に対して新たな特徴量が追加された時系列データ(例えば、上述の図9におけるDZ4を参照)に基づき、予測モデルを生成できる。このため、新たな特徴量を説明変数として用いて予測モデルを生成できるので、当該予測モデルによる予測精度を高めることができる。すなわち、高品質な予測モデルを得ることができる。
【0098】
施設における需要電力量の変動トレンドは、例えば施設の業態に応じて異なりうる。このことから、予測モデルの生成に先立ち、ユーザが当該施設に応じた適切なラグを手動で設定することは必ずしも容易ではない。また、ユーザによって設定されたラグが不適切である場合、予測モデルの品質低下が生じるおそれがある。
【0099】
しかしながら、上述の通りモデル生成装置10によれば、需要電力量の変動の周期性を把握するために適したラグであると期待される特殊ラグを、ACに基づいて選択できる。それゆえ、ユーザによるラグの手動設定を要することなく、予測モデルを生成できる。このため、ユーザの利便性を高めつつ、施設の業態に応じた高品質な予測モデルを得ることができる。
【0100】
さらに、モデル生成装置10によれば、施設における就業状態を付加的な説明変数として用いて、予測モデルを生成することもできる。就業状態を付加的な説明変数として用いることにより、施設の業態がより詳細に反映された予測モデルを生成できる。それゆえ、予測モデルの予測精度をより一層高めることが可能となる。
【0101】
ところで、特許文献1では、熱負荷の予測精度を高めるために複数のNNを使い分けるという着想が示されている。具体的には、特許文献1では、平日用NNと土曜日用NNと日曜日用NNという3つの個別のNNを予め生成し、予測当日の曜日に応じて各NNを使い分けることが開示されている。
【0102】
ただし、施設の業態次第では、土曜日および日曜日の少なくとも一方が就業日として設定されている場合もある。あるいは、施設の業態次第では、特定の曜日の平日(例:月曜日)が休業日として設定されている場合もある。あるいは、施設の業態次第では、平日、土曜日、および日曜日の全てが就業日に該当しうる。
【0103】
したがって、特許文献1に示されている各NNの使い分けでは、上述した様々な施設の業態に柔軟に対処することはできない。このことから、特許文献1に示されている各NNの使い分けを需要電力量予測に適用した場合には、必ずしも高い予測精度を実現することはできない。
【0104】
その一方、モデル生成装置10によれば、上述の通り、施設の業態に応じた高品質な予測モデルを得ることができる。したがって、モデル生成装置10によれば、特許文献1の技術とは異なり、高い予測精度を実現可能な単一の予測モデルを生成できる。このように、モデル生成装置10によれば、従来に比べて汎用性の高い予測モデルが得られる。
【0105】
そして、予測装置20によれば、学習フェーズにおいてモデル生成装置10によって生成された予測モデルを用いて、予測フェーズにおいて需要電力量の予測値を導出できる。以上の通り、本発明の一態様によれば、施設における需要電力量の予測精度を従来よりも高めることが可能となる。
【0106】
〔参考形態における変形例〕
(1)参考形態における上記の例では、学習フェーズにおいて設定された複数のラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有するACに対応するラグを、特殊ラグとして選択する手法を例示した。ただし、当業者であれば明らかである通り、参考形態における特殊ラグの選択手法は、上記の例に限定されない。
【0107】
例えば、前処理部12は、複数のラグの内、ラグとACとの関係を示すデータ系列におけるACの極大値に対応するラグを、特殊ラグ候補として選択してよい。したがって、例えば、前処理部12は、図7のグラフにおけるACの極大値に対応するラグを、特殊ラグ候補として選択してよい。次いで、前処理部12は、特殊ラグ候補の内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有するACに対応するラグを、特殊ラグとして選択してよい。
【0108】
施設の業態次第では、ACの極大値に対応するラグの付近において、自己相関閾値以上の値を有するACに対応するラグが多く存在するケースも考えられる。当該ケースにおいて、参考形態における上記の例の選択手法を採用した場合には、多くの特殊ラグが選択されうる。この場合、多くの新たな説明変数(例:多くのローリング特徴量およびラグ特徴量)が導出される。当業者であれば明らかである通り、説明変数の数が過大である場合には、予測モデルの品質が低下しうる。また、過大な数の説明変数は、機械学習アルゴリズムの実行に要する時間の増加を招く。
【0109】
その一方、上記ケースにおいて、本変形例における選択手法を採用した場合には、参考形態における上記の例の選択手法とは異なり、特殊ラグ候補の内から特殊ラグが選択される。したがって、本変形例の選択手法によれば、参考形態における上記の例の選択手法に比べて、選択される特殊ラグの数を低減できる。
【0110】
それゆえ、本変形例の選択手法によれば、参考形態における上記の例の選択手法に比べて、導出される新たな説明変数の数を低減できる。その結果、本変形例の選択手法によれば、上記ケースにおいても、高品質な予測モデルを生成できる。加えて、機械学習アルゴリズムの実行に要する時間を低減することもできる。
【0111】
(2)当業者であれば明らかである通り、予測モデルにおける説明変数は、上記の例に限定されない。施設における需要電力量に影響を及ぼしうると考えられる任意の特徴量が、説明変数として使用されてよい。例えば、施設の業態次第では、気温、天候、および日射量などの気象条件が、需要電力量に影響を及ぼす。そこで、気象条件と需要電力量との間に相関がある場合には、気象条件を示す特徴量(気象特徴量)を、付加的な説明変数として使用することもできる。
【0112】
気象特徴量は、施設における測定の結果として得られた実績値であってもよいし、気象予報サービス事業者によって提供された予測値であってもよい。したがって、例えば、学習フェーズでは、気象特徴量の実績値を用いて予測モデルが生成されてよい。次いで、予測フェーズでは、気象特徴量の予測値を用いて、当該予測モデルによって需要電力量が予測されてよい。この場合、予測フェーズでは、学習フェーズにおける気象特徴量の実績値を用いて、気象特徴量の予測値が補正されてもよい。
【0113】
(3)前処理部12は、DZ1における需要電力量の偏自己相関係数(partial auto
correlation coefficient)を導出してもよい。本明細書では、当該自己相関係数をPACと略記する。具体的には、前処理部12は、ラグを様々に変化させることにより、ラグ毎のPACを算出してよい。
【0114】
多くの場合、PACとACとの間には何らかの関係性があると期待される。そこで、前処理部12は、PACに基づいて、特殊ラグを選択してもよい。このように、前処理部12は、PACに基づいて、新たな特徴量(例:ラグ特徴量およびローリング特徴量)を導出してもよい。
【0115】
加えて、ACとPACとの両方を用いることにより、ACまたはPACの一方のみを用いた場合に比べて、需要電力量の時間変動の周期性をより詳細に考慮できると期待される。そこで、前処理部12は、ACおよびPACに基づいて、特殊ラグを選択してもよい。このように、前処理部12は、ACおよびPACに基づいて、新たな特徴量を導出することもできる。
【0116】
〔参考形態のまとめ〕
参考形態において説明した各事項は、下記の通り表現できる。
【0117】
参考形態に係るモデル生成装置は、施設における需要電力量を予測するための予測モデルを生成するモデル生成装置であって、前記モデル生成装置は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出し、前記自己相関係数に基づいて、複数の前記ラグの内から特殊ラグを選択し、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルを生成する。
【0118】
参考形態に係るモデル生成装置は、前記態様1において、複数の前記ラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有する前記自己相関係数に対応するラグを、前記特殊ラグとして選択してよい。
【0119】
参考形態に係るモデル生成装置は、複数の前記ラグの内、前記ラグと前記自己相関係数との関係を示すデータ系列における前記自己相関係数の極大値に対応するラグを、特殊ラグ候補として選択してよく、前記特殊ラグ候補の内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有する前記自己相関係数に対応するラグを、特殊ラグとして選択してよい。
【0120】
参考形態に係るモデル生成装置では、前記自己相関閾値は、0.7以上かつ1以下の値であってよい。
【0121】
参考形態に係るモデル生成装置は、複数の前記特殊ラグが昇順にソートされた配列において、等差数列を成す複数の前記特殊ラグをローリングラグとして選択してよく、前記ローリングラグを前記実績値に対して設定することにより、前記新たな特徴量としてローリング特徴量を導出してよい。
【0122】
参考形態に係るモデル生成装置は、前記配列における前記ローリングラグを除いた前記特殊ラグを非ローリングラグとして選択してよく、前記非ローリングラグを前記実績値に対して設定することにより、前記新たな特徴量としてラグ特徴量を導出してよい。
【0123】
参考形態に係るモデル生成装置では、前記新たな特徴量が追加された前記時系列データは、前記施設における日毎の就業状態を示すデータをさらに含んでいてよい。
【0124】
参考形態に係る予測装置は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測装置であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す前記学習フェーズにおける時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数に基づいて、複数の前記ラグの内から特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルが生成されており、前記予測装置は、前記実績値の時間推移を示す前記予測フェーズにおける時系列データについて、前記学習フェーズにおいて選択された前記特殊ラグを前記予測フェーズにおける前記実績値に対して設定することにより、前記予測フェーズにおける新たな特徴量を導出し、前記予測フェーズにおける前記新たな特徴量が追加された、前記予測フェーズにおける前記時系列データに基づいて、前記予測値を前記予測モデルに出力させる。
【0125】
参考形態に係るモデル生成方法は、施設における需要電力量を予測するための予測モデルを生成するモデル生成方法であって、前記施設における需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれについて前記実績値の自己相関係数を導出する工程と、前記自己相関係数に基づいて、複数の前記ラグの内から特殊ラグを選択する工程と、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出する工程と、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルを生成する工程と、を含んでいる。
【0126】
参考形態に係る予測方法は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを、予測フェーズにおいて用いることにより、前記施設における需要電力量の予測値を導出する予測方法であって、前記学習フェーズでは、前記施設における需要電力量の実績値の時間推移を示す前記学習フェーズにおける時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれについて前記実績値の自己相関係数が導出されており、前記自己相関係数に基づいて、複数の前記ラグの内から特殊ラグが選択されており、前記特殊ラグを前記学習フェーズにおける前記実績値に対して設定することにより新たな特徴量が導出されており、前記学習フェーズにおける前記新たな特徴量が追加された、前記学習フェーズにおける前記時系列データに基づいて、機械学習によって前記予測モデルが生成されており、前記予測方法は、前記施設における需要電力量の実績値の時間推移を示す前記予測フェーズにおける時系列データについて、前記学習フェーズにおいて選択された前記特殊ラグを前記予測フェーズにおける前記実績値に対して設定することにより、前記予測フェーズにおける新たな特徴量を導出する工程と、前記予測フェーズにおける前記新たな特徴量が追加された、前記予測フェーズにおける前記時系列データに基づいて、前記予測値を前記予測モデルに出力させる工程と、を含んでいる。
【0127】
〔実施形態1〕
図16は、実施形態1における情報処理装置1Aの要部の構成を例示するブロック図である。実施形態1では、参考形態との相違点について説明する。図16の例における情報処理装置1Aは、制御装置9に替えて、制御装置9Aを備えている。制御装置9Aは、モデル生成装置10および予測装置20に替えて、モデル生成装置10Aおよび予測装置20Aを備えている。モデル生成装置10Aは、前処理部12に替えて、前処理部12Aを備えている。予測装置20Aは、前処理部22に替えて、前処理部22Aを備えている。
【0128】
(実施形態1における学習フェーズ)
参考形態では、モデル生成装置10がACに基づいて特殊ラグを選択する場合を例示した。実施形態1のモデル生成装置10Aは、ACおよび就業状態データDSに基づいて特殊ラグを選択する。すなわち、モデル生成装置10Aは、施設の就業状態をも考慮して特殊ラグを選択する。
【0129】
実施形態1においても、特殊ラグがローリングラグと非ローリングラグとを含んでいる場合を例示する。実施形態1では、参考形態において述べた、需要電力量の時間変動の「比較的長期的な周期性」を、「第1周期性」と称する。参考形態の説明から明らかである通り、ローリングラグは第1周期性に対応している。
【0130】
その一方、実施形態1では、参考形態において述べた、需要電力量の時間変動の「比較的短期的な周期性」を、「第2周期性」と称する。したがって、第2周期性は、第1周期性に比べて短期的な周期性である。参考形態の説明から明らかである通り、非ローリングラグは第2周期性に対応している。
【0131】
参考形態では、モデル生成装置10の前処理部12が、複数のラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有するACに対応するラグを、特殊ラグとして選択する場合を例示した。
【0132】
実施形態1では、前処理部12Aは、複数のラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有する前記自己相関係数に対応するラグを、特殊ラグ候補として選択してよい。このように、前処理部12Aは、参考形態において特殊ラグとして選択していた要素を、特殊ラグ候補として選択してよい。
【0133】
前処理部12Aは、参考形態と同様の処理を行うことにより、特殊ラグ候補の内から、ローリングラグ候補および非ローリングラグ候補を選択してよい。例えば、前処理部12Aは、抽出した複数の特殊ラグ候補を昇順にソートしてよい。そして、前処理部12Aは、ソートされた当該特殊ラグ候補を要素として含む配列Plag_Aを生成してよい。実施形態1では、説明の便宜上、Plag_A=[1,7,14]である場合を例示する。
【0134】
前処理部12Aは、Plag_Aの要素の内、等差数列を成す要素(等差数列要素)を、ローリングラグ候補として選択してよい。すなわち、前処理部12Aは、Plag_Aにおいて、等差数列を成す複数の特殊ラグ候補をローリングラグ候補として選択してよい。実施形態1の例では、前処理部12Aは、ラグ「7」および「14」をローリングラグ候補として選択する。
【0135】
本明細書では、施設の就業日に対応するローリングラグを就業日ローリングラグと称し、施設の休日に対応するローリングラグを休日ローリングラグと称する。また、就業日ローリングラグに対応するローリング特徴量を就業日ローリング特徴量と称し、休日ローリングラグに対応するローリング特徴量を休日ローリング特徴量と称する。
【0136】
前処理部12Aは、就業状態データDSに基づいて、ローリングラグ候補から、就業日ローリングラグと休日ローリングラグとを導出してよい。ローリングラグ候補から就業日ローリングラグと休日ローリングラグとを導出する処理の例については後述する。
【0137】
そして、前処理部12Aは、就業日ローリングラグを需要電力量の実績値に対して設定することにより、就業日ローリング特徴量を導出してよい。また、前処理部12Aは、休日ローリングラグを需要電力量の実績値に対して設定することにより、休日ローリング特徴量を導出してよい。就業日ローリング特徴量および休日ローリング特徴量は、実施形態1における新たな特徴量の例である。
【0138】
前処理部12Aは、Plag_Aの要素の内、等差数列要素を除いた要素を、残余要素として選択してよい。そして、前処理部12Aは、残余要素に該当する特殊ラグ候補を、非ローリングラグ候補として選択してよい。このように、前処理部12Aは、Plag_Aにおけるローリングラグ候補を除いた特殊ラグ候補を、非ローリングラグ候補として選択してよい。実施形態1の例では、前処理部12Aは、ラグ「1」を非ローリングラグ候補として選択する。
【0139】
本明細書では、施設の就業日に対応する非ローリングラグを就業日非ローリングラグと称し、施設の休日に対応する非ローリングラグを休日非ローリングラグと称する。また、就業日非ローリングラグに対応するラグ特徴量を就業日ラグ特徴量と称し、休日非ローリングラグに対応するラグ特徴量を休日ラグ特徴量と称する。
【0140】
前処理部12Aは、就業状態データDSに基づいて、非ローリングラグ候補から、就業日非ローリングラグと休日非ローリングラグとを導出してよい。非ローリングラグ候補から就業日非ローリングラグと休日非ローリングラグとを導出する処理の例については後述する。
【0141】
そして、前処理部12Aは、就業日非ローリングラグを需要電力量の実績値に対して設定することにより、就業日ラグ特徴量を導出してよい。また、前処理部12Aは、休日非ローリングラグを需要電力量の実績値に対して設定することにより、休日ラグ特徴量を導出してよい。就業日ラグ特徴量および休日ラグ特徴量も、実施形態1における新たな特徴量の例である。
【0142】
(就業日非ローリングラグと休日非ローリングラグとを導出する処理の例)
図17図19を参照し、就業日非ローリングラグと休日非ローリングラグとを導出する処理の例について述べる。この例では、就業状態データDSに基づいて、ある月の17日から31日までの各日について、ローリングラグが個別に設定される。図17の項目No.0に示す通り、この例では、「17日」、「19日」、「24日」、「30日」、および「31日」が休日であり、その他の各日が就業日であるものとする。図17の表記「org」は、「orignal」の略記である。No.0は、就業状態データDSから導出されてよい。
【0143】
図17では、就業日に着目して就業日非ローリングラグを導出する処理の例が示されている。図17における処理の流れを説明すれば、下記の処理1A~処理6Aの通りである。
【0144】
処理1A:前処理部12Aは、項目No.0中の各日を質的変数に変換し、項目No.1を導出する。図17の例では、就業日に着目しているので、「就業日」に論理値1が割り当てられ、「休日」に論理値0が割り当てられるものとする。
【0145】
処理2A:前処理部12Aは、項目No.1中の各値を、1日分だけ後ろにシフトさせることにより、項目No.2を導出する。図17における表記「Shift1」は、ある項目中の各値を、1日分だけ後ろにシフトする処理を表す。このシフト値は、ラグに対応している。このことから、項目No.2を導出するためのシフト値は、非ローリングラグ候補に等しい値として設定されている。なお、項目No.2における「17日」の論理値は、項目No.1における「16日」の論理値(図17では不図示)に等しい。
【0146】
処理3A:前処理部12Aは、現在の項目のうち、論理値0が付与されている就業日が存在しているか否かを判定する。論理値0が付与されている就業日が存在していない場合には、後述の処理6Aに進む。他方、論理値0が付与されている就業日が存在している場合には、下記の処理4Aに進む。
【0147】
処理4A:論理値0が付与されている就業日が存在している場合には、前処理部12Aは、当該就業日を抽出する。図17の例では、前処理部12Aは、No.2において「18日、20日、および25日」を抽出する。図17に示す通り、論理値0が付与されている就業日は、休日の翌日でありうる。休日の翌日に該当する就業日については、ラグ「1」を適用することが必ずしも適切でないとも考えられる。
【0148】
次いで、前処理部12Aは、現在のシフト値を1だけ増加させる。そして、前処理部12Aは、増加後のシフト値を用いて現在の項目中の各値をシフトすることにより、新たな項目を導出する。図17の例では、前処理部12Aは、シフト値を1から2に増加させる。そして、前処理部12Aは、項目No.1中の各値を、2日分だけ後ろにシフトさせることにより、項目No.3を導出する。項目No.1中の各値を2日分だけ後ろにシフトさせることは、項目No.2中の各値を1日分だけ後ろにシフトさせることと同等である。
【0149】
処理5A:次いで、前処理部12Aは、各日について、論理値0が付与されている就業日が抽出されている最新の項目中の各値と、最新のシフト後の項目中の各値との論理和(OR)を算出することにより、新たな項目を導出する。例えば、前処理部12Aは、各日について、項目No.2中の各値と項目No.3中の各値との論理和を算出することにより、項目No.4を導出する。項目No.4中のある日の論理値は、項目No.2中の当該日の論理値と項目No.3中の当該日の論理値との論理和として設定されている。論理和を算出することにより、論理値0が付与されている就業日の数を低減させることができる。
【0150】
処理5Aの終了後、処理3Aに戻る。以上の流れによれば、論理値0が付与されている就業日が存在しなくなるまで、処理3A~処理5Aが繰り返される。
【0151】
処理6A:前処理部12Aは、現在の項目を最終的な項目として設定する。図17の例では、前処理部12Aは、項目No.6を最終項目として設定する。そして、前処理部12Aは、最終項目中の各就業日について、参照すべき直前の就業日を決定する。参照すべき直前の就業日の決定は、就業状態データDSを参照して実行されてよい。
【0152】
図17の例では、前処理部12Aは、就業日「18日」について、参照すべき直前の就業日を「15日」として決定する。すなわち、前処理部12Aは、就業日「18日」に対応する就業日非ローリングラグを、「3」(18から15を減算した値)に設定する。その一方、前処理部12Aは、例えば、就業日「29日」について、参照すべき直前の就業日を「28日」として決定する。すなわち、前処理部12Aは、就業日「29日」に対応する就業日非ローリングラグを、「1」(29から28を減算した値)に設定する。
【0153】
このように、前処理部12Aは、休日の翌日に該当する就業日(例:18日)と、就業日の翌日に該当する就業日(例:29日)とに対して、異なる就業日非ローリングラグを設定できる。以上の通り、就業状態データDSを考慮に入れることにより、柔軟な就業日非ローリングラグの設定が可能となる。
【0154】
続いて、図18を参照する。図18では、休日に着目して休日非ローリングラグを導出する処理の例が示されている。図18における処理の流れを説明すれば、下記の処理1B~処理6Bの通りである。
【0155】
処理1B:前処理部12Aは、項目No.0中の各日を質的変数に変換し、項目No.1を導出する。図18の例では、図17とは異なり、休日に着目している。このため、図18の例では、図17とは異なり、「休日」に論理値1が割り当てられ、「就業日」に論理値0が割り当てられている。
【0156】
処理2B:前処理部12Aは、項目No.1中の各値を、1日分だけ後ろにシフトさせることにより、項目No.2を導出する。この処理は、上述の処理2Aと同等である。
【0157】
処理3B:前処理部12Aは、現在の項目のうち、論理値0が付与されている休日が存在しているか否かを判定する。論理値0が付与されている休日が存在していない場合には、後述の処理6Bに進む。他方、論理値0が付与されている休日が存在している場合には、下記の処理4Bに進む。
【0158】
処理4B:論理値0が付与されている休日が存在している場合には、前処理部12Aは、当該休日を抽出する。図18の例では、前処理部12Aは、No.2において「19日、24日、および30日」を抽出する。図18に示す通り、論理値0が付与されている休日は、就業日の翌日でありうる。就業日の翌日に位置している休日については、ラグ「1」を適用することが必ずしも適切でないとも考えられる。
【0159】
次いで、前処理部12Aは、現在のシフト値を1だけ増加させる。そして、前処理部12Aは、増加後のシフト値を用いて現在の項目中の各値をシフトすることにより、新たな項目を導出する。この処理は、上述の処理4Aと同等である。
【0160】
処理5B:次いで、前処理部12Aは、各日について、論理値0が付与されている休日が抽出されている最新の項目中の各値と、最新のシフト後の項目中の各値との論理和を算出することにより、新たな項目を導出する。
【0161】
処理5Bの終了後、処理3Bに戻る。以上の流れによれば、論理値0が付与されている休日が存在しなくなるまで、処理3B~処理5Bが繰り返される。
【0162】
処理6B:前処理部12Aは、現在の項目を最終項目として設定する。図18の例では、前処理部12Aは、項目No.12を最終項目として設定する。そして、前処理部12Aは、最終項目中の各就業日について、参照すべき直前の休日を決定する。参照すべき直前の休日の決定は、就業状態データDSを参照して実行されてよい。
【0163】
図18の例では、前処理部12Aは、休日「30日」について、参照すべき直前の休日を「24日」として決定する。すなわち、前処理部12Aは、休日「30日」に対応する休日非ローリングラグを、「6」(30から24を減算した値)に設定する。その一方、前処理部12Aは、例えば、休日「31日」について、参照すべき直前の休日を「30日」として決定する。すなわち、前処理部12Aは、休日「31日」に対応する休日非ローリングラグを、「1」(31から30を減算した値)に設定する。
【0164】
前処理部12Aによれば、例えば、就業日の翌日に該当する休日(例:30日)と、休日の翌日に該当する休日(例:31日)とに対して、異なる休日非ローリングラグを設定できる。以上の通り、就業状態データDSを考慮に入れることにより、柔軟な休日非ローリングラグの設定も可能となる。図18に示す通り、休日の配置は就業日の配置に比べて不規則性が高い場合があるので、柔軟な休日非ローリングラグの設定を実現できることは特に有益である。
【0165】
図19は、図17および図18の処理によって決定された非ローリングラグの一覧を示す。図19から明らかである通り、前処理部12Aによれば、就業日および休日のいずれについても、非ローリングラグを柔軟に設定できる。
【0166】
(就業日ローリングラグと休日ローリングラグとを導出する処理の例)
図20図22を参照し、就業日ローリングラグと休日ローリングラグとを導出する処理の例について述べる。図20図22はそれぞれ、図17図19と対になる図である。
【0167】
図20では、就業日に着目して就業日ローリングラグを導出する処理の例が示されている。図20における処理の流れを説明すれば、下記の処理1C~処理6Cの通りである。
【0168】
処理1C:前処理部12Aは、項目No.0中の各日を質的変数に変換し、項目No.1を導出する。この処理は、上述の処理1Aと同等である。
【0169】
処理2C:前処理部12Aは、項目No.1中の各値を、7日分だけ後ろにシフトさせることにより、項目No.2を導出する。項目No.2を導出するためのシフト値「7」は、ローリングラグ候補の最小値に等しい値に設定されている。言い換えれば、当該シフト値は、ローリングラグ候補が成す等差数列の初項に等しい値として設定されている。なお、項目No.2における「17日」の論理値は、項目No.1における「16日」の論理値(図17では不図示)に等しい。
【0170】
処理3C:前処理部12Aは、現在の項目のうち、論理値0が付与されている就業日が存在しているか否かを判定する。論理値0が付与されている就業日が存在していない場合には、後述の処理6Cに進む。他方、論理値0が付与されている就業日が存在している場合には、下記の処理4Cに進む。
【0171】
処理4C:論理値0が付与されている就業日が存在している場合には、前処理部12Aは、当該就業日を抽出する。
【0172】
次いで、前処理部12Aは、現在のシフト値を、直前に参照したローリングラグ候補の項の次に大きいローリングラグ候補に等しい値に増加させる。例えば、前処理部12Aは、現在のシフト値を「14」に設定する。そして、前処理部12Aは、増加後のシフト値を用いて現在の項目中の各値をシフトすることにより、新たな項目を導出する。前処理部12Aは、項目No.1中の各値を、14日分だけ後ろにシフトさせることにより、項目No.3を導出する。項目No.1中の各値を14日分だけ後ろにシフトさせる処理は、項目No.2中の各値を7日分だけ後ろにシフトさせる処理と同等である。
【0173】
ただし、図20の例におけるシフト値は、就業日ローリングラグ候補の最大値(例:14)を超えないものとする。図20の例における当該最大値は、2週間に相当する。図20の例では、前処理部12Aは、シフト値が当該最大値に達した場合、次のシフト値を1に設定してよい。その後、前処理部12Aは、現在のシフト値を1ずつ増加させてよい。このことは、図21の例においても当てはまる。
【0174】
処理5C:次いで、前処理部12Aは、各日について、論理値0が付与されている就業日が抽出されている最新の項目中の各値と、最新のシフト後の項目中の各値との論理和(OR)を算出することにより、新たな項目を導出する。この処理は、上述の処理5Aと同等である。
【0175】
処理5Cの終了後、処理3Cに戻る。以上の流れによれば、論理値0が付与されている就業日が存在しなくなるまで、処理3C~処理5Cが繰り返される。
【0176】
処理6C:前処理部12Aは、現在の項目を最終項目として設定する。図20の例では、前処理部12Aは、項目No.6を最終項目として設定する。そして、前処理部12Aは、最終的な項目中の各就業日について、参照すべき2週間前までの就業日を決定する。参照すべき就業日の決定は、就業状態データDSを参照して実行されてよい。
【0177】
図20の例において、就業日「18日」には、シフト値7に対応する項目No.2、および、シフト値14に対応する項目No.3の両方において論理値1が割り当てられている。このことは、就業日「18日」には、就業日ローリングラグとして7および14の両方が設定されてよいことを意味する。そこで、前処理部12Aは、就業日「18日」に対応する就業日ローリングラグを「7」および「14」に設定する。
【0178】
次いで、決定した就業日非ローリングラグに従って、ある就業日に対応する参照すべき就業日を決定する。図20の例では、前処理部12Aは、就業日「18日」に対応する参照すべき就業日が、「4日」(18日に対して14日前の日付)および「11日」(18日に対して7日前の日付)であると決定する。
【0179】
その一方、図20の例において、就業日「26日」には、シフト値14に対応する項目No.3においてのみ論理値1が割り当てられている。このことは、就業日「26日」には、就業日ローリングラグとして「14」のみが設定されてよいことを意味する。そこで、前処理部12Aは、就業日「26日」に対応する就業日ローリングラグを「14」に設定する。そして、前処理部12Aは、就業日「26日」に対応する参照すべき就業日が、「12日」(26日に対して14日前の日付)であると決定する。以上の通り、就業状態データDSを考慮に入れることにより、就業日ローリングラグを柔軟に設定することも可能となる。
【0180】
続いて、図21を参照する。図21では、休日に着目して休日非ローリングラグを導出する処理の例が示されている。図21における処理の流れを説明すれば、下記の処理1D~処理6Dの通りである。
【0181】
処理1D:前処理部12Aは、項目No.0中の各日を質的変数に変換し、項目No.1を導出する。この処理は、上述の処理1Bと同等である。
【0182】
処理2D:前処理部12Aは、項目No.1中の各値を、7日分だけ後ろにシフトさせることにより、項目No.2を導出する。この処理は、上述の処理2Cと同等である。
【0183】
処理3D:前処理部12Aは、現在の項目のうち、論理値0が付与されている休日が存在しているか否かを判定する。論理値0が付与されている休日が存在していない場合には、後述の処理6Dに進む。他方、論理値0が付与されている休日が存在している場合には、下記の処理4Dに進む。
【0184】
処理4D:論理値0が付与されている休日が存在している場合には、前処理部12Aは、当該休日を抽出する。その他の処理は、上述の処理4Cと同等である。
【0185】
処理5D:次いで、前処理部12Aは、各日について、論理値0が付与されている休日が抽出されている最新の項目中の各値と、最新のシフト後の項目中の各値との論理和を算出することにより、新たな項目を導出する。この処理は、上述の処理5Bと同等である。
【0186】
処理5Dの終了後、処理3Dに戻る。以上の流れによれば、論理値0が付与されている休日が存在しなくなるまで、処理3D~処理5Dが繰り返される。
【0187】
処理6D:前処理部12Aは、現在の項目を最終項目として設定する。図21の例では、前処理部12Aは、項目No.8を最終項目として設定する。そして、前処理部12Aは、最終的な項目中の各就業日について、参照すべき2週間前までの休日を決定する。参照すべき休日の決定は、就業状態データDSを参照して実行されてよい。
【0188】
図21の例において、休日「30日」には、シフト値14に対応する項目No.3においてのみ論理値1が割り当てられている。このことは、休日「30日」には、休日ローリングラグとして14のみが設定されてよいことを意味する。そこで、前処理部12Aは、休日「30日」に対応する休日ローリングラグを14に設定する。そして、前処理部12Aは、休日「30日」に対応する参照すべき休日が、「16日」(30日に対して14日前の日付)であると決定する。
【0189】
その一方、図21の例において休日「31日」には、シフト値7に対応する項目No.2、および、シフト値14に対応する項目No.3の両方において論理値1が割り当てられている。このことは休日「31日」には、休日ローリングラグとして7および14の両方が設定されてよいことを意味する。そこで、前処理部12Aは休日「31日」に対応する休ローリングラグを7および14に設定する。そして、前処理部12Aは、休日「31日」に対応する参照すべき休日が、「17日」(31日に対して14日前の日付)および「24日」(31日に対して7日前の日付)であると決定する。以上の通り、就業状態データDSを考慮に入れることにより、休日ローリングラグを柔軟に設定することも可能となる。
【0190】
図22は、図20および図21の処理によって決定されたローリングラグの一覧を示す。図22から明らかである通り、前処理部12Aによれば、就業日および休日のいずれについても、ローリングラグを柔軟に設定できる。
【0191】
(新たな特徴量の導出の例)
上述の各説明から明らかである通り、前処理部12Aは、施設の就業状態を考慮して導出された特殊ラグ(例:非ローリングラグおよびローリングラグ)に基づいて、当該就業状態に応じた新たな特徴量を導出できる。
【0192】
一例として、上述の図17図22の例における就業日「18日」に着目する。図19に示す通り、就業日「18日」に対応する就業日非ローリングラグは「3」に設定されている。したがって、前処理部12Aは、就業日「18日」のある時刻に対応する就業日ラグ特徴量として、「15日の同時刻の需要電力量」を選択する。
【0193】
また、図22に示す通り、就業日「18日」に対応する就業日ローリングラグは「7」および「14」に設定されている。したがって、前処理部12Aは、就業日「18日」のある時刻に対応する就業日ローリング特徴量コンポーネントとして、「4日の同時刻の需要電力量」および「11日の同時刻の需要電力量」を選択する。したがって、前処理部12Aは、就業日「18日」のある時刻に対応する就業日ローリング特徴量として、「4日の同時刻の需要電力量」と「11日の同時刻の需要電力量」との平均値を算出する。
【0194】
別の例として、上述の図17図22の例における休日「30日」に着目する。図19に示す通り、休日「30日」に対応する休日非ローリングラグは「6」に設定されている。したがって、前処理部12Aは、休日「30日」のある時刻に対応する休日ラグ特徴量として、「24日の同時刻の需要電力量」を選択する。
【0195】
また、図22に示す通り、休日「30日」に対応する休日ローリングラグは「14」に設定されている。したがって、前処理部12Aは、休日「30日」のある時刻に対応する休日ローリング特徴量コンポーネントとして、「16日の同時刻の需要電力量」を選択する。したがって、前処理部12Aは、休日「30日」のある時刻に対応する休日ローリング特徴量として、「16日の同時刻の需要電力量」を選択する。
【0196】
(実施形態1における予測モデルの生成)
上述の各説明から明らかである通り、実施形態1における学習部13は、施設の就業状態に応じて導出された新たな特徴量が追加された時系列データに基づいて、予測モデルを生成できる。すなわち、実施形態1における学習部13は、施設の就業状態が反映された予測モデルを生成できる。このように、実施形態1によれば、参考形態に比べてより一層高品質な予測モデルを生成することが可能となる。
【0197】
学習部13は、学習フェーズにおいて導出したローリングラグと非ローリングラグとを、予測モデルに組み込んでよい。これにより、学習フェーズにおいて導出したローリングラグと非ローリングラグとを、後続する予測フェーズにおいて簡便に使用できる。
【0198】
(実施形態1における予測フェーズ)
実施形態1では、予測装置20Aの前処理部22Aは、モデル生成装置10Aの前処理部12Aによって設定された、学習フェーズにおける特殊ラグを取得してよい。一例として、前処理部22Aは、学習フェーズにおいて設定されたローリングラグと非ローリングラグとを、予測モデルから読み出してよい。
【0199】
次いで、前処理部22Aは、予測フェーズにおける就業状態データDSPに基づいて、学習フェーズにおける特殊ラグから、予測フェーズにおける特殊ラグを導出してよい。
【0200】
一例として、前処理部22Aは、学習フェーズにおいて設定された各日の就業日ローリングラグおよび休日ローリングラグを、予測フェーズにおける各日の就業日ローリングラグおよび休日ローリングラグへと変換してよい。一例として、学習フェーズにおける就業状態データDSに示されている日毎の就業状態と予測フェーズにおける就業状態データDSPとに示されている日毎の就業状態との対応関係に従って、これらのローリングラグの変換が実行されてよい。
【0201】
また、前処理部22Aは、学習フェーズにおいて設定された各日の就業日非ローリングラグおよび休日非ローリングラグを、予測フェーズにおける各日の就業日非ローリングラグおよび休日非ローリングラグへと変換してよい。上述の対応関係に従って、これらの非ローリングラグの変換が実行されてよい。
【0202】
次いで、前処理部22Aは、予測フェーズにおいて導出された特殊ラグに基づいて、予測フェーズにおける新たな特徴量を算出する。具体的には、前処理部22Aは、予測フェーズにおける需要電力量(すなわち、実績データDZPに示されている需要電力量)に対して、当該特殊ラグを設定することにより、予測フェーズにおける新たな特徴量を算出する。
【0203】
実施形態1の例では、前処理部22Aは、予測フェーズにおける需要電力量に対して、予測フェーズにおける就業日ローリングラグおよび休日ローリングラグを設定することにより、予測フェーズにおける就業日ローリング特徴量および休日ローリング特徴量を導出する。前処理部22Aは、当該需要電力量に対して、予測フェーズにおける就業日非ローリングラグおよび休日非ローリングラグを設定することにより、予測フェーズにおける就業日ラグ特徴量および休日ラグ特徴量を導出する。
【0204】
前処理部22Aは、予測フェーズにおける新たな特徴量を、予測フェーズにおける需要電力量の時系列データに追加することにより、新たな時系列データを生成する。実施形態1の例においても、当該新たな時系列データは、前値補間後就業状態データを含んでいるものとする。そして、予測演算部23は、当該新たな時系列データに基づいて、予測フェーズにおける需要電力量の予測値を予測モデルに出力させる。
【0205】
以上の通り、実施形態1によれば、予測フェーズにおいても、施設の就業状態に応じた新たな特徴量を導出できる。そして、当該新たな特徴量に基づいた予測を予測モデルに行わせることができる。このように、実施形態1によれば、施設の就業状態に応じた予測を予測モデルに行わせることができる。それゆえ、参考形態に比べてより一層予測精度を向上させることができる。
【0206】
図23は、前処理部22Aによって生成された新たな時系列データの例である。図23では、予測対象時間範囲の全体に亘って、就業状態が「1」である場合が例示されている。図23の例では、就業日非ローリングラグは「1」であるものとする。したがって、図23の例におけるラグ特徴量は、1日前の需要電力量を表す。図23の例におけるラグ特徴量は、就業日ラグ特徴量である。
【0207】
図23の例では、予測対象時間範囲の全体に亘って就業状態の変化が生じていない。したがって、図23の例における空白値(NULL)は、予測モデルから得られた予測値によって補間されてよい。
【0208】
図24は、前処理部22Aによって生成された新たな時系列データの別の例である。図24は、図23と対になる図である。図24では、図23の例とは異なり、予測対象時間範囲において、就業状態の変化が生じている場合が例示されている。図24の例では、予測対象時間範囲の初期時点の日付である7/11の就業状態が「0」であり、その後の日付における就業状態が「1」である。
【0209】
図24の例では、休日非ローリングラグおよび就業日非ローリングラグはいずれも「1」であるものとする。したがって、図24におけるラグ特徴量も、1日前の需要電力量を表す。図24の例におけるラグ特徴量は、就業状態「1」の場合には就業日ラグ特徴量を表し、就業状態「0」の場合には休日ラグ特徴量を表す。
【0210】
図24の例では、空白値が存在している日付である7/12の就業状態「1」は、その前日の就業状態「0」と一致していない。このことから、図24の例における空白値は、図23の例とは別の補間手法によって補間されることが望ましい。例えば、図24における空白値は、就業状態「1」に該当する既知の電力需要量の実績値に基づいて補間されてよい。
【0211】
図25は、前処理部22Aによって生成された新たな時系列データの別の例である。参考形態において述べた通り、新たな時系列データは、ラグ特徴量、ローリング特徴量、および就業状態以外のさらなる特徴量を含んでいてよい。図25の例における新たな時系列データは、時点相当量および曜日をさらなる特徴量として含んでいる。図25の例では、説明の便宜上、需要電力量の実績値が、ラグ特徴量およびローリング特徴量に対して併記されている。需要電力量の実績値自体が、特徴量として用いられてもよい。
【0212】
(就業状態データについての補足)
参考形態において述べた通り、就業状態データを前値補間することにより、施設における時刻毎の就業状態を示す就業状態データを生成できる。施設の就業状態の1日内の実際の変動を表現できるように、当該就業状態データを再設定することにより、施設の就業状態をより詳細に考慮することが可能となる。
【0213】
そこで、例えば、就業状態データは、施設における始業時刻を示す情報(始業時刻情報)、および、当該施設における終業時刻を示す情報(終業時刻情報)、のうちの少なくとも一方を含んでいてよい。これにより、施設における始業時刻および終業時刻の少なくとも一方を考慮して、当該施設の就業状態の1日内の変動を表現することが可能となる。
【0214】
図26は、前処理部22Aによって生成された新たな時系列データのさらに別の例である。図26は、図25と対になる図である。図26では、就業状態データが始業時刻情報を含んでいる場合を例示する。図26の例における始業時刻は、午前8時(8:00)であるものとする。
【0215】
本発明の一態様に係る前処理部は、就業状態データを前値補間した後、始業時刻情報に基づいて就業状態データ内の各時刻の就業状態を再設定してよい。一例として、当該前処理部は、ある日の就業状態と当該日の前日の就業状態とが相異しており、かつ、当該日のある時刻が就業時刻よりも以前である場合には、当該時刻における就業状態を表す論理値を、当該前日の最終時刻(23:59)における論理値に置換してよい(図26を参照)。
【0216】
施設の就業状態の1日内の変動を考慮することにより、当該変動に即した特殊ラグを導出できる。その結果、当該変動に即した新たな特徴量を導出できる。図26の例では、図25の例に比べて、需要電力量の実績値により近いラグ特徴量およびローリング特徴量が、「2023/5/8 0:00」から「2023/5/8 7:59」までの各時点において得られている。
【0217】
一例として、図26におけるラグ特徴量について述べる。図26の例では、図25の例とは異なり、「2023/5/8 0:00」から「2023/5/8 7:59」までの各時点の就業状態は、前日「2023/5/7」における同時点の就業状態と同等である。したがって、図26の例では、図25の例とは異なり、「2023/5/7 0:00」から「2023/5/7 7:59」までの各時点の需要電力量の実績値を引用することにより、「2023/5/8 0:00」から「2023/5/8 7:59」までの各時点のラグ特徴量が得られている。
【0218】
例えば、図26における「2023/5/8 0:00」のラグ特徴量は、「2023/5/7 0:00」の需要電力量の実績値に等しい。そして、「2023/5/8 0:01」のラグ特徴量は、「2023/5/7 0:01」の需要電力量の実績値に等しい。また、「2023/5/8 7:59」のラグ特徴量は、「2023/5/7 7:59」の需要電力量の実績値に等しい。
【0219】
〔実施形態1のまとめ〕
実施形態1において説明した各事項は、下記の通り表現できる。
【0220】
実施形態1に係るモデル生成装置は、施設における需要電力量を予測するための予測モデルを生成するモデル生成装置であって、前記モデル生成装置は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出し、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内から特殊ラグを選択し、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルを生成する。
【0221】
実施形態1に係るモデル生成装置では、前記特殊ラグは、前記需要電力量の時間変動の第1周期性に対応するローリングラグを含んでいてよく、前記モデル生成装置は、複数の前記ラグの内、時間長閾値以上の値を有するラグであって、自己相関閾値以上の値を有する前記自己相関係数に対応するラグを、特殊ラグ候補として選択してよく、複数の前記特殊ラグ候補が昇順にソートされた配列において、等差数列を成す複数の前記特殊ラグ候補をローリングラグ候補として選択してよく、前記就業状態データに基づいて、前記ローリングラグ候補から、前記施設の就業日に対応する就業日ローリングラグと、前記施設の休日に対応する休日ローリングラグと、を含む前記ローリングラグを導出してよい。
【0222】
実施形態1に係るモデル生成装置では、前記新たな特徴量は、前記ローリングラグに対応するローリング特徴量を含んでいてよく、前記ローリング特徴量は、就業日ローリング特徴量と休日ローリング特徴量とを含んでいてよく、前記モデル生成装置は、前記就業日ローリングラグを前記実績値に対して設定することにより、前記就業日ローリング特徴量を導出してよく、前記休日ローリングラグを前記実績値に対して設定することにより、前記休日ローリング特徴量を導出してよい。
【0223】
実施形態1に係るモデル生成装置では、前記特殊ラグは、前記需要電力量の時間変動の第2周期性に対応する非ローリングラグを含んでいてよく、前記第2周期性は、前記第1周期性に比べて短期的な周期性であってよく、前記モデル生成装置は、前記配列における前記ローリングラグ候補を除いた前記特殊ラグ候補を非ローリングラグ候補として選択してよく、前記就業状態データに基づいて、前記非ローリングラグ候補から、前記就業日に対応する就業日非ローリングラグと、前記休日に対応する休日非ローリングラグと、を含む前記非ローリングラグを導出してよい。
【0224】
実施形態1に係るモデル生成装置では、前記新たな特徴量は、前記非ローリングラグに対応するラグ特徴量を含んでいてよく、前記ラグ特徴量は、就業日ラグ特徴量と休日ラグ特徴量とを含んでいてよく、前記モデル生成装置は、前記就業日非ローリングラグを前記実績値に対して設定することにより、前記就業日ラグ特徴量を導出してよく、前記休日非ローリングラグを前記実績値に対して設定することにより、前記休日ラグ特徴量を導出してよい。
【0225】
実施形態1に係るモデル生成装置では、前記就業状態データは、前記施設における時刻毎の就業状態をさらに示していてよい。
【0226】
実施形態1に係るモデル生成装置では、前記就業状態データは、前記施設における始業時刻を示す情報、および、前記施設における終業時刻を示す情報、のうちの少なくとも一方を含んでいてよい。
【0227】
実施形態1に係る予測装置は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測装置であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内から特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルが生成されており、前記予測装置は、前記予測フェーズにおける就業状態データに基づいて、前記学習フェーズにおける前記特殊ラグから、前記予測フェーズにおける特殊ラグを導出し、前記実績値の時間推移を示す前記予測フェーズにおける時系列データについて、前記予測フェーズにおける前記特殊ラグを前記予測フェーズにおける前記実績値に対して設定することにより、前記予測フェーズにおける新たな特徴量を導出し、前記予測フェーズにおける前記新たな特徴量が追加された、前記予測フェーズにおける前記時系列データに基づいて、前記予測値を前記予測モデルに出力させる。
【0228】
実施形態1に係るモデル生成方法は、施設における需要電力量を予測するための予測モデルを生成するモデル生成方法であって、前記モデル生成方法は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出する工程と、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内から特殊ラグを選択する工程と、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出する工程と、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルを生成する工程と、を含んでいる。
【0229】
実施形態1に係る予測方法は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測方法であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内から特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記新たな特徴量が追加された前記時系列データに基づいて、機械学習によって前記予測モデルが生成されており、前記予測方法は、前記予測フェーズにおける就業状態データに基づいて、前記学習フェーズにおける前記特殊ラグから、前記予測フェーズにおける特殊ラグを導出する工程と、前記実績値の時間推移を示す前記予測フェーズにおける時系列データについて、前記予測フェーズにおける前記特殊ラグを前記予測フェーズにおける前記実績値に対して設定することにより、前記予測フェーズにおける新たな特徴量を導出する工程と、前記予測フェーズにおける前記新たな特徴量が追加された、前記予測フェーズにおける前記時系列データに基づいて、前記予測値を前記予測モデルに出力させる工程と、を含んでいる。
【0230】
〔実施形態2〕
図27は、実施形態2における情報処理装置1Bの要部の構成を例示するブロック図である。実施形態2では、実施形態1との相違点について説明する。図27の例における情報処理装置1Bは、制御装置9Aに替えて、制御装置9Bを備えている。制御装置9Bは、モデル生成装置10Aおよび予測装置20Aに替えて、モデル生成装置10Bおよび予測装置20Bを備えている。モデル生成装置10Bは、前処理部12Aに替えて、前処理部12Bを備えている。そして、モデル生成装置10Bは、学習部13および評価部14に替えて、学習部13Bおよび評価部14Bを備えている。予測装置20Bは、前処理部22Aに替えて、前処理部22Bを備えている。そして、予測装置20Bは、予測演算部23に替えて、予測演算部23Bを備えている。
【0231】
(実施形態2における学習フェーズ)
実施形態2では、複数のラグの内の最小値を「最小ラグ」と称する。最小ラグは、参考形態において述べたラグ単位量と同等の量である。したがって、実施形態2では、最小ラグが30分である場合を例示する。30分という最小ラグの値は、日単位に換算すると、「1/48日」に該当する(参考形態における図6も参照)。
【0232】
参考形態において述べた通り、ラグは、ラグ単位量とラグ次数との積として設定されている。このため、最小ラグよりも大きい複数のラグのそれぞれは、最小ラグの整数倍に等しい値である。
【0233】
実施形態2においても、最小ラグは、時間長閾値未満の値として設定されているものとする。すなわち、実施形態2においても、最小ラグは、特殊ラグとして選択されないものとする。したがって、前処理部12Bは、ACおよび就業状態データDSに基づいて、複数のラグの内、最小ラグ以外から特殊ラグを選択する。
【0234】
例えば、前処理部12Bは、ACおよび就業状態データDSに基づいて、最小ラグ以外の複数のラグの内から、特殊ラグとして、ローリングラグおよび非ローリングラグを選択する。実施形態2においても、前処理部12Bは、ローリングラグとして就業日ローリングラグおよび休日ローリングラグを選択し、非ローリングラグとして就業日非ローリングラグおよび休日非ローリングラグを選択する。
【0235】
実施形態2においても、前処理部12Bは、特殊ラグに基づいて新たな特徴量を導出する。すなわち、前処理部12Bは、特殊ラグを需要電力量の実績値に対して設定することにより、新たな特徴量を導出する。例えば、前処理部12Bは、ローリングラグに基づいてローリング特徴量を導出し、非ローリングラグに基づいてラグ特徴量を導出する。実施形態2においても、前処理部12Bは、ローリング特徴量として就業日ローリング特徴量および休日ローリングラグを導出し、ラグ特徴量として就業日ラグ特徴量および休日ラグ特徴量を導出する。
【0236】
本明細書では、需要電力量の実績値の時間推移を示す時系列データに対して、新たな特徴量が追加された時系列データを、第1時系列データと称する。第1時系列データは、実施形態1の学習フェーズにおいて述べた時系列データに該当する。前処理部12Bは、上述の通り導出した新たな特徴量を訓練データに追加することにより、第1時系列データを生成してよい。
【0237】
本明細書では、第1時系列データに基づく機械学習によって生成された予測モデルを、第1モデルと称する。実施形態2では、学習部13Bは、第1時系列データに基づいて第1モデルを生成する。第1モデルは、実施形態1において述べた予測モデルに該当する。学習部13Bは、前処理部12Bによって導出された特殊ラグを、第1モデルに組み込んでよい。
【0238】
前処理部12Bは、前処理部12Aとは異なり、最小ラグに基づいてさらなる新たな特徴量を導出する。具体的には、前処理部12Bは、最小ラグを需要電力量の実績値に対して設定することにより、さらなる新たな特徴量を導出する。本明細書では、当該さらなる新たな特徴量を「直前需要電力量」とも称する。
【0239】
実施形態2では、需要電力量の実績値に対する予測の対象とされている期間を、予測対象期間と称する。予測対象期間のタイムステップ(時間刻み幅)は、最小ラグに等しい値であるものとする。また、予測対象期間の始点を予測開始時点と称し、予測対象期間の終点を予測終了時点と称する。
【0240】
直前需要電力量は、予測対象期間内のある時点に対する、直前の時点の需要電力量の実績値(例:ある時点に対して30分前の需要電力量の実績値)を表す。上述の通り、最小ラグは、特殊ラグには該当しない。したがって、直前需要電力量は、特殊ラグに基づいて導出された特徴量には該当しない。このように、直前需要電力量は、ローリング特徴量ともラグ特徴量とも異なる特徴量である。直前需要電力量をさらなる新たな説明変数として導入することにより、現時点の直前の需要電力量の実績値を考慮できる。したがって、予測モデルのさらなる予測精度の向上が期待される。
【0241】
本明細書では、第1時系列データに対して直前需要電力量が追加された時系列データを、第2時系列データと称する。前処理部12Bは、上述の通り生成した第1時系列データに対して直前需要電力量を追加することにより、第2時系列データを生成してよい。
【0242】
本明細書では、第2時系列データに基づく機械学習によって生成された予測モデルを、第2モデルと称する。実施形態2では、学習部13Bは、第2時系列データに基づいて第2モデルを生成する。以上の通り、学習部13Bは、実施形態1の学習部13とは異なり、第2モデルをさらに生成する。これにより、実施形態2では、第1モデルと第2モデルとを併用して需要電力量を予測することが可能となる。学習部13Bは、最小ラグを第2モデルに組み込んでよい。
【0243】
評価部14Bは、学習部13Bによって生成された第1モデルおよび第2モデルをそれぞれ評価する。評価部14Bによる評価に先立ち、前処理部12Bは、検証データに対して、上述の訓練データと同じ様式の一連の前処理を実行することにより、前処理後検証データを生成する。
【0244】
実施形態2の例では、前処理部12Bは、第1モデル用の前処理後検証データおよび第2モデル用の前処理後検証データを生成する。第1モデル用の前処理後検証データは、上述の新たな特徴量(例:ローリング特徴量およびラグ特徴量)を含んでいる。第2モデル用の前処理後検証データは、当該新たな特徴量に加え、直前需要電力量をさらに含んでいる。
【0245】
本明細書では、第1モデルから出力される需要電力量の予測値を第1予測値と称する。評価部14Bは、第1モデル用の前処理後検証データを第1モデルに供給することにより、予測対象期間の各時点における第1予測値を、第1モデルに出力させてよい。また、本明細書では、需要電力量の実績値と第1予測値との誤差を第1誤差と称する。評価部14Bは、第1誤差を導出してよい。
【0246】
実施形態2の例では、実績値と予測値との誤差は、パーセント単位で表示されている。参考形態において述べた予測モデルの指標値が、当該誤差として用いられてよい。したがって、実施形態2における誤差は、例えばMAEであってもよいし、あるいはRMSEであってもよい。
【0247】
図28は、予測対象期間の各時点における第1モデルの誤差(すなわち、第1誤差)を示すグラフの例である。図28の例では、予測対象期間の長さは36時間に設定されている。グラフの横軸は、予測開始時点からの経過時間を表す。したがって、横軸における値「0」は予測開始時点に該当し、値「36」は予測終了時点に該当する。以下の説明に置いて述べる各時点は、文脈上矛盾が無い限り、予測開始時点「0」からの経過時間に読み替え可能である。
【0248】
また、本明細書では、第2モデルから出力される需要電力量の予測値を第2予測値と称する。評価部14Bは、第2モデル用の前処理後検証データを第2モデルに供給することにより、予測対象期間の各時点における第2予測値を、第2モデルに出力させてよい。また、本明細書では、需要電力量の実績値と第2予測値との誤差を第1誤差と称する。評価部14Bは、第2誤差を導出してよい。
【0249】
図29は、予測対象期間の各時点における第2モデルの誤差(すなわち、第2誤差)を示すグラフの例である。図29は、図28と対になる図である。図28図29とを対比すると、予測開始時点からの経過時間がそれほど大きくない場合には、第2誤差は第1誤差よりも小さい。このことは、第2モデルは、短期的な時間範囲の予測については第1モデルよりも優れていることを示している。第2モデルのこの特性は、第2モデルが直前需要電力量を説明変数として用いていることに起因する。
【0250】
ただし、図29の例では、予測開始時点からの経過時間が大きくなるにつれて、第2誤差が増加する傾向にある。第2モデルのこの特性も、第2モデルが直前需要電力量を説明変数として用いていることに起因する。第2モデルでは、予測対象期間の各時点における第2予測値の導出のために、直前需要電力量の予測値を使用することが必要となる場合がある(後述の予測フェーズにおける説明を参照)。このことから、時間の経過に伴い、直前需要電力量の予測値と実際の値との誤差が累積し、第2誤差の増加が生じうる。
【0251】
その一方、図28の例では、予測開始時点からの経過時間が大きくなっても、第1誤差はそれほど増加しない。第1モデルは、第2モデルとは異なり、直前需要電力量を説明変数として用いていない。このため、第1モデルでは、第2モデルに関して上述した誤差の累積が生じない。したがって、予測開始時点からの経過時間がある程度大きい場合には、第1誤差は第2誤差よりも小さくなる。このことは、第1モデルは、長期的な時間範囲の予測については第2モデルよりも優れていることを示している。
【0252】
以上の通り、第2モデルは短期的な時間範囲の予測に適しており、第1モデルは長期的な時間範囲の予測に適している。したがって、第1モデルと第2モデルとを適切に併用することにより、一方のモデルのみを用いた場合に比べて優れた予測を実現できる。
【0253】
そこで、評価部14Bは、第1予測値と第2予測値とに基づき、第1モデルの使用と第2モデルの使用とを切り替えるべき時点(以下、「切替時点」と称する)とを決定してよい。一例として、評価部14Bは、第1予測値と第2予測値とに基づき、複数の切替時点候補の内から、切替時点を選択してよい。
【0254】
評価部14Bは、予測対象期間に属する各時点の少なくとも一部を、切替時点候補として設定してよい。実施形態2では、評価部14Bが予測対象期間に属する全ての時点を切替時点候補として設定する場合を例示する。したがって、評価部14Bは、0hから36hまでの73個の切替時点候補を設定する(後掲の図31も参照)。
【0255】
次いで、評価部14Bは、予測開始時点から切替時点候補までの各時点について、第2モデルに第2予測値を出力させる。そして、評価部14Bは、切替時点候補の次の時点から予測終了時点までの各時点について、第1モデルに第1予測値を出力させる。一例として、切替時点候補が3.5hに設定されている場合を考える。この場合、評価部14Bは、予測対象期間に属する73個の時点のうち、0hから3.5hまでの8個の時点について、第2モデルに第2予測値を出力させる。そして、評価部14Bは、当該73個の時点のうち、4hから36hまでの65個の時点について、第1モデルに第1予測値を出力させる。
【0256】
実施形態2の例では、i番目の切替時点候補を第i切替時点候補と称する。実施形態2の例におけるiは、0以上かつ(Nc-1)以下の任意の整数である。Ncは、予測対象期間に属する時点の総数を表す。上記の例では、Nc=73である。実施形態2の例では、第i切替時点候補は、予測開始時点から、iと最小ラグとの積だけ後の時点として定められるものとする。したがって、第0切替時点候補は予測開始時点に該当し、第(Nc-1)切替時点候補は予測終了時点に該当する。
【0257】
上記の通り、評価部14Bは、0以上かつ(Nc-1)以下の全てのiのそれぞれについて、予測開始時点から第i切替時点候補までの(i+1)個の時点について、第2モデルに第2予測値を出力させる。そして、評価部14Bは、第(i+1)切替時点候補から予測終了時点までの(Nc-i-1)個の時点について、第1モデルに第1予測値を出力させる。
【0258】
評価部14Bは、(i)予測開始時点から切替時点候補までの各時点における第2予測値と、(ii)切替時点候補の次の時点から予測終了時点までの各時点における第1予測値と、に基づき、複数の切替時点候補の内から切替時点を選択してよい。すなわち、評価部14Bは、上述の(i+1)個の時点についての第2予測値と、上述の(Nc-i-1)個の時点についての第1予測値と、に基づき、Nc個の切替時点候補の内から切替時点を選択してよい。
【0259】
次いで、評価部14Bは、複数の切替時点候補のそれぞれについて、(i)予測開始時点から予測終了時点までの各時点における電力需要量の実績値と、(ii)予測開始時点から切替時点候補までの各時点における第2予測値と、(iii)切替時点候補の次の時点から予測終了時点までの各時点における第1予測値と、に基づき、予測対象期間における第1予測値と第2予測値との総合誤差を算出してよい。
【0260】
実施形態2における総合誤差は、実績値と第1予測値と第2予測値とに基づいて算出される任意の統計量であってよい。評価部14Bは、総合誤差に基づいて、複数の切替時点候補の内から、切替時点を選択してよい。
【0261】
一例として、評価部14Bは、予測開始時点から切替時点候補までの各時点における、電力需要量の実績値と第2予測値とに基づき、当該各時点における第2誤差を算出してよい。そして、評価部14Bは、予測開始時点から切替時点候補までの各時点における第2誤差の累積値を算出してよい。すなわち、評価部14Bは、上述の(i+1)個の時点についての第2誤差の累積値を算出してよい。
【0262】
また、評価部14Bは、切替時点候補の次の時点から予測終了時点までの各時点における、電力需要量の実績値と第1予測値とに基づき、当該各時点における第1誤差を算出してよい。そして、評価部14Bは、切替時点候補の次の時点から予測終了時点までの各時点における第1誤差の累積値を算出してよい。すなわち、評価部14Bは、上述の(Nc-i-1)個の時点についての第1誤差の累積値を算出してよい。
【0263】
上述の各説明から明らかである通り、総合誤差は、第1誤差と第2誤差とに基づいて算出される任意の統計量であってよい。一例として、評価部14Bは、第1誤差の累積値と第2誤差の累積値との和を算出してよい。次いで、評価部14Bは、当該和を上述のNcによって除算した値を、総合誤差として算出してよい。
【0264】
図30は、評価部14Bによって算出された、予測対象期間の各時点における第1誤差および第2誤差を示すグラフの例である。図30では、切替時点候補が3.5hに設定されている場合が例示されている。当該切替時点候補は、第7切替時点候補に該当する。図30の例におけるグラフの縦軸の値は、0hから3.5hまでの時間においては第2誤差を表し、4hから36hまでの時間においては第1誤差を表す。
【0265】
図30の例は、第1モデルと第2モデルとを適切に併用することにより、第1モデルのみを用いた場合(図28)、および、第2モデルのみを用いた場合(図29)のいずれと比較しても、優れた予測を実現できることを示している。したがって、実施形態2によれば、実施形態1に比べて予測精度をさらに向上させることが可能となる。
【0266】
図31は、複数の切替時点候補のそれぞれに対応する総合誤差の例を示す。上述の各説明から明らかである通り、切替時点候補が最小値「0h」に設定されている場合の総合誤差(第0切替時点候補に対応する総合誤差)は、図28のグラフプロットの平均値に対応する。その一方、切替時点候補が最大値「36h」に設定されている場合の総合誤差(第72切替時点候補に対応する総合誤差)は、図29のグラフプロットの平均値に対応する。
【0267】
一例として、評価部14Bは、複数の切替時点候補の内、総合誤差の最小値に対応する切替時点候補を、切替時点として選択してよい。図31の例では、切替時点候補「3.5h」において、総合誤差の最小値が得られている。したがって、評価部14Bは、3.5hを切替時点として選択する。図31の例では、切替時点候補が0hから3.5hへと増加するにつれて、総合誤差が減少している。次いで、切替時点候補が4hから36hへと増加するにつれて、総合誤差が増加している。
【0268】
評価部14Bは、学習フェーズにおける予測開始時点および予測終了時点を、第1モデルおよび第2モデルの少なくとも一方に組み込んでよい。加えて、評価部14Bは、上述の通り決定した切替時点を、第1モデルおよび第2モデルの少なくとも一方に組み込んでよい。これにより、以下に述べる予測フェーズにおいて、これらの時点を簡便に使用できる。一例として、評価部14Bは、これらの時点を第2モデルに組み込んでよい。
【0269】
(実施形態2における予測フェーズ)
予測装置20Bは、学習フェーズにおいてモデル生成装置10Bによって生成された第1モデルと第2モデルとを使用することにより、予測フェーズにおいて需要電力量を予測する。予測装置20Bが第1モデルを用いて需要電力量を予測する処理は、実施形態1の例と概ね同等である。したがって、実施形態2では、第2モデルに関する処理について主に述べる。
【0270】
予測装置20Bの前処理部22Bは、学習フェーズにおける予測開始時点、および、学習フェーズにおいて決定された切替時点を、第2モデルから読み出してよい。そして、前処理部22Bは、学習フェーズにおける予測開始時点から切替時点までの時間長を、切替時間長として算出してよい。実施形態2の例における切替時間長は、3.5hである。
【0271】
次いで、前処理部22Bは、予測フェーズにおける予測対象期間から、当該予測フェーズにおける予測開始時点および予測終了時点を取得してよい。そして、前処理部12Bは、予測フェーズにおける予測開始時点に切替時間長を加算した時点を、当該予測フェーズにおける切替時点として設定する。実施形態2では、前処理部12Bは、予測フェーズにおける切替時点を、「予測フェーズにおける予測開始時点よりも3.5h後の時点」として設定する。
【0272】
そして、予測演算部23Bは、予測フェーズにおける予測対象期間に属する各時点について、第1モデルまたは第2モデルの一方に電力需要量の予測値を出力させる。予測フェーズにおける予測対象期間においても、タイムステップは最小ラグに等しい値であるものとする。
【0273】
具体的には、予測演算部23Bは、予測フェーズにおける予測開始時点から切替時点までの各時点について、第2モデルに第2予測値を出力させる。そして、予測演算部23Bは、当該切替時点の次の時点から予測終了時点までの各時点について、第1モデルに第1予測値を出力させる。
【0274】
より具体的には、実施形態2の例では、前処理部22Bは、学習フェーズにおいて述べた前処理と同等の一連の前処理を行うことにより、予測フェーズにおける第1モデル用の入力データおよび第2モデル用の入力データを生成する。
【0275】
図32は、予測フェーズにおける第1モデル用の入力データの例を示す。図32に示す通り、予測フェーズにおける第1モデル用の入力データは、上述の新たな特徴量(例:ローリング特徴量およびラグ特徴量)を含んでいる。図33は、予測フェーズにおける第2モデル用の入力データの例を示す。図33に示す通り、予測フェーズにおける第2モデル用の入力データは、当該新たな特徴量に加え、直前需要電力量をさらに含んでいる。
【0276】
予測演算部23Bは、第2モデル用の入力データを第2モデルに供給することにより、予測フェーズにおける予測開始時点から切替時点までの各時点について、第2モデルに第2予測値を出力させる。そして、予測演算部23Bは、第1モデル用の入力データを第1モデルに供給することにより、当該切替時点の次の時点から予測終了時点までの各時点について、第1モデルに第1予測値を出力させる。
【0277】
図32図33の例では、予測終了開始時点は「2021/7/11 12:30」であり、予測終了時点は「2021/7/13 0:00」である。実施形態2の例では、予測フェーズにおける切替時点は、「2021/7/11 16:00」として設定されている。
【0278】
したがって、予測演算部23Bは、第2モデル用の入力データを第2モデルに供給することにより、「2021/7/11 12:30」から「2021/7/11 16:00」までの各時点について、第2モデルに第2予測値を出力させる。そして、予測演算部23Bは、第1モデル用の入力データを第1モデルに供給することにより、「2021/7/11 16:30」から「2021/7/13 0:00」までの各時点について、第1モデルに第1予測値を出力させる。
【0279】
図33における、予測終了開始時点「2021/7/11 12:30」における直前需要電力量は、当該時点よりも最小ラグだけ前の時点の需要電力量の実績値である。すなわち、当該直前需要電力量は、時点「2021/7/11 12:00」における需要電力量の実績値である。
【0280】
図33の例では、時点「2021/7/11 12:00」よりも後の時点における需要電力量の実績値は、未だ記憶部90に格納されていないものとする。したがって、図33の例では、「2021/7/11 13:00」以降の各時点における直前需要電力量は、空白値である。これらの空白値は、任意の補間手法によって補間されてよい。
【0281】
(実施形態2についての補足)
(1)学習フェーズにおいて、前処理部12Bが総合誤差に基づいて切替時点を決定する手法は、上述の通り例示した手法に限定されない。例えば、前処理部22Bは、切替時点候補の番号を示すカウンタ変数iの増加に伴う総合誤差の増加トレンドに基づいて、複数の切替時点候補の内から切替時点を選択してよい。
【0282】
本明細書では、第i切替時点候補に対応する総合誤差をTE(i)と表記する。そして、TE(i)とTE(i-1)との差を、Δと表記する。Δは、iが1だけ増加した場合の総合誤差の差分を表す。前処理部12Bは、Δを算出してよい。
【0283】
iの増加に伴ってΔが増加する傾向が続く場合、さらに大きいiの範囲内において総合誤差の大域的な最小値が見出される可能性はそれほど高くないと考えられる。そこで、前処理部22Bは、iの増加に伴ってK回連続してΔが増加した場合には、それまで探索したiの範囲内において得られた総合誤差の最小値を、切替時点として選択してよい。Kは、0以上かつ(Nc-1)以下の任意の整数として設定されていればよい。
【0284】
総合誤差の増加トレンドに基づいて(より具体的には、Δの増加トレンドに基づいて)切替時点として選択することにより、必ずしも全てのiについてTE(i)を算出することが不要となる。その結果、切替時点の設定までに要する一連の演算処理の時間を低減できる。
【0285】
(2)実施形態2では、学習部13Bが第1モデルと第2モデルとを生成する場合を例示した。ただし、学習部13Bが第1モデルと第2モデルとは別の予測モデルをさらに生成してもよい。例えば、学習部13Bは、ラグ特徴量、ローリング特徴量、および直前需要電力量とは別の特徴量に基づいて、別の予測モデルをさらに生成してもよい。
【0286】
以上の通り、学習部13Bは、3つ以上の予測モデルを生成してもよい。この場合、予測フェーズにおいて、予測装置20Bは、当該3つ以上の予測モデルを併用して、需要電力量を予測できる。
【0287】
〔ソフトウェアによる実現例〕
情報処理装置1~1B(以下では、便宜上「装置」と呼ぶ)の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の各制御ブロック(特に、モデル生成装置10~10Bおよび予測装置20~20Bに含まれる各部)としてコンピュータを機能させるためのプログラムにより実現することができる。
【0288】
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
【0289】
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
【0290】
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本発明の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
【0291】
上記各実施形態の説明から明らかである通り、上記各実施形態における各処理は、AI(Artificial Intelligence:人工知能)に実行させることができる。AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【0292】
〔まとめ〕
本発明の態様1に係るモデル生成装置は、施設における需要電力量を予測するための予測モデルを生成するモデル生成装置であって、前記モデル生成装置は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出し、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択し、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成し、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出し、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する。
【0293】
本発明の態様2に係るモデル生成装置では、前記態様1において、前記第1モデルから出力される前記需要電力量の予測値を第1予測値と称し、前記第2モデルから出力される前記需要電力量の予測値を第2予測値と称し、前記モデル生成装置は、前記実績値の予測対象期間に属する各時点の少なくとも一部を、複数の切替時点候補として設定してよく、(i)前記予測対象期間の始点である予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(ii)前記切替時点候補の次の時点から前記予測対象期間の終点である予測終了時点までの各時点における前記第1予測値と、に基づき、複数の前記切替時点候補の内から切替時点を選択してよい。
【0294】
本発明の態様3に係るモデル生成装置は、前記態様2において、複数の前記切替時点候補のそれぞれについて、(i)前記予測開始時点から前記予測終了時点までの各時点における前記実績値と、(ii)前記予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(iii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1予測値と、に基づき、前記予測対象期間における前記第1予測値と前記第2予測値との総合誤差を算出してよく、前記総合誤差に基づいて、複数の前記切替時点候補の内から、前記切替時点を選択してよい。
【0295】
本発明の態様4に係るモデル生成装置では、前記態様3において、前記実績値と前記第1予測値との誤差を第1誤差と称し、前記実績値と前記第2予測値との誤差を第2誤差と称し、前記モデル生成装置は、(i)前記予測開始時点から前記切替時点候補までの各時点における前記第2誤差の累積値と、(ii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1誤差の累積値と、の和を算出してよく、前記和を、前記予測対象期間に属する時点の総数によって除算した値を、前記総合誤差として算出してよい。
【0296】
本発明の態様5に係るモデル生成装置は、前記態様3または4において、複数の前記切替時点候補の内、前記総合誤差の最小値に対応する切替時点候補を、前記切替時点として選択してよい。
【0297】
本発明の態様6に係る予測装置は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測装置であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、前記予測装置は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する。
【0298】
本発明の態様7に係る予測装置では、前記態様6において、前記第1モデルから出力される前記需要電力量の予測値を第1予測値と称し、前記第2モデルから出力される前記需要電力量の予測値を第2予測値と称し、前記学習フェーズでは、予測開始時点から予測終了時点までの各時点の少なくとも一部が、複数の切替時点候補として設定されていてよく、(i)前記予測開始時点から前記切替時点候補までの各時点における前記第2予測値と、(ii)前記切替時点候補の次の時点から前記予測終了時点までの各時点における前記第1予測値と、に基づき、複数の前記切替時点候補の内から切替時点が選択されていてよく、前記予測装置は、前記学習フェーズにおける前記予測開始時点から前記切替時点までの時間長を、切替時間長として算出してよく、前記予測フェーズにおける予測開始時点に前記切替時間長を加算した時点を、前記予測フェーズにおける切替時点として設定してよく、前記予測フェーズにおける前記予測開始時点から、前記予測フェーズにおける前記切替時点までの各時点について、前記第2モデルに前記第2予測値を出力させてよく、前記予測フェーズにおける前記切替時点の次の時点から、前記予測フェーズにおける予測終了時点までの各時点について、前記第1モデルに前記第1予測値を出力させてよい。
【0299】
本発明の態様8に係るモデル生成方法は、施設における需要電力量を予測するための予測モデルを生成するモデル生成方法であって、前記モデル生成方法は、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数を導出する工程と、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグを選択する工程と、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出する工程と、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルを生成する工程と、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出する工程と、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルをさらに生成する工程と、を含んでいる。
【0300】
本発明の態様9に係る予測方法は、学習フェーズにおいて予め生成された、施設における需要電力量を予測するための予測モデルを予測フェーズにおいて用いることにより、前記需要電力量の予測値を導出する予測方法であって、前記学習フェーズでは、前記需要電力量の実績値の時間推移を示す時系列データについて、前記実績値に対する複数のラグを設定することにより、複数の前記ラグのそれぞれに対応する前記実績値の自己相関係数が導出されており、前記自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数の前記ラグの内、複数の前記ラグの最小値である最小ラグ以外から、特殊ラグが選択されており、前記特殊ラグを前記実績値に対して設定することにより新たな特徴量が導出されており、前記時系列データに対して前記新たな特徴量が追加された第1時系列データに基づいて、機械学習によって前記予測モデルとして第1モデルが生成されており、前記最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量が導出されており、前記第1時系列データに対して前記さらなる新たな特徴量が追加された第2時系列データに基づいて、前記機械学習によって、前記第1モデルとは異なる第2モデルがさらに生成されており、前記予測方法は、前記予測フェーズにおいて、前記第1モデルと前記第2モデルとを使用することにより、前記需要電力量を予測する工程を含んでいる。
【0301】
〔付記事項〕
本発明の一態様は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の一態様の技術的範囲に含まれる。
【符号の説明】
【0302】
1B 情報処理装置
10B モデル生成装置
20B 予測装置
DZ 学習フェーズにおける実績データ
DZP 予測フェーズにおける実績データ
DS 学習フェーズにおける就業状態データ
DSP 予測フェーズにおける就業状態データ

【要約】
【課題】施設における需要電力量の予測精度を高める。
【解決手段】施設における需要電力量を予測するための予測モデルを生成するモデル生成装置(10B)は、複数のラグのそれぞれに対応する需要電力量の実績値の自己相関係数、および、前記施設における日毎の就業状態を示す就業状態データに基づいて、複数のラグの内、最小ラグ以外から特殊ラグを選択し、特殊ラグを前記実績値に対して設定することにより新たな特徴量を導出し、前記実績値の時間推移を示す時系列データに対して新たな特徴量が追加された第1時系列データに基づき第1モデルを生成モデル生成し、最小ラグを前記実績値に対して設定することによりさらなる新たな特徴量を導出し、第1時系列データに対してさらなる新たな特徴量が追加された第2時系列データに基づき第2モデルをさらに生成する。
【選択図】図27
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33