Modely a platformy AI

SEER: Přelom v samořízeném učení počítačového vidění?

mm
Přidejte Unite.AI mezi své preferované zdroje na Google
SEER Framework for Self Supervised Learning

V posledních deseti letech jsme byli svědky obrovského pokroku v oblasti umělé inteligence (AI) a strojového učení (ML). Dnes jsou tyto modely mnohem přesnější, efektivnější a schopnější než kdykoli předtím. Moderní modely AI a ML mohou snadno a přesně rozpoznávat objekty v obrazech nebo videích. Navíc mohou generovat text a řeč, která se blíží lidské inteligenci.

Modely AI a ML dneška jsou silně závislé na trénování na označených datech, které jim učí, jak interpretovat blok textu, identifikovat objekty v obrazech nebo videích a mnoho dalších úkolů.

Navzdory svým schopnostem nejsou modely AI a ML dokonalé a vědci pracují na vývoji modelů, které jsou schopné učit se z informací, které jim jsou poskytovány, a ne pouze z označených nebo anotovaných dat. Tento přístup se nazývá samořízené učení a je jedním z nejefektivnějších způsobů, jak vyvinout modely ML a AI, které mají “zdravý rozum” nebo znalost, aby řešily problémy, které jsou mimo schopnosti současných modelů AI.

Samořízené učení již ukázalo své výsledky v zpracování přirozeného jazyka, protože umožnilo vývojářům trénovat velké modely, které mohou pracovat s enormním množstvím dat, a vedlo k několika průlomům v oblastech přirozeného jazykového odvozování, strojového překladu a odpovědí na otázky.

Model SEER od Facebook (META ) AI má za cíl maximalizovat schopnosti samořízeného učení v oblasti počítačového vidění. SEER nebo SElf-supERvised je samořízený model počítačového vidění, který má přes jednu miliardu parametrů a je schopen najít vzory nebo učit se i z náhodné skupiny obrazů nalezených na internetu bez řádných anotací nebo označení.

Potřebnost samořízeného učení v počítačovém vidění

Označení dat nebo označení obrazů je fáze předzpracování při vývoji modelů strojového učení a umělé inteligence. Proces označení dat identifikuje surová data, jako jsou obrazy nebo rámce videa, a poté přidává označení k datům, aby specifikoval kontext dat pro model. Tato označení umožňují modelu učinit přesné předpovědi na základě dat.

Jednou z největších překážek, kterým vývojáři čelí při práci s modely počítačového vidění, je nalezení kvalitních anotovaných dat. Počítačové vidění modely dneška závisí na těchto označených datech, aby se naučily rozpoznávat objekty v obrazech.

Označení dat a jeho použití v modelech počítačového vidění klade následující výzvy:

Rižení konzistentní kvality dat

Nejspíše největší překážka, před kterou vývojáři stojí, je získat přístup ke kvalitním datům konzistentně, protože kvalitní data s řádnými označeními a jasnými obrazy vedou k lepšímu učení a přesnějším modelům. Nicméně, získání kvalitních dat konzistentně má své vlastní výzvy.

Rižení workforce managementu

Označení dat často přichází s problémy workforce managementu, zejména proto, že je zapotřebí velké množství pracovníků, aby zpracovali a označili velké množství nestrukturovaných a neošetřených dat, zatímco zajišťují kvalitu. Proto je pro vývojáře nezbytné najít rovnováhu mezi kvalitou a množstvím při označení dat.

Finanční omezení

Nejspíše největší překážka je finanční omezení, která doprovázejí proces označení dat, a většinu času je náklad na označení dat významnou částí celkových nákladů na projekt.

Jak je vidět, označení dat je významnou překážkou při vývoji pokročilých modelů počítačového vidění, zejména při vývoji složitých modelů, které vyžadují velké množství trénovacích dat. Je to důvod, proč průmysl počítačového vidění potřebuje samořízené učení, aby vyvinul složitější a pokročilejší modely počítačového vidění, které jsou schopné řešit úkoly, které jsou mimo dosah současných modelů.

S tím řečeno, existuje již mnoho samořízených modelů učení, které fungují dobře v kontrolovaném prostředí, a především na datasetu ImageNet. Ačkoli tyto modely mohou fungovat dobře, nesplňují primární podmínku samořízeného učení v počítačovém vidění: učit se z libovolného neomezeného datasetu nebo náhodného obrazu, a ne pouze z well-definovaného datasetu. Když je implementováno ideálně, samořízené učení může pomoci vyvinout přesnější a schopnější modely počítačového vidění, které jsou nákladově efektivní a životaschopné.

SEER nebo SElf-supERvised Model: Úvod

Poslední trendy v průmyslu AI a ML ukazují, že přístupy k předtrénování modelů, jako je semi-doozpečené, slabě doozpečené a samořízené učení, mohou významně zlepšit výkon většiny hlubokých učících se modelů pro downstream úkoly.

Existují dva klíčové faktory, které významně přispěly k zlepšení výkonu těchto hlubokých učících se modelů.

Předtrénování na masivních datech

Předtrénování na masivních datech obecně vede k lepší přesnosti a výkonu, protože modelu umožňuje naučit se široké spektrum dat. Velké dataset umožňuje modelům lépe porozumět vzorům v datech, a nakonec vede k lepšímu výkonu modelu v reálných scénářích.

Některé z nejlepších modelů, jako je model GPT-3 a Wav2vec 2.0, jsou trénovány na masivních datech. Model GPT-3 používá dataset s více než 300 miliardami slov, zatímco model Wav2vec 2.0 pro rozpoznávání řeči používá dataset s více než 53 tisíci hodinami audio dat.

Modely s masivním kapacitním potenciálem

Modely s vyšším počtem parametrů často vedou k přesnějším výsledkům, protože větší počet parametrů umožňuje modelu soustředit se pouze na objekty v datech, které jsou nezbytné, a ne na interference nebo šum v datech.

Vývojáři v minulosti provedli pokusy o trénování samořízených modelů učení na neoznačených nebo nekuratovaných datech, ale s menšími datasety, které obsahovaly pouze několik milionů obrazů. Ale mohou samořízené modely učení vést k vysokým přesnostem, když jsou trénovány na velkém množství neoznačených a nekuratovaných dat? Přesně tuto otázku se snaží zodpovědět model SEER.

Model SEER je hluboký učící se rámec, který má za cíl registrovat obrazy dostupné na internetu nezávisle na kuratovaných nebo označených datech. Rámec SEER umožňuje vývojářům trénovat velké a složité modely ML na náhodných datech bez dohledu, tj. model analyzuje data a učí se z nich sám, bez jakéhokoli ručního vstupu.

Konečným cílem modelu SEER je pomoci vyvinout strategie pro proces předtrénování, který využívá nekuratovaná data k dosažení špičkového výkonu v přenosovém učení. Kromě toho model SEER také cílí na vytvoření systémů, které mohou neustále učit se z neustále se měnícího toku dat samořízeným způsobem.

Rámec SEER trénuje modely s vysokou kapacitou na miliardách náhodných a neomezených obrazů extrahovaných z internetu. Modely trénované na těchto obrazech nezávisí na meta-datech nebo označeních k trénování modelu, nebo filtrování dat. V poslední době samořízené učení ukázalo velký potenciál, protože trénování modelů na nekuratovaných datech vedlo k lepšímu výkonu ve srovnání s předtrénovanými modely pro downstream úkoly.

SEER Framework a RegNet: Co je spojitost?

Pro analýzu modelu SEER se zaměřuje na architekturu RegNet s více než 700 miliony parametrů, která odpovídá cíli samořízeného učení SEER na nekuratovaných datech ze dvou hlavních důvodů:

  1. Nabízejí ideální rovnováhu mezi výkonem a efektivitou.
  2. Jsou vysoce flexibilní a lze je škálovat pro velký počet parametrů.

SEER Framework: Předchozí práce z různých oblastí

Rámec SEER cílí na prozkoumání limitů trénování velkých architektur modelů v nekuratovaných nebo neošetřených datech pomocí samořízeného učení a model hledá inspiraci v předchozích pracích v oblasti.

Neřízené předtrénování vizuálních funkcí

Samořízené učení bylo implementováno v počítačovém vidění pro nějakou dobu již s metodami, které využívají autoenkodéry, instance-level diskriminaci nebo klastry. V poslední době metody, které využívají kontrastivní učení, ukázaly, že předtrénování modelů pomocí neřízeného učení pro downstream úkoly může vést k lepšímu výkonu než supervizované učení.

Hlavní poznatek z neřízeného učení vizuálních funkcí je, že pokud trénujete na filtrovaných datech, nejsou vyžadována supervizovaná označení. Model SEER cílí na prozkoumání, zda model může naučit se přesné reprezentace, když jsou velké architektury modelů trénovány na velkém množství nekuratovaných, neošetřených a náhodných obrazů.

Učení vizuálních funkcí ve velkém měřítku

Předchozí modely profitovaly z předtrénování modelů na velkých označených datech se slabě supervizovaným učením, supervizovaným učením a semi-supervizovaným učením na milionech filtrovaných obrazů. Kromě toho analýza modelů také ukázala, že předtrénování modelu na miliardách obrazů často vede k lepší přesnosti ve srovnání s trénováním modelu od začátku.

Navíc trénování modelu ve velkém měřítku obvykle závisí na krocích filtrování dat, aby se obrazy shodovaly s cílovými koncepty. Tyto kroky filtrování buď využívají předpovědí z předtrénovaného klasifikátoru, nebo využívají hashtagů, které jsou často sysnety tříd ImageNet. Model SEER funguje jinak, protože cílí na učení funkcí v libovolném obrazu, a proto trénovací data pro model SEER nejsou kuratována, aby odpovídala předem definované sadě funkcí nebo konceptů.

Škálování architektur pro rozpoznávání obrazů

Modely obvykle profitují z trénování velkých architektur na lepší kvalitě výsledných vizuálních funkcí. Je důležité trénovat velké architektury, když je předtrénování provedeno s kontrastivním učením, protože v takových případech model musí naučit se diskriminovat mezi instancemi datasetu, aby se naučil lepší vizuální reprezentace.

Nicméně, pro rozpoznávání obrazů škálování architektury zahrnuje mnohem více než pouze změnu hloubky a šířky modelu, a pro stavbu škálovatelného modelu s vyšším kapacitním potenciálem je zapotřebí mnoho literatury. Model SEER ukazuje výhody využití rodiny modelů RegNets pro nasazení samořízeného učení ve velkém měřítku.

SEER: Metody a komponenty

Rámec SEER využívá řadu metod a komponent pro předtrénování modelu, aby se naučil vizuálním reprezentacím. Některé z hlavních metod a komponent, které rámec SEER využívá, jsou: RegNet a SwAV. Podívejme se na metody a komponenty, které rámec SEER využívá, krátce.

Samořízené předtrénování se SwAV

Rámec SEER je předtrénován se SwAV, online samořízeným učením. SwAV je online klastrovací metoda, která se využívá k trénování konvolučních sítí bez označení. Rámec SwAV funguje tak, že trénuje vložené reprezentace, které produkují klastrové přiřazení konzistentně mezi různými pohledy na stejný obraz. Systém poté učí se sémantické reprezentace tak, že hledá klastry, které jsou invariantní k datovým augmentacím.

V praxi rámec SwAV porovnává funkce různých pohledů na obraz tak, že využívá jejich nezávislé klastrové přiřazení. Pokud tato přiřazení zachycují stejné nebo podobné funkce, je možné předpovědět přiřazení jednoho obrazu pomocí funkce jiného pohledu.

Rámec SEER zvažuje sadu K klastrů, a každý z nich je spojen s učitelnou d-rozměrnou vektorovou vk. Pro dávku B obrazů, každý obraz i je transformován do dvou různých pohledů: xi1 a xi2. Pohledy jsou poté featurizovány pomocí konvoluční sítě, a výsledkem jsou dvě sady funkcí: (f11, …, fB2), a (f12, … , fB2). Každá sada funkcí je poté přiřazena nezávisle ke klastrovým prototypům pomocí Optimal Transport řešitele.

Řešitel Optimal Transport zajišťuje, že funkce jsou rozděleny rovnoměrně mezi klastry, a pomáhá tak vyhnout se triviálním řešením, kde jsou všechny reprezentace mapovány na jeden prototyp. Výsledné přiřazení je poté vyměněno mezi dvěma sadami: klastrové přiřazení yi1 pohledu xi1 musí být předpovězeno pomocí funkce reprezentace fi2 pohledu xi2, a naopak.

Prototypové váhy a konvoluční síť jsou poté trénovány tak, aby minimalizovaly ztrátu pro všechny příklady. Ztráta klastrové předpovědi l je vlastně cross-entropie mezi softmaxem dot-produktu f a klastrového přiřazení.

RegNetY: Škálovatelná rodina modelů

Škálování kapacitního potenciálu modelu a dat vyžaduje architektury, které jsou efektivní nejen z hlediska paměti, ale také z hlediska běhu a RegNets framework je rodina modelů, která je speciálně navržena pro tento účel.

Rodina architektur RegNet je definována designovým prostorem konvolučních sítí se 4 fázemi, kde každá fáze obsahuje řadu identických bloků, zatímco se zachovává struktura jejich bloků, hlavně reziduální bottleneck blok.

Rámec SEER se zaměřuje na architekturu RegNetY a přidává Squeeze-and-Excitation ke standardní architektuře RegNets v pokusu o zlepšení jejich výkonu. Kromě toho má model RegNetY 5 parametrů, které pomáhají při hledání dobrých instancí s pevným počtem FLOPs, které spotřebovávají rozumné zdroje. Model SEER cílí na zlepšení svých výsledků implementací architektury RegNetY přímo na svém samořízeném předtrénovacím úkolu.

Architektura RegNetY 256GF:

Model SEER se zaměřuje hlavně na architekturu RegNetY 256GF v rodině RegNetY, a jeho parametry využívají škálovací pravidlo architektury RegNets. Parametry jsou popsány níže.

Architektura RegNetY 256GF má 4 fáze se šířkami fází (528, 1056, 2904, 7392) a hloubkami fází (2,7,17,1), které přidávají více než 696 milionů parametrů. Při trénování na 512 V100 32GB NVIDIA GPU, každá iterace trvá asi 6125ms pro dávku 8 704 obrazů. Trénování modelu na datasetu s více než miliardou obrazů, s dávkou 8 704 obrazů na více než 512 GPU, vyžaduje 114 890 iterací, a trénování trvá asi 8 dní.

Optimalizace a trénování ve velkém měřítku

Model SEER navrhuje několik úprav pro trénování samořízených metod, aby se aplikovaly a přizpůsobily tyto metody pro velké měřítko. Tyto metody jsou:

  1. Harmonogram učení.
  2. Snížení spotřeby paměti na GPU.
  3. Optimalizace rychlosti trénování.
  4. Předtrénování dat ve velkém měřítku.

Podívejme se na ně krátce.

Harmonogram učení

Model SEER prozkoumává možnost použití dvou harmonogramů učení: kosinový harmonogram učení a pevný harmonogram učení.

Kosinový harmonogram učení se používá pro srovnání různých modelů spravedlivě, protože se přizpůsobuje počtu aktualizací. Nicméně, kosinový harmonogram učení se nehodí pro velké měřítko, protože váží obrazy odlišně na základě toho, kdy jsou vidět během trénování, a také používá kompletní aktualizace pro plánování.

Analýza ukazuje, že pevný harmonogram učení funguje lépe, protože má prostor pro flexibilitu při trénování. Nicméně, protože model trénuje pouze na 1 miliardě obrazů, používá kosinový harmonogram učení pro trénování svého největšího modelu, RegNet 256GF.

Snížení spotřeby paměti na GPU

Model také cílí na snížení množství GPU potřebného během trénovacího období pomocí smíšeného přesného počtu a gradientního checkpointingu. Model využívá knihovnu NVIDIA Apex Library’s O1 Optimalizace úrovně pro provedení operací, jako jsou konvoluce a GEMMs v 16-bitovém plovoucí bodě. Model také využívá implementaci PyTorch’s gradient checkpointingu, která obchoduje výpočetní výkon za paměť.

Kromě toho model také odstraňuje jakékoliv mezilehlé aktivity vytvořené během forward passu, a během backward passu, opětovně počítá tyto aktivity.

Optimalizace rychlosti trénování

Použití smíšeného přesného počtu pro optimalizaci paměti má další výhody, protože urychlovače využívají snížené velikosti FP16 ve srovnání s FP32. To pomáhá urychlit trénovací období zlepšením paměťové propustnosti.

Model SEER také synchronizuje BatchNorm vrstvu napříč GPU, aby vytvořil procesní skupiny místo globální synchronizace, která obvykle vyžaduje více času. Nakonec, datový loader použitý v modelu SEER přednačítá více trénovacích dávek, což vede k vyšší propustnosti dat ve srovnání s PyTorch’s datovým loaderem.

Předtrénování dat ve velkém měřítku

Model SEER využívá více než miliardu obrazů během předtrénování a zvažuje datový loader, který náhodně vybírá obrazy přímo z internetu a Instagramu. Protože model SEER trénuje tyto obrazy v divočině a online, neaplikuje žádné předzpracování na těchto obrazech, ani je nekuratuje pomocí procesů, jako je de-duplikace nebo filtrování hashtagů.

Je důležité poznamenat, že dataset není statický a obrazy v datasetu se obnovují každé tři měsíce. Nicméně, obnovení datasetu neovlivňuje výkon modelu.

Implementace modelu SEER

Model SEER předtrénuje RegNetY 256GF se SwAV pomocí šesti cropů na obraz, s každým obrazem o rozlišení 2×224 + 4×96. Během fáze předtrénování model využívá 3-vrstvé MLP nebo Multi-Layer Perceptron s projekčními hlavami rozměrů 10444×8192, 8192×8192 a 8192×256.

Místo použití BatchNorm vrstev v hlavě, model SEER využívá 16 tisíc prototypů s teplotou t nastavenou na 0,1. Parametr Sinkhorn regularizace je nastaven na 0,05 a provede 10 iterací algoritmu. Model dále synchronizuje BatchNorm statistiky napříč GPU a vytváří procesní skupiny o velikosti 64 pro synchronizaci.

Kromě toho model využívá LARS nebo Layer-wise Adaptive Rate Scaling optimalizátor, váhu decay 10-5, aktivaci checkpointingu a O1 smíšeného přesného počtu optimalizace. Model je poté trénován se stochastickým gradientním sestupem pomocí dávky o velikosti 8192 náhodných obrazů distribuovaných na 512 NVIDIA GPU, což vede k 16 obrazům na GPU.

SaZ learnovací rychlost se lineárně zvyšuje z 0,15 na 9,6 během prvních 8 tisíc trénovacích aktualizací. Po zahřátí model následuje kosinový harmonogram učení, který se snižuje na konečnou hodnotu 0,0096. Celkově model SEER trénuje více než miliardu obrazů během 122 tisíc iterací.

Výsledky rámce SEER

Kvalita funkcí generovaných samořízeným předtrénovacím přístupem je studována a analyzována na různých benchmarcích a downstream úkolech. Model také zvažuje nízko-shot nastavení, které poskytuje omezený přístup k obrazům a jejich označení pro downstream úkoly.

Přefinování velkých předtrénovaných modelů

To měří kvalitu modelů předtrénovaných na náhodných datech přenosem na benchmark ImageNet pro klasifikaci obrazů. Výsledky na přefinování velkých předtrénovaných modelů jsou určeny na základě následujících parametrů.

Experimentální nastavení

Model předtrénuje 6 architektur RegNet s různými kapacitami, jmenovitě RegNetY- {8,16,32,64,128,256}GF, na více než 1 miliardu náhodných a veřejných obrazů z Instagramu se SwAV. Modely jsou poté přefinovány pro klasifikaci obrazů na ImageNet, který využívá více než 1,28 milionu standardních trénovacích obrazů s řádnými označeními a má standardní validační sadu s více než 50 tisíci obrazů pro hodnocení.

Model poté aplikuje stejné techniky augmentace dat, jako v SwAV, a přefinuje po dobu 35 epoch se stochastickým gradientním sestupem s dávkou o velikosti 256 a learnovací rychlostí 0,0125, která se snižuje o faktor 10 po 30 epochách, momentum 0,9 a váhu decay 10-4. Model hlásí top-1 přesnost na validační sadě pomocí centrálního cropu 224×224.

Srovnání s jinými samořízenými předtrénovacími přístupy

V následující tabulce je největší předtrénovaný model v RegNetY-256GF srovnán s existujícími předtrénovanými modely, které využívají samořízené učení.

Jak je vidět, model SEER vrací top-1 přesnost 84,2% na ImageNet a překvapuje SimCLRv2, nejlepší existující předtrénovaný model, o 1%.

Kromě toho následující obrázek srovnává rámec SEER s modely různých kapacit. Jak je vidět, bez ohledu na kapacitu modelu, kombinace rámce RegNet se SwAV vede k přesným výsledkům během předtrénování.

Model SEER je předtrénován na nekuratovaných a náhodných obrazech a má architekturu RegNet se samořízeným učením metodou SwAV. Model SEER je srovnán s modely SimCLRv2 a ViT s různými architekturami. Nakonec je model přefinován na datasetu ImageNet a hlásí se top-1 přesnost.

Dopad kapacity modelu

Kapacita modelu má významný dopad na výkon modelu během předtrénování a níže uvedený obrázek srovnává jej s dopadem, když se trénuje z počátku.

Je vidět, že top-1 přesnost skóre předtrénovaných modelů je vyšší než modelů trénovaných z počátku a rozdíl se zvyšuje se zvyšujícím se počtem parametrů. Je také vidět, že i když kapacita modelu prospívá oběma předtrénovaným a trénovaným z počátku modelům, dopad je větší na předtrénovaných modelech, když se jedná o velké množství parametrů.

Možným důvodem, proč trénování modelu z počátku by mohlo vést k přeučení, je malá velikost datasetu.

Nízko-shot učení

Nízko-shot učení se týká hodnocení výkonu modelu SEER v nízko-shot nastavení, tj. pomocí pouze zlomek celkových dat pro downstream úkoly.

Experimentální nastavení

Rámec SEER využívá dva dataset pro nízko-shot učení, jmenovitě Places205 a ImageNet. Kromě toho model předpokládá omezený přístup k datasetu během přenosu, a to jak z hlediska obrazů, tak označení. Toto omezené nastavení se liší od výchozích nastavení pro samořízené učení, kde model má přístup k celému datasetu a pouze přístup k označení obrazů je omezen.

Výsledky na datasetu Places205

Níže uvedený obrázek ukazuje dopad předtrénování modelu na různých částech datasetu Places205.

Přístup se srovnává s předtrénováním modelu na datasetu ImageNet s dohledem s toutéž architekturou RegNetY-128 GF. Výsledky z tohoto srovnání jsou překvapivé, protože je vidět, že existuje stabilní zisk asi 2,5% v top-1 přesnosti, bez ohledu na část trénovacích dat dostupných pro přefinování na datasetu Places205.

Rozdíl pozorovaný mezi supervizovaným a samořízeným předtrénováním lze vysvětlit rozdílem v povaze trénovacích dat, protože funkce naučené modelem z náhodných obrazů v divočině mohou být lépe přizpůsobeny klasifikaci scény. Kromě toho, nerovnoměrné rozložení základních konceptů může být výhodou pro předtrénování na nebalancovaném datasetu, jako je Places205.

Výsledky na ImageNet

Níže uvedená tabulka srovnává přístup modelu SEER se samořízenými předtrénovacími přístupy a semi-supervizovanými přístupy na nízko-shot učení. Je důležité poznamenat, že všechny tyto metody využívají všechny 1,2 milionu obrazů v datasetu ImageNet pro předtrénování a pouze omezují přístup k označení. Naopak, přístup modelu SEER umožňuje vidět pouze 1 až 10% obrazů v datasetu.

Jak je vidět, i když model SEER vidí pouze 1 až 10% datasetu ImageNet, je stále schopen dosáhnout top-1 přesnosti asi 80%, což je jen málo nižší než přesnost přístupů diskutovaných v tabulce výše.

Dopad kapacity modelu

Níže uvedený obrázek diskutuje dopad kapacity modelu na nízko-shot učení: při 1%, 10% a 100% datasetu ImageNet.

Je vidět, že zvýšení kapacity modelu může zlepšit přesnost modelu, protože snižuje přístup k obrazům a označení v datasetu.

Přenositelnost na jiné benchmarky

Pro další hodnocení výkonu modelu SEER jsou předtrénované funkce přeneseny na jiné downstream úkoly.

Lineární hodnocení klasifikace obrazů

Níže uvedená tabulka srovnává funkce z předtrénovaného modelu SEER RegNetY-256GF a RegNetY128-GF předtrénovaného na datasetu ImageNet se stejnou architekturou s a bez dohledu. Pro hodnocení kvality funkcí se modely zmrazí a použije se lineární klasifikátor na vrcholu funkcí pomocí trénovací sady pro downstream úkoly. Následující benchmarky se zvažují pro tento proces: Open-Images (OpIm), iNaturalist (iNat), Places205 (Places) a Pascal VOC (VOC).

Detekce a segmentace

Níže uvedený obrázek srovnává předtrénované funkce na detekci a segmentaci a vyhodnocuje je.

Model SEER trénuje model Mask-RCNN na benchmarku COCO s předtrénovanými RegNetY-64GF a RegNetY-128GF jako stavebními kameny. Pro obě architektury i downstream úkoly model SEER s samořízeným předtrénováním překonává supervizované trénování o 1,5 až 2 AP body.

Srovnání se slabě supervizovaným předtrénováním

Většina obrazů dostupných na internetu má meta popis nebo alt text, nebo popisy, nebo geolokace, které mohou poskytnout výhodu během předtrénování. Předchozí práce ukázala, že předpověď kuratované sady hashtagů může zlepšit kvalitu předpovězených vizuálních funkcí. Nicméně, tento přístup vyžaduje filtrování obrazů a funguje nejlépe pouze tehdy, je-li přítomno textové metadata.

Níže uvedený obrázek srovnává předtrénování architektury ResNetXt101-32dx8d trénované na náhodných obrazech se stejnou architekturou trénované na označených obrazech s hashtagy a metadaty a hlásí top-1 přesnost pro obě.

Je vidět, že i když rámec SEER nevyužívá metadata během předtrénování, jeho přesnost je srovnatelná s modely, které využívají metadata pro předtrénování.

Studie o odstranění

Studie o odstranění se provádí pro analýzu dopadu konkrétní komponenty na celkový výkon modelu. Studie o odstranění se provádí odstraněním komponenty z modelu a porozuměním, jak model funguje. Poskytuje vývojářům přehled o dopadu této konkrétní komponenty na výkon modelu.

Dopad architektury modelu

Architektura modelu má významný dopad na výkon modelu, zejména když je model škálován nebo jsou upraveny specifikace předtrénovacích dat.

Níže uvedený obrázek diskutuje dopad změny architektury na kvalitu předtrénovaných funkcí při lineárním hodnocení na datasetu ImageNet. Předtrénované funkce lze přímo prozkoumat v tomto případě, protože hodnocení nefavorizuje model, který vrací vysokou přesnost, když je trénován z počátku na datasetu ImageNet.

Je vidět, že pro architektury ResNeXts a ResNet funkce získané z předposlední vrstvy fungují lépe se současnými nastaveními. Naopak, architektura RegNet překonává ostatní architektury.

Celkově lze uzavřít, že zvýšení kapacity modelu má pozitivní dopad na kvalitu funkcí a existuje logaritmický zisk v výkonu modelu.

Škálování předtrénovacích dat

Existují dva hlavní důvody, proč trénování modelu na větším datasetu může zlepšit celkovou kvalitu vizuálních funkcí, které model naučí: více unikátních obrazů a více parametrů. Podívejme se na to, jak tyto důvody ovlivňují výkon modelu.

Zvyšování počtu unikátních obrazů

Níže uvedený obrázek srovnává dvě různé architektury, RegNet8 a RegNet16, které mají stejný počet parametrů, ale jsou trénovány na různých počtu unikátních obrazů. Rámec SEER trénuje modely po dobu aktualizací odpovídajících 1 epoše pro 1 miliardu obrazů nebo 32 epoše pro 32 unikátní obrazů a s jedinou půl-vlnou kosinového harmonogramu učení.

Je vidět, že pro dobrý výkon modelu je ideální, aby počet unikátních obrazů, které se modelu poskytují, byl vyšší. V tomto případě model funguje dobře, když je mu poskytnuto více unikátních obrazů než těch, které jsou přítomny v datasetu ImageNet.

Více parametrů

Níže uvedený obrázek ukazuje výkon modelu, když je trénován na 1 miliardě obrazů pomocí architektury RegNet-128GF. Je vidět, že výkon modelu se zvyšuje stabilně, když se zvyšuje počet parametrů.

Samořízené počítačové vidění v reálném světě

Až dosud jsme diskutovali, jak samořízené učení a model SEER pro počítačové vidění fungují v teorii. Nyní se podívejme, jak samořízené počítačové vidění funguje v reálných scénářích a proč je SEER budoucností samořízeného počítačového vidění.

Model SEER soupeří s prací provedenou v oblasti zpracování přirozeného jazyka, kde high-end modely využívají trillions dat a parametrů spojených s trillions slov textu během předtrénování modelu. Výkon na downstream úkolech obecně se zvyšuje se zvyšujícím se množstvím vstupních dat pro trénování modelu a totéž platí i pro úkoly počítačového vidění.

Ale použití samořízeného učení pro zpracování přirozeného jazyka se liší od použití samořízeného učení pro počítačové vidění. Je to proto, že když se jedná o text, semantické koncepty jsou obvykle rozděleny do diskrétních slov, ale když se jedná o obrazy, model musí rozhodnout, který pixel patří ke kterému konceptu.

Kromě toho různé obrazy mají různé pohledy a i když několik obrazů může mít stejný objekt, koncept se může lišit významně. Například, vezměme dataset s obrazi kočky. Ačkoli primární objekt, kočka, je společný pro všechny obrazy, koncept se může lišit významně, protože kočka může stát v jednom obraze, zatímco hraje s míčem v dalším a tak dále. Protože obrazy často mají různé koncepty, je důležité, aby model viděl velké množství obrazů, aby pochopil rozdíly kolem stejného konceptu.

Škálování modelu úspěšně, aby fungoval efektivně s vysokodimenzionálními a složitými obrazovými daty, vyžaduje dvě komponenty:

  1. Konvoluční neuronová síť nebo CNN, která je dostatečně velká, aby naučila se vizuální koncepty z velmi velkého obrazového datasetu.
  2. Algoritmus, který může naučit se vzory z velkého množství obrazů bez označení, anotací nebo metadat.

Model SEER cílí na aplikaci výše uvedených komponent do oblasti počítačového vidění. Model SEER cílí na využití pokroku, kterého bylo dosaženo pomocí SwAV, samořízeného učení, které využívá online klastrování k seskupení nebo spárování obrazů se souběžnými vizuálními koncepty a využívá tyto podobnosti k lepšímu rozpoznání vzorů.

S architekturou SwAV je model SEER schopen učinit samořízené učení v počítačovém vidění mnohem efektivnějším a snížit dobu trénování až o 6 krát.

Kromě toho trénování modelů ve velkém měřítku, v tomto měřítku, na více než 1 miliardu obrazů, vyžaduje modelovou architekturu, která je efektivní nejen z hlediska běhu a paměti, ale také z hlediska přesnosti. To je místo, kde se architektury RegNet uplatňují, protože jsou konvolučními modely, které mohou škálovat na trillions parametrů a mohou být optimalizovány podle potřeby, aby splňovaly omezení paměti a běhu.

Závěr: Samořízená budoucnost

Samořízené učení bylo hlavním tématem v průmyslu AI a ML po nějakou dobu, protože umožňuje modelům AI naučit se informace přímo z velkého množství dat dostupných náhodně na internetu, místo aby se spoléhaly na pečlivě kuratované a označené dataset, které mají jediný účel trénování modelů AI.

Samořízené učení je klíčovým konceptem pro budoucnost AI a ML, protože má potenciál umožnit vývojářům vytvořit modely AI, které se přizpůsobí reálným scénářům a mají mnoho použití, spíše než specifický účel, a SEER je milníkem v implementaci samořízeného učení v průmyslu počítačového vidění.

Model SEER činí první krok v transformaci průmyslu počítačového vidění a snižuje naši závislost na označených datech. Model SEER cílí na odstranění potřeby anotování dat, což umožní vývojářům pracovat s rozmanitými a velkými daty. Implementace modelu SEER je zvláště užitečná pro vývojáře, kteří pracují na modelech, které se zabývají oblastmi s omezenými obrazovými daty nebo metadaty, jako je lékařský průmysl.

Kromě toho, odstranění lidských anotací umožní vývojářům vyvinout a nasadit model rychleji, což jim umožní reagovat na rychle se měnící situace rychleji a s větší přesností.

Kunal Kejriwal je backendový inženýr specializující se na Python, PostgreSQL, Redis a cloudovou infrastrukturu na GCP a AWS. Má tři roky zkušeností s vývojem a škálováním produkčních systémů a píše o AI infrastruktuře, distribuovaných systémech a architektuře nasazování pracovních zátěží strojového učení.