为了账号安全,请及时绑定邮箱和手机立即绑定

Keras 错误:TypeError:'int' 对象不可迭代

Keras 错误:TypeError:'int' 对象不可迭代

慕工程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))我有一个错误:文件“/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' 对象不可迭代我试图将input_shape=1更改 为input_shape=(1,),然后又出现了另一个错误:ValueError:输入 0 与层 lstm_1 不兼容:预期 ndim=3,发现 ndim=2
查看完整描述

2 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

LSTM 是处理序列的循环网络

序列必须具有lengthfeatures,您的输入形状必须包含以下两个:input_shape=(length, features).

您的数据也必须相应地进行整形,使用(sequences, length, features).

对于可变长度,您可以使用input_shape=(None,features).


查看完整回答
反对 回复 2021-09-28
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

您不能传递input_shape整数,它必须是可迭代的,例如(1,). 看起来你的 X_training 形状不对。您必须重塑它,使其适合 input_shape。


查看完整回答
反对 回复 2021-09-28
  • 2 回答
  • 0 关注
  • 190 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号