Spec-Zone.ru › TensorFlow 2.9

tf.keras.applications.MobileNetV3Small

Инициализирует архитектуру MobileNetV3Small.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.keras.applications.MobileNetV3Small

tf.keras.applications.MobileNetV3Small(
    input_shape=None,
    alpha=1.0,
    minimalistic=False,
    include_top=True,
    weights='imagenet',
    input_tensor=None,
    classes=1000,
    pooling=None,
    dropout_rate=0.2,
    classifier_activation='softmax',
    include_preprocessing=True
)

Ссылка:

  • Поиск MobileNetV3 (ICCV 2019)

Следующая таблица описывает производительность MobileNets v3:

MACs означает Multiply Adds

Точка проверки классификации MACs(M) Параметры(M) Точность Top1 Pixel1 CPU(мс)
mobilenet_v3_large_1.0_224 217 5.4 75.6 51.2
mobilenet_v3_large_0.75_224 155 4.0 73.3 39.8
mobilenet_v3_large_minimalistic_1.0_224 209 3.9 72.3 44.1
mobilenet_v3_small_1.0_224 66 2.9 68.1 15.8
mobilenet_v3_small_0.75_224 44 2.4 65.4 12.8
mobilenet_v3_small_minimalistic_1.0_224 65 2.0 61.9 12.2

Для случаев использования классификации изображений см. эту страницу для подробных примеров.

Для случаев использования трансферного обучения, обязательно ознакомьтесь с руководством по трансферному обучению и дообучению.

Примечание: каждый Keras Application ожидает определённого вида предобработки входных данных. Для MobileNetV3 по умолчанию предобработка входных данных включена в модель (как часть слоя Rescaling), и поэтому tf.keras.applications.mobilenet_v3.preprocess_input фактически является функцией пропуска. В этом случае модели MobileNetV3 ожидают, что их входные данные будут плавающими тензорами пикселей со значениями в диапазоне [0-255]. В то же время, предобработка как часть модели (т. е. Rescaling слой) может быть отключена, установив include_preprocessing аргумент в значение False. При отключении предобработки модели MobileNetV3 ожидают, что их входные данные будут плавающими тензорами пикселей со значениями в диапазоне [-1, 1].
Аргументы
input_shape Необязательная кортеж формы, который необходимо указать, если вы хотите использовать модель с разрешением входного изображения, отличным от (224, 224, 3). Он должен иметь ровно 3 канала входных данных (224, 224, 3). Вы также можете опустить этот параметр, если хотите определить input_shape из input_tensor. Если вы выберите включить как input_tensor, так и input_shape, то input_shape будет использоваться, если они совпадают; в противном случае будет выведено сообщение об ошибке. Например, (160, 160, 3) является допустимым значением.
alpha управляет шириной сети. Это известно как множитель глубины в статье MobileNetV3, но имя сохраняется для согласованности с MobileNetV1 в Keras.
  • Если alpha < 1.0, пропорционально уменьшает число фильтров в каждом слое.
  • Если alpha > 1.0, пропорционально увеличивает число фильтров в каждом слое.
  • Если alpha = 1, используется значение по умолчанию из статьи.
minimalistic В дополнение к моделям большого и малого размера, этот модуль также содержит так называемые минималистичные модели. Эти модели имеют такие же характеристики размеров слоёв, как и MobilenetV3, но они не используют никаких продвинутых блоков (блоки squeeze-and-excite, hard-swish и 5x5 convolutions). Хотя эти модели менее эффективны на CPU, они значительно быстрее работают на GPU/DSP.
include_top Булево значение, указывает, нужно ли включать полностью соединённый слой в верхней части сети. По умолчанию True.
weights Строка, одна из None (случайная инициализация), 'imagenet' (предобучение на ImageNet) или путь к файлу весов для загрузки.
input_tensor Необязательный Keras тензор (т. е. результат из layers.Input()) для использования в качестве входного изображения для модели.
pooling Строка, необязательный режим пулинга для извлечения признаков, когда include_top имеет значение False.
  • None означает, что результатом модели будет 4D тензор выходного значения последнего сверточного блока.
  • avg означает, что к выходу последнего сверточного блока будет применено глобальное усреднение, и, следовательно, результатом модели будет 2D тензор.
  • max означает, что будет применено глобальное максимальное пулинг.
  • classes Целое число, необязательное количество классов для классификации изображений, которое необходимо указать только в том случае, если include_top имеет значение True и не указан weights аргумент.
    dropout_rate доля входных единиц, которые необходимо отбросить в последнем слое.
    classifier_activation str или вызываемая функция. Функция активации для использования в "верхнем" слое. Игнорируется, если include_top=True. Установите classifier_activation=None для возвращения логарифмов "верхнего" слоя. При загрузке предобученных весов, classifier_activation может быть только None или "softmax".
    include_preprocessing Булево значение, указывает, нужно ли включать слой предобработки (Rescaling) в нижней части сети. По умолчанию True.

    Аргументы вызова:

    • inputs: Плавающее число numpy.array или tf.Tensor, 4D с 3 цветовыми каналами, со значениями в диапазоне [0, 255], если include_preprocessing имеет значение True, и в диапазоне [-1, 1] в противном случае.
    Возвращаемое значение
    Экземпляр keras.Model.

    © 2022 The TensorFlow Authors. All rights reserved.
    Licensed under the Creative Commons Attribution License 4.0.
    Code samples licensed under the Apache 2.0 License.
    https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/keras/applications/MobileNetV3Small

    Spec-Zone.ru

    Настройки Оффлайн Что нового Помощь О нас
    Spec-Zone .ru
    спецификации, руководства, описания, API