4.
Rețele neuronale profunde în vederea artificială
4.1 Detectarea obiectelor folosind rețele neuronale profunde
Metodele de ultimă generație pentru detectarea obiectelor se bazează pe rețele neuronale
convoluționale.
Având în vedere fluxul de detectare a obiectelor, metodele bazate pe învățare profundă pot fi
împărțite în două clase principale: metode în două etape și metode cu o singură etapă.
Fiind dată o imagine de intrare, metodele din două etape generează în primul rând propuneri de
obiecte posibile și apoi clasifică aceste propuneri în categorii specifice. Reprezentative pentru
această clasă de metode sunt R-CNN, Fast R-CNN și Faster R-CNN.
R-CNN (Girshick et al., 2014)
Fast R-CNN (Girshick, 2015)
Faster R-CNN (Ren et al., 2015)
Metodele dintr-o singură etapă extrag și clasifică simultan toate propunerile de obiecte.
Reprezentative pentru această clasă de metode sunt YOLO, SSD și RetinaNet.
În general, metodele în două etape au o viteză de detectare relativ mai mică și o acuratețe de
detectare mai mare, în timp ce metodele cu o singură etapă au o viteză de detectare mai mare și
o acuratețe de detectare comparabilă.
YOLO (You Only Look Once)
YOLOv1 (Redmon et al., 2016) este cea mai simplă arhitectură de detectare a obiectelor.
Rețeaua are 24 de straturi convoluționale urmate de 2 straturi complet conectate.
Preantrenarea straturilor convoluționale se face pe sarcina de clasificare ImageNet la jumătate
din rezoluție (imaginea de intrare fiind de 224×224) și apoi se dublează rezoluția pentru
detectarea obiectelor.
Pentru preantrenare, se folosesc primele 20 de straturi convoluționale, urmate de un strat de tip
average-pooling și un strat complet conectat.
Rețeaua a fost antrenată timp de aproximativ o săptămână și s-a obținut o acuratețe top 5 de
88% pe setul de validare ImageNet 2012, comparabilă cu modelele GoogLeNet din Caffe’s
Model Zoo.
Apoi se convertește modelul pentru a efectua detectarea obiectelor. Sunt adăugate patru straturi
convoluționale și două straturi complet conectate cu ponderi inițializate aleatoriu.
Detectarea obiectelor necesită adesea informații vizuale cu o granulație fină, astfel încât este
crescută rezoluția de intrare a rețelei de la 224×224 la 448×448.
Este folosită o funcție de activare liniară pentru ultimul strat, iar toate celelalte straturi folosesc
funcția de activare leaky ReLU cu = 0,1 .
Rețeaua este antrenată timp de aproximativ 135 de epoci pe seturile de date de antrenare și
validare din PASCAL VOC 2007 și 2012.
Pe parcursul antrenării, se folosește o dimensiune a loturilor de 64, un moment de 0,9 și un
decay de 0,0005.
Pentru primele epoci rata de învățare crește încet de la 10–3 la 10–2. Se continuă antrenarea cu
10–2 timp de 75 de epoci, apoi 10–3 timp de 30 de epoci și, în final, 10–4 timp de 30 de epoci.
Pentru a evita supraînvățarea, se folosește tehnica dropout cu o rată = 0,5 după primul strat
conectat și augmentarea extinsă a datelor.
Pentru augmentarea datelor, se introduc redimensionări și translații aleatorii de până la 20% din
dimensiunea imaginii originale. De asemenea, se ajustează aleatoriu expunerea și saturația
imaginii cu un factor de până la 1,5 în spațiul de culoare HSV.
Avantaje:
– În primul rând, YOLO este extrem de rapid.
– În al doilea rând, YOLO consideră imaginea în ansamblu atunci când face predicții.
Spre deosebire de tehnicile bazate pe ferestre glisante și pe propuneri de regiuni, YOLO
vede întreaga imagine în timpul antrenării și testării, astfel încât codifică implicit
informații contextuale despre clase, precum și aspectul acestora.
Fast R-CNN confundă zonele de fundal dintr-o imagine cu obiectele deoarece nu poate
vedea contextul mai larg. YOLO face mai puțin de jumătate din numărul de erori de
fundal comparativ cu Fast R-CNN.
– În al treilea rând, YOLO învață reprezentări general valabile ale obiectelor.
Atunci când este antrenat pe imagini naturale și testat pe lucrări de artă, YOLO
depășește cu mult metodele de detecție de top precum DPM și R-CNN.