2020. 11. 29. 21:19ㆍ인공지능,프로그래밍
이 블로그를 시작하는 초장기에 내가 해 보고 싶었던 것 중 하나가
바로 주가 예측 프로그램이었다.
사실 시중에 인공지능을 활용한 주가 예측 프로그램 앱들이 많이 있지만
어떻게 돌아가는지도 모르고
그게 정말 인공지능을 사용하는 것인지 아니면
그냥 인공지능의 탈을 쓰고 나오는 것인지 알 수 없었다.
그래서 내가 직접 만들어 보고 검증해 보고 싶었고,
혹시 하다가 잘 되면 그러니까 잘 맞는다고 생각하면
부업으로도 괜찮을 것이라는 생각이 들었기 때문에 본 프로젝트?를 시작하고 싶었다.
하지만 초기에 열정을 시간이 갈 수록 줄어들고
방대한 배울 것들로 인해서 진도를 나가기가 어려웠다.
일단 프로그래밍 환경을 조성하는 것부터가 만만치 않았다.
하지만 그런 이야기들은 뒤로 하고 오늘은 실제로 구현해 본 이야기만 해 보려고 한다.
프로그램 소스는 유튜브의 내용을 참고했다.
따라서 본 블로그가 아니어도 유튜브를 통해서 프로그램에 대한 설명을 충분히? 들을 수 있을 것이지만
굳이 블로그를 쓰는 것은 그렇게 하기까지도 어려운
즉, 유튜브의 내용을 따라하기도 어려운 분들에게 혹시 참고가 될 수 있지 않을까 하는 생각에서이다.
흔히 예측을 하는데 사용하는 프로그램이라고 하면
최근 많이 사용하고 있는 파이썬을 들 수 있다.
하지만 파이썬이라는 환경이 오픈되어 있음에도 불구하고
기본 환경을 구축하는 방법도 여러가지이고,
버젼도 여러가지여서 여간 햇갈리는 것이 아니다.
나는 그 중에서 쥬피터 노트북이라는 환경을 통해서 구축해 보았다.
일단 아래 그래프는 주식 한 종목을 선택해서 돌려본 결과이다.
실제 데이터는 파란색이고 예측한 데이터는 주황색이다.
각 구간을 보면 상당한 차이가 있지만 추세는 얼추 비슷한 것을 보여준다.
여기까지만 보면 '대박인데?'하는 생각이 드는 분도 있을 텐데,
어찌됐건 올라간다는 생각만 들면 버틸 수 있고 적당한 시기에 이익을 내고 빠져나올 수도 있겠다는 생각이 들 수 있기 때문이다.
나 역시 처음 유튜브에 이와 같은 그래프를 보고 관심을 갖게 되었다.
유튜브에서는 삼성전자 데이터를 가지고 주가 예측을 했었는데,
나는 종목을 한 번 바꾸어서 해 본 것 뿐이다.
그래도 추세가 비슷하게 나와서 놀랐으나,
여기에는 작은? 함정이 있다.
예측 그래프는 순수하게 저 기간을 예측한 것이 아니라는 이유가 그것인데,
무슨 말이냐 하면 하루 하루를 보면 예측한 데이터가 맞지만,
예측을 할 때마다 그 이전 실제 50일의 실제 값을 기준으로 했기 때문이다.
그래서 제대로 된 예측값을 보이는지 알려면 적어도 3~4일 정도를 순수하게 예측해보고
실제 데이터가 그런지 확인해 보는 것이 맞기 때문이다.
그럼 어떻게 파이썬을 시작해야 할까?
이번에 코딩을 하면서 어려웠던 점 중 하나는 예전에 설치해 둔 파이썬 때문인지 몰라도
자꾸 에러가 나는 것이었다.
그래서 혹시 파이썬을 처음 해 보려고 하는 분이라면
처음에는 아나콘다를 설치하는 것을 추천한다.
아나콘다를 설치하면 파이썬이 함께 설치되고 무엇보다 쥬피터 노트북이라는 강력한 도구를 사용 할 수 있기 때문이다.
쥬피터 노트북의 장점이 많이 있겠지만,
코딩한 내용을 한 줄 한 줄 확인해가면서 코딩할 수 있기 때문이다.
코딩한 내용을 바로 실행해서 제대로 코딩을 했는지 무슨 오류가 있는지를 바로 확인하면서 진행할 수 있어서
초보가 사용하기에는 아주 좋은 기능을 가지고 있다.
아나콘다를 설치하려면 구글에서 아나콘다를 검색하면 처음에 나오기 때문에
바로 설치할 수 있는데, 혹시 귀찮은 분들을 위해 아래 링크를 걸어 두었다.
www.anaconda.com/products/individual
그럼 코딩은 어떻게 했을까?
코딩 내용은 아래와 같다.
위의 코딩은 비교적 간단하지만
막상 구현하는 것은 쉽지 않았다.
아나콘다를 설치해도 위 코딩을 하려면 관련 라이브러리들을 설치해야 하는데
인공지능의 기초가 되는 텐서플로우를 설치하는것부터 쉽지가 않았다.
설치를 위해서는 코멘드 모드에서 다음을 입력해야 한다.
>> pip install tensorflow
그런데 그렇게 하니까 아래와 같은 에러가 났는데 쉽게 해결할 수 없었다.
이 문제를 해결하기 위해 검색을 열심히 하고 진행을 했지만 잘 해결되지 않았다.
그러다가 아래 웹페이지에서 해결책을 찾았다.
알고보면 아주 간단한 것이었는데
랜선을 뽑고 와이파이로 설치를 한 것이었다.
이처럼 코딩을 하는 과정에서는 해결하고 나면 간단하지만
어떻게 해도 해결이 안될 것 같은 문제들이 계속 발생하는 것 같다.
그럼 위 코딩이 어떻게 동작하는지는 다음 글에서 하나하나 언급해 보려고 한다.
궁금하신 분들은 계속되는 글을 참조하시기 바라며
이번 글을 마치기로 한다.
'인공지능,프로그래밍' 카테고리의 다른 글
인공지능으로 구현해 본 셀트리온 주가예측 (0) | 2020.12.08 |
---|---|
주가예측 프로그램을 만들어 보았다. Prophet 라이브러리 활용 (0) | 2020.12.07 |
초간단! 엑셀로 로또 번호 자동생성기 만들기 순열과 랜덤 함수 이해하기 (1) | 2020.11.19 |
미로 자율주행 알고리즘 (0) | 2020.10.12 |
인공지능을 언급할 때 꼭 나오는 텐서플로우가 뭐지? (0) | 2020.07.16 |