[Keras] TypeError: softmax() got an unexpected keyword argument 'axis' 에러 시 tensorflow upgrade
Deep Learning (TF, Keras, PyTorch) 2019. 2. 6. 17:09Tensorflow, Keras를 사용하는 중에 'TypeError: softmax() got an unexpected keyword argument 'axis' 의 TypeError 발생 시 업그레이드를 해주면 해결할 수 있습니다. (저는 Python 2.7 버전, Tensorflow 1.4 버전 사용 중에 Keras로 softmax() 하려니 아래의 에러 발생하였습니다)
먼저, 명령 프롬프트 창에서 Tensorflow 가 설치된 conda environment 를 활성화시켜보겠습니다.
$ conda env list tensorflow /Users/myid/anaconda3/envs/tensorflow $ source activate tensorflow # for mac OS $ activate tensorflow # for Windows OS (tensorflow) $
|
참고로 Python과 Tensorflow 버전 확인하는 방법은 아래와 같습니다.
(tensorflow) $ python -V Python 2.7.14 :: Anaconda custom (64-bit) (tensorflow) $ python Python 2.7.14 |Anaconda custom (640bit)| (default, Oct 5 2017, 02:28:52) [GCC 4.2.1. Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin Type "help", "copyright", "credits" ro "license" for more information. >>> import tensorflow as tf >>> tf.VERSION '1.4.0'
|
(1) TypeError: softmax() got an unexpected keyword argument 'axis' 에러 대처법 |
Python에서 패키지 관리할 때 사용하는 pip 를 먼저 upgrade 시켜 준 후에 Tensorflow 를 업그레이트 해줍니다. Python 3.n 버전에서는 pip3 install package_name 을 사용하구요, GPU 의 경우 tensorflow-gpu 처럼 뒤에 -gpu를 추가로 붙여줍니다.
# --------------------
(tensorflow)$ pip3 install tensorflow-gpu --upgrade # for Python 3.n and GPU
|
Tensorflow 업그레이드 해줬더니 이번에는 numpy에서 아래의 에러가 나네요, 그래서 numpy도 업그레이드 해주었더니 문제가 해결되었습니다.
(2) numpy Traceback (most recent call last) RuntimeError: module compiled against API version 0xc but this version of numpy is 0xb |
# -------------- # module compiled against API version 0xc but this version of numpy is 0xb # => upgrade numpy to the latest version
|
많은 도움이 되었기를 바랍니다.