我正在进行图像分类,但是在计算精度时出现了错误,请帮助我如何进行。 这是我的模特:
model = Sequential()
model.add(Conv2D(32, (3, 3), input_shape=input_shape))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(32, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Conv2D(64, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Flatten())
model.add(Dense(64))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(6))
model.add(Activation('softmax'))
我要分类这样的图像: label_dict = {'0':'建筑物', 这是我的分类标签:
'1':'forest',
'2':'glacier',
'3':'mountain',
'4':'sea' ,
'5':'street' }
我正在使用categorical_crossentropy:
model.compile(loss=keras.losses.categorical_crossentropy,
optimizer=keras.optimizers.Adam(),
metrics=['accuracy'])
我要上课:
pred=model.predict_classes(test)
我正在计算测试准确度,但出现一些错误:
print('Test loss:', pred[0])
print('Test accuracy:',pred[1])
Test loss: 5
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-28-b74afa5e2da9> in <module>
1 print('Test loss:', pred[0])
----> 2 print('Test accuracy:',pred[1])
IndexError: index 1 is out of bounds for axis 0 with size 1
答案 0 :(得分:-1)
如果数组的大小为n,则最大索引值为n-1。
因此您只能访问pred [0]