gpt4 book ai didi

python - 递归 Python 神经网络 - Reshape () 错误

转载 作者:行者123 更新时间:2023-12-01 07:00:01 25 4
gpt4 key购买 nike

下面的脚本使用循环神经网络创建用于数据预测的数组,如果我将周期设置为 4,脚本会运行,但我有 5 个值输入,如何修复我的 reshape ?

数据集

3519    2019-10-31 19:00:00 55.6716
3550 2019-10-31 20:00:00 70.6110
3664 2019-10-31 21:00:00 97.0794
3789 2019-10-31 22:00:00 65.6901
3911 2019-10-31 23:00:00 65.3645

脚本

base = base.dropna()
base = base.iloc[:,2].values

periodos = 5
previsao_futura = 1 # horizonte

X = base[0:(len(base) - (len(base) % periodos))]
X_batches = X.reshape(-1, periodos, 1)

y = base[1:(len(base) - (len(base) % periodos)) + previsao_futura]
y_batches = y.reshape(-1, periodos, 1)

X_teste = base[-(periodos + previsao_futura):]
X_teste = X_teste[:periodos]
X_teste = X_teste.reshape(-1, periodos, 1)
y_teste = base[-(periodos):]
y_teste = y_teste.reshape(-1, periodos, 1)

输出

Traceback (most recent call last):
File "ConsumptionAnalysisNeuralNetwork.py", line 40, in <module>
y_batches = y.reshape(-1, periodos, 1)
ValueError: cannot reshape array of size 4 into shape (5,1)

最佳答案

如果基数为 5(例如 [0,1,2,3,4] ):

>>> base[1:6]
[1,2,3,4]

这是 4 号而不是 5 号。因此您需要确保 len(base) >= periodos + 1 .

或替换 y = base[1:(len(base) - (len(base) % periodos)) + previsao_futura]
y = base[0:(len(base) - (len(base) % periodos))] .

这有点取决于 previsao_futura 的目的.

关于python - 递归 Python 神经网络 - Reshape () 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58682881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com