/
sat1988
/
MachineVision
Обзор
Документация
Войти
/
sat1988
/
MachineVision
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
task07/model.py
52 строки
2 KB
Oleg Chorakaev
Добавлен 7 пример
26 июл 2025, 16:13
26 июл 2025, 16:13
0a00484
Код
Авторство
О чём код?
from tensorflow.keras import layers as L from tensorflow.keras.models import Model from tensorflow.keras.applications import MobileNetV2 from tensorflow.python.keras import Sequential from tensorflow.python.layers.pooling import MaxPooling2D from keras.layers import Conv2D from keras.layers import Dropout from keras.layers import Flatten from keras.layers import Dense from tensorflow_datasets.image_classification.colorectal_histology_test import num_classes from tensorflow_hub.keras_layer import keras def build_model(input_shape): """ Inputs """ inputs = L.Input(input_shape) """ Backbone """ backbone = MobileNetV2( include_top=False, weights="imagenet", input_tensor=inputs, alpha=1.0 ) backbone.trainable = False # backbone.summary() """ Detection Head """ #x = backbone.output #x = L.Conv2D(256, kernel_size=1, padding="same")(x) #x = L.BatchNormalization()(x) #x = L.Activation("relu")(x) #x = L.GlobalAveragePooling2D()(x) #x = L.Dropout(0.5)(x) #x = L.Dense(4, activation="sigmoid")(x) """ Model """ #model = Model(inputs, x) model = Sequential() model.add(Conv2D(32, kernel_size = (3, 3), activatoin = 'relu', input_shape = input_shape)) model.add(MaxPooling2D(pool_size = (2, 2))) model.add(Conv2D(64, kernel_size=(3, 3), activatoin='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(64, kernel_size=(3, 3), activatoin='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(128, activation = 'relu')) model.add(Dropout(0.5)) model.add(Dense(num_classes, activation='softmax')) model.compile(loss=keras.losses.categorical_crossentropy, optimizer = keras.optimizer.Adadelta(), metrics=['accuracy']) return model