(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022119099
(43)【公開日】2022-08-16
(54)【発明の名称】情報処理装置、シミュレータシステム、ニューラルネットワークシステム、引数値決定方法およびプログラム
(51)【国際特許分類】
G06N 99/00 20190101AFI20220808BHJP
G06N 7/00 20060101ALI20220808BHJP
G06N 3/02 20060101ALI20220808BHJP
【FI】
G06N99/00 180
G06N7/00 150
G06N3/02
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021016101
(22)【出願日】2021-02-03
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(71)【出願人】
【識別番号】301021533
【氏名又は名称】国立研究開発法人産業技術総合研究所
(74)【代理人】
【識別番号】100106909
【弁理士】
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【弁理士】
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】木佐森 慶一
(72)【発明者】
【氏名】小森 雄斗
(72)【発明者】
【氏名】鷲尾 隆
(72)【発明者】
【氏名】山崎 啓介
(57)【要約】
【課題】関数値が最大となる可能性がある引数値、または、関数値が最小となる可能性がある引数値を優先的に選択して関数値を観測できるようにする。
【解決手段】情報処理装置が、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する確率分布取得手段と、前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得する関数取得手段と、前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する引数値決定手段と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する確率分布取得手段と、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数値に対する評価値を算出する第2関数を取得する関数取得手段と、
前記第2関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する引数値決定手段と、
を備える情報処理装置。
【請求項2】
前記第2分布は、前記第1分布に基づく極値分布である、
請求項1に記載の情報処理装置。
【請求項3】
前記第2分布は、前記第1分布に基づくガンベル分布である、
請求項2に記載の情報処理装置。
【請求項4】
前記関数取得手段は、前記第2分布の累積分布関数を用いる前記第2関数を取得する、
請求項1から3の何れか一項に記載に情報処理装置。
【請求項5】
前記関数取得手段は、前記第1関数の大きさの指標値の、前記第2分布のもとでの期待値に基づく前記第2関数を取得する、
請求項1から3の何れか一項に記載の情報処理装置。
【請求項6】
前記関数取得手段は、前記ガンベル分布における平均を示す項と、前記ガンベル分布における分散を示す項とを含む前記第2関数を取得する、
請求項3に記載の情報処理装置。
【請求項7】
請求項1から6の何れか一項に記載の情報処理装置と、
シミュレータと、
前記情報処理装置を用いて前記シミュレータのパラメータ値を設定するパラメータ値設定手段と、
を備えるシミュレータシステム。
【請求項8】
請求項1から6の何れか一項に記載の情報処理装置と、
ニューラルネットワークと、
前記情報処理装置を用いて前記ニューラルネットワークのパラメータ値を設定するパラメータ値設定手段と、
を備えるニューラルネットワークシステム。
【請求項9】
コンピュータが、
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得し、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得し、
前記第2関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する、
ことを含む引数値決定方法。
【請求項10】
コンピュータに、
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得することと、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得することと、
前記第2関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定することと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、シミュレータシステム、ニューラルネットワークシステム、引数値決定方法およびプログラムに関する。
【背景技術】
【0002】
関数の形状について未知であり、関数の引数値を決定すればその引数値における関数値を観測可能だが観測にコストがかかる場合が考えられる。このような場合に、関数値がなるべく大きくなる引数値、または、関数値がなるべく小さくなる引数値を、効率よく探索することが求められることが考えられる。
例えば、特許文献1では、液体クロマトグラフ質量分析装置における印加電圧をパラメータとして、測定感度ができるだけ高くなるように、各パラメータの値を調整することが記載されている。また、特許文献1では、パラメータ探索手法の1つとしてベイズ最適化が記載されている。ベイズ最適化では、観測されたデータを用いて関数値の確率分布を推定し、推定結果に応じて次の観測点を決定する。そして、観測結果を用いて関数の確率分布を推定し直し、推定結果に応じて次の観測点を決定することを繰り返す。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ベイズ最適化のように関数値の確率分布が推定される場合に、関数値が最大となる可能性がある引数値、または、関数値が最小となる可能性がある引数値を優先的に選択して関数値を観測することができれば、関数値がなるべく大きくなる引数値、または、関数値がなるべく小さくなる引数値を、効率よく探索できる可能性がある。
【0005】
本発明の目的の一例は、上述の課題を解決することのできる情報処理装置、シミュレータシステム、ニューラルネットワークシステム、引数値決定方法およびプログラムを提供することである。
【課題を解決するための手段】
【0006】
本発明の第1の態様によれば、情報処理装置は、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する確率分布取得手段と、前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数値に対する評価値を算出する第2関数を取得する関数取得手段と、前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する引数値決定手段と、を備える。
【0007】
本発明の第2の態様によれば、引数値決定方法は、コンピュータが、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得し、前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得し、前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する、ことを含む。
【0008】
本発明の第3の態様によれば、プログラムは、コンピュータに、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得することと、前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得することと、前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定することと、を実行させるためのプログラムである。
【発明の効果】
【0009】
本発明によれば、関数値が最大となる可能性がある引数値、または、関数値が最小となる可能性がある引数値を優先的に選択して関数値を観測することができる。
【図面の簡単な説明】
【0010】
【
図1】実施形態に係る観測システムの機能構成を示す概略ブロック図である。
【
図2】実施形態に係る確率分布取得部が推定する目的関数の確率分布の例を示す図である。
【
図3】実施形態に係る情報処理装置が目的関数の広域最適解を推定する処理手順の例を示すフローチャートである。
【
図4】実施形態に係る評価関数の特性の例を示す図である。
【
図6】EIを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
【
図7】実施形態に係るガンベルEIを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
【
図8】EIおよびガンベルEIについてのフォレスタ関数の最小値の推定結果の例を示す図である。
【
図9】UCBを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
【
図10】実施形態に係るガンベルCBを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
【
図11】UCBおよびガンベルCBについてのフォレスタ関数の最小値の推定結果の例を示す図である。
【
図13】EIを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
【
図14】実施形態に係るガンベルEIを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
【
図15】EIおよびガンベルEIについてのアルパイン関数の最小値の推定結果の例を示す図である。
【
図16】UCBを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
【
図17】実施形態に係るガンベルCBを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
【
図18】UCBおよびガンベルCBについてのアルパイン関数の最小値の推定結果の例を示す図である。
【
図19】実施形態に係る情報処理装置の構成例を示す図である。
【
図20】実施形態に係るシミュレータシステムの構成例を示す図である。
【
図21】実施形態に係る混合比決定システムの構成例を示す図である。
【
図22】実施形態に係るニューラルネットワークシステムの構成例を示す図である。
【
図23】実施形態に係る引数値決定方法における処理手順の例を示すフローチャートである。
【
図24】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、実施形態に係る観測システム10の機能構成を示す概略ブロック図である。
図1に示す構成で、観測システム10は、情報処理装置100と、観測対象200とを備える。情報処理装置100は、通信部110と、表示部120と、操作入力部130と、記憶部180と、制御部190とを備える。制御部190は、確率分布取得部191と、関数取得部192と、引数値決定部193と、関数値取得部194と、終了処理部195とを備える。
【0012】
観測システム10は、観測対象200に関する関数を観測して、その関数の値が最大値になる引数値、または、その関数の最大値を推定する。あるいは、観測システム10が、観測対象200に関する関数を観測して、その関数の値が最小値になる引数値、または、その関数の最小値を推定するようにしてもよい。
【0013】
ここでいう関数を観測することは、関数の引数値を設定し、その引数値の場合の関数値を取得することである。関数を観測することを、関数値をサンプリングするとも称する。観測によって得られる関数値にノイズが含まれていてもよい。
観測システム10による観測対象となる、観測対象200に関する関数を目的関数と称する。目的関数の値が最大値となる引数値と、目的関数の値が最小値となる引数値とを総称して、広域最適解とも表記する。目的関数の最大値と最小値とを総称して広域的極値とも表記する。
【0014】
目的関数は、観測可能、かつ、関数値を観測した引数値以外の引数値に対する関数値の確率分布を、観測結果に基づいて推定可能ないろいろな関数とすることができる。目的関数の引数は、スカラであってもよいし、ベクトルであってもよい。すなわち、目的関数が1変数関数であってもよいし、多変数関数であってもよい。観測対象200は、目的関数が示されるいろいろなものとすることができる。
【0015】
目的関数の観測の対象となる引数値、および、観測で得られる関数値は、それぞれ、第1数値、および、第2数値の例に該当する。目的関数の引数値について上述したように、第1数値はスカラであってもよいしベクトルであってもよい。目的関数の観測結果における引数値と目的関数値との組み合わせは、第1数値と第2数値とが関連付けされているサンプルの例に該当する。
目的関数、または、目的関数にノイズが重畳された関数は、第1関数の例に該当する。
【0016】
例えば、観測対象200が、パラメータを有するシステム、シミュレータ、または、装置であってもよい。そして、目的関数が、パラメータ値の入力を受けて観測対象200の動作結果の評価値を出力する関数であってもよい。観測システム10が、観測対象200の動作結果に対する評価が最も高くなるパラメータ値を推定するようにしてもよい。
ここで、評価値を取得するために、実際に観測対象200を動作させる必要がある場合など、目的関数の全体は不明だが、目的関数を観測できる場合が考えられる。
【0017】
そこで、観測システム10が、目的関数の観測結果に基づいて、観測対象200の動作結果の評価値が最大値になるパラメータ値を推定する。観測システム10が、目的関数の観測を複数回行い、目的関数値が最も大きかった観測の際のパラメータ値を、推定結果のパラメータ値として出力するようにしてもよい。あるいは、観測システム10が、目的関数の観測結果に基づいて目的関数を線形近似し、得られた近似式の値が最大になる引数値を、推定結果のパラメータ値として出力するようにしてもよい。
観測システム10が取得するパラメータ値が、必ずしも実際に最適解であるとは限らないので、「推定する」と表記している。ここでの「最適解」は、観測対象200の動作結果の評価値が最大値となるパラメータ値である。
【0018】
情報処理装置100は、観測システム10について上述したように、目的関数を観測して、広域最適解、または、広域的極値を推定する。情報処理装置100は、例えば、パソコン(Personal Computer;PC)またはワークステーション(Workstation;WS)など
のコンピュータを用いて構成されていてもよい。
【0019】
通信部110は、他の装置と通信を行う。例えば、通信部110が、パラメータ値を観測対象200に送信することで、そのパラメータ値を観測対象200に設定するようにしてもよい。さらに例えば、通信部110が、目的関数の観測のためのパラメータ値を観測対象200に送信するようにしてもよい。また、通信部110が、情報処理装置100が広域最適解として推定したパラメータ値を観測対象200に送信するようにしてもよい。
また、通信部110が、観測対象200に設けられたセンサから、目的関数値として用いられるセンサ測定データ、または、目的関数値を算出するためのセンサ測定データを受信するようにしてもよい。
【0020】
表示部120は、例えば液晶パネルまたはLED(Light Emitting Diode、発光ダイオード)パネル等の表示画面を有し、各種画像を表示する。例えば、表示部120が、目的関数の値の確率分布、および、目的関数の観測結果の引数値および関数値の座標をグラフに表示するなど、目的関数の観測状況を表示するようしてもよい。また、表示部120が、広域最適解または広域的極値の推定結果を表示するようにしてもよい。
【0021】
また、情報処理装置100が算出する引数値が、人手による観測対象200に対する設定量を示す場合、表示部120が引数値を表示するようにしてもよい。例えば観測対象200が、ある物の生産装置であり、目的関数の引数値が観測対象200に人手で投入すべき各材料の量を示す場合、表示部120が、各材料の量を表示するようにしてもよい。ユーザが、表示部120が表示する引数値を参照して、観測対象200に対する設定を行うようにしてもよい。
【0022】
操作入力部130は、例えばキーボードおよびマウス等の入力デバイスを有し、ユーザ操作を受け付ける。例えば、操作入力部130が、情報処理装置100に対して広域最適解推定処理の開始を指示するユーザ操作を受け付けるようにしてもよい。
【0023】
記憶部180は、各種データを記憶する。例えば、記憶部180は、目的関数の観測結果の履歴情報を記憶する。記憶部180は、情報処理装置100が備える記憶デバイスを用いて構成される。
制御部190は、情報処理装置100の各部を制御して、各種処理を行う。制御部190の機能は、例えば情報処理装置100が備えるCPU(Central Processing Unit、中央処理装置)が、記憶部180からプログラムを読み出して実行することで実行される。
【0024】
確率分布取得部191は、目的関数の観測結果に基づいて、目的関数の確率分布を推定する。関数の確率分布は、引数値ごとの、その引数値における関数値の確率分布である。
確率分布取得部191は、確率分布取得手段の例に該当する。確率分布取得部191が取得する目的関数の確率分布は、第1分布の例に該当する。
確率分布取得部191が、ガウス過程回帰(Gaussian Process Regression)によって目的関数の確率分布を推定するようにしてもよい。
【0025】
図2は、確率分布取得部191が推定する目的関数の確率分布の例を示す図である。
図2のグラフの横軸は目的関数の引数値を示し、縦軸は目的関数値を示す。引数値をxで表し、目的関数値をyで表している。
線L111は、真の目的関数を示す。ただし、確率分布取得部191にとって、真の目的関数は不明である。
【0026】
点P11、P12は、それぞれ目的関数の測定結果を示す。
図2の例では、確率分布取得部191は、点P11およびP12で例示される測定結果に基づいて、目的関数の確率分布を推定する。上述したように、目的関数の推定結果にノイズが含まれていてもよい。したがって、観測結果が真の目的関数からずれていてもよい。
【0027】
線L112は、確率分布取得部191が推定する確率分布における平均の例を示す。領域A11は、確率分布取得部191が推定する確率分布における95パーセント信頼区間の例を示す。
確率分布取得部191が、目的関数の平均および分散を、それぞれ、目的関数の引数を引数とする関数として算出することで、目的関数の確率分布を推定するようにしてもよい。
【0028】
関数取得部192は、目的関数の観測対象の引数値を決定するための関数を取得する。具体的には、関数取得部192は、目的関数の引数値の入力を受けて、その引数値に対する評価値を出力する関数を取得する。ここでの引数値に対する評価値は、その引数値について目的関数の観測を行うことの優先度を示す評価値である。関数取得部192が取得する関数を、評価関数とも称する。この評価関数は、第2関数の例に該当する。関数取得部192は、関数取得手段の例に該当する。
目的関数の観測対象の引数値を、目的関数の観測点、あるいは単に観測点とも称する。
【0029】
情報処理装置100が、ベイズ最適化(Bayesian Optimization)によって広域最適解を推定するようにしてもよい。
ベイズ最適化は、関数の最大値または最小値を推定する方法の1つである。ここでは、ベイズ最適化で最大値または最小値の推定対象となる関数を目的関数と称する。
【0030】
ベイズ最適化では、目的関数の観測結果にガウス過程回帰を適用して目的関数の確率分布を推定し、推定結果に基づいて、獲得関数(Acquisition Function)と呼ばれる関数を設定する。そして、ベイズ最適化では、獲得関数の値が最大となる引数値について目的関数の値を観測し、観測結果に基づいて目的関数の確率分布を推定し直し、獲得関数を更新する。ベイズ最適化では、このようにして目的関数の観測を繰り返して、目的関数の最大値または最小値を推定する。
情報処理装置100が、ベイズ最適化によって広域最適解を推定する場合、関数取得部192が算出する評価関数は、獲得関数に該当する。
【0031】
ベイズ最適化における獲得関数として、PI(Probability Inprovement)、EI(Expected Improvement)、および、UCB(Upper Cofidential Bound)などが提案されている。
獲得関数PIは、式(1)のように示される。
【0032】
【0033】
ここでは、獲得関数PIを、式(1)の左辺のようにαPI(・)と表記する。
上記のように、目的関数の観測ごとに獲得関数が更新されることから、観測を行った回数で時刻を表すことにする。「xt」は、時刻tにおいて求められる引数値を示す。したがって「xt」は、t+1回目の観測で目的関数を観測すべき引数値を示す。
f(・)は、目的関数を示す。f(xt)は、t+1回目の観測で得られる目的関数値を示す。ここでは、観測で得られる目的関数値にノイズが重畳されないことを想定している。
【0034】
ybは、これまでの観測での目的関数の最適値を示す。ここでは、目的関数の最大値を推定する場合の例を示しており、ybは、観測された目的関数値のうちの最大値を示す。このybは、その時点(時刻t)における目的関数の最大値の推定値として用いられる。
Pr{・}は、波括弧({})内の事象が生じる確率を示す。Pr{f(xt)-yb≧0}は、f(xt)-yb≧0となる確率を示す。したがって、PIを用いたベイズ最適化では、次に目的関数を観測すべき引数値として、その観測で目的関数の最大値の推定値が改善される確率が最も高い引数値を選択する。
獲得関数PIは、具体的には式(2)のように示される。
【0035】
【0036】
F0,1(・)は、標準正規分布の累積分布関数(Cumulative Distribution Function、CDF)を示す。
r(・)は、式(3)のように示される。
【0037】
【0038】
μt(x)は、時刻tにおける目的関数の推定値の確率分布の平均を示す関数である。σt(x)は、時刻tにおける目的関数の推定値の確率分布の標準偏差を示す関数である。
【0039】
獲得関数EIは、式(4)のように示される。
【0040】
【0041】
ここでは、獲得関数EIを、式(4)の左辺のようにαEI(・)と表記する。
Eは、下付文字で示される条件下における期待値を示す。μt、σtは、それぞれ、時刻tにおける目的関数の推定値の確率分布の平均、標準偏差を示し、N(μt,σt)は、時刻tにおける目的関数の推定値の確率分布としての正規分布を示す。max(・)は、引数のうち最大値を出力する関数である。したがって、式(4)の右辺は、次の観測での目的関数の最大値の推定値の改善幅の期待値を示す。
したがって、EIを用いたベイズ最適化では、次に目的関数を観測すべき引数値として、その観測での目的関数の最大値の推定値の改善幅の期待値が最も大きい引数値を選択する。
獲得関数EIは、具体的には式(5)のように示される。
【0042】
【0043】
φ(・)は、式(6)のように示される。
【0044】
【0045】
N(0,1)は、標準正規分布を示す。
【0046】
獲得関数UCBは、式(7)のように示される。
【0047】
【0048】
kUCBは、目的関数の推定値の確率分布の平均μt-1(x)と標準偏差σt-1(x)との比重を調整する係数である。
領域Dが有限領域の場合、係数kUCBを式(8)のように設定してもよい。
【0049】
【0050】
lnは、自然対数を示す。
|D|は、領域Dの大きさを示す。
πは、円周率を示す。
δは、0<δ<1の定数を示す。
【0051】
dを正の整数として、領域Dが、d次元の領域[0,r]dの部分領域であるコンパクトな領域である場合、係数kUCBを式(9)のように設定してもよい。
【0052】
【0053】
aは、a>0の定数である。bは、b>0の定数である。
【0054】
上記のPI、EI、UCBの何れも、目的関数の確率分布を示す正規分布に基づく。例えば、PIは、式(2)に示されるように、標準正規分布の累積分布関数F0,1(・)に基づく。EIは、式(5)および式(6)に示されるように、標準正規分布を示すφ(・)に基づく。UCBは、式(7)に示されるように、正規分布の標準偏差σt-1(・)に基づく。
【0055】
これに対して、関数取得部192は、上記の評価関数として、目的関数の確率分布における引数ごとの平均とは異なる平均を有する分布に基づく評価関数を取得する。
関数取得部192が、このような分布を用いた評価関数を取得することで、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
【0056】
関数取得部192が、目的関数の確率分布に基づく極値分布(Extreme Value Distribution)に基づく評価関数を取得するようにしてもよい。極値分布は、独立同分布(Independently Identically Distributed; i.i.d)に従う所定個のサンプルのうち、所定の条件以上に大きいサンプルの分布、または、所定の条件以上に小さいサンプルの分布である。
【0057】
極値分布のうち、所定の条件以上に大きいサンプルの分布は、極大値分布とも呼ばれる。極値分布のうち、所定の条件以上に小さいサンプルの分布は、極小値分布とも呼ばれる。情報処理装置100が、目的関数の最大値を推定する場合、極大値分布に基づく評価関数を用いるようにしてもよい。情報処理装置100が、目的関数の最小値を推定する場合、極小値分布に基づく評価関数を用いるようにしてもよい。
極大値分布の累積分布関数は、式(10)のように示される。
【0058】
【0059】
μ、θ、γは何れも実数のパラメータであり、θ>0である。また、1+γ(x-μ)/θ>0である。「/」は、割り算を表す演算子である。
極小値分布の累積分布関数は、1-F(-x)と表される。
【0060】
関数取得部192が、目的関数の確率分布に基づくガンベル分布(Gumbel Distribution)に基づく評価関数を取得するようにしてもよい。ガンベル分布は、独立同分布に従う所定個のサンプルのうち、最大のサンプルの分布、または、最小のサンプルの分布である。ガンベル分布は、極値分布の一種である。以降、ガンベル分布を例として説明を行うが、評価関数を取得する処理は、ガンベル分布や、極値分布を用いる処理に限定されない。評価関数を取得する処理は、たとえば、N(ただし、N≧4)個のサンプルのうち2番目に大きなサンプルの分布、または、M(ただし、M≧6)個のサンプルのうち3番目に大きなサンプルの分布等を用いる処理であってもよい。言い換えると、評価関数を取得する処理は、サンプルの分布における平均と、抽出したサンプルにおける平均とが異なるような分布を用いる処理であればよい。
m個のサンプル{y1,・・・,ym}が、正規分布N(μ,σ)から生成される独立同分布のサンプルであるとし、これらのサンプルのうちの最大値をy+と表記する。この場合、ガンベル分布における累積分布関数FG(y+)は、式(11)のように示される。
【0061】
【0062】
expは、底がネイピア数eの指数関数、すなわちeのべき乗を示す。
μGは、ガンベル分布における平均であり、式(12)のように示される。
【0063】
【0064】
Fμ,σ
-1(・)は、平均がμであり標準偏差がσである正規分布における分位点関数(Quantile Function)を示す。
σGは、ガンベル分布における標準偏差であり、式(13)のように示される。
【0065】
【0066】
eは、ネイピア数を示す。
μG(x)は、式(12)に示される平均μGを示す。
ガンベル分布における確率密度関数は、式(14)のように示される。
【0067】
【0068】
関数取得部192が、式(15)を用いて評価関数を算出するようにしてもよい。
【0069】
【0070】
式(15)では、ガンベル分布における平均μGおよび標準偏差σGを、xtの関数として扱う。
式(15)の右辺のybに、その時点までの目的関数の観測における目的関数値の最大値を代入することで、評価関数が得られる。この評価関数を、ガンベルPIとも称する。
【0071】
また、式(4)の右辺の正規分布N(μt,σt)を、式(14)に示されるガンベル分布の確率密度関数fG(y+)に置き換えると、式(16)に示される関数αGEI(xt)を得られる。
【0072】
【0073】
式(16)のfGは、fG(y+)を示す。
αGEI(xt)は、式(17)のように示される。
【0074】
【0075】
γは、オイラー・マスケローニ定数(Euler-Mascheroni constant)を示す。
sbは、式(18)のように示される。
【0076】
【0077】
E1(・)は、式(19)のように示される。
【0078】
【0079】
関数取得部192が、式(17)から(19)を用いて評価関数を算出するようにしてもよい。式(17)および(18)のybに、その時点までの目的関数の観測における目的関数値の最大値を代入することで、評価関数が得られる。この評価関数を、ガンベルEIとも称する。
【0080】
関数取得部192が、式(20)を用いて評価関数を算出するようにしてもよい。
【0081】
【0082】
上記のように、δは、0<δ<1の定数を示す。
式(20)に基づく評価関数を、ガンベルCBとも称する。
【0083】
引数値決定部193は、関数取得部192が算出する評価関数を用いて、次の観測点を決定する。次の観測点は、次に目的関数の観測を行うべき引数値である。
具体的には、引数値決定部193は、関数取得部192が算出する評価関数が最大になる引数値を、次の観測点に決定する。
引数値決定部193は、引数値決定手段の例に該当する。
【0084】
関数値取得部194は、引数値決定部193が決定した観測点について目的関数を観測して目的関数値を取得する。例えば、関数値取得部194は、引数値決定部193が決定した引数値を、通信部110を介して観測対象200に送信することで、この引数値を観測対象200に設定する。そして、引数値決定部193は、観測対象200に設定した引数値の場合の目的関数値に該当するセンサ測定データを、通信部110を介して観測対象200から受信する。
【0085】
終了処理部195は、情報処理装置100による広域最適解の推定の終了時の処理を行う。例えば、終了処理部195は、目的関数の観測の終了条件が成立しているか否かを判定する。終了条件が成立していると判定した場合、終了処理部195は、目的関数値の推定結果を出力する。
【0086】
図3は、情報処理装置100が目的関数の広域最適解を推定する処理手順の例を示すフローチャートである。情報処理装置100は、例えば、広域最適解の推定を指示するユーザ操作を操作入力部130が受け付けると、
図3の処理を開始する。
図3の処理で、確率分布取得部191は、目的関数の確率分布の初期値を設定する(ステップS101)。例えば、関数値取得部194が、予め定められた引数値について目的関数を観測し、確率分布取得部191が、観測結果に基づいて目的関数の確率分布を推定するようにしてもよい。あるいは、確率分布取得部191が、目的関数の確率分布の初期値として、予め定められた確率分布を設定するようにしてもよい。
【0087】
次に、関数取得部192は、評価関数を算出する(ステップS102)。例えば、関数取得部192が、評価関数のテンプレートに、その時点での観測結果のうち目的関数値の最大値など、観測結果を代入して評価関数を算出するようにしてもよい。
次に、引数値決定部193は、関数取得部192が算出した評価関数を用いて、次の観測点を算出する(ステップS103)。例えば、引数値決定部193は、評価関数が最大になる引数値を、次の観測点として算出する。
【0088】
次に、関数値取得部194は、引数値決定部193が算出した観測点について目的関数を観測し、観測結果の目的関数値を取得する(ステップS104)。
次に、終了処理部195は、観測の繰り返しの終了条件が成立しているか否かを判定する(ステップS105)。観測の繰り返しの終了条件は、特定の条件に限定されない。例えば、観測の繰り返しの終了条件は、観測が所定回数行われたことであってもよい。
【0089】
あるいは、観測の繰り返しの終了条件は、観測の繰り返しによる広域的極値の推定値の変化の大きさ(絶対値)が所定の大きさよりも小さいことであってもよい。情報処理装置100が、目的関数が最大値をとる引数値を推定する場合、観測の繰り返しの終了条件は、「観測された目的関数値の最大値が、前回の観測から増加しないことが、所定回数以上連続して生じること」であってもよい。情報処理装置100が、目的関数が最小値をとる引数値を推定する場合、観測の繰り返しの終了条件は、「観測された目的関数値の最小値が、前回の観測から減少しないことが、所定回数以上連続して生じること」であってもよい。
【0090】
終了条件が成立していないと終了処理部195が判定した場合(ステップS105:NO)、確率分布取得部191は、目的関数の観測結果の履歴に基づいて、目的関数の確率分布を推定する(ステップS106)。この場合、確率分布取得部191は、目的関数の確率分布を更新する。
ステップS106の後、処理がステップS102へ遷移する。
【0091】
一方、終了条件が成立していないと終了処理部195が判定した場合(ステップS105:YES)、情報処理装置100は、
図3の処理を終了する。この場合、終了処理部195が、目的関数値の広域最適解の推定値を出力するようにしてもよい。例えば、終了処理部195が、目的関数値の広域最適解の推定値を、表示部120に表示させるようにしてもよい。あるいは、終了処理部195が、目的関数値の広域最適解の推定値を、通信部110を介して観測対象200に送信するようにしてもよい。
【0092】
図4は、評価関数の特性の例を示す図である。
図4のグラフの横軸は、目的関数の広域的極値の推定値の改善度合いの指標値を示す。縦軸は、目的関数の観測が探索的か活用的かの指標値を示す。
図4は、情報処理装置100が、目的関数の最小値を推定する場合について解析の例を示している。
【0093】
線L211は、ガンベルPIの解析結果の例を示す。線L212は、ガンベルEIの解析結果の例を示す。線L213は、ガンベルCBの解析結果の例を示す。
線L221は、PIの解析結果の例を示す。線L222は、EIの解析結果の例を示す。評価関数との比較のため、これらの獲得関数についても、評価関数と同様に解析を行っている。
【0094】
目的関数の広域的極値の推定値の改善度合いは、情報処理装置100による広域的極値の推定値が、実際の広域的極値にどの程度近付いているか、あるいは遠ざかっているかを示す。
図4では、目的関数の広域的極値の推定値の改善度合の指標値として、r=(μ-f
b)/σを横軸に示している。式に示されるように、この指標値rは、目的関数の予測値の平均μから、それまでの観測における目的関数値の最小値f
bを減算した差を、目的関数の予測値の確率分布の標準偏差σで除算する規格化を行った値である。
【0095】
また、ここでいう活用的とは、目的関数の観測結果から推定される目的関数値を重視して、次の観測点を決定することである。ここでいう探索的とは、目的関数の観測結果から推定される目的関数値よりも、広域的極値の推定値が改善される可能性を重視して、次の観測点を決定することである。
図4の例では、評価関数を、目的関数の推定値の確率分布の平均μに基づく項と、標準偏差σに基づく項とを含む形式にした場合の、それぞれの項の係数の大きさの比較を、活用的か探索的かを示す指標値として用いている。
【0096】
目的関数の推定値の確率分布の平均μは、観測結果の座標を線形近似した座標と考えられる。したがって、この平均μの項の係数を大きくすることは、目的関数の観測結果から推定される目的関数値を重視する活用的であるといえる。
一方、標準偏差σが大きい場合、目的関数の推定値のばらつきが大きい。したがって、この標準偏差σの項の係数を大きくすることは、広域的極値の推定値が改善される可能性を重視する探索的であるといえる。
【0097】
図4を縦軸の方向に見て、線L211と線L221との比較では、線L211のほうが線L221よりも上にある。したがって、線L211で示されるガンベルPIと、線L221で示されるPIとを比較すると、同じ改善度合いを得られるときは、ガンベルPIのほうが、PIよりも探索的であると言える。
また、線L212と線L222との比較では、改善度合いの指標値rが0より大きい領域では、線L212のほうが線L222よりも上にある。したがって、線L212で示されるガンベルEIと、線L222で示されるEIとを比較すると、同じ改善度合いを得られるときは、ガンベルEIのほうが、EIよりも探索的であると言える。
【0098】
情報処理装置100が探索的に観測点を決定して目的関数を観測することで、目的関数の推定値のばらつきが大きい観測点を優先的に観測することになり、比較的速く広域的極値に達するか、あるいは近付くことができる可能性がある。情報処理装置100によれば、この点で、目的関数値がなるべく大きくなる引数値、または、目的関数値がなるべく小さくなる引数値を、効率よく探索できる可能性がある。
【0099】
また、情報処理装置100が探索的に観測点を決定して目的関数を観測することで、目的関数の推定値のばらつきが大きい観測点を優先的に観測することになり、観測によって目的関数の推定値の分布が絞り込まれる程度が大きいといえる。したがって、情報処理装置100によれば、比較的早い段階で目的関数の取り得る値が絞り込まれると期待される。情報処理装置100によれば、この点でも、目的関数値がなるべく大きくなる引数値、または、目的関数値がなるべく小さくなる引数値を、効率よく探索できる可能性がある。
【0100】
目的関数の最小値の推定の実験例について説明する。
図5は、フォレスタ(Forrester)関数の例を示す図である。
図5のグラフの横軸(x軸)は引数値を示し、縦軸(y軸)は関数値を示す。線L311は、1次元のフォレスタ関数を示す。線L311の関数は、式(21)のように表される。
【0101】
【0102】
関数の定義域は0<x<1としている。また、観測の際にσ=1.0のガウシアンノイズが重畳されるものとしている。
【0103】
実験では、引数値x=0.2、0.9のそれぞれについて目的関数の観測を行って、点P21およびP22の観測結果を取得し、観測結果に基づいて目的関数の推定値の確率分布の初期値を設定した。観測結果にノイズが含まれるため、点P21およびP22は、線L311からずれている。
ガンベルEIおよびガンベルCBのそれぞれを用いて目的関数の最小値を推定した。また、比較のために、EIおよびUCBのそれぞれを用いて目的関数の最小値を推定した。
【0104】
図6は、EIを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
図6のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0105】
図7は、ガンベルEIを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
図7のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ガンベルEIについても、ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0106】
図8は、EIおよびガンベルEIについてのフォレスタ関数の最小値の推定結果の例を示す図である。
図8は、目的関数の観測を50回行ったときの、観測で得られた目的関数値のうちの最小値を、100回の推定について集計した例を示している。
図8のグラフの横軸は、観測で得られた目的関数値のうちの最小値を示す。縦軸は、横軸に示される最小値が観測された度数を示す。横軸に示される最小値について、3分の1(0.33・・・)の階級幅ごとに、その階級の度数を示している。したがって、横軸に示される-10から0までの範囲を、30の区間に分割している。
【0107】
上側のグラフが、EIを用いた推定結果を示し、下側のグラフが、ガンベルEIを用いた推定結果を示す。
なお、
図5に示すフォレスタ関数の最小値が約-6(マイナス6)であるのに対し、
図8に示す推定結果によれば、EI、ガンベルEIの何れでも、-6よりも小さい関数値が観測されている。これは、観測結果にノイズが含まれるためである。
【0108】
EI、ガンベルEIともに、横軸の-8付近および-3付近のそれぞれに、推定結果が集中的に表れている。
図8における最小値-8付近の推定結果は、
図5のグラフの横軸の値0.8付近に示される、関数の最小値に対応する推定結果と考えられる。この最小値は、約-6である。
図8における最小値-3付近の推定結果は、
図5のグラフの横軸の値0.1付近に示される、関数の極小値に対応する推定結果と考えられる。この最小値は、約-1である。
【0109】
図8の上側のグラフに示されるEIを用いた推定結果と、下側のグラフに示されるガンベルEIを用いた推定結果とを比較すると、ガンベルEIを用いる場合のほうが、-8付近の推定結果の割合が比較的大きく、-3付近の推定結果の割合が比較的小さい。
このことから、ガンベルEIを用いる場合のほうが、EIを用いる場合よりも、局所解にとどまらずに広域最適解に到達できる可能性が高いと期待される。
【0110】
図9は、UCBを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
図9のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。UCBについても、ノイズ生成の乱数を変えて目的関数の推定を100回行い、100回分の推定結果をグラフに示している。
【0111】
図10は、ガンベルCBを用いた場合のフォレスタ関数の最小値の推定結果の推移の例を示す図である。
図10のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ガンベルCBについても、ノイズ生成の乱数を変えて目的関数の推定を100回行い、100回分の推定結果をグラフに示している。
【0112】
図11は、UCBおよびガンベルCBについてのフォレスタ関数の最小値の推定結果の例を示す図である。
図11は、目的関数の観測を50回行ったときの、観測で得られた目的関数値のうちの最小値を、100回の推定について集計した例を示している。
図11のグラフの横軸は、観測で得られた目的関数値のうちの最小値を示す。縦軸は、横軸に示される最小値が観測された度数を示す。横軸に示される最小値について、3分の1(0.33・・・)の階級幅ごとに、その階級の度数を示している。
【0113】
上側のグラフが、UCBを用いた推定結果を示し、下側のグラフが、ガンベルCBを用いた推定結果を示す。
なお、
図5に示すフォレスタ関数の最小値が約-6であるのに対し、
図11に示す推定結果によれば、UCB、ガンベルCBの何れでも、-6よりも小さい関数値が観測されている。これは、観測結果にノイズが含まれるためである。
【0114】
UCB、ガンベルCBともに、横軸の-8付近および-3付近のそれぞれに、推定結果が集中的に表れている。
図11における最小値-8付近の推定結果は、
図5のグラフの横軸の値0.8付近に示される、関数の最小値に対応する推定結果と考えられる。この最小値は、約-6である。
図11における最小値-3付近の推定結果は、
図5のグラフの横軸の値0.1付近に示される、関数の極小値に対応する推定結果と考えられる。この最小値は、約-1である。
【0115】
図11の上側のグラフに示されるUCBを用いた推定結果と、下側のグラフに示されるガンベルCBを用いた推定結果とを比較すると、ガンベルCBを用いる場合のほうが、-8付近の推定結果の割合が比較的大きく、-3付近の推定結果の割合が比較的小さい。
このことから、ガンベルCBを用いる場合のほうが、UCBを用いる場合よりも、局所解にとどまらずに広域最適解に到達できる可能性が高いと期待される。
【0116】
図12は、アルパイン(Alpine)関数の例を示す図である。
図12のグラフx
1軸およびx
2軸は、それぞれ引数値を示し、y軸は関数値を示す。
図12のグラフは2次元のアルパイン関数を示している。
図12のグラフは、式(22)のように示される。
【0117】
【0118】
関数の定義域は、-2.0<x
i<6.0(i=1、2)としている。
関数の最小値は、f(4.8939, 4.8939) = -8.6482 である。この最小値は、
図12のグラフでは手前側(x
1の値、および、x
2の値が大きい側)に位置している。
また、グラフの左側(x
1の値が小さく、x
2の値が大きい側)、右側(x
1の値が大きく、x
2の値が小さい側)、奥側(x
1の値、および、x
2の値が小さい側)に、それぞれ、関数の極小値が見受けられる。左側の極小値、および、右側の極小値が比較的小さく、奥側の極小値が比較的大きい。
また、観測の際にσ=1.0のガウシアンノイズが重畳されるものとしている。
ガンベルEIおよびガンベルCBのそれぞれを用いて目的関数の最小値を推定した。また、比較のために、EIおよびUCBのそれぞれを用いて目的関数の最小値を推定した。
【0119】
図13は、EIを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
図13のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0120】
図14は、ガンベルEIを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
図14のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ガンベルEIについても、ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0121】
図15は、EIおよびガンベルEIについてのアルパイン関数の最小値の推定結果の例を示す図である。
図15は、目的関数の観測を50回行ったときの、観測で得られた目的関数値のうちの最小値を、100回の推定について集計した例を示している。
図15のグラフの横軸は、観測で得られた目的関数値のうちの最小値を示す。縦軸は、横軸に示される最小値が観測された度数を示す。横軸に示される最小値について、3分の1(0.33・・・)の階級幅ごとに、その階級の度数を示している。
【0122】
上側のグラフが、EIを用いた推定結果を示し、下側のグラフが、ガンベルEIを用いた推定結果を示す。
なお、
図12に示すアルパイン関数の最小値が約-8.6であるのに対し、
図15に示す推定結果によれば、EI、ガンベルEIの何れでも、-8.6よりも小さい関数値が観測されている。これは、観測結果にノイズが含まれるためである。
【0123】
EI、ガンベルEIともに、横軸の-10付近、-6付近、および、-3付近のそれぞれに、推定結果が集中的に表れている。
図15における最小値-10付近の推定結果は、関数の最小値に対応する推定結果と考えられる。
図15における最小値-6付近の推定結果は、
図12のグラフの左側の極小値または右側の極小値に対応する推定結果と考えられる。
図15における最小値-3付近の推定結果は、
図12のグラフの奥側の極小値に対応する推定結果と考えられる。
【0124】
図15の上側のグラフに示されるEIを用いた推定結果と、下側のグラフに示されるガンベルEIを用いた推定結果とを比較すると、ガンベルEIのほうが、-10付近の推定結果の割合が比較的大きく、-6付近の推定結果の割合、および、-3付近の推定結果の割合が比較的小さい。
このことから、ガンベルEIを用いる場合のほうが、EIを用いる場合よりも、局所解にとどまらずに広域最適解に到達できる可能性が高いと期待される。
【0125】
図16は、UCBを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
図16のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。UCBについても、ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0126】
図17は、ガンベルCBを用いた場合のアルパイン関数の最小値の推定結果の推移の例を示す図である。
図17のグラフの横軸は目的関数の観測を行った回数を示す。縦軸は、観測で得られた目的関数値のうちの最小値を示す。ガンベルCBについても、ノイズ生成の乱数を変えて最小値の推定を100回行い、100回分の推定結果をグラフに示している。
【0127】
図18は、UCBおよびガンベルCBについてのアルパイン関数の最小値の推定結果の例を示す図である。
図18は、目的関数の観測を50回行ったときの、観測で得られた目的関数値のうちの最小値を、100回の推定について集計した例を示している。
図18のグラフの横軸は、観測で得られた目的関数値のうちの最小値を示す。縦軸は、横軸に示される最小値が観測された度数を示す。横軸に示される最小値について、3分の1(0.33・・・)の階級幅ごとに、その階級の度数を示している。
【0128】
上側のグラフが、UCBを用いた推定結果を示し、下側のグラフが、ガンベルCBを用いた推定結果を示す。
なお、
図18に示すアルパイン関数の最小値が約-8.6であるのに対し、
図18に示す推定結果によれば、UCB、ガンベルCBの何れでも、-8.6よりも小さい関数値が観測されている。これは、観測結果にノイズが含まれるためである。
【0129】
UCB、ガンベルCBともに、横軸の-10付近および-6付近のそれぞれに、推定結果が集中的に表れている。また、ガンベルCBでは、横軸の-3付近にも推定結果が表れている。
図18における最小値-10付近の推定結果は、関数の最小値に対応する推定結果と考えられる。
図18における最小値-6付近の推定結果は、
図12のグラフの左側の極小値または右側の極小値に対応する推定結果と考えられる。
図18における最小値-3付近の推定結果は、
図12のグラフの奥側の極小値に対応する推定結果と考えられる。
【0130】
図18の上側のグラフに示されるUCBを用いた推定結果と、下側のグラフに示されるガンベルCBを用いた推定結果とを比較すると、-10付近の推定結果の割合がおおよそ同じ大きさになっている。
このことから、ガンベルCBを用いる場合とUCBを用いる場合とで同程度に、局所解にとどまらずに広域最適解に到達できると期待される。このように、ガンベルCBを用いる場合、いろいろな目的関数について、UCBを用いる場合以上、または少なくとも同程度の結果を得られると期待される。
【0131】
以上のように、確率分布取得部191は、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する。関数取得部192は、第1分布における第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、第1関数の引数値に対する評価値を算出する第2関数を取得する。引数値決定部193は、評価関数による評価値に基づいて、第1関数の関数値をサンプリングする引数値を決定する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
【0132】
また、第2分布は、第1分布に基づく極値分布である。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、指数関数を用いた比較的解析が容易な関数になると期待される。
【0133】
また、第2分布は、第1分布に基づくガンベル分布である。
これにより、情報処理装置100は、目的関数の広域的極値に基づく確率分布に基づいて次の観測点を決定することができ、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、指数関数を用いた比較的解析が容易な関数になると期待される。
【0134】
また、関数取得部192は、第2分布の累積分布関数を用いる第2関数を取得する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、累積分布関数を用いた比較的解析が容易な関数になると期待される。
【0135】
また、関数取得部192は、プロバビリティ・オブ・インプルーブメントの獲得関数から、累積密度関数を第2分布の累積密度関数に置き換えた関数を、第2関数として取得する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、比較的解析が容易な関数になると期待される。
【0136】
また、関数取得部192は、第1関数の大きさの指標値の、第2分布のもとでの期待値に基づく第2関数を取得する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、比較的解析が容易な関数になると期待される。
【0137】
また、関数取得部192は、エクスペクティッド・インプルーブメントの獲得関数から、目的関数の推定値の改善度合いの指標値の、正規分布のもとでの期待値を、第1関数の推定値の改善度合いの指標値の、第2分布のもとでの期待値に置き換えた関数を、第2関数として取得する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、比較的解析が容易な関数になると期待される。
【0138】
また、関数取得手段は、ガンベル分布における平均を示す項と、ガンベル分布における分散を示す項とを含む前記第2関数を取得する。
これにより、情報処理装置100は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。また、評価関数が、比較的解析が容易な関数になると期待される。
【0139】
図19は、実施形態に係る情報処理装置の構成例を示す図である。
図19に示す情報処理装置610は、確率分布取得部611と、関数取得部612と、引数値決定部613とを備える。
かかる構成で、確率分布取得部611は、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する。関数取得部612は、第1分布における第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、第1関数の引数値に対する評価値を算出する第2関数を取得する。引数値決定部613は、評価関数による評価値に基づいて、第1関数の関数値をサンプリングする引数値を決定する。
これにより、情報処理装置610は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
【0140】
確率分布取得部611は、確率分布取得手段の例に該当する。関数取得部612は、関数取得手段の例に該当する。引数値決定部613は、引数値決定手段の例に該当する。
確率分布取得部611は、例えば、
図1に示される確率分布取得部191等の機能を用いて実現することができる。関数取得部612は、例えば、
図1に示される関数取得部192等の機能を用いて実現することができる。引数値決定部613の機能は、例えば、
図1に示される引数値決定部193等の機能を用いて実現することができる。
【0141】
図20は、実施形態に係るシミュレータシステムの構成例を示す図である。
図20にシミュレータシステム620は、シミュレータ621と、制御装置622と、情報処理装置624とを備える。制御装置622は、パラメータ値設定部623を備える。
情報処理装置624は、シミュレータ621のパラメータ値の入力を受けてシミュレータ621の処理に対する評価値を出力する関数を目的関数として、シミュレータ621の処理に対する評価値が最大になる、シミュレータ621のパラメータ値を推定する。情報処理装置624として、上述した情報処理装置100を用いるようにしてもよい。あるいは、情報処理装置624として、上述した情報処理装置610を用いるようにしてもよい。
【0142】
パラメータ値設定部623は、情報処理装置624を用いてシミュレータ621のパラメータ値を設定する。具体的には、パラメータ値設定部623は、情報処理装置624が推定するパラメータ値をシミュレータ621に設定する。
これにより、情報処理装置624は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
シミュレータシステム620の構成は、
図20に示される構成に限定されない。例えば、制御装置622と、情報処理装置624とが、1つの装置として構成されていてもよい。
【0143】
図21は、実施形態に係る混合比決定システムの構成例を示す図である。
図21に示す混合比決定システム630は、化学プラント631と、制御装置632と、情報処理装置634とを備える。制御装置632は、混合比決定部633を備える。
情報処理装置634は、化学プラント631の材料の混合比の入力を受けて、化学プラント631の動作結果に対する評価値を出力する関数を目的関数として、化学プラント631の動作結果に対する評価値が最大になる、化学プラント631の材料の混合比を推定する。情報処理装置634として、上述した情報処理装置100を用いるようにしてもよい。あるいは、情報処理装置634として、上述した情報処理装置610を用いるようにしてもよい。
【0144】
混合比決定部633は、情報処理装置634を用いて化学プラント631の材料の混合比を決定し、決定した混合比に基づいて、化学プラント631の各材料の量を設定する。具体的には、混合比決定部633は、情報処理装置634が推定した化学プラント631の材料の混合比に基づいて、化学プラント631の各材料の量を設定する。
これにより、情報処理装置634は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
混合比決定システム630の構成は、
図21に示される構成に限定されない。例えば、制御装置632と、情報処理装置634とが、1つの装置として構成されていてもよい。
【0145】
図22は、実施形態に係るニューラルネットワークシステムの構成例を示す図である。
図22に示すニューラルネットワークシステム640は、ニューラルネットワーク641と、制御装置642と、情報処理装置644とを備える。制御装置642は、パラメータ値設定部643を備える。
情報処理装置644は、ニューラルネットワーク641のパラメータ値の入力を受けてニューラルネットワーク641の処理に対する評価値を出力する関数を目的関数として、ニューラルネットワーク641の処理に対する評価値が最大になる、ニューラルネットワーク641のパラメータ値を推定する。情報処理装置644として、上述した情報処理装置100を用いるようにしてもよい。あるいは、情報処理装置624として、上述した情報処理装置610を用いるようにしてもよい。
【0146】
パラメータ値設定部643は、情報処理装置644を用いてニューラルネットワーク641のパラメータ値を設定する。具体的には、パラメータ値設定部643は、情報処理装置644が推定するパラメータ値をニューラルネットワーク641に設定する。
これにより、情報処理装置644は、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
ニューラルネットワークシステム640の構成は、
図22に示される構成に限定されない。例えば、制御装置642と、情報処理装置644とが、1つの装置として構成されていてもよい。
【0147】
図23は、実施形態に係る引数値決定方法における処理手順の例を示すフローチャートである。
図23に示す引数値決定方法は、確率分布を取得すること(ステップS611)と、関数を取得すること(ステップS612)と、引数値を決定すること(ステップS613)とを含む。
【0148】
確率分布を取得すること(ステップS611)では、第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する。
関数を取得すること(ステップS612)では、前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得する。
引数値を決定すること(ステップS613)では、前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する。
図23に示される引数値決定方法によれば、目的関数の確率分布に基づく関数を用いる場合よりも、広域最適解を得られる可能性を重視して次の観測点を決定することができる。
【0149】
図24は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
図24に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740と、不揮発性記録媒体750とを備える。
【0150】
上記の情報処理装置100、610、624、634および644、制御装置622、632および642のうち何れか1つ以上またはその一部が、コンピュータ700に実装されてもよい。その場合、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。各装置と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。また、インタフェース740は、不揮発性記録媒体750用のポートを有し、不揮発性記録媒体750からの情報の読出、および、不揮発性記録媒体750への情報の書込を行う。
【0151】
情報処理装置100がコンピュータ700に実装される場合、制御部190およびその各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0152】
また、CPU710は、プログラムに従って、記憶部180に対応する記憶領域を主記憶装置720に確保する。
通信部110による他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
表示部120による表示は、インタフェース740が表示装置を有し、CPU710の制御に従って各種画像を表示することで実行される。
操作入力部130によるユーザ操作の受け付けは、インタフェース740が例えばキーボードおよびマウスなどの入力デバイスを有してユーザ操作を受け付け、受け付けたユーザ操作を示す情報をCPU710へ出力することで実行される。
【0153】
情報処理装置610がコンピュータ700に実装される場合、確率分布取得部611と、関数取得部612と、引数値決定部613との動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0154】
また、CPU710は、プログラムに従って、情報処理装置610が処理を行うための記憶領域を主記憶装置720に確保する。
情報処理装置610と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
情報処理装置610とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0155】
情報処理装置624がコンピュータ700に実装される場合、情報処理装置624の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0156】
また、CPU710は、プログラムに従って、情報処理装置624が処理を行うための記憶領域を主記憶装置720に確保する。
情報処理装置624と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
情報処理装置624とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0157】
情報処理装置634がコンピュータ700に実装される場合、情報処理装置634の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0158】
また、CPU710は、プログラムに従って、情報処理装置634が処理を行うための記憶領域を主記憶装置720に確保する。
情報処理装置634と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
情報処理装置634とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0159】
情報処理装置644がコンピュータ700に実装される場合、情報処理装置644の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0160】
また、CPU710は、プログラムに従って、情報処理装置644が処理を行うための記憶領域を主記憶装置720に確保する。
情報処理装置644と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
情報処理装置644とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0161】
制御装置622がコンピュータ700に実装される場合、パラメータ値設定部623の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0162】
また、CPU710は、プログラムに従って、制御装置622が処理を行うための記憶領域を主記憶装置720に確保する。
制御装置622と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
制御装置622とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0163】
制御装置632がコンピュータ700に実装される場合、混合比決定部633の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0164】
また、CPU710は、プログラムに従って、制御装置632が処理を行うための記憶領域を主記憶装置720に確保する。
制御装置632と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
制御装置632とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0165】
制御装置642がコンピュータ700に実装される場合、パラメータ値設定部643の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
【0166】
また、CPU710は、プログラムに従って、制御装置642が処理を行うための記憶領域を主記憶装置720に確保する。
制御装置642と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
制御装置642とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを有し、CPU710の制御に従って動作することで実行される。
【0167】
上述したプログラムのうち何れか1つ以上が不揮発性記録媒体750に記録されていてもよい。この場合、インタフェース740が不揮発性記録媒体750からプログラムを読み出すようにしてもよい。そして、CPU710が、インタフェース740が読み出したプログラムを直接実行するか、あるいは、主記憶装置720または補助記憶装置730に一旦保存して実行するようにしてもよい。
【0168】
なお、情報処理装置100、610、624、634および644、制御装置622、632および642が行う処理の全部または一部を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0169】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
また、上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下には限定されない。
【0170】
(付記1)
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得する確率分布取得手段と、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数値に対する評価値を算出する第2関数を取得する関数取得手段と、
前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する引数値決定手段と、
を備える情報処理装置。
【0171】
(付記2)
前記第2分布は、前記第1分布に基づく極値分布である、
付記1に記載の情報処理装置。
【0172】
(付記3)
前記第2分布は、前記第1分布に基づくガンベル分布である、
付記2に記載の情報処理装置。
【0173】
(付記4)
前記関数取得手段は、前記第2分布の累積分布関数を用いる前記第2関数を取得する、
付記1から3の何れか一つに記載に情報処理装置。
【0174】
(付記5)
前記関数取得手段は、プロバビリティ・オブ・インプルーブメントの獲得関数から、累積密度関数を前記第2分布の累積密度関数に置き換えた関数を、前記第2関数として取得する、
付記4に記載の情報処理装置。
【0175】
(付記6)
前記関数取得手段は、前記第1関数の大きさの指標値の、前記第2分布のもとでの期待値に基づく前記第2関数を取得する、
付記1から3の何れか一つに記載の情報処理装置。
【0176】
(付記7)
前記関数取得手段は、エクスペクティッド・インプルーブメントの獲得関数から、目的関数の推定値の改善度合いの指標値の、正規分布のもとでの期待値を、前記第1関数の推定値の改善度合いの指標値の、前記第2分布のもとでの期待値に置き換えた関数を、前記第2関数として取得する、
付記6に記載の情報処理装置。
【0177】
(付記8)
前記関数取得手段は、前記ガンベル分布における平均を示す項と、前記ガンベル分布における分散を示す項とを含む前記第2関数を取得する、
付記1から3の何れか一つに記載の情報処理装置。
【0178】
(付記9)
付記1から8の何れか一つに記載の情報処理装置と、
シミュレータと、
前記情報処理装置を用いて前記シミュレータのパラメータ値を設定するパラメータ値設定手段と、
を備えるシミュレータシステム。
【0179】
(付記10)
付記1から8の何れか一つに記載の情報処理装置と、
前記情報処理装置を用いて化学プラントにおける材料の混合比の候補を決定する混合比決定手段と、
を備える混合比決定システム。
【0180】
(付記11)
付記1から8の何れか一項に記載の情報処理装置と、
ニューラルネットワークと、
前記情報処理装置を用いて前記ニューラルネットワークのパラメータ値を設定するパラメータ値設定手段と、
を備えるニューラルネットワークシステム。
【0181】
(付記12)
コンピュータが、
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得し、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得し、
前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定する、
ことを含む引数値決定方法。
【0182】
(付記13)
コンピュータに、
第1数値と第2数値が関連付けされているサンプルを複数含む集合に基づいて、前記第1数値から第2数値を算出する第1関数の確率分布である第1分布を取得することと、
前記第1分布における前記第1関数の引数ごとの平均とは異なる平均を有する第2分布に基づいて、前記第1関数の引数の優先度を示す評価値を算出する第2関数を取得することと、
前記評価関数による評価値に基づいて、前記第1関数の関数値をサンプリングする引数値を決定することと、
を実行させるためのプログラム。
【符号の説明】
【0183】
10 観測システム
100、610、624、634、644 情報処理装置
110 通信部
120 表示部
130 操作入力部
180 記憶部
190 制御部
191、611 確率分布取得部
192、612 関数取得部
193、613 引数値決定部
194 関数値取得部
195 終了処理部
200 観測対象
620 シミュレータシステム
621 シミュレータ
622、632、642 制御装置
623、643 パラメータ値設定部
630 混合比決定システム
631 化学プラント
633 混合比決定部
640 ニューラルネットワークシステム
641 ニューラルネットワーク