J'ai récemment reçu le menu fixe d'apprentissage approfondi de https://github.com/floydhub/dl-docker running et lors de l'essai des tutoriels, j'ai reçu une erreur lors de l'importation du module de couches keras.
from __future__ import print_function
import keras
from keras.datasets import cifar10
from keras.preprocessing.image import ImageDataGenerator
from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation, Flatten
from keras.layers import Conv2D, MaxPooling2D
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-13-3a12c6f32fcf> in <module>()
5 from keras.models import Sequential
6 from keras.layers import Dense, Dropout, Activation, Flatten
----> 7 from keras.layers import Conv2D, MaxPooling2D
ImportError: cannot import name Conv2D
Je suis sous ubuntu 14.04, python version 2.7.6 sur le cahier ipython et les versions suivantes des bibliothèques d’apprentissage approfondi sur docker.
ARG THEANO_VERSION=rel-0.8.2
ARG TENSORFLOW_VERSION=0.12.1
ARG TENSORFLOW_Arch=cpu
ARG KERAS_VERSION=1.2.0
ARG LASAGNE_VERSION=v0.1
ARG TORCH_VERSION=latest
ARG CAFFE_VERSION=master
Je ne suis pas sûr que le problème réside dans la version car il semble qu'il n'y ait pas de problèmes liés sur le thread github.
Essayez ceci: from keras.layers.convolutional import Conv2D
L'importation a changé avec les nouveaux keras. Êtes-vous sûr de ne pas utiliser keras> = 2?
Les paquets suivants qui sont très essentiels pour CNN (réseaux de neurones convolutifs) sont réorganisés en différents paquets
from keras.layers.convolutional import Conv2D
from keras.layers import Dense
from keras.layers.convolutional import MaxPooling2D
from keras.layers import Flatten
Chaque fois que vous obtenez une erreur d'importation toujours google le nom du paquet et la bibliothèque, il est associé par exemple google "Keras Convolution2D". Il vous dirigera vers la documentation de keras. Cela vous donnera facilement le chemin à importer.
Pour Keras 1.2.0 (l'actuel sur floydhub à partir de print (keras .__ version__) ), utilisez ces importations pour Conv2D (que vous utilisez) et Conv2DTranspose (utilisé dans les exemples de Keras):
from keras.layers import Convolution2D as Conv2D
from keras.layers.convolutional import Deconv2D as Conv2DTranspose