(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024011976
(43)【公開日】2024-01-25
(54)【発明の名称】情報処理装置、情報処理方法、及び情報処理プログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20240118BHJP
G06F 17/16 20060101ALI20240118BHJP
【FI】
G06N20/00
G06F17/16 Q
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2022114352
(22)【出願日】2022-07-15
(71)【出願人】
【識別番号】000006666
【氏名又は名称】アズビル株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】中澤 友哉
(72)【発明者】
【氏名】平尾 耕一郎
(72)【発明者】
【氏名】青田 直之
【テーマコード(参考)】
5B056
【Fターム(参考)】
5B056BB39
5B056BB81
(57)【要約】
【課題】学習対象データに基づいたモデル化にガウス過程回帰を用いる際に、学習対象データのスケールが不明な場合でも、スケールを考慮せず事前知識に対応した平均関数を事前に設計する。
【解決手段】情報処理装置100は、学習対象データのスケール変換を行うために用いるスケール変換パラメータを算出し、スケール変換パラメータとスケール変換関数を用いて学習対象データのスケールを、所定の条件に基づいて変換し、平均関数及び変換部によってスケール変換された学習対象データを用いて学習を行い、モデルを導出する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
学習対象データのスケール変換を行うために用いるスケール変換パラメータを、算出する第1算出部と、
前記スケール変換パラメータとスケール変換関数を用いて前記学習対象データのスケールを、所定の条件に基づいて変換する変換部と、
平均関数及び前記変換部によってスケール変換された前記学習対象データを用いて学習を行い、モデルを導出する学習部と、
を有することを特徴とする情報処理装置。
【請求項2】
平均関数のスケール設定を行うために用いるスケール変換パラメータを、算出する第1算出部と、
前記スケール変換パラメータとスケール変換関数を用いて前記平均関数のスケールを、所定の条件に基づいて設定する設定部と、
学習対象データ及び前記設定部によってスケール設定された前記平均関数を用いて学習を行い、モデルを導出する学習部と、
を有することを特徴とする情報処理装置。
【請求項3】
前記変換部は、前記スケール変換パラメータと前記スケール変換関数を用いて、前記学習対象データを前記平均関数と同水準のスケール又は前記学習対象データを任意のスケールかつ前記平均関数と同水準のスケールのいずれか1つのスケールに、所定の条件に基づいて変換する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記設定部は、前記スケール変換パラメータと前記スケール変換関数を用いて、前記平均関数のスケールを前記学習対象データと同水準のスケール又は前記平均関数を任意のスケールかつ前記学習対象データと同水準のスケールのいずれか1つのスケールに、所定の条件に基づいて設定する、
ことを特徴とする請求項2に記載の情報処理装置。
【請求項5】
前記第1算出部は、正規化もしくは標準化の両方もしくはいずれか一方を用いて、前記スケール変換パラメータを算出する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項6】
前記学習対象データと前記平均関数の値との差が、最小となるような前記スケール変換パラメータを算出する、第2算出部を更に有する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項7】
前記学習対象データを用いて、所定の条件に基づいて前記学習対象データの一部の削除又は圧縮の両方もしくはどちらか一方を実施する、忘却部を更に有する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項8】
前記学習部は、ガウス過程回帰に基づいてモデルを導出する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項9】
前記学習対象データを用いて、所定の条件に合致する場合に移動平均への変換と、設定の条件から外れる値の除去と、の両方もしくはいずれか一方の方法に基づいて前処理を行う、前処理部を更に有する、
ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項10】
学習対象データのスケール変換を行うために用いるスケール変換パラメータを、算出する工程と、
前記スケール変換パラメータとスケール変換関数を用いて前記学習対象データのスケールを、所定の条件に基づいて変換する工程と、
平均関数及び変換部によってスケール変換された前記学習対象データを用いて学習を行い、モデルを導出する工程と、
を有することを特徴とする情報処理方法。
【請求項11】
平均関数のスケール設定を行うために用いるスケール変換パラメータを、算出する工程と、
前記スケール変換パラメータとスケール変換関数を用いて前記平均関数のスケールを、所定の条件に基づいて設定する工程と、
学習対象データ及び設定部によってスケール設定された前記平均関数を用いて学習を行い、モデルを導出する工程と、
を有することを特徴とする情報処理方法。
【請求項12】
学習対象データのスケール変換を行うために用いるスケール変換パラメータを、算出する手順と、
前記スケール変換パラメータとスケール変換関数を用いて前記学習対象データのスケールを、所定の条件に基づいて変換する手順と、
平均関数及び変換部によってスケール変換された前記学習対象データを用いて学習を行い、モデルを導出する手順と、
を有することを特徴とする情報処理プログラム。
【請求項13】
平均関数のスケール設定を行うために用いるスケール変換パラメータを、算出する手順と、
前記スケール変換パラメータとスケール変換関数を用いて前記平均関数のスケールを、所定の条件に基づいて設定する手順と、
学習対象データ及び設定部によってスケール設定された前記平均関数を用いて学習を行い、モデルを導出する手順と、
を有することを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、モデル予測制御において、実際に制御して得られる運転データ等(以降、「学習対象データ」)を学習データとして、目的関数に用いる設定値軌道(参照軌道)を回帰によって求める技術が知られている。例えば、制御の設定値に関するモデル化にガウス過程回帰が用いる方法が知られている(例えば、特許文献1を参照)。
【0003】
また、ガウス過程回帰では、目的関数についての事前知識を平均関数と共分散関数として導入することで、効率的な学習を行うことが可能であることが知られている(例えば、特許文献2を参照)。なお、任意の関数を定義することが可能である平均関数は、対象の目的関数についての事前知識に対応する関数を事前に設計したものであり、ガウス過程回帰モデルを構築するために、前述の平均関数に得られたデータを逐次適用することもできる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-098391号公報
【特許文献2】特表2015-524594号公報
【非特許文献】
【0005】
【非特許文献1】Edward Snelson, Zoubin Ghahramani: Sparse gaussian processes using pseudo-inputs, Advances in Neural Information Processing Systems 18, 1259-1266 (2006)
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来技術では、学習対象データに基づいたモデル化にガウス過程回帰を用いる際に、学習対象データのスケールが不明な場合は、スケールを考慮せず事前知識に対応した平均関数を事前に設計することができない場合があった。
【0007】
例えば、事前知識として外的要因や制御装置等の機械的特性から目的関数の特性を把握したとしても、学習対象データのスケールを事前に見積もることは困難な場合がある。その場合、事前知識に基づいて事前に設計した平均関数のスケールと学習対象データのスケールが乖離する恐れがあり、ガウス過程回帰の学習を実施しても、平均関数による事前知識の効果は得られにくくなる場合がある。
【0008】
他方、事前に学習対象データを集めれば、目的関数のスケールを見積もることは可能だが、事前にデータを収集することが困難な場合がある。例えば、新設の制御装置等の場合には、必要な学習対象データを収集するための装置運転を実施したり、試験運転の期間を確保したりすることは困難な場合が多く、また既設の制御装置等であっても十分な学習対象データが得られない場合がある、という問題があった。また、類似のロジックで動き、類似の特性を持つ制御装置等であっても、型番や現場によってスケールが異なる場合がある、という問題があった。
【課題を解決するための手段】
【0009】
上記の課題を解決し目的を達成するために、本発明の情報処理装置は、学習対象データのスケール変換を行うために用いるスケール変換パラメータを、算出する第1算出部と、前記スケール変換パラメータとスケール変換関数を用いて前記学習対象データのスケールを、所定の条件に基づいて変換する変換部と、平均関数及び前記変換部によってスケール変換された前記学習対象データを用いて学習を行い、モデルを導出する学習部と、を有することを特徴とする。
【0010】
また、本発明の情報処理装置は、平均関数のスケール設定を行うために用いるスケール変換パラメータを、算出する第1算出部と、前記スケール変換パラメータとスケール変換関数を用いて前記平均関数のスケールを、所定の条件に基づいて設定する設定部と、学習対象データ及び前記設定部によってスケール設定された前記平均関数を用いて学習を行い、モデルを導出する学習部と、を有することを特徴とする。
【発明の効果】
【0011】
本発明によれば、学習対象データに基づいたモデル化にガウス過程回帰を用いる際に、学習対象データのスケールが不明な場合でも、スケールを考慮せず事前知識に対応した平均関数を事前に設計することが可能となる、という効果を奏する。
【図面の簡単な説明】
【0012】
【
図1】
図1は、実施形態に係る情報処理方法の概要の一例を示す図である。
【
図2】
図2は、実施形態1に係る情報処理装置の装置構成の一例を示す図である。
【
図3】
図3は、実施形態1に係る情報処理手順についてのフローチャートである。
【
図4】
図4は、実施形態1に係るスケール変換を未実施の場合における学習対象データと平均関数のグラフの一例を示す図である。
【
図5】
図5は、実施形態1に係るスケール変換を実施した場合における学習対象データと平均関数のグラフの一例を示す図である。
【
図6】
図6は、実施形態2に係る情報処理装置の装置構成の一例を示す図である。
【
図7】
図7は、実施形態2に係る情報処理手順についてのフローチャートである。
【
図8】
図8は、実施形態2に係るスケール設定を実施した場合における平均関数と学習対象データのグラフの一例を示す図である。
【
図9】
図9は、実施形態3に係る情報処理装置の装置構成の一例を示す図である。
【
図10】
図10は、実施形態3に係る情報処理手順についてのフローチャートである。
【
図11】
図11は、実施形態3に係るスケール変換及びスケール設定を実施した場合における学習対象データと平均関数のグラフの一例を示す図である。
【
図12】
図12は、実施形態4に係る情報処理装置の装置構成の一例を示す図である。
【
図13】
図13は、実施形態4に係る情報処理手順についてのフローチャートである。
【
図14】
図14は、実施形態5に係る情報処理装置の装置構成の一例を示す図である。
【
図15】
図15は、実施形態5に係る情報処理手順についてのフローチャートである。
【
図16】
図16は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0013】
次に、実施の形態(以降、「実施形態」)について図面を参照しながら説明する。なお、以下の説明において、各実施形態において共通する構成要素には同一の参照符号を付し、繰り返しの説明を省略する。また、この実施形態の説明は、本発明に係る情報処理装置、情報処理方法及び情報処理プログラムを限定するものではない。
【0014】
〔1.情報処理方法の概要〕
本発明における情報処理装置100は、学習対象データのスケール変換又は平均関数のスケール設定の両方、もしくはどちらか一方を行うために用いるスケール変換パラメータを算出する。そして、情報処理装置100は、前述のスケール変換パラメータを用いて、学習対象データのスケール変換又は平均関数のスケール設定の両方、もしくはどちらか一方を、所定の条件に基づいて実施する。続いて、情報処理装置100は、前述の学習対象データ及び平均関数を用いて学習を行い、モデルを導出する。
【0015】
まず、本発明における情報処理装置100の情報処理方法の概要を、
図1を用いて説明する。なお、本実施形態において、平均関数は「任意の関数を定義することが可能で、対象の目的関数についての事前知識に対応するように設計し、学習対象データを逐次適用してガウス回帰モデルを構築するために用いられる関数」と定義し、目的関数は「モデル化対象の目的関数から得られる学習対象データを用いてガウス過程によって回帰すべき関数」と定義する。
【0016】
まず、
図1では、入力xと出力yの一入力一出力として、ガウス過程回帰により目的関数を回帰することを前提とする(
図1の(1)参照)。なお、以降の説明においても、一入力一出力を前提とし、入力xに含まれるノイズについては本実施形態では考慮しない。また、入出力変数の数については、それぞれいくつの場合についても同様とし、ガウス過程回帰については、スパースガウス過程回帰(例えば、非特許文献1を参照)等の派生手法であっても、平均関数が適用可能であれば使用することができる。さらに、平均関数は任意の関数が定義可能であるため、設計方法について本実施形態では限定されない。
【0017】
図1では、学習対象データのスケールが事前段階では不明であるため、学習対象データのスケールと、事前知識として事前に設計した平均関数のスケールが乖離していることを表している(
図1の(2)参照)。そこで、情報処理装置100は、「学習対象データのスケールを平均関数のスケールに合わせる(
図1の(3)参照)」と、「平均関数のスケールを学習対象データのスケールに合わせる(
図1の(4)参照)」と、「学習対象データと平均関数のそれぞれのスケールを任意のスケールに合わせる(
図1の(5)参照)」と、のいずれか一つにて、自動的にスケール変換又はスケール設定を行う(
図1の(6)参照)。
【0018】
〔2.実施形態1:学習対象データを平均関数と同水準のスケールに変換〕
続いて、実施形態ごとに本発明の有する機能と、情報処理手順と、効果と、を順に説明する。まず、実施形態1として、本発明の情報処理装置100が、学習対象データが存在する点において、学習対象データのスケールを平均関数と同水準のスケールに変換する実施形態を説明する。
【0019】
〔2-1.実施形態1における情報処理装置の構成〕
実施形態1に係る情報処理装置100の構成について、
図2を用いて説明する。
図2に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、を有する。なお、
図2に図示していないが、情報処理装置100は、各種操作を受け付ける入力部(例えば、タッチパネルや、キーボードや、マウス等)を備えても良い。
【0020】
(通信部110)
通信部110は、NIC(Network Interface Card)等によって実現される。そして、通信部110は、必要に応じてネットワークと有線又は無線で接続され、双方向に情報の送受信を行うことができる。
【0021】
(記憶部120)
記憶部120は、学習対象データ記憶部121と、平均関数記憶部122と、スケール変換パラメータ記憶部123と、を有する。なお、記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置によって実現される。
【0022】
(学習対象データ記憶部121)
学習対象データ記憶部121は、情報処理装置100がガウス過程回帰を用いてモデル化をする学習対象データを記憶する。なお、学習対象データ記憶部121が記憶する情報は、前述した、モデル予測制御において、実際に制御して得られる運転データ等、に限定されるものではなく、その他の学習対象となり得るデータを記憶して良い。
【0023】
(平均関数記憶部122)
平均関数記憶部122は、情報処理装置100がガウス過程回帰を用いてモデル化をする際に用いる平均関数を記憶する。なお、平均関数記憶部122が記憶する情報は、平均関数に限定されるものではなく、例えば、ガウス回帰モデルを構築するために用いられる関数である共分散関数等、その他の関数を記憶して良い。
【0024】
(スケール変換パラメータ記憶部123)
スケール変換パラメータ記憶部123は、情報処理装置100が、所定の条件に基づいて学習対象データをスケール変換又は平均関数をスケール設定する際に用いるスケール変換パラメータを記憶する。なお、以降は「所定の条件に基づいて学習対象データをスケール変換又は平均関数をスケール設定する処理に用いる関数」を、スケール変換パラメータと定義する。
【0025】
また、スケール変換パラメータ記憶部123が記憶する情報は、前述のスケール変換パラメータに限定されるものではなく、所定の条件に基づいてスケールを変換又は設定する際に用いる、その他のパラメータを記憶して良い。
【0026】
(制御部130)
制御部130は、取得部131と、前処理部132と、第1算出部133と、変換部134と、学習部135と、を有する。なお、制御部130は、プロセッサ(Processor)や、MPU(Micro Processing Unit)や、CPU(Central Processing Unit)等が、記憶部120に記憶されている各種プログラムについて、RAMを作業領域として実行することにより、実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等のIC(Integrated Circuit)により実現される。
【0027】
(取得部131)
取得部131は、情報処理装置100がガウス過程回帰を用いてモデル化をする学習対象データを取得する。なお、取得部131が取得する情報は、前述した学習対象データに限定されるものではなく、その他の情報を取得して良い。
【0028】
(前処理部132)
前処理部132は、学習対象データを用いて、所定の条件に合致する場合に学習対象データに含まれる処理対象となる情報以外の不要な情報(以降、「ノイズ」)を必要に応じて除去する処理である移動平均への変換と、設定の条件から外れる値の除去と、の両方もしくはいずれか一方の方法に基づいて前処理を行う。なお、前処理部132が行う処理は、前述した処理に限定されるものではなく、学習対象データや平均関数等に対して、その他の処理を行っても良い。
【0029】
(第1算出部133)
第1算出部133は、学習対象データのスケール変換を行うために用いるスケール変換パラメータ及び平均関数のスケール設定を行うために用いるスケール変換パラメータを、算出する。また、第1算出部133は、正規化もしくは標準化の両方もしくはいずれか一方を用いて、スケール変換パラメータを算出する。なお、第1算出部133は、正規化もしくは標準化を用いてスケール変換パラメータを算出するが、前述以外の方法でスケール変換パラメータを算出しても良い。
【0030】
(変換部134)
変換部134は、スケール変換パラメータとスケール変換関数を用いて、学習対象データのスケールを、所定の条件に基づいて変換する。具体的には、変換部134は、スケール変換パラメータとスケール変換関数を用いて、学習対象データを平均関数と同水準のスケール又は学習対象データを任意のスケールかつ平均関数と同水準のスケールのいずれか1つのスケールに、所定の条件に基づいて変換する。
【0031】
(学習部13)
学習部135は、平均関数及び変換部134によってスケール変換された学習対象データを用いて学習を行い、ガウス過程回帰に基づいてモデルを導出する。さらに、学習部135は、学習対象データ及び後述の設定部136によってスケール設定された平均関数を用いて学習を行い、ガウス過程回帰に基づいてモデルを導出する。また、学習部135は、導出したモデルのスケールを、スケールが変換されていない状態の学習対象データと、同水準のスケールに変換するスケールの逆変換「以降、単に「逆変換」」を行う。なお、前述のスケールの逆変換は、所定の条件に基づいて、必要に応じて実施する形態を取っても良い。
【0032】
なお、本実施形態において、学習部135は、ガウス過程回帰を用いてモデル導出すると説明したが、その他のモデル導出方法を用いて、モデルの導出を行っても良い。さらに、学習部135におけるモデル導出の方法については、例えば、ガウス過程回帰で通常用いられるガウス分布よりも外れ値に対するロバスト性の高いコーシー分布を用いた回帰式のベイズ化手法によりモデルを導出することも排除するものではない。
【0033】
〔2-2.実施形態1の情報処理手順〕
次に、実施形態1に係る情報処理装置100の情報処理手順を説明する。
図3は、実施形態1に係る情報処理の手順についての一例を示すフローチャートである。なお、実施形態1における変数定義は、以下の式(1)から式(6)として定義し、各変数について、以降は次のように表記する。平均関数は「平均関数 式(1)」と、スケール変換パラメータは「スケール変換パラメータ 式(2)」と、スケール変換関数は「スケール変換関数 式(3)」と、学習対象データの入力変数点集合は「学習対象データの入力変数点集合 式(4)」と、学習対象データの出力変数点集合は「学習対象データの出力変数点集合 式(5)」、スケール変換後の学習対象データの出力変数点集合は「スケール変換後の学習対象データの出力変数点集合 式(6)」と、以降は統一して表記する。
【0034】
【数1】
【数2】
【数3】
【数4】
【数5】
【数6】
【0035】
まず、取得部131が、学習対象データを取得する(工程S101)。次に、前処理部132が取得した学習対象データを、必要に応じて前処理する(工程S102)。次に、第1算出部133が、学習対象データのスケールを変換するためのスケール変換パラメータ 式(2)を以下の式(7)に基づいて算出する(工程S103)。なお、式(7)のXは学習対象データの入力変数点集合 式(4)を、Yは学習対象データの出力変数点集合 式(5)を表す。なお、式(7)で用いられている関数min及びmaxは、任意の関数を式(8)で表した場合、それぞれ式(9)、式(10)となり、それぞれ式(8)の最小値及び最大値を意味する。
【0036】
【0037】
続いて、変換部134は、以下の式(11)及び(12)に基づいて、学習対象データのスケールを平均関数のスケールに揃えた、スケール変換後の学習対象データの出力変数点集合 式(6)へと、変換する(工程S104)。なお、本実施形態では式(11)として正規化を用いたが、限定されるものではなく、例えば、標準化等その他の関数を用いても良い。
【0038】
【0039】
その後、学習部135が、事前知識として平均関数 式(1)と、学習データとして学習対象データの入力変数点集合 式(4)及びスケール変換後の学習対象データの出力変数点集合 式(6)と、を用いたガウス過程回帰の学習を実施する(工程S105)。なお、以下の実施形態1から5で用いるガウス過程回帰については、平均関数が適用可能な派生手法を用いても良いこととし、以降の記載は省略する。
【0040】
続けて、学習部135は、必要に応じて、モデルの予測と、保存と、予測したモデルのスケールをスケール変換前の水準のスケールに逆変換を行う(工程S106のYes及び工程S107)。他方、学習部135は、モデルの予測と、保存と、予測したモデルのスケールの逆変換が不要な場合は工程を終了する(工程S106のNo)。
【0041】
〔2-3.実施形態1の効果〕
次に、実施形態1に係る情報処理装置100の効果について、
図4及び
図5を用いて説明する。まず、
図4では、スケール変換を行っていない学習対象データは、出力yが15から25の範囲にプロットされている。他方、平均関数は、0付近にプロットされており、前述の学習対象データとはスケールが乖離する状況である。この場合、ガウス過程回帰予測が、目的関数から乖離し、モデルとしては不適切な結果となる。
【0042】
次に、
図5は、前述したスケール変換パラメータ 式(2)を用いたスケール変換により、学習対象データが平均関数と同水準のスケールに変換されたグラフを表す。そして、スケール変換後の学習対象データを用いてガウス過程回帰予測を行い、さらに、スケール変換前の学習対象データの水準にスケールを逆変換することにより、スケール変換を行っていない学習対象データを用いた予測よりも、目的関数との一致度が高いガウス過程回帰予測の結果を得ることができる。
【0043】
〔3.実施形態2:平均関数を学習対象データと同水準のスケールに設定〕
続いて、実施形態2として、本発明の情報処理装置100が、平均関数を、学習対象データが存在する点における学習対象データのスケールと同水準のスケールに設定し、ガウス過程回帰予測に用いる平均関数として定義する、実施形態を説明する。
【0044】
〔3-1.実施形態2における情報処理装置の構成〕
実施形態2に係る情報処理装置100の構成について、
図6を用いて説明する。
図6に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、を有する。なお、実施形態1と同様の構成部分については説明を省略し、本項目では、設定部136の詳細と、実施形態2における情報処理手順と、実施形態2が奏する効果を説明する。
【0045】
(設定部136)
設定部136は、スケール変換パラメータとスケール変換関数を用いて平均関数のスケールを、所定の条件に基づいて設定する。具体的には、設定部136は、スケール変換パラメータとスケール変換関数を用いて、平均関数のスケールを学習対象データと同水準のスケール又は平均関数を任意のスケールかつ学習対象データと同水準のスケールのいずれか1つのスケールに、所定の条件に基づいて設定する。
【0046】
〔3-2.実施形態2の情報処理手順〕
次に、実施形態2に係る情報処理装置100の情報処理手順を説明する。
図7は、実施形態2に係る情報処理の手順についての一例を示すフローチャートである。なお、実施形態2における変数定義は、以下の式(13)として定義し、各変数について、以降は次のように表記する。スケール設定後の平均関数は「平均関数 式(13)」と、以降は統一して表記する。
【0047】
【0048】
まず、取得部131が、学習対象データを取得する(工程S201)。次に、前処理部132が、取得した学習対象データを、必要に応じて前処理する(工程S202)。次に、第1算出部133が、平均関数のスケールを設定するためのスケール変換パラメータ 式(2)を、以下の式(14)に基づいて算出する(工程S203)。なお、式(14)のXは学習対象データの入力変数点集合 式(4)を、Yは学習対象データの出力変数点集合 式(5)を表す。なお、式(14)で用いられている関数min及びmaxは、任意の関数を式(8)で表した場合、それぞれ式(9)、式(10)となり、それぞれ式(8)の最小値及び最大値を意味する。
【0049】
【0050】
続いて、設定部136は、前述の式(11)及び以下の式(15)に基づいて、学習対象データのスケールと同水準のスケールであるスケール設定後の平均関数 式(13)に設定する(工程S204)。続いて、設定部136は、スケール設定後の平均関数 式(13)を、ガウス過程回帰に用いる平均関数として定義する(工程S205)。なお、実施形態2は、実施形態1同様に正規化を用いてスケール設定を行うため、式(11)にスケール変換パラメータ 式(2)を適用する。なお、本実施形態では、正規化を用いたが限定されるものではなく、例えば、標準化等その他の関数を用いても良い。
【0051】
【0052】
その後、学習部135が、事前知識としてスケール設定後の平均関数 式(13)と、学習データとして学習対象データの入力変数点集合 式(4)及び学習対象データの出力変数点集合 式(5)と、を用いたガウス過程回帰の学習を実施する(工程S206)。続けて、学習部135は、必要に応じて、モデルの予測と、保存と、予測したモデルのスケールの逆変換を行う(工程S207のYes及び工程S208)。他方、学習部135は、モデルの予測と、保存と、予測したモデルのスケールの逆変換が不要な場合は工程を終了する(工程S207のNo)。
【0053】
〔3-3.実施形態2の効果〕
次に、実施形態2に係る情報処理装置100の効果を、
図8を用いて説明する。なお、スケール設定を行っていない平均関数を用いて行うガウス過程回帰予測の結果は、
図4で説明した内容と同様のため省略する。
【0054】
図8は、設定部136が、前述したスケール変換パラメータ 式(2)を用いて学習対象データと同水準のスケールになるように平均関数を設定する。さらに、設定部136は、スケール設定した平均関数をガウス過程回帰に用いる平均関数として定義する。そして、スケール設定後の平均関数 式(13)を用いてガウス過程回帰予測を行うと、スケール設定を行っていない平均関数を用いた予測よりも、目的関数との一致度が高いガウス過程回帰予測の結果を得ることができる。
【0055】
〔4.実施形態3:学習対象データと平均関数の両方を任意のスケールに変換及び設定〕
続いて、実施形態3として、本発明の情報処理装置100が、学習対象データ存在する点において、学習対象データと平均関数の両方を任意のスケールに変換及び設定する実施形態を説明する。なお、実施形態3においては、学習対象データと平均関数のスケールを、最小0で最大1に正規化することを想定して、説明を行う。
【0056】
〔4-1.実施形態3における情報処理装置の構成〕
実施形態3に係る情報処理装置100の構成について、
図9を用いて説明する。
図9に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、を有する。なお、実施形態1もしくは2と同様の構成部分については説明を省略し、本項目では、実施形態3における情報処理手順と、実施形態3が奏する効果を説明する。
【0057】
〔4-2.実施形態3の情報処理手順〕
次に、実施形態3に係る情報処理装置100の情報処理手順を説明する。
図10は、実施形態3に係る情報処理の手順についての一例を示すフローチャートである。なお、実施形態3における変数定義は、以下の式(16)及び式(17)として定義し、各変数について、以降は次のように表記する。平均関数を正規化によってスケール設定するパラメータは「スケール変換パラメータ 式(16)」と、正規化のためのスケール変換関数は「スケール変換関数 式(17)」として以下の通り定義する。
【0058】
【0059】
まず、取得部131が、学習対象データを取得する(工程S301)。次に、前処理部132が、取得した学習対象データを、必要に応じて前処理する(工程S302)。次に、第1算出部133は、学習対象データを最小0で最大1に正規化する際に用いるスケール変換パラメータ 式(2)を、以下の式(18)に基づいて、平均関数を最小0で最大1に正規化する際に用いるパラメータでスケール変換パラメータ 式(16)を、以下の式(19)に基づいて、算出する(工程S303)。なお、式(18)及び式(19)のXは学習対象データの入力変数点集合 式(4)を、Yは学習対象データの出力変数点集合 式(5)を表す。なお、式(19)で用いられている関数min及びmaxは、任意の関数を式(8)で表した場合、それぞれ式(9)、式(10)となり、それぞれ式(8)の最小値及び最大値を意味する。
【0060】
【0061】
続いて、変換部134は、算出したスケール変換パラメータ 式(2)と、前述した式(11)及び式(12)に基づいて、最小0で最大1に正規化したスケール変換後の学習対象データの出力変数点集合 式(6)へ変換する(工程S304)。さらに、設定部136は、以下の式(20)及び式(21)に基づいて最小0で最大1に正規化したスケール設定後の平均関数 式(13)へと、設定する(工程S305)。なお、式(20)は、正規化のためのスケール変換関数 式(17)について、正規化を用いて表した式である。
【0062】
【0063】
さらに、設定部136は、工程S305で設定したスケール設定後の平均関数 式(13)を、ガウス過程回帰に用いる平均関数として定義する(工程S306)。なお、本実施形態3では正規化を用いたが、限定されるものではなく、例えば、標準化等その他の関数を用いても良い。また、実施形態3におけるスケール変換関数の式(20)は、式(11)と同一の式であるが、必ずしも限定されることはなく、異なる式を用いても良い。また、学習対象データのスケール変換と平均関数のスケール設定の工程については、順番は入れ替えても良い。
【0064】
その後、学習部135が、事前知識として正規化したスケール設定後の平均関数 式(13)と、学習データとして学習対象データの入力変数点集合 式(4)及びスケール変換後の学習対象データの出力変数点集合 式(6)と、を用いたガウス過程回帰の学習を実施する(工程S307)。続けて、学習部135は、必要に応じて、モデルの予測と、保存と、予測したモデルのスケールをスケール変換前の水準のスケールに逆変換する。(工程S308のYes及び工程S309)。他方、学習部135は、モデルの予測と、保存と、予測したモデルのスケールの逆変換が不要な場合は工程を終了する(工程S308のNo)。
【0065】
〔4-3.実施形態3の効果〕
次に、実施形態3に係る情報処理装置100が提供する効果について、
図11を用いて説明する。なお、スケール変換を行っていない学習対象データ及びスケール設定を行っていない平均関数を用いて行うガウス過程回帰予測の結果は、
図4で説明した内容と同様のため省略する。
【0066】
図11では、前述した最小0で最大1に正規化するスケール変換を学習対象データに、スケール設定を平均関数に対して行うことで、学習対象データと平均関数とが、それぞれ同水準のスケールに変換及び設定される。そして、前述の学習対象データと平均関数を用いてガウス過程回帰予測を行うと、スケール変換を行っていない学習対象データ又はスケール設定を行っていない平均関数を用いた予測よりも、目的関数との一致度が高いガウス過程回帰予測の結果を得ることができる。
【0067】
〔5.実施形態4:学習対象データと平均関数との間の誤差が、最小となるようにスケールを変換〕
続いて、実施形態4として、本発明の情報処理装置100が、学習対象データが存在する点において、学習対象データと平均関数との間の誤差が最小となるように、スケールを変換する実施形態を説明する。なお、以下で説明する本実施形態4は、実施形態1の第1算出部133を第2算出部137に置き換えた実施形態であるが、実施形態2及び3と、後述する実施形態5の第1算出部133と置き換えて実施形態とすることができる。
【0068】
〔5-1.実施形態4における情報処理装置の構成〕
実施形態4に係る情報処理装置100の構成について、
図12を用いて説明する。
図12に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、を有する。なお、実施形態1から3のいずれか一つと同様の構成部分については説明を省略し、本項目では、第2算出部137の詳細と、実施形態4における情報処理手順と、実施形態4が奏する効果を説明する。
【0069】
(第2算出部137)
第2算出部137は、学習対象データと平均関数の値との差が、最小となるようなスケール変換パラメータ 式(2)を算出する。具体的には、第2算出部137は、誤差関数や、平均二乗誤差(MSE:Mean Squared Error)や、平均絶対誤差(MAE:Mean Absolute Error)といった方法を用いて、スケール変換パラメータ 式(2)を算出する。なお、第2算出部137が用いる方法は前述した方法に限定されるものではなく、その他の方法を用いてスケール変換パラメータ 式(2)を算出して良い。
【0070】
〔5-2.実施形態4の情報処理手順〕
次に、実施形態4に係る情報処理装置100の情報処理手順を説明する。
図13は、実施形態4に係る情報処理の手順についての一例を示すフローチャートである。なお、実施形態4における変数定義は、以下の式(22)から式(24)として定義し、各変数について、以降は次のように表記する。誤差関数は「誤差関数 式(22)」と、最小誤差でスケール変換を行うパラメータは「スケール変換パラメータ 式(23)」と、最小誤差でのスケール変換後の学習対象データの出力変数点集合は「スケール変換後の学習対象データの出力変数点集合 式(24)」として以下の通り定義する。
【0071】
【0072】
まず、取得部131が、学習対象データを取得する(工程S401)。次に、前処理部132が、取得した学習対象データを、必要に応じて前処理する(工程S402)。次に、第2算出部137が、スケール変換パラメータ 式(23)を以下の式(25)に基づいて算出する(工程S403)。なお、式(25)は誤差関数 式(22)を用いることに限定されず、平均二乗誤差や平均絶対誤差等の、任意の関数を用いることができる。
【0073】
【0074】
続いて、変換部134は、前述のスケール変換パラメータ 式(2)及び以下の式(26)に基づいて、学習対象データが平均関数のスケールと同水準に、かつ最小誤差となるようなスケール変換後の学習対象データの出力変数点集合 式(24)へと、変換する(工程S404)。なお、式(26)は学習対象データを平均関数のスケールに変換する数式を表す。なお、本実施形態4ではスケール変換関数として正規化を用いたが、限定されるものではなく、例えば、標準化等その他の関数を用いても良い。
【0075】
【0076】
その後、学習部135が、事前知識として平均関数 式(1)と、学習データとして学習対象データの入力変数点集合 式(4)及び最小誤差でのスケール変換後の学習対象データの出力変数点集合 式(24)と、を用いたガウス過程回帰の学習を実施する(工程S405)。続けて、学習部135は、必要に応じて、モデルの予測と、保存と、予測したモデルのスケールをスケール変換前の水準のスケールの逆変換を行う(工程S406のYes及び工程S407)。他方、学習部135は、モデルの予測と、保存と、予測したモデルのスケールの逆変換が不要な場合は工程を終了する(工程S406のNo)。
【0077】
〔5-3.実施形態4の効果〕
次に、実施形態4に係る情報処理装置100の効果を、説明する。前述した最小誤差でのスケール変換パラメータ 式(23)を用いたスケール変換を行うことで、学習対象データが平均関数と同水準のスケールに、かつ誤差が最小となるように変換される。
【0078】
そして、算出した最小誤差でのスケール変換後の学習対象データの出力変数点集合 式(24)を用いてガウス過程回帰予測を行い、さらに、スケール変換前の学習対象データの水準にスケールを逆変換すると、スケール変換を行っていない学習対象データを用いた予測よりも、目的関数との一致度が高いガウス過程回帰予測の結果を得ることができる。
【0079】
〔6.実施形態5:学習対象データの一部を忘却処理して、スケールを変換〕
続いて、実施形態5として、本発明の情報処理装置100が、取得部131が取得、もしくは前処理部132が前処理を行った学習対象データの一部を忘却処理し、学習対象データが存在する点において、忘却処理済みの学習対象データのスケールを平均関数と同水準のスケールに変換する、実施形態を説明する。なお、本事例において、以降は忘却処理を「所定の条件に合致する学習対象データを削除又は圧縮の両方もしくはどちらか一方を実施する処理」と、定義する。
【0080】
〔6-1.実施形態5における情報処理装置の構成〕
実施形態5に係る情報処理装置100の構成について、
図14を用いて説明する。
図14に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130と、を有する。なお、実施形態1から4のいずれか一つと同様の構成部分については説明を省略し、本項目では、忘却部138の詳細と、実施形態5における情報処理手順と、実施形態5が奏する効果を説明する。なお、本実施形態5は、実施形態1に忘却部138を追加した実施形態であるが、実施形態2から4にも同様に追加して実施形態とすることができる。
【0081】
(忘却部138)
忘却部138は、学習対象データを用いて、所定の条件に基づいて学習対象データの一部の削除又は圧縮の両方もしくはどちらか一方を実施する。
【0082】
まず、忘却部138は、新しい学習対象データを取得する際に、取得量が規定量を上回る場合には、学習対象データ記憶部121が保持する最も古い時系列の学習対象データを削除する。具体的には、忘却部138は、学習対象データを一つ追加した時、学習対象データの入力変数点集合 式(4)及び学習対象データの出力変数点集合 式(5)において、規定数を表す以下の式(27)がn未満であれば、X,Yから時系列が最も古い学習対象データを一つ削除する。なお、以降は、規定数は「規定数 式(27)」と、定義して統一して表記する。
【0083】
【0084】
他方、圧縮の場合には、忘却部138は、新しく取得した学習対象データと、最も時系列が近い取得済み学習対象データの平均値を取り、取得する複数の学習対象データ数を圧縮する。例えば、忘却部138は、学習対象データを一つ追加した時に学習対象データの入力変数点集合 式(4)及びにおいて、規定数 式(27)がn未満である時、新しく取得した点である新規取得点を以下の式(28)とし、Xの中で最もxsとの差分が小さい入力変数点と、それに対する出力変数点を以下の式(29)として,以下の式(30)のように圧縮する。そして、忘却部138は、X,Yから新規取得点 式(28)及び式(29)の二点を削除して、新しく得られた点として圧縮した新規取得を以下の式(31)として、追加する。
【0085】
【0086】
なお、本実施形態では、削除については最も時系列の古い学習対象のデータを所定の条件に基づいて削除し、圧縮については取得した学習対象のデータと最も時系列の近い取得済み学習対象データとの平均値を取得することを説明したが、方法は前述したものに限定されず、任意の削除や圧縮の方法を用いて良い。また、本実施形態の説明では、学習対象データを一つずつ取得して追加していくケースを前提に説明しているが、複数の学習対象データを取得したり、処理を繰り返したり、等をすることができる。
【0087】
〔6-2.実施形態5の情報処理手順〕
次に、実施形態5に係る情報処理装置100の情報処理手順を説明する。
図15は、実施形態5に係る情報処理の手順についての一例を示すフローチャートである。なお、実施形態5における変数定義は、以下の式(32)として定義し、各変数について、以降は次のように表記する。忘却処理済み学習対象データの出力変数点集合は「忘却処理済み学習対象データの出力変数点集合 式(32)」と、として以下の通り定義する。
【0088】
【0089】
まず、取得部131が、学習対象データを取得する(工程S501)。次に、前処理部132が、取得した学習対象データを、必要に応じて前処理する(工程S502)。次に、忘却部138が、所定の条件に合致する学習対象データの忘却処理を実施する(工程S503)。なお、忘却部138による忘却処理は、前処理部132による前処理よりも前段階で実施しても良い。
【0090】
そして、第1算出部133が、忘却処理済みの学習対象データのスケール変換のためのスケール変換パラメータ 式(2)を、前述の式(7)に基づいて算出する(工程S504)。続いて、変換部134は、前述の式(11)及び(12)に基づいて、忘却処理済み学習対象データの出力変数点集合 式(32)へと、変換する(工程S505)。なお、式(11)及び式(12)のαには忘却処理済みの学習対象データのスケール変換のためのスケール変換パラメータ 式(2)が代入され、スケール変換後の学習対象データの出力変数点集合 式(6)のY’の代わりに忘却処理済み学習対象データの出力変数点集合 式(32)が算出される。
【0091】
その後、学習部135が、事前知識として平均関数 式(1)と、学習データとして学習対象データの入力変数点集合 式(4)及び忘却処理済み学習対象データの出力変数点集合 式(32)と、を用いたガウス過程回帰の学習を実施する(工程S506)。続けて、学習部135は、必要に応じて、モデルの予測と、保存と、予測したモデルのスケールをスケール変換前の水準のスケールの逆変換を行う(工程S507のYes及び工程S508)。他方、学習部135は、モデルの予測と、保存と、予測したモデルのスケールの逆変換が不要な場合は工程を終了する(工程S507のNo)。
【0092】
〔6-3.実施形態5の効果〕
次に、実施形態5に係る情報処理装置100の効果を、説明する。前述した忘却処理済みの学習対象データのスケール変換のためのスケール変換パラメータ 式(2)を用いたスケール変換を行うことで、忘却処理スケール変換後の学習対象データは平均関数と同水準のスケールに、後述する経年変化の影響を低減した状態で、変換される。
【0093】
そして、忘却処理スケール変換後の学習対象データを用いてガウス過程回帰予測を行い、さらに、スケール変換前の学習対象データの水準にスケールを逆変換すると、スケール変換を行っていない学習対象データを用いた予測よりも、目的関数との一致度が高いガウス過程回帰予測の結果を得ることができる。
【0094】
また、忘却処理の効果について説明する。本発明の情報処理装置100が取得する学習対象データは、前述したように「モデル予測制御において、実際に制御して得られる運転データ等」が含まれる。そして、運転データ等を出力する機器や装置等は経年変化により、スケールに変化が起きる場合がある。本発明の情報処理装置100は、実施形態5によれば、経年変化が発生していたとしても、忘却部138の忘却処理により、経年変化の影響を低減する効果を提供する。
【0095】
〔7.情報処理装置の効果〕
上記で説明してきた、本発明の情報処理装置100は、実施形態1から5によれば、スケール変換及びスケール設定と、最小誤差の処理と、忘却処理と、の機能を単独もしくは組み合わせて実施することにより、スケール変換又はスケール設定を行わない場合と比較してガウス過程回帰予測の精度が向上する効果を提供する。また、情報処理装置100は、前述のガウス過程回帰予測のモデルに基づいて、予測や再度の学習、ファイルへの保存等を通し、制御や、異常検知や、異常予兆検知や、分類や、診断や、運転計画や、シミュレーションや、最適化等の効果を提供する。
【0096】
さらに、情報処理装置100は、制御の設定値に関するモデル化において出力変数のスケールが不明でも、事前知識を平均関数として設計する際にスケールを考慮することは不要となることから、開発や現場でのエンジニアリングの負荷を低減させる効果を提供する。例えば、スケールに関する見積もり自体が不要になることから、見積もりを目的とした制御装置の事前運転による運転データの収集や過去の運転データ等が不要となる。
【0097】
また、情報処理装置100は、取得した学習対象データに応じて学習の実施前に自動で学習対象データのスケール変換又は平均関数のスケール設定をするため、平均関数についてスケールを考慮する必要がなく、簡潔に設計及び表現を可能とすること、そして、個別の制御装置や現場ごとのスケール違いに対するエンジニアリング作業も不要とすること、により作業負荷の低減に繋がる効果を提供する。また、平均関数が複雑になるほどスケールを考慮することは困難なため、情報処理装置100は、作業負荷の低減に繋がる効果を提供する。
【0098】
さらに、対象の制御装置に経年変化が起きる状況下でも、情報処理装置100は学習対象データの忘却によって適切にスケールを揃える効果を提供するため、経年変化に対するエンジニアリング作業も不要となり、長期でのエンジニアリングコストが削減可能となる。
【0099】
なお、効果は前述したものに限定されるものではなく、情報処理装置100は、その他の効果を提供できる。
【0100】
〔8.ハードウェア構成〕
前述した、実施形態に係る情報処理装置100は、例えば、
図16に示すような構成のコンピュータ1000によって実現される。
図16は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、補助記憶装置1400、通信I/F(インタフェース)1500、入出力I/F(インタフェース)1600が、バス1800により接続された形態を有する。
【0101】
CPU1100は、ROM1300又は補助記憶装置1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0102】
補助記憶装置1400は、CPU1100によって実行されるプログラム、および、係るプログラムによって使用されるデータ等を格納する。通信I/F1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。CPU1100は、入出力I/F1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入出力装置1700を制御する。CPU1100は、入出力I/F1600を介して、入出力装置1700からデータを取得する。また、CPU1100は、生成したデータについて入出力I/F1600を介して入出力装置1700へ出力する。
【0103】
例えば、コンピュータ1000が本実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。
【0104】
〔9.その他〕
前述の実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0105】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の通り構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【0106】
前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0107】
また、前述してきた「部(section、module、unit)」は、「手段」や「回路」等に読み替えることができる。例えば、制御部は、制御手段や制御回路に読み替えることができる。
【0108】
以上、本発明の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【符号の説明】
【0109】
100 情報処理装置
110 通信部
120 記憶部
121 学習対象データ記憶部
122 平均関数記憶部
123 スケール変換パラメータ記憶部
130 制御部
131 取得部
132 前処理部
133 第1算出部
134 変換部
135 学習部
136 設定部
137 第2算出部
138 忘却部
1000 コンピュータ
1100 CPU
1200 RAM
1300 ROM
1400 補助記憶装置
1500 通信I/F
1600 入出力I/F
1700 入出力装置
1800 バス