Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Kei mua i a koe ano te mahi ki te kimi taonga. Ko te kaupapa matua ko te tere o te mahi me te tika e whakaaetia ana. Ka mau koe i te hoahoanga YOLOv3 me te whakangungu ano. He nui ake te tika(mAp75) i te 0.95. Engari he iti tonu te reiti oma. Karekau.

I tenei ra ka karohia te inenga. Na i raro i te tapahi ka titiro tatou Te tapahi tauira — te kuti i nga waahanga taapiri o te whatunga kia tere ake te Inference me te kore e ngaro te tika. E marama ana ki hea, ki te nui me pehea te tapahi. Me whakaaro me pehea te mahi a-ringa me te waahi ka taea e koe te whakaaunoa. I te mutunga he putunga kei runga i te keras.

Whakataki

I taku waahi mahi o mua, Macroscop i Perm, i whiwhi ahau i tetahi tikanga - ki te aro turuki i nga wa mahi o nga algorithms. Me tirohia tonu te wa whakahaere whatunga ma te tātari tika. I te nuinga o te wa karekau te ahua o te toi o te mahi e paahi i tenei tātari, i arahi ahau ki te Tapahi.

Ko te tapahi he kaupapa tawhito i korerohia i roto Ko nga korero a Stanford i te tau 2017. Ko te whakaaro matua ko te whakaiti i te rahi o te whatunga kua whakangungua me te kore e ngaro te tika ma te tango i nga momo momo pona. He ahua hauhautanga, engari kare au e rongo mo tona whakamahinga. Akene, kaore i te nui nga whakatinanatanga, kaore he tuhinga reo-Rusia, ka whakaarohia e te katoa te mohio ki te tapahi me te noho puku.
Engari me wehe ke

He tirohanga ki te koiora

He pai ki ahau ka titiro a Deep Learning ki nga whakaaro ka puta mai i te koiora. Ko ratou, penei i te whanaketanga, ka taea te whakawhirinaki (i mohio koe he tino rite te ReLU ki mahi o te whakahohe neuron i roto i te roro?)

He tata hoki te tukanga Tapahi Tauira ki te koiora. Ko te whakautu a te whatunga i konei ka taea te whakarite ki te kirihou o te roro. He tokorua nga tauira whakamere i roto i te pukapuka. Norman Doidge:

  1. Ko te roro o te wahine i whanau kotahi anake te haurua kua whakahōtaka ano ia ki te mahi i nga mahi o te haurua kua ngaro.
  2. I pupuhihia e te tangata te wahanga o tona roro te kawenga mo te tirohanga. I te roanga o te wa, ka mau etahi atu wahanga o te roro i enei mahi. (Kaore matou e ngana ana ki te whakahoki ano)

Waihoki, ka taea e koe te tapahi i etahi o nga ngoikoretanga ngoikore mai i to tauira. Hei huarahi whakamutunga, ko nga toenga paihere ka awhina i te whakakapi i nga mea kua tapahia.

He pai ki a koe te Whakawhiti Ako, kei te ako koe mai i te wahanga?

Kōwhiringa nama tuatahi. Ka whakamahi koe i te Whakawhiti Ako i runga i te Yolov3. Retina, Mask-RCNN, U-Net ranei. Engari ko te nuinga o nga wa kaore matou e mohio ki nga karaehe ahanoa 80 penei i COCO. I roto i aku mahi, he iti noa nga mea katoa ki nga reanga 1-2. Ka kii pea tetahi ko te hoahoanga mo nga karaehe 80 he nui kei konei. E tohu ana tenei me iti ake te hoahoanga. I tua atu, ka hiahia ahau ki te mahi i tenei me te kore e ngaro nga taumaha kua whakangunguhia.

Kōwhiringa nama tuarua. Akene he maha nga raraunga me nga rauemi rorohiko, me hiahia noa koe ki te hoahoanga tino ritenga. Kaore he mea nui. Engari kei te ako koe i te whatunga mai i te wahanga. Ko te tikanga o mua ko te titiro ki te hanganga raraunga, te kowhiri i tetahi hoahoanga he KAUPAPA KAUPAPA, me te turaki i nga heke mai i te whakangungu. I kite ahau i te 0.6 kua heke, Karl.

I nga wahanga e rua, ka taea te whakaheke i te whatunga. He hihiri. Inaianei me titiro tatou he aha te momo tapahi kotinga

hātepe hātepe whānui

I whakatau matou ka taea e matou te tango i nga paihere. He tino ngawari te ahua:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Ko te tango i tetahi whakapouri he taumaha mo te whatunga, i te nuinga o te waa ka piki ake te hapa. I tetahi taha, ko tenei pikinga o te hapa he tohu mo te tika o te tango i nga convolutions (hei tauira, ko te pikinga nui e tohu ana kei te mahi he tatou). Engari ko te pikinga iti ka tino manakohia, ka whakakorehia e nga whakangungu taapiri marama me te LR iti. Tāpirihia he taahiraa whakangungu taapiri:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Inaianei me whakaaro tatou ki te wa e hiahia ana tatou ki te whakamutu i ta tatou Ako<->Pruning loop. He momo rereke pea kei konei ka hiahia tatou ki te whakaiti i te whatunga ki tetahi rahi me te tere (hei tauira, mo nga taputapu waea). Engari, ko te mea tino noa ko te haere tonu i te huringa tae noa ki te pikinga ake o te hapa i te pai. Tāpiri here:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Na, ka marama te algorithm. Ka noho tonu ki te whakaaro me pehea te whakatau i nga convolutions kua mukua.

Rapua nga paihere kua mukua

Me tango e tatou etahi convolutions. Ko te tere haere me te "pupuhi" tetahi he whakaaro kino, ahakoa ka pai. Engari i te mea he upoko koe, ka taea e koe te whakaaro me te ngana ki te kowhiri i nga kowhiringa "ngoikore" hei tango. He maha nga whiringa:

  1. Te ine-L1 iti rawa, te tapahi_iti ranei. Ko te whakaaro he iti noa te whai waahi o nga whakapouri me nga taumaha iti ki te whakatau whakamutunga
  2. Te ine L1 iti rawa e whai whakaaro ana ki te toharite me te inenga paerewa. Ka taapirihia e matou he aromatawai mo te ahua o te tohatoha.
  3. Ko te huna i nga taapiri me te whakakore i nga mea iti rawa te awe i te tika whakamutunga. Ko te whakatau tika ake mo nga taapiri iti, engari he nui te wa me te whakapau rawa.
  4. Ētahi atu

Ko ia o nga whiringa he tika ki te ora me ona ake waahanga whakatinanatanga. I konei ka whakaarohia e matou te waahanga me te iti-L1-mehua

Te tukanga a-ringa mo YOLOv3

Kei roto i te hoahoanga taketake nga poraka toenga. Engari ahakoa he aha te hauhautanga mo nga hononga hohonu, ka aukati i a maatau. Ko te uaua, kaore e taea e koe te whakakore i nga hohoutanga me nga tohu rereke i enei paparanga:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

No reira, me whiriwhiri nga paparanga ka taea e tatou te whakakore noa i nga hohouhanga:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Inaianei me hanga he huringa mahi:

  1. Tukuake ana i nga whakahohenga
  2. Te whakatau i te nui o te tapahi
  3. Tapahia ki waho
  4. Te ako i nga wa 10 me te LR=1e-4
  5. Whakamatau

Ko te wetewete i nga convolutions he pai ki te whakatau i te nui o te waahanga ka taea e tatou te tango i tetahi taahiraa. Te tango i nga tauira:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Kei te kite matou tata ki nga waahi katoa e 5% o nga taapiri he iti rawa te tikanga L1 ka taea e matou te tango. I ia kaupae, ka tukuruatia tenei wetewete, ka whakatauhia he aha nga paparanga me te maha ka taea te tapahi.

I oti katoa te mahi i roto i nga hikoinga e 4 (nga nama kei konei me nga waahi katoa mo te RTX 2060 Super):

Hipanga mAp75 Te maha o nga tawhā, miriona Rahi whatunga, mb Mai i te timatanga, % Te wa oma, ms Te ahua o te kotinga
0 0.9656 60 241 100 180 -
1 0.9622 55 218 91 175 5% o te katoa
2 0.9625 50 197 83 168 5% o te katoa
3 0.9633 39 155 64 155 15% mo nga paparanga me te 400+ nga whakawhitinga
4 0.9555 31 124 51 146 10% mo nga paparanga me te 100+ nga whakawhitinga

Ko tetahi painga pai i taapirihia ki te taahiraa 2 - te rahi o te puranga 4 ka uru ki roto i te mahara, i tino tere ake te mahi whakangungu.
I te taahiraa 4, ka mutu te mahi na te mea ahakoa whakangungu mo te wa roa kaore i piki te mAp75 ki nga uara tawhito.
Ko te mutunga mai, i kaha taatau ki te tere ake i te whakatau 15 orau, whakaitihia te rahi ma te 35 orau a kaore e tino ngaro.

Aunoatanga mo nga hoahoanga ngawari ake

Mo nga hoahoanga whatunga ngawari ake (kaore he taapiri herenga, te hono me te toenga poraka), ka taea te aro ki te tukatuka i nga paparanga convolutional katoa me te whakaaunoa i te tukanga o te tapahi i nga convolutions.

I whakatinana ahau i tenei whiringa konei.
He maamaa noa: ka hiahia noa koe ki te mahi ngaro, he kaiwhakatikatika me nga kaihanga puranga:

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)

Ki te tika, ka taea e koe te huri i nga tawhā whirihora:

{
    "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
}

I tua atu, ka whakatinanahia he here i runga i te ine paerewa. Ko te whainga ko te whakawhāiti i te waahanga ka tangohia, haunga nga whakahiatotanga me nga mehua L1 kua "rawa":

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

No reira, ka whakaae matou ki a koe ki te tango i nga putunga ngoikore noa mai i nga tohatoha e rite ana ki te taha matau, kaua e pa ki te tango i nga tohatoha rite ki te taha maui:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Ina tata te tohatoha, ka taea te kowhiri i te waahanga tapahi_paerewa_wehe_waahanga mai i:

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi
Ka tūtohu ahau he whakaaro mo te 2 sigma. Ka taea ranei e koe te wareware i tenei ahuatanga, ka waiho te uara <1.0.

Ko te putanga he kauwhata o te rahi o te whatunga, te ngaronga, me te wa whakahaere whatunga mo te katoa o te whakamatautau, kua whakaritea ki te 1.0. Hei tauira, i konei i whakaitihia te rahi o te whatunga tata ki te 2 nga wa kaore i ngaro te kounga (whatunga honohono iti me te 100k taumaha):

Tikanga Jedi mo te whakaiti i nga whatunga convolutional - tapahi

Ko te tere oma kei raro i nga rereke rereke ka noho tonu karekau e rereke. He whakamaramatanga mo tenei:

  1. Ko te maha o nga huringa ka huri mai i te watea (32, 64, 128) ki te kore e tino watea mo nga kaari ataata - 27, 51, etc. Kei te he ahau i konei, engari tera pea ka whai paanga.
  2. Ko te hoahoanga ehara i te whanui, engari he rite tonu. Ma te whakaiti i te whanui, kaore matou e pa ki te hohonu. Na, ka whakaitihia e matou te kawenga, engari kaua e whakarereke i te tere.

Na reira, i whakaatuhia te whakapai ake i roto i te whakahekenga o te kawenga CUDA i te wa e oma ana e 20-30%, engari kaore i te whakaheke i te wa oma.

Ngā putanga

Kia whai whakaaro tatou. E rua nga whiringa mo te tapahi - mo te YOLOv2 (ka mahi koe me o ringaringa) me nga whatunga me nga hoahoanga ngawari ake. Ka kitea i roto i nga take e rua ka taea te whakatutuki i te whakaiti rahi o te whatunga me te tere tere me te kore e ngaro te tika. Hua:

  • Te whakaiti i te rahi
  • Te oma whakatere
  • Te whakaiti i te Uta CUDA
  • Ko te mutunga mai, ko te pai o te taiao (We optimize the future use of computing resources. Somewhere one is happy Greta Thunberg)

Tāpiritanga

  • I muri i te tapahi, ka taea e koe te taapiri i te ine (hei tauira, me TensorRT)
  • Ka whakaratohia e Tensorflow nga kaha mo iti_magnitude_pruning. Mahi.
  • putunga Kei te pirangi au ki te whakawhanake ka koa ahau ki te awhina

Source: will.com

Tāpiri i te kōrero