Morda ste naleteli na TensorFlow Lite med ogledom razvojnih plošč Edge AI ali projektov pospeševanja AI.
TensorFlow Lite je okvir programskih paketov, ki omogoča lokalno usposabljanje na strojni opremi. Ta obdelava in računalništvo v napravi omogočata razvijalcem, da svoje modele izvajajo na ciljni strojni opremi. Strojna oprema vključuje razvojne plošče, strojne module, vdelane in IoT naprave.
Pregled okvira TensorFlow Lite
TensorFlow je priljubljen izraz v globokem učenju, saj mnogi razvijalci ML uporabljajo ta okvir za različne primere uporabe. Zagotavlja enostavnost izvajanja modeli strojnega učenja in sklepanja za aplikacije AI.
Toda TensorFlow Lite je globok učni okvir za lokalno sklepanje, zlasti za nizko računalniško strojno opremo. Omogoča strojno učenje na napravi, tako da razvijalcem pomaga pri zagonu njihovih modelov na združljivi strojni opremi in napravah IoT.
Razvijalec mora izbrati primeren model, odvisno od primera uporabe. Okvir ponuja tudi možnost prekvalifikacije obstoječega modela na naboru podatkov po meri. Ker ima TensorFlowov protokolarni model medpomnilnika veliko velikost in zahteva napredno računsko moč, zato omogoča pretvorbo modela TensorFlow v model TensorFlow Lite.
Prilagajanje parametrov za optimizacijo in kvantiziranje omogoča zmanjšanje velikosti in zakasnitve modela.
Poleg prednosti zakasnitve in velikosti TensorFlow Lite, ogrodje zagotavlja varnost podatkov, saj se usposabljanje izvaja lokalno v napravi. Poleg tega ni potrebe po internetni povezavi. Tako uvajanje aplikacij ni omejeno na določena področja s povezljivostjo.
Ti dejavniki na koncu zmanjšajo obremenitev porabe energije na napravi z odpravo faktorja povezljivosti in povečanjem učinkovitosti globokega učenja.
Modeli ogrodja TensorFlow Lite obstajajo v medplatformni obliki, imenovani FlatBuffers. To je knjižnica za serializacijo, ki hrani hierarhične podatke v ploščatem binarnem medpomnilniku, tako da je mogoč neposreden dostop brez razpakiranja. Ogledate si lahko tudi razširitev .tflite za modele TensorFlow Lite. Ta tehnika predstavitve omogoča optimizacije v izračunih in zmanjšuje potrebe po pomnilniku. Zato je veliko boljši od modelov TensorFlow
TinyML na TensorFlow Lite Micro
Ker je TensorFlow Lite združljiv z različnimi platformami za aplikacije Edge AI, je bila potrebna nadaljnja konvergenca knjižnice. Zato je organizacija pripravila knjižnico podnaborov TensorFlow Lite, znano kot TensorFlow Lite Micro. TensorFlow Lite Micro posebej lokalno izvaja modele strojnega učenja na mikrokrmilnikih z minimalnimi zahtevami po pomnilniku približno nekaj kilobajtov.
Jedro izvajanja postopka se integrira s 16 KB na Arm Cortex M3 in lahko deluje na različnih modelih. Okvir ne zahteva dodatne podpore za OS ali drugih jezikovnih knjižnic na visoki ravni kot odvisnosti za izvajanje sklepanja na napravi.
Razvoj TensorFlow Lite Micro temelji na jeziku C ++ 11, ki za združljivost potrebuje 32-bitno arhitekturo. Če govorimo več o arhitekturah, knjižnica dobro deluje na robustnem naboru procesorjev, ki temeljijo na arhitekturi Arm Cortex-M Series, in drugim oblikovalske arhitekture, kot je ESP32.
Delovni tok za primere mikro uporabe TensorFlow Lite
Proces usposabljanja nevronske mreže zahteva visoko računalniško strojno opremo. Tako se usposobi za splošno Model TensorFlow. Vendar pa je usposabljanje potrebno le, če nabor podatkov po meri ustreza modelu globokega učenja, medtem ko se za aplikacije lahko uporabljajo tudi predhodno usposobljeni modeli na okviru.
Ob predpostavki primera uporabe po meri z naborom podatkov, specifičnim za aplikacijo, uporabnik model usposobi na splošnem okviru TensorFlow z visoko zmogljivostjo obdelave in arhitekturo. Po končanem usposabljanju ocenjevanje modela s preizkusnimi tehnikami preveri natančnost in zanesljivost modela. Nadalje postopku sledi pretvorba modela TensorFlow v strojno združljiv model TensorFlow Lite v formatu .tflite.
Oblika .tflite je ploščata vmesna datoteka, skupna ogrodju TensorFlow Lite in združljivi strojni opremi. Model se lahko nadalje uporablja za usposabljanje za sklepanje na podatke v realnem času, prejete na modelu. Izobraževanje sklepanja je optimiziralo modele za zanesljive primere uporabe. Možnost sklepanja je ključnega pomena za prednost AI aplikacije.
Večina vdelane programske opreme mikrokrmilnika ne podpira naravnega datotečnega sistema za neposredno vdelavo ploščate oblike medpomnilnika modela TensorFlow Lite. Zato je pretvorba datoteke .tflite potrebna v format strukture matrike, ki je združljiv z mikrokrmilniki.
Vključitev programa v matriko C, čemur sledi normalno prevajanje, je enostavna tehnika za takšno pretvorbo. Nastala oblika deluje kot izvorna datoteka in je sestavljena iz nizov znakov, združljivih z mikrokrmilniki.
Naprave, ki podpirajo TensorFlow Lite Micro
TensorFlow Lite je primeren za zmogljive naprave, vendar ima pomanjkljivost večje obremenitve procesorja. Čeprav ima TensorFlow Lite Micro datoteke majhne velikosti, ki so nagnjene k pomanjkanju opreme, optimiziranje velikosti datotek prilega pomnilniku lahko bistveno izboljša izhod za strojno opremo z nizko porabo in nizko obdelavo, kot je mikrokrmilniki.
Tu je seznam razvojnih plošč iz uradne dokumentacije TensorFlow, ki podpira TensorFlow Lite Micro:
- Arduino Nano 33 BLE Sense
- SparkFun Edge
- STM32F746 Komplet za odkrivanje
- Adafruit EdgeBadge
- Komplet Adafruit TensorFlow Lite za mikrokrmilnike
- Igrišče Adafruit Circuit Bluefruit
- Espressif ESP32-DevKitC
- Espressif ESP-EYE
- Terminal Wio: ATSAMD51
- Razvojna plošča Himax WE-I Plus EVB Endpoint AI
TensorFlow Lite Micro je na voljo tudi kot knjižnica Arduino za razširjeno podporo mikrokrmilnikom. Prav tako lahko gradi projekte za okolja za razvoj strojne opreme, podobna Mbed.
TensorFlow Lite ponuja veliko
Okvir za globoko učenje TensorFlow Lite odpira možnosti številnim vrhunskim aplikacijam AI. Ker je ogrodje odprtokodno za navdušence nad umetno inteligenco, je podpora skupnosti še bolj priljubljena za primere uporabe strojnega učenja. Celotna platforma TensorFlow Lite izboljšuje okolje za rast robnih aplikacij za vdelane naprave in naprave IoT
Poleg tega obstajajo različni primeri za začetnike, ki jim pomagajo pri praktičnih primerih uporabe v okviru. Nekateri od teh primerov vključujejo zaznavanje oseb, odvisno od podatkov, ki jih zbere slikovni senzor razvojne plošče, in standardnega programa hello world za vse razvojne plošče. Primeri vključujejo tudi aplikacije, kot sta zaznavanje kretenj in prepoznavanje govora, za posebne razvojne plošče.
Za več informacij o TensorFlow Lite in TensorFlow Lite Micro, lahko obiščete uradno dokumentacijsko stran organizacije. Za boljše razumevanje okvira je na voljo veliko tako konceptualnih kot tudi vadbenih odsekov.
Se želite spoprijeti s prepoznavanjem slik? Zahvaljujoč Tensorflowu in Raspberry Pi lahko začnete takoj.
Preberite Naprej
- Pojasnjena tehnologija
- Umetna inteligenca
- Strojno učenje
- Google TensorFlow
Naročite se na naše novice
Pridružite se našemu glasilu za tehnične nasvete, preglede, brezplačne e-knjige in ekskluzivne ponudbe!
Še en korak !!!
Potrdite svoj e-poštni naslov v e-poštnem sporočilu, ki smo vam ga pravkar poslali.