Керас: Почему не совпадают количество использованных изображений и результаты предиката? - PullRequest
0 голосов
/ 07 февраля 2020

Я хочу на глаз проверить, является ли присвоение вероятности правильным и разумным, для этого я делаю:

# Generate predictions for test data --------------------------------------

val_final <- file.path("~/Área de Trabalho/CNN4ants", "val")
test_flow <- flow_images_from_directory(
  generator =  image_data_generator(rescale = 1/255),
  directory = val_final,
  target_size = c(80, 80),
  class_mode = "binary"
)

predictions <- predict_generator(
  model,
  test_flow,
  steps = 50
)
#

#Extraction of original image classification
test_labels<-sub("\\/.*", "", test_flow$filenames)

#Convert probabilities prediction in class
test_class<-ifelse(predictions < 0.5, "ants", "health")

#Create a data frame
res_test<-data.frame(test_labels,predictions,test_class)
colnames(res_test)<-c("labels","probabilities","class")

Error in data.frame(test_labels, predictions, test_class) :
  arguments imply differing number of rows: 2080, 1600


length(test_flow$filenames)
#[1] 2080
length(predictions)
#[1] 1600

Но, если я изменяю вgnett_generator () steps = 65, то длина (предсказания) ) = = 2080, но я не имею ни малейшего представления о том, какие изображения использовались для вычисления этой вероятности.

Мой вопрос основан на вероятности, указанной в predictions ([1] 1600) и соответствующих файлах, которые хранятся в test_flow ([1] 2080). Почему эти результаты не совпадают?

...