我正在訓練一個有10個類的CNN。訓練檔案夾每類有40張圖片,驗證檔案夾每類有10張圖片。我有一個包含100張測驗影像的檔案夾。我如何加載它們(通過使用imagedatagenerator),然后用我訓練的模型進行預測?我每次對相同的測驗資料運行model.predict()時都得到不同的預測。以下是我使用的資料集的鏈接https://www.kaggle.com/s214316001/datasets214。以下是我的代碼
。import tensorflow as tf
import matplotlib.pyplot as plt
import cv2
import os
import numpy as np
from tensorflow.keras.preprocessing.image import ImageDataGenerator
from tensorflow.keras.preprocessing import image
from tensorflow.keras.models import Sequential
from tensorflow.keras.layer import Dense, Dropout, Activation, Flatten
from tensorflow.keras.layer import Conv2D, MaxPooling2D, BatchNormalization,Dropout
train = ImageDataGenerator(rescale = 1/255)
train_dataset = train.flow_from_directory('./input/datasets214/train/train',
target_size = (200,200), batch_size = 5,
class_mode = 'categorical')
validation_dataset=train.flow_from_directory('./input/datasets214/validation/validation',
target_size = (200,200), batch_size = 5,
class_mode = 'categorical')
model = Sequential()
模型。 add(Conv2D(16, (3, 3) 。input_shape=(200,200,3) )
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(512, activation='relu')
model.add(Dense(10, activation='softmax')
model.compile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'] )
model.fit(train_dataset,step_per_epoch=5,epochs=300, validation_data=validation_dataset)
#prediction[/span]。
datagen = ImageDataGenerator(rescale=1/255)
gen =datagen.flow_from_directory('./input/datasets214/gnr_test/gnr_test',shuffle = 'False', batch_size=100,
target_size = (200,200),class = ['test'])
predict = model.predict(gen)
print(' fileID',' label')
for file,i in enumerate(gen.filenames)。
j = predict[file]
k = list(j).index(max(j))
print( i,k)
uj5u.com熱心網友回復:
在gen中你設定了shuffle=False
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/328132.html
標籤:
