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

问题描述 投票:-2回答:1

我正在进行图像分类但是我得到了计算精度的错误,请帮我怎么做。这是我的模特:

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':'buildings',这是我的分类标签:

'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
opencv tensorflow image-processing deep-learning
1个回答
-1
投票

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

所以你只能访问pred [0]

© www.soinside.com 2019 - 2024. All rights reserved.