Reklama
TensorFlow to biblioteka Google Neural Network. Biorąc pod uwagę, że uczenie maszynowe jest obecnie najgorętszą rzeczą, nic dziwnego, że Google należy do liderów tej nowej technologii.
W tym artykule dowiesz się, jak zainstalować TensorFlow na Raspberry Pi i uruchomić prostą klasyfikację obrazów we wstępnie wyszkolonej sieci neuronowej.
Pierwsze kroki
Aby rozpocząć rozpoznawanie obrazu, potrzebujesz Raspberry Pi (dowolny model będzie działał) i karty SD z systemem operacyjnym Raspbian Stretch (9.0+) (jeśli jesteś nowy w Raspberry Pi, skorzystaj z naszego instrukcja instalacji).
Uruchom Pi i otwórz okno terminala. Upewnij się, że twoje Pi jest aktualne i sprawdź swoją wersję Pythona.
sudo apt-get update. python --version. python3 --version
W tym samouczku możesz używać zarówno języka Python 2.7, jak i Python 3.4+. Ten przykład dotyczy Python 3. W przypadku Python 2.7 zamień Python3 z Pyton, i pip3 z pypeć w tym samouczku.
Pip to menedżer pakietów dla Pythona, zwykle instalowany standardowo w dystrybucjach Linuksa.
Jeśli stwierdzisz, że go nie masz, wykonaj następujące czynności zainstaluj instrukcje dla systemu Linux Jak zainstalować Python PIP w systemach Windows, Mac i LinuxWielu programistów Python korzysta z narzędzia o nazwie PIP, aby usprawnić programowanie. Oto jak zainstalować Python PIP. Czytaj więcej w tym artykule, aby go zainstalować.
Instalowanie TensorFlow
Instalowanie TensorFlow było kiedyś dość frustrującym procesem, ale ostatnia aktualizacja czyni go niezwykle prostym. Chociaż możesz wykonać ten samouczek bez wcześniejszej wiedzy, warto go zrozumieć podstawy uczenia maszynowego przed wypróbowaniem.
Przed zainstalowaniem TensorFlow zainstaluj Atlas biblioteka.
sudo apt install libatlas-base-dev
Po zakończeniu zainstaluj TensorFlow przez pip3
instalacja pip3 - tensorflow użytkownika
Spowoduje to zainstalowanie TensorFlow dla zalogowanego użytkownika. Jeśli wolisz użyć wirtualne środowisko Dowiedz się, jak korzystać ze środowiska wirtualnego PythonNiezależnie od tego, czy jesteś doświadczonym programistą Python, czy dopiero zaczynasz, nauka konfigurowania środowiska wirtualnego jest niezbędna w każdym projekcie Python. Czytaj więcej , zmodyfikuj kod tutaj, aby to odzwierciedlić.
Testowanie TensorFlow
Po zainstalowaniu możesz sprawdzić, czy działa z TensorFlow odpowiednikiem a Witaj świecie!
Z wiersza poleceń utwórz nowy skrypt Pythona za pomocą nano lub wigor (Jeśli nie masz pewności, którego użyć, oba mają zalety) i nazwij to czymś łatwym do zapamiętania.
sudo nano tftest.py.
Wpisz ten kod podany przez Google do testowania TensorFlow:
importuj tensorflow jako tf. hello = tf.constant („Witaj, TensorFlow!”) sess = tf. Sesja() print (sess.run (cześć))
Jeśli używasz nano, wyjdź, naciskając Ctrl + X i zapisz plik, pisząc Y kiedy pojawi się monit.
Uruchom kod z terminala:
python3 tftest.py.
Powinien zostać wyświetlony wydruk „Hello, TensorFlow”.
Jeśli korzystasz z języka Python 3.5, otrzymasz kilka ostrzeżeń w czasie wykonywania. Oficjalne samouczki TensorFlow potwierdzają, że tak się dzieje, i zalecamy zignorowanie tego.
To działa! Teraz zrób coś ciekawego z TensorFlow.
Instalowanie klasyfikatora obrazów
W terminalu utwórz katalog projektu w katalogu domowym i przejdź do niego.
mkdir tf1. cd tf1.
TensorFlow ma repozytorium git z przykładowymi modelami do wypróbowania. Sklonuj repozytorium do nowego katalogu:
klon gita https://github.com/tensorflow/models.git.
Chcesz skorzystać z przykładu klasyfikacji obrazu, który można znaleźć na stronie modele / tutoriale / obraz / imagenet. Przejdź teraz do tego folderu:
modele cd / tutoriale / obraz / imagenet.
Standardowy skrypt klasyfikujący obraz działa z dostarczonym obrazem pandy:
Aby uruchomić standardowy klasyfikator obrazów z dostarczonym obrazem panda, wpisz:
python3 classify_image.py.
Powoduje to przekazanie obrazu pandy do sieci neuronowej, która zwraca domysły co do tego, co obraz ma z wartością swojego poziomu pewności.
Jak pokazuje obraz wyjściowy, sieć neuronowa zgadła poprawnie, z prawie 90-procentową pewnością. Pomyślał również, że obraz może zawierać jabłko kremowe, ale nie był zbyt pewny tej odpowiedzi.
Korzystanie z niestandardowego obrazu
Obraz pandy dowodzi, że TensorFlow działa, ale może to nie dziwić, biorąc pod uwagę przykład podany w projekcie. Aby uzyskać lepszy test, możesz podać własny obraz sieci neuronowej w celu klasyfikacji.
W tym przypadku zobaczysz, czy sieć neuronowa TensorFlow może zidentyfikować George'a.
Poznaj George'a. George jest dinozaurem. Aby nakarmić ten obraz (dostępny w przyciętej formie tutaj) w sieci neuronowej dodaj argumenty podczas uruchamiania skryptu.
python3 classify_image.py --image_file = / home / pi / george.jpg.
The plik_obrazu = przestrzeganie nazwy skryptu pozwala na dodanie dowolnego obrazu według ścieżki. Zobaczmy, jak działała ta sieć neuronowa.
Nie jest zły! Podczas gdy George nie jest triceratopsem, sieć neuronowa sklasyfikowała obraz jako dinozaura z wysokim stopniem pewności w porównaniu z innymi opcjami.
TensorFlow i Raspberry Pi, Ready to Go
Ta podstawowa implementacja TensorFlow ma już potencjał. Rozpoznawanie obiektów odbywa się na Pi i do działania nie wymaga połączenia z Internetem. Oznacza to, że po dodaniu Moduł kamery Raspberry Pi i a Akumulator odpowiedni do Raspberry Pi, cały projekt może być przenośny.
Większość samouczków rysuje tylko powierzchnię przedmiotu, ale nigdy nie było to bardziej prawdziwe niż w tym przypadku. Uczenie maszynowe jest niezwykle gęstym przedmiotem.
Jednym ze sposobów na poszerzenie wiedzy jest: biorąc kurs dedykowany Te kursy uczenia maszynowego przygotują dla Ciebie ścieżkę karieryTe doskonałe kursy uczenia maszynowego online pomogą ci zrozumieć umiejętności potrzebne do rozpoczęcia kariery w uczeniu maszynowym i sztucznej inteligencji. Czytaj więcej . W międzyczasie zapoznaj się z uczeniem maszynowym i Raspberry Pi dzięki projektom TensorFlow, które możesz wypróbować sam.
Ian Buckley jest niezależnym dziennikarzem, muzykiem, performerem i producentem wideo mieszkającym w Berlinie w Niemczech. Kiedy nie pisze ani nie występuje na scenie, majstruje przy elektronice lub kodzie DIY, mając nadzieję, że zostanie szalonym naukowcem.