Кантраснае навучаннеКантраснае навучанне — метад у машынным навучанні, накіраваны на пабудову рэпрэзентацый (эмбэдынгаў) шляхам параўнання і супрацьпастаўлення выбарачных даных . Асноўная ідэя заключаецца ў тым, каб мадэль навучылася адрозніваць падобныя і непадобныя пары даных, набліжаючы семантычна падобныя элементы адзін да аднаго ў прасторы прыкмет і аддаляючы непадобныя[1]. Гэтая тэхніка часта выкарыстоўваецца ў некіраваным або самакіраваным навучанні , калі меткі недаступныя . Кантраснае навучанне знаходзіць прымяненне ў розных задачах, такіх як навучанне рэпрэзентацый для кластарызацыі або класіфікацыі, і шырока выкарыстоўваецца ў камп’ютарным зроку і апрацоўцы натуральнай мовы[1]. Папулярныя алгарытмы, якія выкарыстоўваюць гэты падыход, уключаюць SimCLR і MoCo, дзе пазітыўныя пары фармуюцца з дапамогай розных варыянтаў аднаго і таго ж элементу даных, а негатыўныя — з розных элементаў. Асноўныя канцэпцыіПазітыўныя і негатыўныя пары![]() Асноўная ідэя кантраснага навучання заключаецца ў тым, каб навучыць мадэль адрозніваць пазітыўныя і негатыўныя пары даных[2].
Навучаючыся на пазітыўных і негатыўных парах, мадэль развівае ўяўленне аб тым, якія асаблівасці важныя для адрознення аб’ектаў. Гэта дазваляе мадэлі стварыць больш асэнсаваную і ўніверсальную рэпрэзентацыю даных, якую можна выкарыстоўваць для рашэння разнастайных задач, напрыклад такіх як класіфікацыя або кластарызацыя. Прастора прыкметПрасторай прыкмет завецца многавымерная вектарная прастора, дзе кожны аб’ект даных (выява, слова, абзац тэксту, аўдыя, дакумент і г.д.) прадстаўлены ў выглядзе вектара, называнага вектарным прадстаўленнем або эмбэдынгам[3]. Мэта кантраснага навучання — стварыць такую мадэль, якая можа канвертаваць аб’екты ў вектары прасторы прыкмет такім чынам, што падобныя элементы (пазітыўныя пары) размяшчаюцца бліжэй адзін да аднаго, а непадобныя (негатыўныя пары) аддаляюцца. Вектары з такімі ўласцівасцямі могуць пасля выкарыстоўвацца іншымі мадэлямі для задач класіфікацыі, кластарызацыі або пошуку[3]. Каб дасягнуць гэтага, мадэль навучаецца аптымізаваць функцыю страт (напрыклад, кантрасную або трыплетную функцыю), якая заахвочвае пазітыўныя пары да стварэння падобных вектарных прадстаўленняў, зніжаючы іх адлегласць у прасторы прыкмет. Адначасова адмоўныя пары аддаляюцца, павялічваючы адлегласць паміж іх вектарнымі прадстаўленнямі. У выніку прастора прыкмет становіцца добра арганізаванай схемай размяшчэння даных, дзе адлегласць паміж двума пунктамі адлюстроўвае іх семантычную падобнасць або непадобнасць. Пры правільнай пабудове, такая прастора прыкмет можа добра абагульняцца на новыя даныя, што не выкарыстоўваліся ў навучанні. Напрыклад, у задачах, звязаных з апрацоўкай тэксту, розныя абзацы з падобным значэннем (напрыклад, перафразаваныя шляхам змены парадку слоў або выкарыстаннем сінонімаў) павінны мець амаль ідэнтычныя прадстаўленні ў прасторы прыкмет, у той час як прадстаўленні абзацаў з розным значэннем павінны быць размешчаны далёка адзін ад аднаго. Функцыі стратКантрасная функцыя стратКантрасная функцыя страт — ключавы элемент кантраснага навучання, прызначаны для таго, каб мадэль навучылася адрозніваць падобныя і непадобныя аб’екты даных. Яна працуе, мінімізуючы адлегласць паміж пазітыўнымі парамі (падобныя аб’екты) і максімізуючы адлегласць паміж негатыўнымі парамі (непадобныя аб’екты) у прасторы прыкмет. Кантрасную функцыю страт можна запісаць наступным чынам[4]: дзе:
Мэты кантраснай функцыі страт:
Асноўныя характарыстыкі кантраснай функцыі страт:
Трыплетная функцыя страт![]() Трыплетная функцыя страт выкарыстоўваецца для паляпшэння рэпрэзентацый праз параўнанне ўзорнага элемента (якар) з пазітыўным і негатыўным прыкладамі. Ідэя функцыі ў тым каб наблізіць пазітыўны прыклад да якара, адначасова аддаляючы ад яго негатыўны прыклад[5]. Трыплет складаецца з трох элементаў:
Трыплетная функцыя страт прадугледжвае, каб адлегласць паміж якарам і пазітыўным прыкладам была меншай за адлегласць паміж якарам і негатыўным прыкладам на як мінімум пэўнае значэнне, вядомае як маржа . Матэматычна трыплетную функцыю можна запісаць як[5] дзе
Працэс навучання ўключае выбар трыплетаў з даных і падбор параметраў мадэлі для мінімізацыі трыплетнай функцыі страт. Важную ролю ў навучанні адыгрывае выбар правільных трыплетаў. Звычайна найбольшы эфект даюць цяжкія трыплеты (дзе першапачаткова негатыўны прыклад блізкі да якара, а пазітыўны — далёкі), бо яны дапамагаюць мадэлі вучыцца на больш складаных выпадках[5]. Трыплетная функцыя страт паспяхова выкарыстоўваецца ў розных задачах, асабліва ў распазнаванні твараў (напрыклад, мадэль FaceNet ). Шляхам мінімізацыі адлегласці паміж эмбэдынгамі фатаграфій твару аднаго чалавека і максімізацыі адлегласці паміж тварамі розных людзей, трыплетная функцыя страт дапамагае ствараць надзейныя рэпрэзентацыі для адрознення твараў[5]. Функцыя страт InfoNCEInfoNCE (Information Noise Contrastive Estimation) — функцыя страт, якая шырока выкарыстоўваецца ў кантрасным навучанні, асабліва ў самакіраваных падыходах. InfoNCE працуе праз параўнанне якара (узорнага элемента) з прыкладамі ў батчы (адносна невялікім падмностве даных), сярод якіх ёсць адзін пазітыўны прыклад. Яна заахвочвае мадэль набліжаць элементы пазітыўнай пары і аддаляць элементы ў негатыўных парах. Функцыю InfoNCE можна запісаць наступным чынам[6]: дзе
Выражэнне ў лічніку залежыць ад падабенства паміж якарам і пазітыўным прыкладам, у той час як назоўнік нармалізуе яго па ўсіх магчымых парах якара з іншымі элементамі (пазітыўных і негатыўных). Такая фармулёўка вымушае мадэль адрозніваць сапраўдны пазітыўны прыклад ад мноства негатыўных, што прыводзіць да паляпшэння якасці рэпрэзентацый. Функцыя InfoNCE асабліва эфектыўная ў такіх падыходах, як SimCLR і MoCo, дзе яна дапамагае мадэлі вучыцца без разметкі, выкарыстоўваючы штучныя варыяцыі даных (аўгментацыі )[2][6]. Віды кантраснага навучанняКіраванае кантраснае навучаннеКіраванае кантраснае навучанне пашырае прынцыпы кантраснага навучання на задачы, дзе даступныя размечаныя даныя . У адрозненне ад некіраванага або самакіраванага кантраснага навучання, дзе пазітыўныя і негатыўныя пары фармуюцца без выразных метак, кіраванае кантраснае навучанне выкарыстоўвае меткі класаў для стварэння больш інфарматыўных пазітыўных і негатыўных пар. У такім выпадку ўзоры, якія маюць аднолькавыя меткі, разглядаюцца як пазітыўныя пары, а ўзоры з рознымі меткамі — як негатыўныя пары[7]. Асноўная перавага кіраванага кантраснага навучання заключаецца ў тым, што яно можа выкарыстоўваць дадатковую інфармацыю, забяспечаную меткамі, каб вызначыць адносіны паміж парамі даных, паляпшаючы якасць рэпрэзентацый. Лічачы ўсе ўзоры аднаго класа пазітыўнымі парамі, мадэль можа стварыць лепшую прастору прыкмет, дзе мінімізуецца ўнутрыкласавая зменлівасць і максімізуецца міжкласавая зменлівасць[7]. На практыцы кіраванае кантраснае навучанне асабліва карыснае пры працы з вялікімі наборамі размечаных даных. Адзін з вядомых алгарытмаў, які выкарыстоўвае гэты падыход, быў прадстаўлены Khosla et al. у 2020 годзе і паказаў лепшыя вынікі ў некаторых задачах у параўнанні з навучаннем на аснове крос-энтрапіі[7]. Некіраванае і самакіраванае кантраснае навучаннеУ некіраваным або самакіраваным кантрасным навучанні мадэль вучыцца адрозніваць падобныя і непадобныя аб’екты даных без выкарыстання разметкі. Замест разметкі, алгарытмы навучання выкарыстоўваюць розныя метады трансфармацыі даных або звяртаюцца да іх унутранай структуры[2][8]. Адна з распаўсюджаных стратэгій у самакіраваным навучанні заключаецца ў стварэнні пазітыўных пар шляхам прымянення розных трансфармацый (напрыклад, абразанне, змяненне колераў, адлюстраванне) да аднаго і таго ж аб’екта даных, напрыклад, выявы. Гэтыя трансфармацыі, якія таксама называюцца аўгментацыямі, захоўваюць семантыку (значэнне) арыгінальных даных, але ствараюць некалькі варыянтаў аднаго і таго ж аб’екта. Негатыўныя пары ствараюцца шляхам выбару выпадковых пар аб’ектаў. Мадэль навучаецца набліжаць рэпрэзентацыі пазітыўных пар (розныя варыянты аднаго і таго ж аб’екта) і аддаляць рэпрэзентацыі негатыўных пар (розных аб’ектаў)[2]. Самакіраванае кантраснае навучанне набыло вялікую значнасць у камп’ютарным зроку з мадэлямі, такімі як SimCLR і MoCo. Гэтыя мадэлі навучаюцца на вялікіх аб’ёмах неразмечаных даных, ствараючы рэпрэзентацыі, што могуць быць далей адаптаваны для задач, такіх як класіфікацыя выяў, выяўленне аб’ектаў або сегментацыя[2][6]. У апрацоўцы натуральнай мовы самакіраваныя метады кантраснага навучання могуць быць ужытыя да задач накшталт стварэння рэпрэзентацый сказаў, дзе мэтай з’яўляецца прадстаўленне падобных сказаў падобнымі вектарамі. Гэтыя метады значна скарачаюць залежнасць ад размечаных набораў даных, што палягчае маштабаванне навучальных працэсаў, бо неразмечаныя даныя часта больш даступныя[9]. Самакіраваныя кантрасныя метады таксама выкарыстоўваюцца ў мультымадальным кантэксце каб злучыць паміж сабой прадстаўленні даных розных фарматаў. Гэта карысна ў такіх задачах, як напрыклад пошук выявы па апісанні. Адзін з прыкладаў выкарыстання кантраснага навучання для мультымадальных задач — мадэль CLIP , прадстаўленая ў 2021 годзе даследчыкамі з OpenAI[10]. Асноўныя праблемы ў некіраваным кантрасным навучанні — выбар значных негатыўных узораў і эфектыўная аўгментацыя даных. АлгарытмыSimCLRSimCLR (англ.: Simple Framework for Contrastive Learning of Visual Representations, бел.: Просты падыход да кантраснага навучання візуальных рэпрэзентацый) — алгарытм самакіраванага кантраснага навучання ў галіне камп’ютарнага зроку, прызначаны для стварэння рэпрэзентацый выяў. Распрацаваны даследчыкамі з Google Brain . Асноўная ідэя SimCLR заключаецца ў выкарыстанні розных варыянтаў адных і тых жа выяў для фарміравання пазітыўных пар, у той час як выпадковыя выявы фармуюць негатыўныя пары[2]. Падыход SimCLR складаецца з наступных кампанентаў:
Пры наяўнасці некаторай колькасці размечаных даных, мадэль атрыманая з SimCLR можа быць данавучана, каб яшчэ больш палепшыць якасць рэпрэзентацый[2]. Асаблівасцю SimCLR з’яўляецца выкарыстанне батчаў вялікіх памераў. Такім чынам дасягаецца вялікая колькасць негатыўных узораў, што дапамагае мадэлі ствараць лепшыя рэпрэзентацыі. Эфектыўнасць SimCLR узрастае пры павелічэнні памеру батча, хоць гэта патрабуе больш рэсурсаў[2]. SimCLR прадэманстраваў высокую эфектыўнасць у класіфікацыі выяў, часам нават пераўзыходзячы мадэлі, навучаныя на размечаных даных. У той жа час SimCLR патрабуе вялікай колькасці вылічальных рэсурсаў і памяці з-за залежнасці ад вялікіх батчаў. Акрамя таго, неабходнасць дбайнай наладкі аўгментацый і функцый страт робіць яго адчувальным да канкрэтных рэалізацый і набораў даных. Гэтыя праблемы адрасуюцца іншымі метадамі кантраснага навучання, такімі як MoCo[2][6]. Падыход SimCLRv2 паляпшае SimCLR, выкарыстоўваючы глыбейшую версію ResNet і глыбейшы модуль праекцыі. Таксама ў ім выкарыстаны модуль памяці з MoCo v2[11]. MoCoMoCo (англ.: Momentum Contrast, бел.: Інерцыйны кантраст) — алгарытм самакіраванага навучання, распрацаваны даследчыкамі з Facebook AI Research . MoCo вырашае праблему эфектыўнага выкарыстання памяці шляхам выкарыстання дынамічнага слоўніка з інерцыйным механізмам абнаўлення. Гэты падыход дазваляе MoCo падтрымліваць вялікую колькасць негатыўных узораў, што з’яўляецца важным фактарам кантраснага навучання[6]. Асноўныя канцэпцыі і асаблівасці:
Інерцыйнае абнаўленне дазваляе сетцы ключоў заставацца больш стабільнай на працягу ўсяго працэса навучання, а значыць ключы з чаргі не патрабуюць перападліку пасля абнаўлення параметраў сеткі[6]. Падыход, прапанаваны аўтарамі алгарытма MoCo, дазваляе атрымліваць перавагу ад вялікай колькасці негатыўных пар, захоўваючы памер батча адносна невялікім, бо крыніцай негатыўных пар становіцца чарга, а не толькі батч. Памер чаргі можа перавышаць памер батча ў разы. Такім чынам нівелюецца праблема залежнасці ад памеру батча, і аператыўная памяць прылады, на якой адбываецца навучанне, выкарыстоўваецца больш эфектыўна ў параўнанні з падыходам SimCLR[6]. BYOLBYOL (англ.: Bootstrap Your Own Latent) адрозніваецца ад традыцыйных кантрасных метадаў тым, што не патрабуе негатыўных узораў. Замест гэтага ён выкарыстоўвае дзве нейроныя сеткі: мэтавую і анлайн-сетку, пры гэтым першая з іх абнаўляецца павольней. Рэпрэзентацыі, атрыманыя такім чынам паказалі найлепшыя вынікі ў шэрагу задач класіфікацыі выяў[12]. ПрымяненнеКантраснае навучанне выкарыстоўваецца ў розных галінах дзякуючы сваёй здольнасці эфектыўна вывучаць рэпрэзентацыі без неабходнасці ў вялікіх аб’ёмах размечаных даных. Гэты падыход паказаў выдатныя вынікі ў камп’ютарным зроку, апрацоўцы натуральнай мовы і іншых галінах, дзе ён дазваляе мадэлям аддзяляць значныя адрозненні паміж элементамі даных ад нязначных. Камп’ютарны зрокУ камп’ютарным зроку кантраснае навучанне актыўна выкарыстоўваецца ў задачах класіфікацыі выяў , распазнавання аб’ектаў і сегментацыі . Яно асабліва эфектыўна ў галінах, дзе колькасць размечаных выяў абмежаваная або іх складана атрымаць. Такія тэхнікі, як SimCLR і MoCo, выкарыстоўваюцца для атрымання рэпрэзентацый выяў, што дазваляе мадэлям дасягаць выдатных вынікаў у задачах класіфікацыі і пошуку[13][14]. Апрацоўка натуральнай мовыУ апрацоўцы натуральнай мовы кантраснае навучанне выкарыстоўваецца для атрымання вектарных рэпрэзентацый слоў, сказаў і дакументаў. Ствараючы пазітыўныя пары з семантычна падобных тэкстаў (напрыклад, перафразаваных сказаў) і негатыўныя пары з незвязаных тэкстаў, мадэлі могуць генераваць рэпрэзентацыі, якія захопліваюць сэнсавыя і кантэкставыя адрозненні. Сярод прымяненняў — задачы вызначэння семантычнага падабенства , аналіз танальнасці , машынны пераклад і іншыя[14][15]. Іншыя галіныКантраснае навучанне выкарыстоўваецца для аналізу медыцынскіх выяў (напрыклад, здымкаў МРТ ) з мэтай выяўлення прыкмет, звязаных з хваробамі. Напрыклад, яно можа дапамагчы ў дыягностыцы такіх захворванняў, як дыябетычная рэтынапатыя , праз больш эфектыўны аналіз здымкаў сятчаткі ў параўнанні з традыцыйнымі метадамі[16]. Кантраснае навучанне дапамагае ўдасканаліць мадэлі навучання з падмацаваннем , што паляпшае працэс прыняцця рашэнняў у складаных абставінах[14]. АбмежаванніКантраснае навучанне патрабуе значных аб’ёмаў неразмечаных даных для эфектыўнага вывучэння змястоўных рэпрэзентацый. Без дастатковай колькасці даных мадэлі можа быць складана выявіць асноўныя заканамернасці, неабходныя для абагульнення атрыманых рэпрэзентацый на новыя задачы і даныя[17]. Эфектыўнасць кантраснага навучання значна залежыць ад якасці негатыўных пар, якія выкарыстоўваюцца ў часе навучання. Калі негатыўныя пары не з’яўляюцца дастаткова складанымі або ўтрымліваюць хібныя прыклады (пары, што насамрэч пазітыўныя), гэта можа прывесці да пагаршэння якасці рэпрэзентацый[17]. Мадэлі, атрыманыя з дапамогай кантраснага навучання, часта генерыруюць складаныя рэпрэзентацыі, якія могуць быць цяжкімі для інтэрпрэтацыі. Гэты брак празрыстасці ўскладняе разуменне таго, як працуюць мадэлі на аснове вывучаных рэпрэзентацый[17]. Многія метады кантраснага навучання выкарыстоўваюць спецыфічныя аўгментацыі для атрымання пазітыўных пар, напрыклад змены колеру, дапускаючы, што колер не змяняе сутнасці аб’екта. Гэта прыводзіць да некарэктных паводзін вывучаных рэпрэзентацый у задачах, дзе патрабуецца адрозніваць аб’екты рознага колеру або іншых характарыстык, закранутых аўгментацыямі[18]. Крыніцы
|
Portal di Ensiklopedia Dunia