YouTube网红小哥Siraj Raval系列视频又和大家见面啦!今天要讲的是加密货币价格预测,包含大量代码,还用一个视频详解具体步骤,不信你看了还学不会!
点击观看详解视频
时长22分钟
有中文字幕
预测加密货币价格其实很简单,用Python+Keras,再来一个循环神经网络(确切说是双向LSTM),只需要9步就可以了!比特币以太坊价格预测都不在话下。
这9个步骤是:
数据处理
建模
训练模型
测试模型
分析价格变化
分析价格百分比变化
比较预测值和实际数据
计算模型评估指标
结合在一起:可视化
数据处理
导入Keras、Scikit learn的metrics、numpy、pandas、matplotlib这些我们需要的库。
首先,要对数据进行归一化处理。关于数据处理的原则,有张大图,大家可以在大数据文摘公众号后台对话框内回复“加密货币”查看高清图。
建模
我们用到的是一个3层RNN,dropout率20%。
双向RNN基于这样的想法:时间t的输出不仅依赖于序列中的前一个元素,而且还可以取决于未来的元素。比如,要预测一个序列中缺失的单词,需要查看左侧和右侧的上下文。双向RNN是两个堆叠在一起的RNN,根据两个RNN的隐藏状态计算输出。
举个例子,这句话里缺失的单词gym要查看上下文才能知道(文摘菌:everyday?):
I go to the ( ) everyday to get fit.
训练模型
这里取batch size = 1024,epoch times = 100。我们需要最小化均方误差MSE。
测试模型
分析价格变化
分析价格百分比变化
比较预测值和实际数据
计算模型评估指标
结合在一起:可视化
终于可以看看我们的成果啦!
首先是预测价格vs实际价格:
然后是预测的百分比变化vs实际的百分比变化,值得注意的是,这里的预测相对实际来说波动更大,这是模型可以提高的部分:
Y_daybefore, Y_test, delta_predict, delta_real, fig2 = price_change(Y_daybefore, Y_test, y_predict)
#Show the plot
plt.show(fig2)
最终模型表现是这样的:
怎么样,看完有没有跃跃欲试呢?
代码下载地址:
https://github.com/llSourcell/ethereum_future/blob/master/A%20Deep%20Learning%20Approach%20to%20Predicting%20Cryptocurrency%20Prices.ipynb
原视频地址:
https://www.youtube.com/watch?v=G5Mx7yYdEhE
作 者|Siraj Raval大数据文摘经授权译制
翻 译|糖竹子、狗小白、邓子稷
时间轴|韩振峰、Barbara、菜菜Tom
监 制|龙牧雪
【今日机器学习概念】
Have a Great Definition
志愿者介绍
回复“志愿者”加入我们
领取专属 10元无门槛券
私享最新 技术干货