Индекс 1 выходит за пределы для оси 0 с ошибкой размера 1 - PullRequest
0 голосов
/ 24 февраля 2019

Я делаю классификацию изображений, но у меня есть ошибка для вычисления точности, пожалуйста, помогите мне, как это сделать.это моя модель:

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' }

Яиспользуя категорийный_кросентропию:

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 голосов
/ 24 февраля 2019

Если размер массива равен n, максимальное значение индекса равно n-1.

Таким образом, вы можете получить доступ только к pred [0]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...