日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

openssl 添加自定义算法_GitHub:用PyTorch实现17种深度强化学习算法

發(fā)布時間:2023/12/15 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 openssl 添加自定义算法_GitHub:用PyTorch实现17种深度强化学习算法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

【新智元導(dǎo)讀】深度強化學(xué)習(xí)已經(jīng)在許多領(lǐng)域取得了矚目的成就,并且仍是各大領(lǐng)域受熱捧的方向之一。本文推薦一個用 PyTorch 實現(xiàn)了 17 種深度強化學(xué)習(xí)算法的教程和代碼庫,幫助大家在實踐中理解深度 RL 算法。

深度強化學(xué)習(xí)已經(jīng)在許多領(lǐng)域取得了矚目的成就,并且仍是各大領(lǐng)域受熱捧的方向之一。本文推薦一個包含了 17 種深度強化學(xué)習(xí)算法實現(xiàn)的 PyTorch 代碼庫。

已實現(xiàn)的算法包括:

  • Deep Q Learning (DQN) (Mnih et al. 2013)
  • DQN with Fixed Q Targets (Mnih et al. 2013)
  • Double DQN (DDQN) (Hado van Hasselt et al. 2015)
  • DDQN with Prioritised Experience Replay (Schaul et al. 2016)
  • Dueling DDQN (Wang et al. 2016)
  • REINFORCE (Williams et al. 1992)
  • Deep Deterministic Policy Gradients (DDPG) (Lillicrap et al. 2016 )
  • Twin Delayed Deep Deterministic Policy Gradients (TD3) (Fujimoto et al. 2018)
  • Soft Actor-Critic (SAC & SAC-Discrete) (Haarnoja et al. 2018)
  • Asynchronous Advantage Actor Critic (A3C) (Mnih et al. 2016)
  • Syncrhonous Advantage Actor Critic (A2C)
  • Proximal Policy Optimisation (PPO) (Schulman et al. 2017)
  • DQN with Hindsight Experience Replay (DQN-HER) (Andrychowicz et al. 2018)
  • DDPG with Hindsight Experience Replay (DDPG-HER) (Andrychowicz et al. 2018 )
  • Hierarchical-DQN (h-DQN) (Kulkarni et al. 2016)
  • Stochastic NNs for Hierarchical Reinforcement Learning (SNN-HRL) (Florensa et al. 2017)
  • Diversity Is All You Need (DIAYN) (Eyensbach et al. 2018)
  • 所有的實現(xiàn)都能夠快速解決Cart Pole(離散動作)、Mountain Car (連續(xù)動作)、Bit Flipping(動態(tài)目標(biāo)的離散動作) 或Fetch Reach(動態(tài)目標(biāo)的連續(xù)動作) 等任務(wù)。本 repo 還會添加更多的分層 RL 算法。

    已實現(xiàn)的環(huán)境:

  • Bit Flipping 游戲 (Andrychowicz et al. 2018)
  • Four Rooms 游戲 (Sutton et al. 1998)
  • Long Corridor 游戲 (Kulkarni et al. 2016)
  • Ant-{Maze, Push, Fall} (Nachum et al. 2018)
  • 結(jié)果

    1. Cart Pole 和 Mountain Car

    下面展示了各種 RL 算法成功學(xué)習(xí)離散動作游戲 Cart Pole 或連續(xù)動作游戲 Mountain Car 的結(jié)果。使用 3 個隨機種子運行算法的平均結(jié)果如下圖所示,陰影區(qū)域表示正負(fù) 1 標(biāo)準(zhǔn)差。使用的超參數(shù)可以在results/cart_pol .py和results/Mountain_Car.py文件中找到。

    2. 事后經(jīng)驗重演 (HER) 實驗

    下面展示了 DQN 和 DDPG 在 Bit Flipping (14 bits) 和 Fetch Reach 環(huán)境中的表現(xiàn),這些環(huán)境在論文 Hindsight Experience Replay 和 Multi-Goal Reinforcement Learning 中有詳細(xì)描述。這些結(jié)果復(fù)現(xiàn)了論文中發(fā)現(xiàn)的結(jié)果,并展示了添加 HER 可以如何讓一個 agent 解決它原本無法解決的問題。請注意,在每對 agents 中都使用了相同的超參數(shù),因此它們之間的唯一區(qū)別是是否使用了 hindsight。

    3. 分層強化學(xué)習(xí)實驗

    下圖左邊的結(jié)果顯示了在 Long Corridor 環(huán)境中 DQN 和 Kulkarni 等人在 2016 年提出的 hierarchy -DQN 算法的性能。該環(huán)境要求 agent 在返回之前走到走廊的盡頭,以便獲得更大的獎勵。這種延遲滿足和狀態(tài)的混疊使得它在某種程度上是 DQN 不可能學(xué)習(xí)的游戲,但是如果我們引入一個元控制器 (如 h-DQN) 來指導(dǎo)低層控制器如何行動,就能夠取得更大的進展。這與論文中發(fā)現(xiàn)的結(jié)果一致。

    下圖右邊的結(jié)果顯示了 Florensa 等人 2017 年提出的 DDQN 算法和用于分層強化學(xué)習(xí)的隨機神經(jīng)網(wǎng)絡(luò) (SNN-HRL) 的性能。使用 DDQN 作為比較,因為 SSN-HRL 的實現(xiàn)使用了其中的 2 種 DDQN 算法。

    用法

    存儲庫的高級結(jié)構(gòu)是:

    ├── agents ├── actor_critic_agents ├── DQN_agents ├── policy_gradient_agents└── stochastic_policy_search_agents ├── environments ├── results └── data_and_graphs ├── tests ├── utilities └── data structures

    i) 觀看智能體學(xué)習(xí)上述游戲

    觀看所有不同的智能體學(xué)習(xí) Cart Pole,請遵循以下步驟:

    git clone https://github.com/p-christ/Deep_RL_Implementations.git cd Deep_RL_Implementationsconda create --name myenvname y conda activate myenvnamepip3 install -r requirements.txtpython Results/Cart_Pole.py

    對于其他游戲,將最后一行更改為結(jié)果文件夾中的其他文件就行。

    ii) 訓(xùn)練智能體實現(xiàn)另一種游戲

    Open AI gym 上的環(huán)境都是有效的,你所需要做的就是更改config.environment字段。

    如果你創(chuàng)建了一個繼承自 gym.Env 的單獨類,那么還可以使用自己的自定義游戲。請參閱Environments/Four_Rooms_Environment.py自定義環(huán)境的示例,然后查看腳本Results/Four_Rooms.py了解如何讓 agents 運行環(huán)境。

    GitHub 地址:

    p-christ/Deep-Reinforcement-Learning-Algorithms-with-PyTorch?github.com

    總結(jié)

    以上是生活随笔為你收集整理的openssl 添加自定义算法_GitHub:用PyTorch实现17种深度强化学习算法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。