当我给它2时,Keras LSTM需要3个维度,而当我给它3时,它需要4个维度
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当我给它2时,Keras LSTM需要3个维度,而当我给它3时,它需要4个维度相关的知识,希望对你有一定的参考价值。
这给了我一个错误,告诉我它预期3维但得到2:
input_layer =输入(shape =(None,1000000))
lstm_1 = LSTM(500, dropout=.2, recurrent_dropout=.2)(input_layer)
这些中的任何一个都给了我一个错误,告诉我它预期有4个维度但得到3个:
input_layer = Input(shape=(None, 1000000, None))
input_layer = Input(shape=(None, None, 1000000))
答案
输入shape
参数没有考虑批量大小,所以真正给shape=(None, 1000)
期待(batch_size, None, 100)
它变成3维。因此,您需要提供形状数据(样本,时间步长,特征),因此fit
函数的3D数据输入。
以上是关于当我给它2时,Keras LSTM需要3个维度,而当我给它3时,它需要4个维度的主要内容,如果未能解决你的问题,请参考以下文章
ValueError:检查输入时出错:预期 lstm_1_input 具有 3 个维度,但得到的数组具有形状 (393613, 50)
Keras 嵌入层 - ValueError:检查输入时出错:预期有 2 个维度,但得到了 (39978, 20, 20)