این یک پست مهمان است که توسط Andrew Masek، مهندس نرم افزار در The Barcode Registry و Erik Quisling، مدیر عامل The Barcode Registry نوشته شده است.
جعل محصولات تنها بزرگترین شرکت جنایی در جهان است. با رشد بیش از 10,000 درصدی در دو دهه گذشته، فروش کالاهای تقلبی در حال حاضر بالغ بر 1.7 تریلیون دلار در سال در سراسر جهان است که بیشتر از مواد مخدر و قاچاق انسان است. اگرچه روشهای سنتی پیشگیری از تقلبی مانند بارکدهای منحصر به فرد و تأیید محصول میتوانند بسیار مؤثر باشند، فناوریهای جدید یادگیری ماشین (ML) مانند تشخیص اشیا بسیار امیدوارکننده به نظر میرسند. با تشخیص شی، اکنون می توانید از یک محصول عکس بگیرید و تقریباً فوراً متوجه شوید که آیا آن محصول احتمالاً قانونی است یا تقلبی.
La رجیستری بارکد (در ارتباط با شریک خود Buyabarcode.com) یک راه حل خدمات کامل است که به مشتریان کمک می کند تا از تقلب و جعل محصول جلوگیری کنند. این کار را با فروش بارکدهای منحصر به فرد ثبت شده در GS1، تأیید مالکیت محصول، و ثبت محصولات و بارکدهای کاربران در یک پایگاه داده جامع انجام می دهد. آخرین پیشنهاد آنها که در این پست به آن می پردازیم، استفاده می کند آمازون SageMaker برای ایجاد مدل های تشخیص اشیاء برای کمک به شناسایی فوری محصولات تقلبی.
بررسی اجمالی راه حل
برای استفاده از این مدل های تشخیص اشیا، ابتدا باید داده هایی را جمع آوری کنید تا آنها را آموزش دهید. شرکت ها تصاویر مشروح محصولات خود را در The Barcode Registry آپلود می کنند سایت اینترنتی. پس از آپلود این داده ها در سرویس ذخیره سازی ساده آمازون (Amazon S3) و پردازش شده توسط AWS لامبدا توابع، می توانید از آن برای آموزش یک مدل تشخیص شی SageMaker استفاده کنید. این مدل در یک نقطه پایانی SageMaker میزبانی می شود، جایی که وب سایت آن را به کاربر نهایی متصل می کند.
سه مرحله کلیدی برای ایجاد The Barcode Registry برای ایجاد یک مدل تشخیص شی سفارشی با SageMaker وجود دارد:
- یک اسکریپت آموزشی برای اجرای SageMaker ایجاد کنید.
- یک ظرف Docker از اسکریپت آموزشی بسازید و آن را در Amazon ECR آپلود کنید.
- از کنسول SageMaker برای آموزش یک مدل با الگوریتم سفارشی استفاده کنید.
داده های محصول
به عنوان یک پیش نیاز برای آموزش یک مدل تشخیص شی، به یک حساب AWS و تصاویر آموزشی، متشکل از حداقل 100 تصویر با کیفیت بالا (با وضوح بالا و در شرایط نوری متعدد) از جسم شما نیاز دارید. مانند هر مدل ML، داده های با کیفیت بالا مهم است. همانطور که در مثال زیر نشان داده شده است، برای آموزش یک مدل تشخیص اشیا، به تصاویری نیاز داریم که حاوی محصولات مربوطه و همچنین کادرهای مرزبندی باشند که در آن محصولات در کجای تصاویر قرار دارند.
برای آموزش یک مدل موثر، تصاویری از هر یک از محصولات یک برند با پسزمینه و شرایط نوری متفاوت مورد نیاز است - تقریباً 30 تا 100 تصویر حاشیهنویسی منحصر به فرد برای هر محصول.
پس از اینکه تصاویر در وب سرور آپلود شدند، با استفاده از آن در آمازون S3 آپلود می شوند AWS SDK برای PHP. هر بار که یک تصویر آپلود می شود، یک رویداد Lambda فعال می شود. این تابع، فراداده Exif را از تصاویر حذف میکند، که گاهی اوقات باعث میشود زمانی که توسط کتابخانههای ML باز میشوند، چرخانده به نظر برسند که بعداً برای آموزش مدل استفاده شدند. دادههای جعبه مرزی مرتبط در فایلهای JSON ذخیره میشوند و برای همراهی تصاویر در Amazon S3 آپلود میشوند.
SageMaker برای مدل های تشخیص اشیا
SageMaker یک سرویس ML مدیریت شده است که شامل ابزارهای مختلفی برای ساخت، آموزش و میزبانی مدل ها در فضای ابری است. به طور خاص، TheBarcodeRegistry از SageMaker برای سرویس تشخیص اشیاء خود به دلیل آموزش مدل ML قابل اعتماد و مقیاس پذیر و خدمات میزبانی SageMaker استفاده می کند. این بدان معناست که بسیاری از برندها میتوانند مدلهای تشخیص اشیاء خود را آموزش داده و میزبانی کنند و حتی اگر استفاده بهطور غیرقابل پیشبینی افزایش یابد، هیچ خرابی وجود نخواهد داشت.
رجیستری بارکد از ظروف Docker سفارشی آپلود شده در آن استفاده می کند رجیستری ظروف الاستیک آمازون (Amazon ECR) به منظور کنترل دقیقتر الگوریتم تشخیص شیء مورد استفاده برای آموزش و استنتاج و همچنین پشتیبانی از سرور چند مدل (MMS). MMS برای موارد استفاده از تشخیص تقلب بسیار مهم است زیرا به مدلهای چند برند اجازه میدهد تا با هزینه مقرون به صرفه روی یک سرور میزبانی شوند. از طرف دیگر، می توانید از داخلی استفاده کنید الگوریتم تشخیص اشیا برای استقرار سریع مدل های استاندارد توسعه یافته توسط AWS.
با SageMaker یک مدل تشخیص شی سفارشی آموزش دهید
ابتدا باید الگوریتم تشخیص شی خود را اضافه کنید. در این مورد، یک کانتینر Docker حاوی اسکریپت هایی برای آموزش مدل تشخیص شی Yolov5 در Amazon ECR آپلود کنید:
- در کنسول SageMaker، در زیر دفتر یادداشت در قسمت ناوبری، را انتخاب کنید نمونه های نوت بوک.
- را انتخاب کنید ایجاد نمونه نوت بوک
- یک نام برای نمونه نوت بوک و زیر وارد کنید مجوزها و رمزگذاری را انتخاب کنید هویت AWS و مدیریت دسترسی نقش (IAM) با مجوزهای لازم.
- باز کردن مخازن Git منو.
- انتخاب کنید یک مخزن Git عمومی را فقط در این نمونه نوت بوک شبیه سازی کنید و موارد زیر را بچسبانید URL مخزن Git: https://github.com/portoaj/SageMakerObjectDetection
- کلیک کنید ایجاد نمونه نوت بوک و حدود پنج دقیقه منتظر بمانید تا وضعیت نمونه از آن به روز شود در انتظار به در خدمت در نمونه نوت بوک منو.
- هنگامی که دفترچه یادداشت است در خدمت، آن را انتخاب کرده و کلیک کنید اعمال و ژوپیتر را باز کنید برای راه اندازی نمونه نوت بوک در یک تب جدید.
- را انتخاب کنید SageMakerObjectDetection دایرکتوری و سپس کلیک کنید
sagemakerobjectdetection.ipynb
برای راه اندازی نوت بوک Jupyter. - را انتخاب کنید
conda_python3
هسته و کلیک کنید هسته را تنظیم کنید. - سلول کد را انتخاب کرده و تنظیم کنید
aws_account_id
متغیر برای شناسه حساب AWS شما. - کلیک کنید دویدن برای شروع فرآیند ساخت کانتینر Docker و آپلود آن در Amazon ECR. این فرآیند ممکن است حدود 20 دقیقه طول بکشد.
- پس از بارگذاری کانتینر Docker، به آن بازگردید نمونه های نوت بوک منو، نمونه خود را انتخاب کنید و کلیک کنید اعمال و توقف برای خاموش کردن نمونه نوت بوک خود
پس از اینکه الگوریتم ساخته شد و به Amazon ECR فرستاده شد، می توانید از آن برای آموزش یک مدل از طریق کنسول SageMaker استفاده کنید.
- در کنسول SageMaker، در زیر آموزش در قسمت ناوبری، را انتخاب کنید مشاغل آموزشی.
- را انتخاب کنید ایجاد شغل آموزشی.
- یک نام برای کار وارد کنید و آن را انتخاب کنید هویت AWS و مدیریت دسترسی نقش (IAM) با مجوزهای لازم.
- برای منبع الگوریتم، انتخاب کنید ظرف الگوریتم خودتان در ECR.
- برای ظرف، وارد مسیر رجیستری شوید.
- تنظیم یک نمونه ml.p2.xlarge تحت پیکربندی منبع باید برای آموزش یک مدل Yolov5 کافی باشد.
- مکان های آمازون S3 را برای داده های ورودی و مسیر خروجی خود و هر تنظیمات دیگری مانند پیکربندی VPC از طریق تعیین کنید. ابر خصوصی مجازی آمازون (Amazon VPC) یا فعال کردن Managed Spot Training.
- را انتخاب کنید ایجاد شغل آموزشی.
می توانید پیشرفت آموزش مدل را در کنسول SageMaker دنبال کنید.
آموزش مدل خودکار
نمودار زیر گردش کار آموزش مدل خودکار را نشان می دهد:
برای اینکه SageMaker به محض اینکه کاربر آپلود داده های خود را به پایان برساند آموزش مدل تشخیص شی را شروع کند، سرور وب از دروازه API آمازون به یک عملکرد لامبدا اطلاع دهید که برند تمام کرده است و کار آموزشی را شروع کند.
وقتی مدل یک برند با موفقیت آموزش داده شود، پل رویداد آمازون تابع Lambda را فراخوانی می کند که مدل آموزش دیده را به سطل S3 نقطه پایانی زنده منتقل می کند، جایی که در نهایت برای استنتاج آماده است. یک جایگزین جدیدتر برای استفاده از Amazon EventBridge برای جابجایی مدل ها در چرخه عمر MLOps که باید در نظر بگیرید، است خطوط لوله SageMaker.
میزبان مدل برای استنتاج
نمودار زیر روند کار استنتاج را نشان می دهد:
برای استفاده از مدلهای آموزشدیده، SageMaker به یک مدل استنتاج نیاز دارد که توسط یک نقطه پایانی میزبانی شود. نقطه پایانی سرور یا آرایه ای از سرورهایی است که برای میزبانی واقعی مدل استنتاج استفاده می شود. مشابه کانتینر آموزشی که ما ایجاد کردیم، یک ظرف Docker برای استنتاج در آمازون ECR میزبانی می شود. مدل استنتاج از آن ظرف داکر استفاده می کند و تصویر ورودی را که کاربر با تلفن خود گرفته است، می گیرد، آن را از طریق مدل تشخیص شی آموزش دیده اجرا می کند و نتیجه را به بیرون می دهد.
مجدداً، بارکد رجیستری از کانتینرهای Docker سفارشی برای مدل استنتاج استفاده میکند تا استفاده از سرور چند مدل را امکانپذیر کند، اما اگر فقط یک مدل مورد نیاز باشد که میتواند به راحتی از طریق الگوریتم تشخیص شی داخلی میزبانی شود.
نتیجه
ثبت بارکد (در ارتباط با شریک خود Buyabarcode.com) از AWS برای کل خط لوله تشخیص اشیاء خود استفاده می کند. وب سرور به طور قابل اعتماد داده ها را در Amazon S3 ذخیره می کند و از عملکردهای API Gateway و Lambda برای اتصال وب سرور به ابر استفاده می کند. SageMaker به راحتی مدل های ML را آموزش می دهد و میزبانی می کند، به این معنی که کاربر می تواند از یک محصول در تلفن خود عکس بگیرد و ببیند که آیا محصول تقلبی است یا خیر. این پست نحوه ایجاد و میزبانی یک مدل تشخیص شی با استفاده از SageMaker و همچنین نحوه خودکارسازی فرآیند را نشان میدهد.
در آزمایش، این مدل توانست بیش از 90 درصد دقت را در مجموعه آموزشی 62 تصویری و مجموعه آزمایشی 32 تصویری به دست آورد، که برای مدلی که بدون هیچ گونه مداخله انسانی آموزش دیده بسیار چشمگیر است. برای شروع آموزش مدلهای تشخیص اشیا، خودتان به بخش رسمی مراجعه کنید مستندات یا یاد بگیرید چگونه یک مدل تشخیص شی را با استفاده از AWS IoT Greengrass در لبه مستقر کنید.
مطالب و نظرات این پست متعلق به نویسنده شخص ثالث است و AWS مسئولیتی در قبال محتوا یا صحت این پست ندارد.
درباره نویسنده
اندرو ماسک، مهندس نرم افزار در The Barcode Registry.
اریک کوئیسلینگ، مدیر عامل The Barcode Registry.
- Coinsmart. بهترین صرافی بیت کوین و کریپتو اروپا.
- پلاتوبلاک چین. Web3 Metaverse Intelligence. دانش تقویت شده دسترسی رایگان.
- CryptoHawk. رادار آلت کوین امتحان رایگان.
- منبع: https://aws.amazon.com/blogs/machine-learning/how-the-barcode-registry-detects-forfeit-products-using-object-detection-and-amazon-sagemaker/
- "
- 000
- 10
- 100
- 7
- درباره ما
- دسترسی
- حساب
- الگوریتم
- هر چند
- آمازون
- API
- خودکار
- AWS
- مرز
- جعبه
- مارک های
- بنا
- ساخته شده در
- علت
- مدیر عامل شرکت
- ابر
- رمز
- جمع آوری
- شرکت
- پیکر بندی
- کنسول
- ظرف
- ظروف
- محتوا
- کنترل
- جعلی
- ایجاد
- کیفری
- سفارشی
- مشتریان
- داده ها
- پایگاه داده
- گسترش
- کشف
- توسعه
- مختلف
- بحث و تبادل نظر
- کارگر بارانداز
- پایین
- مدت از کار افتادگی
- مواد مخدر
- به آسانی
- لبه
- موثر
- را قادر می سازد
- نقطه پایانی
- مهندس
- سرمایه گذاری
- واقعه
- مثال
- سرانجام
- نام خانوادگی
- پیروی
- تقلب
- تابع
- رفتن
- مغازه
- در حال رشد
- مهمان
- پست مهمان
- کمک
- کمک می کند
- چگونه
- چگونه
- HTTPS
- انسان
- هویت
- تصویر
- مهم
- اینترنت اشیا
- IT
- کار
- کلید
- آخرین
- راه اندازی
- یاد گرفتن
- یادگیری
- مکان
- دستگاه
- فراگیری ماشین
- اداره می شود
- ML
- مدل
- مدل
- بیش
- حرکت
- جهت یابی
- دفتر یادداشت
- ارائه
- رسمی
- دیدگاه ها
- سفارش
- دیگر
- مالکیت
- شریک
- تصویر
- زیبا
- پیشگیری
- خصوصی
- روند
- محصول
- محصولات
- امید بخش
- عمومی
- به سرعت
- شناختن
- مربوط
- مخزن
- منابع
- مسئوليت
- دویدن
- حراجی
- مقیاس پذیر
- sdk
- سرویس
- خدمات
- تنظیم
- مشابه
- ساده
- ضربه محکم و ناگهانی
- نرم افزار
- مهندس نرمافزار
- راه حل
- Spot
- شروع
- آغاز شده
- وضعیت
- ذخیره سازی
- پرده
- موفقیت
- پشتیبانی
- فن آوری
- تست
- جهان
- شخص ثالث
- از طریق
- زمان
- ابزار
- مسیر
- سنتی
- آموزش
- قطار
- منحصر به فرد
- بروزرسانی
- استفاده کنید
- تایید
- مجازی
- صبر کنيد
- وب
- وب سرور
- سایت اینترنتی
- بدون
- جهان
- در سرتاسر جهان
- سال