Как работает метод «случайного стирания» в PyTorch?

Kak Rabotaet Metod Slucajnogo Stirania V Pytorch



Эффективность платформы PyTorch для разработки сложных и современных моделей машинного обучения обусловлена ​​ее широким спектром дополнительных функций и « Случайное стирание Метод является одним из них. Как следует из названия, он случайным образом выбирает изображение и удаляет часть его данных, чтобы имитировать реальную ситуацию, когда представлены неполные данные. Это улучшает способность модели адаптироваться и хорошо работать в новых и сложных ситуациях.

В этом блоге мы обсудим, как « Случайное стирание » работает в PyTorch.

Почему в PyTorch используется метод «случайного стирания»?

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







Как работает метод «случайного стирания» в PyTorch?

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



Шаг 1. Настройка среды IDE для совместной работы

Google Colab — идеальный выбор для разработки моделей искусственного интеллекта с использованием платформы PyTorch. Перейдите в коллабораторию Веб-сайт и запустите « Новый блокнот »:







Шаг 2. Импортируйте необходимые библиотеки

Использовать ' !пип ” установщик пакетов, предоставляемый Python для установки библиотек и использования “ Импортировать ” для импорта их в проект:

Импортировать факел

Импортировать факелвидение. трансформирует как тс

от ПИЛ Импортировать Изображение

Импортировать matplotlib. pyplot как плт

Описание данного кода следующее:



  • Импортируйте « факел ” библиотека с использованием “ Импортировать команда.
  • « torchvision.transforms Пакет «содержит преобразования для случайного стирания.
  • « ПИЛ ” — это библиотека изображений Python, содержащая функции обработки изображений.
  • « matplotlib.pyplot Библиотека используется для визуализации исходных и преобразованных изображений:

Шаг 3. Загрузите входное изображение.

Загрузите изображение в раздел Файлы:

Затем загрузите входное изображение, используя « открыть() метод модуля «Изображение»:

изображение '=' Изображение. открыть ( 'a2.jpeg' )

Шаг 4. Укажите преобразование для выполнения преобразований

Теперь определите « СлучайноеСтирание » преобразователь, который преобразует изображение, выбирая случайную прямоугольную область и стирая ее пиксели. Кроме того, преобразуйте входное изображение в изображение датчика факела, используя команду « ТоТензор() », если это изображение PIL, а затем преобразовать его обратно в изображение PIL с помощью метода « ТоПИЛИзображение() »:

трансформировать '=' ц. Сочинить ( [ ц. ТоТензор ( ) , ц. СлучайноеСтирание ( п '=' 0,5 , шкала '=' ( 0,02 , 0,33 ) , соотношение '=' ( 0,3 , 3.3 ) , ценить '=' 0 , на месте '=' ЛОЖЬ ) , ц. ТоPILImage ( ) ] )

Параметры, используемые в приведенном выше « СлучайноеСтирание Трансформатор поясняется ниже:

  • п: Он представляет собой вероятность того, что операция случайного поднятия будет выполнена.
  • шкала: Он указывает диапазон стертой области входного изображения.
  • соотношение: Он обозначает соотношение сторон стертой области.
  • ценить: Он определяет значение стирания, которое по умолчанию равно «0». Если это одно целое число, то удаляются все пиксели, а если это кортеж, содержащий три целых числа, то удаляются каналы R, G и B соответственно.
  • на месте: Это «логическое» значение, которое делает данный преобразователь случайного стирания действующим. По умолчанию это «ложь».

Шаг 5. Используйте словарное понимание для получения выходных изображений

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

изображений '=' [ трансформировать ( изображение ) для _ в диапазон ( 4 ) ]

Шаг 6. Продемонстрируйте четыре выходных изображения

Наконец, отобразите четыре выходных изображения с помощью приведенного ниже блока кода:

инжир '=' плт. фигура ( размер фигуры '=' ( 7 , 4 ) )

ряды , столбцы '=' 2 , 2

для дж в диапазон ( 0 , только ( изображений ) ) :

инжир. add_subplot ( ряды , столбцы , й+ 1 )

плт. имшоу ( изображений [ дж ] )

плт. тиккс ( [ ] )

плт. тики ( [ ] )

плт. показывать ( )

Приведенное выше описание кода выглядит следующим образом:

  • Примените « plt.figure() » метод для построения четырех изображений заданной ширины и высоты.
  • Затем укажите конкретные строки и столбцы для настройки четырех изображений.
  • После этого инициализируйте цикл «for», который применяет « подзаговор() ” для определения подсюжета, метод “show()” для показа изображений и метод “ plt.xticks() ' а также ' plt.yticks() », чтобы установить текущее положение отметки и метки осей X и Y.
  • Наконец, используйте « plt.show() ” метод печати изображений для вывода:

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

Профессиональный совет

Одно из ключевых применений « Случайное стирание ” в проектах PyTorch – это безопасность. Его можно использовать для удаления пикселей с конфиденциальных изображений, например тех, которые содержат коммерческую тайну или что-то еще ценное. Конкретная случайная функция этого стирания будет известна только исходному пользователю, и только он сможет восстановить стертые изображения в их исходную версию.

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

Заключение

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