質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

Q&A

0回答

460閲覧

データ分割 lstmの構築方法 データの前処理

owl_ddbb

総合スコア7

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

0グッド

0クリップ

投稿2020/04/18 15:50

前提・実現したいこと

lstmを利用し何日かのデータをもとに3週間の分の予想をしたいのですが
例えば2018/08/15以前のデータを利用して2018/8/15〜2018/9/7の数値を予想するみたいにしたいです。
データの分割のやり方 lstmの構築やり方を教えてください。

素人ですがアドバイスなどよろしくお願いいたします。

■■な機能を実装中に以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ソースコード
Open High Low Close VolumeBTC VolumeUSD

Date
2015-01-29 0.298163 0.255423 0.331065 0.278031 0.000047 0.000075
2015-01-30 0.278031 0.244828 0.330425 0.287877 0.000026 0.000039
2015-01-31 0.287877 0.254544 0.333159 0.291060 0.000108 0.000170
2015-02-01 0.291060 0.256470 0.334439 0.280872 0.000031 0.000050
2015-02-02 0.280872 0.239719 0.310297 0.260544 0.000057 0.000085
... ... ... ... ... ... ...
2020-04-09 0.113103 0.095402 0.133392 0.111976 0.001614 0.001090
2020-04-10 0.111976 0.096658 0.131704 0.112564 0.004419 0.002981
2020-04-11 0.112564 0.096574 0.133624 0.112956 0.001830 0.001246
2020-04-12 0.112956 0.098040 0.133741 0.113103 0.002080 0.001421
2020-04-13 0.113103 0.096030 0.133333 0.113152 0.003093 0.002095

[1890 rows x 6 columns]

def _load_data(data, n_prev=20):
docX, docY = [], []
for i in range(len(data)-n_prev):
docX.append(data.iloc[i:i+n_prev].values)
docY.append(data.iloc[i+n_prev].values)
alsX = np.array(docX)
alsY = np.array(docY)
return alsX, alsY

def train_test_split(df, test_size=0.1, n_prev=20):
ntrn = round(len(df) * (1 - test_size))
ntrn = int(ntrn)
X_train, y_train = _load_data(df.iloc[0:ntrn], n_prev)
X_test, y_test = _load_data(df.iloc[ntrn:], n_prev)
return (X_train, y_train), (X_test, y_test)

(X_train, y_train), (X_test, y_test) = train_test_split(df_ada)

from keras.models import Sequential
from keras.layers import Dense, Activation, Dropout
from keras.layers.recurrent import LSTM
from keras import optimizers

model = Sequential()
model.add(LSTM(300,
dropout=0.2,
recurrent_dropout=0.2,
input_shape=(20,6)))
model.add(Dense(50, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(6, activation='relu'))
model.summary()
model.compile(optimizer='adam',
loss='mse',
metrics=['mae'])

試したこと

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問