Deep q networks dqn

Van Q-tabel naar neuraal netwerk

Deep Q-Network (DQN) is een baanbrekend algoritme dat Q-learning schaalbaar maakt naar hoogdimensionale toestandsruimten. In plaats van een Q-tabel wordt een neuraal netwerk gebruikt om de Q-waarden te benaderen. Het netwerk neemt de toestand als invoer en geeft Q-waarden voor alle mogelijke acties als uitvoer. DQN werd in 2015 gepresenteerd door DeepMind en leerde Atari-spellen spelen op basis van alleen pixels en de score. Twee innovaties maakten dit mogelijk: experience replay en target networks. Experience replay slaat ervaringen (s, a, r, s') op in een buffer en samplet willekeurige batches voor training. Dit doorbreekt de temporele correlatie en stabiliseert het leren. Het target network is een kopie van het Q-netwerk dat minder vaak wordt bijgewerkt. Het wordt gebruikt om de target Q-waarden te berekenen, wat oscillaties en divergentie voorkomt. De verliesfunctie is de mean squared error tussen de voorspelde Q-waarde en de target: r + γ max_a' Q_target(s', a'). DQN gebruikt een ε-greedy beleid voor exploratie. Het algoritme is modelvrij en off-policy. Het heeft superhuman prestaties geleverd op vele Atari-spellen.

Uitdagingen en verbeteringen

DQN kent verschillende uitdagingen. Het kan Q-waarden overschatten, omdat de max-operatie in de target leidt tot een positieve bias. Double DQN lost dit op door de actie te selecteren met het online netwerk en de waarde te evalueren met het target netwerk. Prioritized Experience Replay geeft ervaringen met een hoge fout meer kans om gesampled te worden, wat de leer-efficiëntie verhoogt. Dueling DQN splitst de Q-waarde in een waarde voor de toestand en een voordeel per actie, wat helpt bij toestanden waarin de actie weinig uitmaakt. Noisy DQN voegt ruis toe aan de netwerkgewichten voor exploratie. Distributional DQN leert een distributie van Q-waarden in plaats van een enkel getal. Rainbow combineert al deze verbeteringen. DQN is vooral geschikt voor discrete actieruimten. Voor continue acties zijn policy-based methoden zoals DDPG, PPO of SAC nodig. DQN wordt toegepast in games, robotica en simulaties. Het blijft een mijlpaal in de geschiedenis van deep reinforcement learning en een populair startpunt voor onderzoekers.

Dit toepassen in
jouw bedrijf?

We vertalen het naar jouw processen en laten binnen een week een werkend prototype zien.