Код: Выделить всё
import numpy as np
import tensorflow as tf
import tensorflow_hub as hub
import tf_keras as tfk
import os
from sklearn.model_selection import train_test_split
directory = "brain_tumor_dataset"
images = []
labels = []
for category in os.listdir(directory):
rute_category = os.path.join(directory, category)
for image_name in os.listdir(rute_category):
image_rute = os.path.join(rute_category, image_name)
image = tf.keras.preprocessing.image.load_img(image_rute, target_size=(224,224))
image_array = tf.keras.preprocessing.image.img_to_array(image) / 255.0
images.append(image_array)
labels.append(1 if category == "yes" else 0)
images = np.array(images)
labels = np.array(labels)
X_training, X_testing, y_training, y_testing = train_test_split(images, labels, test_size=0.3, random_state=42)
url = "https://tfhub.dev/google/imagenet/mobilenet_v2_140_224/feature_vector/5"
movilenetv2 = hub.KerasLayer(url, input_shape=(224,224,3), trainable=False)
model = tfk.Sequential([
movilenetv2,
tfk.layers.Dense(2,activation="softmax")
])
model.compile(
optimizer="adam",
loss="sparse_categorical_crossentropy",
metrics = ["accuracy"]
)
training = model.fit(
X_training,
y_training,
epochs=20,
validation_data = (X_testing, y_testing)
)
model.save("my_model.h5")
reconstructured_model = keras.models.load_model("my_model.h5", custom_objects = {"KerasLayer": hub.KerasLayer})`
Модель работает как есть, но реконструированная модель не поддерживает
Я пытался сохранить ее как .keras или .h5, но ничего не помогло
Подробнее здесь: https://stackoverflow.com/questions/788 ... r-learning