Trainiertes neuronales netz speichern und abrufen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
elian123
User
Beiträge: 1
Registriert: Dienstag 21. Mai 2019, 09:55

Mein problem ist das ich das Training speichern und wieder zu einem späterem Zeitpunkt abrufen möchte ohne alles neu berechnen zu müssen.
from keras.layers import Convolution2D
from keras.models import Sequential
from keras.layers import MaxPooling2D
from keras.layers import Flatten
from keras.layers import Dense
from keras.preprocessing.image import ImageDataGenerator
from IPython.display import display
from PIL import Image
import numpy as np
from keras.preprocessing import image
from keras.models import model_from_json

classifier = Sequential()
classifier.add(Convolution2D(32,3,3, input_shape = (64,64,3), activation = "relu"))
classifier.add(MaxPooling2D(pool_size = (2,2)))
classifier.add(Flatten())
classifier.add(Dense(output_dim = 128, activation = "relu"))
classifier.add(Dense(output_dim = 1, activation = "sigmoid"))
classifier.compile(optimizer = "adam", loss = "binary_crossentropy", metrics = ["accuracy"])

train_datagen = ImageDataGenerator(
rescale=1./255,
shear_range = 0.2,
zoom_range=0.2,
horizontal_flip=True)

test_datagen = ImageDataGenerator(rescale=1./255)

training_set = train_datagen.flow_from_directory(
"dataset/training_set",
target_size=(64,64),
batch_size=32,
class_mode="binary")

test_set = train_datagen.flow_from_directory(
"dataset/test_set",
target_size=(64,64),
batch_size=32,
class_mode="binary")

classifier.fit_generator(
training_set,
steps_per_epoch=1000,
epochs=1,
validation_data=test_set,
validation_steps=800)






test_image = image.load_img("random1.jpg", target_size = (64,64))
test_image = image.img_to_array(test_image)
test_image = np.expand_dims(test_image, axis = 0)
result = classifier.predict(test_image)
training_set.class_indices
if result[0][0] >= 0.5:
prediction = "dog"
else:
prediction = "cat"
Benutzeravatar
ThomasL
User
Beiträge: 1366
Registriert: Montag 14. Mai 2018, 14:44
Wohnort: Kreis Unna NRW

Man kann den Classifier/das Model speichern und laden.
Schaust du hier https://www.tensorflow.org/tutorials/ke ... ore_models
Ich bin Pazifist und greife niemanden an, auch nicht mit Worten.
Für alle meine Code Beispiele gilt: "There is always a better way."
https://projecteuler.net/profile/Brotherluii.png
Antworten