الأتمتة الصناعية في Tyson مع رؤية الكمبيوتر و AWS Panorama و Amazon SageMaker

عقدة المصدر: 1575225

هذه هي المقالة الأولى في سلسلة مدونات من جزأين حول كيفية استخدام شركة Tyson Foods, Inc.‎ لـ Amazon SageMaker وAWS Panorama لأتمتة العمليات الصناعية في مصانع تعبئة اللحوم الخاصة بها من خلال جلب فوائد تطبيقات الذكاء الاصطناعي إلى الحافة. في الجزء الأول، نناقش تطبيق الجرد المخزون لخطوط التعبئة والتغليف. في الجزء الثاني، نناقش حل الكشف عن الحالات الشاذة القائم على الرؤية عند الحافة للصيانة التنبؤية للمعدات الصناعية.

باعتبارها واحدة من أكبر الشركات المصنعة والمسوقة للدجاج ولحم البقر ولحم الخنزير في العالم، شركة تايسون فودز، معروفة بتقديم حلول مبتكرة لمصانع الإنتاج والتعبئة الخاصة بها. في فبراير 2020، تايسون أعلن خطتها لجلب رؤية الكمبيوتر (CV) إلى مصانع الدواجن الخاصة بها وأطلقت تجربة مع AWS لريادة الجهود في إدارة المخزون. تعاون تايسون مع مختبر أمازون ML Solutions لإنشاء حل متطور لحساب السيرة الذاتية لصينية الدجاج والذي يوفر رؤى في الوقت الفعلي لمستويات المخزون المعبأة. في هذا المنشور، نقدم نظرة عامة على بنية AWS وشرحًا تفصيليًا كاملاً للحل لتوضيح المكونات الرئيسية في مسار عد الأدراج الذي تم إعداده في مصنع تايسون. سنركز على جمع البيانات ووضع العلامات عليها وتدريبها ونشر نماذج السيرة الذاتية على الحافة باستخدامها الأمازون SageMaker, اباتشي MXNet Gluonو أوس بانوراما.

يعد التميز التشغيلي أولوية رئيسية في Tyson Foods. تستخدم شركة Tyson إجراءات صارمة لضمان الجودة (QA) في خطوط التعبئة والتغليف الخاصة بها، مما يضمن شحن المنتجات المعبأة التي تجتاز بروتوكولات مراقبة الجودة الخاصة بها إلى عملائها فقط. من أجل تلبية طلب العملاء والبقاء في صدارة أي مشكلة تتعلق بالإنتاج، تقوم شركة Tyson بمراقبة أعداد صواني الدجاج المعبأة عن كثب. ومع ذلك، فإن التقنيات اليدوية الحالية لحساب صواني الدجاج التي تجتاز ضمان الجودة ليست دقيقة ولا تقدم صورة واضحة عن مستويات الإنتاج الزائدة/الناقصة. لا توفر الاستراتيجيات البديلة، مثل مراقبة الوزن الإجمالي للإنتاج لكل رف، تعليقات فورية لموظفي المصنع. مع قدرة معالجة دجاج تبلغ 45,000,000 رأس أسبوعيًا، تعد دقة الإنتاج وكفاءته أمرًا بالغ الأهمية لأعمال تايسون. يمكن استخدام السيرة الذاتية بشكل فعال في مثل هذه السيناريوهات لتقدير كمية الدجاج المعالجة بدقة في الوقت الفعلي، وتمكين الموظفين من تحديد الاختناقات المحتملة في خطوط التعبئة والتغليف والإنتاج عند حدوثها. وهذا يتيح تنفيذ التدابير التصحيحية ويحسن كفاءة الإنتاج.

يتطلب دفق ومعالجة تدفقات الفيديو المحلية في السحابة لتطبيقات السيرة الذاتية نطاقًا تردديًا عاليًا للشبكة وتوفير البنية التحتية ذات الصلة. يمكن أن تكون هذه مهمة باهظة التكلفة. يزيل AWS Panorama هذه المتطلبات ويمكّن Tyson من معالجة تدفقات الفيديو على الحافة على جهاز AWS Panorama. فهو يقلل من زمن الوصول إلى/من السحابة وتكاليف النطاق الترددي، مع توفير واجهة سهلة الاستخدام لإدارة الأجهزة والتطبيقات على الحافة.

يعد اكتشاف الكائنات أحد خوارزميات السيرة الذاتية الأكثر استخدامًا والتي يمكنها تحديد موضع الكائنات في الصور ومقاطع الفيديو. يتم استخدام هذه التكنولوجيا حاليًا في العديد من تطبيقات الحياة الواقعية مثل اكتشاف المشاة في المركبات ذاتية القيادة، والكشف عن الأورام في عمليات الفحص الطبي، وأنظمة عد الأشخاص لمراقبة الأقدام في مساحات البيع بالتجزئة، وغيرها. من المهم أيضًا بالنسبة لحالات استخدام إدارة المخزون، مثل عد صينية اللحوم لـ Tyson، تقليل الهدر عن طريق إنشاء حلقة تعليقات مع عمليات الإنتاج، وتوفير التكاليف، وتسليم شحنات العملاء في الوقت المحدد.

توضح الأقسام التالية من منشور المدونة هذا كيفية استخدامنا لمقاطع الفيديو المباشرة من أحد مصانع Tyson Foods لتدريب نموذج اكتشاف الكائنات باستخدام Amazon SageMaker. ثم نقوم بنشره على الحافة باستخدام جهاز AWS Panorama.

أوس بانوراما

AWS Panorama هو أحد أجهزة التعلم الآلي (ML) الذي يسمح للمؤسسات بإحضار السيرة الذاتية إلى الكاميرات الموجودة في مكان العمل لإجراء تنبؤات محليًا بدقة عالية وزمن وصول منخفض. جهاز AWS Panorama هو جهاز يسمح لك بتشغيل التطبيقات التي تستخدم التعلم الآلي لجمع البيانات من تدفقات الفيديو، وإخراج الفيديو مع تراكبات نصية ورسومية، والتفاعل مع خدمات AWS الأخرى. يمكن للجهاز تشغيل نماذج السيرة الذاتية المتعددة مقابل تدفقات فيديو متعددة بالتوازي وإخراج النتائج في الوقت الفعلي. وهي مصممة للاستخدام في البيئات التجارية والصناعية.

يمكّنك جهاز AWS Panorama من تشغيل تطبيقات السيرة الذاتية المستقلة على الحافة، دون إرسال الصور إلى سحابة AWS. يمكنك أيضًا استخدام AWS SDK على جهاز AWS Panorama للتكامل مع خدمات AWS الأخرى واستخدامها لتتبع البيانات من التطبيق بمرور الوقت. لإنشاء التطبيقات ونشرها، يمكنك استخدام AWS Panorama Application CLI. واجهة سطر الأوامر (CLI) هي أداة سطر أوامر تقوم بإنشاء مجلدات التطبيق الافتراضية وملفات التكوين، وإنشاء حاويات باستخدام Docker، وتحميل الأصول.

يدعم AWS Panorama النماذج التي تم إنشاؤها باستخدام أباتشي MXNet, داركنت, جلوون سي في, Keras, أونكس, PyTorch, TensorFlowو TensorFlow لايت. تشير إلى منشور مدونة لمعرفة المزيد حول إنشاء التطبيقات على AWS Panorama. أثناء عملية النشر، تعتني AWS Panorama بتجميع النموذج الخاص بالمنصة الطرفية من خلالها تجميع أمازون SageMaker Neo. يمكن توجيه نتائج الاستدلال إلى خدمات AWS مثل Amazon S3 أو Amazon CloudWatch أو دمجها مع تطبيقات خط الأعمال المحلية. يتم تخزين سجلات النشر في Amazon CloudWatch.

لتتبع أي تغيير في منطق البرنامج النصي للاستدلال أو النموذج المدرّب، يمكن للمرء إنشاء إصدار جديد من التطبيق. إصدارات التطبيق هي لقطات غير قابلة للتغيير لتكوين التطبيق. يحفظ AWS Panorama الإصدارات السابقة من تطبيقاتك حتى تتمكن من التراجع عن التحديثات غير الناجحة، أو تشغيل إصدارات مختلفة على أجهزة مختلفة.

لمزيد من المعلومات، يرجى الرجوع إلى صفحة بانوراما AWS. لمعرفة المزيد حول إنشاء نماذج التطبيقات، راجع عينات بانوراما AWS.

الرسالة

يقوم أحد موظفي المصنع بملء صواني الدجاج المعبأة بشكل مستمر في صناديق بلاستيكية ثم يقوم بتكديسها مع مرور الوقت، كما هو موضح في الشكل السابق. نريد أن نكون قادرين على اكتشاف وحساب العدد الإجمالي للأدراج في جميع الصناديق المكدسة رأسيًا.

يمكن لنموذج الكشف عن الكائنات المدرب أن يتنبأ بالمربعات المحيطة بجميع الأدراج الموضوعة في سلة المهملات في كل إطار فيديو. يمكن استخدام هذا لقياس عدد الأدراج في سلة المهملات في حالة معينة. ونعلم أيضًا أنه في أي وقت من الأوقات، يتم ملء حاوية واحدة فقط بالصواني المعبأة؛ يتأرجح عدد الدرج بشكل مستمر من الأعلى (أثناء التعبئة) إلى المنخفض (عندما يعيق صندوق جديد رؤية الصندوق المملوء).

بهذه المعرفة، نعتمد الإستراتيجية التالية لحساب العدد الإجمالي لصواني الدجاج:

  1. الحفاظ على عدادين مختلفين – محليًا وعالميًا. يحافظ العداد العالمي على إجمالي الصواني التي تم التخلص منها ويقوم العداد المحلي بتخزين الحد الأقصى لعدد الصواني الموضوعة في سلة المهملات الجديدة.
  2. قم بتحديث العداد المحلي حيث يتم وضع أدراج جديدة في سلة المهملات.
  3. اكتشف حدث حاوية جديد بالطرق التالية:
    1. يصل عدد الدرج في إطار معين إلى الصفر. (أو)
    2. دفق أرقام الدرج في الأخير n الإطارات تنخفض بشكل مستمر.
  4. بمجرد اكتشاف حدث الحاوية الجديد، قم بإضافة قيمة العداد المحلي إلى العداد العالمي.
  5. إعادة ضبط العداد المحلي إلى الصفر.

لقد اختبرنا هذه الخوارزمية على عدة ساعات من الفيديو وحصلنا على نتائج متسقة.

تدريب نموذج الكشف عن الكائنات باستخدام Amazon SageMaker

إنشاء مجموعة البيانات:

التقاط صور جديدة لوضع العلامات على الوظائف

التقاط صور جديدة لوضع العلامات على الوظائف

قمنا بجمع عينات الصور من خط التعبئة والتغليف باستخدام جهاز AWS Panorama. تم تجميع البرنامج النصي لمعالجة الصور وحفظها كتطبيق ونشره على AWS Panorama. يجمع التطبيق إطارات الفيديو من كاميرا داخلية تم إعدادها بالقرب من منطقة التغليف ويحفظها بفواصل زمنية مدتها 60 ثانية إلى الأمازون S3 دلو؛ وهذا يمنع التقاط صور مماثلة في تسلسل الفيديو الذي تفصله بضع ثوانٍ. نقوم أيضًا بإخفاء المناطق المجاورة في الصورة والتي لا تتعلق بحالة الاستخدام.

قمنا بتسمية صواني الدجاج بصناديق محيطة باستخدام Amazon SageMaker Ground Truth وظيفة وضع العلامات المتدفقة. قمنا أيضًا بإعداد إشعار لحدث Amazon S3 يتم نشره الأحداث التي تم إنشاؤها بواسطة الكائن إلى خدمة إعلام أمازون البسيطة موضوع (SNS)، الذي يعمل كمصدر إدخال لمهمة وضع العلامات. عندما يحفظ البرنامج النصي لتطبيق AWS Panorama صورة في حاوية S3، يتم نشر إشعار بالحدث إلى موضوع SNS، والذي يرسل بعد ذلك هذه الصورة إلى مهمة التصنيف. أثناء قيام المعلقين بتسمية كل صورة واردة، تقوم Ground Truth بحفظ التسميات في ملف بيان، والذي يحتوي على مسار S3 للصورة بالإضافة إلى إحداثيات الصناديق المحيطة بصينية الدجاج.

نقوم بإجراء العديد من عمليات تكبير البيانات (على سبيل المثال: الضوضاء العشوائية، والتباين والسطوع العشوائي، وخلط القنوات) على الصور المُسمى لجعل النموذج قويًا للتغيرات في الحياة الواقعية. تم دمج الصور الأصلية والمعززة لتشكيل مجموعة بيانات موحدة.

تدريب النموذج:

بمجرد اكتمال مهمة وضع العلامات، نقوم يدويًا بتشغيل ملف AWS لامدا وظيفة. تعمل وظيفة Lambda هذه على تجميع الصور والتسميات المقابلة لها من بيان الإخراج في ملف ملف LST. تحتوي ملفات التدريب والاختبار لدينا على صور تم جمعها من خطوط تعبئة مختلفة لمنع أي تسرب للبيانات في التقييم. تقوم وظيفة Lambda بعد ذلك بتشغيل مهمة تدريب Amazon SageMaker.

نستخدم وضع البرنامج النصي SageMaker، والذي يسمح لك بإحضار خوارزميات التدريب الخاصة بك وتدريب النماذج مباشرة مع البقاء ضمن حدود Amazon SageMaker سهلة الاستخدام. نقوم بتدريب نماذج مثل SSD وYolo-v3 (لزمن وصول الاستدلال في الوقت الفعلي) مع مجموعات مختلفة من الشبكات الأساسية من GluonCV Model Zoo للكشف عن الكائنات في وضع البرنامج النصي. تميل الشبكات العصبية إلى الإفراط في استيعاب بيانات التدريب، مما يؤدي إلى نتائج سيئة خارج العينة. يوفر GluonCV تسوية الصورة وتعزيزاتها، مثل التقليب العشوائي للصور واقتصاصها، للمساعدة في تقليل التناسب الزائد أثناء التدريب. ال كود التدريب النموذجي يتم وضعه في حاوية ويستخدم صورة Docker في AWS Elastic Container Registry. تأخذ مهمة التدريب مجلد الصور S3 ومسارات ملف LST كمدخلات وتحفظ أفضل نموذج (.params و .json) إلى S3 عند الانتهاء.

خط أنابيب التقييم النموذجي

خط أنابيب التقييم النموذجي

أفضل نموذجين بناءً على مجموعة الاختبار الخاصة بنا هما: SSD-resnet50 و Yolov3-darketnet53، مع درجة MAP قدرها 0.91 لكل منهما. لقد أجرينا أيضًا اختبارًا حقيقيًا من خلال نشر تطبيق استدلالي على جهاز AWS Panorama جنبًا إلى جنب مع النموذج المُدرب. يحفظ البرنامج النصي للاستدلال التنبؤات وإطارات الفيديو في حاوية Amazon S3. لقد أنشأنا مهمة SageMaker Ground Truth أخرى لتوضيح الحقيقة الأساسية ثم أجرينا تقييمًا كميًا إضافيًا للنموذج. تم حفظ الحقيقة الأساسية وتسميات المربع المحيط المتوقعة على الصور في S3 للتقييم النوعي. كانت النماذج قادرة على التعميم على بيانات العالم الحقيقي وحققت أداءً ثابتًا مشابهًا لذلك الموجود في مجموعة الاختبار الخاصة بنا.

يمكنك العثور على أمثلة كاملة وشاملة لإنشاء وظائف تدريب مخصصة، وتدريب نماذج الكشف عن الكائنات المتطورة، وتنفيذ تحسين المعلمات الفائقة (HPO)، ونشر النموذج على Amazon SageMaker على AWS Labs جيثب الريبو.

نشر تطبيق عد صينية اللحوم

هندسة الإنتاج

هندسة الإنتاج

قبل النشر، نقوم بتجميع جميع أصولنا - النموذج والنص الاستدلالي والكاميرا وتكوين المتغير العام في حاوية واحدة كما هو مذكور في هذا بلوق وظيفة. يقوم خط أنابيب التكامل المستمر والنشر المستمر (CI/CD) الخاص بنا بتحديث أي تغيير في البرنامج النصي للاستدلال كإصدار تطبيق جديد. بمجرد نشر إصدار التطبيق الجديد، نقوم بنشره برمجيًا باستخدام boto3 SDK في Python.

عند نشر التطبيق، يقوم AWS Panorama أولاً بإنشاء مهمة AWS SageMaker Neo Compilation لتجميع النموذج لجهاز AWS Panorama. يستورد البرنامج النصي لتطبيق الاستدلال النموذج المترجم على الجهاز ويقوم بالكشف عن صينية الدجاج في كل إطار. بالإضافة إلى SageMaker Neo-Compilation، قمنا بتمكين التكميم بعد التدريب عن طريق إضافة os.environ['TVM_TENSORRT_USE_FP16'] = '1' العلم في البرنامج النصي. يؤدي هذا إلى تقليل حجم أوزان النموذج من التعويم 32 إلى التعويم 16، مما يقلل حجم النموذج بمقدار النصف ويحسن زمن الوصول دون تدهور في الأداء. يتم التقاط نتائج الاستدلال في مراقب AWS SiteWise من خلال رسائل MQTT من جهاز AWS Panorama عبر AWS IoT الأساسية. يتم بعد ذلك دفع النتائج إلى Amazon S3 وتصورها أمازون QuickSight لوحات المعلومات. يمكن لمديري المصنع وموظفيه عرض لوحات المعلومات هذه مباشرةً لفهم إنتاجية كل خط تعبئة في الوقت الفعلي.

وفي الختام

من خلال الجمع بين خدمة AWS Cloud مثل Amazon SageMaker وAmazon S3 وخدمة الحافة مثل AWS Panorama، تعمل شركة Tyson Foods Inc. على غرس الذكاء الاصطناعي لأتمتة العمليات الصناعية كثيفة الاستخدام البشري مثل عد المخزون في مصانعها الصناعية. تُمكّن إمكانات الاستدلال الحافة في الوقت الفعلي شركة Tyson من تحديد الإنتاج الزائد/الناقص وضبط تدفق الإنتاج ديناميكيًا لتحقيق أقصى قدر من الكفاءة. علاوة على ذلك، من خلال امتلاك جهاز AWS Panorama على الحافة، يستطيع Tyson أيضًا توفير التكاليف المرتبطة بعرض النطاق الترددي للشبكة باهظ الثمن لنقل ملفات الفيديو إلى السحابة ويمكنه الآن معالجة جميع أصول الفيديو/الصور الخاصة به محليًا في شبكته.

يوفر لك منشور المدونة هذا نظرة عامة على تطبيق الحافة النهائية وبنيات مرجعية لتطوير تطبيق السيرة الذاتية باستخدام AWS Panorama. ناقشنا 3 جوانب مختلفة لإنشاء تطبيق سيرة ذاتية متطور.

  1. البيانات: جمع البيانات ومعالجتها ووضع العلامات عليها باستخدام AWS Panorama وAmazon SageMaker Ground Truth.
  2. الموديل: نموذج التدريب والتقييم باستخدام Amazon SageMaker وAWS Lambda
  3. حزمة التطبيق: تجميع النماذج والبرامج النصية وملفات التكوين المدربة لـ AWS Panorama.

ترقبوا الجزء الثاني من هذه السلسلة حول كيفية استخدام Tyson لـ AWS Panorama للصيانة التنبؤية القائمة على السيرة الذاتية للآلات الصناعية.

انقر هنا لتبدأ رحلتك مع AWS Panorama. لمعرفة المزيد حول التعاون مع ML Solutions Lab، راجع مختبر أمازون لحلول التعلم الآلي.


حول المؤلف

ديفيا بهارجافي هو عالم بيانات في مختبر أمازون ML Solutions حيث تعمل مع العملاء عبر قطاعات مختلفة وتطبق حلًا إبداعيًا للمشكلات لتوليد قيمة للعملاء من خلال حلول ML/AI المتطورة.

ديليب سوبرامانيام هو أحد كبار المطورين في فريق التقنيات الناشئة في Tyson Foods. إنه متحمس لبناء تطبيقات موزعة واسعة النطاق لحل مشاكل الأعمال وتبسيط العمليات باستخدام معرفته في تطوير البرمجيات والتعلم الآلي والبيانات الضخمة.

المصدر: https://aws.amazon.com/blogs/machine-learning/industrial-automation-at-tyson-with-computer-vision-aws-panorama-and-amazon-sagemaker/

الطابع الزمني:

اكثر من AWS مدونة التعلم الآلي