Bilgisayarla görme, AWS Panorama ve Amazon SageMaker ile Tyson'da endüstriyel otomasyon

Kaynak Düğüm: 1575225

Bu, Tyson Foods, Inc.'in yapay zeka uygulamalarının faydalarını uç noktaya getirerek et paketleme tesislerinde endüstriyel süreçleri otomatikleştirmek için Amazon SageMaker ve AWS Panorama'yı nasıl kullandığına ilişkin iki bölümlük bir blog serisinin ilki. Birinci bölümde, paketleme hatları için bir stok sayımı uygulamasını tartışıyoruz. İkinci bölümde, endüstriyel ekipmanın kestirimci bakımı için uçta vizyon tabanlı bir anormallik algılama çözümünü tartışıyoruz.

Dünyanın en büyük tavuk, sığır eti ve domuz eti işleyicilerinden ve pazarlamacılarından biri olarak, Tyson Foods, Inc., üretim ve paketleme tesislerine yenilikçi çözümler getirmesiyle tanınmaktadır. Şubat 2020'de Tyson açıkladı Tavuk fabrikalarına Computer Vision (CV) getirme planı ve envanter yönetimi konusundaki çabalara öncülük etmek için AWS ile bir pilot çalışma başlattı. Tyson ile işbirliği yaptı Amazon ML Çözümleri Laboratuvarı paketlenmiş envanter seviyelerine ilişkin gerçek zamanlı bilgiler sağlayan son teknoloji bir tavuk tepsisi sayma CV çözümü oluşturmak. Bu gönderide, AWS mimarisine genel bir bakış ve Tyson'ın tesisinde kurulan tepsi sayma boru hattındaki temel bileşenleri göstermek için çözümün eksiksiz bir incelemesini sunuyoruz. CV modellerinin uçta veri toplama ve etiketleme, eğitim ve dağıtımına odaklanacağız. Amazon Adaçayı Yapıcı, Apache MXNet Tutkal, ve AWS Panoraması.

Operasyonel mükemmellik, Tyson Foods'ta kilit bir önceliktir. Tyson, paketleme hatlarında sıkı kalite güvencesi (QA) önlemleri uygulayarak, yalnızca kalite kontrol protokollerini geçen paketlenmiş ürünlerin müşterilerine gönderilmesini sağlar. Müşteri talebini karşılamak ve herhangi bir üretim sorununun önüne geçmek için Tyson, paketlenmiş tavuk tepsisi sayılarını yakından takip eder. Bununla birlikte, QA'dan geçen tavuk tepsilerini saymak için mevcut manuel teknikler doğru değildir ve fazla/eksik üretim seviyelerinin net bir resmini sunmaz. Raf başına üretimin saatlik toplam ağırlığını izlemek gibi alternatif stratejiler, tesis çalışanlarına anında geri bildirim sağlamaz. Haftada 45,000,000 baş tavuk işleme kapasitesi ile üretim doğruluğu ve verimliliği Tyson'ın işi için kritik öneme sahiptir. CV, gerçek zamanlı olarak işlenen tavuk miktarını doğru bir şekilde tahmin etmek için bu tür senaryolarda etkin bir şekilde kullanılabilir ve çalışanların paketleme ve üretim hatlarındaki olası darboğazları ortaya çıktıkça belirlemelerini sağlar. Bu, düzeltici önlemlerin uygulanmasını sağlar ve üretim verimliliğini artırır.

CV uygulamaları için şirket içi video akışlarının bulutta akışı ve işlenmesi, yüksek ağ bant genişliği ve ilgili altyapının sağlanmasını gerektirir. Bu maliyet engelleyici bir görev olabilir. AWS Panorama, bu gereksinimleri ortadan kaldırır ve Tyson'ın video akışlarını AWS Panorama Appliance üzerinde uçta işlemesine olanak tanır. Uçtaki cihazları ve uygulamaları yönetmek için kullanımı kolay bir arayüz sağlarken, buluta/buluttan gecikmeyi ve bant genişliği maliyetlerini azaltır.

Nesne algılama, resim ve videolardaki nesnelerin konumunu belirleyebilen en yaygın kullanılan CV algoritmalarından biridir. Bu teknoloji şu anda, diğerlerinin yanı sıra, otonom araçlarda yayaları tespit etmek, tıbbi taramalarda tümörleri tespit etmek, perakende satış alanlarında yayaları izlemek için insan sayma sistemleri gibi çeşitli gerçek hayat uygulamalarında kullanılmaktadır. Tyson için et tepsisi sayımı gibi envanter yönetimi kullanım durumları için üretim süreçleri, maliyet tasarrufu ve müşteri gönderilerinin zamanında teslimi ile bir geri bildirim döngüsü oluşturarak israfı azaltmak da çok önemlidir.

Bu blog gönderisinin aşağıdaki bölümleri, Amazon SageMaker kullanarak bir nesne algılama modelini eğitmek için Tyson Foods tesislerinden birinden canlı akış videolarını nasıl kullandığımızı özetlemektedir. Ardından, AWS Panorama cihazıyla uçta devreye alıyoruz.

AWS Panoraması

AWS Panorama, kuruluşların yüksek doğruluk ve düşük gecikmeyle yerel olarak tahminler yapmak için özgeçmişlerini şirket içi kameralara getirmesine olanak tanıyan bir makine öğrenimi (ML) cihazıdır. AWS Panorama Appliance, video akışlarından veri toplamak, metin ve grafik katmanlarla video çıkışı sağlamak ve diğer AWS hizmetleriyle etkileşim kurmak için makine öğrenimi kullanan uygulamaları çalıştırmanıza olanak tanıyan bir donanım aygıtıdır. Cihaz, birden çok video akışına karşı birden çok CV modelini paralel olarak çalıştırabilir ve sonuçları gerçek zamanlı olarak verebilir. Ticari ve endüstriyel ortamlarda kullanılmak üzere tasarlanmıştır.

AWS Panorama Appliance, görüntüleri AWS Cloud'a göndermeden uçta bağımsız CV uygulamalarını çalıştırmanıza olanak tanır. AWS SDK'yı AWS Panorama Appliance'ta diğer AWS hizmetleriyle entegre etmek ve bunları uygulamadan zaman içinde verileri izlemek için de kullanabilirsiniz. Uygulamaları oluşturmak ve dağıtmak için AWS Panorama Uygulaması CLI'sini kullanırsınız. CLI, varsayılan uygulama klasörleri ve yapılandırma dosyaları oluşturan, Docker ile kapsayıcılar oluşturan ve varlıkları karşıya yükleyen bir komut satırı aracıdır.

AWS Panorama, şunlarla oluşturulmuş modelleri destekler: Apache MX Ağı, Darknet, GluonCV, keras, Onnx, PyTorch, TensorFlow, ve TensorFlow Lite. Bakın Re-Tweet AWS Panorama'da uygulama oluşturma hakkında daha fazla bilgi edinmek için blog gönderisi. Dağıtım işlemi sırasında AWS Panorama, uç platformuna özel modeli aşağıdakiler aracılığıyla derlemeye özen gösterir: Amazon SageMaker Neo derlemesi. Çıkarım sonuçları, Amazon S3, Amazon CloudWatch gibi AWS hizmetlerine yönlendirilebilir veya şirket içi iş kolu uygulamalarıyla entegre edilebilir. Dağıtım günlükleri Amazon CloudWatch'ta depolanır.

Çıkarım komut dosyası mantığındaki veya eğitilmiş modeldeki herhangi bir değişikliği izlemek için uygulamanın yeni bir sürümü oluşturulabilir. Uygulama sürümleri bir uygulamanın yapılandırmasının değişmez anlık görüntüleridir. AWS Panorama, başarılı olmayan güncellemeleri geri alabilmeniz veya farklı cihazlarda farklı sürümleri çalıştırabilmeniz için uygulamalarınızın önceki sürümlerini kaydeder.

Daha fazla bilgi için, bkz. AWS Panorama sayfası. Örnek uygulamalar oluşturma hakkında daha fazla bilgi için bkz. AWS Panorama Örnekleri.

Yaklaşım

Bir fabrika çalışanı, önceki şekilde gösterildiği gibi, paketlenmiş tavuk tepsilerini sürekli olarak plastik bidonlara doldurur ve zaman içinde istifler. Dikey olarak istiflenmiş tüm kutulardaki toplam tepsi sayısını tespit edebilmek ve sayabilmek istiyoruz.

Eğitimli bir nesne algılama modeli, her video karesinde bir kutuya yerleştirilen tüm tepsilerin sınırlayıcı kutularını tahmin edebilir. Bu, belirli bir durumda bir kutudaki tepsi sayılarını ölçmek için kullanılabilir. Ayrıca herhangi bir zamanda yalnızca bir kutunun paketlenmiş tepsilerle doldurulduğunu da biliyoruz; tepsi, yüksekten (doldurma sırasında) alçağa (yeni bir hazne, doldurulmuş haznenin görünümünü engellediğinde) sürekli olarak salınım yapar.

Bu bilgiyle, toplam tavuk tepsisi sayısını saymak için aşağıdaki stratejiyi benimsiyoruz:

  1. Yerel ve küresel olmak üzere iki farklı sayacı koruyun. Global sayaç, toplam tepsileri bölmede tutar ve yerel sayaç, yeni bir bölmeye yerleştirilen maksimum tepsi sayısını saklar.
  2. Bölmeye yeni tepsiler yerleştirildiğinde yerel sayacı güncelleyin.
  3. Yeni bir bin olayını aşağıdaki yollarla tespit edin:
    1. Belirli bir çerçevedeki tepsi sayısı sıfıra gider. (veya)
    2. Sondaki tepsi numaralarının akışı n kareler sürekli düşüyor.
  4. Yeni bin olayı algılandığında, yerel sayaç değerini global sayaca ekleyin.
  5. Yerel sayacı sıfırlayın.

Bu algoritmayı birkaç saatlik video üzerinde test ettik ve tutarlı sonuçlar elde ettik.

Amazon SageMaker ile bir nesne algılama modeli eğitimi

Veri kümesi oluşturma:

Etiketleme işleri için yeni görüntüler yakalama

Etiketleme işleri için yeni görüntüler yakalama

AWS Panorama Appliance'ı kullanarak paketleme hattından görüntü örnekleri topladık. Görüntüleri işlemek ve kaydetmek için kullanılan komut dosyası, bir uygulama olarak paketlendi ve AWS Panorama'da dağıtıldı. Uygulama, paketleme bölgesinin yakınında kurulmuş bir şirket içi kameradan video kareleri toplar ve bunları 60 saniyelik aralıklarla bir Amazon S3 Kova; bu, video dizisinde birkaç saniye arayla benzer görüntülerin yakalanmasını önler. Ayrıca, kullanım durumuyla ilgili olmayan görüntüdeki bitişik bölgeleri de maskeleriz.

Tavuk tepsilerini sınırlayıcı kutularla etiketledik. Amazon SageMaker Temel Gerçeği akış etiketleme işi. Ayrıca, yayınlayan bir Amazon S3 Etkinlik bildirimi oluşturduk. nesne tarafından oluşturulan olaylar Bir için Amazon Basit Bildirim Servisi (SNS) konusu, etiketleme işi için giriş kaynağı görevi görür. AWS Panorama uygulama komut dosyası bir görüntüyü bir S3 klasörüne kaydettiğinde, SNS konusuna bir olay bildirimi yayınlanır ve ardından bu görüntü etiketleme işine gönderilir. Anlatıcılar gelen her görüntüyü etiketledikçe, Ground Truth etiketleri görüntünün S3 yolunu ve tavuk tepsisi sınırlayıcı kutularının koordinatlarını içeren bir bildirim dosyasına kaydeder.

Modeli gerçek hayattaki değişikliklere karşı sağlam kılmak için etiketli görüntüler üzerinde çeşitli veri büyütmeleri (örneğin: rastgele gürültü, rastgele kontrast ve parlaklık, kanal karıştırma) gerçekleştiririz. Orijinal ve artırılmış görüntüler, birleşik bir veri kümesi oluşturmak için birleştirildi.

Model Eğitimi:

Etiketleme işi tamamlandığında, manuel olarak bir AWS Lambda işlev. Bu Lambda işlevi, çıktı bildirimindeki görüntüleri ve bunlara karşılık gelen etiketleri bir LST dosyası. Eğitim ve test dosyalarımız, değerlendirmede herhangi bir veri sızıntısını önlemek için farklı paketleme hatlarından toplanan görüntülere sahipti. Lambda işlevi daha sonra bir Amazon SageMaker eğitim işini tetikler.

Biz kullanmak SageMaker Komut Dosyası ModuBu, Amazon SageMaker'ın kullanıcı dostu sınırları içinde kalırken kendi eğitim algoritmalarınızı getirmenize ve modelleri doğrudan eğitmenize olanak tanır. SSD, Yolo-v3 (gerçek zamanlı çıkarım gecikmesi için) gibi modelleri çeşitli omurga ağ kombinasyonlarıyla eğitiyoruz. Nesne algılama için GluonCV Model Zoo komut dosyası modunda. Sinir ağları, eğitim verilerine fazla uyma eğilimine sahiptir ve bu da örneklem dışı kötü sonuçlara yol açar. GluonCV, eğitim sırasında fazla takmayı azaltmaya yardımcı olmak için rastgele görüntü çevirme ve kırpma gibi görüntü normalleştirme ve görüntü büyütme sağlar. bu model eğitim kodu kapsayıcıdır ve AWS Elastic Container Registry'deki Docker görüntüsünü kullanır. Eğitim işi, S3 görüntü klasörünü ve LST dosya yollarını girdi olarak alır ve en iyi model yapaylığını kaydeder (.paramlar ve .json) tamamlandıktan sonra S3'e.

Model Değerlendirme Hattı

Model Değerlendirme Hattı

Test setimize göre ilk 2 model şunlardı: SSD-resnet50 ve Yolov3-darketnet53, her biri 0.91 mAP puanı ile. Ayrıca, eğitilen modelle birlikte AWS Panorama cihazında bir çıkarım uygulaması dağıtarak gerçek dünya testleri gerçekleştirdik. Çıkarım komut dosyası, tahminleri ve video karelerini bir Amazon S3 klasörüne kaydeder. Temel gerçeği açıklamak için başka bir SageMaker Temel Gerçeği işi oluşturduk ve ardından ek nicel model değerlendirmesi gerçekleştirdik. Görüntülerdeki temel gerçek ve öngörülen sınırlayıcı kutu etiketleri, nitel değerlendirme için S3'e kaydedildi. Modeller, gerçek dünya verileri üzerinde genelleme yapabildi ve test setimize benzer tutarlı performans sağladı.

Amazon SageMaker'da özel eğitim işleri oluşturma, son teknoloji nesne algılama modellerini eğitme, Hiperparametre Optimizasyonu (HPO) uygulama ve model dağıtımına ilişkin eksiksiz, uçtan uca örnekleri şu adreste bulabilirsiniz: AWS Labs GitHub deposu.

Et tepsisi sayma uygulamasını dağıtma

Üretim Mimarisi

Üretim Mimarisi

Dağıtımdan önce, model, çıkarım komut dosyası, kamera ve global değişken yapılandırması gibi tüm varlıklarımızı, aşağıdaki bölümde belirtildiği gibi tek bir kapsayıcıda paketliyoruz. Bu blog yazısı. Sürekli entegrasyon ve sürekli dağıtım (CI/CD) ardışık düzenimiz, çıkarım komut dosyasındaki herhangi bir değişikliği yeni bir uygulama sürümü olarak günceller. Yeni uygulama sürümü yayınlandıktan sonra, onu Python'da boto3 SDK kullanarak programlı olarak dağıtıyoruz.

Uygulama dağıtımının ardından AWS Panorama, önce AWS Panorama cihazının modelini derlemek için bir AWS SageMaker Neo Derleme işi oluşturur. Çıkarım uygulama komut dosyası, cihazdaki derlenmiş modeli içe aktarır ve her karede tavuk tepsisi algılaması gerçekleştirir. SageMaker Neo-Compilation'a ek olarak, bir ekleyerek eğitim sonrası nicelemeyi etkinleştirdik. os.environ['TVM_TENSORRT_USE_FP16'] = '1' komut dosyasında bayrak. Bu, model ağırlıklarının boyutunu float 32'den float 16'ya düşürür, model boyutunu yarı yarıya azaltır ve performansta düşüş olmadan gecikmeyi iyileştirir. Çıkarım sonuçları şurada yakalanır: AWS SiteWise İzleyici aracılığıyla AWS Panorama cihazından MQTT mesajları aracılığıyla AWS IoT çekirdeği. Sonuçlar daha sonra Amazon S3'e aktarılır ve şurada görselleştirilir: Amazon QuickSight Panolar. Tesis yöneticileri ve çalışanları, her paketleme hattının çıktısını gerçek zamanlı olarak anlamak için bu panoları doğrudan görüntüleyebilir.

Sonuç

Amazon SageMaker, Amazon S3 gibi AWS Bulut hizmetini ve AWS Panorama gibi uç hizmetleri bir araya getiren Tyson Foods Inc., üretim tesislerinde envanter sayımı gibi insan yoğun endüstriyel süreçleri otomatikleştirmek için yapay zekayı kullanıyor. Gerçek zamanlı uç çıkarım yetenekleri, Tyson'ın fazla/eksik üretimi belirlemesine ve verimliliği en üst düzeye çıkarmak için üretim akışlarını dinamik olarak ayarlamasına olanak tanır. Ayrıca, uçta AWS Panorama cihazına sahip olan Tyson, video dosyalarını buluta aktarmak için pahalı ağ bant genişliği ile ilişkili maliyetlerden de tasarruf edebiliyor ve artık tüm video/görüntü varlıklarını ağlarında yerel olarak işleyebiliyor.

Bu blog gönderisi, AWS Panorama ile bir CV uygulaması geliştirmek için size uç uç uygulamalara genel bir bakış ve referans mimarileri sunar. Edge CV uygulaması oluşturmanın 3 farklı yönünü tartıştık.

  1. Veri: AWS Panorama ve Amazon SageMaker Ground Truth kullanılarak veri toplama, işleme ve etiketleme.
  2. Model: Amazon SageMaker ve AWS Lambda kullanarak model eğitimi ve değerlendirmesi
  3. Uygulama paketi: AWS Panorama için eğitimli model, komut dosyaları ve yapılandırma dosyalarının paketlenmesi.

Tyson'ın endüstriyel makinelerin CV tabanlı kestirimci bakımı için AWS Panorama'yı nasıl kullandığına ilişkin bu dizinin ikinci bölümü için bizi izlemeye devam edin.

Tıkla okuyun AWS Panorama ile yolculuğunuza başlamak için ML Solutions Lab ile işbirliği yapma hakkında daha fazla bilgi edinmek için bkz. Amazon Makine Öğrenimi Çözümleri Laboratuvarı.


Yazarlar Hakkında

Divya Bhargavi şirketinde veri bilimcisi Amazon ML Çözümleri Laboratuvarı burada çeşitli sektörlerde müşterilerle çalışıyor ve son teknoloji makine öğrenimi/yapay zeka çözümleriyle müşteriler için değer yaratmak için yaratıcı problem çözmeyi uyguluyor.

Dilip Subramaniam Tyson Foods'da Gelişen Teknolojiler ekibinde Kıdemli Geliştiricidir. Yazılım Geliştirme, Makine Öğrenimi ve Büyük Veri alanındaki bilgilerini kullanarak iş sorunlarını çözmek ve süreçleri basitleştirmek için büyük ölçekli dağıtılmış uygulamalar oluşturma konusunda tutkulu.

Kaynak: https://aws.amazon.com/blogs/machine-learning/industrial-automation-at-tyson-with-computer-vision-aws-panorama-and-amazon-sagemaker/

Zaman Damgası:

Den fazla AWS Makine Öğrenimi Blogu