JP7420236B2 - 学習装置、学習方法および学習プログラム - Google Patents

学習装置、学習方法および学習プログラム Download PDF

Info

Publication number
JP7420236B2
JP7420236B2 JP2022522086A JP2022522086A JP7420236B2 JP 7420236 B2 JP7420236 B2 JP 7420236B2 JP 2022522086 A JP2022522086 A JP 2022522086A JP 2022522086 A JP2022522086 A JP 2022522086A JP 7420236 B2 JP7420236 B2 JP 7420236B2
Authority
JP
Japan
Prior art keywords
target
learning
objective function
output
outputs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022522086A
Other languages
English (en)
Other versions
JPWO2021229625A5 (ja
JPWO2021229625A1 (ja
Inventor
大 窪田
力 江藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2021229625A1 publication Critical patent/JPWO2021229625A1/ja
Publication of JPWO2021229625A5 publication Critical patent/JPWO2021229625A5/ja
Application granted granted Critical
Publication of JP7420236B2 publication Critical patent/JP7420236B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/092Reinforcement learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Machine Translation (AREA)

Description

本発明は、ユーザの意思を反映した学習を行う学習装置、学習方法および学習プログラムに関する。
AI(Artificial Intelligence )技術の進歩により、熟練技術が必要な業務についても自動化が進められている。AIによる自動化には、予測や最適化に用いられる目的関数を適切に設定する必要がある。そこで、目的関数の定式化を簡素化する方法が各種提案されている。
定式化を簡素にする方法の一つとして、逆強化学習が知られている。逆強化学習は、熟練者が行った意思決定の履歴に基づいて、状態ごとに行動を評価する目的関数(報酬関数)を推定する学習方法である。逆強化学習では、意思決定の履歴を熟練者のものへ近づけるように報酬関数を更新していくことで、熟練者の報酬関数を推定する。
非特許文献1には、逆強化学習の一つである最大エントロピー逆強化学習について記載されている。非特許文献1に記載された方法では、熟練者のデータD={τ,τ,…τ}(ただし、τ=((s,a),(s,a),…,(s,a))であり、sは状態を表わし、aは行動を表わす。)からただ1つの報酬関数R(s,a,s´)=θ・f(s,a,s´)を推定する。この推定されたθを用いることで、熟練者の意思決定を再現できる。
なお、非特許文献2および非特許文献3には、順位付けされたデータを用いた学習方法が記載されている。
B. D. Ziebart, A. Maas, J. A. Bagnell, and A. K. Dey, "Maximum entropy inverse reinforcement learning", In AAAI, AAAI’08, 2008. Brown, Daniel S., et al., "Extrapolating beyond suboptimal demonstrations via inverse reinforcement learning from observations", Proceedings of the 36th International Conference on Machine Learning, PMLR 97:783-792, 2019. Castro, Pablo Samuel, Shijian Li, and Daqing Zhang., "Inverse Reinforcement Learning with Multiple Ranked Experts", arXiv preprint arXiv:1907.13411, 2019.
熟練者の意思決定を再現するためには、多くの意思決定履歴データを用いて目的関数を学習することが好ましい。一方、その時代の流行や社会課題、客層の変化などにより、業務における重要指標や最適性が変化することも多い。このような場合、非特許文献1に記載されたような逆強化学習や逆最適化により学習した目的関数も、その時代にあった真の目的関数とずれてしまう可能性がある。そのため、時代に即した意思決定履歴データを用いて、その都度目的関数を学習することが望まれる。
しかし、目的関数を再学習するにしても、常に意思決定履歴データを収集できるとは限らないため、時代に即したユーザの意思を適切に反映した目的関数を学習することは容易ではない。例えば、発生頻度が少ない意思決定に関するデータの収集は困難と言えるからである。
そこで、本発明は、ユーザの意思を反映した目的関数を学習できる学習装置、学習方法および学習プログラムを提供することを目的とする。
本発明による学習装置は、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力手段と、ユーザから受け付けた第二の対象に関する変更指示に基づいて、その第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力手段と、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力するデータ出力手段と、意思決定履歴データを用いて目的関数を学習する学習手段とを備えたことを特徴とする。
本発明による学習方法は、コンピュータが、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力し、コンピュータが、ユーザから受け付けた第二の対象に関する変更指示に基づいて、その第二の対象をさらに変更した結果の対象を示す第三の対象を出力し、コンピュータが、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力し、コンピュータが、意思決定履歴データを用いて目的関数を学習することを特徴とする。
本発明による学習プログラムは、コンピュータに、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力処理、ユーザから受け付けた第二の対象に関する変更指示に基づいて、その第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力処理、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力するデータ出力処理、および、意思決定履歴データを用いて目的関数を学習する学習処理を実行させることを特徴とする。
本発明によれば、ユーザの意思を反映した目的関数を学習できる。
本発明による学習装置の第一の実施形態の構成例を示すブロック図である。 対象を変更する処理の例を示す説明図である。 第一の実施形態の学習装置の動作例を示すフローチャートである。 本発明による学習装置の第二の実施形態の構成例を示すブロック図である。 意思決定履歴データの例を示す説明図である。 ユーザからの選択指示を受け付ける処理の例を示す説明図である。 第二の実施形態の学習装置の動作例を示すフローチャートである。 第二の実施形態の学習装置の変形例を示すブロック図である。 本発明による学習装置の概要を示すブロック図である。
以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
図1は、本発明による学習装置の第一の実施形態の構成例を示すブロック図である。本実施形態の学習装置は、変更する対象(以下、単に対象と記すこともある。)の変更実績を示す意思決定履歴データに基づいて逆強化学習を行う学習装置である。
以下の説明では、列車や航空機などのダイヤグラム(以下、運行ダイヤと記す。)を対象とし、運行ダイヤに対する変更実績を意思決定履歴データとして例示する。ただし、本実施形態で想定する対象は、運行ダイヤに限定されず、例えば、店舗の発注情報や、車両が備える各種装置の制御情報などであってもよい。
本実施形態の学習装置100は、記憶部10と、入力部20と、第一出力部30と、変更指示受付部40と、第二出力部50と、データ出力部60と、学習部70とを備えている。
記憶部10は、本実施形態の学習装置100が処理に用いるパラメータや各種情報などを記憶する。また、本実施形態の記憶部10は、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を記憶する。また、記憶部10は、意思決定履歴データそのものを記憶していてもよい。
入力部20は、変更する対象(すなわち、対象)の入力を受け付ける。例えば、運行ダイヤを対象とした場合、入力部20は、変更の対象とする運行ダイヤの入力を受け付ける。なお、入力部20は、例えば、ユーザ等の指示に応じて、記憶部10に記憶されている対象を取得してもよい。
第一出力部30は、入力部20が受け付けた変更の対象(以下、第一の対象と記す。)に対する上記目的関数を用いた最適化結果(以下、第二の対象と記す。)を出力する。なお、第一出力部30は、最適化処理に用いた目的関数を合わせて出力してもよい。
図2は、第一出力部30が対象を変更する処理の例を示す説明図である。図2に例示する対象は運行ダイヤであり、第一出力部30による最適化処理の結果、変更の対象である運行ダイヤD1が、運行ダイヤD2に変更されたことを示す。なお、図2に示す例では、変更箇所を点線で示している。
変更指示受付部40は、第二の対象を出力する。変更指示受付部40は、例えば、第二の対象を表示装置(図示せず)に表示してもよい。そして、変更指示受付部40は、出力した第二の対象に関する変更指示をユーザから受け付ける。なお、変更指示を行うユーザとは、例えば、対象の分野の熟練者である。
第二の対象を変更するために必要な情報であれば、変更指示の内容は任意である。以下、変更指示の具体例を説明する。本実施形態では、三種類の変更指示の態様を説明する。第一の態様は、出力された第二の対象に対する直接的な変更指示である。例えば、対象が運行ダイヤの場合、第一の態様による変更指示は、例えば、運行時刻の変更や運行便の変更などが挙げられる。
第二の態様は、第一の対象を変更する際に用いられた目的関数に対する変更指示である。ここで、目的関数が線形式で表わされる場合を想定すると、第二の態様による変更指示は、目的関数に含まれる説明変数の重みを変更する指示である。目的変数が線形式で表わされる場合、各説明変数の重みは、その説明変数を重要視する度合いを示すものである。そのため、目的変数に含まれる説明変数の重みの変更指示は、対象を変更する観点を修正する指示であると言える。
変更指示受付部40は、変更する説明変数の値の指定を受け付けてもよく、現在の説明変数に対する変更度合い(例えば、倍率等)の指定を受け付けてもよい。
第三の態様も、第一の対象を変更する際に用いられた目的関数に対する変更指示である。第三の態様による変更指示は、目的関数に説明変数を追加する指示である。説明変数の追加は、当初想定していなかった特徴量を考慮すべき要素として加える指示であると言える。特徴量(説明変数)の選別や作成等は、予めユーザ(運用者)によって行われる。
以下、新規の特徴量(説明変数)を目的関数へ反映する具体的方法を説明する。本実施形態では、変更前の特徴量ベクトルをφ(x)とする。ここで、xは、最適化を行うときの対象の状態を表わし、各特徴量は、状態xによって変化する最適指標とみなすことができる。また、最適化に用いられる目的関数が、J(x)=θ・φ(x)の形式で表わされるものとする。
また、新規に追加される特徴ベクトルをφ(x)とする。ここで、φ(x)≡(φ(x),φ(x))およびθ≡(θ,θ)を定義する。このとき、新たな目的関数は、J=θ・φ(x)と定義される。
第二出力部50は、ユーザから受け付けた第二の対象に関する変更指示に基づいて、その第二の対象をさらに変更した結果の対象(以下、第三の対象)を出力する。すなわち、第二出力部50は、受け付けた変更指示に応じた結果を出力する。
例えば、上記第一の態様による変更指示(すなわち、第二の対象に対する直接的な変更指示)をユーザから受け付けたとする。この場合、第二出力部50は、受け付けた変更指示に基づく結果の対象そのものを第三の対象として出力する。
また、上記第二の態様による変更指示(すなわち、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示)をユーザから受け付けたとする。この場合、第二出力部50は、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する。
また、上記第三の態様による変更指示(すなわち、目的関数に新たな説明変数を追加する変更指示)をユーザから受け付けたとする。この場合、第二出力部50は、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する。
データ出力部60は、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力する。具体的には、データ出力部60は、目的関数の学習に用いることができる態様で意思決定履歴データを出力すればよい。また、データ出力部60は、例えば、意思決定履歴データを記憶部10に記憶させてもよい。以下の説明では、データ出力部60が出力したデータのことを、再学習用データと記すこともある。
学習部70は、出力された意思決定履歴データを用いて目的関数を学習する。具体的には、学習部70は、出力された意思決定履歴データを用いて、第一の対象を変更する際に用いられた目的関数を再学習する。
なお、第一の態様による変更指示および第二の態様による変更指示では、目的変数に含まれる説明変数(特徴量)の種類自体に変更はないため、学習部70は、既存の目的関数について行った学習と同様の方法で再学習すればよい。
一方、第三の態様による変更指示の場合、学習部70は、追加された説明変数を含む目的関数について再学習を行う。例えば、変更前の目的関数(すなわち、新規特徴量を追加する前の目的関数)は、一度はその目的関数を用いて運用が行われていたことから、真の目的関数に近いと想定される。
そこで、学習部70は、上述の具体例において、再学習の際のθをθ=(θ,0)(すなわち、θ=0)として初期推定し、逆強化学習アルゴリズムに基づいて再学習を行ってもよい。初期推定が真のθに近いため、このように推定することで、計算時間を短縮することが可能になる。ただし、初期推定の方法は、上記の方法に限定されない。
入力部20と、第一出力部30と、変更指示受付部40と、第二出力部50と、データ出力部60と、学習部70とは、プログラム(学習プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit))によって実現される。
例えば、プログラムは、記憶部10に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、入力部20、第一出力部30、変更指示受付部40、第二出力部50、データ出力部60および学習部70として動作してもよい。また、入力部20、第一出力部30、変更指示受付部40、第二出力部50、データ出力部60および学習部70の各機能がSaaS(Software as a Service )形式で提供されてもよい。
また、入力部20と、第一出力部30と、変更指示受付部40と、第二出力部50と、データ出力部60と、学習部70とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
また、入力部20、第一出力部30、変更指示受付部40、第二出力部50、データ出力部60および学習部70の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
なお、第一出力部30が変更する対象を出力し、変更指示受付部40が出力した対象に対する変更指示を受け付け、第二出力部50が変更指示に基づいて変更後の対象を出力し、データ出力部60が変更実績を意思決定履歴データとして出力することで、新たな意思決定履歴データ(再学習用データ)が生成される。そのため、第一出力部30と、変更指示受付部40と、第二出力部50と、データ出力部60とを含む装置110を、データ生成装置と言うことができる。
この場合、第一出力部30と、変更指示受付部40と、第二出力部50と、データ出力部60とは、プログラム(データ生成プログラム)に従って動作するコンピュータのプロセッサによって実現されてもよい。
次に、本実施形態の学習装置100の動作を説明する。図3は、本実施形態の学習装置100の動作例を示すフローチャートである。入力部20は、変更する対象の入力を受け付ける(ステップS11)。第一出力部30は、目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する(ステップS12)。変更指示受付部40は、第二の対象に関する変更指示を受け付ける(ステップS13)。第二出力部50は、ユーザから受け付けた第二の対象に関する変更指示に基づいて第三の対象を出力する(ステップS14)。データ出力部60は、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力する(ステップS15)。そして、学習部70は、出力された意思決定履歴データを用いて目的関数を学習する(ステップS16)。
以上のように、本実施形態では、第一出力部30が目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力し、第二出力部50が、ユーザから受け付けた第二の対象に関する変更指示に基づいて第三の対象を出力する。そして、データ出力部60が、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力し、学習部70が、出力された意思決定履歴データを用いて目的関数を学習する。よって、ユーザの意思を反映した目的関数を学習できる。
実施形態2.
次に、本発明の学習装置の第二の実施形態を説明する。第二の実施形態の学習装置も、変更する対象の変更実績を示す意思決定履歴データに基づいて逆強化学習を行う学習装置である。
図4は、本発明による学習装置の第二の実施形態の構成例を示すブロック図である。本実施形態の学習装置200は、記憶部11と、入力部21と、対象出力部31と、選択受付部41と、データ出力部61と、学習部71とを備えている。
記憶部11は、本実施形態の学習装置200が処理に用いるパラメータや各種情報などを記憶する。また、本実施形態の記憶部11は、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された複数の目的関数を記憶する。また、記憶部11は、意思決定履歴データそのものを記憶していてもよい。
入力部21は、変更する対象(すなわち、第一の対象)の入力を受け付ける。第一の実施形態と同様、例えば、運行ダイヤを対象とした場合、入力部21は、変更の対象とする運行ダイヤの入力を受け付ける。なお、入力部21は、例えば、ユーザ等の指示に応じて、記憶部11に記憶されている対象を取得してもよい。
また、入力部21は、記憶部11から意思決定履歴データを取得し、対象出力部31に入力してもよい。なお、意思決定履歴データが外部装置(図示せず)に記憶されている場合、入力部21は、通信回線を介して外部装置から意思決定履歴データを取得してもよい。
対象出力部31は、記憶部11に記憶された一つまたは複数の目的関数を用いた第一の対象に対する最適化結果(第二の対象)を複数出力する。すなわち、対象出力部31は、一つまたは複数の目的関数を用いた最適化により、第一の対象を変更した結果の対象を示す第二の対象を複数出力する。
対象出力部31が最適化に用いる目的関数を選択する方法は任意である。ただし、対象出力部31は、意思決定履歴データが示すユーザの意図をより反映した目的関数を優先的に選択することが好ましい。
ここで、φ(x)を目的関数を構成する特徴量(すなわち、最適化指標)とし、xを状態または1つの候補解とする。そして、逆強化学習における推定対象をθとした場合、目的関数Jは、J(θ,x)=f(θ,φ(x))と表わすことができる。そして、対象出力部31は、事前に蓄積された意思決定履歴データD(すなわち、入力された意思決定履歴データ)を用いて、尤度L(D|θ)を算出してもよい。なお、この尤度は、推定対象がθの場合における意思決定履歴データDの尤もらしさ(確率)を示す値と言える。
例えば、修正ダイヤをxとし、運行ダイヤの定数パラメータ値の組をyとしたときの特徴量ベクトルをφ(x)と記す。また、意思決定履歴データDは、D={(x,y),(x,y),…}と表わすことができる。図5は、意思決定履歴データの例を示す説明図である。図5に例示する意思決定履歴データは、列車の運行ダイヤの履歴データであり、各列車の各駅における計画と実績とを対応付けたデータの例である。
ここで、最大エントロピー逆強化学習の枠組みにおいて、対象出力部31は、尤度L(D|θ)を、以下に例示する式1に基づいて算出してもよい。式1において、|D|は、意思決定履歴データの数であり、Xは、定刻ダイヤyのもと、実現可能な修正ダイヤxの取り得る空間である。
Figure 0007420236000001
なお、本実施形態で用いられる目的関数の態様は任意である。目的関数が、f(θ,φ(x))=θ・φ(x)のように、θに関する線形式で表わされていてもよく、入力をφ(x)とし、出力を目的関数値とするディープニューラルネットワークで表わされていてもよい。なお、目的関数がディープニューラルネットワークで表わされている場合、θは、ニューラルネットワークのハイパーパラメータに対応する。いずれの場合も、θは、意思決定履歴データが示すユーザの意図を反映した値であるといえる。
そこで、対象出力部31は、上述する尤度L(D|θ)がより大きい目的関数を所定の数(例えば、2つなど)選択し、選択された目的関数を用いた最適化により、第一の対象を変更した第二の対象をそれぞれ出力してもよい。ただし、目的関数を選択する数は2つに限られず、3つ以上であってもよい。
なお、出力する第二の対象が似たような内容にならないように(すなわち、バラエティに富むように)するため、対象出力部31は、目的関数をランダムに選択して第二の対象を出力してもよい。さらに、逆強化学習で推定するθが尤度L(D|θ)を最大化する値であることから、対象出力部31は、∂L(D|θ)/∂θ=0(極大条件:θ微分が0)になるθのうち、尤度Dが高い上位N個のθ(すなわち、目的関数)を選択してもよい。
また、例えば、再学習前に推定されていた目的関数が、再学習時の真の目的関数と近いと仮定できるとする。この場合、対象出力部31は、最初の学習時に使用していた意思決定履歴データDprev、または、Dprevに再学習用データを加えた意思決定履歴データDを用いて尤度を計算してもよい。なお、ここで加えられる再学習用データには、後述するデータ出力部61により出力されたデータの他、第一の実施形態においてデータ出力部60が出力するような意思決定履歴データが含まれていても良い。そして、対象出力部31は、計算した尤度の値がある閾値以下の目的関数を、選択対象から除外してもよい。このようにすることで、再学習用データが少ないことによる見当違いなθを探索するコストを低減できるため、効率的に再学習することが可能になる。
選択受付部41は、出力された複数の第二の対象に対するユーザからの選択指示を受け付ける。なお、選択指示を行うユーザとは、例えば、対象の分野の熟練者である。例えば、対象が運行ダイヤの場合、選択受付部41は、変更された複数の運行ダイヤの中から、ユーザによる選択指示を受け付ける。図6は、第二の対象に対するユーザからの選択指示を受け付ける処理の例を示す説明図である。図6に示す例は、対象出力部31が異なる目的関数を用いて変更後の運行ダイヤA案と運行ダイヤB案を出力した後、選択受付部41がユーザからB案の選択指示を受け付けたことを示す。
データ出力部61は、変更前の第一の対象から、選択受付部41が受け付けた第二の対象への変更実績を意思決定履歴データとして出力する。具体的には、データ出力部61は、第一の実施形態と同様、目的関数の学習に用いることができる態様で意思決定履歴データを出力すればよい。また、データ出力部61は、例えば、意思決定履歴データを記憶部11に記憶させてもよい。また、第一の実施形態と同様、データ出力部61が出力したデータのことを、再学習用データと記すこともある。
学習部71は、出力された意思決定履歴データを用いて、候補になる1つまたは複数の目的関数を学習(再学習)する。学習部71は、候補となる各目的関数の下での最適解(最適化結果)のうち、予め定めた閾値よりも尤度の高い解を選択し、選択されたの解を含む意思決定履歴データを追加して再学習を行ってもよい。また、学習部71は、一部の目的関数について再学習を行ってもよく、すべての目的関数について再学習を行ってもよい。例えば、一部の目的関数について再学習を行う場合、学習部71は、所定の基準を満たす(例えば、尤度が閾値を超えるθ)目的関数についてのみ再学習を行ってもよい。また、学習部71は、再学習用データが十分溜まった後で、通常の逆強化学習と同様に目的関数を学習すればよい。
なお、初期段階では、対象出力部31により出力されるデータ(すなわち、ユーザに提示されるデータ)が、どれも真の目的関数から外れた目的関数を用いて出力されたデータであることも考えられる。しかし、ユーザによって、より好ましいデータ(最もマシなデータ)が選択され、再学習用データが追加されていく。そのため、推定精度は徐々に向上することになり、次のタイミングは、より真に近い目的関数により生成されたデータが選ばれるようになる。これを繰り返すことで、真の目的関数に近い目的関数で生成されたデータの割合が増えていくため、最終的には、生成された再学習用データにより、高精度な意図学習が可能になる。
また、複数のデータの中から熟練者の選択したデータは、他のデータよりも、真の目的関数に近い目的関数で生成されたデータであると言える。そこで、学習部71は、真の目的関数から生成されたデータに近い順に順位付けされたデータを用いて目的関数を学習してもよい。この場合、学習部71は、順位付けされたデータを用いた学習方法として、例えば、非特許文献2に記載された方法や、非特許文献3に記載された方法を用いてもよい。
入力部21と、対象出力部31と、選択受付部41と、データ出力部61と、学習部71とは、プログラム(学習プログラム)に従って動作するコンピュータのプロセッサによって実現される。第一の実施形態と同様、例えば、プログラムは、記憶部11に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、入力部21、対象出力部31、選択受付部41、データ出力部61および学習部71として動作してもよい。
また、対象出力部31が変更する対象を出力し、選択受付部41が出力した対象に対する選択指示を受け付け、データ出力部61が変更実績を意思決定履歴データとして出力することで、新たな意思決定履歴データ(再学習用データ)が生成される。そのため、対象出力部31と、選択受付部41と、データ出力部61とを含む装置210を、データ生成装置と言うことができる。
次に、本実施形態の学習装置200の動作を説明する。図7は、本実施形態の学習装置200の動作例を示すフローチャートである。対象出力部31は、一つまたは複数の目的関数を用いた第一の対象の最適化結果である第二の対象を複数出力する(ステップS21)。選択受付部41は、出力された複数の第二の対象に対するユーザからの選択指示を受け付ける(ステップS22)。データ出力部61は、第一の対象から、受け付けた第二の対象への変更実績を意思決定履歴データとして出力する(ステップS23)。そして、学習部71は、出力された意思決定履歴データを用いて目的関数を学習する(ステップS24)。
以上のように、本実施形態では、対象出力部31が、一つまたは複数の目的関数を用いた第一の対象の最適化結果である第二の対象を複数出力し、選択受付部41が、出力された複数の第二の対象に対するユーザからの選択指示を受け付ける。そして、データ出力部61が、第一の対象から、受け付けた第二の対象への変更実績を意思決定履歴データとして出力し、学習部71が、出力された意思決定履歴データを用いて目的関数を学習する。そのような構成によっても、ユーザの意思を反映した目的関数を学習できる。
次に、本実施形態の学習装置の変形例を説明する。第二の実施形態では、選択された第二の対象への変更実績を意思決定履歴データとして出力する場合について説明した。本変形例では、選択された第二の対象に関する変更指示をユーザから受け付けて再学習用データを生成する方法を説明する。
図8は、第二の実施形態の学習装置の変形例を示すブロック図である。本変形例の学習装置300は、記憶部11と、入力部21と、対象出力部31と、選択受付部41と、変更指示受付部40と、第二出力部50と、データ出力部60と、学習部71とを備えている。すなわち、本変形例の学習装置200は、第二の実施形態の学習装置300と比較し、データ出力部61に変えて、第一の実施形態の変更指示受付部40、第二出力部50およびデータ出力部60を備えている点において異なる。それ以外の構成については、第二の実施形態と同様である。
変更指示受付部40は、選択された第二の対象に関する変更指示をユーザから受け付ける。なお、変更指示の内容は、第一の実施形態と同様である。そして、第二出力部50は、第一の実施形態と同様、ユーザから受け付けた第二の対象に関する変更指示に基づいて第三の対象を出力し、データ出力部60は、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力する。
以上のように、本変形例では、第二の実施形態の構成に加え、第二出力部50が、ユーザから変更指示受付部40が受け付けた第二の対象に関する変更指示に基づいて第三の対象を出力する。そして、データ出力部60が、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力する。そのような構成によっても、ユーザの意思を反映した目的関数を学習できる。
次に、本発明の概要を説明する。図8は、本発明による学習装置の概要を示すブロック図である。本発明による学習装置80(例えば、学習装置100)は、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力手段81(例えば、第一出力部30)と、ユーザから受け付けた第二の対象に関する変更指示に基づいて、その第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力手段82(例えば、第二出力部50)と、第二の対象から第三の対象への変更実績を意思決定履歴データとして出力するデータ出力手段83(例えば、データ出力部60)と、意思決定履歴データを用いて目的関数を学習する学習手段84(例えば、学習部70)とを備えている。
そのような構成により、ユーザの意思を反映した目的関数を学習できる。
また、第二出力手段82は、の出力された第二の対象に対する直接的な変更指示(例えば、第一の態様による変更指示)をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力してもよい。
他にも、第二出力手段82は、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示(例えば、第二の態様による変更指示)をユーザから受け付け、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力してもよい。
他にも、第二出力手段82は、目的関数に説明変数を追加する変更指示(例えば、第三の態様による変更指示)をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力してもよい。
このとき、学習手段84は、追加された説明変数を含む目的関数を学習してもよい。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力手段と、ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力手段と、前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力するデータ出力手段と、前記意思決定履歴データを用いて前記目的関数を学習する学習手段とを備えたことを特徴とする学習装置。
(付記2)第二出力手段は、出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力する付記1記載の学習装置。
(付記3)第二出力手段は、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付け、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する付記1記載の学習装置。
(付記4)第二出力手段は、目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する付記1記載の学習装置。
(付記5)学習手段は、追加された説明変数を含む目的関数を学習する付記4記載の学習装置。
(付記6)対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力し、ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力し、前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力し、前記意思決定履歴データを用いて前記目的関数を学習することを特徴とする学習方法。
(付記7)出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力する付記6記載の学習方法。
(付記8)線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付け、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する付記6記載の学習方法。
(付記9)目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する付記6記載の学習方法。
(付記10)コンピュータに、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力処理、ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力処理、前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力するデータ出力処理、および、前記意思決定履歴データを用いて前記目的関数を学習する学習処理を実行させるための学習プログラムを記憶するプログラム記憶媒体。
(付記11)コンピュータに、第二出力処理で、出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力させるための学習プログラムを記憶する付記10記載のプログラム記憶媒体。
(付記12)コンピュータに、第二出力処理で、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力させるための学習プログラムを記憶する付記10記載のプログラム記憶媒体。
(付記13)コンピュータに、第二出力処理で、目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力させるための学習プログラムを記憶する付記10記載のプログラム記憶媒体。
(付記14)コンピュータに、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力処理、ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力処理、前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力するデータ出力処理、および、前記意思決定履歴データを用いて前記目的関数を学習する学習処理を実行させるための学習プログラム。
(付記15)コンピュータに、第二出力処理で、出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力させる付記14記載の学習プログラム。
(付記16)コンピュータに、第二出力処理で、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力させる付記14記載の学習プログラム。
(付記17)コンピュータに、第二出力処理で、目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力させる付記14記載の学習プログラム。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
10,11 記憶部
20,21 入力部
30 第一出力部
31 対象出力部
40 変更指示受付部
41 選択受付部
50 第二出力部
60,61 データ出力部
70,71 学習部
100,200,300 学習装置

Claims (10)

  1. 対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力手段と、
    ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力手段と、
    前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力するデータ出力手段と、
    前記意思決定履歴データを用いて前記目的関数を学習する学習手段とを備えた
    ことを特徴とする学習装置。
  2. 第二出力手段は、出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力する
    請求項1記載の学習装置。
  3. 第二出力手段は、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付け、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する
    請求項1記載の学習装置。
  4. 第二出力手段は、目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する
    請求項1記載の学習装置。
  5. 学習手段は、追加された説明変数を含む目的関数を学習する
    請求項4記載の学習装置。
  6. コンピュータが、対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力し、
    前記コンピュータが、ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力し、
    前記コンピュータが、前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力し、
    前記コンピュータが、前記意思決定履歴データを用いて前記目的関数を学習する
    ことを特徴とする学習方法。
  7. コンピュータが、出力された第二の対象に対する直接的な変更指示をユーザから受け付けて、受け付けた変更指示に基づく結果の対象を第三の対象として出力する
    請求項6記載の学習方法。
  8. コンピュータが、線形式で表わされた目的関数に含まれる説明変数の重みに対する変更指示をユーザから受け付け、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する
    請求項6記載の学習方法。
  9. コンピュータが、目的関数に説明変数を追加する変更指示をユーザから受け付けて、変更された目的関数を用いた最適化により、第二の対象を変更した結果として第三の対象を出力する
    請求項6記載の学習方法。
  10. コンピュータに、
    対象の変更実績を示す意思決定履歴データに基づく逆強化学習で予め生成された目的関数を用いた第一の対象に対する最適化結果である第二の対象を出力する第一出力処理、
    ユーザから受け付けた前記第二の対象に関する変更指示に基づいて、当該第二の対象をさらに変更した結果の対象を示す第三の対象を出力する第二出力処理、
    前記第二の対象から前記第三の対象への変更実績を意思決定履歴データとして出力するデータ出力処理、および、
    前記意思決定履歴データを用いて前記目的関数を学習する学習処理
    を実行させるための学習プログラム。
JP2022522086A 2020-05-11 2020-05-11 学習装置、学習方法および学習プログラム Active JP7420236B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/018767 WO2021229625A1 (ja) 2020-05-11 2020-05-11 学習装置、学習方法および学習プログラム

Publications (3)

Publication Number Publication Date
JPWO2021229625A1 JPWO2021229625A1 (ja) 2021-11-18
JPWO2021229625A5 JPWO2021229625A5 (ja) 2023-01-24
JP7420236B2 true JP7420236B2 (ja) 2024-01-23

Family

ID=78525971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022522086A Active JP7420236B2 (ja) 2020-05-11 2020-05-11 学習装置、学習方法および学習プログラム

Country Status (3)

Country Link
US (1) US20230281506A1 (ja)
JP (1) JP7420236B2 (ja)
WO (1) WO2021229625A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023188061A1 (ja) * 2022-03-30 2023-10-05 日本電気株式会社 トレーニング支援装置、トレーニング支援方法、トレーニング支援プログラム、学習装置、学習方法、および学習プログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190390867A1 (en) 2019-07-03 2019-12-26 Lg Electronics Inc. Air conditioner and method for operating the air conditioner

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190390867A1 (en) 2019-07-03 2019-12-26 Lg Electronics Inc. Air conditioner and method for operating the air conditioner

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
増山 岳人 ほか,逆強化学習による学習者の選好を考慮した報酬関数の推定,第32回日本ロボット学会学術講演会 ,2014年09月29日,1102~1104頁

Also Published As

Publication number Publication date
JPWO2021229625A1 (ja) 2021-11-18
WO2021229625A1 (ja) 2021-11-18
US20230281506A1 (en) 2023-09-07

Similar Documents

Publication Publication Date Title
CN113692609B (zh) 通过订单车辆分布匹配以订单派发的多代理增强学习
Walsh et al. Exploring compact reinforcement-learning representations with linear regression
Gosavi Reinforcement learning: A tutorial survey and recent advances
Dittrich et al. Cooperative multi-agent system for production control using reinforcement learning
Xiang et al. An expanded robust optimisation approach for the berth allocation problem considering uncertain operation time
CN113287124A (zh) 用于搭乘订单派遣的系统和方法
CN110348636B (zh) 路径规划预测方法、装置、设备和计算机可读存储介质
CN115409168A (zh) 神经网络优化方法及其装置
Palau et al. Collaborative prognostics in social asset networks
WO2018182442A1 (en) Machine learning system and method for generating a decision stream and automonously operating device using the decision stream
Weyns et al. Deep learning for effective and efficient reduction of large adaptation spaces in self-adaptive systems
JP7420236B2 (ja) 学習装置、学習方法および学習プログラム
Wang et al. Logistics-involved task scheduling in cloud manufacturing with offline deep reinforcement learning
Baert et al. Maximum causal entropy inverse constrained reinforcement learning
Gaidar et al. Mathematical method for optimising the transport and logistics industry
JP7464115B2 (ja) 学習装置、学習方法および学習プログラム
Pham et al. Hybrid Value Function Approximation for Solving the Technician Routing Problem with Stochastic Repair Requests
Soeffker et al. Adaptive state space partitioning for dynamic decision processes
WO2024068571A1 (en) Supply chain optimization with reinforcement learning
Huang et al. Network reliability evaluation of manufacturing systems by using a deep learning approach
JP6828830B2 (ja) 評価システム、評価方法および評価用プログラム
Workneh et al. Deep q network method for dynamic job shop scheduling problem
CN112200366B (zh) 负荷预测方法、装置、电子设备及可读存储介质
US20230314147A1 (en) Path generation apparatus, path planning apparatus, path generation method, path planning method, and non-transitory computer readable medium
CN114298870A (zh) 一种路径规划方法、装置、电子设备及计算机可读介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221026

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231225

R151 Written notification of patent or utility model registration

Ref document number: 7420236

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151