Mga neural network. Asa man paingon kining tanan?

Ang artikulo naglangkob sa duha ka bahin:

  1. Usa ka mubo nga paghulagway sa pipila ka mga arkitektura sa network alang sa pagkakita sa butang sa mga imahe ug pagbahin sa imahe nga adunay labing masabtan nga mga link sa mga kapanguhaan alang kanako. Gisulayan nako ang pagpili sa mga pagpatin-aw sa video ug labing maayo sa Russian.
  2. Ang ikaduha nga bahin usa ka pagsulay nga masabtan ang direksyon sa pag-uswag sa mga arkitektura sa neural network. Ug ang mga teknolohiya nga gibase sa kanila.

Mga neural network. Asa man paingon kining tanan?

Figure 1 - Ang pagsabut sa mga arkitektura sa neural network dili sayon

Nagsugod ang tanan pinaagi sa paghimo og duha ka mga aplikasyon sa demo alang sa pagklasipikar ug pagtuki sa butang sa usa ka Android nga telepono:

  • Back-end nga demo, kung ang data giproseso sa server ug gipasa sa telepono. Klasipikasyon sa hulagway sa tulo ka matang sa mga oso: brown, itom ug teddy.
  • Front-end nga demokung ang datos giproseso sa telepono mismo. Detection sa mga butang (object detection) sa tulo ka matang: hazelnuts, igos ug petsa.

Adunay kalainan tali sa mga buluhaton sa klasipikasyon sa imahe, pagtuki sa butang sa usa ka imahe ug pagbahinbahin sa imahe. Busa, kinahanglan nga mahibal-an kung unsang mga arkitektura sa neural network ang nakamatikod sa mga butang sa mga imahe ug kung kinsa ang mahimong bahin. Akong nakit-an ang mosunod nga mga pananglitan sa mga arkitektura nga adunay labing masabtan nga mga link sa mga kapanguhaan alang kanako:

  • Usa ka serye sa mga arkitektura nga gibase sa R-CNN (Rmga rehiyon nga adunay Conbolusyon Neural Nmga feature sa etworks): R-CNN, Fast R-CNN, Mas paspas nga R-CNN, Maskara R-CNN. Aron makamatikod sa usa ka butang sa usa ka imahe, ang mga kahon sa pagbugkos gigahin gamit ang mekanismo sa Rehiyon nga Proposal Network (RPN). Sa sinugdan, ang mas hinay nga mekanismo sa Selective Search gigamit imbes nga RPN. Dayon ang pinili nga limitado nga mga rehiyon gipakaon sa input sa usa ka conventional neural network alang sa klasipikasyon. Ang arkitektura sa R-CNN adunay tin-aw nga "para" nga mga loop sa limitado nga mga rehiyon, nga mikabat sa 2000 nga nagdagan pinaagi sa internal nga network sa AlexNet. Ang klaro nga "para" nga mga loop nagpahinay sa katulin sa pagproseso sa imahe. Ang gidaghanon sa mga tin-aw nga mga galong nga nagdagan pinaagi sa internal nga neural network mikunhod sa matag bag-ong bersyon sa arkitektura, ug daghang mga pagbag-o ang gihimo usab aron madugangan ang katulin ug mapulihan ang tahas sa pagkakita sa butang nga adunay pagbahinbahin sa butang sa Mask R-CNN.
  • YOLO (You Only Look Once) mao ang una nga neural network nga nakaila sa mga butang sa tinuud nga oras sa mga mobile device. Talagsaon nga bahin: pag-ila sa mga butang sa usa ka dagan (tan-awa lang kausa). Kana mao, sa arkitektura sa YOLO walay klaro nga "para" nga mga galong, mao nga ang network dali nga molihok. Pananglitan, kini nga analohiya: sa NumPy, kung nagpahigayon mga operasyon nga adunay mga matrice, wala usab klaro nga "para" nga mga loop, nga sa NumPy gipatuman sa ubos nga lebel sa arkitektura pinaagi sa C programming language. Ang YOLO naggamit sa usa ka grid sa predefined windows. Aron mapugngan ang parehas nga butang nga mahubit sa daghang beses, gigamit ang window overlap coefficient (IoU). Iintersection oN Union). Kini nga arkitektura naglihok sa usa ka halapad nga hanay ug adunay taas kalig-on: Ang usa ka modelo mahimong mabansay sa mga litrato pero maayo gihapon ang performance sa mga dibuho sa kamot.
  • SSD (Ssingit Sinit nga MultiBox Detector) - ang labing malampuson nga "mga hack" sa YOLO nga arkitektura gigamit (pananglitan, dili maximum nga pagsumpo) ug ang mga bag-o gidugang aron ang neural network molihok nga mas paspas ug mas tukma. Talagsaon nga bahin: pag-ila sa mga butang sa usa ka run gamit ang gihatag nga grid sa mga bintana (default nga kahon) sa piramide sa imahe. Ang image pyramid gi-encode sa convolution tensors pinaagi sa sunodsunod nga convolution ug pooling operations (uban sa max-pooling operation, ang spatial nga dimensyon mikunhod). Niining paagiha, ang dagko ug gagmay nga mga butang matino sa usa ka network run.
  • MobileSSD (MobileNetV2+ SSD) maoy kombinasyon sa duha ka neural network architectures. Unang network MobileNetV2 naglihok dayon ug nagdugang sa katukma sa pag-ila. Ang MobileNetV2 gigamit imbes nga VGG-16, nga orihinal nga gigamit sa orihinal nga artikulo. Ang ikaduha nga network sa SSD nagtino sa lokasyon sa mga butang sa imahe.
  • SqueezeNet – gamay kaayo apan tukma nga neural network. Sa iyang kaugalingon, wala kini makasulbad sa problema sa pagkakita sa butang. Bisan pa, mahimo kini gamiton sa kombinasyon sa lainlaing mga arkitektura. Ug gigamit sa mga mobile device. Ang lahi nga bahin mao nga ang datos una nga gi-compress sa upat nga 1 Γ— 1 convolutional filter ug dayon gipalapdan sa upat nga 1 Γ— 1 ug upat nga 3 Γ— 3 convolutional filter. Usa sa ingon nga pag-uli sa data compression-expansion gitawag nga "Fire Module".
  • DeepLab (Semantic Image Segmentation with Deep Convolutional Nets) – pagbahinbahin sa mga butang sa hulagway. Ang usa ka talagsaon nga bahin sa arkitektura mao ang dilated convolution, nga nagpreserbar sa spatial nga resolusyon. Gisundan kini sa usa ka post-processing stage sa mga resulta gamit ang usa ka graphical probabilistic model (conditional random field), nga nagtugot kanimo sa pagtangtang sa gamay nga kasaba sa segmentation ug pagpalambo sa kalidad sa segmented nga hulagway. Sa luyo sa makalilisang nga ngalan nga "graphical probabilistic model" nagtago sa usa ka naandan nga Gaussian filter, nga gibanabana sa lima ka puntos.
  • Gisulayan nga mahibal-an ang aparato RefineDet (Single-Shot Dalisayment Neural Network alang sa Object kiniection), pero wala kaayo ko kasabot.
  • Gitan-aw usab nako kung giunsa ang teknolohiya sa "pagtagad" molihok: video1, video2, video3. Ang usa ka lahi nga bahin sa arkitektura nga "pagtagad" mao ang awtomatikong pagpili sa mga rehiyon nga adunay dugang nga atensyon sa imahe (RoI, Rmga lehiyon of Iinteres) gamit ang neural network nga gitawag og Attention Unit. Ang mga rehiyon nga adunay dugang nga atensyon susama sa mga kahon nga nagbugkos, apan dili sama kanila, wala kini gitakda sa imahe ug mahimong adunay mga blur nga mga utlanan. Pagkahuman, gikan sa mga rehiyon nga adunay dugang nga atensyon, ang mga timailhan (mga bahin) nahimulag, nga "gipakaon" sa nagbalikbalik nga mga neural network nga adunay mga arkitektura. LSDM, GRU o Vanilla RNN. Ang mga balikbalik nga neural network makahimo sa pag-analisar sa relasyon sa mga bahin sa usa ka han-ay. Ang nagbalikbalik nga mga neural network sa sinugdan gigamit sa paghubad sa teksto ngadto sa ubang mga pinulongan, ug karon alang sa paghubad mga imahe sa teksto ΠΈ teksto sa imahe.

Samtang gisuhid namo kini nga mga arkitektura Nakaamgo ko nga wala koy nasabtan. Ug dili nga ang akong neural network adunay mga problema sa mekanismo sa atensyon. Ang paghimo sa tanan niini nga mga arkitektura sama sa usa ka matang sa dako nga hackathon, diin ang mga tagsulat nakigkompetensya sa mga hack. Ang hack usa ka dali nga solusyon sa usa ka lisud nga problema sa software. Sa ato pa, walay makita ug masabtan nga lohikal nga koneksyon tali niining tanan nga mga arkitektura. Ang tanan nga naghiusa kanila mao ang usa ka hugpong sa labing malampuson nga mga hack nga ilang gihulam gikan sa usag usa, ug usa ka sagad alang sa tanan. closed-loop convolution nga operasyon (sayup backpropagation, backpropagation). Dili sistema sa panghunahuna! Dili klaro kung unsa ang usbon ug kung unsaon pag-optimize ang mga nahimo na nga nahimo.

Ingon usa ka sangputanan sa kakulang sa lohikal nga koneksyon tali sa mga hack, sila labi ka lisud nga hinumduman ug magamit sa praktis. Kini usa ka tipik nga kahibalo. Sa labing maayo, pipila ka makapaikag ug wala damha nga mga gutlo ang mahinumduman, apan kadaghanan sa kung unsa ang nasabtan ug dili masabtan mawala gikan sa panumduman sulod sa pipila ka mga adlaw. Maayo kung sa usa ka semana mahinumduman nimo bisan ang ngalan sa arkitektura. Apan daghang oras ug bisan mga adlaw sa pagtrabaho ang gigugol sa pagbasa sa mga artikulo ug pagtan-aw sa mga video sa pagrepaso!

Mga neural network. Asa man paingon kining tanan?

Hulagway 2 – Zoo sa mga Neural Network

Kadaghanan sa mga tagsulat sa siyentipikong mga artikulo, sa akong personal nga opinyon, nagbuhat sa tanan nga posible aron masiguro nga bisan kini nga tipik nga kahibalo dili masabtan sa magbabasa. Apan ang participial nga mga prase sa napulo ka linya nga mga tudling-pulong nga adunay mga pormula nga gikuha "gikan sa manipis nga hangin" usa ka hilisgutan alang sa usa ka lahi nga artikulo (problema imantala o mamatay).

Tungod niini nga hinungdan, kinahanglan nga i-systematize ang kasayuran gamit ang mga neural network ug, sa ingon, madugangan ang kalidad sa pagsabut ug pagsag-ulo. Busa, ang panguna nga hilisgutan sa pag-analisar sa mga indibidwal nga teknolohiya ug arkitektura sa mga artipisyal nga neural network mao ang mosunod nga buluhaton: pangitaa kung asa kini paingon, ug dili ang aparato sa bisan unsang piho nga neural network nga gilain.

Asa paingon kining tanan? Panguna nga mga resulta:

  • Gidaghanon sa mga pagsugod sa pagkat-on sa makina sa miaging duha ka tuig nahulog nga kusog. Posible nga rason: "ang mga neural network dili na bag-o."
  • Bisan kinsa makahimo og usa ka nagtrabaho nga neural network aron masulbad ang usa ka yano nga problema. Aron mahimo kini, pagkuha usa ka andam nga modelo gikan sa "modelo nga zoo" ug pagbansay sa katapusan nga layer sa neural network (pagbalhin sa pagkat-on) sa andam na nga datos gikan sa Pagpangita sa Google Dataset o gikan sa 25 ka libo nga Kaggle nga mga datos sa libre panganod Jupyter Notebook.
  • Ang dagkong mga tiggama sa mga neural network nagsugod sa paghimo "modelo nga zoo" (modelo nga zoo). Pinaagi sa paggamit niini dali ka makahimo og usa ka komersyal nga aplikasyon: TF Hub alang sa TensorFlow, MMDetection alang sa PyTorch, Detectron para sa Caffe2, chainer-modelzoo para sa Chainer ug Π΄Ρ€ΡƒΠ³ΠΈΠ΅.
  • Mga neural network nga nagtrabaho sa tinuod nga panahon (tinuod nga panahon) sa mga mobile device. Gikan sa 10 hangtod 50 ka mga frame matag segundo.
  • Ang paggamit sa mga neural network sa mga telepono (TF Lite), sa mga browser (TF.js) ug sa mga gamit sa balay (IoT, Igabii of Things). Ilabi na sa mga telepono nga nagsuporta na sa mga neural network sa lebel sa hardware (neural accelerators).
  • "Ang matag himan, butang sa sinina, ug tingali bisan ang pagkaon adunay IP-v6 nga adres ug makigsulti sa usag usa" - Sebastian Thrun.
  • Ang gidaghanon sa mga publikasyon sa pagkat-on sa makina nagsugod sa pagtubo molapas sa balaod ni Moore (nagdoble matag duha ka tuig) sukad 2015. Dayag nga kinahanglan namon ang mga neural network alang sa pag-analisar sa mga artikulo.
  • Ang mosunod nga mga teknolohiya nahimong popular:
    • PyTorch – ang pagkapopular kusog nga mitubo ug daw milabaw sa TensorFlow.
    • Awtomatikong pagpili sa mga hyperparameter AutoML – ang pagkapopular nag-uswag nga hapsay.
    • Anam-anam nga pagkunhod sa katukma ug pagdugang sa katulin sa pagkalkula: fuzzy nga lohika, mga algorithm pagpakusog, dili eksakto (gibanabana) nga mga kalkulasyon, quantization (sa diha nga ang mga gibug-aton sa neural network nakabig ngadto sa integers ug quantized), neural accelerators.
    • Paghubad mga imahe sa teksto ΠΈ teksto sa imahe.
    • paglalang XNUMXD nga mga butang gikan sa video, karon sa tinuod nga panahon.
    • Ang nag-unang butang mahitungod sa DL mao nga adunay daghang mga datos, apan ang pagkolekta ug pag-label niini dili sayon. Busa, ang markup automation nag-uswag (awtomatiko nga anotasyon) para sa mga neural network gamit ang mga neural network.
  • Uban sa mga neural network, ang Computer Science kalit nga nahimo eksperimento nga siyensya ug mibangon krisis sa reproducibility.
  • Ang kwarta sa IT ug ang pagkapopular sa mga neural network dungan nga mitumaw sa dihang ang pag-compute nahimong bili sa merkado. Nagbag-o ang ekonomiya gikan sa ekonomiya sa bulawan ug salapi ngadto sa bulawan-currency-computing. Tan-awa ang akong artikulo sa ekonomiya ug ang rason sa pagpakita sa IT nga salapi.

Sa hinay-hinay usa ka bag-o nga makita Pamaagi sa pagprograma sa ML/DL (Machine Learning & Deep Learning), nga gibase sa pagrepresentar sa programa isip usa ka set sa nabansay nga mga modelo sa neural network.

Mga neural network. Asa man paingon kining tanan?

Figure 3 – ML/DL isip bag-ong pamaagi sa programming

Bisan pa, wala kini nagpakita "teorya sa neural network", diin makahunahuna ka ug makatrabaho nga sistematiko. Ang gitawag karon nga "teorya" sa tinuud nga eksperimento, heuristic algorithm.

Mga link sa akong ug uban pang mga kapanguhaan:

Бпасибо за вниманиС!

Source: www.habr.com

Idugang sa usa ka comment