Python 简单RNN拟合尺寸

Python 简单RNN拟合尺寸,python,recurrent-neural-network,Python,Recurrent Neural Network,我遇到以下代码错误的问题: import time import sys import numpy as np import pandas as pd import random as rd from keras.models import Sequential from keras.optimizers import SGD from keras.layers import LSTM from keras.layers.core import Dense, Activation #from k

我遇到以下代码错误的问题:

import time
import sys
import numpy as np
import pandas as pd
import random as rd
from keras.models import Sequential
from keras.optimizers import SGD
from keras.layers import LSTM
from keras.layers.core import Dense, Activation
#from keras.layers.recurrent import LSTM
from keras.layers.recurrent import SimpleRNN
#from sklearn.preprocessing import MinMaxScaler
#from keras.preprocessing.sequence import pad_sequences
from sklearn.model_selection import train_test_split
from sklearn.model_selection import learning_curve

series_X=pd.read_csv("novo.csv", header=0)
X, y=train_test_split(series_X, test_size=0.25)
#Define Model
seed=2019
rd.seed(seed)
fit1=Sequential()

fit1.add(SimpleRNN(output_dim=1, activation='tanh', input_shape=(7500,1)))

fit1.add(Dense(output_dim=1, activation='linear'))

sgd=SGD(lr=0.01)

fit1.compile(loss='mean_squared_error', optimizer=sgd)

fit1.fit(X, y, batch_size=10, nb_epoch=10)
错误输出如下所示:

ValueError: Error when checking input: expected simple_rnn_23_input to have 3 dimensions, but got array with shape (7500, 1)

我知道这个问题已经发布了,但我还不能解决它

问题是,您正在为模型输入三维输入,但您已将输入形状声明为二维,您应该尝试以下操作:

fit1.add(SimpleRNN(output_dim=1, activation='tanh', input_shape=x.shape)))
顺便说一句,你的代码完全错了,我看到了从未像training和test这样声明过的变量,fit函数应该取第一个参数,输入是x,第二个参数是输出或y

fit1.fit(x, y, batch_size=10, nb_epoch=10,validation_data=[x_test,y_test])

好的,我的朋友。我把它抄错了。但是错误不是来自未声明的变量。谢谢你的回答。