【发布时间】:2018-03-13 09:50:05
【问题描述】:
我正在尝试制作可以从图像中预测动物的 CNN。以下是我正在使用的工具和 python 版本。 IDE:Spyder 3.2.6 与 Anaconda 张量流:版本 1.2.1 凯拉斯 2.1.4。 蟒蛇3.5
from keras.models import Sequential
from keras.layers import Convolution2D
from keras.layers import MaxPooling2D
from keras.layers import Flatten
from keras.layers import Dense
from keras.layers import Conv2D
classifier = Sequential()
classifier.add(Convolution2D(32,3,3,input_shape=(64,64,3),activation = 'relu'))
classifier.add(MaxPooling2D(pool_size = (2, 2)))
classifier.add(Flatten())
classifier.add(Dense(output_dim = 128,activation='relu'))
classifier.add(Dense(output_dim = 1,activation='sigmoid'))
classifier.compile(optimizer='adam', loss = 'binary_crossentropy', matrix = ['accuracy'])
from keras.preprocessing.image import ImageDataGenerator
train_datagen = ImageDataGenerator(
rescale=1./255,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True)
test_datagen = ImageDataGenerator(rescale=1./255)
training_set = train_datagen.flow_from_directory('dataset/training_set',
target_size=(64, 64),
batch_size=32,
class_mode='binary')
test_set = test_datagen.flow_from_directory('dataset/test_set',
target_size=(64, 64),
batch_size=32,
class_mode='binary')
classifier.fit_generator(training_set,
steps_per_epoch=(8000/32),
epochs=25,
validation_data=test_set,
validation_steps=(2000/32))
但是当我运行上面显示的 fit_generator 方法时,我得到以下错误
classifier.fit_generator(training_set,
steps_per_epoch=(8000/32),
epochs=25,
validation_data=test_set,
validation_steps=(2000/32))
Epoch 1/25
Traceback (most recent call last):
File "<ipython-input-7-f76922930094>", line 5, in <module>
validation_steps=(2000/32))
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\legacy\interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\models.py", line 1276, in fit_generator
initial_epoch=initial_epoch)
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\legacy\interfaces.py", line 91, in wrapper
return func(*args, **kwargs)
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\engine\training.py", line 2224, in fit_generator
class_weight=class_weight)
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\engine\training.py", line 1883, in train_on_batch
outputs = self.train_function(ins)
File "C:\Users\fspathan\AppData\Local\Continuum\anaconda3\envs\tensorflow\lib\site-packages\keras\backend\tensorflow_backend.py", line 2478, in __call__
**self.session_kwargs)
TypeError: run() got an unexpected keyword argument 'matrix'
我已经完成了 enogh google 并应用了所有必要的修复,但仍然没有进展。如果有人知道解决方案,那将是一个很大的帮助
非常感谢
【问题讨论】:
标签: python tensorflow deep-learning conv-neural-network