Object Detection for Dummies 2. rész: CNN, DPM és Overfeat
a 2. rész számos klasszikus konvolúciós neurális munka architektúrát mutat be a képosztályozáshoz (AlexNet, VGG, ResNet), valamint a DPM (Deformable Parts Model) és a Overfeat modelleket az objektumfelismeréshez.
az “Object Detection for Dummies” sorozat 1. része bemutatta: (1) A képgradiens vektor fogalma és hogyan foglalja össze a HOG algoritmus az információkat az összes gradiens vektoron egy képen; (2) Hogyan működik a képszegmentálási algoritmus olyan régiók észlelésére, amelyek potenciálisan objektumokat tartalmaznak; (3) Hogyan finomítja a szelektív keresési algoritmus a képszegmentálás eredményeit a jobb régiójavaslat érdekében.
a 2.részben többet fogunk megtudni a klasszikus konvolúciós neurális hálózati architektúrákról a képosztályozáshoz. Megalapozzák az objektumfelismerés mély tanulási modelljeinek további előrehaladását. Nézze meg a 3. részt, ha többet szeretne megtudni az R-CNN-ről és a kapcsolódó modellekről.
linkek a sorozat összes bejegyzéséhez: .
CNN a Képosztályozáshoz
CNN, a “konvolúciós neurális hálózat” rövidítése, a számítógépes látásproblémák megoldása a mély tanulási világban. Ez volt, bizonyos mértékig, ihlette, hogy az emberi vizuális kéreg rendszer működik.
konvolúciós művelet
erősen ajánlom ezt az útmutatót a konvolúciós aritmetikához, amely tiszta és szilárd magyarázatot nyújt rengeteg vizualizációval és példával. Itt összpontosítsunk a kétdimenziós konvolúcióra, mivel ebben a bejegyzésben képekkel dolgozunk.
röviden, a konvolúciós művelet egy előre definiált kernelt (más néven “szűrőt”) csúsztat a bemeneti funkciótérkép tetejére (képpontok mátrixa), megszorozva és hozzáadva a kernel és a részleges bemeneti funkciók értékeit a kimenet létrehozásához. Az értékek kimeneti mátrixot alkotnak, mint általában, a kernel sokkal kisebb, mint a bemeneti kép.
Ábra. 1. A rendszermag alkalmazása a bemeneti funkciótérképen a kimenet létrehozásához. (Kép forrása: Folyami nyomvonal dokumentációja)
a 2. ábra két valós példát mutat be arra, hogyan lehet egy 3×3-as kernelt egy 5×5-ös 2D-s mátrixon keresztül 3×3-as mátrixot generálni. A párnázási méret és a lépéshossz szabályozásával létrehozhatunk egy bizonyos méretű kimeneti mátrixot.
Ábra. 2. Két példa a 2D konvolúciós műveletre: (felül) nincs kitöltés és 1×1 lépés; (alul) 1×1 szegély nullák kitöltés és 2×2 lépés. (Kép forrása: deeplearning.net)
AlexNet (Krizhevsky et al, 2012)
- 5 konvolúciós rétegek + 2 MLP réteg + 1 LR réteg
- adatnövelési technikák segítségével bővítse a képzési adatkészletet, például képfordításokat, vízszintes visszaverődéseket és patch-kivonatokat.
ábra. 3. Az alexnet architektúrája. (Kép forrása: link)
VGG (Simonyan és Zisserman, 2014)
- a hálózatot akkoriban “nagyon mélynek” tekintik; 19 réteg
- az architektúra rendkívül egyszerű, mindössze 3×3 konvolúciós réteggel és 2×2 pooling réteggel. A kis szűrők egymásra rakása egy nagyobb szűrőt szimulál, kevesebb paraméterrel.
ResNet (He et al., 2015)
- a hálózat valóban nagyon mély; 152 réteg egyszerű architektúra.
- maradék blokk: egy bizonyos réteg néhány bemenete két réteggel később átadható az összetevőnek. A maradék blokkok elengedhetetlenek ahhoz, hogy a mély hálózat képezhető legyen és végül működjön. Maradék blokkok nélkül a sima hálózat képzési vesztesége nem csökken monoton módon, mivel a rétegek száma növekszik az eltűnő és felrobbanó gradiensek miatt.
ábra. 4. A ResNet maradék blokkjának illusztrációja. Valamilyen módon elmondhatjuk, hogy a maradék blokkok tervezését a V4 ihlette, amely közvetlenül a v1-ből érkezik az emberi vizuális kéregrendszerbe. (bal oldali kép forrása: Wang et al., 2017)
Értékelési Mutatók: mAP
számos objektumfelismerési és észlelési feladatban használt közös értékelési mutató a “mAP”, rövidítve az”átlagos átlagos pontosságot”. Ez egy szám 0 – tól 100-ig; a magasabb érték jobb.
- kombinálja az összes tesztkép összes észlelését, hogy minden osztályra precíziós visszahívási görbét (PR görbét) rajzoljon; az “átlagos pontosság” (AP) a PR görbe alatti terület.
- tekintettel arra, hogy a célobjektumok különböző osztályokba tartoznak, először minden osztályra külön számítjuk az AP-t, majd az átlagot az osztályok között.
- a detektálás valódi pozitív, ha van ” kereszteződés az Unió felett “(IoU) egy bizonyos küszöbértéknél nagyobb alapigazság-mezővel (általában 0,5; ha igen, akkor a metrika “[email protected]”)
deformálható alkatrészek modell
a deformálható alkatrészek modell (DPM) (Felzenszwalb et al., 2010) felismeri az objektumokat a deformálható alkatrészek keverék grafikus modelljével (Markov véletlenszerű mezők). A modell három fő összetevőből áll:
- a durva gyökérszűrő egy észlelési ablakot határoz meg, amely megközelítőleg egy teljes objektumot fed le. A szűrő meghatározza a régió jellemzővektorának súlyait.
- több részszűrő, amelyek az objektum kisebb részeit fedik le. Az alkatrészszűrőket a gyökérszűrő kétszeres felbontásával tanulják meg.
- térbeli modell az alkatrészszűrők helyének a gyökérhez viszonyított pontozásához.
Fig. 5. A DPM modell tartalmaz (a) egy gyökérszűrőt, (b) több alkatrészszűrőt kétszer nagyobb felbontással, és (c) egy modellt az alkatrészek helyének és deformációjának pontozására.
az objektum észlelésének minőségét a szűrők pontszámával mérik, levonva a deformációs költségeket. A megfelelő pontszám \(f\), laikus értelemben az:
\\]
amelyben,
- \(x\) egy meghatározott pozícióval és skálával rendelkező kép;
- \(y\) egy \(x\) részrégió.
- \(\beta_\text{root}\) a gyökérszűrő.
- \(\beta_\text{part}\) egy részszűrő.
- cost() az ideális helyétől a gyökérhez képest eltérő rész büntetését méri.
az alap pontszám modell a dot termék a szűrő \(\beta\) és a régió jellemző vektor \(\Phi(x)\): \(f(\beta, x) = \beta \cdot \Phi(x)\) között. A \(\Phi(x)\) funkciókészlet meghatározható HOG vagy más hasonló algoritmusokkal.
a magas pontszámmal rendelkező gyökérhely olyan régiót észlel, amelynek nagy esélye van egy objektum tárolására, míg a magas pontszámmal rendelkező részek elhelyezkedése megerősíti az elismert objektumhipotézist. A papír elfogadta látens SVM modellezni az osztályozó.
ábra. 6. A megfelelő folyamat DPM. (Kép forrása: Felzenszwalb et al., 2010)
a szerző később azt állította, hogy a DPM és a CNN modellek nem két különálló megközelítés az objektumfelismeréshez. Ehelyett egy DPM modellt CNN-ként lehet megfogalmazni a DPM következtetési algoritmus kibontásával és minden lépés leképezésével egy egyenértékű CNN rétegre. (Ellenőrizze a részleteket Girshick et al., 2015!)
Overfeat
a Overfeat egy úttörő modell az objektumdetektálási, lokalizációs és osztályozási feladatok integrálására egyetlen konvolúciós neurális hálózatba. A fő gondolat az, hogy (i) a kép több skálájának régióiban különböző helyeken végezzen képosztályozást tolóablak módon, és (ii) megjósolja a határoló doboz helyeit ugyanazon konvolúciós rétegek tetején képzett regresszorral.
a Overfeat modell architektúrája nagyon hasonló az AlexNet-hez. A következőképpen képzett:
ábra. 7. A Túltáplálási modell képzési szakaszai. (Kép forrása: link)
- képezzen egy CNN modellt (hasonlóan az AlexNet-hez) a képosztályozási feladatra.
- ezután a felső osztályozó rétegeket egy regressziós hálózattal helyettesítjük, és betanítjuk, hogy megjósolja az objektumhatároló dobozokat minden térbeli helyen és skálán. A regresszor osztályspecifikus, mindegyik egy képosztályhoz van generálva.
- bemenet: képek osztályozással és határolókerettel.
- kimenet: \((x_ \ text{left}, x_ \ text{right}, y_\text{top}, y_\text{bottom})\), összesen 4 érték, amelyek a határoló doboz széleinek koordinátáit képviselik.
- veszteség: A regresszor úgy van kiképezve, hogy minimalizálja az\ (l2\) normát a generált határoló doboz és a talaj igazság között minden egyes edzési példánál.
az észlelés időpontjában,
- végezzen osztályozást minden helyen az előképzett CNN modell segítségével.
- az osztályozó által generált összes Osztályozott régió objektumhatároló mezőinek előrejelzése.
- határoló dobozok egyesítése a lokalizációból elegendő átfedéssel, és elegendő bizonyossággal, hogy ugyanaz az objektum az osztályozóból.
mint:
@article{weng2017detection2, title = "Object Detection for Dummies Part 2: CNN, DPM and Overfeat", author = "Weng, Lilian", journal = "lilianweng.github.io/lil-log", year = "2017", url = "http://lilianweng.github.io/lil-log/2017/12/15/object-recognition-for-dummies-part-2.html"}
hivatkozás
Vincent Dumoulin és Francesco Visin. “Útmutató a konvolúciós aritmetikához a mély tanuláshoz.”arXiv preprint arXiv: 1603.07285 (2016).
Haohan Wang, Bhiksha Raj és Eric P. Xing. “A mély tanulás eredetéről.”arXiv preprint arXiv: 1702.07800 (2017).
Pedro F. Felzenszwalb, Ross B. Girshick, David McAllester és Deva Ramanan. “Objektumdetektálás diszkriminatívan képzett részalapú modellekkel.”IEEE tranzakciók a mintaelemzésről és a gépi intelligenciáról 32, no.9 (2010): 1627-1645.
Ross B. Girshick, Forrest Iandola, Trevor Darrell és Jitendra Malik. “A deformálható alkatrészmodellek konvolúciós neurális hálózatok.”A Proc. IEEE Conf. a számítógépes látásról és Mintafelismerésről (Cvpr), 437-446. 2015.
Sermanet, Pierre, David Eigen, Xiang Zhang, Micha Argentl Mathieu, Rob Fergus és Yann LeCun. “OverFeat: integrált felismerés, lokalizáció és detektálás konvolúciós hálózatok segítségével” arXiv preprint arXiv: 1312.6229 (2013).