索引1超出了轴0的范围,大小为1,错误

时间:2019-02-24 14:02:02

标签: opencv tensorflow image-processing deep-learning

我正在进行图像分类,但是在计算精度时出现了错误,请帮助我如何进行。 这是我的模特:

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

1 个答案:

答案 0 :(得分:-1)

如果数组的大小为n,则最大索引值为n-1。

因此您只能访问pred [0]