Maskininlärning är ämnet på allas läppar. Det är lätt att förstå varför. Det är framtiden för datamanipulation och används redan i nästan alla moderna affärsmiljöer. Men går det att kombinera med en Raspberry Pi? Klarar Pi:n uppgiften att upprätthålla ett fungerande neuralt nätverk? Med Google TensorFlow kan det!
Så här installerar du TensorFlow på en Raspberry Pi, med några exempel på användning.
Vad är TensorFlow?
Innan du dyker in i exempel på hur TensorFlow används är det värt att veta vad det faktiskt är.
Kort sagt, TensorFlow är Googles träningsbara neurala nätverk, som kan utföra många olika uppgifter. Genom att aktivt lära sig från en användarkurerad datamängd gör TensorFlows neurala nätverk korrekta förutsägelser när de ges ny data.
Kort sagt, TensorFlow neurala nätverk tror.
Se vår lista med Tensorflow-exempel för mer information.
Hur man installerar TensorFlow
Även om det krävs seriösa studier att förstå ämnet maskininlärning, är grundläggande TensorFlow-användning lätt att följa. Vår självstudie för bildigenkänning med TensorFlow omfattar installation av biblioteket på din Pi. Det täcker också att testa det och köra det grundläggande Inceptions bildklassificeringsprogram.
I det här fallet tillhandahåller TensorFlow ett redan utbildat neuralt nätverk. Allt användaren behöver göra är att mata in rätt datatyp, så kommer TensorFlow att gissa vad bilden innehåller. Även den grundläggande implementeringen av TensorFlow kan klassificera bilder i 1000 klasser. Det blir förvånansvärt mycket korrekt!
Men vad mer kan du göra med TensorFlow på Raspberry Pi?
Vi har tagit upp hur man gör en smart webbkamera tidigare, men denna talande mobilbildsklassificerare tar det till en ny nivå.
Det här detaljerade inlägget beskriver hårdvaruinstallationen och anpassad programvara integrerad med Inceptions bildklassificerare. Exempelkoden visar hur lätt det är att integrera TensorFlow med ett projekt (förutsatt att du är bekväm med grunderna i programmeringsspråket Python). Artikeln går in i detalj om processen för bildigenkänning. Det är en utmärkt resurs i allmänhet för alla som är intresserade av området.
En utmärkt del av denna inställning kanske inte är tydlig från början:
“En extra bonus som många påpekade är att när den väl har installerats krävs ingen internetåtkomst.”
Tidigare bildigenkänning har alltid förlitat sig på en enorm mängd bearbetningstid eller en internetanslutning. En Pi kan inte alltid skicka information till molnet och har begränsad processorkraft. Det här är lösningen, en fristående offlineobjektigenkännare som du kan göra hemma. Den kommer till och med att berätta vad den tittar på. Är inte framtiden fantastisk?
Hemgjorda smarta (eller “magiska”) speglar är ungefär det coolaste du kan bygga. Kräver bara en Pi och en gammal bärbar datorskärm tillsammans med grundläggande gör-det-själv-tillbehör, det är ett bra nybörjarprojekt. Alasdair Allan bestämde sig för att inte nöja sig med den genomsnittliga smarta spegeln och byggde TensorFlow magiska spegel med röstigenkänning.
Alasdair var missnöjd med kostnaden för webbaserad taligenkänning och valde TensorFlow som ett offlinealternativ. Att integrera TensorFlows förtränade röstigenkänningsmodell i den redan använda AIY-kitkoden lägger till anpassade väckningsord till projektet.
Google sammanställde en datauppsättning med över 65 000 crowdsourcede ord. Denna datauppsättning med öppen källkod tränade det neurala nätet att förstå vissa ord.
I det här fallet lade den till flera möjliga vakna ord men stöter fortfarande på ett välbekant maskininlärningsproblem: det krävs mycket data för att träna ett neuralt nätverk.
Om du inte är villig att skapa en unik datauppsättning med tiotusentals poster är du begränsad till vad som är fritt tillgängligt. Detta projekt visar begränsningarna för TensorFlow på Pi:n i dess nuvarande tillstånd. Det är fullt funktionellt men driver Pi:s beräkningsmöjligheter. Som med all ny teknik är denna tidiga implementering en inblick i framtiden för smarta hemenheter.
Med tanke på Googles historia med självkörande bilar är det ingen överraskning att TensorFlow är väl lämpad för autonom körning.
DeepPiCar är ett utmärkt exempel på denna typ av neurala nätverk i aktion. Förutom standardfjärrkontroll har denna Raspberry Pi-robot något helt smartare. Utbildad på en datauppsättning som tillhandahålls på GitHub-projektsidan, lär sig nätverket att hålla sig på ett förutbestämt spår.
Detta projekt är inte för nybörjare. Den hårdvara som krävs finns i nästan alla billiga robotsatser. Mjukvaruimplementeringen kräver lite mer djupgående kunskap. Du bör ha ett bra grepp om maskininlärning innan du börjar.
En av de mest kända implementeringarna av TensorFlow på Pi, Makoto Koikes gurksorterare är ett tecken på vad som kommer.
Sorteringen av färskvaror för olika marknader är en enorm kostnad för mindre leverantörer. Att sortera gurkor efter storlek och kvalitet är en uppgift som tills nyligen endast kunde utföras av en mänsklig operatör. Maskinsortering var mycket svår att åstadkomma och kostsamt. TensorFlow löser detta problem genom att kategorisera gurkor i realtid via kamera.
Med hjälp av över 7000 bilder av gurkor tränade Makoto ett neuralt nätverk för att skilja mellan olika typer. Under drift tar webbkameror bilder från tre vinklar. Pi:n klassificerar bilderna innan de vidarebefordras till en Linux-server för vidare klassificering. Resultatet triggar igång ett löpande band och servosystem som sorterar gurkorna i lådor.
Början på något smart
Vi har sett Raspberry Pi’s användas till allt, så det är inte förvånande att TensorFlow har kommit på den. Pi:n kämpar för att hålla jämna steg med kraven för maskininlärning, men det är bra för att lära sig grunderna.
Om författaren
Ian Buckley (220 artiklar publicerade)
Ian Buckley är en frilansjournalist, musiker, artist och videoproducent bosatt i Berlin, Tyskland. När han inte skriver eller står på scen, pysslar han med DIY-elektronik eller kod i hopp om att bli en galen vetenskapsman.
Mer från Ian Buckley
Prenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!
Klicka här för att prenumerera
