2017-07-11 19 views
0

私はDatalabインスタンスでTensorFlowのcontribのパッケージDatalab

from tensorflow.contrib.keras.python.keras.regularizers import l1,l2 
from tensorflow.contrib.keras.python.keras.models import Sequential, load_model 
from tensorflow.contrib.keras.python.keras.layers import Dense, Dropout, Activation 
from tensorflow.contrib.keras.python.keras.constraints import max_norm 
from tensorflow.contrib.keras.python.keras.optimizers import RMSprop, Adam 
from tensorflow.contrib.keras.python.keras.layers.normalization import BatchNormalization 

しかし、私(私はTensorflow 1.1.0バージョンとPython 2.7を使用しています)からKerasをインポートしようとしている中でTensorFlowのcontribのパッケージからKerasをインポートすることはできません次のエラーを取得するには:

ImportErrorTraceback (most recent call last) 
<ipython-input-52-adf3061b6b33> in <module>() 
     1 #from tensorflow.contrib.keras import * 
----> 2 from tensorflow.contrib.keras.python.keras.regularizers import l1,l2 
     3 from tensorflow.contrib.keras.python.keras.models import Sequential, load_model 
     4 from tensorflow.contrib.keras.python.keras.layers import Dense, Dropout, Activation 
     5 from tensorflow.contrib.keras.python.keras.constraints import max_norm 

/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/keras/__init__.py in <module>() 
    24 
    25 # pylint: disable=wildcard-import 
---> 26 from tensorflow.contrib.keras.api.keras import * 
    27 
    28 try: 

/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/keras/api/keras/__init__.py in <module>() 
    23 from __future__ import print_function 
    24 
---> 25 from tensorflow.contrib.keras.api.keras import activations 
    26 from tensorflow.contrib.keras.api.keras import applications 
    27 from tensorflow.contrib.keras.api.keras import backend 

/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/keras/api/keras/activations/__init__.py in <module>() 
    20 
    21 # Activation functions. 
---> 22 from tensorflow.contrib.keras.python.keras.activations import elu 
    23 from tensorflow.contrib.keras.python.keras.activations import hard_sigmoid 
    24 from tensorflow.contrib.keras.python.keras.activations import linear 

/usr/local/lib/python2.7/dist-packages/tensorflow/contrib/keras/python/keras/__init__.py in <module>() 
    19 from __future__ import print_function 
    20 
---> 21 from tensorflow.contrib.keras.python.keras import activations 
    22 from tensorflow.contrib.keras.python.keras import applications 
    23 from tensorflow.contrib.keras.python.keras import backend 

ImportError: cannot import name activations 

私は1.2.1バージョンにTensorflowをアップグレードしようとしたが、それはまだ動作しません。

なぜこのエラーが発生するのですか?ありがとう!

+0

あなたのKerasバージョンは何ですか? 'import keras'と' keras .__ version__'を使って見つけることができます – desertnaut

+0

私はdatalabインスタンスを再起動しましたが、kerasパッケージはなくなりました。しかし、再起動後、私はcontribパッケージからケラスをインポートできます!さらに、私はdatalabインスタンスを起動するたびに、 "!pip install"コマンドを使ってノートブックにインストールしたPythonパッケージがなくなっていることを確認しました。 – zentonll

+0

だから、まだエラーが出るのですか? – desertnaut

答えて

1

Datalabインスタンスにインストールされているpythonパッケージが、インスタンスを再起動するたびにデフォルトのパッケージにリセットされているようです(なぜこのようなことがわかりません)。代わりに1.0.0のテンソルフローバージョンでコードを実行します。私はちょうどセルで書いた:

!pip install tensorflow==1.1.0 

そして私はDatalabカーネルを再開しました(セッション再開ボタン)。その後、すべて正常に動作し、Tensorflow contribパッケージからKerasをインポートできます。

関連する問題