
Waxaad mar kale hor taagan tahay hawsha ogaanshaha shayga. Muhiimadu waa xawaare leh saxnaan la aqbali karo. Waxaad qaadataa naqshadda YOLOv3 oo dib u tababar. Saxnaanta (mAp75) ayaa ka weyn 0.95. Laakiin wakhtiga runtu wali wuu hooseeyaa. Nacalad.
Maanta waxaan ka boodi doonaa tirooyinka. Laakiin hoos ayaan eegi doonaa Goynta moodada - jarista qaybo badan oo ka mid ah shabakada si loo dedejiyo fikradda iyada oo aan la lumin saxnaanta. Tani waxay si cad u muujineysaa meesha, inta, iyo sida loo gooyo. Waxaan eegi doonaa sida tan gacanta lagu sameeyo iyo halka ay si toos ah uga dhici karto. Kaydka Keras ayaa diyaar ah dhamaadka.
Horudhac
Shaqadaydii hore, Macroscop ee Perm, waxaan yeeshay caado: had iyo jeer la socoshada wakhtiyada fulinta algorithm. Wakhtiyada shaqo ee shabakada had iyo jeer waxaa lagu hubiyaa filter ku filan. Xogta casriga ah ee wax soo saarku caadi ahaan ma dhaafto shaandhadan, taas oo ah waxa igu horseeday manjooyin.
Goyntu waa mawduuc hore oo lagaga hadlay sanadka 2017. Fikradda aasaasiga ah waa in la yareeyo xajmiga shabakad tababaran iyada oo aan lumin saxnaanta iyada oo laga saarayo noodhadhka kala duwan. Way fiican tahay, laakiin marar dhif ah ma maqlo isticmaalkeeda. Waxaa laga yaabaa in aysan jirin wax-qabadyo ku filan, ma jiraan wax maqaallo ah oo ku hadla luqadda Ruushka, ama qof kastaa wuxuu si fudud u tixgelinayaa in la gooyo sida aqoonta oo uu iska aamuso.
Laakiin way adag tahay in la ogaado.
Eeg bayoolaji
Waan jeclahay marka fikradaha bayoolajiga ay soo galaan Barashada qoto dheer. Iyaga, sida kobcinta, waa la aamini karaa (ma ogtahay in ReLU uu aad ugu eg yahay ?)
Habka manjooyinku wuxuu kaloo ku dhow yahay bayoolaji. Jawaabta shabakada halkan waxaa lagu barbar dhigi karaa caagagga maskaxda. Buuggu waxa uu ka kooban yahay dhawr tusaale oo xiiso leh. :
- Maskaxda haweeneyda ku dhalatay kala bar kaliya ayaa dib isu habeysay si ay u qabato howlaha qeybta maqan.
- Wiilku waxa uu toogtay qayb ka mid ah maskaxdiisa oo ka masuul ah aragga. Muddo ka dib, qaybaha kale ee maskaxda ayaa la wareegay hawlahan. (Ma isku dayi doono inaan ku celino tan.)
Sidoo kale, waxaad ka gooyn kartaa qaar ka mid ah xirmooyinka daciifka ah moodelkaaga. Qajaar, xidhmooyinka soo hadhay ayaa loo isticmaali karaa in lagu beddelo kuwa la jaray.
Ma jeceshahay Waxbarashada Gudbinta mise waxaad wax ka barataa meel eber ah?
Ikhtiyaarka koowaad. Waxaad ku isticmalaysaa Waxbarashada Wareejinta Yolov3, Retina, Mask-RCNN, ama U-Net. Laakiin inta badan, uma baahnid inaan aqoonsanno 80 qaybood oo shayga ah, sida COCO. Waayo-aragnimadayda, waxay ku kooban tahay 1-2 fasal. Waxa laga yaabaa in ay noqoto mid la yaab leh in loo qaato in naqshadaynta fasallada 80 ay tahay mid xad-dhaaf ah. Waxay soo jeedinaysaa in qaab-dhismeedka loo baahan yahay in la dhimo. Intaa waxaa dheer, waxaan jeclaan lahayn inaan samayno tan annagoo luminayn miisaankii hore loo tababaray.
Ikhtiyaarka nambarka labaad. Waxaa laga yaabaa inaad haysatid xog badan iyo agab xisaabeed, ama waxaad u baahan tahay qaab-dhismeed heer sare ah. Dhib malaha. Laakin waxa aad ka tababbartay shabakada meel eber. Habka caadiga ah waa in la eego qaab dhismeedka xogta, dooro qaab-dhismeed AAD u xoog badan, iyo riixida ka-tagidda si looga hortago in si xad dhaaf ah loo rakibo. Waxaan arkay 0.6 arday ka baxday, Karl.
Labada xaaladoodba, shabakada waa la dhimi karaa. Waad i dhiirigelisay. Hadda aynu ogaano waxa ay tahay manjooyinku.
Algorithmamka guud
Waxaan go'aansanay inaan ka saarno laalaabka. Waxay u egtahay mid fudud:

Ka saarista isfaham kasta waxay culays saartaa shabakada, taas oo inta badan keenta khaladaad koror. Dhinaca kale, kororka qaladkan ayaa tilmaame u ah sida wanaagsan ee aan meesha uga saarayno isqabqabsiga (tusaale, kororka weyn wuxuu muujinayaa inaan wax qaldan sameyneyno). Si kastaba ha ahaatee, kororka qaladka yar ayaa ah mid si fiican loo aqbali karo waxaana badanaa lagu sixi karaa dib u habeynta iftiinka xiga oo leh LR yar. Aan ku darno tillaabo dib u tababarid:

Hadda waxaan u baahannahay inaan ogaano goorta aan rabno inaan joojino Barashadayada<-> Loop-gaynta. Waxaa laga yaabaa inay jiraan xaalado aan caadi ahayn halkan, sida marka aan u baahanahay inaan hoos u dhigno shabakada hoos u dhig cabbir gaar ah iyo socodsiinta heerka (tusaale, aaladaha mobilada). Si kastaba ha ahaatee, dhacdada ugu caansan waa in la sii wado wareegga ilaa uu khaladku ka sarreeyo qiimaha la aqbali karo. Aan ku darno shardiga:

Markaa, algorithm waa caddahay. Hadda aynu isla garano sida loo go'aamiyo isku-dhacyada meesha laga saarayo.
Raadi laalaabyada la tirtiri karo
Waxaan u baahanahay inaan tirtirno xirmooyinka qaar. Ku degdegida iyo "toogashada" mid walba waa fikrad xun, inkastoo ay shaqeyn doonto. Laakiin haddii aad leedahay xoogaa maskaxeed, waad ka fakari kartaa oo isku day inaad aqoonsato xirmooyinka "daciifka ah" ee tirtirka. Waxaa jira dhowr doorasho:
- Fikradda ka soo horjeeda qiyamka miisaanka yar ayaa wax yar ka geysanaya go'aanka kama dambaysta ah
- Dhibcaha ugu yar ee L1 ayaa la siiyay celceliska iyo leexashada heerka. Lagu kabay qiyaasta nooca qaybinta.
- Ogaanshaha saxda ah ee laalaabyada aan muhiimka ahayn, laakiin waqti badan iyo kheyraad badan qaata.
- Kuwa kale
Ikhtiyaar kastaa wuxuu leeyahay dhaqangalkiisa iyo tixgelintiisa fulinta. Halkan, waxaan tixgelin doonaa ikhtiyaarka leh dhibcaha ugu hooseeya L1.
Habka gacanta ee YOLOv3
Dhismaha asalka ah wuxuu ka kooban yahay baloogyo haraaga ah. Laakiin sida ay ugu fiican yihiin shabakadaha qoto dheer, waxay yihiin xoogaa caqabad ah. Dhibtu waa inaanaan ka saari karin isbarbardhigga tusmooyinka kala duwan ee lakabyadan:

Sidaa darteed, aan dooranno lakabyada aan si xor ah uga saari karno dib-u-heshiisiinta:

Hadda aynu dhisno wareeg shaqo:
- Dejinta hawlgelinta
- Aynu ogaano inta la jarayo
- Waanu gooyay
- Waxaan baraneynaa 10 xilli oo LR=1e-4 ah
- Tijaabinaya
Soo dejinta laalaabka ayaa faa'iido u leh qiimeynta inta laga saari karo tallaabo go'an. Tusaalooyinka dejinta:

Waxaan aragnaa in ku dhawaad meel kasta, 5% ka mid ah convolutions ay leeyihiin heerka L1 aad u hooseeya, oo aan ka saari karnaa. Tallaabo kasta, dejintu waa soo noqnoqonaysay, waxaana la qiimeeyay lakabyada iyo inta la saarayo.
Geedi socodka oo dhami wuxuu qaatay afar tillaabo (lambarada halkan iyo meel kasta oo kale waxaa loogu talagalay RTX 2060 Super):
| Talaabada | mAp75 | Tirada halbeegyada, milyan | Cabbirka shabakadda, MB | Laga soo bilaabo asalka, % | Waqtiga orodka, ms | Xaaladda gudniinka |
|---|---|---|---|---|---|---|
| 0 | 0.9656 | 60 | 241 | 100 | 180 | - |
| 1 | 0.9622 | 55 | 218 | 91 | 175 | 5% dhammaan |
| 2 | 0.9625 | 50 | 197 | 83 | 168 | 5% dhammaan |
| 3 | 0.9633 | 39 | 155 | 64 | 155 | 15% ee lakabyo leh 400+ iskudhacyo ah |
| 4 | 0.9555 | 31 | 124 | 51 | 146 | 10% ee lakabyo leh 100+ iskudhacyo ah |
Tallaabada 2 waxay ku dartay hal saamayn togan: cabbirka dufcadda 4 waxay ku habboon tahay xusuusta, taas oo si weyn u dardargelisay habka dib-u-tabinta.
Tallaabada 4, habka waa la joojiyay, maadaama xitaa tababarka dheeraadka ah ee muddada-dheer uusan kor u qaadin mAp75 qiyamkii hore.
Sidaa darteed, waxaan ku guuleysanay inaan dardargelino faragelinta 15%, ku dhimo cabbirka 35% oo aan lumin saxnaanta.
Automation ee naqshadaha fudud
Qaab dhismeedka shabakadaha fudud (iyada oo aan shuruudi lagu darin, isku xidhka, iyo baloogyada haraaga ah), aad bay suurtogal u tahay in diiradda la saaro habaynta dhammaan lakabyada is-daba-joogga ah oo otomaatig looga dhigo geeddi-socodkii jarista is-farin-mareennada.
Waxaan hirgaliyay doorashadan. .
Way fududahay: waxa kaliya ee aad u baahan tahay waa shaqo lumis, wax-soo-saare, iyo koronto-dhaliyeyaal:
import pruning
from keras.optimizers import Adam
from keras.utils import Sequence
train_batch_generator = BatchGenerator...
score_batch_generator = BatchGenerator...
opt = Adam(lr=1e-4)
pruner = pruning.Pruner("config.json", "categorical_crossentropy", opt)
pruner.prune(train_batch, valid_batch)Haddii loo baahdo, waxaad bedeli kartaa xuduudaha qaabaynta:
{
"input_model_path": "model.h5",
"output_model_path": "model_pruned.h5",
"finetuning_epochs": 10, # the number of epochs for train between pruning steps
"stop_loss": 0.1, # loss for stopping process
"pruning_percent_step": 0.05, # part of convs for delete on every pruning step
"pruning_standart_deviation_part": 0.2 # shift for limit pruning part
}Intaa waxaa dheer, xannibaad ku salaysan weecsanaanta caadiga ah ayaa la hirgeliyay. Hadafku waa in la xaddido qaybta xogta la saarayo, marka laga reebo ismaandhaafka leh "ku filan" cabirrada L1 mar hore:

Sidan, waxaan kaliya ka saareynaa isku-dhafka daciifka ah ee qaybinta la mid ah tan saxda ah mana saameynayso ka saarista qaybinta la mid ah tan bidix:

Marka qaybintu ku soo dhawaato caadinimada, isku xidhka pruning_standard_deviation_part ayaa laga dooran karaa:

Waxaan ku talinayaa 2 sigma dulqaad. Haddii kale, waad iska indho tiri kartaa sifadan oo aad ka tagi kartaa qiimaha <1.0.
Wax soo saarku waa garaafka cabbirka shabakadda, luminta, iyo wakhtiga shaqada ee shabakadda ee dhammaan imtixaanada, oo laga dhigay 1.0. Tusaale ahaan, halkan cabbirka shabakadu waxa la dhimay ku dhawaad 2 qodob iyada oo aan wax tayo ah lumin (shabakad yar oo kacaan ah oo miisaankeedu yahay 100):

Xawaaraha orodku waxa uu ku xidhan yahay isbedbedel caadi ah oo waxa uu ahaa mid aan waxba iska bedelin. Waxaa jirta sharraxaad tan:
- Tirada convolutions waxay ka beddeshaa mid ku habboon (32, 64, 128) kuwa aan ku habboonayn kaararka fiidiyowga - 27, 51, iwm. Waan ku khaldami karaa halkan, laakiin waxay u badan tahay in tani ay saameyn ku leedahay.
- Dhismuhu maaha mid ballaadhan, laakiin waa mid joogto ah. Adigoo yareynaya ballaca, waxaan ka tagnaa qoto dheer oo qumman. Tani waxay yaraynaysaa culeyska iyada oo aan saameyn ku yeelan xawaaraha.
Sidaa darteed, hagaajintu waxay keentay hoos u dhac 20-30% ah CUDA culeyska inta lagu jiro orodka, laakiin maaha hoos u dhaca wakhtiga orodka.
Natiijooyinka
Aan milicsano. Waxaan tixgelinay laba doorasho oo manjooyin ah: mid loogu talagalay YOLOv3 (kaas oo u baahan hab-samaynta gacanta) iyo mid loogu talagalay shabakadaha leh naqshado fudud. Way caddahay in labada xaaladoodba, cabbirka shabakadu la dhimi karo lana dedejin karo iyada oo aan la hurin saxnaanta. Natiijooyinka:
- Yaraynta cabbirka
- Orodka dardargelinta
- Yaraynta culeyska CUDA
- Natiijo ahaan, saaxiibtinimo deegaanka (Waxaan hagaajineynaa isticmaalka mustaqbalka ee ilaha xisaabinta. Meel uu qofku ku faraxsan yahay )
Lifaaqa
- Tallaabada manjyada ka dib, waxaad sidoo kale hagaajin kartaa qiyaasidda (tusaale ahaan, TensorRT)
- Tensorflow waxay bixisaa awoodaha . shaqeeya
- Waxaan rabaa inaan horumar sameeyo waana ku faraxsanahay inaan helo caawimaad
Source: www.habr.com
