当我使用它时,它不会给出任何错误
out_layer = tf.add(tf.matmul(layer_4 , weights['out']) , biases['out'])
out_layer = tf.nn.softmax(out_layer)
但是当我使用它时
model=Sequential()
model.add(Dense(100, input_dim= n_dim,
activation='tanh',kernel_initializer='uniform'))
keras.layers.core.Dropout(0.3, noise_shape=None, seed=None)
model.add(Dense(50,input_dim=1000,activation='sigmoid'))
keras.layers.core.Dropout(0.4, noise_shape=None, seed=None)
model.add(Dense(15,input_dim=500,activation='sigmoid'))
keras.layers.core.Dropout(0.2, noise_shape=None, seed=None)
model.add(Dense(units=n_class))
model.add(Activation('softmax'))
我得到错误
TypeError:softmax()得到一个意外的关键字参数'axis'
我该怎么办?我正在使用python2谢谢
将tensoflow和Keras库升级到最新版本。较低版本不支持softmax轴。确保在运行程序的环境中升级它们(非常重要)。
试试这个:
import tensorflow as tf
然后以这种方式添加softmax图层:
model.add(Activation(tf.nn.softmax))
您需要安装TensorFlow。您可以使用以下命令之一来执行此操作:
pip install --upgrade tensorflow # for Python 2.7
pip3 install --upgrade tensorflow # for Python 3.n
将tensorflow和keras升级到以下版本解决了我的问题
pip install keras==2.1.6
pip install tensorflow==1.7.0
断言此错误的原因是tensorflow和keras的版本不匹配。我解决了这个问题:
pip install tensorflow==1.5.0
如果您不想降级keras,则tf 1.5.0是第一个支持softmax的版本(axis = axis)。