はじめに
株式会社クリエイスのモトキです。
突然ですが、PyTorchなるものを知ったので
「何も知らない自分がディープラーニングできちゃうのか」挑戦してみたいと思います。
Anaconda環境でPyTorch 〜株価予想〜 #01 環境構築編 (今回)
Anaconda環境でPyTorch 〜株価予想〜 #02 基礎知識・学習編
Anaconda環境でPyTorch 〜株価予想〜 #03 予測編
Anaconda環境でPyTorch 〜株価予想〜 #04 予測(リベンジ)編
Anaconda環境でPyTorch 〜株価予想〜 #05 表示編
別チーム
別チームでもPyTorchの記事を書いているようです。
曽宮・モトキ「AI?それっておいしいんですか?」
こう紹介されていますが、間違っていません。
基礎知識
PyTorchとは?
深層学習(ディープラーニング)のライブラリ。
深層学習とは?よく聞く機械学習と何が違うの?
キーワード | 概要 |
---|---|
機械学習 | 与えられた情報から、機械が法則やルールを見つける手法・プログラムを指す。 |
深層学習 | 機械学習の一種で、ニューラルネットという生物の神経系の振る舞いを模したモデル。 機械学習と異なり、学習する事柄をコントロールできる。 |
それぞれにはさらに細かい特徴があるようですが、とりあえずこのレベルの知識で進めていきます。
つまりPyTorchは「学習して欲しいものを学習させるために必要なもの」が揃ってるということです。
環境構築
環境構築〜Quandlからデータを貰ってくるところまで
環境はMacローカル環境で作ります。敷居の低さアピール
(環境を汚したくない人は、別チームの記事を参考にしてください)
すでにAnacondaで環境を作ってしまった人
Anacondaを片付ける手順を書きました。
Anaconda3をお掃除する
Anacondaインストール
anaconda(Python3.6version)をダウンロードし、
インストーラに従ってインストール(時間がかかります)
zshの人は、.bash_profileからコードをパクってきます。
# added by Anaconda3 5.2.0 installer
export PATH="/anaconda3/bin:$PATH"
動作の確認
% exec $SHELL
% python --version
Python 3.6.5 :: Anaconda, Inc.
pytorchのインストール
% conda install pytorch torchvision -c pytorch
これでPyTorchが使えるようになった…と言っても実感がわかないですね。
quandlのインストール
金融・経済のデータを取得できるライブラリ。
今回は、深層学習に使うデータをここで取得します。
% conda install quandl
これらのインストールを忘れたり、失敗すると
以降のソースを実行したときにModuleNotFoundError
が出るので、注意するポイントです。
試しにデータが取れるか単体で動かしてみる
import quandl
mydata = quandl.get("EIA/PET_RWTC_D")
print(mydata)
% python test.py
Value
Date
1986-01-02 25.56
1986-01-03 26.00
...
もうちょい書き足して、Appleの株価を取得してみます。
import quandl
import numpy as np
import torch
from torch.autograd import Variable
def get_tensor_data(data_code: str, prev_day: int, today: int):
tensor_x = []
tensor_y = []
get_data = quandl.get(data_code, returns="numpy")
for k in range(prev_day):
tensor_x.append(get_data[today - prev_day + k][1])
tensor_y.append(get_data[today][1])
tensor_x = Variable(torch.from_numpy(np.array(tensor_x))).float().view(1, 1, prev_day)
tensor_y = Variable(torch.from_numpy(np.array(tensor_y))).float().view(1, 1, 1)
return tensor_x, tensor_y
a, b = get_tensor_data("WIKI/AAPL", 5, 60)
print(a)
次回
次回は、Quandlから取得したデータで学習を行っていきます。
Anaconda環境でPyTorch 〜株価予想〜 #02 基礎知識・学習編