rlcode / reinforcement-learning-kr

[파이썬과 케라스로 배우는 강화학습] 예제
MIT License
371 stars 228 forks source link

breakout_a3c.py에서 업데이트 하는 모델 대상에 대한 문의 #16

Open ghost opened 6 years ago

ghost commented 6 years ago

안녕하세요?

breakout_a3c.py 소스코드를 보다 좀 이상한 점이 있어서 문의드립니다. A3C는 local model의 gradient를 training해서 global model로 weight를 복사해 주는 것인데요, 코드는 global model의 gradient를 training해서 local model로 복사해 주는 것으로 되어 있는 것 같습니다.

아래는 관련 코드입니다. self.train_model(done) self.update_local_model()

제가 잘못 이해하고 있는건지요??

zzing0907 commented 6 years ago

늦은 답변 죄송합니다! 말씀하신대로 저희 코드가 논문과는 조금 다른 부분이 있습니다. 원래 A3C는 local model의 gradient로 global model이 학습하고 local model이 학습된 global model의 weight를 가져오는 구조입니다. 그런데 저희가 테스트시 global model을 직접 학습하는 방법이 저희 코드상에서는 성능이 좋고 코드상으로도 간단하게 구현되서 편의상 이렇게 구현했습니다.

좋은 지적 감사합니다!