7. Koneoppiminen

Useimmat image-luvun tunnistimet oli koodattu käsin tiettyä kohdetta varten: käsin viritetyt värialueet blobin seurantaan, käsin johdetut painokuviot reunasuodattimiin, kiinteät geometriset oletukset viiva- ja ympyränetsijöihin. Jokainen algoritmi kattoi yhdenlaisen tehtävän, ja uuden kohteen lisääminen merkitsi uuden algoritmin kirjoittamista. Koneoppiminen muuttaa työnkulun. Yhden algoritmin per kohde sijaan sovellus lataa koulutetun mallin – painojen pinon, joka on tuotettu erillisesti pöytäkoneella monilla esimerkkikuvilla – ja ajaa sitä kameralla. Sama moottori, joka ajaa kasvojentunnistinta, ajaa käden asennon estimaattoria, kehon asennon seurantaa, objektiluokittelijaa tai mitä tahansa muuta, mihin malli on koulutettu.

ml -moduuli on työkalupakki. Jokainen operaatio rakentuu yhden Model -objektin varaan, joka lataa mallitiedoston flash-muistista, hallitsee sen kvantisoituja syöte- ja tulostensoreita, lähettää jokaisen päättelyn oikealle moottorille kameralla ja reitittää tuloksena syntyvät tensorit valinnaisen jälkikäsittelijän läpi, joka muuntaa ne takaisin siihen tulosmuotoon, jonka mukaan sovellus voi toimia – laatikoiksi, avainpisteiksi, luokiksi tai mihin tahansa, mihin malli on tarkoitettu.

Yhteenveto