关于TypeError: softmax() got an unexpected keyword argument 'axis'的解决方案

问题描述:在做Keras多层感知器识别手写体数字的时候,当导入

model.add(Dense(units=1000,input_dim=784,kernel_initializer='normal',activation='softmax'))

程序编译报错

Traceback (most recent call last):

  File "<ipython-input-26-4852e417c987>", line 1, in <module>
    runfile('C:/Users/lijunyi/Desktop/temp.py', wdir='C:/Users/lijunyi/Desktop')

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 710, in runfile
    execfile(filename, namespace)

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\spyder\utils\site\sitecustomize.py", line 101, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "C:/Users/lijunyi/Desktop/temp.py", line 65, in <module>
    model.add(Dense(units=10,kernel_initializer='normal',activation='softmax'))

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\keras\engine\sequential.py", line 181, in add

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\keras\engine\base_layer.py", line 457, in __call__

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\keras\layers\core.py", line 883, in call

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\keras\activations.py", line 31, in softmax
    def elu(x, alpha=1.0):

  File "C:\Users\lijunyi\Anaconda3\envs\tensorflow\lib\site-packages\keras\backend\tensorflow_backend.py", line 3231, in softmax
    x = _preprocess_conv2d_input(x, data_format)

TypeError: softmax() got an unexpected keyword argument 'axis'

解决办法

第一步:安装tensorflow1.5版本(也可以直接跳到第二步)

第二步:安装keras2.0.8版本

第三步:每次安装完以后不要直接运行程序,一定要重启核(如下图所示)

然后编译就不会报错了

猜你喜欢

转载自blog.csdn.net/dqefd2e4f1/article/details/86535195