IMPALA

1分で読めます

IMPALA(Importance Weighted Actor-Learner Architecture):強化学習の分散アーキテクチャ

IMPALA とは一言で?

大規模・多タスクな強化学習を安定かつ効率的に実行するための分散型エージェントである.

IMPALA のアーキテクチャ

IMPALA のアーキテクチャ

IMPALA は Actor が軌跡を収集し Learner が一括学習することで,高スループットかつ安定した分散学習を可能にする構成

graph LR
subgraph Learner Side
L[Learner (GPU で勾配更新)]
end

subgraph Actor Cluster
A1[Actor 1<br>(軌跡収集)]
A2[Actor 2<br>(軌跡収集)]
A3[Actor 3<br>(軌跡収集)]
A4[Actor N<br>(軌跡収集)]
end

A1 -- 軌跡送信 --> L
A2 -- 軌跡送信 --> L
A3 -- 軌跡送信 --> L
A4 -- 軌跡送信 --> L

L -- 最新ポリシー送信 --> A1
L -- 最新ポリシー送信 --> A2
L -- 最新ポリシー送信 --> A3
L -- 最新ポリシー送信 --> A4

Actor は環境と対話して状態・行動・報酬の軌跡を収集

  • Learner は GPU 上でまとめて処理し,勾配更新
  • Actor は学習には関与せず,周期的に最新のパラメータを取得
  • 非同期かつ多対一の通信構造でスケーラブル