神经网络在时间序列预测与通用建模的应用
1. 时间序列预测中的CNN与RNN
在时间序列预测中,CNN和RNN是常用的两种神经网络模型。以预测苹果(AAPL)股票价格为例,CNN的输出似乎能较好地跟踪AAPL的股价。但实际上,我们会用下一天的实际股价对模型进行自我修正,以保证预测不会偏差太大。如果重新运行分析并让模型使用自己的输入,它很快就会与AAPL的实际股价产生偏差。
单步预测通常比多步预测更容易,因为单步预测不会偏离建模的初始条件太远。而在多步预测中,模型会形成一个反馈循环,随着预测输出的增多,它会逐渐偏离真实值。
卷积神经网络非常适合对时间序列问题进行建模,但它不像循环神经网络那样内置了时间假设。
1.1 使用RNN进行时间序列预测
循环神经网络在处理文本时非常强大,因为它能对时间依赖关系进行建模,这一特性同样适用于时间序列数据。在时间序列数据集中,t - 1时刻的输入显然会影响t时刻的输入,RNN能够很好地捕捉时间步之间的关系。
以下是创建一个新的循环模型的代码:
rnn_model =
Axon.input("stock_prices")
|> Axon.lstm(32)
|> elem(0)
|> Axon.nx(& &1[[0..-1//1, -1, 0..-1//1]])
|> Axon.dense(1)
这个模型将股票价格的时间序列作为输入,通过一个LSTM层处理,并提取LSTM的最终令牌,然后将输出传递给一个具有1个输
超级会员免费看
订阅专栏 解锁全文
7万+

被折叠的 条评论
为什么被折叠?



