慕工程0101907
2021-09-28 17:03:11
CONST_TRAINTING_SEQUENCE_LENGTH = 12CONST_TESTING_CASES = 5def dataNormalization(data): return [(datum - data[0]) / data[0] for datum in data]def dataDeNormalization(data, base): return [(datum + 1) * base for datum in data]def getDeepLearningData(ticker): # Step 1. Load data data = pandas.read_csv('/Users/yindeyong/Desktop/Django_Projects/pythonstock/data/Intraday/' + ticker + '.csv')[ 'close'].tolist() # Step 2. Building Training data dataTraining = [] for i in range(len(data) - CONST_TESTING_CASES * CONST_TRAINTING_SEQUENCE_LENGTH): dataSegment = data[i:i + CONST_TRAINTING_SEQUENCE_LENGTH + 1] dataTraining.append(dataNormalization(dataSegment)) dataTraining = numpy.array(dataTraining) numpy.random.shuffle(dataTraining) X_Training = dataTraining[:, :-1] Y_Training = dataTraining[:, -1] # Step 3. Building Testing data X_Testing = [] Y_Testing_Base = [] for i in range(CONST_TESTING_CASES, 0, -1): dataSegment = data[-(i + 1) * CONST_TRAINTING_SEQUENCE_LENGTH:-i * CONST_TRAINTING_SEQUENCE_LENGTH] Y_Testing_Base.append(dataSegment[0]) X_Testing.append(dataNormalization(dataSegment)) Y_Testing = data[-CONST_TESTING_CASES * CONST_TRAINTING_SEQUENCE_LENGTH:] X_Testing = numpy.array(X_Testing) Y_Testing = numpy.array(Y_Testing) # Step 4. Reshape for deep learning X_Training = numpy.reshape(X_Training, (X_Training.shape[0], X_Training.shape[1], 1))我有一個(gè)錯(cuò)誤:文件“/Users/yindeyong/Desktop/Django_Projects/envs/stockenv/lib/python3.6/site-packages/keras/engine/base_layer.py”,第147行,在init batch_size中,) + tuple(kwargs['input_shape' ]) TypeError: 'int' 對(duì)象不可迭代我試圖將input_shape=1更改 為input_shape=(1,),然后又出現(xiàn)了另一個(gè)錯(cuò)誤:ValueError:輸入 0 與層 lstm_1 不兼容:預(yù)期 ndim=3,發(fā)現(xiàn) ndim=2
2 回答

紅顏莎娜
TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超13個(gè)贊
LSTM 是處理序列的循環(huán)網(wǎng)絡(luò)
序列必須具有length和features,您的輸入形狀必須包含以下兩個(gè):input_shape=(length, features)
.
您的數(shù)據(jù)也必須相應(yīng)地進(jìn)行整形,使用(sequences, length, features)
.
對(duì)于可變長(zhǎng)度,您可以使用input_shape=(None,features)
.

汪汪一只貓
TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個(gè)贊
您不能傳遞input_shape
整數(shù),它必須是可迭代的,例如(1,)
. 看起來(lái)你的 X_training 形狀不對(duì)。您必須重塑它,使其適合 input_shape。
添加回答
舉報(bào)
0/150
提交
取消