使用Keras构建神经网络时input_shape参数触发警告的解决方法咨询
Keras构建神经网络时input_shape参数触发警告的解决方法咨询
嗨,这个警告其实是Keras新版本给你的友好提示,它现在更推荐在Sequential模型里用Input()层来明确定义输入形状,而不是把input_shape参数写在第一个Dense层里。
你只需要调整一下模型的构建方式,把输入层单独提出来作为Sequential的第一层就可以解决这个警告啦,修改后的代码如下:
import keras from keras.models import Sequential from keras.layers import Dense, Input classifer = Sequential() # 先添加Input层定义输入形状 classifer.add(Input(shape=(11,))) # 再添加Dense层 classifer.add(Dense(6, activation='relu'))
简单说一下为什么要这么改:这种写法更直观地体现了模型的输入结构,尤其是当你后续需要扩展模型(比如加更多复杂层)时,输入层的定义会更清晰,也符合Keras当前的最佳实践。
如果只是临时不想看到警告(不推荐这么做,还是建议遵循官方推荐写法),你也可以暂时关闭警告,但这只是治标不治本的方法:
import warnings warnings.filterwarnings("ignore", category=UserWarning)
不过还是更建议你用第一种方法调整代码结构,这样能更好地适配Keras的新版本规范~
备注:内容来源于stack exchange,提问作者MZNG
相关产品推荐
相关产品推荐

