強化学習の例にドロップアウトレイヤーが表示されないのはなぜですか?


13

私は強化学習を検討しており、特にOpenAI Gym AIで使用するための独自の環境の作成をいじっています。stable_baselinesプロジェクトのエージェントを使用してテストしています。

ほぼすべてのRLの例で気付いたことの1つは、どのネットワークにもドロップアウトレイヤーが存在しないように見えることです。どうしてこれなの?

通貨価格をシミュレートする環境と、DQNを使用して、売買のタイミングを学習しようとする単純なエージェントを作成しました。1か月分の5分間の価格データからなる特定のデータセットから取得した、ほぼ100万時間を超えるトレーニングは、非常に適しているようです。次に、別の月のデータに対してエージェントとモデルを評価すると、わずかなパフォーマンスしか得られません。古典的なオーバーフィッティングのように聞こえます。

しかし、RLネットワークでドロップアウトレイヤーが表示されない理由はありますか?過剰適合を試みて対処する他のメカニズムはありますか?または多くのRLの例では問題ではありませんか?たとえば、「ブレイクアウト」ゲームで究極のハイスコアを達成するための真の方法は1つしかない可能性があるため、正確に学習し、一般化する必要はありません。

それとも、環境自体の無秩序な性質が、ドロップアウトレイヤーを用意する必要がない、結果のさまざまな組み合わせを提供するはずだと考えられていますか?


1
RLネットワークにドロップアウトを追加して、何が起こるか確認しましたか?私は(LunarLander_v2ソルバーが他の方法でうまく機能する場合)、結果はひどいものでした。400エピソードでの解決から、完全にそれを解決するのに失敗するまでです(そして他のパラメーターで多くのバリエーションを試しました)。その他の正則化も問題なく、有益です。なぜドロップアウトの問題がなぜここで質問することを考えていたのかはまだわかりません。。。
Neil Slater

ニール、はい、そこでのあなたの経験は、デニスが下で言っていることを反映しているようです。私が予想したように、「このパズルを解く」タイプのシナリオでは、特定のパズルを解決したいので、あなたは本当にオーバーフィットしようとしています。また、ゲーム内での動作が異なる可能性があるため、青いエイリアンと赤いエイリアンが遭遇したかどうかを知りたいとします。
Matt Hamilton

@MattHamilton私はたまたま、「RLの研究者がトレーニングデータを評価している」という話について誰かが作ったつぶやきのスレッドを見たことがあります。私はその回答へのリンクを編集しました。あなたの質問に答えるという点でポイントはまだ同じですが、私がそこにリンクした一連のつぶやきには真実はもう少しニュアンスがあることに同意します。
デニスSoemers

回答:


11

ドロップアウトは、本質的にもう少し分散をもたらします。教師あり学習環境では、これは実際、しばしば過剰適合を減らすのに役立ちます(ただし、ドロップアウトもすでに少なくなっていると私は信じていますが、その数年前よりも近年ファッショナブルになっています。専門分野)。

強化学習では、追加の分散は実際に求めているものではありません。取得する学習信号にはすでに大きな変動がある傾向があり、この変動はすでに学習の安定性や学習速度の主要な問題になる傾向があります。例えば:

  • アクション選択のランダム性は、私たちが観察するリターンの変動につながります
  • 環境自体に固有のランダム性がある可能性があり、観察結果に追加の分散が生じます(一部の環境は非決定的です)。
  • r+最高aQsar(教師あり学習で使用するような)グラウンドトゥルースの観測値であり、他の用語は私たち自身の予測です。学習プロセスの間、これらの後者の部分(私たち自身の予測)は時間とともに変化します。これは「動くターゲットです

Deep RLアルゴリズムの多くの重要な部分(これを使用しないと、トレーニングプロセスが経験的に不安定になり、故障することが判明します)はその差異を減らすために非常に調整されています。たとえば、DQNのターゲットネットワークは、移動ターゲットの問題を軽減するために特別に導入されました。この観点から見ると、他の手段(ドロップアウトなど)を通じてさらに人為的な分散を追加すると、パフォーマンスが低下したり、学習が不安定になったりするのは当然のことです。


過剰適合を試みて対処する他のメカニズムはありますか?または多くのRLの例では問題ではありませんか?たとえば、「ブレイクアウト」ゲームで究極のハイスコアを達成するための真の方法は1つしかない可能性があるため、正確に学習し、一般化する必要はありません。

現在の(ディープ)強化学習の研究の大部分では、過剰適合は確かに問題と見なされていません。RL調査の大部分は、1つの環境(たとえば、カートポール、ブレイクアウト、またはパックマンの1つの特定のレベル、または特定の迷路をナビゲートするなど)でのトレーニングと、その学習プロセス中のパフォーマンスの継続的な評価、または評価同じ環境でのこのような学習プロセス後のパフォーマンス。

その評価方法を教師あり学習で起こることと比較すると、基本的にはトレーニングセット*のパフォーマンスを評価しています。教師あり学習では、これは絶対に受け入れられませんが、RLでは、例外よりも受け入れられやすく、規則として扱われます。これは、現在のRL研究の問題であり、変更が必要なものだと言う人もいます。それは必ずしも問題ではないと主張することもできます。後で展開したいのとまったく同じ環境でエージェントを本当にトレーニングできる場合は、まあ、その環境に適合しすぎるとどうなるのでしょうか。

したがって、上記の評価方法論を使用している場合、実際には特定の1つの環境に過剰適合していますが、過剰適合は、評価基準によれば、悪いというよりはむしろ良好です。ただし、この方法では、一般化できるエージェントにつながらないことは明らかです。エージェントを特定の迷路をナビゲートするように一貫してトレーニングすると、トレーニング後に別の迷路をナビゲートできなくなる可能性があります。

*注:私の意見では、真実は、RLで実際に「トレーニングセットを評価している」よりも少し微妙です。たとえば、この素晴らしいツイートのスレッドを参照してください:https : //twitter.com/nanjiang_cs/status/1049682399980908544


通貨価格をシミュレートする環境と、DQNを使用して、売買のタイミングを学習しようとする単純なエージェントを作成しました。1か月分の5分間の価格データからなる特定のデータセットから取得した、ほぼ100万時間を超えるトレーニングは、非常に適しているようです。次に、別の月のデータに対してエージェントとモデルを評価すると、わずかなパフォーマンスしか得られません。古典的なオーバーフィッティングのように聞こえます。

ここで説明する評価方法は、実際には「より一般的な」評価方法には適合しないことに注意してください。環境の非定常性の概念ドリフトに問題があります。つまり、オーバーフィットが問題となる場合があります。

それでも、ドロップアウトが役立つかどうかはわかりません(それは、傷を付ける可能性がある追加の変動です)。何よりもまず、入力に時間/月を追跡する何らかの方法があることを確認する必要があります。これにより、少なくとも時間とともに変化するポリシーを学習する機会が得られます。「トレーニングフェーズ」と「評価フェーズ」の間に明確で明確な境界があり、概念のドリフトがその境界を越えて発生していることがわかっている場合(環境の動作がトレーニングフェーズと評価フェーズで異なることがわかっている)...実際には、評価フェーズでも十分に機能するトレーニングフェーズの経験からのみポリシーを学習することを望んでいません。その明確で堅固な境界線を取り除く必要があると思います。君は' 評価フェーズの間も学習を続けたいと思います。これにより、学習アルゴリズムは、変更された環境での経験を実際に収集し、それに適応することができます。


1
デニス、細かい返事をありがとうございました!多くのことは、私の疑いを私が思うことを確認します。つまり、より多くのRLが特定の環境で非常に特定の問題を解決しようとし、その問題に対する明確な「最善の」解決策が1つあることが多いことを確認します。
Matt Hamilton

2
@MattHamiltonより一般的な環境向けにRLに向けた調査があることに注意してください。そのことに興味がある場合は、「転移学習」と「強化学習」の組み合わせ、またはマルチタスクRL(多目的RLも興味深いかもしれませんが、おそらく少し異なるもの)を検索する必要があります。 )。ただし、これらの種類の取り組みは、一度に1つの環境でトレーニングおよび評価する従来のアプローチよりも、パフォーマンスが大幅に低下する傾向があります。
Dennis Soemers、2018年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.