関数近似を使用するとQラーニングが収束しないのはなぜですか?


12

表形式のQ学習アルゴリズムは、学習率に関する以下の条件(Robbins-Monro条件)が満たされていれば、最適な関数を見つけることが保証されていますQQ

  1. Σtαtsa=
  2. Σtαt2sa<

ここで、は、タイムステップで状態およびアクション関連付けられた値を更新するときに使用される学習率を意味します。ここで、はtrueであると想定されます。すべての状態のとアクション。αtsaQsat0αtsa<1sa

明らかに、場合、2つの条件がtrueになるためには、すべての状態とアクションのペアに無限にアクセスする必要があります。これは、本の強化学習:はじめににも記載されています、これは広く知られている必要があるという事実とは別に、トレーニング中に -greedyポリシー(または同様のポリシー)を使用する根拠となっています。0αtsa<1ε

Qラーニングが最適な関数を見つけることを示す完全な証明は、ラーニングの収束:単純な証明(Francisco S. Melo)の論文にあります。彼は、収縮マッピングのような概念を使用して、この収縮演算子の固定小数点である最適な関数(強化学習におけるベルマン演算子とは?も参照)を定義します。彼はまた、いくつかの仮定を前提として、に収束するランダムプロセスに関する定理(n。2)を使用しています。(あなたが数学の人でないなら、証明は従うのが簡単ではないかもしれません。)QQQ0

関数を表すためにニューラルネットワークが使用されている場合、Q学習の収束保証は引き続き有効ですか?関数近似を使用するとQ学習が収束する(または収束しない)のはなぜですか?関数近似を使用したQ学習のそのような非収束の正式な証明はありますか?QQQ

私は、関数近似を使用するときにQラーニングの非収束の背後にある直感を与えるものから、形式的な証明(または形式的な証明のある論文へのリンク)を提供するものへのさまざまなタイプの回答を探しています。


2
すばらしい質問です。
John Doucette

あなたが参照した本は第11章でこの問題について説明しているので、読んでもよいでしょう。また、これが発生する正式な証拠はないと私は思いますが、単純な環境(Tsitsiklisやvan Royなど)でも相違を示す例はほとんどありません。
Brale_

回答:


8

これは直感的な説明の答えです:

関数近似は、パラメーター化可能な任意の関数で実行できます。Q(s,a)空間問題を考えます。ここで、sは正の実数で、a0または1で、真のQ関数はQ(s,0)=s2であり、Q(s,1)=2s2、すべての州。関数近似がQ(s,a)=ms+na+b、真のQ関数を正確に表すことができるパラメーターは存在しません(2次関数に直線を当てはめようとしています)。したがって、良い学習率を選択し、すべての状態を無限に頻繁に訪問したとしても、近似関数が真のQ関数に収束することはありません。

そしてここにもう少し詳細があります:

  1. ニューラルネットワークは関数を近似します。関数は、多かれ少なかれ複雑な多項式を使用して近似することにより、多かれ少なかれ近似することができます。テイラー級数近似に精通している場合、この考え方はかなり自然に見えるはずです。そうでない場合は、区間[0- π/2)にわたる正弦波のような関数について考えます。あなたはそれを(悪い)直線で近似することができます。2次曲線を使用すると、より適切に近似できます。曲線を近似するために使用する多項式の次数を増加させることにより、曲線にますます近似するものを得ることができます。
  2. ニューラルネットワークはユニバーサル関数近似です。つまり、関数がある場合は、作成した関数を任意の正確な程度に近似できるように十分に深いまたは広いニューラルネットワークを作成することもできます。ただし、選択した特定のネットワークトポロジは、それが無限に広いか、無限に深い場合を除き、すべての機能を学習することはできません。これは、適切なパラメーターを選択した場合、線が3点ではなく2点に収まる方法に似ています。特定の有限の幅または深さのネットワークを選択した場合、適切に適合させるためにさらにいくつかのニューロンを必要とする関数をいつでも構築できます。

  3. Qラーニングの境界は、Q関数の表現が正確な場合にのみ保持されます。理由を確認するために、線形補間でQ関数を近似することを選択したとします。真の関数がなんらかの形をとることができる場合、XORのようなQ関数関数を作成するだけで、内挿のエラーを際限なく大きくすることができ、余分な時間やデータによってこのエラーを減らすことはできません。 。あなたは関数近似し、真の機能を使用する場合は、フィットにしようとしているではありません関数が任意に適切に近似できるものである場合、学習率と探索率が適切に選択されていても、モデルは適切に収束しません。計算学習理論の用語を使用すると、Q学習の収束の証明は、真のQ関数がモデルを選択するための仮説空間のメンバーであると暗黙的に想定していると言えます。


「Qラーニングの範囲は、Q関数の表現が正確な場合にのみ保持される」と私が述べた証明からどこで確認できますか?
nbro

そこで、我々は、固定されたニューラルネットワークアーキテクチャを考えると、いくつかのニューラルネットワーク(アーキテクチャ)を使用して、任意の(合理的な)関数を近似することができますが、(私たちはのトレーニングフェーズの開始時に選択する必要がありますQ、-learning)Q -learning ZQ を表現するのに十分な表現力を持たない可能性があるため、その特定のアーキテクチャZを使用して収束しない可能性があります。ZQQZZQ
nbro

@nbro証明はそれを明示的に述べていませんが、Q関数の正確な表現を前提としています(つまり、正確な値がすべての状態/アクションのペアに対して計算され、保存される)。無限の状態空間の場合、この正確な表現が最悪の場合無限に大きくなる可能性があることは明らかです(簡単な例:Q(s、a)= piのs番目の桁)。あなたの2番目のコメントはそれをうまくまとめています。より正式には、真の仮説Q *がモデルを選択している仮説空間Hの要素でない場合、無限の時間またはデータがあってもQ *に収束できません。
John Doucette

4

私が知る限り、収束の欠如-またはさらに悪いことに、発散の危険性-が発生する理由を正確に正式に理解することは、未解決の問題です。これは通常、「致命的なトライアド」(サットンとバルトの本の第2版の11.3を参照)、次の組み合わせに起因します。

  1. 関数の近似、および
  2. ブートストラップ(Qラーニングによって行われる、トレーニングターゲットの計算に独自の値の推定を使用)、および
  3. ポリシー外のトレーニング(Qラーニングは実際にはポリシー外です)。

これは、収束の欠如および/または発散の危険性があるケースの(おそらく非網羅的な)説明を提供するだけですが、それでもそれらのケースで発生する理由はわかりません。


ジョンの答えは、問題の一部が関数近似の使用が真のQ関数を表すのに十分に強力ではない状況に簡単につながる可能性があるという直感をすでに提供しています。常に不可能である近似誤差があるかもしれません別の関数近似器に切り替えずに取り除くことができます。

個人的には、この直感は、アルゴリズムが最適解への収束を保証できない理由を理解するのに役立つと思いますが、与えられた最良の近似であるいくつかの「安定」解に「収束」できると直感的に期待します選択された関数表現に固有の制限。実際、これは、少なくとも線形関数近似器の場合は、実際にポリシーに基づいたトレーニング(Sarsaなど)に切り替えるときに観察されるものです。


Q(s,a)(s,a)Q、それらは通常、正しい「方向」に向かって更新されます。これは、直感的には、表形式の設定で、他のエントリに影響を与えることなく、エントリの誤りを徐々に徐々に修正していくことを期待しています。

Q(s,a)(s,a)Q


maxmax

Q(s,a)

Q(s,a)Q(s,a)+α[maxaQ(s,a)Q(s,a)].

maxaQ(s,a)QQ(s,a)maxaQ(s,a)


最後に、この質問に関連すると思われる別の(さらに最近の)論文は、Deep Q-learning Algorithmsでのボトルネックの診断ですが、残念ながら、十分に詳細に読んで適切に要約する時間はまだありません。


1
しかし、特定の状態がそれぞれに非常に類似しているという仮定のためにも、ニューラルネットワークの使用ではないでしょうか。非常によく似た状態(たとえば、ゲームの連続するフレーム)は非常によく似た(または同じ)最適なアクションを持っていることが多いため、最初の論文の説明が有効であるかどうかはわかりません(主なポイントを完全に理解するために読んでください)。
nbro

1
@nbroええ、多くの場合、一般化は、その理由のために問題よりもむしろ利点であると考えられています。「意図した」ものとして機能する場合、わずかに異なる状態/アクションごとに個別に学習するのではなく、学習したものを類似の状態/類似のアクションに転送するため、学習は非常に強力でスピードアップできます。しかし、それは特に理論上だけでなく実際にも問題を引き起こす可能性があります。それは私が思う「両刃の剣」のようなものです。
Dennis Soemers

1
@DennisSoemers超興味深い答え。非妄想的なQ学習ポイントは、非常に理にかなっています。正しいQ関数を見つけることは、更新規則の固定点を見つけることを意味しますが、このように考えると、関数の近似がQラーニングの周期的な更新につながる可能性があるように見えます。
John Doucette
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.