Tensorflow 如何向以下keras体系结构添加更多层?

Tensorflow 如何向以下keras体系结构添加更多层?,tensorflow,keras,lstm,Tensorflow,Keras,Lstm,我正在使用tensorflow作为后端开发keras模型: 模型=顺序 model.addEmbedding40,64,辍学率=0.2 model.addLSTM33,辍学率W=0.2,辍学率W=0.2 范文摘要 model.addDense2 model.addActivation'relu' model.compileloss='binary\u crossentropy',optimizer='sgd',metrics=['binary\u accurity'] 打印“sumary模型”

我正在使用tensorflow作为后端开发keras模型:

模型=顺序 model.addEmbedding40,64,辍学率=0.2 model.addLSTM33,辍学率W=0.2,辍学率W=0.2 范文摘要 model.addDense2 model.addActivation'relu' model.compileloss='binary\u crossentropy',optimizer='sgd',metrics=['binary\u accurity'] 打印“sumary模型” 范文摘要
事实上,这个架构作为句子的二元分类器工作得非常好,但是我想改进一下,因为它有点简单。我是一个使用keras的乞丐,所以我想感谢修改它的建议。我想添加更多层和退出因素以获得更好的结果,我的帖子的主要思想是接受建议。

了解向Keras模型添加层的最佳方法是运行和研究Keras回购协议中提供的

老实说,您在上面共享的模型代码看起来有点随机。但是,如果您有一个工作良好的模型,并且希望使其更好地工作,一般来说,最好调整您已有的层,而不是添加新的层。简单总比复杂好。别搞错了。与其在网络结构方面增加更多的复杂性,不如试着让你已经做的更好。你可以:

将输出激活设置为“sigmoid” 将您的优化器更改为SGD以外的其他版本 尝试不同数量的嵌入输入 更改优化器的学习速率 除此之外,LSTM层大约有20个参数,请查看docstring以了解其中的内容

如果必须添加更多层,则可以先尝试仅添加密集层。比如:

model.add(Dense(no_of_neurons))
model.add(Dropout(dropout_rate))
此外,我认为没有任何理由像现在这样两次调用model.summary


我认为关键的一点是让事情尽可能简单。凯拉斯是令人惊讶的方式;您可以使用看起来一文不值的代码获得很好的结果。如果你对学习Keras很认真,我强烈推荐Francois阅读,他是Keras的幕后黑手

即使对于初学者来说,keras.io的文档也非常容易阅读,而且可能的答案更加完整。谢谢你的支持,我真的很感激有人对这个话题有经验