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

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

▶ 日本電気株式会社の特許一覧

特許7537517学習装置、学習方法および学習プログラム
<>
  • 特許-学習装置、学習方法および学習プログラム 図1
  • 特許-学習装置、学習方法および学習プログラム 図2
  • 特許-学習装置、学習方法および学習プログラム 図3
  • 特許-学習装置、学習方法および学習プログラム 図4
  • 特許-学習装置、学習方法および学習プログラム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-13
(45)【発行日】2024-08-21
(54)【発明の名称】学習装置、学習方法および学習プログラム
(51)【国際特許分類】
   G06N 20/00 20190101AFI20240814BHJP
【FI】
G06N20/00
【請求項の数】 9
(21)【出願番号】P 2022570960
(86)(22)【出願日】2020-12-25
(86)【国際出願番号】 JP2020048791
(87)【国際公開番号】W WO2022137520
(87)【国際公開日】2022-06-30
【審査請求日】2023-06-07
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【弁理士】
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【弁理士】
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】江藤 力
【審査官】渡辺 一帆
(56)【参考文献】
【文献】国際公開第2019/155052(WO,A1)
【文献】特開2020-177016(JP,A)
【文献】国際公開第2018/131214(WO,A1)
【文献】ラシュカ セバスチャン ほか,"17.3 畳み込み層とワッサースタイン距離を使って合成画像の品質を改善する",[第3版] Python機械学習プログラミング 達人データサイエンティストによる理論と実践,第1版,株式会社インプレス,2020年10月,pp. 548-567,ISBN 978-4-295-01007-4
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00-20/20
(57)【特許請求の範囲】
【請求項1】
リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力手段と、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定手段と、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する更新手段とを備えた
ことを特徴とする学習装置。
【請求項2】
更新手段は、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新する
請求項1記載の学習装置。
【請求項3】
更新手段は、パラメータ更新後のワッサースタイン距離が大きくなるように、一回前の更新時のワッサースタイン距離の勾配に対する今回の更新時のワッサースタイン距離の勾配の比の値と、一回前の更新時のステップ幅との積の値以下のステップ幅で報酬関数のパラメータを更新する
請求項1または請求項2記載の学習装置。
【請求項4】
ワッサースタイン距離が収束したか否か判定する判定手段を備え、
ワッサースタイン距離が収束していないと判定された場合、推定手段は、熟練者の軌跡の確率分布と、更新された報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、更新手段は、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する
請求項1から請求項3のうちのいずれか1項に記載の学習装置。
【請求項5】
関数入力手段は、線形関数になるように特徴量が設定された報酬関数の入力を受け付ける
請求項1から請求項4のうちのいずれか1項に記載の学習装置。
【請求項6】
リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付け、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する
ことを、コンピュータに実行させることを特徴とする学習方法。
【請求項7】
非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新する
請求項6記載の学習方法。
【請求項8】
コンピュータに、
リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力処理、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定処理、および、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する更新処理
を実行させるための学習プログラム。
【請求項9】
コンピュータに、
更新処理で、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新させる
求項8記載の学習プログラム
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、逆強化学習を行う学習装置、学習方法および学習プログラムに関する。
【背景技術】
【0002】
機械学習の手法の一つに強化学習(RL:Reinforcement Learning)が知られている。強化学習は、様々な行動を試行錯誤しながら価値を最大化するような行動を学習する手法である。強化学習では、この価値を評価するための報酬関数が設定され、この報酬関数を最大にするような行動が探索される。しかし、報酬関数の設定は、一般には困難である。
【0003】
この報酬関数の設定を容易にする方法として、逆強化学習(IRL:Inverse Reinforcement Learning)が知られている。逆強化学習では、熟練者の意思決定履歴データを利用して、報酬関数を用いた最適化と、報酬関数のパラメータの更新とを繰り返すことで、熟練者の意図を反映する報酬関数を生成する。
【0004】
非特許文献1には、逆強化学習の一つである最大エントロピー逆強化学習(ME-IRL:Maximum Entropy-IRL )について記載されている。非特許文献1に記載された方法では、熟練者のデータD={τ,τ,…τ}(ただし、τ=((s,a),(s,a),…,(s,a)))からただ1つの報酬関数R(s,a)=θ・f(s,a)を推定する。この推定されたθを用いることで、熟練者の意思決定を再現できる。
【0005】
また、非特許文献2には、最大エントロピー逆強化学習を改良した逆強化学習の手法の一つであるGCL(Guided Cost Learning)について記載されている。非特許文献2に記載された手法では、重点サンプリングを用いて報酬関数の重みを更新する。
【0006】
また、報酬関数を学習する逆強化学習と、方策を直接学習する行動模倣とを合わせて、与えられた行動履歴を再現する模倣学習も知られている(例えば、非特許文献3参照)。
【先行技術文献】
【非特許文献】
【0007】
【文献】B. D. Ziebart, A. Maas, J. A. Bagnell, and A. K. Dey, “Maximum entropy inverse reinforcement learning”, In AAAI, AAAI’08, 2008.
【文献】Chelsea Finn, Sergey Levine, Pieter Abbeel, "Guided Cost Learning: Deep Inverse Optimal Control via Policy Optimization", Proceedings of The 33rd International Conference on Machine Learning, PMLR 48, pp.49-58, 2016.
【文献】Jonathan Ho, Stefano Ermon, "Generative adversarial imitation learning", NIPS'16: Proceedings of the 30th International Conference on Neural Information Processing Systems, pp.4572-4580, December 2016
【発明の概要】
【発明が解決しようとする課題】
【0008】
逆強化学習や模倣学習では、再現したい熟練者の行動履歴と、最適化された実行結果との差異を小さくするように報酬関数が学習される。非特許文献1~3に記載された逆強化学習や模倣学習では、KL(Kullback-Leibler)ダイバージェンスや、JS(Jensen-Shannon)ダイバージェンスのような確率的な距離で上述する差異が定義される。
【0009】
ここで、報酬関数のパラメータを更新する際、一般には勾配法が用いられる。しかし、組み合わせ最適化問題では確率分布の設定が難しく、実問題の多くが属している組み合わせ最適化問題に上述するような逆強化学習を適用することが困難である。
【0010】
そこで、本発明は、組み合わせ最適化問題において、安定的に逆強化学習を実施できる学習装置、学習方法および学習プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明による学習装置は、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力手段と、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定手段と、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する更新手段とを備えたことを特徴とする。
【0012】
本発明による学習方法は、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付け、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新することを、コンピュータに実行させることを特徴とする。
【0013】
本発明による学習プログラムは、コンピュータに、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力処理、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定処理、および、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する更新処理を実行させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、組み合わせ最適化問題において、安定的に逆強化学習を実施できる。
【図面の簡単な説明】
【0015】
図1】本発明による学習装置の一実施形態の構成例を示すブロック図である。
図2】ワッサースタイン距離を用いた逆強化学習の例を示す説明図である。
図3】学習装置の動作例を示すフローチャートである。
図4】本発明による学習装置の概要を示すブロック図である。
図5】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0016】
まず初めに、一般的な逆強化学習を、組み合わせ最適化問題に適用することが困難な理由を説明する。非特許文献1に記載されたME-IRLでは、熟練者の軌跡(行動履歴)を再現する報酬関数が複数存在するという不定性を解決するため、最大エントロピー原理を用いて軌跡の分布を指定し、真の分布へ近づけること(すなわち、最尤推定)により報酬関数を学習する。
【0017】
ME-IRLでは、軌跡τは、以下に例示する式1で表わされ、軌跡の分布pθ(τ)を表わす確率モデルは、以下に例示する式2で表わされる。式2におけるcθ(τ)は、コスト関数であり、符号を逆転させる(すなわち、-cθ(τ))ことで報酬関数rθ(τ)を表わす(式3参照)。また、Zは、全ての軌跡に対する報酬の総和を表わす(式4参照)。
【0018】
【数1】
【0019】
そして、最尤推定による報酬関数の重みの更新則(具体的には、勾配上昇法)は、以下に例示する式5および式6で表わされる。式5におけるαはステップ幅であり、LME(θ)は、ME-IRLで用いられる分布間の距離尺度である。
【0020】
【数2】
【0021】
上述するように、式6における第2項は、全ての軌跡に対する報酬の総和である。ME-IRLでは、この第2項の値を厳密に計算できることを前提としている。しかし、現実的には、全ての軌跡に対する報酬の総和を計算することは困難であるため、非特許文献2に記載されたGCLでは、重点サンプリングで近似的にこの値を算出する。
【0022】
しかし、組み合わせ最適化問題は、離散的な値(言い換えると、連続的ではない値)をとるため、ある値を入力したときに、その値に対応する確率を返す確率分布の設定が難しい。組み合わせ最適化問題では、目的関数における値が少しでも変化すると、結果も大きく変化する可能性があるためである。
【0023】
例えば、典型的な組み合わせ最適化問題の例として、経路問題やスケジューリング問題、切り出し・詰め込み問題や割り当て・マッチング問題などが挙げられる。具体的には、経路問題は、例えば、運搬経路問題や巡回セールスマン問題などであり、スケジューリング問題は、例えば、ジョブショップ問題や勤務スケジュール問題などである。また、切り出し・詰め込み問題は、例えば、ナップサック問題やビンパッキング問題などであり、割り当て・マッチング問題は、最大マッチング問題や一般化割当問題などである。
【0024】
本開示の学習装置を用いることで、これらの組み合わせ最適化問題において、安定的に逆強化学習を実施することが可能になる。以下、本発明の実施形態を図面を参照して説明する。
【0025】
図1は、本発明による学習装置の一実施形態の構成例を示すブロック図である。本実施形態の学習装置100は、機械学習により、対象者(熟練者)の行動から報酬関数を推定する逆強化学習を行う装置であり、熟練者の行動特性に基づく情報処理を具体的に行う装置である。学習装置100は、記憶部10と、入力部20と、特徴量設定部30と、重み初期値設定部40と、数理最適化実行部50と、重み更新部60と、収束判定部70と、出力部80とを備えている。
【0026】
なお、数理最適化実行部50、重み更新部60および収束判定部70により、後述する逆強化学習が行われることから、数理最適化実行部50、重み更新部60および収束判定部70を含む装置を、逆強化学習装置と言うことができる。
【0027】
記憶部10は、学習装置100が各種処理を行うために必要な情報を記憶する。記憶部10は、後述する入力部20が受け付けた熟練者の意思決定履歴データ(軌跡)を記憶してもよい。また、記憶部10は、後述する数理最適化実行部50および重み更新部60が学習に用いる報酬関数の特徴量の候補を記憶していてもよい。ただし、特徴量の候補は、必ずしも目的関数に使用される特徴量である必要はない。
【0028】
また、記憶部10は、後述する数理最適化実行部50を実現するための数理最適化ソルバを記憶していてもよい。なお、数理最適化ソルバの内容は任意であり、実行する環境や装置に応じて決定されればよい。
【0029】
入力部20は、学習装置100が各種処理を行うために必要な情報の入力を受け付ける。入力部20は、例えば、上述する熟練者の意思決定履歴データ(具体的には、状態と行動のペア)の入力を受け付けてもよい。また、入力部20は、後述する逆強化学習装置が逆強化学習を行う際に用いる初期状態の制約zの入力を受け付けてもよい。
【0030】
特徴量設定部30は、状態および行動を含むデータから、報酬関数の特徴量を設定する。具体的には、特徴量設定部30は、後述する逆強化学習装置が分布間の距離尺度としてワッサースタイン(Wasserstein)距離を利用できるように、関数全体で接線の勾配が有限になるように報酬関数の特徴量を設定する。特徴量設定部30は、例えば、リプシッツ連続条件を満たすように報酬関数の特徴量を設定してもよい。
【0031】
例えば、fτを軌跡τの特徴量ベクトルとする。コスト関数cθ(τ)=θτと線形に限定した場合、写像F:τ→fτがリプシッツ連続であれば、cθ(τ)もリプシッツ連続である。そのため、特徴量設定部30は、報酬関数が線形関数になるように特徴量を設定してもよい。
【0032】
なお、例えば、以下に例示する式7は、aにおいて勾配が無限大になってしまうため、本開示において不適切な報酬関数と言える。
【0033】
【数3】
【0034】
特徴量設定部30は、例えば、ユーザの指示に応じて特徴量が設定された報酬関数を決定してもよく、記憶部10からリプシッツ連続条件を満たす報酬関数を取得してもよい。
【0035】
重み初期値設定部40は、報酬関数の重みを初期化する。具体的には、重み初期値設定部40は、報酬関数に含まれる個々の特徴量の重みを設定する。なお、重みを初期化する方法は特に限定されず、ユーザ等に応じて予め定められた任意の方法に基づいて重みが初期化されればよい。
【0036】
数理最適化実行部50は、熟練者の軌跡(行動履歴)の確率分布と、最適化された(報酬関数の)パラメータに基づいて決定される軌跡の確率分布との間の距離を最小にする軌跡τ(τは、τの上付き^)を導出する。具体的には、数理最適化実行部50は、分布間の距離尺度として、KL/JSダイバージェンスの代わりにワッサースタイン距離を利用して、そのワッサースタイン距離を最小にするよう数理最適化を実行することにより、熟練者の軌跡τを推定する。
【0037】
ワッサースタイン距離は、以下に例示する式8で定義される。なお、ワッサースタイン距離の制約から、コスト関数cθ(τ)は、リプシッツ連続条件を満たす関数である必要がある。一方、本実施形態では、特徴量設定部30によってリプシッツ連続条件を満たすように報酬関数の特徴量が設定されているため、数理最適化実行部50は、以下に例示するようなワッサースタイン距離を利用することが可能になる。
【0038】
【数4】
【0039】
上記に例示する式8で定義されるワッサースタイン距離は0以下の値をとり、この値を大きくすることが、分布同士を近づけることに対応する。また、式8の第2項において、コスト関数cθの引数(すなわち、τ(θ,z(i)))は、パラメータθで最適化したi番目の軌跡を表わす。なお、zは、軌跡パラメータである。式8の第2項は、組み合わせ最適化問題でも算出可能な項である。そのため、式8に例示するワッサースタイン距離を分布間の距離尺度として用いることで、組み合わせ最適化問題において、安定的に逆強化学習を実施することが可能になる。
【0040】
重み更新部60は、推定された熟練者の軌跡τに基づいて分布間の距離尺度を最大にするように報酬関数のパラメータθを更新する。具体的には、重み更新部60は、上述するワッサースタイン距離を最大にするように報酬関数のパラメータを更新する。重み更新部60は、例えば、推定された軌跡τを固定して、勾配上昇法によりパラメータを更新してもよい。
【0041】
また、本実施形態では、重み更新部60は、報酬関数のパラメータを更新する際、ワッサースタイン距離を単調増加させるために、非拡大写像による更新則(以下、非拡大写像勾配法と記すこともある。)を用いてもよい。以下、非拡大写像勾配法について詳述する。
【0042】
ここでは、報酬関数として線形関数が用いられる場合を例示する。上記のように軌跡τの特徴量ベクトルをfτとすると、報酬関数は、以下に例示する式9のように表される。
【0043】
【数5】
【0044】
このとき、ワッサースタイン距離の単調増加性を保証するため、任意の軌跡τおよび軌跡τ、並びに、各軌跡に対する特徴量ベクトルfτaおよび特徴量ベクトルfτbについて、以下の式10に例示する関係を満たす定数Kが存在する必要がある。
【0045】
【数6】
【0046】
ここで、上記に示す式10は、以下に例示する式11のように書き換えることができる。
【0047】
【数7】
【0048】
t回目に更新される報酬関数のパラメータをθ、ワッサースタイン距離をW(θ)、および、ステップ幅をαとする。このとき、報酬関数のパラメータの更新則は、以下に例示する式12のように表すことができる。
【0049】
【数8】
【0050】
重み更新部60は、報酬関数のパラメータの更新則(すなわち、θ(t)→θ(t+1))が非拡大写像になるという制約下で、ワッサースタイン距離を大きくする勾配のステップ幅を探索し、そのステップ幅で報酬関数のパラメータを更新する。具体的には、重み更新部60は、以下の式13および式14に示す条件を満たすステップ幅αで報酬関数のパラメータを更新する。
【0051】
【数9】
【0052】
式13および式14は、パラメータ更新後のワッサースタイン距離が大きくなる(W(θt+1)>W(θ))ように、一回前の更新時t-1のワッサースタイン距離W(θt-1)の勾配∇W(θt-1)に対する今回の更新時tのワッサースタイン距離W(θ)の勾配∇W(θ)の比(||∇W(θt-1)||/||∇W(θ)||)の値と一回前の更新時t-1のステップ幅αt-1との積以下になるような正のステップ幅αの値を探索することを示す。
【0053】
例えば、組み合わせ最適化問題の場合、数理最適化実行部50による推定結果が報酬関数の変化に対して不連続になる場合がある。具体的には、ある値の最大化と最小化とを交互に実施する更新では、多くの場合、その値が振動し、収束するまでに時間を要することがある。一方、本実施形態では、数理最適化実行部50が、上述する非拡大写像勾配法を用いることで、ワッサースタイン距離の単調増加性を保証しながらパラメータを更新することが可能になる。
【0054】
以降、後述する収束判定部70によって、ワッサースタイン距離が収束されたと判定されるまで、数理最適化実行部50による軌跡の推定処理、および、重み更新部60によるパラメータの更新処理が繰り返される。
【0055】
収束判定部70は、分布間の距離尺度が収束したか否か判定する。具体的には、収束判定部70は、ワッサースタイン距離が収束したか否か判定する。判定方法は任意であり、収束判定部70は、例えば、分布間のワッサースタイン距離の絶対値が予め定めた閾値より小さくなったときに、分布間の距離尺度が収束したと判定してもよい。
【0056】
収束判定部70は、距離が収束していないと判断した場合、数理最適化実行部50および重み更新部60による処理を継続させる。一方、収束判定部70は、距離が収束したと判断した場合、数理最適化実行部50および重み更新部60による処理を終了させる。
【0057】
出力部80は、学習された報酬関数を出力する。
【0058】
図2は、ワッサースタイン距離を用いた逆強化学習の例を示す説明図である。なお、本開示で示すワッサースタイン距離を用いた逆強化学習のことを、Wasserstein IRL (WIRL)と記すこともある。
【0059】
まず、初期状態の制約zおよび初期値が設定されたパラメータθの報酬関数に基づき、最適化ソルバを用いて、ワッサースタイン距離を最小化するよう数理最適化を行うことで軌跡τを推定する。なお、図2に例示する最適化ソルバは、数理最適化実行部50に対応する。
【0060】
一方、推定された軌跡τと入力された熟練者の軌跡τに基づいて、ワッサースタイン距離を最大化するよう数理最適化を行うことで報酬関数(コスト関数)のパラメータを更新する。この処理は、重み更新部60の処理に対応する。
【0061】
以降、ワッサースタイン距離が収束したと判定されるまで、図2に例示する処理が繰り返される。
【0062】
入力部20と、特徴量設定部30と、重み初期値設定部40と、数理最適化実行部50と、重み更新部60と、収束判定部70と、出力部80とは、プログラム(学習プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit ))によって実現される。
【0063】
例えば、プログラムは、学習装置100が備える記憶部10に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、入力部20、特徴量設定部30、重み初期値設定部40、数理最適化実行部50、重み更新部60、収束判定部70および出力部80として動作してもよい。また、学習装置100の機能がSaaS(Software as a Service )形式で提供されてもよい。
【0064】
また、入力部20と、特徴量設定部30と、重み初期値設定部40と、数理最適化実行部50と、重み更新部60と、収束判定部70と、出力部80とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【0065】
また、学習装置100の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【0066】
次に、本実施形態の学習装置100の動作を説明する。図3は、本実施形態の学習装置100の動作例を示すフローチャートである。入力部20は、エキスパートデータ(すなわち、熟練者の軌跡/意思決定履歴データ)の入力を受け付ける(ステップS11)。特徴量設定部30は、状態および行動を含むデータから、リプシッツ連続条件を満たすように報酬関数の特徴量を設定する(ステップS12)。また、重み初期値設定部40は、報酬関数の重み(パラメータ)を初期化する(ステップS13)。
【0067】
数理最適化実行部50は、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける(ステップS14)。そして、数理最適化実行部50は、ワッサースタイン距離を最小にするように数理最適化を実行する(ステップS15)。具体的には、数理最適化実行部50は、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する。
【0068】
重み更新部60は、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する(ステップS16)。重み更新部60は、例えば、非拡大写像勾配法を用いて報酬関数のパラメータを更新してもよい。
【0069】
収束判定部70は、ワッサースタイン距離が収束したか否か判定する(ステップS17)。ワッサースタイン距離が収束していないと判定された場合(ステップS17におけるNo)、更新された軌跡を用いてステップS15以降の処理が繰り返される。一方、ワッサースタイン距離が収束したと判定された場合(ステップS17におけるYes)、出力部80は、学習された報酬関数を出力する(ステップS18)。
【0070】
以上のように、本実施形態では、数理最適化実行部50が、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付け、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する。そして、重み更新部60が、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する。よって、組み合わせ最適化問題において、安定的に逆強化学習を実施できる。
【0071】
次に、本発明の概要を説明する。図4は、本発明による学習装置の概要を示すブロック図である。本発明による学習装置90(例えば、学習装置100)は、リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力手段91(例えば、数理最適化実行部50)と、熟練者の軌跡の確率分布と、報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定手段92(例えば、数理最適化実行部50)と、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する更新手段93(例えば、重み更新部60)とを備えている。
【0072】
そのような構成により、組み合わせ最適化問題において、安定的に逆強化学習を実施できる。
【0073】
更新手段93は、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新してもよい。
【0074】
具体的には、更新手段93は、パラメータ更新後のワッサースタイン距離(例えば、W(θ))が大きくなるように(すなわち、W(θt+1)>W(θ))、一回前の更新時(t-1回目)のワッサースタイン距離の勾配(例えば、∇W(θt-1))に対する今回の更新時(例えば、t回目)のワッサースタイン距離の勾配(例えば、∇W(θ))の比の値と、一回前の更新時のステップ幅(例えば、αt-1)との積の値以下のステップ幅(例えば、α)で報酬関数のパラメータを更新してもよい(例えば、式13および式14参照)。
【0075】
また、学習装置90は、ワッサースタイン距離が収束したか否か判定する判定手段(例えば、収束判定部70)を備えていてもよい。そして、ワッサースタイン距離が収束していないと判定された場合、推定手段92は、熟練者の軌跡の確率分布と、更新された報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、更新手段93は、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新してもよい。
【0076】
また、関数入力手段91は、線形関数になるように特徴量が設定された報酬関数の入力を受け付けてもよい。
【0077】
図5は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。コンピュータ1000は、プロセッサ1001、主記憶装置1002、補助記憶装置1003、インタフェース1004を備える。
【0078】
上述の学習装置90は、コンピュータ1000に実装される。そして、上述した各処理部の動作は、プログラム(学習プログラム)の形式で補助記憶装置1003に記憶されている。プロセッサ1001は、プログラムを補助記憶装置1003から読み出して主記憶装置1002に展開し、当該プログラムに従って上記処理を実行する。
【0079】
なお、少なくとも1つの実施形態において、補助記憶装置1003は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD-ROM(Compact Disc Read-only memory )、DVD-ROM(Read-only memory)、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ1000に配信される場合、配信を受けたコンピュータ1000が当該プログラムを主記憶装置1002に展開し、上記処理を実行してもよい。
【0080】
また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置1003に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0081】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0082】
(付記1)リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力手段と、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定手段と、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する更新手段とを備えた
ことを特徴とする学習装置。
【0083】
(付記2)更新手段は、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新する
付記1記載の学習装置。
【0084】
(付記3)更新手段は、パラメータ更新後のワッサースタイン距離が大きくなるように、一回前の更新時のワッサースタイン距離の勾配に対する今回の更新時のワッサースタイン距離の勾配の比の値と、一回前の更新時のステップ幅との積の値以下のステップ幅で報酬関数のパラメータを更新する
付記1または付記2記載の学習装置。
【0085】
(付記4)ワッサースタイン距離が収束したか否か判定する判定手段を備え、
ワッサースタイン距離が収束していないと判定された場合、推定手段は、熟練者の軌跡の確率分布と、更新された報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、更新手段は、推定された軌跡に基づいてワッサースタイン距離を最大にするように報酬関数のパラメータを更新する
付記1から付記3のうちのいずれか1つに記載の学習装置。
【0086】
(付記5)関数入力手段は、線形関数になるように特徴量が設定された報酬関数の入力を受け付ける
付記1から付記4のうちのいずれか1つに記載の学習装置。
【0087】
(付記6)リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付け、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定し、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する
ことを特徴とする学習方法。
【0088】
(付記7)非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新する
付記6記載の学習方法。
【0089】
(付記8)コンピュータに、
リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力処理、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定処理、および、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する更新処理
を実行させるための学習プログラムを記憶するプログラム記憶媒体。
【0090】
(付記9)コンピュータに、
更新処理で、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新させる
ための学習プログラムを記憶する付記8記載のプログラム記憶媒体。
【0091】
(付記10)コンピュータに、
リプシッツ連続条件を満たすように特徴量が設定された報酬関数の入力を受け付ける関数入力処理、
熟練者の軌跡の確率分布と、前記報酬関数のパラメータに基づいて決定される軌跡の確率分布との距離を表わすワッサースタイン距離を最小にする軌跡を推定する推定処理、および、
推定された軌跡に基づいて前記ワッサースタイン距離を最大にするように前記報酬関数のパラメータを更新する更新処理
を実行させるための学習プログラム。
【0092】
(付記11)コンピュータに、
更新処理で、非拡大写像による更新則である非拡大写像勾配法を用いて報酬関数のパラメータを更新させる
付記10記載の学習プログラム。
【符号の説明】
【0093】
10 記憶部
20 入力部
30 特徴量設定部
40 重み初期値設定部
50 数理最適化実行部
60 重み更新部
70 収束判定部
100 学習装置
図1
図2
図3
図4
図5