Последњих година постигнут је значајан напредак у препознавању лица. Овај преглед нуди кратак преглед кључних задатака, модела и метода решења, фокусирајући се на еволуцију функција губитка.
Једноставно речено, препознавање лица је метод идентификације или верификације идентитета особе помоћу фотографија, видео записа или снимака у реалном времену. Овај преглед ће истражити идентификацију на основу једне дигиталне слике или видео оквира.
Препознавање лица и његове примене
Препознавање лица (ФР) има далекосежне примене. Користи се у финансијском сектору, у сајбер безбедности, видео надзору, услугама паметне куће, вишефакторској аутентификацији итд.
Поред ових практичних употреба, ФР модели такође играју кључну улогу у модерним генеративним моделима. Обично се користе за губитак идентификације у моделима за обнављање лица као што су ГФПГАН и ЦодеФормер, алатима за замену лица као што су СимСвап и ФацеСхифтер, моделима заснованим на ГАН-у слика-на-слику као што су пСп и ХиперСтиле, као и у моделима заснованим на трансформатору и стабилној дифузији за очување идентитета.
АрцФаце (2018–2019) је најчешће коришћена функција губитка идентификације, док се ЦосФаце (2018) и ФацеНет користе много ређе.
За овај преглед, фокусираћу се на то како се ФР пејзаж променио од АрцФаце-а, посебно последњих година.
Кратак преглед система за препознавање лица
Фце препознавање захтева одређену претходну обраду: детекцију лица, исецање и поравнање. Претходна обрада би требало да буде иста за податке за обуку и за тестирање, обично користећи поравнање налик ФФХК (Флицкр-Фацес-ХК скуп података). Обично се за ово користе два одвојена додатна детектора: детектор кутије која ограничава лице и детектор оријентира лица. Постоје модели од краја до краја, са поравнањем који се обучавају заједно са главним моделом, али их не разматрам у овом делу прегледа. Овде претпостављамо да су скупови података за обуку и тестирање уједначено исечени и усклађени. Дакле, модел се напаја исеченим и поравнатим улазима.
У скупу података за обуку за ФР задатак, постоји неколико слика за сваки идентитет (особу). Задатак модела је да научи да разликује фотографије које припадају истој особи и фотографије различитих људи.
Модел се обично састоји од две компоненте:
Кичма. Окосница, која се такође може назвати екстрактором обележја, узима претходно обрађену фотографију лица као улаз и излази вектор обележја уградње. Класичне окоснице су конволуционе неуронске мреже (ЦНН) као што су РесНет, ВГГНет, РесФаце, СЕ-РесНет и друге. То такође могу бити модели ВисионТрансформер или Феатуре Пирамид Нетворк или њихове сложеније варијације. У овом делу прегледа нећемо се детаљније задржавати на окосницама модела.
Функција губитка. У фази тренинга, функција губитка се примењује за надгледање тренинга кичме. Циљ обуке је да се добије модел који ће произвести блиске уградње за различите фотографије исте особе и удаљене за различита лица лица. Говоримо о мерењу растојања између вектора за уграђивање користећи, на пример, косинусну удаљеност или Л2 растојање.
Врсте функција губитка
Губитак заснован на пару
Прва категорија се назива «губитак заснован на пару», понекад се називају и «методе засноване на метричком учењу»: контрастивни губитак, губитак тројки, губитак Н-парова.
Ове методе или комбинују позитивне и негативне парове узорака пре тренинга модела или динамички комбинују парове узорака на мрежи током обуке. Оба ова режима омогућавају издвајање значајних репрезентација лица на нивоу узорка, али би експоненцијално повећала величину података.
Шема обуке која користи губитак триплета изгледа овако. Два примера са истом ознаком треба да имају своје уградње близу једно другом у простору за уграђивање. Два примера са различитим ознакама имају своје уградње далеко.
Брз раст броја могућих парова са величином скупа података приморава нас да тражимо стратегије одабира парова, које су обично емпиријске и рачунарски сложене.
Губитак заснован на класификацији
Друга категорија се назива „губитак заснован на класификацији“ или се понекад назива „методе засноване на прототипима учења“: Софтмак губитак, ЦосФаце, АрцФаце, НормФаце. Они раде са генерализованим информацијама о класама користећи прототип, који се такође назива проки класе или центар за класу. Прототипови су параметри који се могу научити, ажурирани током обуке модела. Тренутно се губици засновани на класификацији углавном користе за моделе препознавања лица.
Историја губитака заснованих на класификацији
Ако посматрамо ФР задатак као класификацију, онда можемо користити софтмак губитак (друго име је категорички губитак унакрсне ентропије). У суштини, Софтмак губитак је Софтмак функција активације + губитак унакрсне ентропије.
Да се подсетимо формула. Први је Софтмак активација, а други губитак унакрсне ентропије.
Комбиновањем добијате:
Функција губитка добија резултат последњег потпуно повезаног слоја, где 𝒙𝒊 означава функцију уградње 𝑖-те слике за обуку, 𝑦𝑖 је ознака 𝒙𝒊 и 𝑾 означава тежину последњег потпуно повезаног слоја.
Ово функционише, али постоји проблем - границе између класа су замагљене. Нови корак у ФР је направљен 2018. године појавом модела АрцФаце. Основа остаје софтмак губитак, али прелазимо на разматрање углова између вектора. Подсетимо се формуле косинусне сличности:
Хајде да извршимо замену у формули софтмак губитка
Затим се додаје маргина тако да углови унутар класе буду мањи, а међукласни углови већи. Ово даје јаз између класа уместо мутних граница софтмак губитка.
Сличне методе: ако заменимо цос(θ + м) са цос θ − м добићемо губитак ЦосФаце-а.
У методама заснованим на Софтмак-у сматра се да је прототип ускладиштен у матрици коефицијената последњег линеарног слоја, односно Пи = Ви, прототип се ажурира коришћењем свог градијента у повратном ширењу (због тога се појавио назив «методе засноване на учењу прототипа»).
Овде почиње историја савремених функција губитка за ФР. Током година, појавиле су се многе модификације и побољшања, али формуле дате изнад су довољне за разумевање даљег материјала.
Подцентар АрцФаце
Једно од побољшања појавило се 2020. године, зове се Суб-центер АрцФаце и дизајнирано је за скупове података са буком. Ограничење компактности унутар класе доводи до претеривања у бучним подацима. Под-центар АрцФаце уводи под-класе. Узорак у групи за обуку треба да буде близу једног од позитивних подцентра, а не сви. Ово смањује утицај шума у подацима.
2020,
И АрцФаце и Суб-центер АрцФаце модели имају имплементације унутар Инсигхтфаце библиотеке, укључујући код за обуку и унапред обучене тежине.
Инсигхтфаце има имплементацију АрцФаце-а са различитим окосницама: иреснет (34,50,100,200,2060), мобилефаценет, вит (ВисионТрансформер).
Разматрање различитих окосница је ван оквира овог чланка, тако да ћу дати само називе окосница које се користе за сваки од губитака који се разматрају. У већини случајева, аутори губитака нису покушавали да изаберу оптималну кичму, већ су једноставно користили један од популарних или онај који је коришћен у моделима са којима су желели да направе поређење.
За обуку су коришћени скупови података МС1М, Глинт360К, ВебФаце42М.
Флексибилна маргина
Главни изазов за методе препознавања лица је бука података. Методе засноване на учењу прототипа су осетљиве на пристрасности прототипа које бука уноси. Један од начина да се балансира између прекомерне и недовољне опреме је подешавање маргине, главног параметра у софтмак-басе губицима.
АдаЦос
Једна од првих метода за подешавање размере и угаоне маргине за косинусне софтмак губитке као што су Л2-софтмак, ЦосФаце и АрцФаце.
Имплементира емпиријски принцип да брзина учења треба да се успорава како се мрежа оптимизује. У чланку се уводи модулирајућа променљива једнака медијани свих углова у мини-батцху за одговарајуће класе, што отприлике представља тренутни степен оптимизације модела. Када је средњи угао велики, параметри мреже су далеко од оптималних и примењују се већа скала и маргина, и обрнуто.
2019,
Обучен на ЦАСИА-ВебФаце и МС1М скуповима података, улазна резолуција 144 × 144. Тестирано на ЛФВ, МегаФаце и ИЈБ-Ц скуповима података, у поређењу са Л2-софтмак, ЦосФаце и АрцФаце губицима.
Протеклих година појавило се неколико значајних метода за примену адаптивне маргине у ФР, као што су Дин-АрцФаце (2022), МагФаце (2021), ЕластицФаце (2021), али ћемо се фокусирати на један од најновијих радова у овој области – Кс2-Софтмак (2023).
Кс2-Софтмак
У поређењу са АдаЦос-ом, Кс2-Софтмак покушава да узме у обзир неравномерну дистрибуцију класа. Фиксна маргина која је погодна између неких класа, може бити превелика да би се конвергирала између других класа, или премала да би промовисала значајну унутаркласну компактност карактеристика лица између неких других класа.
2023,
За класе са великим угловима потребна је велика маргина за повећање компактности, за класе са малим угловима мања.
Подсетимо се опште формуле за губитке засноване на софтмак-у:
Овде, за губитке као што су АрцФаце или ЦосФаце, разликује се само логитс функција ф(θ). За Кс2-Софтмак функцију губитка то изгледа овако:
Традиционални губици засновани на софтмак-у користе косинус, али косинус се претвара у квадратну функцију када се прошири у Тејлоров низ, тако да је квадратна функција изабрана за Кс2-Софтмак. Одбацивањем чланова високог реда од к и задржавањем константних и квадратних чланова може се избећи преоптерећање модела.
Овде су а, х и к хиперпараметри: х и к одређују положај темена криве логитс функције, а а одређује правац отварања криве и степен груписања.
У Кс2-Софтмак-у, када се угао између тежина θ повећава, угаона маргина ∆θ монотоно расте у исто време.
За још две сличне класе, мала маргина олакшава конвергенцију модела. За две мање сличне класе, већа маргина ће бити додељена да би се побољшало међукласно раздвајање карактеристика лица.
За обуку, аутори су изабрали Реснет50 кичму. Модел је обучен на скупу података МС1Мв3 (заснованом на МС-Целеб-1М претходно обрађеном од стране РетинаФаце, ради уклањања бучних слика) – 93к идентитета и 5,1М слика лица.
СФаце: Губитак хиперсфере ограничен сигмоидом за робусно препознавање лица
Већина губитака са флексибилним маргинама остаје у оквиру губитака заснованих на софтмак-у, али постоје изузеци. СФаце напушта губитке засноване на софтмак-у, али задржава идеју оптимизације унутаркласних и међукласних удаљености. Модел намеће унутаркласна и међукласна ограничења на многострукост хиперсфере, која се контролишу са две сигмоидне криве. Криве трансформишу градијенте контролишући брзину којом се коефицијенти мењају како се приближавају центроиду циљне или стране класе.
2022,
У поређењу са методама директне оптимизације маргине, ово обезбеђује финију равнотежу између преоптерећења и недовољне опреме, са мањим утицајем појединачних бучних узорака на коначни губитак.
Идеја о ограничавању уграђивања лица како би се учинила дискриминативним на вишеструкој хиперсфери већ је виђена, на пример, у Спхерефаце-у (Дееп хиперспхере ембеддинг за препознавање лица, 2017).
Циљ је да се смањи растојање унутар класе и повећа растојање између класа, тако да се губитак хиперсфере ограничен на сигмоид може формулисати као
Где је 𝜃𝑦𝑖 угаона удаљеност између функције уграђивања 𝑖-те слике за обуку и одговарајућег прототипа. 𝜃ј је угаона удаљеност до страних прототипова.
Функције 𝑟𝑖𝑛𝑡𝑟 и 𝑟𝑖𝑛𝑡𝑒𝑟 дизајниране да поново скалирају унутар-класне и међукласне циљеве и да контролишу степен оптимизације. [·]𝑏 је оператор градијента блока, који спречава да се допринос његових улаза узме у обзир за израчунавање градијената.
Сигмоидне функције су изабране као функције промене величине градијента:
Аутори су изабрали сигмоидне функције као функције поновног скалирања градијента:
𝑠 је горња асимптота две сигмоидне криве као почетна скала градијента, а 𝑘 је контрола нагиба сигмоидних кривих. Хиперпараметри 𝑎 и 𝑏 одлучују о хоризонталном пресеку две сигмоидне криве и заправо контролишу флексибилни интервал да би сузбили брзину кретања.
У поређењу са функцијама губитака заснованим на софтмак-у, и унутар-класна и међукласна удаљеност СФаце-а може бити ограничена на пројектовани степен, па се може оптимизовати на умерен начин, што је управо предност СФаце-а.
За обуку, аутори су изабрали РесНет кичму (као за Арцфаце).
Модел је обучен на скуповима података ЦАСИА-ВебФаце, ВГГФаце2 и МС-Целеб-1М.
Прототип као дистрибуција
Други начин да се позабавите бучним подацима јесте да узмете у обзир да уграђивање за један идентитет (за сва лица која припадају једној особи) није тачка у простору, већ дистрибуција која има очекивање, варијансу и може имати одступања.
ВПЛ (Варијационо учење прототипа)
У препознавању лица, губици засновани на пару су напуштени због сложености обуке, али радећи са просечним прототиповима, губимо неке информације. Са приступом заснованим на прототиповима, обука може да се заглави у локалним минимумима или да се преоптерети због утицаја изванредних вредности на прототипове.
2021,
ВПЛ – представља сваку класу као дистрибуцију, а не као тачку у латентном простору.
ВПЛ оптимизује сличност између примера из скупа за обуку и скупа варијационих прототипова који су узорковани из дистрибуције по класама.
Дистрибуција прототипова се чува у М и опада током ∆т корака. Аутори су тренирали губитак са РесНет50, РесНет100 и МКСНет окосницама, при чему је МКСНет изабран као коначни за тестирање. МС1М скуп података се користи за обуку, улазна величина усева лица је 112×112.
Постоји неколико приступа који настављају са темом допуњавања метода заснованих на прототипима са предностима губитака заснованих на пару (или другачије названим моделима заснованим на узорку до узорка), као што су УниТСФаце (2023) или УНПГ (Уједињено генерисање негативних парова према добро дискриминативном простору карактеристика за препознавање лица202). Фокусираћу се на један од најновијих губитака у овом чланку: ЕПЛ.
ЕПЛ: Емпиријско учење прототипа за дубоко препознавање лица
У софтмак губитку заснованом на маргини, губитак се израчунава у поређењу са прототиповима (центрима класа); сви узорци једне класе се повлаче у заједнички центар током процеса обуке. Што се сматра просеком током процеса обуке, и на њега снажно утичу изузетни примери који могу да одступе од центра прототипа. У методама заснованим на Софтмак-у, сматра се да је прототип ускладиштен у матрици коефицијената последњег линеарног слоја, тј. Пи = Ви, прототип се ажурира коришћењем градијента у повратном ширењу, а функција губитка максимизира сличност између карактеристика примера и одговарајућих прототипова.
2024,
У ЕПЛ-у се генеришу и ажурирају прототипови:
- Насумично на почетку тренинга
- Током обуке модела, сваки пример (Кс) кроз своје карактеристике к = Е(Кс) ажурира одговарајући емпиријски прототип Пи(е), где је Е енкодер лица:
Где је "α" адаптивни коефицијент ажурирања генерисан коришћењем карактеристике к и њеног прототипа, "σ" је функција активације за подешавање коефицијента ажурирања у одговарајући опсег, а с(·, ·) је функција сличности, која се обично узима као косинусна функција.
Емпиријски прототип се ажурира само коришћењем „позитивних“ примера како би се избегао утицај изванредних класа суседних класа.
Процес обуке: енкодер издваја карактеристике, адаптивни коефицијенти α се израчунавају да ажурирају емпиријски прототип, сличности између карактеристика и прототипова се користе за израчунавање губитка за обуку енкодера.
Да би свеобухватно искористио могућности учења прототипа и емпиријског учења прототипа, ЕПЛ их комбинује као збир и уводи различите маргине. РесНет кичма је коришћена за обуку и ЦАСИА-ВебФаце као скуп података за обуку. Модел је тестиран на скуповима података МРФ, ИЈБ-Ц, ЛФВ, ЦФП-ФП, АгеДБ и МегаФаце.
Трансформер-АрцФаце
Као што је јасно из наведеног, у највећем делу, модификација губитка се користи за решавање проблема бучних података и оверфиттинг-а, док је окосница одговорна за „сложеност“ модела, али постоје изузеци.
Овај чланак представља трансформатор-метрички губитак – комбинацију стандардног метричког губитка и трансформаторског губитка (трансформаторска мрежа као адитивни губитак). Трансформаторске мреже имају снагу да очувају секвенцијалне просторне односе што омогућава повећање дискриминативне моћи функције губитка и примену модела у сложенијим случајевима (на пример, за старосно непроменљиви ФР).
Посебност овог модела је у томе што се трансформатор не користи као окосница, као што је обично, на пример, у моделу Фаце Трансформер. Уместо тога, карактеристике из последњег конволуционог слоја се шаљу у две гране губитка. Прва грана је обичан слој за изравнавање и метрички губитак након њега (у овом случају, АрцФаце, али то може бити било који губитак заснован на класификацији).
У грани 2 узимамо излаз величине Х × В × Д и трансформишемо га у С векторе величине 1 × 1 × Д. Ова секвенца се може посматрати као секвенца уграђивања из закрпа за стандардни трансформаторски кодер. Након слоја енкодера трансформатора, наноси се линеарни слој без икаквих додатних подешавања активације или испадања. Након тога, функција унакрсне ентропије процењује губитак за дистрибуцију вероватноће излаза (за циљне Н класе). Оба губитка „грана-1” и „грана-2” се комбинују преко пондерисане суме.
У фази валидације (тестирања), друга грана се сече и користе се само уградње из стандардне прве гране. За тестирање МС1М-арцфаце и ВебФаце4М (подскуп ВебФаце 260М).
Закључак
У овом прегледу смо се фокусирали на једну област система за препознавање лица – функције губитка. Ово нам је омогућило да направимо преглед нових праваца и недавних чланака у овој области. Сва ова подручја настављају да се развијају сваке године.
Следеће теме су изостављене из овог дела прегледа:
- Окоснице ФР модела
- ФР модели за посебне случајеве као што су свесни оклузије, шминка-/старост-/осветљење-/поза-инваријантно препознавање лица
- 3Д / Динамиц ФР
- Преглед ФР скупова података. Они ће бити проучавани у наредним деловима.