(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6981539
(24)【登録日】2021年11月22日
(45)【発行日】2021年12月15日
(54)【発明の名称】モデル推定システム、モデル推定方法およびモデル推定プログラム
(51)【国際特許分類】
G06Q 10/04 20120101AFI20211202BHJP
G06Q 30/02 20120101ALI20211202BHJP
【FI】
G06Q10/04
G06Q30/02 318
【請求項の数】10
【全頁数】11
(21)【出願番号】特願2020-508787(P2020-508787)
(86)(22)【出願日】2018年3月30日
(86)【国際出願番号】JP2018013589
(87)【国際公開番号】WO2019186996
(87)【国際公開日】20191003
【審査請求日】2020年9月25日
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【弁理士】
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【弁理士】
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】江藤 力
【審査官】
岡北 有平
(56)【参考文献】
【文献】
国際公開第2016/009599(WO,A1)
【文献】
特開2018−005563(JP,A)
【文献】
国際公開第2017/135322(WO,A1)
【文献】
特開2018−013446(JP,A)
【文献】
特開2017−138952(JP,A)
【文献】
Eto, et al.,Fully-Automatic bayesian Piecewise Sparse Linear Models,インターネット[online],2014年,p.238-246,[検索日:2021年7月26日], <URL:http://proceedings.mlr.press/v33/eto14.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00 − 99/00
(57)【特許請求の範囲】
【請求項1】
環境の状態と当該環境の元で行われる行動とを対応付けたデータである行動データ、前記行動データに基づいて前記行動に応じた状態を予測する予測モデル、および、前記状態と行動とを合わせて評価する目的関数の説明変数とを入力する入力部と、
階層混合エキスパートモデルの最下層のノードに前記目的関数が配される分岐構造を設定する構造設定部と、
前記分岐構造に従って分割される前記行動データに対して前記予測モデルを適用して予測される状態に基づいて、前記階層混合エキスパートモデルのノードにおける分岐条件および前記説明変数を含む前記目的関数を学習する学習部とを備えた
ことを特徴とするモデル推定システム。
【請求項2】
学習部は、EMアルゴリズムおよび逆強化学習により、分岐条件および目的関数を学習する
請求項1記載のモデル推定システム。
【請求項3】
学習部は、最大エントロピー逆強化学習、ベイジアン逆強化学習または最大尤度逆強化学習により目的関数を学習する
請求項1または請求項2記載のモデル推定システム。
【請求項4】
学習部は、分岐条件および目的関数が学習された階層混合エキスパートモデルに行動データを適用した結果と当該行動データとの乖離度合いを評価し、前記乖離度合いが所定の閾値以内になるまで学習を繰り返す
請求項1から請求項3のうちのいずれか1項に記載のモデル推定システム。
【請求項5】
学習部は、階層混合エキスパートモデルの最下層のノードに対応させて行動データを分割し、予測モデルおよび分割された行動データを用いて、分割された行動データごとに目的関数および分岐条件を学習する
請求項1から請求項4のうちのいずれか1項に記載のモデル推定システム。
【請求項6】
分岐条件は、説明変数を用いた条件を含む
請求項1から請求項5のうちのいずれか1項に記載のモデル推定システム。
【請求項7】
入力部は、店舗における発注履歴または価格設定履歴を行動データとして入力し、
学習部は、価格の最適化に用いられる目的関数を学習する
請求項1から請求項6のうちのいずれか1項に記載のモデル推定システム。
【請求項8】
入力部は、ドライバの走行履歴を行動データとして入力し、
学習部は、車両運転の最適化に用いられる目的関数を学習する
請求項1から請求項6のうちのいずれか1項に記載のモデル推定システム。
【請求項9】
環境の状態と当該環境の元で行われる行動とを対応付けたデータである行動データ、前記行動データに基づいて前記行動に応じた状態を予測する予測モデル、および、前記状態と行動とを合わせて評価する目的関数の説明変数とを入力し、
階層混合エキスパートモデルの最下層のノードに前記目的関数が配される分岐構造を設定し、
前記分岐構造に従って分割される前記行動データに対して前記予測モデルを適用して予測される状態に基づいて、前記階層混合エキスパートモデルのノードにおける分岐条件および前記説明変数を含む前記目的関数を学習する
ことを特徴とするモデル推定方法。
【請求項10】
コンピュータに、
環境の状態と当該環境の元で行われる行動とを対応付けたデータである行動データ、前記行動データに基づいて前記行動に応じた状態を予測する予測モデル、および、前記状態と行動とを合わせて評価する目的関数の説明変数とを入力する入力処理、
階層混合エキスパートモデルの最下層のノードに前記目的関数が配される分岐構造を設定する構造設定処理、および、
前記分岐構造に従って分割される前記行動データに対して前記予測モデルを適用して予測される状態に基づいて、前記階層混合エキスパートモデルのノードにおける分岐条件および前記説明変数を含む前記目的関数を学習する学習処理
を実行させるためのモデル推定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、環境の状態に応じた行動を決定するモデルを推定するモデル推定システム、モデル推定方法およびモデル推定プログラムに関する。
【背景技術】
【0002】
オペレーションズリサーチの一分野として、数理最適化が発展している。数理最適化は、例えば、小売の分野では、最適な価格を決定する際に利用され、自動運転の分野では、適切な経路を決定する際に利用される。さらに、シミュレータに代表される予測モデルを用いることで、より最適な情報を決定する方法も知られている。
【0003】
例えば、特許文献1には、実世界の環境に応じた制御学習を効率的に実現する情報処理装置が記載されている。特許文献1に記載された情報処理装置は、実世界の環境情報である環境パラメータを複数のクラスタに分類し、クラスタごとに生成モデルを学習する。また、特許文献1に記載された情報処理装置は、コストを低減するため、物理シミュレータを利用した制御学習を実現することで、各種の制限を排除する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開第2017/163538号
【発明の概要】
【発明が解決しようとする課題】
【0005】
一方、数理最適化における目的関数の設定は難しいことも知られている。例えば、小売りにおける価格設定において、価格に基づく売上の予測モデルを生成したとする。短期的には、その予測モデルにより予測される売上数から適切な価格を設定できたとしても、中期的にどのように売り上げを積み重ねていけばよいかを設定することは難しい。
【0006】
また、自動運転での経路設定において、ハンドルやアクセスの操作に基づく車の運動を予測するモデルを生成したとする。その予測モデルに加え、手作業で作成した目的関数を用いてある一区間での適切な経路を設定できたとしても、時々刻々と変化する運転環境やドライバの主観の差異を考慮すると、全体の運転区間を通してどのような基準(目的関数)で経路を設定すればよいか判断することも難しい。
【0007】
このような問題に対し、専門家の行動履歴と予測モデルとをもとに、ある状態に対する行動の良さを推定する逆強化学習が知られている。行動の良さを定量的に定義することで、専門家に似た行動を模倣することが可能になる。例えば、自動走行の場合、ドライバの走行データを用いて逆強化学習を行うことで、モデル予測制御を行う目的関数を生成できる。この逆強化学習では、モデル予測制御を実行(シミュレーション)することで、自律走行データを生成できるため、この自律走行データとドライバの走行データとを近づけるように適切な目的関数を生成することが可能になる。
【0008】
一方、ドライバの走行データの中には、特徴の異なるドライバの走行データや、運転シーンの異なる状況での走行データが含まれることが一般的である。そのため、これらの走行データを様々な状況や特徴で分類して学習させようとすると、非常にコストがかかってしまうという問題がある。
【0009】
特許文献1に記載された情報処理装置では、優良なエキスパート情報が、目的地に速く到着することができるドライバや、安全運転を行うドライバなど、種々のポリシに応じて定義される。しかし、ドライバによって、保守的か攻撃的かの意図(性格)は異なり、その意図(性格)も、運転シーンによって異なることが一般的である。そのため、特許文献1に記載されているようにユーザが恣意的に分類する条件を定義することも難しく、また、分類する条件ごと(例えば、保守的か攻撃的かを示すユーザの意図)にデータを分けて学習させるのもコストがかかってしまうという問題がある。
【0010】
そこで、本発明は、条件に応じて適用する目的関数を選択可能なモデルを効率よく推定できるモデル推定システム、モデル推定方法およびモデル推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明のモデル推定システムは、環境の状態とその環境の元で行われる行動とを対応付けたデータである行動データ、行動データに基づいて行動に応じた状態を予測する予測モデル、および、状態と行動とを合わせて評価する目的関数の説明変数とを入力する入力部と、階層混合エキスパートモデルの最下層のノードに目的関数が配される分岐構造を設定する構造設定部と、分岐構造に従って分割される行動データに対して予測モデルを適用して予測される状態に基づいて、階層混合エキスパートモデルのノードにおける分岐条件および説明変数を含む目的関数を学習する学習部とを備えたことを特徴とする。
【0012】
本発明のモデル推定方法は、環境の状態とその環境の元で行われる行動とを対応付けたデータである行動データ、行動データに基づいて行動に応じた状態を予測する予測モデル、および、状態と行動とを合わせて評価する目的関数の説明変数とを入力し、階層混合エキスパートモデルの最下層のノードに目的関数が配される分岐構造を設定し、分岐構造に従って分割される行動データに対して予測モデルを適用して予測される状態に基づいて、階層混合エキスパートモデルのノードにおける分岐条件および説明変数を含む目的関数を学習することを特徴とする。
【0013】
本発明のモデル推定プログラムは、コンピュータに、環境の状態とその環境の元で行われる行動とを対応付けたデータである行動データ、行動データに基づいて行動に応じた状態を予測する予測モデル、および、状態と行動とを合わせて評価する目的関数の説明変数とを入力する入力処理、階層混合エキスパートモデルの最下層のノードに目的関数が配される分岐構造を設定する構造設定処理、および、分岐構造に従って分割される行動データに対して予測モデルを適用して予測される状態に基づいて、階層混合エキスパートモデルのノードにおける分岐条件および説明変数を含む目的関数を学習する学習処理を実行させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、条件に応じて適用する目的関数を選択可能なモデルを効率よく学習できる。
【図面の簡単な説明】
【0015】
【
図1】本発明によるモデル推定システムの一実施形態の構成例を示すブロック図である。
【
図4】モデル推定システムの動作例を示すフローチャートである。
【
図5】本発明によるモデル推定システムの概要を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態を図面を参照して説明する。本発明において推定するモデルは、階層混合エキスパートモデル(HME(Hierarchical Mixtures of Experts)モデル)の最下層のノードに目的関数が配される分岐構造をもつものである。すなわち、本発明において推定するモデルは、複数のエキスパートネットワークがツリー状の階層構造で連結されたモデルである。各分岐ノードには、入力に応じて分岐を振り分ける条件(分岐条件)が設けられる。
【0017】
具体的には、各分岐ノードに門関数と呼ばれるノードが割り当てられ、入力データに対して各門で分岐確率が算出され、辿り着く確率が最も高い葉ノードに対応する目的関数が選択される。
【0018】
図1は、本発明によるモデル推定システムの一実施形態の構成例を示すブロック図である。本実施形態のモデル推定システム100は、データ入力装置101と、構造設定部102と、データ分割部103と、モデル学習部104と、モデル推定結果出力装置105とを備えている。
【0019】
モデル推定システム100は、入力データ111が入力されると、その入力データ111に対してデータの場合分けおよび各場合における目的関数および分岐条件を学習し、学習された分岐条件および各場合における目的関数をモデル推定結果112として出力する。
【0020】
データ入力装置101は、入力データ111を入力するための装置である。データ入力装置101は、モデル推定に必要な各種データを入力する。具体的には、データ入力装置101は、入力データ111として、環境の状態とその環境の元で行われる行動とを対応付けたデータ(以下、行動データと記す。)を入力する。
【0021】
本実施形態では、ある環境の下で専門家が意思決定した履歴データを行動データとして用いることにより逆強化学習が行われる。このような行動データを用いることで、専門家の行動を模倣したモデル予測制御を行うことが可能になる。また、目的関数を報酬関数と読み替えることで、強化学習を行うことが可能になる。以下では、行動データのことを、専門家の意思決定履歴データと記すこともある。なお、環境の状態には、様々な状態を想定できる。例えば、自動運転に関する環境の状態として、運転手自身の状態や、現在の走行速度や加速度、渋滞状況や天気の状況などが挙げられる。また、小売に関する環境の状態として、天気やイベントの有無、週末か否かなどが挙げられる。
【0022】
また、例えば、自動運転に関する行動データの例として、優良ドライバの走行履歴(例えば、加速度や、ブレーキのタイミング、移動レーンや、車線変更状況、など)が挙げられる。また、例えば、小売に関する行動データの例として、店舗マネージャの発注履歴や価格設定の履歴などが挙げられる。ただし、行動データの内容は、これらの内容に限定されない。模倣する行動を表す任意の情報が行動データとして利用可能である。
【0023】
また、ここでは、専門家の意思決定を行動データとして用いる場合を例示している。ただし、行動データの主体は、必ずしも専門家に限定されない。行動データとして、模倣したい主体が意思決定した履歴データが用いられれば良い。
【0024】
また、データ入力装置101は、入力データ111として、行動データに基づいて行動に応じた状態を予測する予測モデルを入力する。予測モデルは、例えば、行動に応じて変化する状態を示す予測式で表されていてもよい。例えば、自動運転に関する予測モデルの例として、車の運動モデルなどが挙げられる。また、例えば、小売に関する予測モデルの例として、設定価格や発注量に基づく売上の予測モデルなどが挙げられる。
【0025】
また、データ入力装置101は、状態と行動とを合わせて評価する目的関数に用いられる説明変数を入力する。説明変数の内容も任意であり、具体的には、行動データに含まれる内容が説明変数として用いられてもよい。例えば、小売に関する説明変数として、カレンダー情報や駅からの距離、天気、価格情報、発注数などが挙げられる。また、自動運転に関する説明変数として、速度や位置情報、加速度などが挙げられる。さらに、自動運転に関する説明変数として、センターラインからの距離やステアリングの位相、前方の車両との距離などが用いられてもよい。
【0026】
さらに、データ入力装置101は、HMEモデルの分岐構造を入力する。ここで、HMEモデルではツリー状の階層構造を想定しているため、分岐構造は、分岐ノードと葉ノードとを結合させた構造で表される。
図2は、分岐構造の例を示す説明図である。
図2に例示する分岐構造では、角丸四角形が分岐ノードを表わし、丸が葉ノードを表わす。
図2に例示する分岐構造B1と分岐構造B2は、いずれも葉ノードが3つになる構造である。ただし、この2つの分岐構造は、異なる構造として解釈される。なお、分岐構造から葉ノードの数が特定できるため、分類する目的関数の数は特定される。
【0027】
構造設定部102は、入力されたHMEモデルの分岐構造を設定する。構造設定部102は、入力されたHMEモデルの分岐構造を内部のメモリ(図示せず)に記憶するようにしてもよい。
【0028】
データ分割部103は、設定された分岐構造に基づいて行動データを分割する。具体的には、データ分割部103は、HMEモデルの最下層のノードに対応させて行動データを分割する。すなわち、データ分割部103は、設定された分岐構造の各葉ノード数に対応させて行動データを分割する。なお、行動データの分割方法は任意である。データ分割部103は、例えば、入力された行動データをランダムに分割してもよい。
【0029】
モデル学習部104は、分割された行動データに対して予測モデルを適用して、その状態を予測する。そして、モデル学習部104は、HMEモデルの分岐ノードにおける分岐条件および葉ノードにおける各目的関数を分割された行動データごとに学習する。具体的には、モデル学習部104は、EM(Expectation-Maximization)アルゴリズムおよび逆強化学習により、分岐条件および目的関数を学習する。モデル学習部104は、例えば、最大エントロピー逆強化学習、ベイジアン逆強化学習または最大尤度逆強化学習により目的関数を学習してもよい。また、分岐条件には、入力された説明変数を用いた条件が含まれていてもよい。
【0030】
モデル学習部104によって学習されたモデルは、階層的に分岐した葉ノードに目的関数が配置されている構造であることから、階層型目的関数モデルということができる。例えば、データ入力装置101が行動データとして店舗における発注履歴または価格設定履歴を入力した場合、モデル学習部104は、価格の最適化に用いられる目的関数を学習してもよい。また、例えばデータ入力装置101が行動データとしてドライバの走行履歴を入力した場合、モデル学習部104は、車両運転の最適化に用いられる目的関数を学習してもよい。
【0031】
モデル推定結果出力装置105は、モデル学習部104によるモデルの学習が完了した(十分である)と判断された場合、学習された分岐条件および各場合における目的関数などをモデル推定結果112として出力する。一方、モデルの学習が完了していない(不十分である)と判断された場合、データ分割部103へ処理が移され、上述する処理が同様に行われる。
【0032】
具体的には、モデル推定結果出力装置105は、分岐条件および目的
関数が学習された階層型目的関数モデルに行動データを適用した結果と、その行動データとの乖離度合いを評価する。モデル推定結果出力装置105は、乖離度合を計算する方法として、例えば、最小二乗法などを用いてもよい。この乖離度が予め定めた基準を満たす(例えば、乖離度が閾値以下である)場合、モデル推定結果出力装置105は、モデルの学習が完了した(十分である)と判断してもよい。一方、この乖離度が予め定めた基準を満たさない(例えば、乖離度が閾値よりも大きい)場合、モデル推定結果出力装置105は、モデルの学習が完了していない(不十分である)と判断してもよい。この場合、乖離度合いが予め定めた基準を満たすまで、データ分割部103およびモデル学習部104は処理を繰り返す。
【0033】
なお、モデル学習部104が、データ分割部103およびモデル推定結果出力装置105の処理を行ってもよい。
【0034】
図3は、モデル推定結果112の例を示す説明図である。
図3では、
図2に例示する分岐構造が与えられたときのモデル推定結果の一例を示す。図
3に示す例では、最上位のノードに「視界良好か否か」を判断する分岐条件が設けられ、「Yes」と判断された場合に、目的関数1が適用されることを示す。同様に、「視界良好か否か」を判断する分岐条件において「No」と判断された場合に、さらに、「渋滞か否か」を判断する分岐条件が設けられ、「Yes」と判断された場合に目的関数2が、「No」と判断された場合に目的関数3がそれぞれ適用されることを示す。
【0035】
例えば、上述する自動運転の例の場合、本実施形態では、様々な走行データを一括して与えることで、シーン(追い越し、合流など)ごと、ドライバ特徴ごとに目的関数を学習できる。すなわち、攻撃的な追い越しの目的関数、保守的な合流の目的関数、省エネな合流の目的関数などを生成できるとともに、これらの目的関数を切り替えるロジックも併せて生成できる。すなわち、複数の目的関数を切り替えることによって、様々な条件下での適切な行動を選択できる。具体的には、分岐条件および生成された目的関数が示す特性に応じて、各目的関数の内容が判断されることになる。
【0036】
データ入力装置101と、構造設定部102と、データ分割部103と、モデル学習部104と、モデル推定結果出力装置105とは、プログラム(モデル推定プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、モデル推定システムが備える記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、データ入力装置101、構造設定部102、データ分割部103、モデル学習部104およびモデル推定結果出力装置105として動作してもよい。また、本モデル推定システムの機能がSaaS(Software as a Service )形式で提供されてもよい。
【0037】
また、データ入力装置101と、構造設定部102と、データ分割部103と、モデル学習部104と、モデル推定結果出力装置105とは、それぞれが専用のハードウェアで実現されていてもよい。データ入力装置101と、構造設定部102と、データ分割部103と、モデル学習部104と、モデル推定結果出力装置105とは、それぞれが汎用または専用の回路(circuitry )により実現されていてもよい。ここで、汎用または専用の回路(circuitry )は、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、各装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、 集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【0038】
次に、本実施形態のモデル推定システムの動作を説明する。
図4は、本実施形態のモデル推定システムの動作例を示すフローチャートである。
【0039】
まず、データ入力装置101は、行動データ、予測モデル、説明変数および分岐構造を入力する(ステップS11)。構造設定部102は、分岐構造を設定する(ステップS12)。分岐構造は、HMEモデルの最下層のノードに目的関数が配される構造である。データ分割部103は、分岐構造に従って行動データを分割する(ステップS13)。モデル学習部104は、分割された行動データに対して予測モデルを適用して予測される状態に基づいて、HMEモデルのノードにおける分岐条件および目的関数を学習する(ステップS14)。
【0040】
モデル推定結果出力装置105は、行動データをモデルに適用した結果とその行動データとの乖離度が予め定めた基準を満たすか否か判断する(ステップS15)。乖離度が予め定めた基準を満たす場合(ステップS15におけるYes)、モデル推定結果出力装置105は、学習された分岐条件および各場合における目的関数をモデル推定結果112として出力する(ステップS16)。一方、乖離度が予め定めた基準を満たさない場合(ステップS15におけるNo)、ステップS13以降の処理が繰り返される。
【0041】
以上のように、本実施形態では、データ入力装置101が、行動データ、予測モデル、説明変数を入力し、構造設定部102が、HMEモデルの最下層のノードに目的関数が配される分岐構造を設定する。そして、モデル学習部104が、分岐構造に従って分割される行動データに対して予測モデルを適用して予測される状態に基づいて、HMEのノードにおける分岐条件および目的関数を学習する。
【0042】
そのような構成により、行動データを一括で与えても特徴ごとに目的関数を学習できる。さらに、本実施形態では、一般的なHMEモデルの学習に、シミュレータのような予測モデルを併せて利用する。そのため、行動データから、階層的な分岐条件とともに適切な目的関数を学習できる。よって、条件に応じて適用する目的関数を選択可能なモデルを推定できる。
【0043】
さらに、本実施形態では、分岐条件には、目的関数の説明変数や、分岐条件のためだけの説明変数を用いた条件が含まれる。そのため、ユーザにとって、条件に応じて選択される目的関数が解釈容易になる。自動運転の例において、分岐条件に「雨か否か」が示されているとする。この場合、「Yes」の場合に選択される目的関数と、「No」の場合に選択される目的関数の説明変数を比較することも容易になる。このような事例の場合、例えば、「ステアリングの変化度」の係数は、雨の場合の方が晴れの場合に比べて小さくなると考えられるが、このような情報もモデル推定結果から判断し易くなる。
【0044】
次に、本発明の概要を説明する。
図5は、本発明によるモデル推定システムの概要を示すブロック図である。本発明によるモデル推定システム80(例えば、モデル推定システム100)は、環境の状態とその環境の元で行われる行動とを対応付けたデータである行動データ(例えば、運転履歴、発注履歴など)、行動データに基づいて行動に応じた状態を予測する予測モデル(例えば、シミュレータなど)、および、状態と行動とを合わせて評価する目的関数の説明変数とを入力する入力部81(例えば、データ入力装置101)と、階層混合エキスパートモデル(すなわち、HMEモデル)の最下層のノードに目的関数が配される分岐構造を設定する構造設定部82(例えば、構造設定部102)と、分岐構造に従って分割される行動データに対して予測モデルを適用して予測される状態に基づいて、階層混合エキスパートモデルのノードにおける分岐条件および説明変数を含む目的関数を学習する学習部83(例えば、モデル学習部104)とを備えている。
【0045】
そのような構成により、条件に応じて適用する目的関数を選択可能なモデルを効率よく推定できる。
【0046】
また、学習部83は、EMアルゴリズムおよび逆強化学習により、分岐条件および目的関数を学習してもよい。
【0047】
具体的には、学習部83は、最大エントロピー逆強化学習、ベイジアン逆強化学習または、最大尤度逆強化学習により目的関数を学習してもよい。
【0048】
また、学習部83は、分岐条件および目的
関数が学習された階層混合エキスパートモデルに行動データを適用した結果とその行動データとの乖離度合いを評価し、乖離度合いが所定の閾値以内(例えば、乖離度合が所定の閾値以内)になるまで学習を繰り返してもよい。
【0049】
また、学習部83は、階層混合エキスパートモデルの最下層のノードに対応させて行動データを分割し、予測モデルおよび分割された行動データを用いて、分割された行動データごとに目的関数および分岐条件を学習してもよい。
【0050】
また、分岐条件は、説明変数を用いた条件を含んでいてもよい。
【0051】
また、入力部81は、店舗における発注履歴または価格設定履歴を行動データとして入力し、学習部83は、価格の最適化に用いられる目的関数を学習してもよい。
【0052】
他にも、入力部81は、ドライバの走行履歴を行動データとして入力し、学習部83は、車両運転の最適化に用いられる目的関数を学習してもよい。
【符号の説明】
【0053】
100 モデル推定システム
101 データ入力装置
102 構造設定部
103 データ分割部
104 モデル学習部
105 モデル推定結果出力装置