1. 学习
  2. /
  3. 课程
  4. /
  5. Python으로 배우는 Deep Reinforcement Learning

Connected

练习

기본 DQN 손실 함수

이제 select_action() 함수를 준비했으니, 에이전트를 학습시키기까지 마지막 한 단계만 남았어요. 바로 calculate_loss()를 구현하는 것입니다.

calculate_loss()는 에피소드의 임의의 단계에 대해 네트워크 손실을 반환합니다.

참고로, 손실은 다음과 같이 주어집니다:

다음 예시 데이터가 연습 문제에 로드되어 있습니다:

state = torch.rand(8)
next_state = torch.rand(8)
action = select_action(q_network, state)
reward = 1
gamma = .99
done = False

说明

100 XP
  • 현재 상태의 Q-값을 구하세요.
  • 다음 상태의 Q-값을 구하세요.
  • 목표 Q-값(TD-target)을 계산하세요.
  • 손실 함수, 즉 제곱 Bellman 오차를 계산하세요.