Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Kahor mar kale waa hawsha ogaanshaha walxaha. Mudnaanta waa xawaaraha hawlgalka oo leh saxnaan la aqbali karo. Waxaad qaadataa naqshadda YOLOv3 oo aad sii tababartaa. Saxnimada (mAp75) ayaa ka weyn 0.95. Laakiin heerka orodku wali wuu hooseeyaa. Nacas

Maanta waxaan dhaafi doonaa tirooyinka. Oo goynta hoosteeda ayaanu eegi doonaa Model Gumeysiga - jarista qaybo badan oo ka mid ah shabakada si loo dedejiyo Inference iyada oo aan la lumin saxnaanta. Way caddahay meesha, inta iyo sida loo gooyo. Aynu ogaano sida tan gacanta lagu sameeyo iyo meesha aad si otomaatig ah uga samayn karto. Dhamaadka waxaa jira meel kayd ah oo keras ah.

Horudhac

Goobtaydii hore ee shaqada, Macroscop ee Perm, waxaan ka helay hal caado - inaan had iyo jeer la socdo waqtiga fulinta algorithms. Oo had iyo jeer hubi wakhtiga shaqada ee shabakada adoo isticmaalaya filter ku filan. Sida caadiga ah-farshaxanka-farshaxanka ee wax-soo-saarka ma dhaafo shaandhadan, taas oo ii horseeday Manjo.

Goyntu waa mawduuc hore oo lagaga hadlay Casharrada Stanford sanadka 2017. Fikradda ugu weyn waa in la yareeyo xajmiga shabakadda la tababaray iyada oo aan lumin saxnaanta iyada oo laga saarayo noodhadhka kala duwan. Way fiican tahay, laakiin marar dhif ah ma maqlo isticmaalkeeda. Malaha, ma jiraan wax-qabadyo ku filan, ma jiraan maqaallo ku hadla luqadda Ruushka, ama si fudud qof kastaa wuxuu u arkaa inuu yahay aqoon-is-gaarsiinta oo uu iska aamuso.
Laakin aan kala saarno

Milicsi bayoolaji

Waan jeclahay marka Barashada Qoto dheer ay eegto fikradaha ka yimid bayoolaji. Iyaga, sida kobcinta, waa la aamini karaa (ma ogtahay in ReLU uu aad ugu eg yahay shaqada firfircoonida neuron ee maskaxda?)

Habka Goynta Model sidoo kale wuxuu u dhow yahay bayoolaji. Jawaabta shabakada halkan waxaa lagu barbar dhigi karaa caagagga maskaxda. Waxa buugga ku jira dhawr tusaale oo xiiso leh. Norman Doidge:

  1. Maskaxda haweeneyda ku dhalatay kala bar kaliya ayaa dib isu habeysay si ay u qabato howlihii qeybta maqan.
  2. 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 dayeyno inaan ku celino)

Sidoo kale, waxaad ka gooyn kartaa qaar ka mid ah iskudhacyada daciifka ah moodelkaaga. Habka ugu dambeeya, xidhmooyinka soo hadhay ayaa kaa caawin doona beddelka kuwa la gooyay.

Ma jeceshahay Waxbarashada Gudbinta mise waxaad wax ka barataa meel eber ah?

Ikhtiyaarka koowaad. Waxaad ku isticmaashaa Waxbarashada Wareejinta Yolov3. Retina, Mask-RCNN ama U-Net. Laakiin inta badan uma baahnid inaan aqoonsano 80 nooc oo shayga ah sida COCO. Dhaqankayga, wax walba waxay ku kooban yihiin fasallada 1-2. Waxaa laga yaabaa in loo qaato in dhismaha 80ka fasal uu halkan ku yar yahay. Tani waxay soo jeedinaysaa in qaab dhismeedka loo baahan yahay in la yareeyo. Intaa waxaa dheer, waxaan jeclaan lahaa inaan tan sameeyo aniga oo aan lumin miisaankii hore loo tababaray.

Ikhtiyaarka nambarka labaad. Waxaa laga yaabaa inaad haysatid xog badan iyo agab xisaabeed, ama aad u baahan tahay qaab-dhismeed heer sare ah. Dhib malahan. Laakin waxa aad ka baranaysaa shabakada meel eber. Habka caadiga ah waa in la eego qaab dhismeedka xogta, dooro qaab dhismeedka awooda badan, iyo riixida ka-tagidda dib-u-tababarka. Waxaan arkay 0.6 arday ka baxay, Karl.

Labada xaaladoodba, shabakada waa la dhimi karaa. Dhiiri galin Haddaba aynu tagno nooca gudniinku yahay

Algorithmamka guud

Waxaan go'aansanay inaan ka saari karno xirmooyinka. Waxay u egtahay mid fudud:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Ka saarista isfaham kasta waxay culays ku haysaa shabakada, taas oo inta badan keenta in waxoogaa khalad ah kordho. Dhanka kale, kororka khaladku waa tilmaame tilmaamaya sida saxda ah ee aan meesha uga saarno jahwareerka (tusaale, kororka weyn wuxuu muujinayaa inaan sameyneyno wax khaldan). Laakin kororka yar waa mid la aqbali karo waxaana inta badan lagu baabi'iyaa tabobar dheeraad ah oo iftiin leh oo leh LR yar. Ku dar tallaabo tababar oo dheeri ah:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Hadda waxaan u baahannahay inaan ogaano goorta aan rabno inaan joojino Barashadayada<-> Loop-gaynta. Waxaa laga yaabaa in ay jiraan doorashooyin qalaad halkan marka aan u baahanahay in aan hoos u dhigno shabakada xajmi iyo xawli gaar ah (tusaale, qalabka mobaylada). Si kastaba ha ahaatee, doorashada ugu caansan waa in la sii wado wareegga ilaa uu khaladku ka sarreeyo mid la aqbali karo. Shuruud ku dar:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Markaa, algorithm waxay noqotaa mid cad. Way hadhsan tahay in la ogaado sida loo go'aamiyo kacdoonnada la tirtiray.

Raadi baakadaha la tirtiray

Waxaan u baahanahay inaan meesha ka saarno khilaafyada qaar. Hore u degdega iyo "toogashada" qof kasta waa fikrad xun, in kasta oo ay shaqayn doonto. Laakin maadaama aad madax leedahay, waad fakari kartaa oo aad isku daydaa inaad doorato iskudhafyada "daciif" ee saarista. Waxaa jira dhowr doorasho:

  1. Ugu yar L1-cabbirka ama ugu hooseeya_magnitude_pruning. Fikradda isku dhafan ee leh miisaan yar ayaa wax yar ka geysanaysa go'aanka kama dambaysta ah
  2. Cabbirka L1-yar ee ugu yar iyadoo la tixgalinayo celceliska iyo weecanka caadiga ah. Waxaan ku kordhineynaa qiimeynta nooca qeybinta.
  3. Indho-shareerka iyo ka-reebista kuwa ugu yar ee saameeya saxnaanta kama dambaysta ah. Go'aan ka sii sax ah ee is-garabyada aan muhiimka ahayn, laakiin waqti badan qaata oo kheyraad qaata.
  4. Kuwa kale

Mid kasta oo ka mid ah xulashooyinka ayaa xaq u leh nolol iyo astaamo u gaar ah oo lagu fuliyo. Halkan waxaan ku tixgelinaynaa ikhtiyaarka leh cabbirka ugu yar ee L1

Habka gacanta ee YOLOv3

Dhismaha asalka ah wuxuu ka kooban yahay baloogyo haraaga ah. Laakiin si kasta oo ay ugu qabowsadaan shabakadaha qoto dheer, waxay naga hor istaagi doonaan xoogaa. Dhibtu waxay tahay inaadan tirtiri karin dib-u-heshiisiinta tusmooyin kala duwan oo lakabyadan ah:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Sidaa darteed, aan dooranno lakabyo aan si xor ah uga tirtiri karno dib-u-heshiisiinta:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Hadda aynu dhisno wareeg shaqo:

  1. Soo dejinta hawlgelinta
  2. Ogaanshaha inta la jarayo
  3. Ka jar
  4. Barashada 10ka xilli ee LR=1e-4
  5. Tijaabinaya

Soo dejintu waxay faa'iido u leedahay in la qiyaaso inta qayb ee aan ka saari karno tallaabo gaar ah. Tusaalooyinka soo dejinta:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Waxaan aragnaa in ku dhawaad ​​meel kasta 5% ka mid ah iskudhacyadu ay leeyihiin L1-caado aad u hooseeya oo aan ka saari karno. Tallaabo kasta, dejintu waa soo noqnoqonaysay waxaana la qiimeeyay lakabyada iyo inta la goyn karo.

Geedi socodka oo dhan waxa lagu dhameeyay 4 tilaabo (lambarada halkan iyo meel kasta ee RTX 2060 Super):

Talaabada mAp75 Tirada halbeegyada, milyan Cabbirka shabakadda, mb Laga soo bilaabo bilowgii, % 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 lakabyada leh 400+ iskudhacyo
4 0.9555 31 124 51 146 10% ee lakabyada leh 100+ iskudhacyo

Mid ka mid ah saameyn togan ayaa lagu daray tallaabada 2 - cabbirka dufcadda 4 ayaa ku habboon xusuusta, taas oo si weyn u dardargelisay habka tababarka dheeraadka ah.
Tallaabada 4, habka waa la joojiyay sababtoo ah xitaa tababbarka dheeraadka ah ee muddada-dheer ma kor u qaadin mAp75 ilaa qiyamkii hore.
Natiijo ahaan, waxaan ku guuleysannay inaan soo dedejino soo-jeedinta 15%, ku dhimo xajmiga by 35% oo aan si sax ah u lumin.

Automation ee naqshadaha fudud

Qaab dhismeedka shabakadaha fudud (iyada oo aan shuruudi lagu darin, isku xidhka iyo baloogyada haraaga ah), aad ayay suurtogal u tahay in diiradda la saaro habaynta dhammaan lakabyada is-daba-joogga ah oo otomaatig looga dhigo habka loo jarayo is-garabyada.

Waxaan hirgaliyay doorashadan halkan.
Way fududahay: kaliya waxaad u baahan tahay shaqo lumis, wax-soo-saare iyo dufcaddii koronto-dhaliyaha:

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, xaddidaad ku salaysan weecanka caadiga ah ayaa la hirgeliyay. Hadafka ayaa ah in la xaddido qaybta meesha laga saaray, marka laga reebo is-afgaranwaayada leh "ku filan" cabbirrada L1:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Markaa, waxaanu kuu ogolaanaynaa inaad ka saartid kaliya iskudhafan daciif ah qaybin la mid ah kan saxda ah oo aanad saamayn ku yeelan ka saarida qaybinta la midka ah tan bidix:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Marka qaybintu u soo dhawaato caadi, pruning_standart_deviation_part coefficient coefficient waxaa laga dooran karaa:

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin
Waxaan ku talinayaa in la qiyaaso 2 sigma. Ama waad iska indhatiri kartaa sifadan, adigoo ka tagaya qiimaha <1.0.

Soosaarku waa garaafka cabbirka shabakadda, lumitaanka, iyo wakhtiga shaqada ee isku xidhka dhammaan imtixaanada, oo laga dhigay 1.0. Tusaale ahaan, halkan cabbirka shabakadu waa la dhimay ku dhawaad ​​2 jeer iyada oo aan la lumin tayada (shabakad yar oo kacaan ah oo miisaankeedu yahay 100k):

Farsamada Jedi ee lagu dhimayo shabakadaha convolutional - manjooyin

Xawaaraha orodku waxa uu ku xidhan yahay isbedbedel caadi ah waxana uu ahaanayaa mid aan isbedelin. Waxaa jira sharraxaad tan:

  1. Tirada convolutions waxay ka beddeshaa ku habboon (32, 64, 128) ilaa aan ugu habboonayn kaararka fiidiyowga - 27, 51, iwm. Waan ku khaldami karaa halkan, laakiin waxay u badan tahay inay saameyn ku yeelato.
  2. Dhismuhu maaha mid ballaadhan, laakiin waa mid joogto ah. Adigoo yareynaya ballaca, ma saameyneyno qoto dheer. Sidaa darteed, waxaan yareynaa culeyska, laakiin ma beddeleyno xawaaraha.

Sidaa darteed, hagaajinta ayaa lagu muujiyay hoos u dhigista culeyska CUDA inta lagu jiro socodka 20-30%, laakiin ma aha dhimista wakhtiga orodka.

Natiijooyinka

Aan milicsano. Waxaan tixgelinay 2 ikhtiyaar oo loogu talagalay manjooyin - YOLOv3 (marka ay tahay inaad gacmahaaga ku shaqeyso) iyo shabakadaha leh naqshado fudud. Waxaa la arki karaa in labada xaaladoodba ay suurtagal tahay in la gaaro dhimista cabbirka shabakadda iyo xawaaraha iyada oo aan lumin saxnaanta. Natiijooyinka:

  • Yaraynta cabbirka
  • Orodka dardargelinta
  • Yaraynta Xamuulka CUDA
  • Natiijo ahaan, saaxiibtinimada deegaanka (We optimize the future use of computing resources) qof ku faraxsan yahay Greta Thunberg)

Lifaaqa

  • Tallaabada manjyada ka dib, waxaad ku dari kartaa qiyaasid (tusaale ahaan, TensorRT)
  • Tensorflow waxay bixisaa awoodaha magnitude_hooseeya. shaqeeya
  • kayd Waxaan rabaa inaan horumaro waana ku farxi doonaa inaan caawiyo

Source: www.habr.com

Add a comment