3. heinäkuuta - 16. heinäkuuta Nižni Novgorodin osavaltion yliopistossa. N.I. Lobachevsky isännöi Intel Interuniversity Summer School on Computer Vision - Computer Vision Summer Camp, johon osallistui yli 100 opiskelijaa. Koulu oli suunnattu Nizhny Novgorodin yliopistojen teknisille opiskelijoille, jotka ovat kiinnostuneita tietokonenäöstä, syväoppimisesta, hermoverkoista, Intel OpenVINOsta, OpenCV:stä.
Tässä artikkelissa kerromme, miten koulun valinta tapahtui, mitä he opiskelevat, mitä opiskelijat tekivät käytännön osiossa, ja kerromme myös joistakin väittelyssä esitellyistä projekteista.
Valintaprosessi ja osallistumismuodot
Päätimme antaa lapsille mahdollisuuden hakea kahta koulutusmuotoa: kokopäiväistä ja osa-aikaista. Osa- ja osa-aikaisille kursseille opiskelijat eivät läpäisseet valintaa ja ilmoittautuivat välittömästi. He osallistuivat vain luennoille, arkisin, aamuisin. Lapsilla oli myös mahdollisuus suorittaa käytännön tehtäviä ja lähettää ne
Päästäkseen kokopäiväiseen kokeeseen poikien piti tulla Intelin toimistoon haastatteluun komission kanssa. Erona osa- ja osa-aikaiseen muotoon oli se, että leirille osallistujat kävivät luentojen lisäksi käytännön tehtävissä kuraattorien - UNN:n opettajien ja Intelin insinöörien kanssa. Toisella viikolla loppuivat käytännön tehtävät ja alkoivat projektit, joissa osallistujat työskentelivät 3 hengen ryhmissä.
Haastattelussa opiskelijoille esitettiin kysymyksiä matematiikasta ja ohjelmoinnista, ja heille annettiin myös tehtävä, joka piti ratkaista paikan päällä. On syytä huomata, että komissio koostui ohjelmistosuunnittelijoista, algoritmi-insinööreistä ja yliopiston opettajista. N.I. Lobachevsky, joten haastattelu osoittautui monitahoiseksi ja poikkeukselliseksi. Haastattelijan näkökulmasta oli mielenkiintoista saada selville opiskelijoiden tekniset perustiedot tietokonenäön suhteen, joten aiheita kuten C++/STL, OOP, perusalgoritmit ja tietorakenteet, lineaarinen algebra, matemaattinen analyysi, diskreetti matematiikka ja paljon muutakin kysyttiin. Tehtävien joukossa oli ensisijaisesti opiskelijoiden päättelyn selvittäminen. Komissio oli myös kiinnostunut siitä, missä he opiskelevat, mitä kokemuksia heillä oli ennen tätä koulua (esimerkiksi tieteellinen toiminta) ja kuinka sitä voitaisiin soveltaa suoraan tietokonenäön kenttään.
Päätoimiseen valintaan osallistui yhteensä 78 opiskelijaa ja päätoimisia paikkoja oli 24. Kilpailussa oli 3 opiskelijaa per paikka. Osallistujatilastot ja visuaaliset erot kokopäiväisten ja osa-aikaisten osallistumismuotojen välillä näkyvät alla olevassa taulukossa:
Mitä pojat tekivät 2 viikkoa?
Opiskelijat tutustuivat teoriassa ja käytännössä tietokonenäön päätehtäviin: kuvien luokitteluun, esineiden havaitsemiseen ja niiden seurantaan. Jokaisen aiheen luentokomponentti sisälsi yleensä historiallisen retken klassisten tietokonenäköongelmien ratkaisumenetelmien ja nykyaikaisten ratkaisumenetelmien kehitykseen koneoppimisen ja neuroverkkojen avulla. Teoriaa seurasi käytäntö, jossa opiskelijat latasivat suosittuja hermoverkkomalleja ja käynnistivät ne OpenCV-kirjaston DNN-moduulin avulla luoden mukautetun sovelluksen.
Kaikkien luentojen esitykset asetettiin julkiseen arkistoon
Miten hankkeiden puolustaminen sujui?
Jokaiselle tiimille annettiin 10 minuuttia aikaa keskustella siitä, mitä he tekivät projektin aikana ja mihin päätyivät. Tämän ajan jälkeen alkoi 5 minuuttia, jonka aikana yrityksen insinöörit esittivät pojille kysymyksiä ja antoivat pieniä vinkkejä, jotka auttaisivat heitä parantamaan projektiaan tai ehkäisemään olemassa olevia virheitä tulevaisuudessa. Jokainen kaveri kokeili itseään puhujana, osoitti tietonsa tietokonenäön alalla ja vahvisti panoksensa projektin luomiseen, mikä auttoi meitä pohtimaan ja tekemään johtopäätöksen jokaisesta koulun osallistujasta. Puolustus kesti yli 3 tuntia, mutta pidimme pojista huolta ja purimme jännitteitä lyhyellä kahvitauolla, jossa pojat saivat vetää henkeä ja keskustella asioista johtavien Intel-asiantuntijoiden kanssa.
Päivän päätteeksi jakoimme yhden ykkös-, kaksi toisen- ja kolme kolmatta sijaa. Valinta oli melko vaikeaa, koska jokaisella tiimillä, jokaisella projektilla oli oma makunsa ja se erottui esityksen omaperäisyydestään.
Päätoimiset CV-leirin osallistujat, projektipuolustus, Intelin toimisto Nižni Novgorodissa
Esiteltyjä projekteja
Älykäs käsine
Ilmaisimen ja seurantalaitteen käyttö OpenCV:n avulla visuaaliseen navigointiin avaruudessa. Tiimi on lisäksi lisännyt syvyystunnistuksen kahden kameran avulla. Hallintaliittymänä käytetään Microsoft Speech API:ta.
Reseptori
Ruoan tunnistaminen ja reseptin valinta valmiille ruoalle, mukaan lukien löydetyt ainekset. Kaverit eivät pelänneet tehtävää ja he merkitsivät viikon sisällä itse riittävän määrän kuvia, kouluttivat ilmaisimen TensorFlow Object Detection API:lla ja lisäsivät logiikkaa reseptin löytämiseen. Yksinkertaista ja maukasta!
Editor 2.0
Projektin osallistujat käyttivät kasvojentunnistukseen joukkoa hermoverkkoja (kasvohaku, kasvokuvan normalisointi avainpisteiden mukaan, kasvokuvan kuvaajan laskeminen) osana tehtävää etsiä katkelmia pitkistä videoista, joissa tietty henkilö on esittää. Kehitettyä järjestelmää voidaan käyttää apujärjestelmänä videoeditointiin, jolloin henkilö ei tarvitse katsoa videota itse etsiessään tarvittavia fragmentteja. Neuroverkkojen käyttäminen kohteesta
Anonymisoija
Silmälasien ja naamarien piirtäminen ihmisen kasvoille. MTCNN-verkkoa käytettiin kasvojen ja avainpisteiden havaitsemiseen.
Nimetön
Toinen mielenkiintoinen työ identiteetin salaamisesta. Tämä tiimi esitteli useita vaihtoehtoja kasvojen vääristämiseen: sumennuksen ja pikseloinnin. Yhdessä viikossa kaverit eivät vain selvittäneet tehtävää, vaan tarjosivat myös tilan tietyn henkilön anonymisoimiseksi (kasvontunnistuksella).
Lämmitä
"Warm-up"-projektitiimi ratkaisi ongelman urheiluassistentin luomisesta pään kallistusharjoitukseen. Ja vaikka tämän sovelluksen lopullinen sovellus on edelleen kiistanalainen, tehtiin kattava tutkimus, jossa verrattiin erilaisia kasvojentunnistusalgoritmeja: Haar-kaskadit, TensorFlow-verkot, OpenCV ja OpenVINO. Lämmittelimme paitsi fyysisesti, myös henkisesti!
Alempi 800
Nižni Novgorod, kaupunki, jossa koulu pidettiin, täyttää 2 vuotta kahdessa vuodessa, mikä tarkoittaa, että aikaa on tarpeeksi mielenkiintoisen projektin toteuttamiseen. Pyysimme lapsia pohtimaan tehtävää luoda opas, joka voi rakennuksen julkisivukuvan perusteella antaa tietoa siitä, millainen esine kuvassa näkyy ja mitä faktoja siitä tiedetään. Mielestämme tämä tehtävä oli yksi vaikeimmista, koska se liittyy klassiseen tietokonenäköön, mutta joukkue osoitti kunnollisen tuloksen.
Kivi paperi sakset
Huolimatta suunnittelutyön tiukoista aikarajoituksista tämä tiimi ei myöskään pelännyt tehdä kokeilua oman hermoverkkonsa kouluttamiseksi käsien asemien luokitteluun tunnetussa pelissä.
Palaute osallistujilta
Pyysimme eri kurssien opiskelijoita jakamaan vaikutelmiaan kesäkoulusta:
Minulla oli äskettäin onni osallistua Intel Computer Vision -kesäleiriin, ja se oli upea kokemus. Saimme paljon uutta tietoa ja taitoja CV:n, ohjelmistojen asennuksen, virheenkorjauksen saralla, uppouduimme myös työympäristöön, kohtasimme todellisia ongelmia, keskustelimme mahdollisista ratkaisuista kollegoiden ja koulun opettajien kanssa.On olemassa myytti, että ohjelmoijan työ on koostuu yksinomaan kommunikoinnista tietokoneen kanssa. Näin ei kuitenkaan ole ollenkaan. Luova työmme on erottamaton kommunikaatiosta ihmisten kanssa. Viestinnän kautta saattoi saada ainutlaatuista tietoa. Ja tästä koulun osasta pidin eniten. Yksi haittapuoli kuitenkin on... opintojeni päätyttyä halusin jatkaa! Teoreettisen DL-tiedon ja käytännön CV-taitojen lisäksi sain käsityksen siitä, mihin matematiikan osa-alueisiin tulisi kiinnittää erityistä huomiota ja mitä teknologioita kannattaa opiskella. Intelin insinöörien ja tutkijoiden omistautuminen, ammattitaito ja rakkaus työtään kohtaan vaikuttivat IT-suunnan valintaani. Tästä haluan kiittää kaikkia koulun järjestäjiä.
Kristina, 1. vuosi, HSE
Näin lyhyessä ajassa koulu pystyi tarjoamaan mahdollisimman paljon tietoa ja harjoittelua tietokonenäön aiheesta. Ja vaikka se oli suunniteltu perustietoihin, luennot sisälsivät paljon teknistä materiaalia, jota halutaan ymmärtää ja viettää enemmän aikaa opiskeluun. Koulun mentorit ja luennoitsijat vastasivat innokkaasti kaikkiin kysymyksiin ja kommunikoivat opiskelijoiden kanssa. No, lopputyötä tehdessäni jouduin sukeltamaan valmiin sovelluksen kehittämisen viidakkoon ja kohtaamaan vaikeuksia, joita opiskelussa ei aina esiinny. Tiimimme teki lopulta sovelluksen pelata "kivi-paperi-sakset" -peliä tietokoneella. Koulutimme mallin tunnistamaan hahmon web-kameralla, kirjoitimme logiikkaa ja teimme käyttöliittymän opencv-kehyksen pohjalta. Koulu tarjosi ajattelua ja vektoria myöhempään oppimiseen ja kehittymiseen. Olen erittäin iloinen, että osallistuin.
Sergey, 3. vuosi, UNN
Koulu ei täysin vastannut odotuksiani. Luennot pitivät melko kokeneet Intelin kehittäjät. Viestintä luennoitsijoiden kanssa on aina ollut mielenkiintoista ja hyödyllistä, mentorit ovat reagoivia ja aina valmiita auttamaan.Luennot ovat miellyttävää kuunnella, aiheet ovat varsin ajankohtaisia ja informatiivisia. Mutta tiesin jo joitain asioita, ja niitä, joita en tiennyt, ei käytäntö tukenut millään tavalla, ja siksi todella hyvää materiaalia en koskaan ymmärtänyt ja opiskellut. Kyllä, suurin osa tiedoista on tarkoitettu tiedoksi, jotta voit kokeilla sitä kotona tai vain saada käsityksen siitä, mistä on kyse, mutta halusin silti toteuttaa joitain olemassa olevia algoritmeja itse. kokeneiden opettajien valvonta, jotka voivat antaa hyviä neuvoja tai auttaa, jos jotain tapahtuu, ei toimi. Tästä johtuen käytännössä käytettiin valmiita ratkaisuja ja koodi, voisi sanoa, oli valmiiksi kirjoitettu meille, sitä tarvitsi vain hieman muokata. Projektit olivat yksinkertaisimpia, ja jos yrität jollain tavalla monimutkaista tehtävää, sinulla ei ole tarpeeksi aikaa toteuttaa sitä enemmän tai vähemmän vakaaseen tilaan, kuten meillä kävi.
Yleisesti ottaen koko koulu näyttää jonkinlaiselta ei kovin vakavalta kehittäjien peliltä, ja tämä on juuri käytännön osan vika. Mielestäni on välttämätöntä lisätä kouluun käytettyä aikaa, monimutkaista harjoitusmateriaalia, jotta voit ja pitää kirjoittaa jotain itse, jotain todella monimutkaista ja tarpeellista, eikä käyttää valmiita, jotta harjoittelu sujuisi monimutkaisuuden lisääntyessä , kilpailuprojektien aiheet kannattaa jakaa ensimmäisinä päivinä, jotta luentojen ja harjoitusten materiaalia voidaan käyttää heti projekteissasi ja toteutukseen jää enemmän aikaa. Silloin koulussa vietetty aika toimii hyvänä kokemuksena aloitteleville asiantuntijoille.
Dmitry, 1. vuoden maisterin tutkinto, NSTU
Intelin kesäkoulu oli loistava tilaisuus viettää tämä kesä tekemällä sitä, mitä rakastat. Pelkästään se tosiasia, että Intelin työntekijät pitivät luentoja tietokonenäköalan ohjelmointiin liittyen, ei antanut minun rentoutua, halusin saada kaiken irti koko prosessista, vaikka se välillä olikin vaikeaa. Jokainen päivä kului erittäin nopeasti, huomaamattomasti ja hedelmällisesti. Mahdollisuus toteuttaa omaa projektiani antoi minulle mahdollisuuden työskennellä tiimissä upeiden kuraattorien ja muiden koulun osallistujien kanssa. Näitä kahta viikkoa voidaan kuvata lyhyesti seuraavasti: mielenkiintoisia ja ohikiitäviä.
Elizaveta, 2. vuosi, UNN
Syksyllä (loka-marraskuu) sinua odottaa Delta koulutusohjelma, josta saat tietoa
Lähde: will.com