Тренировать модель глубокого обучения (Image Analyst)

Доступно с лицензией Image Analyst.

Краткая информация

Тренирует модель глубокого обучения с использованием результатов работы инструмента Экспорт обучающих данных для глубокого обучения.

Использование

  • Этот инструмент тренирует модель глубокого обучения с использованием сред глубокого обучения.

  • Чтобы настроить компьютер на работу в среде глубокого обучения в ArcGIS AllSource, см. раздел Установка сред глубокого обучения для ArcGIS.

  • Если вы будете обучать модели в автономной среде, см. дополнительную информацию в разделе Установка для автономной среды.

  • Этот инструмент также можно использовать для тонкой настройки существующей обученной модели. Например, существующую модель, обученную для автомобилей, можно настроить для обучения модели идентификации грузовиков.

  • Чтобы запустить этот инструмент с использованием графического процессора, установите для параметра среды Тип процессора значение GPU. Если у вас более одного графического процессора, вместо этого задайте параметр среды GPU ID.

  • По умолчанию инструмент использует все доступные графические процессоры, если для параметра Тип модели задана одна из следующих опций:

    • ConnectNet
    • Классификатор пространственных объектов
    • MaskRCNN
    • Multi Task Road Extractor
    • Single Shot Detector
    • U-Net

    Чтобы использовать определенный графический процессор, используйте параметр среды GPU ID.

  • Входные обучающие данные для этого инструмента должны включать папки с изображениями и метками, созданными с помощью инструмента Экспорт обучающих данных для глубокого обучения.

  • Задайте преобразования fastai для увеличения обучающих наборов данных и наборов данных проверки с помощью файла transforms.json, который находится в той же папке, что и обучающие данные. Ниже приведен пример файла transforms.json:

    Пользовательские параметры увеличения данных

    
    {
        "Training": {
            "rotate": {
                "degrees": 30,
                "p": 0.5
            },
            "crop": {
                "size": 224,
                "p": 1,
                "row_pct": "0, 1",
                "col_pct": "0, 1"
            },
            "brightness": {
                "change": "0.4, 0.6"
            },
            "contrast": {
                "scale": "1.0, 1.5"
            },
            "rand_zoom": {
                "scale": "1, 1.2"
            }
        },
        "Validation": {
            "crop": {
                "size": 224,
                "p": 1.0,
                "row_pct": 0.5,
                "col_pct": 0.5
            }
        }
    }

  • Информацию о требованиях к запуску этого инструмента и проблемах, с которыми вы можете столкнуться, см. в разделе Часто задаваемые вопросы по глубокому обучению.

  • Дополнительную информацию о глубоком обучении см. в разделе Глубокое обучение в ArcGIS AllSource.

Параметры

ПодписьОписаниеТип данных
Входные обучающие данные

Папки, содержащие фрагменты изображений, метки и статистику, необходимые для обучения модели. Это результат работы инструмента Экспорт обучающих данных для глубокого обучения.

При соблюдении всех следующих условий поддерживаются несколько входных папок:

  • Формат метаданных должен быть классифицированными листами, листами с метками, листами с несколькими метками, классами визуальных объектов Pascal или масками RCNN.
  • Все обучающие данные должны иметь одинаковый формат метаданных.
  • Все обучающие данные должны иметь одинаковое количество каналов.
  • Все обучающие данные должны иметь одинаковый размер листа.

Folder
Выходная папка

Местоположение выходной папки, в которой будет храниться обученная модель.

Folder
Максимальное число периодов времени
(Дополнительный)

Максимальное количество периодов времени, для которых будет обучаться модель. Максимальный период времени, равный единице, означает, что набор данных будет передаваться вперед и назад через нейронную сеть один раз. Значение по умолчанию равно 20.

Long
Тип модели
(Дополнительный)

Указывает тип модели, который будет использоваться для обучения модели глубокого обучения.

  • BDCN Edge Detector (Классификация пикселов)Для обучения модели будет использоваться архитектура двунаправленной каскадной сети (BDCN). BDCN Edge Detector используется для классификации пикселов. Этот подход полезен для улучшения возможностей обнаружения ребер объектов в разных масштабах.
  • Change detector (Классификация пикселов)Для обучения модели будет использоваться архитектура Change detector. Change detector используется для классификации пикселов. Этот подход создает объект модели, который использует два пространственно-временных изображения для создания классифицированного растра изменений. Входные обучающие данные для этого типа модели используют формат метаданных Классифицированные листы.
  • ConnectNet (Классификация пикселов)Для обучения модели будет использоваться архитектура ConnectNet. ConnectNet используется для классификации пикселов. Этот подход полезен для извлечения дорожной сети из космических снимков.
  • CycleGAN (Преобразование изображения)Для обучения модели будет использоваться архитектура CycleGAN. CycleGAN используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Этот подход уникален тем, что обучаемые изображения не должны перекрываться. Входные обучающие данные для этого типа модели используют формат метаданных CycleGAN.
  • DeepLabV3 (классификация пикселов)Для обучения модели будет использоваться архитектура DeepLabV3. DeepLab используется для классификации пикселов.
  • Deep Sort (Отслеживание объектов)Для обучения модели будет использоваться архитектура Deep Sort. Deep Sort используется для обнаружения объектов в видео. Модель обучается с использованием кадров видео и определяет классы и ограничивающие рамки объектов в каждом кадре. Входные обучающие данные для этого типа модели используют формат метаданных Imagenet. While Siam Mask полезен при отслеживании объекта, а Deep Sort полезен при обучении модели отслеживанию нескольких объектов.
  • DETReg (выявление объектов)Для обучения модели будет использоваться архитектура DETReg. DETReg используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют Pascal Visual Object Classes. Этот тип модели требует значительных ресурсов GPU; рекомендуется выделить GPU с не менее 16 ГБ памяти для корректного запуска.
  • FasterRCNN (классификация объектов)Для обучения модели будет использоваться архитектура FasterRCNN. FasterRCNN используется для обнаружения объектов.
  • Классификатор объектов (классификация объектов)Для обучения модели будет использоваться архитектура классификатора объектов. Классификатор объектов используется для классификации объектов или изображений.
  • HED Edge Detector (Классификация пикселов)Для обучения модели будет использоваться архитектура Holistically-Nested Edge Detection (HED). HED Edge Detector используется для классификации пикселов. Этот подход полезен для обнаружения краев и границ объектов.
  • Image captioner (Преобразование изображения)Для обучения модели будет использоваться архитектура Image captioner. Image captioner используется для перевода изображения в текст. Этот подход создает модель, которая создает текстовые подписи к изображению.
  • MaskRCNN (выявление объектов)Для обучения модели будет использоваться архитектура MaskRCNN. MaskRCNN используется для обнаружения объектов. Этот подход используется, например, для сегментации, которая представляет собой точное выделение объектов на изображении. Этот тип модели можно использовать для обнаружения контуров зданий. Он использует формат метаданных MaskRCNN для входных обучающих данных. Значения класса для входных обучающих данных должны начинаться с 1. Этот тип модели можно обучить только с помощью графического процессора с поддержкой CUDA.
  • MaX-DeepLab (Паноптическая сегментация).Для обучения модели будет использоваться архитектура MaX-DeepLab. MaX-DeepLab используется для паноптической сегментации. Этот подход создает объект модели, который создает изображения и объекты. Входные обучающие данные для этого типа модели используют формат метаданных с паноптической сегментацией.
  • MMDetection (Выявление объекта)Для обучения модели будет использоваться архитектура MMDetection. MMDetection используется для обнаружения объектов. Поддерживаемые форматы метаданных: прямоугольники класса визуальных объектов Pascal и прямоугольники KITTI.
  • MMSegmentation (Классификация пикселов)Для обучения модели будет использоваться архитектура MMSegmentation. MMSegmentation используется для классификации пикселов. Поддерживаемый формат метаданных — Классифицированные листы.
  • Multi Task Road Extractor (Классификация пикселов)Для обучения модели будет использоваться архитектура Multi Task Road Extractor. Multi Task Road Extractor используется для классификации пикселов. Этот подход полезен для извлечения дорожной сети из космических снимков.
  • Pix2Pix (Преобразование изображения)Для обучения модели будет использоваться архитектура Pix2Pix. Pix2Pix используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • Pix2PixHD (Преобразование изображения)Для обучения модели будет использоваться архитектура Pix2PixHD. Pix2PixHD используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • PSETAE (Классификация пикселов)Для обучения модели классификации временных рядов будет использоваться Архитектура Pixel-Set Encoders и Temporal Self-Attention (PSETAE). PSETAE используется для классификации пикселов. Предварительные данные, используемые для этого метода, являются многомерными данными.
  • Pyramid Scene Parsing Network (классификация пикселов)Для обучения модели будет использоваться архитектура Pyramid Scene Parsing Network (PSPNET). PSPNET используется для классификации пикселов.
  • RetinaNet (выявление объектов)Для обучения модели будет использоваться архитектура RetinaNet. RetinaNet используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют формат метаданных Pascal Visual Object Classes.
  • SAMLoRA (Классификация пикселов)Для обучения модели будет использоваться модель Segment Anything Model (SAME) с Адаптацией низкого ранга (LoRa). Этот тип модели использует модель Segment anything model (SAM) в качестве базовой модели и будет точно настраиваться под конкретную задачу с относительно низкими вычислительными требованиями и меньшим набором данных.
  • Siam Mask (Отслеживание объектов)Для обучения модели будет использоваться архитектура Siam Mask. Siam Mask используется для обнаружения объектов в видео. Модель обучается с использованием кадров видео и определяет классы и ограничивающие рамки объектов в каждом кадре. Входные обучающие данные для этого типа модели используют формат метаданных MaskRCNN.
  • Single Shot Detector (выявление объектов)Для обучения модели будет использоваться архитектура Single Shot Detector (SSD). SSD используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют формат метаданных Pascal Visual Object Classes.
  • Super-resolution (Преобразование изображения)Для обучения модели будет использоваться архитектура Super-resolution. Super-resolution используется для преобразования изображения в изображение. Этот подход создает объект модели, который увеличивает разрешение и улучшает качество изображений. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • U-Net (классификация пикселов)Для обучения модели будет использоваться архитектура U-Net. U-Net используется для классификации пикселов.
  • YOLOv3 (выявление объектов)Для обучения модели будет использоваться архитектура YOLOv3. YOLOv3 используется для обнаружения объектов.
String
Размер пакета
(Дополнительный)

Количество обучающих выборок, которые будут обрабатываться для обучения за один раз.

Увеличение размера пакета может улучшить производительность инструмента, но при этом увеличение размера пакета приводит к расходованию большего объема памяти.

Если для пакета заданного размера недостаточно памяти графического процессора, попробуйте установить и использовать оптимальный размер пакета. Если возникает ошибка нехватки памяти, используйте меньший размер пакета.

Long
Аргументы модели
(Дополнительный)

Информация из параметра Тип модели будет использоваться для заполнения этого параметра. Аргументы различаются в зависимости от архитектуры модели. Поддерживаемые аргументы модели для моделей, обученных в ArcGIS, описаны ниже. Предварительно обученные модели ArcGIS и пользовательские модели глубокого обучения могут включать дополнительные аргументы, которые поддерживаются инструментом.

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

  • attention_type — определяет тип модуля. Варианты модуля: PAM (Pyramid Attention Module) или BAM (Basic Attention Module). По умолчанию PAM.
  • attn_res — Количество рассмотрений в остаточных блоках. Это необязательное целочисленное значение. По умолчанию это 16. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • channel_mults — дополнительные множители глубины для последующих разрешений в U-Net. По умолчанию это 1, 2, 4, 4, 8, 8. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • class_balancing — указывает, будет ли обратная кросс-энтропийная потеря сбалансирована с частотой пикселов на класс. По умолчанию False.
  • decode_params — словарь, который определяет, как будет работать Image captioner. Значение по умолчанию равно {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}. Аргумент decode_params состоит из следующих параметров:
    • embed_size — Размер встраивания. По умолчанию в нейронной сети 100 слоев.
    • hidden_size — Размер скрытого слоя. По умолчанию в нейронной сети 100 слоев.
    • attention_size — Размер промежуточного рассматриваемого слоя. По умолчанию в нейронной сети 100 слоев.
    • teacher_forcing — Вероятность усиления учителем. Teacher forcing — это стратегия обучения рекуррентных нейронных сетей. Она использует выходные данные модели из предыдущего временного шага в качестве входных данных вместо предыдущих выходных данных во время обратной передачи ошибки обучения. Допустимый диапазон от 0.0 до 1.0. Значение по умолчанию равно 1.
    • dropout — Вероятность прореживания. Допустимый диапазон от 0.0 до 1.0. Значение по умолчанию равно 0.1.
    • pretrained_emb — Задает предварительно обученный флаг встраивания. Если True, будет использоваться быстрое встраивание текста. Если False, не будет использоваться предварительно обученное встраивание текста. По умолчанию False.
  • dropout — необязательное значение с плавающей точкой для прореживания. По умолчанию - 0. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • focal_loss — указывает, будут ли использоваться фокальные потери. По умолчанию False.
  • gaussian_thresh — Порог Гаусса, который задает требуемую ширину дороги. Допустимый диапазон от 0.0 до 1.0. По умолчанию 0.76.
  • grids — количество сеток, на которые будет разбито изображение для обработки. Например, значение аргумента равным 4 означает, что изображение будет разделено на 16 ячеек (4 x 4). Если значение не задано, оптимальное значение сетки будет рассчитано на основе входных изображений.
  • ignore_classes – Список значений классов, при которых в модели не будет потерь.
  • inner_channel — Значение inner_channel является размером первого слоя U-net. Это необязательное целочисленное значение. Значение по умолчанию - 64. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • linear_start — Необязательное целое число для планирования запуска. Значение по умолчанию 1e-02. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • linear_end — Необязательное целое число для планирования окончания. Значение по умолчанию 1e-06. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • model — опорная модель, используемая для обучения модели. Доступные опорные модели зависят от значения параметра Тип модели. По умолчанию для MMDetection – cascade_rcnn. По умолчанию для MMSegmentation – deeplabv3.
  • model_weight — определяет, использовать ли веса предварительно обученной модели. По умолчанию False. Значением также может быть путь к файлу конфигурации, содержащему веса модели из репозитория MMDetection или репозитория MMSegmentation.
  • monitor — указывает, какую метрику следует отслеживать во время проверки и ранней остановки. Доступные метрики зависят от значения параметра Тип модели. По умолчанию valid_loss.
  • mtl_model — Задает тип архитектуры, который будет использоваться для создания модели. Возможные варианты linknet или hourglass для нейронных архитектур на основе linknet или hourglass соответственно. По умолчанию hourglass.
  • n_timestep — Необязательное значение для количества временных шагов диффузии. Значение по умолчанию равно 1000. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • norm_groups — количество групп для нормирования групп. Это необязательное целочисленное значение. Значение по умолчанию 32. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • orient_bin_size — Размер бина для углов ориентации. Значение по умолчанию равно 20.
  • orient_theta — Ширина маски ориентации. Значение по умолчанию - 8.
  • pyramid_sizes — количество и размер слоев свертки, которые должны применяться к различным субрегионам. По умолчанию [1,2,3,6]. Аргумент относится к модели Pyramid Scene Parsing Network.
  • ratios — список отношений сторон, используемых для рамок привязки. При обнаружении объекта рамка привязки представляет идеальное местоположение, форму и размер прогнозируемого объекта. Например, задание для этого аргумента [1.0,1.0], [1.0, 0.5] означает, что рамка якоря - это квадрат (1:1) или прямоугольник, горизонтальная сторона которого в два раза меньше вертикальной (1:0.5). По умолчанию для RetinaNet – [0.5,1,2]. По умолчанию для Single Shot Detector – [1.0, 1.0].
  • res_blocks — Количество остаточных блоков. Это необязательное целочисленное значение. Значение по умолчанию равно 3. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • scales — количество уровней масштабирования, на которые каждая ячейка будет увеличена или уменьшена. По умолчанию [1, 0.8, 0.63].
  • schedule — При необходимости укажите тип используемого расписания. Доступные опции: linear, warmup10, warmup50, const, jsd, и cosine. По умолчанию это linear. Этот аргумент поддерживается только в том случае, если значение параметра Опорная модель равно SR3.
  • use_net — указывает, будет ли использоваться декодер U-Net для восстановления данных после завершения формирования пула пирамидных слоев. Значением по умолчанию является True. Аргумент относится к модели Pyramid Scene Parsing Network.
  • zooms — количество уровней масштабирования, на которое каждая ячейка сетки будет увеличена или уменьшена. Установка для этого аргумента значения 1 означает, что все ячейки сетки останутся в том же размере или уровне масштабирования. Уровень масштабирования 2 означает, что все ячейки сетки станут в два раза больше (увеличены на 100 процентов). Предоставление списка уровней масштабирования означает, что все ячейки сетки будут масштабироваться с использованием всех значений в списке. Значение по умолчанию равно 1.
Value Table
Скорость обучения
(Дополнительный)

Скорость, с которой существующая информация будет перезаписываться вновь полученной информацией в процессе обучения. Если значение не указано, оптимальная скорость обучения будет получена из кривой обучения в процессе.

Double
Опорная модель
(Дополнительный)

Указывает предварительно настроенную нейронную сеть, которая будет использоваться в качестве архитектуры для обучения новой модели. Этот метод известен как Трансферное обучение.

Кроме того, поддерживаемые нейронные сети свертки из моделей изображений PyTorch (timm) можно указать, используя timm в качестве префикса, например, timm:resnet31 , timm:inception_v4 , timm:efficientnet_b3 и т.д.

  • DenseNet-121Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 121 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DenseNet-161Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 161 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DenseNet-169Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 169 слоев. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DenseNet-201Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 201 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • MobileNet версия 2Предварительно настроенная модель будет обучаться на базе данных Imagenet, имеет глубину 54 слоя и предназначена для вычислений на периферийных устройствах, поскольку использует меньше памяти.
  • ResNet-18Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более миллиона изображений и имеющем 18 слоев в глубину.
  • ResNet-34Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 34 слоя в глубину. Это значение по умолчанию
  • ResNet-50Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 50 слоев в глубину.
  • ResNet-101Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 101 слой в глубину.
  • ResNet-152Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 152 слоя в глубину.
  • VGG-11Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 11 слоев в глубину.
  • VGG-11 с пакетной нормализациейПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 11 слоев.
  • VGG-13Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 13 слоев в глубину.
  • VGG-13 с пакетной нормализациейПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 13 слоев.
  • VGG-16Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 16 слоев в глубину.
  • VGG-16 с пакетной нормализациейПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 16 слоев.
  • VGG-19Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 19 слоев в глубину.
  • VGG-19 с пакетной нормализациейПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 19 слоев.
  • DarkNet-53Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет 53 слоя в глубину.
  • Reid_v1Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который используется для отслеживания объектов.
  • Reid_v2Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который используется для отслеживания объектов.
  • ResNeXt-50Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, и иметь глубину 50 слоев. Это однородная нейронная сеть, которая уменьшает количество гиперпараметров, необходимых для обычной ResNet.
  • Wide ResNet-50Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, и иметь глубину 50 слоев. Она имеет ту же архитектуру, что и ResNET, но с большим количеством каналов.
  • SR3Предварительно настроенная модель будет использовать модель Super Resolution via Repeated Refinition (SR3). SR3 адаптирует вероятностные модели диффузионного подавления шума к условному созданию изображений и обеспечивает сверхразрешение с помощью стохастического процесса подавления шума. Более подробно см. раздел Image Super-Resolution via Iterative Refinement.
  • ViT-BПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с базовым размером нейронной сети. Это самый маленький размер. Более подробно см. раздел Segment Anything.
  • ViT-LПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с большим размером нейронной сети. Более подробно см. раздел Segment Anything.
  • ViT-HПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с огромным размером нейронной сети. Это самый большой размер. Более подробно см. раздел Segment Anything.
String
Предварительно обученная модель
(Дополнительный)

Предварительно обученная модель, которая будет использоваться для тонкой настройки новой модели. На входе берется файл определения модели Esri (.emd) или файл пакета глубокого обучения (.dlpk).

Предварительно обученную модель с подобными классами можно настроить так, чтобы она соответствовала новой модели. Предварительно обученная модель должна быть обучена с тем же типом модели и опорной моделью, которые будут использоваться для обучения новой модели.

File
Проверка %
(Дополнительный)

Процент обучающих выборок, которые будут использоваться для проверки модели. Значением по умолчанию является 10.

Double
Завершить, когда модель перестанет улучшаться
(Дополнительный)

Указывает, будет ли реализована ранняя остановка.

  • Отмечено — будет реализована ранняя остановка, и обучение модели остановится, когда модель перестанет улучшаться, независимо от указанного значения параметра Максимальное число периодов времени. Это значение по умолчанию
  • Не отмечено — ранняя остановка не будет реализована, и обучение модели будет продолжаться до тех пор, пока не будет достигнуто значение параметра Максимальное число периодов времени.
Boolean
Закрепить модель
(Дополнительный)

Указывает, будут ли закреплены опорные слои в предварительно обученной модели, чтобы веса и смещения оставались такими, как они были изначально разработаны.

  • Отмечено — опорные слои будут закреплены, а предопределенные веса и смещения не будут изменены в параметре Опорная модель. Это значение по умолчанию
  • Не отмечено — опорные слои не будут закреплены, а веса и смещения параметра Опорная модель могут быть изменены для соответствия обучающим выборкам. Это требует больше времени для обработки, но обычно дает лучшие результаты.

Boolean
Увеличение данных
(Дополнительный)

Указывает тип увеличения данных, который будет использоваться.

Увеличение данных — это метод искусственного увеличения обучающего набора путем создания модифицированных копий набора данных с использованием существующих данных.

  • По умолчаниюБудут использоваться методы и значения увеличения данных по умолчанию.Включенные по умолчанию методы увеличения данных: crop, dihedral_affine, brightness, contrast и zoom. Эти значения по умолчанию обычно хорошо подходят для спутниковых изображений.
  • НетУвеличение данных использоваться не будет.
  • ПользовательскиеЗначения увеличения данных будут заданы с помощью параметра Параметры увеличения.
  • ФайлПреобразования fastai для увеличения обучающих наборов данных и наборов данных проверки будут заданы с помощью файла transforms.json, который находится в той же папке, что и обучающие данные.Для получения дополнительной информации о различных преобразованиях см. vision transforms на сайте fastai.
String
Параметры увеличения
(Дополнительный)

Задает значение для каждого преобразования в параметре увеличения.

  • rotate — Изображение будет повернуто случайным образом (в градусах) по вероятности (p). Если градусы представляют диапазон (a,b), значение будет равномерно присвоено от a до b. Значение по умолчанию – 30.0; 0.5.
  • brightness — Яркость изображения будет произвольно регулироваться в зависимости от значения изменения с вероятностью (p). Изменение 0 преобразует изображение в самое темное, а изменение 1 преобразует изображение в самое светлое. Изменение 0,5 не отрегулирует яркость. Если изменение представляет диапазон (a,b), увеличение будет равномерно назначать значение от a до b. Значение по умолчанию – (0.4,0.6); 1.0.
  • contrast — Контрастность изображения будет случайным образом регулироваться в зависимости от значения масштаба с вероятностью (p). Масштаб 0 преобразует изображение в оттенки серого, а масштаб больше 1 преобразует изображение в суперконтрастное. Масштаб 1 не регулирует контрастность. Если масштаб представляет диапазон (a,b), увеличение будет равномерно назначать значение отa до b. Значение по умолчанию (0.75, 1.5); 1.0.
  • zoom — Изображение будет произвольно увеличиваться в зависимости от значения масштаба. Значение масштаба имеет вид scale(a,b); p. Значение по умолчанию — (1.0, 1.2); 1.0, где p - вероятность. Только масштаб больше 1.0 приведет к увеличению изображения. Если масштаб представляет диапазон (a,b), будет равномерно назначено значение от a до b.
  • crop — Изображение будет обрезано случайным образом. Значение обрезки имеет вид size;p;row_pct;col_pct, где p - вероятность. Положение задается (col_pct, row_pct), с помощью col_pct и row_pct, нормализованными между 0 и 1. Если col_pct или row_pct это диапазон (a,b), будет равномерно назначено значение от a до b. Значение по умолчанию chip_size;1.0; (0, 1); (0, 1), где 224 — размер чипа по умолчанию.

Value Table
Размер чипа
(Дополнительный)

Размер изображения, которое будет использоваться для обучения модели. Изображения будут обрезаны до указанного размера чипа. Если размер изображения меньше значения параметра, будет использоваться размер изображения.

Размер чипа по умолчанию будет таким же, как размер листа обучающих данных. Если размер листа x и y не совпадает, будет использовано большее значение.

Long
Изменить размер до
(Дополнительный)

Изменяет размеры фрагментов изображения. После изменения размера чипа блоки пикселов будут обрезаны по размеру чипа и использованы для обучения. Этот параметр применяется только к обнаружению объектов (PASCAL VOC), классификации объектов (помеченные листы) и данным сверхвысокого разрешения.

Значение изменения размера часто составляет половину значения размера чипа. Если значение изменения размера меньше значения размера чипа, значение изменения размера используется для создания блоков пикселей для обучения.

String
Схема инициализации весов
(Дополнительный)

Задает схему, в которой будут инициализироваться веса для слоя.

Чтобы обучить модель с помощью мультиспектральных данных, модель должна учитывать различные типы доступных каналов. Это делается путем повторной инициализации первого слоя модели.

Этот параметр применим только в том случае, если в модели используются мультиспектральные изображения.

  • ПроизвольноСлучайные веса будут инициализированы для каналов, отличных от RGB, а предварительно обученные веса будут сохранены для каналов RGB. Это значение по умолчанию
  • Красный каналВеса, соответствующие красному каналу из слоя предварительно обученной модели, будут клонированы для каналов, отличных от RGB, а предварительно обученные веса будут сохранены для каналов RGB.
  • Все произвольноСлучайные веса будут инициализированы как для каналов RGB, так и для каналов, отличных от RGB. Эта опция применима только к мультиспектральным изображениям.
String
Мониторинг метрик
(Дополнительный)

Задает метрику, которая будет отслеживаться при проверке контрольных точек и ранней остановке.

  • Потери проверкиБудут отслеживаться потери проверки. Когда потери проверки перестанут существенно изменяться, модель остановится. Это значение по умолчанию
  • Средняя точностьБудет контролироваться средневзвешенное значение точности на каждом пороге. Когда это значение перестанет существенно изменяться, модель остановится.
  • ТочностьБудет отслеживаться соотношение количества правильных прогнозов к общему количеству прогнозов. Когда это значение перестанет существенно изменяться, модель остановится.
  • F1-оценкаБудет отслеживаться сочетание показателей точности и отклика модели. Когда это значение перестанет существенно изменяться, модель остановится.
  • MIoUБудет отслеживаться среднее значение между пересечением и объединением (IoU) сегментированных объектов по всем изображениям тестового набора данных. Когда это значение перестанет существенно изменяться, модель остановится.
  • НарезатьПроизводительность модели будет отслеживаться с помощью метрики Dice. Когда это значение перестанет существенно изменяться, модель остановится.Это значение может варьироваться от 0 до 1. Значение 1 соответствует идеальному совпадению пикселов между данными проверки и данными обучения.
  • ТочностьБудет отслеживаться точность, которая измеряет точность модели при классификации образца как положительного. Когда это значение перестанет существенно изменяться, модель остановится.Точность – это соотношение между количеством правильно классифицированных положительных образцов и общим количеством классифицированных образцов (правильно или неправильно).
  • ПолнотаБудет отслеживаться отклик, который измеряет способность модели обнаруживать положительные образцы. Когда это значение перестанет существенно изменяться, модель остановится.Чем выше отклик, тем больше положительных образцов обнаруживается. Значение отклика представляет собой соотношение между количеством положительных образцов, правильно классифицированных как положительные, и общим количеством положительных образцов.
  • Corpus bleuБудет отслеживаться показатель Corpus blue. Когда это значение перестанет существенно изменяться, модель остановится.Эта оценка используется для расчета точности нескольких предложений, таких как абзац или документ.
  • Multi label F-betaБудет отслеживаться средневзвешенное гармоническое значение точности и отклика. Когда это значение перестанет существенно изменяться, модель остановится.Это часто называют показателем F-бета.
String

Производные выходные данные

ПодписьОписаниеТип данных
Выходная модель

Выходной файл обученной модели.

File

TrainDeepLearningModel(in_folder, out_folder, {max_epochs}, {model_type}, {batch_size}, {arguments}, {learning_rate}, {backbone_model}, {pretrained_model}, {validation_percentage}, {stop_training}, {freeze}, {augmentation}, {augmentation_parameters}, {chip_size}, {resize_to}, {weight_init_scheme}, {monitor})
ИмяОписаниеТип данных
in_folder
[in_folder,...]

Папки, содержащие фрагменты изображений, метки и статистику, необходимые для обучения модели. Это результат работы инструмента Экспорт обучающих данных для глубокого обучения.

При соблюдении всех следующих условий поддерживаются несколько входных папок:

  • Формат метаданных должен быть классифицированными листами, листами с метками, листами с несколькими метками, классами визуальных объектов Pascal или масками RCNN.
  • Все обучающие данные должны иметь одинаковый формат метаданных.
  • Все обучающие данные должны иметь одинаковое количество каналов.
  • Все обучающие данные должны иметь одинаковый размер листа.

Folder
out_folder

Местоположение выходной папки, в которой будет храниться обученная модель.

Folder
max_epochs
(Дополнительный)

Максимальное количество периодов времени, для которых будет обучаться модель. Максимальный период времени, равный единице, означает, что набор данных будет передаваться вперед и назад через нейронную сеть один раз. Значение по умолчанию равно 20.

Long
model_type
(Дополнительный)

Указывает тип модели, который будет использоваться для обучения модели глубокого обучения.

  • BDCN_EDGEDETECTORДля обучения модели будет использоваться архитектура двунаправленной каскадной сети (BDCN). BDCN Edge Detector используется для классификации пикселов. Этот подход полезен для улучшения возможностей обнаружения ребер объектов в разных масштабах.
  • CHANGEDETECTORДля обучения модели будет использоваться архитектура Change detector. Change detector используется для классификации пикселов. Этот подход создает объект модели, который использует два пространственно-временных изображения для создания классифицированного растра изменений. Входные обучающие данные для этого типа модели используют формат метаданных Классифицированные листы.
  • CONNECTNETДля обучения модели будет использоваться архитектура ConnectNet. ConnectNet используется для классификации пикселов. Этот подход полезен для извлечения дорожной сети из космических снимков.
  • CYCLEGANДля обучения модели будет использоваться архитектура CycleGAN. CycleGAN используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Этот подход уникален тем, что обучаемые изображения не должны перекрываться. Входные обучающие данные для этого типа модели используют формат метаданных CycleGAN.
  • DEEPLABДля обучения модели будет использоваться архитектура DeepLabV3. DeepLab используется для классификации пикселов.
  • DEEPSORTДля обучения модели будет использоваться архитектура Deep Sort. Deep Sort используется для обнаружения объектов в видео. Модель обучается с использованием кадров видео и определяет классы и ограничивающие рамки объектов в каждом кадре. Входные обучающие данные для этого типа модели используют формат метаданных Imagenet. While Siam Mask полезен при отслеживании объекта, а Deep Sort полезен при обучении модели отслеживанию нескольких объектов.
  • DETREGДля обучения модели будет использоваться архитектура DETReg. DETReg используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют Pascal Visual Object Classes. Этот тип модели требует значительных ресурсов GPU; рекомендуется выделить GPU с не менее 16 ГБ памяти для корректного запуска.
  • FASTERRCNNДля обучения модели будет использоваться архитектура FasterRCNN. FasterRCNN используется для обнаружения объектов.
  • FEATURE_CLASSIFIERДля обучения модели будет использоваться архитектура классификатора объектов. Классификатор объектов используется для классификации объектов или изображений.
  • HED_EDGEDETECTORДля обучения модели будет использоваться архитектура Holistically-Nested Edge Detection (HED). HED Edge Detector используется для классификации пикселов. Этот подход полезен для обнаружения краев и границ объектов.
  • IMAGECAPTIONERДля обучения модели будет использоваться архитектура Image captioner. Image captioner используется для перевода изображения в текст. Этот подход создает модель, которая создает текстовые подписи к изображению.
  • MASKRCNNДля обучения модели будет использоваться архитектура MaskRCNN. MaskRCNN используется для обнаружения объектов. Этот подход используется, например, для сегментации, которая представляет собой точное выделение объектов на изображении. Этот тип модели можно использовать для обнаружения контуров зданий. Он использует формат метаданных MaskRCNN для входных обучающих данных. Значения класса для входных обучающих данных должны начинаться с 1. Этот тип модели можно обучить только с помощью графического процессора с поддержкой CUDA.
  • MAXDEEPLABДля обучения модели будет использоваться архитектура MaX-DeepLab. MaX-DeepLab используется для паноптической сегментации. Этот подход создает объект модели, который создает изображения и объекты. Входные обучающие данные для этого типа модели используют формат метаданных с паноптической сегментацией.
  • MMDETECTIONДля обучения модели будет использоваться архитектура MMDetection. MMDetection используется для обнаружения объектов. Поддерживаемые форматы метаданных: прямоугольники класса визуальных объектов Pascal и прямоугольники KITTI.
  • MMSEGMENTATIONДля обучения модели будет использоваться архитектура MMSegmentation. MMSegmentation используется для классификации пикселов. Поддерживаемый формат метаданных — Классифицированные листы.
  • MULTITASK_ROADEXTRACTORДля обучения модели будет использоваться архитектура Multi Task Road Extractor. Multi Task Road Extractor используется для классификации пикселов. Этот подход полезен для извлечения дорожной сети из космических снимков.
  • PIX2PIXДля обучения модели будет использоваться архитектура Pix2Pix. Pix2Pix используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • PIX2PIXHDДля обучения модели будет использоваться архитектура Pix2PixHD. Pix2PixHD используется для преобразования изображения в изображение. Этот подход создает объект модели, который преобразует изображения одного типа в другой. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • PSETAEДля обучения модели классификации временных рядов будет использоваться Архитектура Pixel-Set Encoders и Temporal Self-Attention (PSETAE). PSETAE используется для классификации пикселов. Предварительные данные, используемые для этого метода, являются многомерными данными.
  • PSPNETДля обучения модели будет использоваться архитектура Pyramid Scene Parsing Network (PSPNET). PSPNET используется для классификации пикселов.
  • RETINANETДля обучения модели будет использоваться архитектура RetinaNet. RetinaNet используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют формат метаданных Pascal Visual Object Classes.
  • SAMLORAДля обучения модели будет использоваться модель Segment Anything Model (SAME) с Адаптацией низкого ранга (LoRa). Этот тип модели использует модель Segment anything model (SAM) в качестве базовой модели и будет точно настраиваться под конкретную задачу с относительно низкими вычислительными требованиями и меньшим набором данных.
  • SIAMMASKДля обучения модели будет использоваться архитектура Siam Mask. Siam Mask используется для обнаружения объектов в видео. Модель обучается с использованием кадров видео и определяет классы и ограничивающие рамки объектов в каждом кадре. Входные обучающие данные для этого типа модели используют формат метаданных MaskRCNN.
  • SSDДля обучения модели будет использоваться архитектура Single Shot Detector (SSD). SSD используется для обнаружения объектов. Входные обучающие данные для этого типа модели используют формат метаданных Pascal Visual Object Classes.
  • SUPERRESOLUTIONДля обучения модели будет использоваться архитектура Super-resolution. Super-resolution используется для преобразования изображения в изображение. Этот подход создает объект модели, который увеличивает разрешение и улучшает качество изображений. Входные обучающие данные для этого типа модели используют формат метаданных Экспорт листов.
  • UNETДля обучения модели будет использоваться архитектура U-Net. U-Net используется для классификации пикселов.
  • YOLOV3Для обучения модели будет использоваться архитектура YOLOv3. YOLOv3 используется для обнаружения объектов.
String
batch_size
(Дополнительный)

Количество обучающих выборок, которые будут обрабатываться для обучения за один раз.

Увеличение размера пакета может улучшить производительность инструмента, но при этом увеличение размера пакета приводит к расходованию большего объема памяти.

Если для пакета заданного размера недостаточно памяти графического процессора, попробуйте установить и использовать оптимальный размер пакета. Если возникает ошибка нехватки памяти, используйте меньший размер пакета.

Long
arguments
[arguments,...]
(Дополнительный)

Информация из параметра model_type будет использоваться для установки значений по умолчанию для этого параметра. Аргументы различаются в зависимости от архитектуры модели. Поддерживаемые аргументы модели для моделей, обученных в ArcGIS, описаны ниже. Предварительно обученные модели ArcGIS и пользовательские модели глубокого обучения могут включать дополнительные аргументы, которые поддерживаются инструментом.

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

  • attention_type — определяет тип модуля. Варианты модуля: PAM (Pyramid Attention Module) или BAM (Basic Attention Module). По умолчанию – PAM.
  • attn_res — Количество рассмотрений в остаточных блоках. Это необязательное целочисленное значение. По умолчанию это 16. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • channel_mults — дополнительные множители глубины для последующих разрешений в U-Net. По умолчанию это 1, 2, 4, 4, 8, 8. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • CLASS_BALANCING — указывает, будет ли обратная кросс-энтропийная потеря сбалансирована с частотой пикселов на класс. По умолчанию – False.
  • decode_params — словарь, который определяет, как будет работать Image captioner. Значение по умолчанию {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}. Аргумент decode_params состоит из следующих параметров:
    • embed_size — Размер встраивания. По умолчанию в нейронной сети 100 слоев.
    • hidden_size — Размер скрытого слоя. По умолчанию в нейронной сети 100 слоев.
    • attention_size — Размер промежуточного рассматриваемого слоя. По умолчанию в нейронной сети 100 слоев.
    • teacher_forcing — Вероятность усиления учителем. Teacher forcing — это стратегия обучения рекуррентных нейронных сетей. Она использует выходные данные модели из предыдущего временного шага в качестве входных данных вместо предыдущих выходных данных во время обратной передачи ошибки обучения. Допустимый диапазон от 0.0 до 1.0. Значение по умолчанию равно 1.
    • dropout — Вероятность прореживания. Допустимый диапазон от 0.0 до 1.0. Значение по умолчанию равно 0.1.
    • pretrained_emb — Задает, будет ли использоваться предварительно обученное встраивание текста. Если True, будет использоваться быстрое встраивание текста. Если False, не будет использоваться предварительно обученное встраивание текста. По умолчанию – False.
  • dropout — необязательное значение с плавающей точкой для прореживания. По умолчанию - 0. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • FOCAL_LOSS — указывает, будут ли использоваться фокальные потери. По умолчанию – False.
  • gaussian_thresh — Порог Гаусса, который задает требуемую ширину дороги. Допустимый диапазон от 0.0 до 1.0. По умолчанию 0.76.
  • grids — количество сеток, на которые будет разбито изображение для обработки. Например, значение аргумента равным 4 означает, что изображение будет разделено на 16 ячеек (4 x 4). Если значение не задано, оптимальное значение сетки будет рассчитано на основе входных изображений.
  • IGNORE_CLASSES – Список значений классов, при которых в модели не будет потерь.
  • inner_channel — inner_channel является размером первого слоя U-net. Это необязательное целочисленное значение. Значение по умолчанию - 64. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • linear_start — Необязательное целое число для планирования запуска. Значение по умолчанию 1e-02. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • linear_end — Необязательное целое число для планирования окончания. Значение по умолчанию 1e-06. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • MIXUP — определяет, будут ли использоваться приращение микширования и потеря микширования. По умолчанию – False.
  • model — опорная модель, используемая для обучения модели. Доступные опции зависят от значения параметра model_type. По умолчанию для MMDETECTION – cascade_rcnn. По умолчанию для MMSegmentation – deeplabv3.
  • model_weight — определяет, использовать ли веса предварительно обученной модели. По умолчанию – False. Значением также может быть путь к файлу конфигурации, содержащему веса модели из репозитория MMDetection или репозитория MMSegmentation
  • monitor — указывает, какую метрику следует отслеживать во время проверки и ранней остановки. Доступные метрики зависят от значения параметра model_type. По умолчанию – valid_loss.
  • mtl_model — Задает тип архитектуры, который будет использоваться для создания модели. Возможные варианты linknet или hourglass для нейронных архитектур на основе linknet или hourglass соответственно. По умолчанию – hourglass.
  • n_timestep — Необязательное значение для количества временных шагов диффузии. Значение по умолчанию равно 1000. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • norm_groups — количество групп для нормирования групп. Это необязательное целочисленное значение. Значение по умолчанию 32. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • orient_bin_size — Размер бина для углов ориентации. Значение по умолчанию равно 20.
  • orient_theta — Ширина маски ориентации. Значение по умолчанию - 8.
  • PYRAMID_SIZES — количество и размер слоев свертки, которые должны применяться к различным субрегионам. По умолчанию [1,2,3,6]. Этот аргумент относится к модели PSPNET.
  • ratios — список отношений сторон, используемых для рамок привязки. При обнаружении объекта рамка привязки представляет идеальное местоположение, форму и размер прогнозируемого объекта. Например, задание для этого аргумента [1.0,1.0], [1.0, 0.5] означает, что рамка якоря - это квадрат (1:1) или прямоугольник, горизонтальная сторона которого в два раза меньше вертикальной (1:0.5). По умолчанию для RETINANET – [0.5,1,2]. По умолчанию для r SSD – [1.0, 1.0].
  • res_blocks — Количество остаточных блоков. Это необязательное целочисленное значение. Значение по умолчанию равно 3. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • SCALES — количество уровней масштабирования, на которые каждая ячейка будет увеличена или уменьшена. По умолчанию [1, 0.8, 0.63].
  • schedule — При необходимости укажите тип используемого расписания. Доступные опции: linear, warmup10, warmup50, const, jsd, cosine. По умолчанию – linear. Этот аргумент поддерживается только в том случае, если значение параметра backbone_model равно SR3.
  • USE_UNET – Задает, будет ли использоваться декодер U-Net для восстановления данных после завершения формирования пирамидного пула. По умолчанию – True. Этот аргумент относится к модели PSPNET.
  • zooms — количество уровней масштабирования, на которое каждая ячейка сетки будет увеличена или уменьшена. Установка для этого аргумента значения 1 означает, что все ячейки сетки останутся в том же размере или уровне масштабирования. Уровень масштабирования 2 означает, что все ячейки сетки станут в два раза больше (увеличены на 100 процентов). Предоставление списка уровней масштабирования означает, что все ячейки сетки будут масштабироваться с использованием всех значений в списке. Значение по умолчанию равно 1.
Value Table
learning_rate
(Дополнительный)

Скорость, с которой существующая информация будет перезаписываться вновь полученной информацией в процессе обучения. Если значение не указано, оптимальная скорость обучения будет получена из кривой обучения в процессе.

Double
backbone_model
(Дополнительный)

Указывает предварительно настроенную нейронную сеть, которая будет использоваться в качестве архитектуры для обучения новой модели. Этот метод известен как Трансферное обучение.

  • DENSENET121Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 121 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DENSENET161Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 161 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DENSENET169Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 169 слоев. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • DENSENET201Предварительно настроенная модель будет плотной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет глубину 201 слой. В отличие от ResNET, который объединяет слои с помощью суммирования, DenseNet объединяет слои посредством конкатенации.
  • MOBILENET_V2Предварительно настроенная модель будет обучаться на базе данных Imagenet, имеет глубину 54 слоя и предназначена для вычислений на периферийных устройствах, поскольку использует меньше памяти.
  • RESNET18Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более миллиона изображений и имеющем 18 слоев в глубину.
  • RESNET34Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 34 слоя в глубину. Это значение по умолчанию
  • RESNET50Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 50 слоев в глубину.
  • RESNET101Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 101 слой в глубину.
  • RESNET152Предварительно настроенная модель будет представлять собой остаточную сеть, обученную на наборе данных Imagenet, содержащем более 1 миллиона изображений и имеющем 152 слоя в глубину.
  • VGG11Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 11 слоев в глубину.
  • VGG11_BNПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 11 слоев.
  • VGG13Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 13 слоев в глубину.
  • VGG13_BNПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 13 слоев.
  • VGG16Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 16 слоев в глубину.
  • VGG16_BNПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 16 слоев.
  • VGG19Предварительно сконфигурированная модель будет сверточной нейронной сетью, обученной на наборе данных Imagenet, который содержит более 1 миллиона изображений для классификации изображений на 1000 категорий объектов и имеет 19 слоев в глубину.
  • VGG19_BNПредварительно настроенная модель будет основана на сети VGG, но с пакетной нормализацией, включающей нормализацию каждого слоя в сети. Она обучалась на наборе данных Imagenet и имеет 19 слоев.
  • DARKNET53Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который содержит более 1 миллиона изображений и имеет 53 слоя в глубину.
  • REID_V1Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который используется для отслеживания объектов.
  • REID_V2Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, который используется для отслеживания объектов.
  • RESNEXT50Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, и иметь глубину 50 слоев. Это однородная нейронная сеть, которая уменьшает количество гиперпараметров, необходимых для обычной ResNet.
  • WIDE_RESNET50Предварительно настроенная модель будет представлять собой сверточную нейронную сеть, обученную на наборе данных Imagenet, и иметь глубину 50 слоев. Она имеет ту же архитектуру, что и ResNET, но с большим количеством каналов.
  • SR3Предварительно настроенная модель будет использовать модель Super Resolution via Repeated Refinition (SR3). SR3 адаптирует вероятностные модели диффузионного подавления шума к условному созданию изображений и обеспечивает сверхразрешение с помощью стохастического процесса подавления шума. Более подробно см. раздел Image Super-Resolution via Iterative Refinement.
  • VIT_BПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с базовым размером нейронной сети. Это самый маленький размер. Более подробно см. раздел Segment Anything.
  • VIT_LПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с большим размером нейронной сети. Более подробно см. раздел Segment Anything.
  • VIT_HПредварительно настроенная модель Segment Anything Model (SAM) будет использоваться с огромным размером нейронной сети. Это самый большой размер. Более подробно см. раздел Segment Anything.

Кроме того, поддерживаемые нейронные сети свертки из моделей изображений PyTorch (timm) можно указать, используя timm в качестве префикса, например, timm:resnet31 , timm:inception_v4 , timm:efficientnet_b3 и т.д.

String
pretrained_model
(Дополнительный)

Предварительно обученная модель, которая будет использоваться для тонкой настройки новой модели. На входе берется файл определения модели Esri (.emd) или файл пакета глубокого обучения (.dlpk).

Предварительно обученную модель с подобными классами можно настроить так, чтобы она соответствовала новой модели. Предварительно обученная модель должна быть обучена с тем же типом модели и опорной моделью, которые будут использоваться для обучения новой модели.

File
validation_percentage
(Дополнительный)

Процент обучающих выборок, которые будут использоваться для проверки модели. Значением по умолчанию является 10.

Double
stop_training
(Дополнительный)

Указывает, будет ли реализована ранняя остановка.

  • STOP_TRAININGБудет реализована ранняя остановка, и обучение модели остановится, когда модель перестанет улучшаться, независимо от указанного значения параметра max_epochs. Это значение по умолчанию
  • CONTINUE_TRAININGРанняя остановка не будет реализована, и обучение модели будет продолжаться до тех пор, пока не будет достигнуто значение параметра max_epochs.
Boolean
freeze
(Дополнительный)

Указывает, будут ли закреплены опорные слои в предварительно обученной модели, чтобы веса и смещения оставались такими, как они были изначально разработаны.

  • FREEZE_MODELОпорные слои будут закреплены, а предопределенные веса и смещения не будут изменены в параметре backbone_model. Это значение по умолчанию
  • UNFREEZE_MODELОпорные слои не будут закреплены, а веса и смещения параметра backbone_model могут быть изменены для соответствия обучающим выборкам. Это требует больше времени для обработки, но обычно дает лучшие результаты.
Boolean
augmentation
(Дополнительный)

Указывает тип увеличения данных, который будет использоваться.

Увеличение данных — это метод искусственного увеличения обучающего набора путем создания модифицированных копий набора данных с использованием существующих данных.

  • DEFAULTБудут использоваться методы и значения увеличения данных по умолчанию.Включенные по умолчанию методы увеличения данных: crop, dihedral_affine, brightness, contrast и zoom. Эти значения по умолчанию обычно хорошо подходят для спутниковых изображений.
  • NONEУвеличение данных использоваться не будет.
  • CUSTOMЗначения увеличения данных будут заданы с помощью параметра augmentation_parameters.
  • FILEПреобразования fastai для увеличения обучающих наборов данных и наборов данных проверки будут заданы с помощью файла transforms.json, который находится в той же папке, что и обучающие данныеДля получения дополнительной информации о различных преобразованиях см. vision transforms на сайте fastai.
String
augmentation_parameters
[augmentation_parameters,...]
(Дополнительный)

Задает значение для каждого преобразования в параметре увеличения.

  • rotate — Изображение будет повернуто случайным образом (в градусах) по вероятности (p). Если градусы представляют диапазон (a,b), значение будет равномерно присвоено от a до b. Значение по умолчанию – 30.0; 0.5.
  • brightness — Яркость изображения будет произвольно регулироваться в зависимости от значения изменения с вероятностью (p). Изменение 0 преобразует изображение в самое темное, а изменение 1 преобразует изображение в самое светлое. Изменение 0,5 не отрегулирует яркость. Если изменение представляет диапазон (a,b), увеличение будет равномерно назначать значение от a до b. Значение по умолчанию – (0.4,0.6); 1.0.
  • contrast — Контрастность изображения будет случайным образом регулироваться в зависимости от значения масштаба с вероятностью (p). Масштаб 0 преобразует изображение в оттенки серого, а масштаб больше 1 преобразует изображение в суперконтрастное. Масштаб 1 не регулирует контрастность. Если масштаб представляет диапазон (a,b), увеличение будет равномерно назначать значение отa до b. Значение по умолчанию (0.75, 1.5); 1.0.
  • zoom — Изображение будет произвольно увеличиваться в зависимости от значения масштаба. Значение масштаба имеет вид scale(a,b); p. Значение по умолчанию — (1.0, 1.2); 1.0, где p - вероятность. Только масштаб больше 1.0 приведет к увеличению изображения. Если масштаб представляет диапазон (a,b), будет равномерно назначено значение от a до b.
  • crop — Изображение будет обрезано случайным образом. Значение обрезки имеет вид size;p;row_pct;col_pct, где p - вероятность. Положение задается (col_pct, row_pct), с помощью col_pct и row_pct, нормализованными между 0 и 1. Если col_pct или row_pct это диапазон (a,b), будет равномерно назначено значение от a до b. Значение по умолчанию chip_size;1.0; (0, 1); (0, 1), где 224 — размер чипа по умолчанию.

Value Table
chip_size
(Дополнительный)

Размер изображения, которое будет использоваться для обучения модели. Изображения будут обрезаны до указанного размера чипа. Если размер изображения меньше значения параметра, будет использоваться размер изображения.

Размер чипа по умолчанию будет таким же, как размер листа обучающих данных. Если размер листа x и y не совпадает, будет использовано большее значение.

Long
resize_to
(Дополнительный)

Изменяет размеры фрагментов изображения. После изменения размера чипа блоки пикселов будут обрезаны по размеру чипа и использованы для обучения. Этот параметр применяется только к обнаружению объектов (PASCAL VOC), классификации объектов (помеченные листы) и данным сверхвысокого разрешения.

Значение изменения размера часто составляет половину значения размера чипа. Если значение изменения размера меньше значения размера чипа, значение изменения размера используется для создания блоков пикселей для обучения.

String
weight_init_scheme
(Дополнительный)

Задает схему, в которой будут инициализироваться веса для слоя.

Чтобы обучить модель с помощью мультиспектральных данных, модель должна учитывать различные типы доступных каналов. Это делается путем повторной инициализации первого слоя модели.

  • RANDOMСлучайные веса будут инициализированы для каналов, отличных от RGB, а предварительно обученные веса будут сохранены для каналов RGB. Это значение по умолчанию
  • RED_BANDВеса, соответствующие красному каналу из слоя предварительно обученной модели, будут клонированы для каналов, отличных от RGB, а предварительно обученные веса будут сохранены для каналов RGB.
  • ALL_RANDOMСлучайные веса будут инициализированы как для каналов RGB, так и для каналов, отличных от RGB. Эта опция применима только к мультиспектральным изображениям.

Этот параметр применим только в том случае, если в модели используются мультиспектральные изображения.

String
monitor
(Дополнительный)

Задает метрику, которая будет отслеживаться при проверке контрольных точек и ранней остановке.

  • VALID_LOSSБудут отслеживаться потери проверки. Когда потери проверки перестанут существенно изменяться, модель остановится. Это значение по умолчанию
  • AVERAGE_PRECISIONБудет контролироваться средневзвешенное значение точности на каждом пороге. Когда это значение перестанет существенно изменяться, модель остановится.
  • ACCURACYБудет отслеживаться соотношение количества правильных прогнозов к общему количеству прогнозов. Когда это значение перестанет существенно изменяться, модель остановится.
  • F1_SCOREБудет отслеживаться сочетание показателей точности и отклика модели. Когда это значение перестанет существенно изменяться, модель остановится.
  • MIOUБудет отслеживаться среднее значение между пересечением и объединением (IoU) сегментированных объектов по всем изображениям тестового набора данных. Когда это значение перестанет существенно изменяться, модель остановится.
  • DICEПроизводительность модели будет отслеживаться с помощью метрики Dice. Когда это значение перестанет существенно изменяться, модель остановится.Это значение может варьироваться от 0 до 1. Значение 1 соответствует идеальному совпадению пикселов между данными проверки и данными обучения.
  • PRECISIONБудет отслеживаться точность, которая измеряет точность модели при классификации образца как положительного. Когда это значение перестанет существенно изменяться, модель остановится.Точность – это соотношение между количеством правильно классифицированных положительных образцов и общим количеством классифицированных образцов (правильно или неправильно).
  • RECALLБудет отслеживаться отклик, который измеряет способность модели обнаруживать положительные образцы. Когда это значение перестанет существенно изменяться, модель остановится.Чем выше отклик, тем больше положительных образцов обнаруживается. Значение отклика представляет собой соотношение между количеством положительных образцов, правильно классифицированных как положительные, и общим количеством положительных образцов.
  • CORPUS_BLEUБудет отслеживаться показатель Corpus blue. Когда это значение перестанет существенно изменяться, модель остановится.Эта оценка используется для расчета точности нескольких предложений, таких как абзац или документ.
  • MULTI_LABEL_FBETAБудет отслеживаться средневзвешенное гармоническое значение точности и отклика. Когда это значение перестанет существенно изменяться, модель остановится.Это часто называют показателем F-бета.
String

Производные выходные данные

ИмяОписаниеТип данных
out_model_file

Выходной файл обученной модели.

File

Пример кода

TrainDeepLearningModel, пример 1 (окно Python)

В этом примере обучается модель классификации деревьев с использованием подхода U-Net.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
# Execute 
TrainDeepLearningModel(r"C:\DeepLearning\TrainingData\Roads_FC", 
     r"C:\DeepLearning\Models\Fire", 40, "UNET", 16, "# #", None, 
     "RESNET34", None, 10, "STOP_TRAINING", "FREEZE_MODEL")
TrainDeepLearningModel, пример 2 (автономный скрипт)

В этом примере обучается модель обнаружения объектов с использованием подхода SSD.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
#Define input parameters
in_folder = "C:\\DeepLearning\\TrainingData\\Cars" 
out_folder = "C:\\Models\\Cars"
max_epochs = 100
model_type = "SSD"
batch_size = 2
arg = "grids '[4, 2, 1]';zooms '[0.7, 1.0, 1.3]';ratios '[[1, 1], [1, 0.5], [0.5, 1]]'"
learning_rate = 0.003
backbone_model = "RESNET34" 
pretrained_model = "C:\\Models\\Pretrained\\vehicles.emd"
validation_percent = 10
stop_training = "STOP_TRAINING"
freeze = "FREEZE_MODEL"


# Execute
TrainDeepLearningModel(in_folder, out_folder, max_epochs, model_type, 
     batch_size, arg, learning_rate, backbone_model, pretrained_model, 
     validation_percent, stop_training, freeze)

Связанные разделы