(57)【特許請求の範囲】
【請求項１】
離散変数と連続変数の組み合わせの集合により与えられる説明変数から被説明変数を予測するためのコンピュータにより実行される方法であって、
予測したい前記被説明変数に対する前記説明変数を入力データとして受け付けるステップと、
前記入力データに含まれる前記集合内の前記離散変数と前記連続変数の組み合わせから
なる各要素につき、被説明変数が観測された複数の集合に関する学習データを用い、前記離散変数が一致する当該複数の集合内の要素を検索するステップと、
前記入力データの前記要素と当該入力データの要素につき検索された１以上の前記要素の各々について、連続変数から得られ被説明変数に対応するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算し、前記被説明変数が観測された集合毎の各関数値の和を、前記入力データのすべての前記要素につき計算するステップと、
各前記要素につき計算された前記和を、前記被説明変数を予測するための推定式に適用して、前記各要素につき前記被説明変数の予測値を計算するステップとを含む、予測方法。
【請求項２】
前記離散変数は、前記被説明変数が観測されるユニットに含まれる原材料の種類を表す値であり、前記連続変数は、前記ユニットに含まれる前記原材料に関する連続量をまとめたベクトルであり、前記スケール変数は、前記ユニットに含まれる前記原材料の体積もしくは質量または他の変数とそれらの変数を複数含む数式の計算結果で前記被説明変数に対応する値であり、前記被説明変数は、前記ユニットで消費される消費電力量である、請求項１に記載の予測方法。
【請求項３】
前記関数は、
【数１】
0005988419.tif 000030
（ｍ［ｉ］およびｍ［ｊ］は、前記被説明変数が観測されるユニットｉおよびユニットｊに含まれる前記要素の数、Ｍは、前記要素の種類の数、ｓは、前記スケール変数、ｚは、前記離散変数、ｘは、前記連続変数、Ｉは、前記ユニットｉと前記ユニットｊとの間で前記離散変数が一致する要素同士についてのみ１を与え、それ以外は０を与える関数である。）で表されるカーネル関数であることを特徴とする、請求項１に記載の予測方法。
【請求項４】
前記推定式は、回帰式または条件付き密度関数である、請求項１に記載の予測方法。
【請求項５】
前記予測方法は、正規過程回帰、Nadaraya-Watsonカーネル回帰、関連ベクトル回帰、サポート・ベクトル回帰、Kullback-Leibler重要度推定法、最小二乗条件付き密度推定のいずれか１つのノンパラメトリック回帰または条件付き密度推定法が適用可能である、請求項１に記載の予測方法。
【請求項６】
前記関数が、カーネル関数とされ、前記予測方法が、正規過程回帰を用いるものであって、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するステップと、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するステップと、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するステップとをさらに含む、請求項１に記載の予測方法。
【請求項７】
前記関数が、カーネル関数とされ、前記予測方法が、正規過程回帰を用いるものであって、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するステップと、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するステップと、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するステップとをさらに含み、
前記最適化するステップが、前記ハイパー・パラメータを、周辺尤度最大化法を用いて最適化し、前記カーネル行列を導出するステップが、前記学習データに含まれる各前記集合につき、前記各集合に含まれる複数の前記スケール変数を用いて対角要素を計算して対角行列を導出し、前記パラメータを計算するステップが、導出された前記カーネル行列と前記対角行列とを用いて前記推定式に設定するための前記パラメータを計算することを特徴とする、請求項１に記載の予測方法。
【請求項８】
離散変数と連続変数の組み合わせの集合により与えられる説明変数から被説明変数を予測するシステムであって、
予測したい前記被説明変数に対する前記説明変数を入力データとして受け付けるデータ入力部と、
前記入力データに含まれる前記集合内の前記離散変数と前記連続変数の組み合わせからなる各要素につき、被説明変数が観測された複数の集合に関する学習データを用い、前記離散変数が一致する当該複数の集合内の要素を検索する要素検索部と、
前記入力データの前記要素と当該入力データの要素につき検索された１以上の前記要素の各々について、連続変数から得られ被説明変数に対応するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算し、前記被説明変数が観測された集合毎の各関数値の和を、前記入力データのすべての前記要素につき計算する関数値計算部と、
各前記要素につき計算された前記和を、前記被説明変数を予測するための推定式に適用して、前記各要素につき前記被説明変数の予測値を計算する予測値計算部とを含む、予測システム。
【請求項９】
前記離散変数は、前記被説明変数が観測されるユニットに含まれる原材料の種類を表す値であり、前記連続変数は、前記ユニットに含まれる前記原材料に関する連続量をまとめたベクトルであり、前記スケール変数は、前記ユニットに含まれる前記原材料の体積もしくは質量または他の変数とそれらの変数を複数含む数式の計算結果で前記被説明変数に対応する値であり、前記被説明変数は、前記ユニットで消費される消費電力量である、請求項８に記載の予測システム。
【請求項１０】
前記関数は、
【数２】
0005988419.tif 000031
（ｍ［ｉ］およびｍ［ｊ］は、前記被説明変数が観測されるユニットｉおよびユニットｊに含まれる前記要素の数、Ｍは、前記要素の種類の数、ｓは、前記スケール変数、ｚは、前記離散変数、ｘは、前記連続変数、Ｉは、前記ユニットｉと前記ユニットｊとの間で前記離散変数が一致する要素同士についてのみ１を与え、それ以外は０を与える関数である。）で表されるカーネル関数であることを特徴とする、請求項８に記載の予測システム。
【請求項１１】
前記推定式は、回帰式または条件付き密度関数である、請求項８に記載の予測システム。
【請求項１２】
前記予測システムは、正規過程回帰、Nadaraya-Watsonカーネル回帰、関連ベクトル回帰、サポート・ベクトル回帰、Kullback-Leibler重要度推定法、最小二乗条件付き密度推定のいずれか１つのノンパラメトリック回帰または条件付き密度推定法が適用可能である、請求項８に記載の予測システム。
【請求項１３】
前記関数が、カーネル関数とされ、前記予測システムが、正規過程回帰を用いるものであり、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するパラメータ最適化部と、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するカーネル行列導出部と、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するパラメータ計算部とをさらに含む、請求項８に記載の予測システム。
【請求項１４】
前記関数が、カーネル関数とされ、前記予測システムが、正規過程回帰を用いるものであり、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するパラメータ最適化部と、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するカーネル行列導出部と、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するパラメータ計算部とをさらに含み、
前記パラメータ最適化部が、前記ハイパー・パラメータを、周辺尤度最大化法を用いて最適化し、前記カーネル行列導出部が、前記学習データに含まれる各前記集合につき、前記各集合に含まれる複数の前記スケール変数を用いて対角要素を計算して対角行列を導出し、前記パラメータ計算部が、導出された前記カーネル行列と前記対角行列とを用いて前記推定式に設定するための前記パラメータを計算することを特徴とする、請求項８に記載の予測システム。
【請求項１５】
離散変数と連続変数の組み合わせの集合により与えられる説明変数から被説明変数を予測するための予測方法を実行するためのコンピュータ可読なプログラムであって、前記プログラムが、
予測したい前記被説明変数に対する前記説明変数を入力データとして受け付けるステップと、
前記入力データに含まれる前記集合内の前記離散変数と前記連続変数の組み合わせからなる各要素につき、被説明変数が観測された複数の集合に関する学習データを用い、前記離散変数が一致する当該複数の集合内の要素を検索するステップと、
前記入力データの前記要素と当該入力データの要素につき検索された１以上の前記要素の各々について、連続変数から得られ被説明変数に対応するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算し、前記被説明変数が観測された集合毎の各関数値の和を、前記入力データのすべての前記要素につき計算するステップと、
各前記要素につき計算された前記和を、前記被説明変数を予測するための推定式に適用して、前記各要素につき前記被説明変数の予測値を計算するステップとをコンピュータに実行させる、プログラム。
【請求項１６】
前記離散変数は、前記被説明変数が観測されるユニットに含まれる原材料の種類を表す値であり、前記連続変数は、前記ユニットに含まれる前記原材料に関する連続量をまとめたベクトルであり、前記スケール変数は、前記ユニットに含まれる前記原材料の体積もしくは質量または他の変数とそれらの変数を複数含む数式の計算結果で前記被説明変数に対応する値であり、前記被説明変数は、前記ユニットで消費される消費電力量である、請求項１５に記載のプログラム。
【請求項１７】
前記関数は、
【数３】
0005988419.tif 000032
（ｍ［ｉ］およびｍ［ｊ］は、前記被説明変数が観測されるユニットｉおよびユニットｊに含まれる前記要素の数、Ｍは、前記要素の種類の数、ｓは、前記スケール変数、ｚは、前記離散変数、ｘは、前記連続変数、Ｉは、前記ユニットｉと前記ユニットｊとの間で前記離散変数が一致する要素同士についてのみ１を与え、それ以外は０を与える関数である。）で表されるカーネル関数であることを特徴とする、請求項１５に記載のプログラム。
【請求項１８】
前記推定式は、回帰式または条件付き密度関数である、請求項１５に記載のプログラム。
【請求項１９】
前記予測方法は、正規過程回帰、Nadaraya-Watsonカーネル回帰、関連ベクトル回帰、サポート・ベクトル回帰、Kullback-Leibler重要度推定法、最小二乗条件付き密度推定のいずれか１つのノンパラメトリック回帰または条件付き密度推定法が適用可能である、請求項１５に記載のプログラム。
【請求項２０】
前記関数が、カーネル関数とされ、前記予測方法が、正規過程回帰を用いるものであって、前記プログラムは、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するステップと、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するステップと、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するステップとをさらに前記コンピュータに実行させる、請求項１５に記載のプログラム。
【請求項２１】
前記関数が、カーネル関数とされ、前記予測方法が、正規過程回帰を用いるものであって、前記プログラムは、前記カーネル関数に設定されるハイパー・パラメータを、前記学習データを用いて最適化するステップと、前記学習データを用い、最適化された前記ハイパー・パラメータを前記カーネル関数に設定してカーネル行列を導出するステップと、導出された前記カーネル行列を用いて前記推定式に設定するためのパラメータを計算するステップとをさらに前記コンピュータに実行させ、
前記最適化するステップにおいて、前記ハイパー・パラメータを、周辺尤度最大化法を用いて最適化し、前記カーネル行列を導出するステップにおいて、前記学習データに含まれる各前記集合につき、前記各集合に含まれる複数の前記スケール変数を用いて対角要素を計算して対角行列を導出し、前記パラメータを計算するステップにおいて、導出された前記カーネル行列と前記対角行列とを用いて前記推定式に設定するための前記パラメータを計算する、請求項１５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製造工程において消費される電力等のデータを正確に予測するための方法、そのシステムおよびその方法を実現するためのコンピュータ可読なプログラムに関する。
【背景技術】
【０００２】
自動車や電気製品等は、多くの金属やプラスチック等の材料を溶融、成形して部品を製造し、その部品を組み立てることにより製造される。これらの製品に使用される鉄等は、原石を粉砕し、溶融し、他の金属や炭素等を添加し、一定の形状に成形することにより製造される。これらの製造において消費される電力は、鉄、銅、ポリエチレン、ポリプロピレン等の原材料の物性やその大きさ等から予測することができるが、その１つの手法として、回帰分析という手法が用いられている。
【０００３】
この回帰分析は、複数の量的変数のうち、注目している説明したい変数（被説明変数）を、これを説明するために用いられる変数（説明変数）で説明する回帰式を求める手法である。回帰式は、データの点の分布を良く近似する関数である。この手法では、実際に使用された原材料の物性やその大きさ等のデータと、実際に計測された電力データとを学習データとして用い、数式モデル化した回帰式を求める。なお、予測したい電力は、この求めた回帰式に、原材料の物性やその大きさ等のデータを入力することにより求めることができる。
【０００４】
その他の手法として、条件付き密度推定という手法も用いられている。条件付き密度推定も回帰分析と同様に被説明変数と説明変数の関係式を導出する。ただし、導出されるのは、被説明変数の平均を予測する回帰式ではなく、被説明変数の確率分布を表す条件付き確率密度関数である。回帰分析は、誤差分布に正規分布等のパラメトリックな仮定を置くが、条件付き密度推定は、多くの場合、ノンパラメトリック手法を用いて誤差分布も正規分布等に限らず、複雑な分布を取り扱う。
【０００５】
例えば、各説明変数の相互作用および非線形な寄与を考慮し、予測すべき状態の確率を精度良く予測することができる技術が開示されている（特許文献１参照）。この技術では、まず、複数の説明変数と、ある状態の発生の有無を表す従属変数（被説明変数）とを有するサンプルの集合である学習データをデータベースから読み出す。そして、説明変数ごとに用意された要素カーネル関数の和としてのカーネル関数を用いて定義された回帰式における回帰係数を、その学習データを用いて予め与えられた目的関数を最適化することにより求める。
【０００６】
その後、この技術では、入力パラメータとして複数の説明変数を回帰式に入力して従属変数を求める。そして、求めた従属変数を確率予測関数に入力して、ある状態が発生する確率、あるいは発生しない確率を予測する。ここで、上記のカーネル関数は、データｘ(i)のｄ次元の特徴空間の中でのベクトル表現をφ(ｘ(i))とすると、ｉ番目のデータとｊ番目のデータの間のカーネル関数がｋ(ｘ(i)，ｘ(j))＝〈φ(ｘ(i)，φ(ｘ(j))〉のように特徴ベクトルの内積で表される関係を有するものである。
【０００７】
カーネル法を用いる回帰学習方法として、種別の異なる複数の観測データと、その評価値を訓練データとして、コンピュータの処理により、多重核関数学習法を使用して推定値を計算する方法が開示されている（特許文献２参照）。この方法は、個々の種別のデータ毎に類似度行列を計算し、その計算された類似度行例を用いて、個々の種別のデータ毎にグラフ・ラプラシアンを計算する。そして、結合定数による一次結合として全体のグラフ・ラプラシアンを与え、観測データの観測モデルが正規分布で、観測データを説明するための潜在変数も正規分布で、結合定数がガンマ事前分布に従うという仮定の下、グラフ・ラプラシアンを用いて変分ベイズ法により、結合定数と観測モデルの分散を計算する。その後、結合定数と観測モデルの分散を用い、ラプラス近似により、任意の入力データに対する予測分布を求める。
【０００８】
このように、観測変数、それに付随する潜在変数、および結合定数に確率モデルを想定し、変分ベイズ法を基に最適化することにより、妥当な計算量で、多重核関数学習処理を計算することを可能にしている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−１２２４１８号公報
【特許文献２】特開２０１１−１９８１９１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記の製造工程において原材料の物性等から消費される電力を予測するための回帰手法には、次のような課題が存在する。１つ目の課題は、学習データとして用いる被説明変数が部分的にしか観測されていないことである。
【００１１】
ある製鉄工場の製造工程を例にとると、データ集約により、３０分毎の電力合計値のみが計測され、保存されている。この３０分間の間には、材質も大きさも異なる複数の原材料が処理されている。このため、学習データとして、単一の原材料を処理した場合に消費される電力等のサンプルは得ることができず、特定の大きさで、かつ特定の組み合わせの原材料について計測された３０分毎の電力合計値が得られるのみである。
【００１２】
２つ目の課題は、原材料の種類等の説明変数の一部が、物性や大きさ等とは異なり、ダミー変数（離散変数）であるため、従来の回帰手法では予測精度が低いことである。
【００１３】
原材料の種類等は、物性や大きさ等のように連続値として得られるものではなく、特定の原材料であるか否かという離散値でしか与えられないからである。
【００１４】
カーネル関数には、線形カーネル、多項式カーネル、ＲＢＦ(Radial-Basis-Function)カーネル（ガウシアン・カーネルとも呼ばれる。）等がある。汎用的な非線形予測手法としてＲＢＦカーネルが広く使用されるが、これは、十分なサンプルが得られる状況ではいかなる回帰関数をも復元することができる。しかしながら、上記の３０分毎の電力合計値のみが保存される状況においては、サンプル数が限られているため、ＲＢＦカーネルを用いる手法では汎化誤差が大きくなってしまう。
【００１５】
３つ目の課題は、例えば３０分間というユニット内で、オーダーが異なる消費電力が合計されており、回帰問題における誤差分布のスケール設定がしにくいことである。消費電力のオーダーが異なれば、それに応じて誤差分布のオーダーも変化すると考えられるが、個々の原材料につき消費電力が計測されないので、誤差分布のスケールをどのオーダーに設定するかを決めるのは困難である。
【００１６】
上記特許文献１および２に記載の方法を含む従来の回帰手法は、学習データのサンプル数が限られていることも、離散変数を含むことから予測精度が低くなることも、誤差分布のスケール設定がしにくいことも考慮されていない。このため、従来の回帰手法では、これらの課題を解決することができなかった。そこで、これらの課題を解決することができる方法やその方法を実施するためのシステムの提供が望まれていた。
【課題を解決するための手段】
【００１７】
本発明は、上記課題を解決するためになされたものであり、上記課題は、以下の予測方法、その方法を実施するための予測システムおよびコンピュータをその予測システムとして機能させるためのコンピュータ可読なプログラムを提供することにより解決することができる。
【００１８】
すなわち、この予測方法は、離散変数と連続変数の組み合わせの集合により与えられる説明変数から被説明変数を予測するためのコンピュータにより実行される方法である。この方法は、予測したい被説明変数に対する説明変数を入力データとして受け付けるステップと、入力データに含まれる集合内の離散変数と連続変数の組み合わせからなる各要素につき、被説明変数が観測された複数の集合に関する学習データを用い、離散変数が一致する当該複数の集合内の要素を検索するステップとを含む。
【００１９】
また、この方法は、入力データの要素と当該入力データの要素につき検索された１以上の要素の各々について、連続変数から得られる被説明変数に対応するスカラー、より具体的には被説明変数におおよそ比例するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算し、各関数値の和を、入力データのすべての要素につき計算するステップと、各要素につき計算された和を、被説明変数を予測するための推定式に適用して、各要素につき被説明変数の予測値を計算するステップとを含む。
【００２０】
このように、離散変数が一致する要素同士についてのみ、連続変数から得られる被説明変数におおよそ比例するスカラーを表すスケール変数により重み付けされた関数を適用して各関数値を計算し、その和をそれぞれ求め、各要素につき被説明変数の予測値を計算することで、被説明変数が部分的にしか観測されていなくても、説明変数が離散変数を含む場合であっても、学習データにはない要素の組み合わせに対して被説明変数の予測値を求めることができる。
【００２１】
また、個々の要素と被説明変数との厳密な対応がとれていなくても、学習データを用いて個々の要素につき被説明変数の予測値を求めることができる。さらに、被説明変数のオーダーが異なる要素を含む場合であっても、小さな誤差で被説明変数の値を予測することができる。
【００２２】
本発明は、特に、製造業における原材料を溶融、成形等して製品を製造する際に消費される電力を予測する方法として有用である。この場合、離散変数は、消費電力が観測されるユニットに含まれる原材料の種類を表す値とされる。連続変数は、そのユニットに含まれる原材料に関する連続量をまとめたベクトルとされる。スケール変数は、そのユニットに含まれる原材料の体積もしくは質量または他の変数とそれらの変数を複数含む数式の計算値で被説明変数におおよそ比例する値とされる。被説明変数は、そのユニットで消費される消費電力となる。
【００２３】
２つの集合間の類似度を与える関数として、カーネル関数を用いることができ、ＲＢＦカーネルを用いることが好ましい。これにより、説明変数と被説明変数との関係が非線形であっても、その被説明変数の値を予測することができる。
【００２４】
上記の推定式は、回帰式または条件付き密度関数とされる。回帰式や条件付き密度関数は、高次元の特徴ベクトルを含むが、カーネル関数を適用して計算することにより、この高次元の特徴ベクトル自体を計算により求める必要がなくなり、計算時間を短縮することができる。
【００２５】
カーネル関数を用いた予測方法として、正規過程回帰、Nadaraya-Watsonカーネル回帰、関連ベクトル回帰、サポート・ベクトル回帰、Kullback-Leibler重要度推定法、最小二乗条件付き密度推定のいずれか１つのノンパラメトリック回帰または条件付き密度推定法が適用可能である。後述するカーネル行列およびカーネル・ベクトルの計算を含むものであれば、これら以外の手法も適用可能である。
【００２６】
また、上記の関数が、カーネル関数とされ、この予測方法が、正規過程回帰を用いるものである場合、カーネル関数に設定されるハイパー・パラメータを、学習データを用いて最適化するステップと、学習データを用い、最適化されたハイパー・パラメータをカーネル関数に設定してカーネル行列を導出するステップと、導出されたカーネル行列を用いて推定式に設定するためのパラメータを計算するステップとをさらに含むことができる。最適化されたハイパー・パラメータを求め、そのハイパー・パラメータから消費電力の予測に必要とされるパラメータを算出するためである。
【００２７】
最適化するステップは、例えば、ハイパー・パラメータを、周辺尤度最大化法を用いて最適化し、カーネル行列を導出するステップは、学習データに含まれる各集合につき、各集合に含まれる複数のスケール変数を用いて対角要素を計算して対角行列も導出し、パラメータを計算するステップは、導出されたカーネル行列と対角行列とを用いて推定式に設定するためのパラメータを計算することができる。
【００２８】
本発明では、上記の方法を実施するためのシステムを提供することもできる。このシステムは、上記の入力データを受け付けるデータ入力部と、上記の要素を計算する要素検索部と、上記の各関数値の和を計算する関数値計算部と、予測値を計算する予測値計算部とを含む。また、上記のハイパー・パラメータを最適化するパラメータ最適化部と、カーネル行列を導出するカーネル行列導出部と、パラメータを計算するパラメータ計算部とをさらに含むことができる。
【００２９】
本発明は、上記の方法をコンピュータに実行させ、そのコンピュータを上記システムとして機能させるコンピュータ可読なプログラムとして提供することも可能である。このプログラムは、ネットワークに接続されたサーバ装置やデータベース等に格納され、ダウンロード要求に応じて提供することもできるし、ＣＤ−ＲＯＭ、ＳＤカード、ＤＶＤ、フラッシュメモリ等の記録媒体に格納して提供することも可能である。
【図面の簡単な説明】
【００３０】
【図１】本発明の方法を実施するためのシステムのハードウェア構成の一例を示した図。
【図２】図１に示すシステムの第１実施形態を示した機能ブロック図。
【図３】図２に示すシステムが行う処理の流れを示したフローチャート図。
【図４】図１に示すシステムの第２実施形態を示した機能ブロック図。
【図５】図４に示すシステムが行う処理の流れを示したフローチャート図。
【図６】カーネル行列の行列要素とカーネル・ベクトルのベクトル要素の計算法を例示した図。
【図７】従来のカーネル回帰手法と、本方法とを用いて行ったシミュレーション結果をテーブルで示した図。
【図８】ユニット内の各原材料に対して予測した消費電力と実際に測定した消費電力との関係を示した図。
【図９】図７に示す予測結果と実測結果とを対数軸にプロットしたところを示した図。
【図１０】ユニット内のすべての原材料につき予測した消費電力を合計した合計消費電力と実際に測定した合計消費電力との関係を示した図。
【図１１】図９に示す予測結果と実測結果とを対数軸にプロットしたところを示した図。
【発明を実施するための形態】
【００３１】
図１は、本発明の方法を実施するためのシステムのハードウェア構成の一例を示した図である。このシステム１００は、パーソナル・コンピュータやワークステーション等とすることができ、ＣＰＵ１０２、主記憶装置として用いられるＲＡＭ１０４およびＲＯＭ１０６、ハードディスク・ドライブ（ＨＤＤ）１０８、キーボードやマウスといった入力装置１１０、ディスプレイといった表示装置１１２を含んで構成することができる。これらは、いずれもシステム・バス１１４に接続され、データ等のやりとりは、このシステム・バス１１４を介して行われる。
【００３２】
ＣＰＵ１０２は、一度に扱えるデータの幅が３２ビットあるいは６４ビットのものが好ましく、例えば、インテル社のＣｏｒｅ（登録商標）、Ｐｅｎｔｉｕｍ（登録商標）、ＡＭＤ社のＰｈｅｎｏｍ（登録商標）、Ａｔｈｌｏｎ（登録商標）等を用いることができる。ＲＡＭ１０４は、ＣＰＵ１０２が直接読み書きするための記憶装置で、例えば、１ＧＢ以上の容量のものを挙げることができる。本発明の方法は、複雑な特徴ベクトルの計算を含まないことから計算量は削減されるが、計算速度を向上させるために２ＧＢ以上の容量のものが好ましい。
【００３３】
ＲＯＭ１０６は、読み出し専用のメモリで、ＢＩＯＳ(Basic Input/Output System)やファームウェア等を記憶する。ＨＤＤ１０８は、各種のアプリケーション・ソフトウェアやオペレーティング・システム(OS)等を記憶する。ＯＳとしては、ＵＮＩＸ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）、Ｍａｃ  ＯＳ（登録商標）等、ＣＰＵ１０２に適合する任意のものを用いることができる。
【００３４】
また、ＨＤＤ１０８には、本発明の方法を実行させるためのプログラムを記憶することができる。このプログラムは、ＣＰＵ１０２によりＲＡＭ１０４に読み出され、ＣＰＵ１０２がそのプログラムを実行することにより、後述する処理を実現する。このプログラムは、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等のこれまでに知られた任意のプログラム言語により作成することができる。
【００３５】
入力装置１１０は、ＯＳが提供するグラフィック・ユーザ・インタフェース(GUI)に従い、表示装置１１２の画面上に表示されたアイコン、タスクバー、ウィンドウ等のグラフィック・オブジェクトを操作するために、また、文字や数字等を入力するために使用される。また、入力装置１１０は、表示装置１１２の画面上に表示されたコマンド・ボタンを押下する際にも使用され、このボタン押下により処理を開始させたり、処理を中止させたり、処理を終了させたりすることができる。
【００３６】
表示装置１１２は、例えば、液晶ディスプレイとすることができ、タッチパネルを搭載したものであってもよい。タッチパネルを搭載した表示装置１１２である場合、画面にタッチして上記操作や文字等の入力を行うことができるため、上記の入力装置１１０は不要である。
【００３７】
そのほか、必要に応じて、ネットワークに接続するための通信インタフェースや、ＤＶＤドライブ、ＳＤカードスロット等を備えることができる。このシステムは、無線ＬＡＮ機能やＢｌｕｅｔｏｏｔｈ（登録商標）機能を実現するために送受信機を備えていてもよい。
【００３８】
図２は、本発明の方法を実施するためのシステムの第１実施形態を示した機能ブロック図である。このシステム１００は、上記のようにＣＰＵ１０２、ＲＡＭ１０４、ＨＤＤ１０８を備え、ＨＤＤ１０８には、本発明の方法を実行するためのプログラムを格納し、ＣＰＵ１０２がそれをＲＡＭ１０４に読み出し、それを実行することにより、そのシステム１００を以下の各機能部として機能させることができる。
【００３９】
したがって、このシステム１００は、その機能部として、データ入力部２００と、要素検索部２０２と、関数値計算部２０４と、予測値計算部２０６とを含む。また、システム１００は、上記のＲＡＭ１０４やＨＤＤ１０８をデータ格納部２０８として含む。
【００４０】
データ入力部２００は、入力装置１１０により入力されたデータ、もしくはシステム１００がネットワークに接続されている場合はネットワークを介して受信したデータ、またはＣＤ−ＲＯＭ等の記録媒体に格納されたデータを、入力データとして受け付ける。
【００４１】
入力データは、予測したい被説明変数に対する説明変数である。例えば、本発明の方法を、製造業における原材料を溶融、成形等して製品を製造する際に消費される電力を予測するために使用する場合、被説明変数は消費電力であり、説明変数は原材料の物性、体積や質量、温度や圧力等の製造条件である。
【００４２】
製鉄工場を例にとり具体的に説明すると、鉄鉱石、石炭、石灰石等の原材料を受け入れ、その原材料を焼結する等して処理し、高炉で溶かして鉄を抽出し、必要に応じて他の金属や合金を混ぜ合わせ、所定の強度をもつ鋼を製造する。そして、加工しやすいように、一定の形に鋳固められる。
【００４３】
この鋼を製造する際、電気炉等が用いられるが、この電気炉で消費される電力は、含まれている原材料によって変わってくる。このことは、その後の製品を加工する際の圧延においても同様である。
【００４４】
したがって、説明変数は、鋼を製造する工程においては、鉄、炭素、ニッケル、クロム等の種類やその数、その体積や質量、炉内の温度、熱伝導率等とされ、圧延工程では、その種類やその数、その体積や質量、弾性係数、原材料に加える圧力等である。
【００４５】
説明変数のうち、原材料の体積や質量、温度、圧力、弾性係数、熱伝導率等は、精度を高くすればいくらでも正確な値が得られる連続変数である。一方、鉄、炭素、ニッケル、クロム等の種類やその数は、それ以上に分けることができない離散変数である。なお、連続変数は、入力される物性や体積等の連続値の数に応じた次元のベクトルとされる。また、原材料の体積もしくは質量または他の変数とそれらの変数を複数含む数式の計算結果で被説明変数におおよそ比例する値等は、消費電力に対応するスカラーを表すスケール変数とされる。
【００４６】
データ入力部２００が入力データとしてこれらの連続変数と離散変数の組み合わせの集合により与えられる説明変数を受け付けると、要素検索部２０２へその説明変数を渡す。説明変数は、原材料である鉄について、鉄という原材料の種類を表す離散変数をもち、かつその物性（密度、弾性係数、熱伝導率等）、体積、質量、加える圧力や温度等の連続変数をもつため、離散変数と連続変数の組み合わせからなり、それが、炭素、ニッケル、クロム等についても同様の組み合わせをもつことから、それらの組み合わせの集合により与えられるものである。
【００４７】
本発明では、説明変数が連続変数だけでなく、離散変数も含むことから、この離散変数を考慮し、また、被説明変数におおよそ比例するスカラーであり、説明変数の１つとして含まれるスケール変数も考慮して、被説明変数を予測する。
【００４８】
要素検索部２０２は、入力データに含まれる集合内の各要素につき、学習データの複数の集合内から離散変数が一致する要素を検索する。個々の要素につき、被説明変数の予測を可能にするためである。ここでいう要素は、離散変数と連続変数の組み合わせからなるもので、具体的には、鉄という個々の原材料の物性、体積、質量等のデータである。学習データは、実際に計測等を行い、観測された被説明変数と、その被説明変数を観測するために用いられた説明変数との組を複数含むもので、データ格納部２０８に格納されている。
【００４９】
データ格納部２０８は、これらの組をテーブルとして格納することができる。観測された被説明変数は、具体的には、実際に電力計を使用して計測された消費電力である。また、データ格納部２０８は、後述する関数や推定式等もデータとして格納しており、必要に応じて読み出され、使用される。
【００５０】
学習データは、説明変数とそれに対応する観測された被説明変数との組を複数含み、説明変数が１以上の要素の集合により与えられることから、要素検索部２０２は、入力データの各要素につき、学習データの複数の集合内から離散変数が一致する要素を検索する。離散変数が鉄という種類を表す値であれば、鉄という種類を表す値を離散変数としてもつ要素を、学習データの複数の集合の中から探し出す。なお、要素は、離散変数と連続変数の組み合わせからなるため、これらの組のデータとして抽出される。
【００５１】
関数値計算部２０４は、入力データの要素と検索された１以上の要素の各々について、連続変数から得られ被説明変数におおよそ比例するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算する。そして、関数値計算部２０４は、計算した各関数値を用い、その和を計算する。関数値計算部２０４は、この計算を入力データのすべての要素につき行う。
【００５２】
この関数は、スケール変数により重み付けられており、一例では、スケール変数により重み付けられたカーネル関数とされる。入力データの要素と検索された１つの要素との間で１つの関数値が計算されるため、１以上の要素との間では、１以上の関数値が計算される。そして、入力データの各要素につき１以上の関数値の和が計算されるため、入力データの要素の数だけ、その和が求められることになる。
【００５３】
こうして計算された和は、予測値計算部２０６へ送られる。予測値計算部２０６は、被説明変数を予測するための推定式にこれらの関数値の和を適用し、各要素につき被説明変数の予測値を計算する。なお、実際に使用することができる関数や推定式の詳細については後述する。
【００５４】
図３に示すフローチャートを参照して、被説明変数の予測処理について説明する。予測したい被説明変数に対する説明変数が入力されたことを受けてこの処理を、ステップ３００から開始する。ステップ３０５では、データ入力部２００が入力された説明変数を入力データとして受け付ける。データ入力部２００がその入力データを要素検索部２０２へ渡すと、ステップ３１０において、要素検索部２０２が、入力データに含まれる集合内の１つの要素を選択し、ステップ３１５で、その選択した要素と離散変数が一致する要素を学習データの複数の集合内から検索する。
【００５５】
ステップ３２０では、入力データに含まれる集合内のすべての要素を選択したかを判定し、まだ選択されていない要素がある場合、ステップ３１０へ戻り、まだ選択されていない次の要素を選択する。これに対し、すべての要素を選択したと判断した場合、ステップ３２５へ進み、関数値計算部２０４が、入力データの要素と検索された１以上の要素の各々について、連続変数から得られ被説明変数におおよそ比例するスカラーを表すスケール変数により重み付けされた２つの集合間の類似度を与える関数を適用して各関数値を計算する。そして、ステップ３３０で、各関数値の和を計算する。
【００５６】
ステップ３３５において、入力データのすべての要素につき、関数値の和を計算したかを判断する。まだ計算していない場合、ステップ３２５へ戻り、次の要素につき、関数値の和を計算する。これに対し、すべて計算した場合は、ステップ３４０へ進み、予測値計算部２０６が、被説明変数を予測するための推定式を適用して、各要素につき被説明変数の予測値を計算する。この計算が終了したところで、ステップ３４５でこの処理を終了する。
【００５７】
このように、離散変数が一致する要素同士についてのみ、被説明変数におおよそ比例するスカラーを表すスケール変数により重み付けされた関数を適用して各関数値を計算し、その和を入力データのすべての要素につき求め、推定式を適用して各要素につき被説明変数の予測値を計算することで、被説明変数が部分的にしか観測されていなくても、説明変数が離散変数を含む場合であっても、学習データにはない要素の組み合わせに対して被説明変数の予測値を求めることができる。
【００５８】
また、個々の要素と被説明変数との厳密な対応がとれていなくても、学習データを用いて個々の要素につき被説明変数の予測値を求めることができる。さらに、被説明変数のオーダーが異なる要素を含む場合であっても、小さな誤差で被説明変数の値を予測することができる。
【００５９】
説明変数から被説明変数を予測するための手法として、回帰手法を用いることができるが、この回帰手法として、広範なノンパラメトリック回帰または条件付き密度推定手法が適用可能である。その一例として、正規過程回帰(Gaussian Process Regression)を用いることができる。正規過程（ガウス過程）は、確率変数の集合であって、どの任意の個数の確率変数をとっても、その結合分布がガウス分布に従うものをいう。この正規過程回帰の回帰式を、上記の推定式として用いることができる。なお、この正規過程回帰を利用した具体的な算出方法については後述する。
【００６０】
その他の例としては、回帰曲線としてＲＢＦカーネルを用いたナダラヤ・ワトソン・カーネル回帰(Nadaraya-Watson Kernel Regression)、関連ベクトル回帰(Relevance Vector Regression)、サポート・ベクトル回帰(Support Vector Regression)、カルバック・ライブラー重要度推定法(Kullback-Leibler Importance Estimation Procedure)、最小二乗条件付き密度推定法(Least-Square Conditional Density Estimation)等が挙げられる。
【００６１】
これらの回帰手法は、カーネル行列およびカーネル・ベクトルの計算を含むもので、その手法については公知であるので、詳細な説明は省略する。これらの手法は、一例であるので、カーネル行列およびカーネル・ベクトルの計算を含むものであれば、その他の回帰手法を用いることも可能である。
【００６２】
正規過程回帰で被説明変数の予測を行う際、上記の関数としてカーネル関数が用いられる。カーネル関数は、ハイパー・パラメータと呼ばれるパラメータを含むが、事前に学習データを用いてこのパラメータを最適化する必要がある。このため、システム１００は、図４に示すように、上記のデータ入力部２００、要素検索部２０２、関数値計算部２０４、予測値計算部２０６、データ格納部２０８のほか、このハイパー・パラメータを最適化するための機能部をさらに備えることができる。
【００６３】
すなわち、システム１００は、その機能部として、ハイパー・パラメータを最適化するパラメータ最適化部２１０と、その最適化されたハイパー・パラメータをカーネル関数に適用してカーネル行列を導出するカーネル行列導出部２１２と、その導出されたカーネル行列を用いて上記の推定式に設定するためのパラメータを計算するパラメータ計算部２１４とを備えることができる。
【００６４】
これらのパラメータ最適化部２１０、カーネル行列計算部２１２、パラメータ計算部２１４が行う処理を含む被説明変数の予測処理について、図５に示すフローチャートを参照して、以下に説明する。図５では、これらが行う処理が終了した後、図３に示した処理と同様の予測処理を実行している。しかしながら、入力データの受け付けた後、パラメータ最適化部２１０等が行う処理を実行し、その後、要素を検索する以降の処理を実行することも可能である。以下の処理では、周辺尤度最大化法を用いて最適化する場合について説明する。
【００６５】
ここで、周辺尤度は、回帰式と学習データの分布の尤もらしさを与える量で、周辺尤度最大化法は、この周辺尤度を最大化するハイパー・パラメータを求めることにより、そのパラメータの最尤推定値を算出する方法である。したがって、この算出された最尤推定値が最適化されたハイパー・パラメータである。
【００６６】
図５に示す処理は、ステップ５００から開始し、ステップ５０５で、パラメータ最適化部２１０が、周辺尤度の初期値を設定し、ステップ５１０で、ハイパー・パラメータを選択する。初期値は、予め設定された値とされ、ハイパー・パラメータは、予め複数の値が設定される。このため、ハイパー・パラメータは、複数の値の中から１つが選択される。ハイパー・パラメータの選択は、設定された値が配列する順に１つずつ選択することにより行うことができる。
【００６７】
ステップ５１５で、パラメータ最適化部２１０は、カーネル行列導出部２１２に指示し、カーネル行列導出部２１２が、上記と同様のスケール変数で重み付けされたカーネル関数を用い、離散変数が一致する要素同士について得られた各関数値の和を、すべての要素につき計算することによりカーネル行列を導出する。上記では、入力データと学習データの離散変数が一致する要素同士について関数値を計算しているが、ここでは、学習データ内の離散変数が一致する要素同士について関数値を計算し、その同じ離散変数をもつ要素につき関数値の和を計算して、カーネル行列を求める。このとき、カーネル行列導出部２１２は、学習データに含まれる各集合につき、各集合に含まれる複数のスケール変数を用いて対角要素を計算して対角行列も導出する。
【００６８】
ステップ５２０では、カーネル行列導出部２１２が、続いて、計算されたカーネル行列と対角行列とを用い、周辺尤度を計算する。周辺尤度を計算するための周辺尤度関数が、ハイパー・パラメータとカーネル行列と対角行列とを含む関数で与えられ、周辺尤度は、この関数に上記で選択したハイパー・パラメータの値、導出したカーネル行列および対角行列を与えることにより計算される。
【００６９】
パラメータ最適化部２１０は、ステップ５２５で、選択すべきハイパー・パラメータがまだあるかどうかを判定する。まだある場合、ステップ５１０へ戻り、次のハイパー・パラメータを選択する。これに対し、すべてのハイパー・パラメータを選択したと判定した場合、ステップ５３０へ進み、パラメータ最適化部２１０は、計算された周辺尤度が最大になるときのハイパー・パラメータを最適化されたハイパー・パラメータとして決定する。
【００７０】
パラメータ最適化部２１０は、最適化されたハイパー・パラメータをカーネル行列導出部２１２へ渡し、ステップ５３５で、カーネル行列導出部２１２は、最適化されたカーネル行列を導出する。このとき、カーネル行列導出部２１２は、最適化された対角行列も導出する。ステップ５４０で、パラメータ計算部２１４が、導出されたその最適化されたカーネル行列と対角行列とを用い、上記の推定式に設定するためのパラメータを計算する。このパラメータは、その推定式に設定され、被説明変数の予測値の計算に使用される。
【００７１】
ステップ５４５〜ステップ５８０は、図３に示すステップ３０５〜ステップ３４０と同様である。ステップ５８０の予測値を計算したところで、ステップ５８５へ進み、この処理を終了する。
【００７２】
これまで、本発明の方法およびその方法を実施するためのシステムについて説明してきたが、実際にどのような関数や推定式を用い、各値を計算するかについて以下詳細に説明する。その際、複数の原材料を溶融、成形等して製品を製造するときに消費する電力を予測するものとして説明するが、本発明は、これに限られるものではなく、例えば、説明変数を家族の人数、年齢や年収等とし、被説明変数を数値で表される住宅の購買力等とし、この購買力等を予測すること等にも適用することができるものである。
【００７３】
実際の消費電力の計測は、例えば３０分毎といったユニット毎に行われる。ここでは３０分毎としているが、１時間毎や２時間毎等であってもよいし、圧延工程等の工程毎であってもよい。各ユニットでは、処理される原材料の種類が異なり、原材料の数も異なる。また、同じ原材料が複数使用される場合もあり、その体積も異なる。これらの種類や数等のすべての組み合わせにつき、いくつかの体積が異なるものの観測された消費電力をその組み合わせとともに学習データとしてもっていれば、多少の大きさの相違は、その学習データから予測することができる。しかしながら、現実にはすべての組み合わせにつき学習データをもつことは難しいし、メモリの記憶容量を考慮すると妥当ではない。そこで、以下のようにして、各ユニットにおける消費電力の予測を行う。
【００７４】
まず、定義として、ユニットがｎ個あり、消費電力の合計値が観測されるユニットをｉとすると、式１のように表すことができる。ユニットｉでは、１以上の原材料が処理されるので、各原材料につき消費される電力の合計値のみが観測されることになる。なお、式１は、ユニットｉがユニット１からユニットｎの中のいずれかであることを表す。
【００７５】
【数１】
0005988419.tif 000002
【００７６】
ユニットｉに含まれる原材料の数をｍ［ｉ］とすると、ユニットｉに含まれるｊ番目の原材料に関する説明変数のうち連続変数の連続量をまとめたベクトルｘｉｊは、式２のように表すことができる。式２中、ｄは連続値入力の次元を表し、Ｒｄは、消費電力の合計が観測されるすべてのユニットのすべての原材料に関する説明変数のうち連続変数の連続量をまとめたｄ次元ベクトルを表す。
【００７７】
【数２】
0005988419.tif 000003
【００７８】
原材料は、例えば、鉄、炭素、ニッケル、クロム等であり、この原材料に関する説明変数は、被説明変数である消費電力を説明する変数であって、具体的には、弾性係数等の物性、体積、質量、材料に加える圧力等である。説明変数には、原材料の種類や数も含まれるが、これらは、これ以上の単位に分離することができない離散変数である。ユニットｉに含まれる原材料の種類の数をＭとすると、ユニットｉに含まれるｊ番目の原材料に関する離散変数ｚｉｊは、式３のように表すことができる。式３は、離散変数ｚｉｊが、１からＭの中のいずれかの値をとることを表している。
【００７９】
【数３】
0005988419.tif 000004
【００８０】
また、説明変数には、体積や質量等が含まれるが、これらを、またはこれらの変数をパラメータに含む計算式の値等を、消費電力に対応するスカラー、より具体的には消費電力におおよそ比例するスカラーを表すスケール変数として用いる。ユニットｉに含まれるｊ番目の原材料に関するスケール変数ｓｉｊは、式４のように表すことができる。式４中、Ｒ＋は、消費電力の合計が観測されるすべてのユニットのすべての原材料に関するスケール変数を表す。
【００８１】
【数４】
0005988419.tif 000005
【００８２】
ユニットｉに含まれるｊ番目の原材料の加工等に要する消費電力ｙｉｊは観測されないが、ユニットｉが要した合計消費電力ｙｉは観測することができ、ｙ１からｙｎを成分に含むｎ次元ベクトルｙは、式５のように表すことができる。式５中、Ｒｎは、ｎ次元ベクトルの集合を表し、記号Ｔは、行列またはベクトルの転置を表す。すなわち、ｙは、ｎ次元の列ベクトルである。なお、転置行列とは、行列の要素（ａ，ｂ）と要素（ｂ，ａ）を入れ替えた、対角線で成分を折り返した行列である。
【００８３】
【数５】
0005988419.tif 000006
【００８４】
学習データは、式６に示すように、観測された合計消費電力ベクトルｙと、すべての連続説明変数ｘｉｊ、離散変数ｚｉｊ、スケール変数ｓｉｊの集合のみとされる。これらを基に、式７に示す回帰式における関数ｆを推定するか、式８に示す条件付き密度関数ｇの推定を行う。式７中、εは平均０のノイズである。式８は、パラメータΘが与えられたとき、説明変数Ｘに対する被説明変数Ｙの確率分布に対応する確率密度関数を求める式である。推定された関数ｆまたはｇを用いることで、ユニットｉに含まれるｊ番目の原材料に関する消費電力ｙｉｊの値を推定することができる。
【００８５】
【数６】
0005988419.tif 000007
【００８６】
【数７】
0005988419.tif 000008
【００８７】
【数８】
0005988419.tif 000009
【００８８】
以降、本発明で用いられる提案カーネル関数の数学的導出について補足する。ここでは、本手法を回帰分析に適用する場合、すなわち式７を前提とした場合の計算方法についてのみ説明し、式８を用いる条件付き密度推定法については説明を省略する。上記式７の推定は、連続説明変数ｘおよび離散説明変数ｚを非線形変換した高次元特徴ベクトルψ（ｘ，ｚ）を定義すると、ψ（ｘ，ｚ）を基底とした式９に示すような式のパラメータを最適化する線形回帰問題に帰着される。この式９中、εは平均０のノイズで、ｗφは、上述したパラメータの一例である回帰係数を並べた高次元ベクトルである。本発明では、式９に示すように、写像関数の項にも、ノイズの項にも、スケール変数ｓを乗算し、重み付けする。
【００８９】
【数９】
0005988419.tif 000010
【００９０】
特定のユニットｉについて式９を適用し、かつユニット内のｍ［ｉ］個の材料について式９の和をとると、下記式１０が成立する。
【００９１】
【数１０】
0005988419.tif 000011
【００９２】
上記式１０を前提とすれば、少なくとも漸近的には真の回帰係数に収束する回帰係数計算方法が考案可能である。その方法においては、ユニット内の合計消費電力ベクトルｙの和と、特徴ベクトルψ（ｘ，ｚ）の和との関係を、ｎユニット分のデータと最小二乗法を用いて回帰する方法で、サンプル数ｎが十分に大きいときに計算された回帰係数は、真の回帰係数に収束する。
【００９３】
一般的な非線形回帰分析では、まず、高次元特徴ベクトルψ（ｘ，ｚ）を自分で設計し、その後、回帰係数ベクトルｗφをデータから推定する。しかしながら、本発明で使用されるカーネル法による回帰分析では、高次元特徴ベクトルψ（ｘ，ｚ）を与える代わりに、特徴ベクトル同士の内積であるカーネル関数を設計する。そして、回帰係数ベクトルｗφを推定する代わりに、回帰係数ベクトルｗφと特徴ベクトルψ（ｘ，ｚ）の内積であるスカラーを、カーネル関数の値だけを用いて計算する。下記式１１の左辺は、ユニットｉとユニットｊに関してスケール補正を行った特徴ベクトル同士の内積を表す。下記式１１の右辺は、その内積の値を直接カーネル関数として定義することを意味する。
【００９４】
【数１１】
0005988419.tif 000012
【００９５】
本発明で用いられる独自カーネル関数の導出について説明する。Ｍ種類の原材料に対応し、Ｍ種類の高次元特徴ベクトルψ１（ｘ）、…、ψＭ（ｘ）を考える。これらの高次元特徴ベクトルにスケール変数ｓを乗算した上で横に並べると、さらなる高次元特徴ベクトルを計算する写像関数ψを、下記式１２のように定義できる。Ｉ（ｚ＝ｋ）はｚ＝ｋのとき１をとり、それ以外は０の値をとる関数であり、ｋは１からＭまでの整数である。
【００９６】
【数１２】
0005988419.tif 000013
【００９７】
一般に、連続説明変数ｘの値がｘ１であるときの材料ｋに関連する高次元ベクトルψｋ（ｘ１）と、連続説明変数xの値がｘ２であるときの材料ｋに関連する高次元ベクトルψｋ（ｘ２）との内積をカーネル関数κｋ(ｘ１，ｘ２)とする。高次元ベクトルψｋ（ｘ）を設計するのは簡単ではないが、カーネル関数κｋ(ｘ１，ｘ２)には既存技術である線形カーネル、多項式カーネル、ＲＢＦカーネルなどを用いることができるため、技術者がカーネル関数κｋ(ｘ１，ｘ２)を指定することは比較的容易である。なお、原材料の種類、その物性、体積等と合計消費電力との関係は、線形モデルとして定義することができないことから、非線形モデルで定義される。このため、カーネル関数としてはＲＢＦカーネル等の非線形のカーネル関数の使用が適切である。ＲＢＦカーネルは非線形カーネル関数の一つであり、その計算式は、例えば式１３のように与えられる。αｋ、γｋはそれぞれハイパー・パラメータであり周辺尤度最大化法などを用いて別途最適化する必要がある。
【００９８】
【数１３】
0005988419.tif 000014
【００９９】
カーネル関数κｋ（ｘ１，ｘ２）を用いると、式１２による超高次元ベクトルをユニットｉとユニットｊについて計算したときの両者の内積が下記式１４のように計算できる。この式１４は、消費電力が観測されているユニットｉとユニットｊとの間の類似度を与えるカーネル関数の定義である。
【０１００】
【数１４】
0005988419.tif 000015
【０１０１】
ここで、ｍ［ｉ］およびｍ［ｊ］は、消費電力が観測されるユニットｉおよびユニットｊに含まれる原材料の数、Ｍは、原材料の種類の数、ｓは、原材料の体積もしくは質量またはその他の変数とそれらの変数を複数含む数式の計算結果で被説明変数におおよそ比例する値、ｚは、原材料の種類を表す値、ｘは、原材料に関する連続量をまとめたベクトル、Ｉは、ユニットｉとユニットｊとの間で原材料が同じものについてのみ１を与え、異なるものについては０を与える関数である。
【０１０２】
以上のことから、式１４で表されるカーネル関数と、実際のユニットが要した合計電力消費ベクトルｙがあれば、上記の正規過程回帰やNadaraya-Watson Kernel Regression等のような様々なカーネル回帰手法を用いて消費電力の予測が可能となる。
【０１０３】
具体的な実装の一例として、正規過程回帰を用いた場合の計算手法について詳細に説明する。なお、この手法は一例であるので、これ以外の上述した各手法を用いて計算することは当然にして可能であり、その他の手法も、本発明の作用・効果を奏する限り採用することができるものである。
【０１０４】
正規過程回帰を用いる場合、最初に、カーネルのハイパー・パラメータを、周辺尤度最大化法を用いて最適化する。ハイパー・パラメータは、学習データの内容やその信頼度を表すパラメータで、カーネル関数の広がりの大きさを表すバンド幅γと、ノイズσ２とを含む。
【０１０５】
最適化するにあたって、Ｌｍａｘに初期値として−∞を代入し、ハイパー・パラメータγ、σ２を予め設定された値の中から選択する。選択したハイパー・パラメータγ、σ２と、学習データに含まれる複数の説明変数および当該複数の説明変数から実際に観測された複数の被説明変数とを用い、下記式１５〜１７によりＬ（σ２，γ）を計算する。すなわち、学習データに含まれる原材料の種類を表す値、原材料の数、連続量をまとめたベクトル、体積もしくは質量またはその他の変数とそれらの変数を複数含む数式の計算結果で被説明変数におおよそ比例する値、観測された合計消費電力ベクトルを用いて計算を行う。
【０１０６】
なお、式１５は、式１３と式１４を用いたカーネル関数を変形することにより得られる式で、スケール変数により重み付けしたものであり、離散変数が一致する要素同士、すなわち原材料が同じもの同士についてのみ計算を行うように構成されたものである。この式１５により得られる値κγ，ｉｊは、ｎ×ｎ行列Ｋγ内の行列要素となる。なお、ｎ×ｎ行列は、ｎ行ｎ列の行列を表す。
【０１０７】
式１６は、正規過程回帰を用いる場合に使用されるｎ×ｎ対角行列Ｒ＝ｄｉａｇ（ｒ１，…，ｒｎ）の各成分である対角要素を求める式である。このようにして得られたｎ×ｎ行列Ｋγおよびｎ×ｎ対角行列Ｒは、選択されたσ２および行列により与えた被説明変数である合計消費電力ベクトルｙ、合計消費電力ベクトルｙの転置ベクトルｙＴとともに式１７に代入され、Ｌ（σ２，γ）が算出される。計算されたＬ（σ２，γ）は、初期値として代入されたＬｍａｘと比較され、Ｌｍａｘより大きい場合、その計算されたＬをＬｍａｘとする。これを繰り返し、最も大きいＬｍａｘを求め、そのＬｍａｘを計算する際に選択されたγ、σ２を、最適化されたハイパー・パラメータγ＊、σ２＊とする。
【０１０８】
【数１５】
0005988419.tif 000016
【０１０９】
【数１６】
0005988419.tif 000017
【０１１０】
【数１７】
0005988419.tif 000018
【０１１１】
なお、同一のγの値に対しては、上記式１７中の行列Ｋγや逆行列（Ｋγ＋σ２Ｒ２）−１を何度も繰り返し計算する必要はない。それは、σ２の値の最適化を行うにあたって、固有値分解を利用して評価することができるからである。固有値分解により新たに計算された行列を式１８のように記述する。
【０１１２】
【数１８】
0005988419.tif 000019
【０１１３】
式１８中、Ｕγは、ユニタリ行列である。このＵγは、その転置行列ＵγＴとの内積が単位行列Ｉになるものである。また、λγは、固有値である。例えば、ベクトルｔを式１９に示すような対角行列Ｒおよび合計消費電力ベクトルｙの関数とし、ベクトルｖγを式２０に示すようなユニタリ行列およびベクトルｔの関数とし、対角行列Ｍｒ，σ２を式２１に示すような固有値およびσ２の関数として設定する。すると、式１８は、式２２のように置き換えることができる。
【０１１４】
【数１９】
0005988419.tif 000020
【０１１５】
【数２０】
0005988419.tif 000021
【０１１６】
【数２１】
0005988419.tif 000022
【０１１７】
【数２２】
0005988419.tif 000023
【０１１８】
式２２では、式１６から得られるｒｉ、式１９から得られるｔおよびｔの転置行列ｔＴ、式２０から得られるベクトルｖγおよびベクトルｖγの転置ベクトルｖγＴ、式２１から得られる対角行列Ｍｒ，σ２を用いるのみで、簡単にＬ（σ２，γ）の値を求めることができる。
【０１１９】
次に、最適化されたハイパー・パラメータγ＊およびσ２＊を用いて、次の式２３により逆行列Ｊを計算し、この逆行列Ｊと合計消費電力ベクトルｙとを用いて式２４により、上記でいうパラメータであるベクトルｗを計算する。式２３中、ｎ×ｎ行列Ｋγ＊は、最適化されたハイパー・パラメータγ＊を用いて式１５により得られたκγ＊，ｉｊを要素とするｎ×ｎ行列である。この式２３は、ユニタリ行列Ｕγ＊および対角行列Ｍγ＊，σ２＊を用いて、式２３中の右式のように置き換えることができる。
【０１２０】
【数２３】
0005988419.tif 000024
【０１２１】
【数２４】
0005988419.tif 000025
【０１２２】
ベクトルｗを求めた後、実際に予測したいユニットの消費電力を求める。このユニットの特性が、インデックス＃を用いて（ｘ♯１，ｚ＃１，ｓ＃１），…，（ｘ＃ｍ＃，ｚ＃ｍ＃，ｓ＃ｍ＃）のように与えられる場合、次の式２５および式２６を用いて、ベクトルｋ＃およびスケールｒ＃を計算する。式２５中、ｍ＃は、予測したいユニットの原材料の数であり、ｘ＃ｔは、そのユニットに含まれるｔ番目の原材料に関する説明変数のうち連続変数の連続値をまとめたベクトルである。ｚ＃ｔは、そのユニットに含まれるｔ番目の原材料に関する離散変数（原材料の種類）で、ｓ＃ｔは、そのユニットに含まれるｔ番目の原材料に関するスケール変数（体積もしくは質量またはその他の変数とそれらの変数を複数含む数式の計算結果で被説明変数におおよそ比例する値）である。
【０１２３】
【数２５】
0005988419.tif 000026
【０１２４】
【数２６】
0005988419.tif 000027
【０１２５】
式２５により計算されたκ＃ｊは、ｎ×１のベクトルｋ＃のｊ番目のベクトル要素である。このようにして計算されたベクトルｋ＃および対角要素ｒ＃を用い、次の式２７および式２８により、予測したいユニットの合計消費電力の平均μ＃と、その分散ｖ＃を計算する。
【０１２６】
【数２７】
0005988419.tif 000028
【０１２７】
【数２８】
0005988419.tif 000029
【０１２８】
図６を参照して、上記のことをわかりやすく説明すると、学習データは、複数のユニットに含まれる原材料の種類、物性、圧力、合計消費電力等のデータを含む。複数のユニットのうちの１つのユニットであるユニットｉは、図６（ａ）に示すように、丸、三角形、四角形で表される複数の種類の原材料を含む。また、このユニットｉには、同じ形の丸で表される同じ原材料も含まれる。また、図６（ａ）には、合計消費電力にオーダーとしておおよそ比例するスカラーを表す原材料の体積が、面積で表現されている。
【０１２９】
図６（ａ）には、ユニットｊも示されており、ユニットｊも、丸、三角形、四角形で表される複数の種類の原材料が含まれている。そして、ユニットｊも、同じ形で面積が異なるものが含まれている。これらのユニットｉとユニットｊとの間のカーネル行列Ｋγ，ｉｊを計算するには、上記の式１５を用いる。このとき、矢線に示すように形が同じ丸同士、同じ三角形同士、同じ四角形同士についてだけ、個々の図形同士の内積を計算し、それらをすべて足し合わせたものをユニットｉとユニットｊとの間の内積とする。この内積は、図６（ｂ）に示すｎ×ｎカーネル行列のｉ行ｊ列の行列要素となる。この図６（ｂ）は、わかりやすくするために、縦が行を示し、横が列を示すテーブルとしてカーネル行列を表現したものである。
【０１３０】
このようにして各行列要素につき内積が計算されると、ｎ×ｎカーネル行列が求められる。このカーネル行列を用い、上記式１７〜式２２を適用して最適化されたハイパー・パラメータを計算し、その最適化されたハイパー・パラメータを用い、上記式２３および式２４を適用して推定式に設定するためのパラメータとしてベクトルｗを計算する。
【０１３１】
その後、合計消費電力を予測したいユニット（テスト・ユニット）の特性（テスト・データ）が、図６（ａ）のユニットｉに示すようなものとして与えられた場合、上記と同様にして、テスト・ユニットと、学習データ内の例えばユニットｊとの間の内積を計算する。この場合、テスト・ユニットと、学習データ内の各ユニットとの間の内積のみとなるため、上記のようなｎ×ｎカーネル行列ではなく、１×ｎのベクトルｋ＃として得られる。
【０１３２】
得られたベクトルｋ＃は、上記式２７および式２８に適用され、テスト・ユニットの各原材料についての消費電力が、平均μ＃および分散ｖ＃として計算される。
【０１３３】
ここで、電力消費の物理シミュレータを用い、ユニット数が３００または１０００のユニットに対し、９０種類の原材料から、各ユニットに１０個の原材料を配置し、その合計の消費電力のみを学習データとして用い、個々の消費電力の予測を行った結果を示す。
【０１３４】
２４０または８００のユニットを学習データとし、残りの６０または２００のユニットをテスト・データとしたものを５種類作成し、実際に計測した消費電力と、本発明の方法の一例として、正規過程回帰を利用した方法（以下、本方法という。）により予測した消費電力との誤差を評価した。
【０１３５】
周辺尤度最大化法を用い、学習データのみでハイパー・パラメータγ、σ２を最適化した。その際、γは｛１０−１０，１０−９．５，１０−９，…，１０−０．５，１｝の中から選択し、σ２は｛１０−２，１０−１．９９，１０−１．９８，…，１０−０．０１，１｝の中から選択した。ただし、この選択は、入力と出力の絶対スケールを正規化した後に行った。
【０１３６】
本方法との比較のために従来法として、原材料の種類別の特徴量を並べたベクトルに対する単一のＲＢＦカーネルによる正規過程回帰を使用した。ただし、この単一のＲＢＦカーネルによる正規過程回帰は、ユニット内に同一種類の原材料が複数存在する場合、使用することができない。しかしながら、９０種類という材料から選択する場合、同一種類の材料が現れることは稀であることから、同一種類のものが存在しないものと仮定して、このＲＢＦカーネルによる正規過程回帰を使用し、予測を行った。
【０１３７】
計算された予測の分散ｖ＃はデータ毎に違うことから、誤差評価の結果が評価法により異なった結果が得られた。図７には、３種類の評価法で行った結果を示す。３つの評価法は、平均対数尤度(Avg. Log Likelihood)、平均二乗誤差(Mean Square Error)、平均絶対偏差(Median Absolute Deviation)である。図７（ａ）は、ユニット数３００の場合、図７（ｂ）は、ユニット数１０００の場合を示す。この中で、平均対数尤度が、最も重要な指標である。性能は、平均対数尤度が高いほど良く、平均二乗誤差および平均絶対偏差が低いほど良いものである。
【０１３８】
図７（ａ）および（ｂ）を参照すると、平均対数尤度が高いのは本方法であり、また、平均二乗誤差および平均絶対偏差が低いのも本方法である。したがって、いずれの場合も本方法は、従来法より高性能であることが見出された。このシミュレーションでは、同じ種類の原材料がユニット内に含まれていないにも関わらず、従来法より高性能であることを示すことができた。本方法は、同じ種類の原材料を含む場合にも適用可能であることから、従来法より有用であることがわかる。
【０１３９】
図８および図９は、ユニット内の原材料１つ１つに対する消費電力の予測結果を示す。図８は、実軸で表した場合の、予測電力と、実際に計測した電力との関係を示したグラフである。図８（ａ）が従来法の結果を示し、図８（ｂ）が本方法の結果を示す。従来法の結果は、傾きが４５°の直線上にデータが集まっておらず、電力が大きくになるにつれてデータがその直線から分散している。これに対し、本方法の結果は、その直線上にほぼ集まっており、予測電力が実際に計測した電力とほぼ同じであり、予測結果が良く一致していることが示された。
【０１４０】
平均対数尤度が重要な指標であることについてはすでに説明したが、図９は、対数軸で表した場合の、予測電力と、実際に計測した電力との関係を示したグラフである。図９（ａ）が従来法の結果を示し、図９（ｂ）が本方法の結果を示す。従来法の結果は、傾きが４５°の直線上に高い電力のみが一致しているのみで、低い電力についてはほとんど予測電力が実際に計測した電力を表していないことがわかる。これは、ユニット内の材料ごとの消費電力スケールの違いに対応できておらず、大きな消費電力のものに引っ張られていると考えられるからである。
【０１４１】
これに対し、本方法は、低い電力についても多少分散しているが、ほぼ精度良く予測電力が実際に計測した電力を表していることがわかる。したがって、本方法は、多くの場合において、正しいスケールで消費電力を予測することができていることがわかる。
【０１４２】
実際に重要であるのは、テスト・データ内の各ユニットの合計消費電力量であるが、このようにユニット内の個々の原材料につき正確な消費電力量を予測することができることから、その合計消費電力量についても正確に予測することが可能である。
【０１４３】
図１０および図１１は、ユニット内のすべての原材料に対する合計消費電力量の予測結果を示す。図１０は、実軸で表した場合の、予測電力と、実際に計測した電力との関係を示したグラフである。図１０（ａ）が従来法の結果を示し、図１０（ｂ）が本方法の結果を示す。従来法の結果は、傾きが４５°の直線から大きく外れており、予測電力が実際に計測した電力より大きい値となっている。これに対し、本方法の結果は、その直線上にほぼ集まっており、予測電力が実際に計測した電力とほぼ同じであり、予測結果が良く一致していることを示した。
【０１４４】
図１１は、対数軸で表した場合の、予測電力と、実際に計測した電力との関係を示したグラフである。図１１（ａ）が従来法の結果を示し、図１１（ｂ）が本方法の結果を示す。従来法の結果は、傾きが４５°の直線上に高い電力のみが一致しているのみで、低い電力についてはほとんど予測電力が実際に計測した電力を表していないことがわかる。これは、ユニット内の材料ごとの消費電力スケールの違いに対応できておらず、大きな消費電力のものに引っ張られていると考えられるからである。
【０１４５】
これに対し、本方法は、全体的にほぼ精度良く予測電力が実際に計測した電力を表していることがわかる。ユニット内の消費電力が小さい原材料に対して、その消費電力の過小評価が起こったとしても、合計予測電力量には大きな誤差を与えない。このため、本方法は、極めて正確に消費電力を予測することができることがわかる。
【０１４６】
以上のことから、本発明の方法を採用することで、被説明変数が部分的にしか観測されない場合においても、予測したい被説明変数を正確に予測することが可能となる。また、説明変数の一部が離散変数であっても、既存の回帰手法を利用して効率的に予測を行うことができる。さらに、集合内の個々の要素について被説明変数を正確に予測することができるため、誤差分布のスケール設定を行うことが可能である。
【０１４７】
これまで、本発明のデータの予測方法、その方法を実行するためのシステムについて、図面を参照して詳細に説明してきたが、他の実施形態や、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【０１４８】
したがって、本発明の予測方法を実行するためのコンピュータ可読なプログラムとして提供することもでき、このプログラムは、フレキシブル・ディスク、CD-ROM、DVD-ROM、SDカード、HDD等の記録媒体に格納して提供することができる。また、このプログラムは、インターネット等のネットワークに接続されたサーバ等に格納し、ダウンロード要求に応じて、ネットワークを介して提供することも可能である。
【符号の説明】
【０１４９】
１００…システム、１０２…ＣＰＵ、１０４…ＲＡＭ、１０６…ＲＯＭ、１０８…ＨＤＤ、１１０…入力装置、１１２…表示装置、１１４…システム・バス、２００…データ入力部、２０２…要素検索部、２０４…関数値計算部、２０６…予測値計算部、２０８…データ格納部、２１０…パラメータ最適化部、２１２…カーネル行列導出部、２１４…パラメータ計算部
【図１】
0005988419.tif 000033
【図２】
0005988419.tif 000034
【図３】
0005988419.tif 000035
【図４】
0005988419.tif 000036
【図５】
0005988419.tif 000037
【図６】
0005988419.tif 000038
【図７】
0005988419.tif 000039
【図８】
0005988419.tif 000040
【図９】
0005988419.tif 000041
【図１０】
0005988419.tif 000042
【図１１】
0005988419.tif 000043