AI-For-Beginners/translations/sr/lessons/4-ComputerVision/09-Autoencoders
localizeflow[bot] 4393a749ad chore(i18n): sync translations with latest source changes (chunk 79/148, 100 files) 2026-01-01 14:21:11 +00:00
..
AutoEncodersPyTorch.ipynb chore(i18n): sync translations with latest source changes (chunk 79/148, 100 files) 2026-01-01 14:21:11 +00:00
AutoencodersTF.ipynb chore(i18n): sync translations with latest source changes (chunk 79/148, 100 files) 2026-01-01 14:21:11 +00:00
README.md chore(i18n): sync translations with latest source changes (chunk 79/148, 100 files) 2026-01-01 14:21:11 +00:00

README.md

Аутоенкодери

При тренингу CNN-а, један од проблема је то што нам је потребно много означених података. У случају класификације слика, морамо да раздвојимо слике у различите класе, што захтева ручни рад.

Квиз пре предавања

Међутим, можда желимо да користимо необрађене (неозначене) податке за тренинг CNN екстрактора карактеристика, што се назива само-надгледано учење. Уместо ознака, користићемо слике за тренинг као улаз и излаз мреже. Главна идеја аутоенкодера је да имамо енкодер мрежу која претвара улазну слику у неки латентни простор (обично је то само вектор мање величине), а затим декодер мрежу, чији је циљ да реконструише оригиналну слику.

Аутоенкодер је "тип вештачке неуронске мреже која се користи за учење ефикасног кодирања неозначених података."

Пошто тренирамо аутоенкодер да ухвати што више информација из оригиналне слике ради тачне реконструкције, мрежа покушава да пронађе најбоље уграђивање улазних слика како би ухватила њихово значење.

Дијаграм аутоенкодера

Слика са Keras блога

Сценарији за коришћење аутоенкодера

Иако реконструкција оригиналних слика сама по себи не изгледа корисно, постоји неколико сценарија где су аутоенкодери посебно корисни:

  • Смањење димензије слика ради визуализације или тренинг уграђивања слика. Обично аутоенкодери дају боље резултате од PCA, јер узимају у обзир просторну природу слика и хијерархијске карактеристике.
  • Уклањање шума, односно уклањање шума са слике. Пошто шум носи много бескорисних информација, аутоенкодер не може да уклопи све у релативно мали латентни простор, и тако хвата само важан део слике. При тренингу за уклањање шума, почињемо са оригиналним сликама и користимо слике са вештачки додатим шумом као улаз за аутоенкодер.
  • Супер-резолуција, повећање резолуције слике. Почињемо са сликама високе резолуције и користимо слике са нижом резолуцијом као улаз за аутоенкодер.
  • Генеративни модели. Када тренирамо аутоенкодер, део декодера може се користити за креирање нових објеката почевши од случајних латентних вектора.

Варијациони аутоенкодери (VAE)

Традиционални аутоенкодери на неки начин смањују димензију улазних података, откривајући важне карактеристике улазних слика. Међутим, латентни вектори често немају много смисла. Другим речима, узимајући MNIST датасет као пример, није лако утврдити који бројеви одговарају различитим латентним векторима, јер блиски латентни вектори не морају нужно одговарати истим бројевима.

С друге стране, за тренинг генеративних модела боље је имати неко разумевање латентног простора. Ова идеја нас води до варијационог аутоенкодера (VAE).

VAE је аутоенкодер који учи да предвиђа статистичку дистрибуцију латентних параметара, такозвану латентну дистрибуцију. На пример, можемо желети да латентни вектори буду нормално распоређени са неком средњом вредношћу zmean и стандардном девијацијом zsigma (и средња вредност и стандардна девијација су вектори неке димензије d). Енкодер у VAE учи да предвиђа те параметре, а затим декодер узима случајни вектор из те дистрибуције да реконструише објекат.

Укратко:

  • Из улазног вектора предвиђамо z_mean и z_log_sigma (уместо да предвиђамо саму стандардну девијацију, предвиђамо њен логаритам)
  • Узимамо узорак вектора sample из дистрибуције N(zmean,exp(zlog_sigma))
  • Декодер покушава да декодира оригиналну слику користећи sample као улазни вектор

Слика из овог блога аутора Исака Дајкемана

Варијациони аутоенкодери користе сложену функцију губитка која се састоји из два дела:

  • Губитак реконструкције је функција губитка која показује колико је реконструисана слика близу циљу (може бити средња квадратична грешка, или MSE). То је иста функција губитка као код нормалних аутоенкодера.
  • KL губитак, који осигурава да дистрибуција латентних променљивих остане близу нормалне дистрибуције. Заснован је на концепту Кулбак-Лајблерове дивергенције - метрици за процену сличности две статистичке дистрибуције.

Једна важна предност VAE-а је то што нам омогућава да релативно лако генеришемо нове слике, јер знамо из које дистрибуције узимамо узорке латентних вектора. На пример, ако тренирамо VAE са 2D латентним вектором на MNIST-у, можемо затим мењати компоненте латентног вектора да добијемо различите бројеве:

vaemnist

Слика аутора Дмитрија Сошњикова

Приметите како се слике међусобно стапају, док почињемо да добијамо латентне векторе из различитих делова латентног параметарског простора. Такође можемо визуализовати овај простор у 2D:

vaemnist cluster

Слика аутора Дмитрија Сошњикова

✍️ Вежбе: Аутоенкодери

Сазнајте више о аутоенкодерима у овим одговарајућим нотебуцима:

Карактеристике аутоенкодера

  • Специфични за податке - добро раде само са типом слика на којима су тренирани. На пример, ако тренирамо мрежу за супер-резолуцију на цветовима, неће добро радити на портретима. То је зато што мрежа може произвести слику више резолуције узимајући фине детаље из карактеристика научених из тренинг скупа.
  • Губитак информација - реконструисана слика није иста као оригинална слика. Природа губитка је дефинисана функцијом губитка која се користи током тренинга.
  • Ради са неозначеним подацима

Квиз после предавања

Закључак

У овом предавању, научили сте о различитим типовима аутоенкодера доступним AI научницима. Научили сте како да их изградите и како да их користите за реконструкцију слика. Такође сте научили о VAE-у и како да га користите за генерисање нових слика.

🚀 Изазов

У овом предавању, научили сте о коришћењу аутоенкодера за слике. Али они се могу користити и за музику! Погледајте пројекат Magenta MusicVAE, који користи аутоенкодере за учење реконструкције музике. Урадите неке експерименте са овом библиотеком да видите шта можете да креирате.

Квиз после предавања

Преглед и самостално учење

За референцу, прочитајте више о аутоенкодерима у овим ресурсима:

Задатак

На крају овог нотебука у TensorFlow-у, наћи ћете 'задатак' - користите га као свој задатак.