ÄŖss apraksts par dažÄm tÄ«kla arhitektÅ«rÄm objektu noteikÅ”anai attÄlos un attÄlu segmentÄÅ”anai ar man saprotamÄkajÄm saitÄm uz resursiem. Centos izvÄlÄties video skaidrojumus un vÄlams krievu valodÄ.
OtrÄ daļa ir mÄÄ£inÄjums izprast neironu tÄ«klu arhitektÅ«ru attÄ«stÄ«bas virzienu. Un uz tÄm balstÄ«tas tehnoloÄ£ijas.
1. attÄls. Neironu tÄ«klu arhitektÅ«ras izpratne nav vienkÄrÅ”a
Viss sÄkÄs, izveidojot divas demonstrÄcijas lietojumprogrammas objektu klasifikÄcijai un noteikÅ”anai Android tÄlrunÄ«:
AizmugurÄjÄs versijas demonstrÄcija, kad dati tiek apstrÄdÄti serverÄ« un pÄrsÅ«tÄ«ti uz tÄlruni. TrÄ«s veidu lÄÄu attÄlu klasifikÄcija: brÅ«ns, melns un rotaļu.
PriekÅ”gala demonstrÄcijakad dati tiek apstrÄdÄti paÅ”Ä tÄlrunÄ«. TrÄ«s veidu objektu noteikÅ”ana (objektu noteikÅ”ana): lazdu rieksti, vÄ«Ä£es un datumi.
Ir atŔķirÄ«ba starp attÄlu klasifikÄcijas, objektu noteikÅ”anas uzdevumiem attÄlÄ un attÄla segmentÄcija. TÄpÄc radÄs nepiecieÅ”amÄ«ba noskaidrot, kuras neironu tÄ«klu arhitektÅ«ras uztver attÄlos esoÅ”os objektus un kuras var tos segmentÄt. Es atradu Å”Ädus arhitektÅ«ru piemÄrus ar man saprotamÄkajÄm saitÄm uz resursiem:
ArhitektÅ«ras sÄrija, kuras pamatÄ ir R-CNN (RreÄ£ioni ar Convolution NeurÄls NtÄ«klu funkcijas): R-CNN, Fast R-CNN, ÄtrÄks R-CNN, Maska R-CNN. Lai attÄlÄ noteiktu objektu, ierobežojoÅ”Äs kastes tiek pieŔķirtas, izmantojot reÄ£iona ierosinÄjumu tÄ«kla (RPN) mehÄnismu. SÄkotnÄji RPN vietÄ tika izmantots lÄnÄks selektÄ«vÄs meklÄÅ”anas mehÄnisms. PÄc tam atlasÄ«tie ierobežotie reÄ£ioni klasifikÄcijai tiek ievadÄ«ti parastÄ neironu tÄ«kla ieejÄ. R-CNN arhitektÅ«rai ir nepÄrprotamas āforā cilpas ierobežotos reÄ£ionos, kopÄ lÄ«dz 2000 darbiem caur AlexNet iekÅ”Äjo tÄ«klu. Skaidras āforā cilpas palÄnina attÄlu apstrÄdes Ätrumu. Izteikto cilpu skaits, kas iet caur iekÅ”Äjo neironu tÄ«klu, samazinÄs ar katru jauno arhitektÅ«ras versiju, un tiek veiktas arÄ« desmitiem citu izmaiÅu, lai palielinÄtu Ätrumu un aizstÄtu objektu noteikÅ”anas uzdevumu ar objektu segmentÄÅ”anu maskÄ R-CNN.
Yolo (You Only LarÄ« Once) ir pirmais neironu tÄ«kls, kas mobilajÄs ierÄ«cÄs reÄllaikÄ atpazina objektus. AtŔķirÄ«ga iezÄ«me: objektu atŔķirÅ”ana vienÄ piegÄjienÄ (tikai paskatieties vienreiz). Tas ir, YOLO arhitektÅ«rÄ nav skaidru āforā cilpu, tÄpÄc tÄ«kls darbojas Ätri. PiemÄram, Ŕī lÄ«dzÄ«ba: NumPy, veicot darbÄ«bas ar matricÄm, nav arÄ« izteiktu āforā cilpu, kuras NumPy tiek realizÄtas zemÄkos arhitektÅ«ras lÄ«meÅos, izmantojot programmÄÅ”anas valodu C. YOLO izmanto iepriekÅ” definÄtu logu režģi. Lai viens un tas pats objekts netiktu definÄts vairÄkas reizes, tiek izmantots logu pÄrklÄÅ”anÄs koeficients (IoU). Ikrustojums oaplÅ«kot Ujonu). Å Ä« arhitektÅ«ra darbojas plaÅ”Ä diapazonÄ un ir augsta robustums: modeli var apmÄcÄ«t fotogrÄfijÄs, taÄu tas joprojÄm labi darbojas ar roku zÄ«mÄtÄm gleznÄm.
SSD (Sieiet Skarsts MultiBox Detector) ā tiek izmantoti visveiksmÄ«gÄkie YOLO arhitektÅ«ras āhakiā (piemÄram, nemaksimÄlÄ slÄpÄÅ”ana) un tiek pievienoti jauni, lai neironu tÄ«kls darbotos ÄtrÄk un precÄ«zÄk. AtŔķirÄ«ga iezÄ«me: objektu atŔķirÅ”ana vienÄ piegÄjienÄ, izmantojot noteiktu logu režģi (noklusÄjuma lodziÅÅ”) attÄla piramÄ«dÄ. AttÄla piramÄ«da tiek kodÄta konvolÅ«cijas tensoros, izmantojot secÄ«gas konvolÅ«cijas un apvienoÅ”anas darbÄ«bas (ar max-pooling operÄciju telpiskÄ dimensija samazinÄs). TÄdÄ veidÄ vienÄ tÄ«kla skrÄjienÄ tiek noteikti gan lieli, gan mazi objekti.
MobileSSD (mobilsNetV2+ SSD) ir divu neironu tÄ«klu arhitektÅ«ru kombinÄcija. Pirmais tÄ«kls MobileNetV2 darbojas Ätri un palielina atpazÄ«Å”anas precizitÄti. MobileNetV2 tiek izmantots VGG-16 vietÄ, kas sÄkotnÄji tika izmantots oriÄ£inÄls raksts. Otrais SSD tÄ«kls nosaka objektu atraÅ”anÄs vietu attÄlÄ.
SqueezeNet ā ļoti mazs, bet precÄ«zs neironu tÄ«kls. Pats par sevi tas neatrisina objektu noteikÅ”anas problÄmu. TomÄr to var izmantot dažÄdu arhitektÅ«ru kombinÄcijÄ. Un tiek izmantots mobilajÄs ierÄ«cÄs. AtŔķirÄ«gÄ iezÄ«me ir tÄda, ka dati vispirms tiek saspiesti Äetros 1 Ć 1 konvolÅ«cijas filtros un pÄc tam izvÄrsti Äetros 1 Ć 1 un Äetros 3 Ć 3 konvolÅ«cijas filtros. Viena Å”Äda datu saspieÅ”anas-paplaÅ”inÄÅ”anas iterÄcija tiek saukta par āugunsgrÄka moduliā.
DeepLab (Semantic Image Segmentation with Deep Convolutional Nets) ā objektu segmentÄÅ”ana attÄlÄ. ArhitektÅ«ras Ä«patnÄ«ba ir paplaÅ”inÄta konvolÅ«cija, kas saglabÄ telpisko izŔķirtspÄju. Tam seko rezultÄtu pÄcapstrÄdes posms, izmantojot grafisko varbÅ«tÄ«bas modeli (nosacÄ«juma nejauŔības lauks), kas ļauj noÅemt nelielus trokÅ”Åus segmentÄcijÄ un uzlabot segmentÄtÄ attÄla kvalitÄti. Aiz drausmÄ«gÄ nosaukuma āgrafiskais varbÅ«tÄ«bas modelisā slÄpjas parasts Gausa filtrs, kas ir tuvinÄts par pieciem punktiem.
MÄÄ£inÄja izdomÄt ierÄ«ci RefineDet (Viens Å”Äviens rafinÄtneironu tÄ«kls objektam Detakcija), bet es neko daudz nesapratu.
Es arÄ« apskatÄ«ju, kÄ darbojas āuzmanÄ«basā tehnoloÄ£ija: video1, video2, video3. AtŔķirÄ«ga āuzmanÄ«basā arhitektÅ«ras iezÄ«me ir automÄtiska to reÄ£ionu atlase, kuriem attÄlÄ ir pastiprinÄta uzmanÄ«ba (RoI, RVeneto of Interest), izmantojot neironu tÄ«klu, ko sauc par UzmanÄ«bas vienÄ«bu. PaaugstinÄtas uzmanÄ«bas apgabali ir lÄ«dzÄ«gi norobežojoÅ”ajiem lodziÅiem, taÄu atŔķirÄ«bÄ no tiem tie nav fiksÄti attÄlÄ un tiem var bÅ«t izplÅ«duÅ”as robežas. PÄc tam no pastiprinÄtas uzmanÄ«bas reÄ£ioniem tiek izolÄtas zÄ«mes (iezÄ«mes), kuras tiek āievadÄ«tasā uz atkÄrtotiem neironu tÄ«kliem ar arhitektÅ«ru LSDM, GRU vai Vanilla RNN. AtkÄrtoti neironu tÄ«kli spÄj analizÄt pazÄ«mju attiecÄ«bas secÄ«bÄ. AtkÄrtotos neironu tÄ«klus sÄkotnÄji izmantoja, lai tulkotu tekstu citÄs valodÄs, un tagad arÄ« tulkoÅ”anai attÄlus uz tekstu Šø tekstu uz attÄlu.
IzpÄtot Ŕīs arhitektÅ«ras Sapratu, ka neko nesaprotu. Un nav tÄ, ka manam neironu tÄ«klam ir problÄmas ar uzmanÄ«bas mehÄnismu. Visu Å”o arhitektÅ«ru izveide ir kÄ kaut kÄds milzÄ«gs hakatons, kurÄ autori sacenÅ”as hackos. Hack ir Ätrs risinÄjums sarežģītai programmatÅ«ras problÄmai. Tas ir, starp visÄm Ŕīm arhitektÅ«rÄm nav redzama un saprotama loÄ£iska saikne. Viss, kas viÅus vieno, ir visveiksmÄ«gÄko hakeru kopums, ko viÅi aizÅemas viens no otra, kÄ arÄ« kopÄ«gs visiem. slÄgta cikla konvolÅ«cijas darbÄ«ba (kļūda backpropagation, backpropagation). NÄ sistÄmu domÄÅ”ana! Nav skaidrs, ko mainÄ«t un kÄ optimizÄt esoÅ”os sasniegumus.
TÄ kÄ starp uzlauÅ”anu nav loÄ£iskas saiknes, tos ir ÄrkÄrtÄ«gi grÅ«ti atcerÄties un pielietot praksÄ. TÄs ir sadrumstalotas zinÄÅ”anas. LabÄkajÄ gadÄ«jumÄ atmiÅÄ paliek daži interesanti un negaidÄ«ti mirkļi, bet lielÄkÄ daļa saprastÄ un nesaprotamÄ pazÅ«d no atmiÅas dažu dienu laikÄ. BÅ«s labi, ja pÄc nedÄļas atcerÄsies vismaz arhitektÅ«ras nosaukumu. TaÄu vairÄkas stundas un pat dienas darba laika pagÄja, lasot rakstus un skatoties apskatu video!
LielÄkÄ daļa zinÄtnisko rakstu autoru, manuprÄt, dara visu iespÄjamo, lai pat Ŕīs sadrumstalotÄs zinÄÅ”anas lasÄ«tÄjam nesaprastu. Bet lÄ«dzdalÄ«bas frÄzes desmit rindu teikumos ar formulÄm, kas Åemtas āno zila gaisaā, ir atseviŔķa raksta tÄma (problÄma publicÄt vai pazust).
Å Ä« iemesla dÄļ ir nepiecieÅ”ams sistematizÄt informÄciju, izmantojot neironu tÄ«klus, un tÄdÄjÄdi paaugstinÄt izpratnes un iegaumÄÅ”anas kvalitÄti. TÄpÄc mÄkslÄ«go neironu tÄ«klu atseviŔķu tehnoloÄ£iju un arhitektÅ«ru analÄ«zes galvenÄ tÄma bija Å”Äds uzdevums: uzzini, kur tas viss notiek, nevis kÄda konkrÄta neironu tÄ«kla ierÄ«ce atseviŔķi.
Kur tas viss iet? Galvenie rezultÄti:
MaŔīnmÄcÄ«Å”anÄs jaunuzÅÄmumu skaits pÄdÄjo divu gadu laikÄ strauji kritÄs. IespÄjamais iemesls: "neironu tÄ«kli vairs nav kaut kas jauns."
SÄka veidot lielie neironu tÄ«klu ražotÄji "zoodÄrzu paraugi" (zooloÄ£iskÄ dÄrza modelis). Izmantojot tos, varat Ätri izveidot komerciÄlu lietojumprogrammu: TF centrmezgls TensorFlow, MMD noteikÅ”ana PyTorch, Detectron priekÅ” Caffe2, Ä·Äde-modelzoo par Chainer un pÄrÄjie.
Neironu tÄ«kli, kas darbojas Ä«sts laiks (reÄllaika) mobilajÄs ierÄ«cÄs. No 10 lÄ«dz 50 kadriem sekundÄ.
Neironu tÄ«klu izmantoÅ”ana tÄlruÅos (TF Lite), pÄrlÅ«kprogrammÄs (TF.js) un iekÅ”Ä sadzÄ«ves priekÅ”meti (IoT, INTERNET of TeÅÄ£es). ÄŖpaÅ”i tÄlruÅos, kas jau atbalsta neironu tÄ«klus aparatÅ«ras lÄ«menÄ« (neironu paÄtrinÄtÄji).
āBÅ«s katra ierÄ«ce, apÄ£Ärba gabals un, iespÄjams, pat pÄrtika IP-v6 adrese un sazinÄties savÄ starpÄ" - Sebastians Thruns.
PublikÄciju skaits par maŔīnmÄcÄ«bu ir sÄcis pieaugt pÄrsniedz MÅ«ra likumu (dubultojot ik pÄc diviem gadiem) kopÅ” 2015. gada. AcÄ«mredzot rakstu analÄ«zei mums ir nepiecieÅ”ami neironu tÄ«kli.
Å Ädas tehnoloÄ£ijas kļūst arvien populÄrÄkas:
PyTorch ā popularitÄte strauji aug un, Ŕķiet, apsteidz TensorFlow.
AutomÄtiska hiperparametru izvÄle AutoML ā popularitÄte vienmÄrÄ«gi aug.
PakÄpeniska precizitÄtes samazinÄÅ”anÄs un aprÄÄ·inu Ätruma palielinÄÅ”anÄs: neskaidra loÄ£ika, algoritmi veicinot, neprecÄ«zi (aptuveni) aprÄÄ·ini, kvantÄÅ”ana (kad neironu tÄ«kla svari tiek pÄrvÄrsti veselos skaitļos un kvantÄti), neironu paÄtrinÄtÄji.
Galvenais par DL ir tas, ka datu ir daudz, taÄu tos savÄkt un marÄ·Ät nav viegli. TÄpÄc iezÄ«mÄÅ”anas automatizÄcija attÄ«stÄs (automatizÄta anotÄcija) neironu tÄ«kliem, kas izmanto neironu tÄ«klus.
Ar neironu tÄ«kliem pÄkÅ”Åi kļuva datorzinÄtne eksperimentÄlÄ zinÄtne un cÄlÄs reproducÄjamÄ«bas krÄ«ze.
IT nauda un neironu tÄ«klu popularitÄte parÄdÄ«jÄs vienlaikus, kad skaitļoÅ”ana kļuva par tirgus vÄrtÄ«bu. Ekonomika mainÄs no zelta un valÅ«tas ekonomikas uz zelts-valÅ«ta-skaitļoÅ”ana. Skatiet manu rakstu par ekonomofizika un IT naudas parÄdÄ«Å”anÄs iemesls.
PamazÄm parÄdÄs jauns ML/DL programmÄÅ”anas metodika (Machine Learning & Deep Learning), kuras pamatÄ ir programmas attÄloÅ”ana kÄ apmÄcÄ«tu neironu tÄ«klu modeļu kopa.
3. attÄls ā ML/DL kÄ jauna programmÄÅ”anas metodika
TomÄr tas nekad nav parÄdÄ«jies "neironu tÄ«klu teorija", kuras ietvaros var sistemÄtiski domÄt un strÄdÄt. Tas, ko tagad sauc par āteorijuā, patiesÄ«bÄ ir eksperimentÄli, heiristiski algoritmi.
Saites uz maniem un citiem resursiem:
Datu zinÄtnes biļetens. GalvenokÄrt attÄlu apstrÄde. Ikvienam, kurÅ” vÄlas to saÅemt, jÄsÅ«ta e-pasts (foobar167<gaf-gaf>gmail<dot>com). IzsÅ«tu saites uz rakstiem un video, tiklÄ«dz materiÄls krÄjas.
MÄs atklÄjÄm, ka tie ir ļoti noderÄ«gi. video kanÄli zinÄtnisku rakstu analÄ«zei Datu zinÄtne. Atrodiet, abonÄjiet tos un nosÅ«tiet saites saviem kolÄÄ£iem un arÄ« man. PiemÄri: