본문 바로가기

프로그래밍377

1000에포크로 다시한번 강화학습 5회를 한 결과 안녕하세요? 일단 지난번 포스팅에서는 100회의 강화학습을 시켜 보았습니다만, 무언가 학습의 내용이 부족한 것인지 백 테스트 결과 전혀 수익을 내지 못하는 것을 보았습니다. 그래서 이게 강화학습의 횟수를 늘리는 김에 확실하게 늘려보자는 생각을 해서 한번 1000회로 늘려서 강화학습을 5회 하고, 강화학습의 모델들을 백테스트에 들어가 보았습니다. 먼저 위 스크린샷과 같이 yellowoperation에 가서, 100회로 되어 있던 것을 1000회로 더 올려주도록 합니다. 그리고 나서 구글 드라이브에 업로드 해 줍니다. 일단 강화학습의 횟수가 많아져서 이런 건지는 몰라도, 강화학습에 걸린 시간이 모두 3시간 가까이 걸리는 것을 확인할 수 있었습니다. 일단 이렇게 강화학습을 연속해서 진행을 하니, 점점 강화학습.. 2019. 3. 5.
100에포크로 다시한번 강화학습을 해본 결과 안녕하세요? 지난번 포스팅에서 그동안 저를 괴롭히던 문제를 해결을 하기는 했습니다. 이제는 제대로 된 학습 데이터를 바탕으로 해서 다시한번 구글 코랩에서 강화학습을 들어가 보고자 합니다. 먼저 yellowoperation프로젝트로 가서, 코드를 전부 수정해 주도록 합니다. 당연하다면 당연하게도 dropna()함수도 있다면 있는 것이고, 학습 데이터의 분리역시 만들어 주었습니다. 그리고 나서 학습 에포크의 횟수를 100으로 줄여서 한번 강화학습에 들어가 보고자 합니다. 일단 dropna()로 nan이 들어간 행을 제거한 덕분인지 학습데이터가 많이 줄어들었고, 그 덕분에 9분도 안 걸리는 것을 확인할 수 있었습니다. 잠시 시간이 흘렀고, 5개의 강화학습의 모델을 얻는데 성공하기는 성공했습니다. 이제 모두 구.. 2019. 3. 5.
드디어 해결된 오류와 그다지 기뻐할 것만도 아닌 결과 안녕하세요? 몇 포스팅 이전부터 계속해서 왜 인지 첫 주식 데이터에서 부터 결정을 하지 않는 에러가 보고가 되어 있었습니다. 그래서 이번에는 드디어 해결책을 찾아내는 데 성공했으며, 그 결과를 보여드리고자 합니다. 다만, 이 결과가 그렇게 까지 기뻐할 만한 결과만은 아니라는 점이 다소 아쉽기는 합니다. 먼저 인터넷상에 있는 RLTrader의 코드입니다. 이 코드에서는 자세히 보면 주식 데이터를 준비해서 datamanager.py에서 처리한 다음에 기간별로 자르고, 다음으로 학습 데이터 분리등이 일어납니다. 그런데 제 경우에는 반대로 먼저 기간별로 자르고 나서, datamanager.py에서 처리를 하는데, 이 때문에 문제가 생기는 것이 아닌가 하는 생각이 듭니다. 그래서 먼저 datamanager.py로.. 2019. 3. 4.
오류사냥을 위한 다양한 시도들과 실패 안녕하세요? 지난번에는 생각지도 못했던 오류가 실제로는 존재를 하고 있었고, 이 오류를 소 뒷걸음 치다가 쥐 잡은 격으로 잡는데 성공했습니다. 이번 포스팅에서는 메인 오류인 왜 처음 120개의 데이터에 대해서는 아무런 작업도 하지 않다가 이후에야 작업을 하는 지에 대해서 한번 그 원인을 알아보고, 해결책을 찾고자 합니다. 먼저 위 스크린샷처럼 agent.py에 있는 내용이 문제가 된 것이 아닌가 하는 생각이 들어서, 과거처럼 바꾸어 놓은 다음에 한번 강화학습에 들어가 봅니다. 2분도 되지 않는 시간이 걸려서 강화학습이 끝나는 것을 확인할 수 있기는 있었습니다. 그런데 나아지기는 커녕, 과거에 않 좋은 형태 그대로 나오는 것을 확인할 수 있었습니다. 다음으로는 위 스크린샷을 보시다 시피, 차트 데이터에다가.. 2019. 3. 3.