1. 学ぶ
  2. /
  3. コース
  4. /
  5. Pythonで学ぶDeep Reinforcement Learning

Connected

演習

Experience replay バッファ

これから、Experience Replay を支えるデータ構造を作成します。これにより、エージェントははるかに効率的に学習できるようになります。

この replay バッファは次の 2 つの操作をサポートする必要があります。

  • 将来のサンプリングに備えて、経験をメモリに保存する。
  • メモリから過去の経験をランダムにバッチ抽出して「再生」する。

replay バッファからサンプルされたデータはニューラルネットワークに入力されるため、利便性のために torch の Tensor を返すようにします。

torch と random モジュール、および deque クラスは演習環境にインポート済みです。

指示

100 XP
  • ReplayBuffer の push() メソッドを完成させ、experience_tuple をバッファのメモリに追加します。
  • sample() メソッドでは、self.memory からサイズ batch_size のランダムサンプルを取得します。
  • 同じく sample() で、最初はタプルのリストとして取得されるサンプルを、リストのタプルに変換します。
  • actions_tensor の形状を (batch_size) ではなく (batch_size, 1) に変換します。