【不是铁人赛】Day 02|虚拟货币价格预测(二)LSTM与GRU。

友:你要不要一起参加铁人赛?
我:好啊!
(几天后)
我:乾我不小心忘了报名......
--------------------------------------> 2021.09.17


本系列的目标如下

陪我同事参赛,一起写文。带大家使用不同的模型来预测涨跌。带大家使用不同的特徵来预测涨跌。总目标是发大财。

今天来带大家跑个模型吧!

今天会使用的的模型是常见的LSTM及GRU。一样的是,网路上有许多优质的解说文章,大家可以先去做点功课。

範例程式

Step 0. 昨天準备好的资料

我们昨天準备好我们的资料啰!
train_data     # (2984, 7, 4)train_label    # (2984, )

Step 1. 建立我们的模型

LSTM
lstm_model = K.Sequential()lstm_model.add(K.layers.LSTM(units=256, return_sequences=True, input_shape=(7, 4)))lstm_model.add(K.layers.Dropout(0.3214))lstm_model.add(K.layers.LSTM(units=64))lstm_model.add(K.layers.Dropout(0.1432))lstm_model.add(K.layers.Dense(units=1, activation='sigmoid'))lstm_model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
GRU
gru_model = K.Sequential()gru_model.add(K.layers.GRU(units=256, return_sequences=True, input_shape=(7, 4)))gru_model.add(K.layers.Dropout(0.3214))gru_model.add(K.layers.GRU(units=64))gru_model.add(K.layers.Dropout(0.1432))gru_model.add(K.layers.Dense(units=1, activation='sigmoid'))gru_model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

Step 2. 切割训练资料,八成做训练,两成做测试。

train_data = np.array(train_data)train_label = np.array(train_label)split_num = int(len(train_data)*0.8)train_data, test_data = train_data[:split_num], train_data[split_num:]train_label, test_label = train_label[:split_num], train_label[split_num:]

Step 3. 训练模型及评估模型

lstm_model.fit(train_data, train_label, validation_split=0.14, epochs=50, batch_size=64, verbose=0)gru_model.fit(train_data, train_label, validation_split=0.14, epochs=50, batch_size=64, verbose=0)
lstm_pred = lstm_model.evaluate(test_data, test_label)gru_pred = gru_model.evaluate(test_data, test_label)

小结

到目前为止,这些程式都是大家可以从网路上找到的资源。相信只要是资讯或是电机相关科系或产业的人士,都有能力可以自己从网路上找到这些资源,训练出自己的模型。其实各家的AI模型,端看各自的训练资料长什么样子,神经网路的设计(几层,几个unit,优化器选哪个,损失函数用哪个)。这次我们训练好的模型是一个分类模型,帮我们分类训练资料的结果是1还是0,aka涨或是跌。明天会来分享如何训练一个回归模型,预测出可能的价格数值。

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章