Този блог ще обсъди как „ Случайно изтриване ” работи в PyTorch.
Защо се използва методът „Произволно изтриване“ в PyTorch?
Случайното премахване на данни от изображенията представлява проблем за обучението на модели за анализ на изображения, тъй като те са принудени да се адаптират към недостатъчно данни. Това подготвя модел за задачи от реалния свят, при които не винаги присъстват пълни данни. Моделът става много по-добър в способността да прави изводи от всякакви данни и да управлява показването на резултати. Изборът на пиксели за премахване е произволен, така че няма въвеждане на отклонение и полученото изображение се използва като входни данни по време на обучението.
Как работи методът „Случайно изтриване“ в PyTorch?
Методът на произволно изтриване се използва, за да направи модел за задълбочено обучение по-добре оборудван за работа с реални приложения. Следвайте стъпките, дадени по-долу, за да научите как да го използвате във вашите проекти на PyTorch, за да увеличите тяхното управление на данни и да подобрите възможностите за изводи:
Стъпка 1: Настройте Collaboratory IDE
Google Colab е идеален избор за разработване на AI модели с помощта на рамката PyTorch. Отидете до Collaboratory уебсайт и стартирайте „ Нов бележник ”:
Стъпка 2: Импортирайте необходимите библиотеки
Използвай ' !пип ' инсталатор на пакети, предоставен от Python за инсталиране на библиотеки и използване на ' импортиране ”, за да ги импортирате в проекта:
импортиране факлаимпортиране факелно виждане. трансформира като ц
от PIL импортиране Изображение
импортиране matplotlib. pyplot като плт
Описанието на дадения код е както следва:
- Импортирайте „ факла ' библиотека с помощта на ' импортиране ” команда.
- „ факелно виждане.трансформира ” съдържа трансформациите за случайно изтриване.
- “ PIL ” е библиотеката с изображения на Python и съдържа функционалността за обработка на изображения.
- „ matplotlib.pyplot ” библиотека се използва за визуализиране на оригинални и трансформирани изображения:
Стъпка 3: Качете входното изображение
Качете изображението в секцията Файлове:
След това заредете входното изображение, като използвате „ отворен() ” на модула „Изображение”:
изображение = Изображение. отворен ( 'a2.jpeg' )Стъпка 4: Посочете трансформацията за извършване на трансформации
Сега дефинирайте „ Случайно изтриване ” трансформатор, който ще трансформира изображението, като избира произволна правоъгълна област и изтрива пикселите му. В допълнение, преобразувайте входното изображение към сензора на фенера, като използвате „ ToTensor() ”, ако е PIL изображение и след това го конвертирайте обратно в PIL изображение чрез „ ToPILImage() ”:
трансформирам = ц. Съставете ( [ ц. ToTensor ( ) , ц. Случайно изтриване ( стр = 0,5 , мащаб = ( 0,02 , 0,33 ) , съотношение = ( 0,3 , 3.3 ) , стойност = 0 , на място = Невярно ) , ц. ToPILIimage ( ) ] )Параметрите, използвани в горния „ Случайно изтриване ” трансформатор са обяснени по-долу:
- п: Представлява вероятността операцията за произволно повдигане да бъде постигната.
- мащаб: Показва обхвата на изтритата област на входно изображение.
- съотношение: Той обозначава съотношението на изтритата област.
- стойност: Той определя стойността на изтриване, която по подразбиране е „0“. Ако е едно цяло число, тогава премахва всички пиксели, а ако е кортеж с три цели числа, тогава премахва съответно каналите R, G и B.
- на място: Това е „булева“ стойност, която прави дадения трансформатор за произволно изтриване на място. По подразбиране е „false“.
Стъпка 5: Използвайте разбирането на речника, за да направите изходни изображения
Използвайте концепцията за разбиране на речника, за да вземете четирите изходни изображения:
изображения = [ трансформирам ( изображение ) за _ в диапазон ( 4 ) ]Стъпка 6: Покажете четирите изходни изображения
И накрая, покажете четирите изходни изображения с помощта на посочения по-долу кодов блок:
фиг = плт. фигура ( figsize = ( 7 , 4 ) )редове , cols = 2 , 2
за й в диапазон ( 0 , само ( изображения ) ) :
фиг. add_subplot ( редове , cols , j+ 1 )
плт. imshow ( изображения [ й ] )
плт. xticks ( [ ] )
плт. yticks ( [ ] )
плт. шоу ( )
Горното описание на кода е както следва:
- Приложете „ plt.figure() ” метод за начертаване на четирите изображения с определена ширина и височина.
- След това задайте конкретни редове и колони, за да коригирате четирите изображения.
- След това инициализирайте цикъл „for“, който прилага „ подзаговор() ', за да дефинирате подграфиката, методът 'show()' за показване на изображенията и ' plt.xticks() ' както и ' plt.yticks() ”, за да зададете текущото местоположение на отметката и етикетите на оста x и y.
- Накрая използвайте „ plt.show() ” за отпечатване на изображенията за извеждане:
Забележка : Потребителите имат достъп до нашия бележник Colab, като използват предоставения връзка .
Професионален съвет
Една ключова употреба на „ Случайно изтриване ” в проектите на PyTorch е сигурност. Може да се използва за премахване на пиксели от чувствителни изображения, като тези, съдържащи някои търговски тайни или нещо друго ценно. Специфичната произволна функция за това изтриване ще бъде известна само на първоначалния потребител и само той ще може да възстанови изтритите изображения обратно до оригиналната им версия.
Успех! Показахме как работи методът за произволно изтриване в PyTorch.
Заключение
„ Случайно изтриване ” в PyTorch работи, като премахва произволни пиксели от изображение и имитира сценарий от реалния свят, за да обучи по-добре модела. Това ще направи модела по-умел да борави с различни типове данни, за да прави изводи за качество от непълни данни. Илюстрирахме как да използвате „ Случайно изтриване ” в PyTorch.