본문 바로가기
무모한 도전-주식 인공지능 만들기

다시금 시작된 랜덤워크 테스트와 예상치 못한 한계

by 인터넷떠돌이 2019. 5. 5.
반응형

안녕하세요?

 

일단 어찌어찌 되었건 간에 일단은 새로운 한주가 되었기 때문에, 이번에도 역시나 랜덤워크로 어떤 종목들이 움직이고 안 움직이는 지를 알아봐야 할 필요가 있었습니다. 그래서 이번 포스팅에서는 ADF 테스트, 허스트 지수, 그리고 Half-life 주기를 알아보는 작업을 해서, 그 결과를 정리하고자 합니다.

 

먼저 시간이 1주일이 지나기는 지났기 대문에, 일단 지난번에는 3월 30일 부터 데이터를 모았는데, 이번에는 3월 27일 부터 가지고 오도록 합니다.

 

그리고 나서 이전에는 잠시 주석처리가 되어 있었던 ADF 테스트와 Half-life 테스트를 다시 사용하기 위해서 주석을 해제 하도록 합니다.

 

그리고 나서 다음으로는 위 스크린샷에서 나와 있는 것처럼 이번에는 아예 800으로 값을 올려서 밤새 프로그램을 돌릴 준비를 하도록 합니다.

 

일단 6시간 이상 걸린 것 같기는 한데, 정확하게 시간을 측정해 보지는 않았습니다만, 아무튼 간에 하룻밤이 지나고 나서, 모든 테스트가 끝난 것을 확인할 수 있었습니다.

 

 

이렇게 해서 위 스크린샷과 같은 결과를 얻어오는 데는 성공했습니다. 이제부터 지난주에도 했던 것처럼 한번 결과를 정리해 보고자 합니다.

 

일단 시간이 바뀌기는 바뀌었고, 그에따라 저장이 되어 있는 폴더도 바뀌었기 때문에, 해당하는 폴더의 경로를 입력해 주도록 합니다.

 

그런데 예상치 못한 일이 일어나고 말았습니다. FirstClass를 만들 때는 아무런 문제가 없더니, 위 스크린샷처럼 SecondClass를 만들려고 하니, MemoryError라고 해서 메모리가 부족하다는 결과가 나오는 것 입니다.

 

그래서 한번 위 스크린샷처럼 inplace를 True라는 옵션으로 두고서 한번 시도를 해보기는 해 보도록 합니다. 이렇게 하면 메모리 부족 문제는 해결할 수 있으리라 생각이 되었습니다.

 

 

문제는 이렇게 했더니 이번에는 아예 엑셀에 집어넣는 명령어 자체가 없다는 콘솔박스 메세지가 나오는 것을 확인할 수 있었습니다.

 

그래서 하는 숴 없이 일단 subset=none, keep='first'라는 항목도 넣어 주도록 하고, 다음으로는 inplace를 True로 바꾸어서 다시금 시도를 해 보도록 합니다.

 

그런데 이렇게 하고 나서도 여전이 같은 에러가 여전히 발생하는 것을 확인할 수 있기는 있었습니다. 이래서야 일이 되는 되는가 하는 생각이 듭니다.

 

그래서 먼저 생각해 본 것이 위 스크린샷에서 나와 있는 것처럼 in place를 다시금 False로 바꾸고, 이번에는 del명령어를 써서 기존에 있는 변수를 지워서 메모리-RAM를 차지하고 있는 데이터를 도로 반환해 주도록 합니다.

 

그래서 이번에는 먼저 필요한 항목만 이렇게 그냥 가동되도록 처리를 하고, 나머지 부분은 그대로 주석처리를 해서 가동시키지 않는 방법을 택해 보았습니다.

 

일단 FirstClass를 생성하는 작업은 무리없이 제대로 일어나는 것을 확인할 수 있기는 있었습니다. 그리고 제대로 엑셀파일이 생성이 되었는지 확인을 하러 가 봅니다.

 

일단 엑셀파일에서는 제대로 결과가 생성이 되어 있는 것 까지는 확인할 수 있기는 있었습니다. 그래서 이번에는 second클래스를 생성하러 가 보도록 합니다.

 

기존에 있던 주석 처리를 바꾸어 주도록 해서, 2등급 결과만을 얻도록 바꾸어 주도록 합니다. 이렇게 해서 이번에는 얻을 수 있으리라 생각합니다.

 

그런데 무슨 문제가 있는지는 몰라도, 위 스크린샷에서 나와 있는 것처럼 일종의 에러가 발생하는 것을 확인할 수 있었습니다. 이렇게 해서야 작업이 안 되는데, 어떻게 해야 작업이 될 지는 모르겠지만, 이 메모리 부족의 에러를 노트북의 RAM을 갈아 끼운다고 해서 마냥 해결이 되는 문제는 아니라는 생각이 듭니다.

반응형