Kaynak | Seve
Derleme | Huo Huo Sauce Editor | Carol
Üretildi | AI Teknolojisi Ana Kampı (ID: rgznai100)
Bu eğiticide, Google AutoML'de nasıl tek etiketli sınıflandırma modeli oluşturacağınızı göstereceğim. Generate.photos'tan AI tarafından oluşturulan yüz veri kümesini kullanacağız. Algoritma eğitimi, bir yüzün erkek mi yoksa kadın mı olduğunu belirlemek için kullanılır. Bundan sonra, modeli buluta konuşlandıracağız ve algoritmanın bir web tarayıcısı versiyonunu oluşturacağız.
create.photos:
https://generated.photos/
Etiket alın
Şimdi başlayalım! Öncelikle sınıflandırılacak verilere bakalım. Toplamda yaklaşık 2.000 yüz fotoğrafı var.
Veri indirme bağlantısı:
https://wao.ai/blog/single-label-image-classification-google-automl
Bu yüzlerin sahte olduğuna inanmak zor, değil mi! Öyleyse, şimdi algoritmayı eğitmek için temel gerçeklik etiketlerini alalım. Öncelikle bir resim sınıflandırma işi oluşturun. Bu işlemi hızlı bir şekilde tamamlamak için wao.ai'yi kullanabiliriz.Aşağıdaki video bağlantısından süreci öğrenebilirsiniz.
wao.ai: https://wao.ai/
Video bağlantısı: https://www.youtube.com/watch?v=adjwhyqdXOM
Çalışma tamamlandıktan sonra, kesin doğruluk etiketleri içeren bir CSV dosyası alacağız.
CSV dosyası indirme bağlantısı:
https://wao.ai/blog/single-label-image-classification-google-automl
proje oluştur
Artık Google AutoML'yi kullanmaya başlayabilirsiniz. Ardından, Google AutoML'de bir veri kümesi oluşturacağız ve modelimizi eğitmeye başlayacağız.
Hesabınız yoksa lütfen önce Google Cloud Platform'da bir hesap oluşturun. Ardından yeni bir proje oluşturmamız gerekiyor.
Projeyi oluşturduktan sonra, üstteki kenar çubuğunu veya arama çubuğunu kullanarak Google AutoML'ye gidebiliriz. Bazı API'leri etkinleştirmeniz ve hesap görme işlevini kurmanız gerekebilir ve GCP, süreç boyunca size yol gösterecektir.
Ardından, "Görüntü Sınıflandırma" üzerine tıklayın.
Ardından "Veri Kümesi" arayüzüne gireceğiz. Bu arayüzde, "Yeni Veri Kümesi Oluştur" u tıklayın ve eğitim için veri kümesinin bazı ayrıntılarını girin.
Giriş verilerini formatlama
Şimdi verilerimizi Google Cloud Platform'a koyuyoruz. Tüm veriler GCP grubunda olmalıdır. Veri kümemiz çok büyük olduğu için tarayıcı arayüzü düzgün çalışmıyor.
Ancak, GCP komut satırı aracı normal şekilde çalışmalıdır. Ayrıca Google Cloud SDK'yı (komut satırı araçlarını içeren) yükleyebilirsiniz.
Google Cloud SDK indirme bağlantısı:
https://cloud.google.com/sdk/
Şimdi, dosyaları gruba taşımak için gsutil cp -r yol / to / faces gs: // YOUR_BUCKET / faces'ı çalıştırmamız gerekiyor. YOUR_BUCKET'i sizin için oluşturulan deponun adı ile değiştirdiğinizden emin olun (aşağıdaki ekran görüntüsünde, depo adımın dokuma-icon-263815-vcm)
Daha sonra, kesin referans etiketi CSV'yi wao.ai'den AutoML tarafından beklenen CSV çıktısına dönüştürmemiz gerekiyor.
(Wao.ai: https://wao.ai/)
Orijinal CSV'miz aşağıda gösterilmektedir:
Google AutoML'nin kullanımını kolaylaştırmak için onu şuna dönüştürmemiz gerekir:
Bunu ipython terminalinde Pandas DataFrame kullanarak yaptım (aşağıdaki resimde gösterildiği gibi):
Pandalar: https://pandas.pydata.org/
Veri kümesi oluşturmayı tamamlayın
Artık Google AutoML'nin gerektirdiği biçimde CSV'ye sahip olduğumuza göre, kendi veri kümemizi oluşturmaya hazırız.
Oluşturduğumuz yeni CSV'yi havuzunuza yükleyin ve ardından "Veri Kümesini İçe Aktar" arayüzünde seçin.
Verileri içe aktardıktan sonra, tarayıcıdan tüm resimleri ve etiketleri görüntüleyebilirsiniz.
Bir model oluşturun
Bu bölümde, kullanımı kolay bir API ile GCP üzerinde çalışan bir bulut modeli ve Tensorflow'a aktarılabilen ve yerel veya yerel olarak barındırılan mobil cihazlar ve tarayıcılarda çalıştırılabilen bir Edge modeli oluşturacağız.
1. Bulut modelini eğitin
"TREN" sekmesine gidin ve "EĞİTİMİ BAŞLAT" ı tıklayın. Tüm varsayılan seçenekleri kullandım.
Birkaç saat sonra model tamamlandı ve modelin performansı ve kullanılan bütçe ana hatlarıyla belirlendi (ayırdığım tek şey 16 saatti).
2. "Uç" modeli eğitin (her yerde çalıştırılabilen bir model)
Bir uç modeli oluşturma yöntemi temelde aynıdır, sadece "Bulut" yerine "Kenar" seçeneğine tıklayın. Bir kenar modeli oluştururken hızını veya doğruluğunu optimize edebilirsiniz. Edge modelini bulut modeliyle karşılaştırmak istediğim için doğruluğu optimize etmeye karar verdim.
sonuç
"DEĞERLENDİR" sekmesinde modelin yürütme etkisini görebiliriz. Bulut modelinin doğruluğu% 94,5'tir. Kenar modelinin doğruluğu% 95,5'tir. Beni şaşırtan şey, bulut modelinin performansının özellikle yüksek eğitim maliyeti düşünüldüğünde biraz daha kötü olmasıydı!
Genel olarak, her iki modelin performansından çok memnunum. Karışıklık matrisinden bulut modelinin erkekleri tahmin etmede daha fazla hata yaptığı, uç modelin hata oranının ise daha tekdüze olduğu görülmektedir.
Bulut modeli performansı
Aşağıdaki ekran görüntüsünde, bulut modelinin karışıklık matrisini ve AutoML tarafından raporlanan bazı istatistikleri görebilirsiniz. Kadınları tahmin etmede erkeklerden biraz daha iyidir.
Edge modeli performansı
Aşağıdaki ekran görüntüsünde, uç modelin kafa karışıklığı matrisini ve AutoML tarafından raporlanan bazı istatistikleri görebilirsiniz. Edge modeli erkekleri tahmin etmede biraz daha iyidir!
Kenar çantası
Google AutoML, modelin nerede iyi performans gösterdiğine ve nerede yanlış gittiğine dair bir döküm sağlar. Keras modelim gibi, çocuklar ve alışılmadık yüz açıları bir problemdir. Yanlış pozitiflerin örnekleri aşağıdaki ekran görüntüsünde gösterilmektedir.
Dağıtım modeli
Tatmin edici bir model elde ettiğimize göre, şimdi uygulama zamanı! Bulut modelimiz GCP'de dağıtılabilir ve Edge modeli Tensorflow ile indirilip çalıştırılabilir. Bulut modellerinin ve uç modellerin dağıtımını birlikte inceleyelim.
Bulut dağıtımı
"TEST EDİN VE KULLAN" sekmesine gidin ve "MODELİNİ AÇ" düğmesini tıklayın. Test amacıyla, yalnızca bir düğüme konuşlandırmaya karar verdim. Modeli dağıtmak yaklaşık bir saat sürer.
Bulut modeli, basit bir JSON nesnesi yükleyebileceğiniz ve dönüş olasılıklarına sahip bir dizi tahmin alabileceğiniz, kullanımı kolay bir API sunar. Benim için bu basit ve mükemmel bir şekilde entegre edilmiş bir API.
API'yi doğrudan tarayıcıda da kullanabilir ve sonuçları kontrol edebiliriz. Eğitim setinden bazı yüz fotoğrafları yükledim ve güzel görünüyor! Genel olarak, arka planda bulut örneklerini çalıştırma yeteneğiniz varsa, bunun kullanımı çok kolay bir API olduğunu düşünüyorum.
Edge dağıtımı
Uç dağıtımı için, modelleri indirmenin birden çok yolu var. Her yöntem çok güçlüdür:
TF Lite: modelleri mobil cihazlarda çalıştırmanıza izin verir
(TF Lite: https://www.tensorflow.org/lite)
TensorFlow.js: modeli bir web tarayıcısında çalıştırmanıza olanak tanır
(TensorFlow.js: https://www.tensorflow.org/js)
Core ML: Apple cihazlarda modelleri çalıştırmanıza izin verir
(Çekirdek ML: https://developer.apple.com/documentation/coreml)
Container: Docker container'larında modeller çalıştırmanıza olanak tanır (web sunucuları için mükemmel)
(Kapsayıcı: https://www.docker.com/resources/what-container)
Tensorflow.js modelini indirdim ve Edge modeli ve web kamerasını kullanarak bir demo oluşturdum. Not: Bu model resimlerinizi sunucuya yüklemeyecektir, tüm içerik yerel olarak çalışır!
(Demo gösteri bağlantısı: https://wao.ai/blog/can-ai-guess-our-sex)
Sonuç
Sonuç olarak, Google AutoML'nin kullanımı kolaydır ve bu görev için çok etkilidir. Nasıl karşılaştırdıklarını görmek için diğer bulut sağlayıcılarını denemeyi dört gözle bekliyorum!
orijinal:
https://hackernoon.com/image-classification-model-with-google-automl-a-how-to-guide-wa7n3b6n
Bu makale bir CSDN çevirisidir, lütfen yeniden basımın kaynağını belirtin.