幾句話總結一個算法之DQN

  • DQN利用深度學習對Q-learning的一個擴展,回顧上篇文章,Q-learning的核心在於Q(s,a)的建模。若是狀態s很是複雜,很難經過一張表來存儲全部的狀態。網絡

  • 深度學習正好能夠自動提取s的特徵,因此咱們只須要對Q(s,a)創建一個深度學習網絡異步

  • 可是s多是一個極高維度的向量,a可能只低維度向量(如上下左右),建模起來可能有點困難函數

  • 解決的辦法是,對每一個動做a都建一個網絡。由於對於每一個網絡的a輸入的是個固定值,沒有任何信息量能夠忽略掉,問題就能夠簡化爲對每一個動做創建一個網絡來表示Q(s)學習

  • 更進一步簡化,這些網絡在特徵提取層能夠參數共享一塊兒訓練,在輸出層則輸出各自動做的指望獎勵,作法相似於如今的多任務學習spa

  • 與Q-learning原理相同,Q(s, a)表示了模型根據歷史數據的預測獎勵,而Q'(s,a)表示對當前行動的預測獎勵。一個好的模型,Q(s,a) 和 Q'(s,a)應該儘可能接近,用平方損失函數正好能夠表示深度學習

  • 其餘一些trick:experience replay 和 異步更新(Double DQN),作法都很直白,有須要能夠去了解下it

相關文章
相關標籤/搜索