Tudásmegosztás • 3 perc olvasás •
Segment anything – de tényleg bármit?

Az NLP területén a foundation modellek virágkorát éljük és a gépi látás is folyamatosan fejlődik, azonban egy kulcsterület jelentős lemaradásban volt eddig. A Meta Segment Anything Model (SAM) új szintre emeli a képszegmentálást: bármilyen inputból – pont, doboz, szöveg – képes dolgozni, és három lehetséges megoldást is felkínál. Vajon eljött a nagy áttörés ideje?
Az NLP területén a foundation modellek virágkorát éljük, a számítógépes látás (computer vision) szintén folyamatos fejlődésben van, azonban van egy részterülete, a képszegmentálás, amely ezekhez képest lemaradásban van. A képszegmentálás alapvető feladat a gépi látásban, de a jelenlegi szegmentációs modellek általában egy specifikus feladatra, adathalmazra vannak betanítva; nincs egy általános, jól működő modell erre a feladatra. A SAM alkotói ezzel a problémával akartak megküzdeni, és a megoldás első lépéseként három kérdést tettek fel:
A SAM alkotói ezzel a problémával akartak megküzdeni, és a megoldás első lépéseként három kérdést tettek fel:
- Milyen feladat teszi lehetővé a zero-shot általánosítást?
- Mi a hozzá tartozó modellarchitektúra?
- Milyen adatok szükségesek a feladathoz és a modellhez?
A feladat a promptable segmentation nevet kapta. Ebben inputként meg lehet adni egy pontot vagy dobozt a képen, konkrét maszkot, sőt akár szabad szöveget is; a cél pedig az, hogy az input alapján a modell kiszegmentálja (maszkolja) a megfelelő képrészletet. Az input nem mindig egyértelmű (például ha egy pólóra teszel egy pontot, az utalhat magára a pólóra, de akár az azt viselő emberre is), ezért a modell egy bemenetre három lehetséges maszkot generál.
A SAM architektúrája három fő komponensből áll:
- Image Encoder – az inputképet dolgozza fel; ez a lassabban futó része a modellnek, de egy képnél elég csak egyszer elvégezni, és utána több szegmentációs feladat is futtatható rajta.
- Prompt Encoder – kezeli a különböző bemeneti jeleket: pont, doboz, szöveg.
- Mask Decoder – a már feldolgozott inputokat (kép + prompt) dolgozza fel, és visszaadja a három lehetséges maszkot; gyorsan működik.
A SAM-projekt részeként létrejött egy új adathalmaz is, az SA-1B, amely 11 millió képet és 1,1 milliárd maszkot tartalmaz. Az adathalmazt három lépésben hozták létre:
- Modell által támogatott kézi annotációs szakasz.
- Félautomatikus szakasz, amely ötvözi a modell által javasolt maszkokat és az annotátor munkáját.
- Teljesen automatikus szakasz, amelyben a modell már annotátori beavatkozás nélkül generál maszkokat
A maszkok 99%-a teljesen automatikusan lett generálva, azaz a harmadik szakasz eredményei.
A SAM-et számos konkrét feladaton is kipróbálták – például egyetlen pontból indított szegmentálás, éldetektálás, objektumjavaslatok készítése, példányszegmentálás vagy szövegből maszk generálása. Néhány esetben kisebb utófeldolgozásra, illetve az utolsó feladatnál további tanításra is szükség volt, hogy jobban illeszkedjen az adott problémához. Összességében a modell mindenhol meggyőzően szerepelt, bár nem minden teszten sikerült az első helyet megszereznie.
Átfogóan nézve a SAM remekül teljesít, de nem minden bajra orvosság. Használata gyors és egyszerű -bár igényelhet utófeldolgozási lépéseket- azonban bizonyos esetekben érdemes lehet testreszabottabb modelleket vagy megoldásokat alkalmazni.
Forrás: https://arxiv.org/abs/2304.02643



