tensorflow - ValueError:输入 0 与层 lstm_60 不兼容:预期 ndim=3,发现 ndim=2
问题描述
我想在我的x_train
shape(318,39)
和y_train
has shape建立一个深度 RNN (318,)
。当我执行下面的代码时:
model.add(LSTM(20,input_shape=(X_train.shape[1:]), activation='relu', return_sequences=True))
model.add(LSTM(20, activation='relu'))
model.add(Dense(10, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(optimizer='adam',loss='binary_crossentropy',metrics=['accuracy'])
history = model.fit(X_train,y_train,batch_size=20,epochs=250)
我收到以下错误:
ValueError: Input 0 is incompatible with layer lstm_60: expected ndim=3, found ndim=2
解决方案
由于您使用的是LSTM
,我假设您的输入数据是连续的,即您有 318 个示例,其中每个示例有 39 个时间步长?如果是这种情况,您应该首先正确地重塑您的输入数据,例如:
import numpy as np
X_train = np.expand_dims(X_train, -1)
这会将您的 X_train 重塑为形状,(318, 39, 1)
然后它将起作用(仅当我的初始假设正确时)
推荐阅读
- excel - EXCEL VBA:根据值范围格式化现有数字单元格
- python - Pandas Resample Upsample 最后日期/数据边缘
- visual-studio-code - 有没有办法像在 Sublime Text 中一样修改每种语言的默认注释标签
- git - 尝试变基以更正属性过滤器,但由于“未分级更改”而无法
- vba - 过滤/排序后阻止Excel跳到顶部
- php - Wordpress 将 php 和 html 模板转换为简码
- powerpoint - 更改布局时如何防止对象/文本改变颜色?
- javascript - 关于 Toggle with same Class Javascript No jQuery
- html -
HTML/CSS - 即使有标签也能保持元素在同一行 - discord - Discord.js Bot -- 如何检查每一天是哪一天