Spec-Zone.ru › TensorFlow

tf.keras.applications.MobileNetV3Small

Инициализирует архитектуру 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 CPU Pixel1(мс)
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), и, следовательно, keras.applications.mobilenet_v3.preprocess_input фактически является функцией пропуска. В этом случае модели MobileNetV3 ожидают, что их входные данные будут плавающими тензорами пикселей со значениями в диапазоне [0-255]. В то же время предварительную обработку как часть модели (т. е. Rescaling слой) можно отключить, установив аргумент include_preprocessing в значение False. При отключенной предварительной обработке модели MobileNetV3 ожидают, что их входные данные будут плавающими тензорами пикселей со значениями в диапазоне [-1, 1].
Аргументы
input_shape Необязательная кортеж формы, который необходимо указать, если вы хотите использовать модель с разрешением входного изображения, которое не является (224, 224, 3). Он должен содержать ровно 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). Хотя эти модели менее эффективны на процессоре, они значительно эффективнее на графических процессорах/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 Функция активации или вызываемый объект. Функция активации, используемая в верхнем слое. Игнорируется, если не include_top=True. Установите classifier_activation=None, чтобы получить логарифмы верхнего слоя. При загрузке предварительно обученных весов classifier_activation может быть только None или "softmax".
    include_preprocessing Логическое значение, указывает, следует ли включать слой предварительной обработки (Rescaling) в нижней части сети. По умолчанию значение равно True.
    Аргументы вызова
    inputs Плавающее число numpy.array или тензор, созданный с помощью back-end, 4D с 3 цветовыми каналами, со значениями в диапазоне [0, 255], если include_preprocessing равно True, и в диапазоне [-1, 1] в противном случае.
    Возвращаемые значения
    Экземпляр модели.

    © 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/api_docs/python/tf/keras/applications/MobileNetV3Small

    Spec-Zone.ru

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