7. Strojové učení

Většina detektorů v kapitole o obraze byla ručně naprogramována pro konkrétní cíl: ručně vyladěné rozsahy barev pro sledování blobů, ručně odvozené vzory vah pro hranové filtry, pevné geometrické předpoklady pro vyhledávače čar a kruhů. Každý algoritmus pokrýval jeden druh úlohy a přidání nového cíle znamenalo napsat nový algoritmus. Strojové učení mění pracovní postup. Místo jednoho algoritmu na cíl aplikace načte natrénovaný model – zásobník vah vyprodukovaný mimo zařízení na stolním počítači s mnoha vzorovými obrázky – a spustí jej na kameře. Stejný engine, který spouští detektor obličejů, spouští odhad pozice ruky, sledovač pozice těla, klasifikátor objektů nebo cokoli jiného, na co byl model trénován.

Modul ml je sada nástrojů. Každá operace staví na jediném objektu Model, který načte soubor modelu z flash paměti, spravuje jeho kvantizované vstupní a výstupní tenzory, dispatchuje každou inferenci na správný engine na kameře a směruje výsledné tenzory přes volitelný post-procesor, který je převádí zpět do podoby výsledku, na který může aplikace reagovat – rámečky, klíčové body, třídy nebo cokoli, k čemu model slouží.

Shrnutí