안녕하세요?
가지가지 일이 있어서 오늘의 포스팅이 늦어졌습니다. 아무튼 간에 이러니 저러니 해도, 지난번 포스팅에서 약속드린 대로, 200에포크만 강화학습을 해서, 한번 과다하게 학습을 하게 되는 과적합을 한번 피해보고자, 학습하는 횟수인 에포크를 그냥 200으로 줄여서 강화학습을 7번 들어가서 그 결과를 시험해 보았습니다.
먼저 위 스크린샷에서 보이는 것처럼 yellowoperation을 해서 학습하는 전체 에포크 숫자를 위 스크린샷처럼 200으로 만들어 보았습니다.
먼저 첫번재 강화학습이 끝난 다음의 상황입니다. 일단 전체적인 학습 에포크가 줄어서 이런지는 모르겠습니다만, 지난번에 비해서 정말 짧은 시간이 걸린 것을 생각할 수 있습니다.
한번 더 강화학습을 했는 결과에서는 이렇게 나온건데, 이번에는 시간이 더 걸려서 2시간 가까이 걸린 것을 관측할 수 있었습니다.
3번재 강화학습의 결과입니다. 이번 결과에서는 위 스크린샷에서 보이는 것처럼 시간이 덜 걸려서 1시간 하고 8분이 걸린 것으로 어떻게 완료를 할 수 있었습니다.
4번째 강화학습에서도 시간이 그리 걸리지 않아서, 1시간 하고 조금 넘는 시간이 걸린 것으로 강화학습이 마무리가 되는 것을 확인할 수 있었습니다.
그런데 5번째 강화학습에서는 시간이 2배로 걸려서 2시간 가까이 걸리는 것을 확인할 수 있었습니다. 그래서 이게 상황에 따라서 하드웨어 가속이 잘 안되는 것이 아닌가 하는 생각이 들었습니다.
그리고 나서 7개의 모델을 얻은 다음에는 RLTrader를 가동시켜서 위 스크린샷처럼 셋팅을 하고 백테스트에 들어가 보려고 했습니다.
이렇게 해서 일단 첫번째 모델에서는 미미하지만 수익이 하루안에 나오는 것을 확인할 수 있었습니다. 일단 CS 홀딩스 주식은 하루안에 수익을 낼 수 없다고 나왔기 때문에, 이 정도만 해도 감지덕지가 아닌가 합니다.
그런데 나머지 6개의 모델을 가지고서 백테스트를 해본 결과, 위 스크린샷과 같이 2종류의 패턴으로 나오는 것이 아닌가 하는 의심이 들었습니다.
일단 그래프로 나온 결과를 보니, 실제로도 2가지 종류의 패턴으로 나오는 것을 확인할 수 있었습니다. 물론 이게 안 나올 수도 있지만, 과거의 결과를 보면 모델별로 다른 결과가 나오는 것을 생각해 보면, 이 200 에포크마져도 너무 많은게 아닌가 하는 생각이 들어서, 한번 강화학습이 어떻게 이루어 졌는지만 보고자 합니다.
먼저 첫번째 강화학습의 10, 50, 100, 200에포크의 결과입니다. 각각 살펴보면, 조금씩은 무언가 달라지는 것을 확인할 수 있었습니다.
다음으로는 2번째 몰델의 결과입니다. 일단 랜덤한 행동의 영향인지 다른 영향인지는 몰라도, 우선 위 스크린샷을 보시면 100에포크 까지는 다양한 패턴을 보이다가 200에포크에 가서는 전혀 아닌 것을 볼 수 있습니다.
3번째 강화학습 모델이 어떻게 학습을 했는지를 보여주는 화면입니다. 여기서도 마지막 200에포크에서는 그냥 매수만 하고 가만히 있는 것을 볼 수 있습니다만, 여기서도 첫번째 강화학습처럼 다양한 패턴을 보여주고 있는 것을 볼 수 있습니다.
4번재 강화학습의 결과인데, 여기서는 마지막 200에포크에서 다른 강화학습의 모델과는 다른 패턴을 보여주는 것을 볼 수 있었습니다.
그리고 5번째 모델을 봐도, 어떻게 된 것인지 100에포크에서는 전혀 다른 반응을 보이다가 200에포크에서 같은 패턴을 보여주고 있는 것을 볼 수 있었습니다.
여섯번째 강화학습의 과정인데, 문제는 위 스크린샷에 보이는 것처럼 여기서도 200에포크에 가까워 지면 질수록, 점점 다양하지 않은 반응을 보이기 시작합니다.
마지막으로 7번째 강화학습의 결과입니다. 여기서는 위 스크린샷에 보이는 것처럼 마지막 200에포크에서도 다양한 행동을 보이기는 합니다만, 이게 100% 백테스트에 반영이 되지는 않았습니다.
마지막으로 한번 원숭이 투자자(MT)를 해서, 한번 진짜로 이게 랜덤한 행동을 해도 2가지 종류의 패턴만 나오는 것인지 한번 보았습니다. 그 결과 여기서는 수익을 내지 못할 뿐이지, 다양한 행동 양상이 나오는 것을 볼 수 있었습니다. 아무래도 200에포크에서도 과적합이 일어난 것이 아닌가 합니다.
'무모한 도전-주식 인공지능 만들기' 카테고리의 다른 글
종목코드 002600으로 첫번째 시도를 했는 결과 (0) | 2019.02.25 |
---|---|
100에포크 강화학습과 부딪친 한계 (0) | 2019.02.24 |
500에포크로 강화학습을 시킨 결과와 또 다른 좌절 (0) | 2019.02.22 |
단타매매를 하기 위한 시도 중 찾아낸 새로운 오류 (0) | 2019.02.21 |
드디어 나온 1분봉 차트의 결과와 또 다른 시련 (0) | 2019.02.20 |