Du har kanskje kommet over TensorFlow Lite mens du gikk gjennom Edge AI-utviklingstavler eller AI-akselerasjonsprosjekter.

TensorFlow Lite er et rammeverk av programvarepakker som muliggjør ML-trening lokalt på maskinvaren. Denne prosessering og databehandling på enheten lar utviklere kjøre modellene sine på målrettet maskinvare. Maskinvaren inkluderer utviklingstavler, maskinvaremoduler, innebygde enheter og IoT-enheter.

Oversikt over TensorFlow Lite Framework

TensorFlow er et populært begrep innen dyp læring, ettersom mange ML-utviklere bruker dette rammeverket for ulike bruksområder. Det gir enkel implementering maskinlæringsmodeller og slutninger for AI-applikasjoner.

Men TensorFlow Lite er en dyp læringsramme for lokal inferens, spesielt for maskinvare med lav beregning. Det tillater maskinlæring på enheten ved å hjelpe utviklere med å kjøre modellene sine på kompatibel maskinvare og IoT-enheter.

En utvikler må velge en passende modell avhengig av brukssaken. Rammeverket gir også et alternativ for å omskole den eksisterende modellen i et tilpasset datasett. Ettersom TensorFlows protokollbuffermodell kommer med stor størrelse og krever avansert beregningskraft, er det mulig å konvertere TensorFlow-modellen til TensorFlow Lite-modellen.

Tilpasningen av optimalisering og kvantisering av parametere tillater reduksjon i modellstørrelse og ventetid.

Bildekreditt: TensorFlow

Bortsett fra ventetiden og størrelsesfordelene med TensorFlow Lite, gir rammeverket datasikkerheten ettersom trening foregår lokalt på enheten. I tillegg er det ikke behov for internettforbindelse. Dermed er distribusjonen av applikasjoner ikke begrenset til bestemte områder med tilkobling.

Disse faktorene reduserer til slutt strømforbruket på enheten ved å eliminere tilkoblingsfaktoren og øke effektiviteten til den dype læringsinferansen.

Modeller av TensorFlow Lite-rammeverket finnes i et plattformformat kjent som FlatBuffers. Det er et serialiseringsbibliotek som lagrer hierarkiske data i en flat binær buffer slik at direkte tilgang er mulig uten å pakke ut. Du kan også observere “.tflite” -utvidelsen for TensorFlow Lite-modellene. Denne representasjonsteknikken tillater optimaliseringer i beregninger og reduserer minnekravene. Derfor gjør det det mye bedre enn TensorFlow-modeller

TinyML på TensorFlow Lite Micro

Siden TensorFlow Lite er kompatibel med forskjellige plattformer for Edge AI-applikasjoner, var behovet for ytterligere konvertering av biblioteket nødvendig. Derfor kom organisasjonen opp med et delsettbibliotek av TensorFlow Lite, kjent som TensorFlow Lite Micro. TensorFlow Lite Micro kjører spesifikt maskinlæringsmodeller på mikrokontrollere lokalt med et minimumskrav til minnet på rundt noen få kilobyte.

Kjernens kjøretid for prosedyren integreres med 16 KB på en Arm Cortex M3 og kan fungere på forskjellige modeller. Rammeverket krever ikke ekstra OS-støtte eller andre språkbiblioteker på høyt nivå som avhengigheter for å kjøre slutningen på enheten.

Utviklingen av TensorFlow Lite Micro-røtter til C ++ 11, som trenger 32-biters arkitektur for kompatibilitet. Når vi snakker mer om arkitekturen, fungerer biblioteket fint på et robust utvalg av prosessorer basert på Arm Cortex-M Series-arkitekturen til andre designarkitekturer som ESP32.

Arbeidsflyt for TensorFlow Lite brukstilfeller

Opplæringsprosessen til nevrale nettverk krever høy beregningsmessig maskinvare. Dermed blir den trent på generalen TensorFlow-modell. Imidlertid er trening bare nødvendig hvis et tilpasset datasett passer til en dyp læringsmodell, mens forhåndstrente modeller på rammeverket også kan brukes til applikasjonene.

Bildekreditt: TensorFlow

Forutsatt en tilpasset brukstilfelle med det applikasjonsspesifikke datasettet, bruker brukeren modellen på det generelle TensorFlow-rammeverket med høy prosesseringskapasitet og arkitektur. Når opplæringen er over, verifiserer modellevalueringen ved hjelp av testteknikker nøyaktigheten og påliteligheten til modellen. Videre følges prosessen ved å konvertere TensorFlow-modellen til maskinvarekompatibel TensorFlow Lite-modell i .tflite-format.

.Tflite-formatet er en flat bufferfil som er felles for TensorFlow Lite-rammeverket og kompatibel maskinvare. Modellen kan videre brukes til inferansetrening på sanntidsdata mottatt på modellen. Inferansetreningen optimaliserte modellene for robuste brukstilfeller. Derfor er alternativet for inferansetrening avgjørende for kanten AI-applikasjoner.

Det meste av mikrokontrollers fastvare støtter ikke det opprinnelige filsystemet for direkte innebygging av det flate bufferformatet til TensorFlow Lite-modellen. Derfor er konvertering av .tflite-filen nødvendig til et array-strukturformat, som er kompatibelt med mikrokontrollere.

Å inkludere programmet i C-array etterfulgt av normal kompilering er en enkel teknikk for slik konvertering. Det resulterende formatet fungerer som en kildefil og består av et tegnarray som er kompatibelt med mikrokontrollere.

Enheter som støtter TensorFlow Lite Micro

TensorFlow Lite er egnet for kraftige enheter, men den kommer med ulempen med større arbeidsbelastning på prosessoren. Selv om TensorFlow Lite Micro har små filer som er utsatt for underfitting, optimaliserer filstørrelsen det passer til minnet kan betydelig forbedre utdataene for maskinvare med lav effekt og lite prosessering, f.eks mikrokontrollere.

Her er listen over utviklingstavler fra den offisielle TensorFlow-dokumentasjonen som støtter TensorFlow Lite Micro:

  • Arduino Nano 33 BLE Sense
  • SparkFun Edge
  • STM32F746 Discovery kit
  • Adafruit EdgeBadge
  • Adafruit TensorFlow Lite for Microcontrollers Kit
  • Adafruit Circuit Playground Bluefruit
  • Espressif ESP32-DevKitC
  • Espressif ESP-EYE
  • Wio-terminal: ATSAMD51
  • Himax WE-I Plus EVB Endpoint AI Development Board

TensorFlow Lite Micro er også tilgjengelig som et Arduino-bibliotek for utvidet støtte for mikrokontrollere. Det kan også bygge prosjekter for maskinvareutviklingsmiljøer som ligner på Mbed.

TensorFlow Lite tilbyr mye

TensorFlow Lite dyp læringsrammeverk åpner mulighetene for en rekke edge AI-applikasjoner. Siden rammeverket er åpen kildekode for AI-entusiaster, gjør fellestøtten det enda mer populært for bruk av maskinlæring. Den samlede plattformen til TensorFlow Lite forbedrer miljøet for vekst av edge-applikasjoner for innebygde og IoT-enheter

I tillegg er det forskjellige eksempler for nybegynnere som kan hjelpe dem med praktiske brukssaker på rammeverket. Noen av disse eksemplene inkluderer personoppdagelse avhengig av dataene som er samlet inn av bildesensoren til utviklingskortet og standard hallo verdensprogram for alle utviklingstavlene. Eksemplene inkluderer også applikasjoner som bevegelsesdeteksjon og talegjenkjenning for spesifikke utviklingstavler.

For mer informasjon om TensorFlow Lite og TensorFlow Lite Micro, kan du besøke den offisielle dokumentasjonssiden til organisasjonen. Det er mange konseptuelle så vel som opplæringsseksjoner for bedre forståelse av rammeverket.

E-post
Kom i gang med bildegjenkjenning ved hjelp av TensorFlow og Raspberry Pi

Vil du ta tak i bildegjenkjenning? Takket være Tensorflow og en Raspberry Pi kan du komme i gang med en gang.

Les Neste

Relaterte temaer
  • Teknologi forklart
  • Kunstig intelligens
  • Maskinlæring
  • Google TensorFlow
Om forfatteren
Saumitra Jagdale (1 artikler publisert)Mer fra Saumitra Jagdale

Abonner på vårt nyhetsbrev

Bli med på nyhetsbrevet vårt for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Ett steg til…!

Bekreft e-postadressen din i e-posten vi nettopp sendte deg.

.