NIPS2017論文読み会に参加するので論文を読みたいと思います。今回読むのは以下です。

前回の最後で、 つまり環境モデルとプロキシ報酬所与の下での真の報酬の分布の式まで導出したねー。でも、この式に出てくる分母の計算が問題なんだ。



結構単純ですね。

ちょっと工夫するみたいだけどねー。それで、2つ目の方法は…その前に、逆強化学習に触れておかないとにゃー。瑞希ちゃん、逆強化学習(Inverse Reinforcement Learning; IRL)は知ってるかにゃ?

知りません。逆強化学習…逆…何が逆?

逆強化学習は、この論文の直接的な先行研究になるね。報酬関数って実はちゃんとわからないってゆー問題意識はこの論文と同じ。それで、逆強化学習では、理想的な行動を与えて、そこから報酬関数を推定しようとするんだよね。
- この論文(逆報酬デザイン;IRD)でも、真の報酬を推定する過程で、プロキシ報酬に基づいた方策がどんな行動系列を選択するかを考えるから、逆強化学習と逆報酬デザインはゴールが一緒でスタート地点が違うみたいな感じだねー。
IRL(逆強化学習) | 概ねよい行動 | → 真の報酬 | |
IRD(逆報酬デザイン) | 概ねよい報酬 → | 概ねよい行動 | → 真の報酬 |

行動のお手本を示して、報酬を逆算しようとするのですか。強化学習は報酬を与えて行動させる、逆強化学習は行動を与えて報酬を求める、確かに、逆です。…でも、理想的な行動がわかっているなら、そもそも強化学習が必要なのかって気もします。もちろん、理想的な行動のデータセットはあらゆる状況を網羅していないかもしれないので、一度報酬を逆算しなければどんな状況でも自動的に行動するエージェントをつくれないのかもしれません。でも、逆算した報酬はあくまで用意したデータセット上の行動を再現するだけなので、データセットに現れないような状況には、弱そう。そうなると、逆算した報酬で学習したエージェントをデプロイして、好ましくない行動をするようだったらそれを修正する行動をお手本に追加して報酬を逆算し直す、というような、反復が必要そう。

んー、その辺はなんか工夫していると思うんだけど、逆強化学習がどうやって報酬関数の精度を上げているかは、あたしもよく知らないんだよねー。でも、そーゆー、「報酬関数ってわからない、だから、理想的な行動を与えて報酬を逆算しちゃえ、でも、理想的な行動って与えきれる?」みたいな流れがあってこの論文があると思うんだよね。この論文のイントロはあくまで「報酬って設計ミスっちゃうよね」って感じなんだけど。でも、3節では先行研究に触れられていて、「究極的には IRL(逆強化学習)と IRD(逆報酬デザイン=この論文)は相互補完的につかいたい」ってあるんだ。

相互補完的に?

…上手い喩えじゃないかもしれないけど、ママの料理に、注文つけるとするじゃん。どうしてほしいのか明らかなときは「もっと塩を入れてよー」とか、具体的な行動の仕方を伝えればいいよね。それのが確実だし。でも、具体的にどうするべきかは明らかじゃないけど、おいしくないってゆーときもあるよね。そのときは「微妙」っていう評価を伝えるしかない。だから、ママっていうお料理エージェントには、行動の仕方を伝えるだけとか、評価を伝えるだけとかより、どっちも組み合せて伝えられた方がいい。ってゆーことじゃないかな。

なるほど、そうですね。人間相手でも、後輩に何か学んでもらうときなど、具体的なやり方を教えることも、評価を伝えることもありますね。



当ったり~♪ まさにここから逆強化学習にしちゃうんだ。でも、あるプロキシ報酬に基づいた方策から行動のお手本データをたくさん取るんじゃなくて、あくまで行動系列の特徴量の期待値に丸めちゃうから、近似解なんだけどねー。それで、逆強化学習(のベイズ的解法)では、いま言ってくれたように、行動系列上で積分するよー。この解法では、プロキシ報酬をどれくらい上手く設計できるかのパラメータ が、あるプロキシ報酬に基づいた方策から取り出すお手本データの個数に相当するって解釈ができるんだ。プロキシ報酬が上手く設計できるって信じているときほど、プロキシ報酬に基づいた方策からたくさんのお手本を取り出すから、そこから推定される真の報酬関数もプロキシ報酬をかなり再現したものになるってわけだねー。ここまで IRD の定義と解法までみてきたから、次回は、実際に IRD で強化学習タスク(実験的なタスクだけどね)を解いたら従来の解法に比べてどんな風によかったかってゆー検証のセクションをみていこう。

おー。