İlan

TensorFlow, Google’ın Sinir Ağı kütüphanesidir. Makine öğreniminin şu andaki en sıcak şey olduğu düşünüldüğünde, Google'ın bu yeni teknolojideki liderler arasında olması şaşırtıcı değildir.

Bu makalede, Raspberry Pi'ye TensorFlow'u nasıl kuracağınızı ve önceden eğitilmiş bir sinir ağında basit görüntü sınıflandırmasını nasıl çalıştıracağınızı öğreneceksiniz.

Başlangıç

Görüntü tanımaya başlamak için bir Raspberry Pi (herhangi bir model çalışacaktır) ve Raspbian Stretch (9.0+) işletim sistemine sahip bir SD karta (Raspberry Pi'de yeniyseniz, yükleme Rehberi).

Pi'yi başlatın ve bir terminal penceresi açın. Pi'nizin güncel olduğundan emin olun ve Python sürümünüzü kontrol edin.

sudo uygun-güncelleştirme. python - sürüm. python3 - sürüm

Bu eğitim için hem Python 2.7 hem de Python 3.4+ kullanabilirsiniz. Bu örnek Python 3 içindir. Python 2.7 için değiştirin Python3 ile piton, ve PIP3 ile bip bu eğitim boyunca.

Pip, genellikle Linux dağıtımlarında standart olarak kurulan Python için bir paket yöneticisidir.

instagram viewer

Elinizde bulunmadığını tespit ederseniz, Linux talimatları için yükle Windows, Mac ve Linux'a Python PIP KurulumuBirçok Python geliştiricisi, Python'un geliştirmeyi kolaylaştırması için PIP adlı bir araca güvenir. Python PIP'in nasıl kurulacağı aşağıda açıklanmıştır. Daha fazla oku yüklemek için bu makalede.

TensorFlow'u Yükleme

TensorFlow'u yüklemek eskiden oldukça sinir bozucu bir süreçti, ancak son zamanlarda yapılan bir güncelleme bunu inanılmaz derecede basitleştiriyor. Bu öğreticiyi önceden bilgi sahibi olmadan takip edebilmenize rağmen, makine öğrenmenin temelleri denemeden önce.

TensorFlow'u kurmadan önce, Atlas kütüphane.

sudo apt install libatlas-base-dev

Tamamlandığında pip3 üzerinden TensorFlow'u kurun

pip3 install - kullanıcı tensorflow

Bu, giriş yapan kullanıcı için TensorFlow'u yükleyecektir. Bir sanal çevre Python Sanal Ortamını Nasıl Kullanacağınızı Öğreninİster deneyimli bir Python geliştiricisi olun, ister yeni başlıyor olun, herhangi bir Python projesi için sanal ortamın nasıl kurulacağını öğrenmek önemlidir. Daha fazla oku , kodunuzu burada yansıtacak şekilde değiştirin.

Tensör Akışını Test Etme

Kurulduktan sonra, bir TensorFlow eşdeğeri ile çalışıp çalışmadığını test edebilirsiniz. Selam Dünya!

Komut satırından şunu kullanarak yeni bir Python betiği oluşturun nano veya gayret (Hangisini kullanacağınızdan emin değilseniz, ikisinin de avantajları var) ve hatırlaması kolay bir ad verin.

sudo nano tftest.py. 

TensorFlow'u test etmek için Google tarafından sağlanan bu kodu girin:

tensorflow olarak tf. merhaba = tf.constant ('Merhaba, TensorFlow!') sess = tf. Oturum, toplantı, celse() yazdır (sess.run (merhaba))

Nano kullanıyorsanız, tuşuna basarak çıkın Ctrl + X ve yazarak dosyanızı kaydedin Y istendiğinde.

Kodu terminalden çalıştırın:

python3 tftest.py. 

“Merhaba, TensorFlow” yazısını görmelisiniz.

Python 3.5 çalıştırıyorsanız, birkaç çalışma zamanı uyarısı alırsınız. Resmi TensorFlow eğiticileri bunun olduğunu kabul eder ve görmezden gelmenizi önerir.

TensorFlow ve Python3.5 - Göz ardı edilebilir hata

İşe yarıyor! Şimdi TensorFlow ile ilginç bir şeyler yapmak için.

Görüntü Sınıflandırıcıyı Yükleme

Terminalde, ana dizininizdeki proje için bir dizin oluşturun ve bu dizine gidin.

mkdir tf1. cd tf1. 

TensorFlow'un denemek için örnek modelleri olan bir git deposu vardır. Depoyu yeni dizine kopyalayın:

git klonu https://github.com/tensorflow/models.git. 

Şu adreste bulunan resim sınıflandırma örneğini kullanmak istiyorsunuz: Modeller / öğreticiler / resim / IMAGEnet. Şimdi bu klasöre gidin:

cd modelleri / öğreticiler / resim / imagenet. 

Standart görüntü sınıflandırma komut dosyası, sağlanan bir panda görüntüsüyle çalışır:

Küçük Tensör

Standart görüntü sınıflandırıcıyı sağlanan panda görüntüsüyle çalıştırmak için şunu girin:

python3 classify_image.py. 

Bu, bir panda görüntüsünü sinir ağına besler, bu da görüntünün kesinliği için bir değerle ne olduğunu tahmin eder.

TensorFlow Panda Sınıflandırma Çıktısı

Çıktı görüntüsünün gösterdiği gibi, sinir ağı neredeyse yüzde 90 kesinlikte doğru tahmin etti. Ayrıca görüntünün bir muhallebi elması içerebileceğini düşündü, ancak bu cevaptan çok emin değildi.

Özel Bir Görüntü Kullanma

Panda görüntüsü TensorFlow'un işe yaradığını kanıtlıyor, ancak projenin sağladığı örnek göz önüne alındığında belki de şaşırtıcı değil. Daha iyi bir test için, sınıflandırma için sinir ağına kendi görüntünüzü verebilirsiniz.

Bu durumda, TensorFlow sinir ağının George'u tanımlayıp tanımlayamayacağını göreceksiniz.

Dinozor George

George ile tanışın. George bir dinozor. Bu resmi beslemek için (kırpılmış biçimde mevcuttur) buraya), sinir ağı içine, komut dosyasını çalıştırırken argümanlar ekleyin.

python3 classify_image.py --image_file = / home / pi / george.jpg. 

image_file = komut dosyasının adını izlemek, herhangi bir görüntünün yola göre eklenmesine izin verir. Bakalım bu sinir ağı nasıl yaptı.

TensorFlow Dinozor Sınıflandırma Çıktısı

Fena değil! George bir triceratops olmasa da, sinir ağı, görüntüyü diğer seçeneklere kıyasla yüksek derecede kesinliğe sahip bir dinozor olarak sınıflandırdı.

TensorFlow ve Raspberry Pi, Gitmeye Hazır

TensorFlow'un bu temel uygulaması zaten potansiyele sahiptir. Bu nesne tanıma Pi'de gerçekleşiyor ve çalışması için internet bağlantısına gerek yok. Bu, bir ilavesiyle Raspberry Pi kamera modülü ve bir Raspberry Pi uyumlu pil ünitesi, tüm proje taşınabilir olabilir.

Çoğu öğretici yalnızca bir konunun yüzeyini çizer, ancak bu durumdan daha önce hiç bu kadar doğru olmamıştı. Makine öğrenimi inanılmaz derecede yoğun bir konudur.

Bilginizi daha ileri götürmenin bir yolu özel bir ders almak Bu Makine Öğrenimi Kursları Sizin İçin Kariyer Yolu HazırlayacakBu mükemmel çevrimiçi makine öğrenimi kursları, makine öğrenimi ve yapay zeka alanında bir kariyere başlamak için gereken becerileri anlamanıza yardımcı olacaktır. Daha fazla oku . Bu arada, kendiniz deneyebileceğiniz bu TensorFlow projeleriyle makine öğrenimi ve Raspberry Pi ile pratik yapın.

Ian Buckley, Berlin, Almanya'da yaşayan serbest bir gazeteci, müzisyen, sanatçı ve video yapımcısıdır. Yazmadığı veya sahnede olmadığı zaman, çılgın bir bilim adamı olma umuduyla DIY elektroniği veya koduyla uğraşıyor.