CartPole DQN 강화학습 코드를 테스트 하던 중..epochs가 1로 설정되어 있음을 확인했다.
그 전에 공부했던 딥러닝에서는 epochs를 여러번 학습하도록 했었는데…DQN에서는 왜 1로 설정을 할까?…
이걸 100으로 바꾸면 어떨 결과가 나올까 싶어..테스트를 돌려봤다….
인내심이 없어서 길게 돌리진 않고, 짧게..
일단, epochs를 100으로 바꾸었을 때 결과이다.
episode: 67 score: 16.0 memory length: 1601 epsilon: 0.547550162317433
episode: 68 score: 18.0 memory length: 1620 epsilon: 0.5372398118510032
episode: 69 score: 9.0 memory length: 1630 epsilon: 0.531891525167934
episode: 70 score: 13.0 memory length: 1644 epsilon: 0.5244932528672183
episode: 71 score: 10.0 memory length: 1655 epsilon: 0.5187525878460405
episode: 72 score: 19.0 memory length: 1675 epsilon: 0.508475510208194
episode: 73 score: 10.0 memory length: 1686 epsilon: 0.5029101620180685
episode: 74 score: 50.0 memory length: 1737 epsilon: 0.47789260561247826
episode: 75 score: 11.0 memory length: 1749 epsilon: 0.47218933035690447
episode: 76 score: 18.0 memory length: 1768 epsilon: 0.46329802172888124
episode: 77 score: 15.0 memory length: 1784 epsilon: 0.45594059053811675
그리고 아래는 기본값인 1로 두었을 때 결과값이다.
episode: 67 score: 60.0 memory length: 1400 epsilon: 0.6695157201007336
episode: 68 score: 28.0 memory length: 1429 epsilon: 0.6503691570122084
episode: 69 score: 30.0 memory length: 1460 epsilon: 0.6305072317473174
episode: 70 score: 37.0 memory length: 1498 epsilon: 0.6069859307919768
episode: 71 score: 19.0 memory length: 1518 epsilon: 0.5949608504704863
episode: 72 score: 68.0 memory length: 1587 epsilon: 0.5552736652928869
episode: 73 score: 69.0 memory length: 1657 epsilon: 0.5177156014229363
episode: 74 score: 49.0 memory length: 1707 epsilon: 0.49245399387890804
episode: 75 score: 85.0 memory length: 1793 epsilon: 0.45185350084291465
episode: 76 score: 109.0 memory length: 1903 epsilon: 0.4047635127496183
episode: 77 score: 42.0 memory length: 1946 epsilon: 0.3877192375315819
확연한 성능차이가 발생한다. 심지어 epochs가 1일때 학습에 걸리는 시간은 더 줄어드는데도 말이다!..
아직 왜 그런지는 모르겠다………………………….;;
블로그에 글을 쓰는 입장에서 이유도 찾아봐야되는데..아직 못 찾음…
그래도 메모라도 해놔야지..다음에 이유를 알면 공유라도 할 수 있을 것 같아..일단 메모만 해둔다.