rnn模型可视化 model = Sequential() model.add(Embedding(10000, 300, input_length=200)) model.add(LSTM(256, return_sequences=True, dropout=0.5, recurrent_dropout=0.5)) model.add(LSTM(256, dropout=0.5, recurrent_dropout=0.5)) model.add(Dense(4, activation='softmax')) ... plot_model(model, to_file='rnn.png' ,show_shapes=True, show_layer_names=True) 为什么是(None,200)而不是(200)? 解决方案 那是由于批量大小。训练模型时,可以通过不同的批次大小(例如32、64,...)。 这意味着,例如,如果您训练批处理大小为32的模型,则第一层的形状将为(32,200),依此类推。 构建模型时,仍未定义输入批处理大小。这就是为什么Tensorflow进行打印的原因None。
|
|