(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023165310
(43)【公開日】2023-11-15
(54)【発明の名称】学習装置、学習方法及び学習プログラム
(51)【国際特許分類】
G06N 20/00 20190101AFI20231108BHJP
【FI】
G06N20/00
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022076198
(22)【出願日】2022-05-02
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和2年度、防衛装備庁、請負事業、産業技術力強化法第17条の適用を受ける特許出願
(71)【出願人】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】片岡 裕次郎
(72)【発明者】
【氏名】伊藤 雅幸
(72)【発明者】
【氏名】松波 夏樹
(57)【要約】 (修正有)
【課題】学習中の学習モデルの中から性能が良い学習モデルを適切に選定することができる学習装置、学習方法及び学習プログラムを提供する。
【解決手段】エージェントの学習モデルを学習させるための学習装置10であって、学習部は、エージェントが所定の環境において付与される報酬が最大となるように学習モデルを学習させる強化学習部と、学習モデルの第1指標値と第2指標値とを算出する評価指標値算出部と、学習ステップ数が所定以上の学習モデルを学習済みモデルとして抽出するモデル抽出部と、を備える。モデル抽出部は、学習済みモデルのうち、第1指標値と第2指標値との各々が所定の条件を満たす学習済みモデルを、評価対象の学習済みモデルとして選定する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
エージェントの学習モデルを学習させるための学習装置であって、
前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させる強化学習部と、
前記学習モデルの第1指標値と第2指標値とを算出する評価指標値算出部と、
学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するモデル抽出部と、を備え、
前記モデル抽出部は、前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定する、学習装置。
【請求項2】
前記評価指標値算出部は、前記学習モデルの積算勝率値と、累積報酬値とを算出する、
請求項1に記載の学習装置。
【請求項3】
前記モデル抽出部は、前記累積報酬値が所定以上の前記学習済みモデルを評価対象の前記学習済みモデルとして選定する、
請求項2に記載の学習装置。
【請求項4】
前記モデル抽出部は、学習ステップ数に対する積算勝率値の傾きが正であり、微分値が所定以上となる範囲の前記学習済みモデルを評価対象の前記学習済みモデルとして選定する、
請求項2または3に記載の学習装置。
【請求項5】
エージェントの学習モデルを、学習装置を用いて学習させるための学習方法であって、
前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させるステップと、
前記学習モデルの第1指標値と第2指標値とを算出するステップと、
学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するステップと、
前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定するステップと、
を含む、学習方法。
【請求項6】
エージェントの学習モデルを、学習装置を用いて学習させるための学習プログラムであって、
前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させるステップと、
前記学習モデルの第1指標値と第2指標値とを算出するステップと、
学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するステップと、
前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定するステップと、
を前記学習装置に実行させる、学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、学習装置、学習方法及び学習プログラムに関する。
【背景技術】
【0002】
機械学習において、複数の機械学習モデルの中から予測精度の高い機械学習モデルを抽出する技術が知られている。例えば、特許文献1には、複数の学習モデルから、より高精度な学習モデルを、コンピュータの資源への負荷を低減しつつ、高速で自動的に抽出する技術が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
強化学習において、報酬が疎である問題や、高次元の状態を有する問題では、学習が安定しないため、学習の経過に伴い性能が良いモデルに収束するとは限らない。報酬が疎である問題は、学習を促すため設計者の経験則に基づき密な報酬を設計する必要があり報酬によっては、本来達成すべきことよりも報酬を獲得することを学習してしまうことがある。この場合、学習モデルは、獲得報酬は高いが性能が低いモデルに収束する可能性がある。一方で、収束には至らない、もしくは意図しないモデルに収束した場合でも、学習の過程で一時的に性能の良いモデルを得ることはあり得る。細目に学習中のモデルを評価する場合、学習中に学習処理を一時的に停止し、テストデータを用いて、汎化性能を確認する必要がある。そのため、膨大な計算時間を伴うと共に多くのコンピュータ資源を占有してしまうという課題がある。
【0005】
そこで、本開示は、学習中の学習モデルの中から性能が良い学習モデルを適切に選定することのできる学習装置、学習方法及び学習プログラムを提供することを課題とする。
【課題を解決するための手段】
【0006】
本開示の学習装置は、エージェントの学習モデルを学習させるための学習装置であって、前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させる強化学習部と、前記学習モデルの第1指標値と第2指標値とを算出する評価指標値算出部と、学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するモデル抽出部と、を備え、前記モデル抽出部は、前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定する。
【0007】
本開示の学習方法は、エージェントの学習モデルを、学習装置を用いて学習させるための学習方法であって、前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させるステップと、前記学習モデルの第1指標値と第2指標値とを算出するステップと、学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するステップと、前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定するステップと、を含む。
【0008】
本開示の学習プログラムは、エージェントの学習モデルを、学習装置を用いて学習させるための学習プログラムであって、前記エージェントが所定の環境において付与される報酬が最大となるように前記学習モデルを学習させるステップと、前記学習モデルの第1指標値と第2指標値とを算出するステップと、学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するステップと、前記学習済みモデルのうち、前記第1指標値と前記第2指標値との各々が所定の条件を満たす前記学習済みモデルを、評価対象の前記学習済みモデルとして選定するステップと、を前記学習装置に実行させる。
【発明の効果】
【0009】
本開示によれば、学習中の学習モデルの中から性能が良い学習モデルを適切に選定することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、本実施形態に係る学習モデルを用いた学習に関する説明図である。
【
図2】
図2は、実施形態に係る学習装置の構成例を示すブロック図である。
【
図4】
図4は、実施形態に係る学習済みモデル抽出処理の一例を示すフローチャートである。
【
図5】
図5は、実施形態に係る学習済みモデルを選定する方法を説明するための図である。
【発明を実施するための形態】
【0011】
以下に、本発明に係る実施形態を図面に基づいて詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。また、下記実施形態における構成要素には、当業者が置換可能かつ容易なもの、あるいは実質的に同一のものが含まれる。さらに、以下に記載した構成要素は適宜組み合わせることが可能であり、また、実施形態が複数ある場合には、各実施形態を組み合わせることも可能である。
【0012】
[実施形態]
本実施形態に係る学習装置10及び学習方法は、ハイパーパラメータを含む学習モデルを学習させる装置及び方法となっている。
図1は、本実施形態に係る学習モデルを用いた学習に関する説明図である。
図2は、実施形態に係る学習装置の構成例を示すブロック図である。
【0013】
(学習モデルを用いた学習)
先ず、
図1を参照して、学習モデルMを用いた学習について説明する。学習モデルMは、行動(アクション)Atを実行するエージェント2に搭載される。エージェント2となる対象としては、例えば、ロボット、車両、船舶または航空機等の動作を実行可能な機械が適用される。エージェント2は、学習モデルMを用いて、所定の環境4下において所定の行動Atを実行する。
【0014】
図1に示すように、学習モデルMは、複数のノードを有するニューラルネットワークとなっている。ニューラルネットワークは、複数のノードを結合したネットワークとなっており、複数の階層を有すると共に、各階層に複数のノードが設けられている。ニューラルネットワークのパラメータとしては、ノード間の重み及びバイアスがある。また、ニューラルネットワークのパラメータとしては、階層の層数、ノード数及び学習率等のハイパーパラメータがある。本実施形態では、学習モデルMのノード間の重み及びバイアスを学習している。
【0015】
次に、学習モデルMを用いた学習について説明する。学習としては、模倣学習と強化学習とがある。模倣学習は、教師あり学習であり、エージェント2が所定の環境4下において、所定の状態Stが入力された場合に、所定の行動Atを実行するように、学習モデルMのハイパーパラメータを学習している。強化学習は、教師なし学習であり、エージェント2が所定の環境4下において付与される報酬(リワード)Rtが最大となるように、学習モデルMのノード間の重み及びバイアスを学習している。
【0016】
強化学習では、エージェント2が、環境4から状態Stを取得し、また、環境4から報酬Rtを取得する。すると、エージェント2は、取得した状態St及び報酬Rtに基づいて、学習モデルMから行動Atを選択する。エージェント2が選択した行動Atを実行すると、環境4においてエージェント2の状態Stが、状態St+1に遷移する。また、エージェント2には、実行した行動At、遷移前の状態St及び遷移後の状態St+1に基づく報酬Rt+1が付与される。そして、強化学習では、エージェント2に付与される報酬Rtが最大となるように、上記の学習を評価可能な所定のステップ数分だけ繰り返す。
【0017】
学習装置10は、対称性環境および非対称性環境を問わず、競争的環境の強化学習におけるエージェントの行動の強化学習を実行する。学習装置10は、強化学習を試みる問題において、学習中に得られる評価指標(累積報酬、積算勝率等)を用いて予め性能が良いと思われる学習中モデルを抽出し、学習後に学習中に抽出したモデルのみ評価を行う。
【0018】
(比較例)
本実施形態を説明する前に、本実施形態の比較例について説明する。
図3は、比較例を説明するための図である。
【0019】
図3は、強化学習の実行結果の一例を示すグラフである。
図3において、横軸はステップ数を示し、縦軸は累積報酬を示す。
【0020】
比較例に係る技術では、例えば、
図3に示すようにグラフG1に基づいて、どのステップの学習済みモデルの性能が高いかを推定して、一定のステップ間隔で学習済みモデルを抽出する。そして、比較例に係る技術では、抽出した学習済みモデルと、評価基準となる対戦相手と複数回の対戦を行い、例えば、対戦相手との勝率で学習済みモデルの性能を評価する。
【0021】
比較例に係る技術は、学習済みモデルが、「獲得報酬は高いが性能が低いモデル」に収束する可能性がある。そのため、比較例に係る評価では、
図3に示すとおり、例えば、範囲R1内の累積報酬が比較的高い区間において、学習中に学習処理を一時的に停止し、テストデータを用いて、汎化性能を確認する必要がある。このため、比較例に係る技術は、膨大な計算時間を伴うと共に多くのコンピュータ資源を占有してしまう。また、比較例に係る技術では、学習の過程で一時的に性能の良いモデルが得られていたとしても評価せずに破棄されてしまっている。
【0022】
(学習装置)
図2に戻る。
図2に示すように、学習装置10は、環境部12と、記憶部14と、制御部16と、を備える。
【0023】
環境部12は、学習済みモデルに対して強化学習を実行するための環境を提供する。環境部12は、運動モデル20と、対戦モデル22と、環境モデル24と、報酬モデル26とを有する。環境部12は、運動モデル20と、対戦モデル22と、環境モデル24と、報酬モデル26とに基づいて、強化学習を実行するための環境を提供する。具体的には、環境部12は、学習済みモデルに対して報酬を付与したり、行動によって遷移する学習済みモデルの状態を導出したりする。
【0024】
記憶部14は、各種の情報を記憶するメモリである。記憶部14は、例えば、制御部16の演算内容、およびプログラムなどの情報を記憶する。記憶部14は、例えば、RAM(Random Access Memory)と、ROM(Read Only Memory)のような主記憶装置、HDD(Hard Disk Drive)などの外部記憶装置とのうち、少なくとも1つ含む。記憶部14は、強化学習モデル30を記憶している。
【0025】
強化学習モデル30は、強化学習における複数の学習済みモデルを含む。強化学習モデル30は、例えば、学習ステップごとに学習された複数の学習済みモデルを記憶する。
【0026】
制御部16は、学習装置10の各部の動作を制御する。制御部16は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、記憶部14などに記憶されたプログラムがRAM等を作業領域として実行されることにより実現される。制御部16は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。制御部16は、ハードウェアと、ソフトウェアとの組み合わせで実現されてもよい。
【0027】
制御部16は、設定部40と、学習部42と、を備える。
【0028】
設定部40は、機械学習を実行するための各種の条件を設定する。設定部40は、例えば、行動判断モデル(状態および行動)、報酬関数、深層強化学習アルゴリズム、モデルの粒度、ハイパーパラメータなどを設定する。
【0029】
学習部42は、学習モデルの学習を実行する。学習部42は、強化学習部50と、評価指標値算出部52と、モデル抽出部54と、を備える。
【0030】
強化学習部50は、環境部12から付与される報酬に基づいて学習を実行する。強化学習部50の詳細は、後述する。
【0031】
評価指標値算出部52は、学習済みモデルの性能を評価するための評価指標値を算出する。具体的には、評価指標値算出部52は、学習済みモデルの性能を評価するための第1評価指標値と、第1評価指標値とは異なる第2評価指標値との2つの評価指標値を算出する。評価指標値算出部52は、3つ以上の評価指標値を算出してもよい。評価指標値算出部52の詳細は、後述する。
【0032】
モデル抽出部54は、複数の学習済みモデルのうち、所定の条件を満たす学習済みモデルを抽出する。モデル抽出部54は、例えば、評価指標値算出部52が算出した評価指標値に基づいて、学習済みモデルを抽出する。モデル抽出部54の詳細は、後述する。
【0033】
(学習済みモデル抽出処理)
図4を用いて、実施形態に係る学習済みモデル抽出処理について説明する。
図4は、実施形態に係る学習済みモデル抽出処理の一例を示すフローチャートである。
【0034】
設定部40は、強化学習を実行するためにハイパーパラメータを設定する(ステップS10)。そして、ステップS12に進む。本実施形態では、設定するハイパーパラメータは、予め適切な値が検討済みであるものとする。
【0035】
強化学習部50は、強化学習を実行する(ステップS12)。具体的には、強化学習部は、例えば、学習済みモデルに付与される報酬が最大化するように学習を実行する。そして、ステップS14に進む。
【0036】
評価指標値算出部52は、評価指標値を算出する(ステップS14)。具体的には、評価指標値算出部52は、累積報酬の値と、積算勝率の値とを評価指標値として算出する。そして、ステップS16に進む。
【0037】
強化学習部50は、強化学習を実行したステップ数が所定ステップ数以上であるか否かを判定する(ステップS16)。所定ステップ数は、扱う問題などに応じて任意に設定してよい。ステップ数が所定ステップ数以上であると判定された場合(ステップS16;Yes)、ステップS18に進む。ステップ数が所定ステップ数以上でないと判定された場合(ステップS16;No)、ステップS12に進む。すなわち、本実施形態では、所定ステップ数に到達するまでは、強化学習と、評価指標値の算出の処理を繰り返す。
【0038】
ステップS16でYesと判定された場合、モデル抽出部54は、学習済みモデルを抽出する(ステップS18)。具体的には、モデル抽出部54は、所定ステップ数以上に強化学習を実行した、学習済みモデルを全て抽出する。そして、ステップS20に進む。
【0039】
強化学習部50は、強化学習を実行したステップ数が最大ステップ数に到達したか否かを判定する(ステップS20)。最大ステップ数は、扱う問題などに応じて任意に設定してよい。ステップ数が最大ステップ数に到達したと判定された場合(ステップS20;Yes)、ステップS22に進む。ステップ数が最大ステップ数に到達したと判定されない場合(ステップS20;No)、ステップS18に進む。
【0040】
ステップS20でYesと判定された場合、モデル抽出部54は、学習済みモデルを選定する(ステップS22)。具体的には、モデル抽出部54は、累積報酬の値と、積算勝率の値との両方が所定の条件を満たす学習済みモデルを抽出する。
図5は、実施形態に係る学習済みモデルを選定する方法を説明するための図である。
図5の上の図は、横軸が学習ステップ数、縦軸が累積報酬を示すグラフである。
図5の下の図は、横軸が学習ステップ数、縦軸が積算勝率を示すグラフである。
図5において、グラフG1と、グラフG2とに示すように、範囲R11は、学習ステップ数に対する積算勝率の傾きが正であり、かつ微分値が所定以上の範囲を示す。グラフG1と、グラフG2とに示すように、範囲R12は、学習ステップ数に対する積算勝率の傾きが正であり、かつ微分値が所定以上の範囲を示し、累積報酬の値が所定以上の範囲を示す。この場合、モデル抽出部54は、範囲R12の学習済みモデルを、評価対象の学習済みモデルとして選定する、モデル抽出部54は、例えば、範囲R12の学習済みモデルを評価対象の学習済みモデルと選定する。モデル抽出部54は、例えば、累積報酬の値と、積算勝率の値との両方が所定の条件を満たさない学習済みモデルについては、破棄する。そして、ステップS24に進む。なお、モデル抽出部54は、選定した学習済みモデルを記憶部14に記憶させてよい。
【0041】
学習部42は、選定された学習済みモデルの評価を行う(ステップS24)。そして、
図4の処理を終了する。本実施形態では、学習中に汎化性能を確認することなくモデル抽出を行えるため、学習中の評価時間の削減が可能となる。また、本実施形態では、あらかじめ候補となるモデルを事前に抽出し、保存しておくことで、学習後の評価時間の削減が可能となる。
【0042】
本実施形態に記載の学習装置、学習方法及び学習プログラムは、例えば、以下のように把握される。
【0043】
第1の態様の学習装置は、エージェントの学習モデルを学習させるための学習装置10であって、エージェントが所定の環境において付与される報酬が最大となるように学習モデルを学習させる強化学習部50と、学習モデルの第1指標値と第2指標値とを算出する評価指標値算出部52と、学習ステップ数が所定以上の学習モデルを学習済みモデルとして抽出するモデル抽出部と、を備える。モデル抽出部54は、学習済みモデルのうち、第1指標値と第2指標値との各々が所定の条件を満たす学習済みモデルを、評価対象の前記学習済みモデルとして選定する。これにより、第1の態様の学習装置は、学習中の学習モデルの中から性能が良い学習モデルを適切に選定することができる。また、第1の態様の学習装置は、学習中に汎化性能を確認することなくモデル抽出を行えるため、学習中の評価時間を削減することができる。また、第1の態様の学習装置は、あらかじめ候補となるモデルを事前に抽出し、保存しておくことで、学習後の評価時間を削減することができる。
【0044】
第2の態様の学習装置は、評価指標値算出部52は、学習モデルの積算勝率値と、累積報酬値とを算出する。これにより、第2の態様の学習装置は、学習モデルの性能を評価する指標値として、学習モデルの積算勝率値と、累積報酬値とを用いることができる。
【0045】
第3の態様の学習装置は、モデル抽出部54は、累積報酬値が所定以上の学習済みモデルを評価対象の学習済みモデルとして選定する。これにより、第3の態様の学習装置は、学習中の学習モデルの中から性能が良い学習モデルをより適切に選定することができる。
【0046】
第4の態様の学習装置は、モデル抽出部54は、学習ステップ数に対する積算勝率値の傾きが正であり、微分値が所定以上となる範囲の前記学習済みモデルを評価対象の学習済みモデルとして選定する。これにより、第5の態様の学習装置は、学習中の学習モデルの中から性能が良い学習モデルをより適切に選定することができる。
【0047】
第5の態様の学習装置は、エージェントの学習モデルを、学習装置を用いて学習させるための学習方法であって、エージェントが所定の環境において付与される報酬が最大となるように学習モデルを学習させるステップと、学習モデルの第1指標値と第2指標値とを算出するステップと、学習ステップ数が所定以上の学習モデルを学習済みモデルとして抽出するステップと、学習済みモデルのうち、第1指標値と第2指標値との各々が所定の条件を満たす学習済みモデルを、評価対象の学習済みモデルとして選定するステップと、を含む。
【0048】
第6の態様の学習プログラムは、エージェントの学習モデルを、学習装置を用いて学習させるための学習プログラムであって、エージェントが所定の環境において付与される報酬が最大となるように学習モデルを学習させるステップと、学習モデルの第1指標値と第2指標値とを算出するステップと、学習ステップ数が所定以上の前記学習モデルを学習済みモデルとして抽出するステップと、学習済みモデルのうち、第1指標値と第2指標値との各々が所定の条件を満たす学習済みモデルを、評価対象の学習済みモデルとして選定するステップと、を学習装置に実行させる。
【0049】
以上、本開示の実施形態を説明したが、これら実施形態の内容により本開示が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
【符号の説明】
【0050】
10 学習装置
12 環境部
14 記憶部
16 制御部
20 運動モデル
22 対戦モデル
24 環境モデル
26 報酬モデル
30 強化学習モデル
40 設定部
42 学習部
50 強化学習部
52 評価指標値算出部
54 モデル抽出部