کاربرد یادگیری عمیق در بینایی ماشین

 

امروزه ظهور یادگیری عمیق چشم انداز بینایی ماشین را تغییر داده و کاربرد های جدیدتری از اتوماسیون را عرضه می کند. کارهایی که در گذشته پیچیده و زمان بر بود، اکنون به وسیله یادگیری عمیق شدنی و قابل دسترس است. یقینا نمی توان تاثیر کتابخانه های متن باز، سخت افزار های مدرن و دوربین های هوشمند را نادیده گرفت. دوربین ها با ویژگی های پیشرفته، پیش پردازش مورد نیاز برای آموزش شبکه های عصبی را به حداقل می رسانند. همچنین می توانند با پلتفرم هایی مانند NVidia Jetson TX-2 و Drive PX 2 ارتباط برقرار کند.

 

یادگیری عمیق چیست؟

یادگیری عمیق حالت خاصی از یادگیری ماشین است که از شبکه های عصبی با تعداد لایه های مخفی بیشتر بین نود های ورودی و خروجی استفاده می کند. در یک شبکه آموزش دیده، مدلی ایجاد می شود که می تواند برای پیش بینی دقیق بر اساس داده های ورودی مورد استفاده قرار گیرد. برای آموزش شبکه عصبی از یک دیتابیس بزرگ استفاده می شود. داده های ورودی و خروجی به شبکه اعمال شده و وزن های شبکه آپدیت می شود. این کار به صورت پی در پی تکرار می شود تا وزنهای شبکه بر اساس خروجی مورد نظر، بهینه گردد.

 

کاربرد یادگیری عمیق در بینایی ماشین

 

یادگیری عمیق فرآیند اتوماسیون بسیار پیچیده را برای کاربرد های روزمره قابل اجرا می کند. فریم ورک ساده، سخت افزار های قدرتمند پردازنده گرافیکی (GPU) و پلتفرم های پردازش ابری، یادگیری عمیق را برای همه قابل دسترسی است. به عنوان مثال یک کشاورز ژاپنی از چارچوب TensorFlow گوگل و Cloud ML را برای درجه بندی خیار استفاده نموده است.

 

کاربرد ها

یادگیری عمیق طیف وسیعی از کاربرد ها را در بر می گیرد. مواردی نظیر تفسیر تصاویر پزشکی برای پزشک، سیستم کنترل ترافیک و ترجمه خودکار متن از کاربرد های متداول یادگیری عمیق می باشد. یادگیری عمیق ابزار بسیار قدرتمندی برای کنترل کیفیت به صورت بصری است. برای مثال در نرم افزار  ViDi Red عیوب به شبکه آموزش داده می شود همچنان که موارد قابل قبول شناسایی می شود.

آموزش مداوم، شبکه های عمیق را واکنش گرا می کند. شرکت HERE از یادگیری عمیق برای نقشه برداری توسط خودرو های بدون سرنشین استفاده می کند. نقشه های تولید شده توسط این شرکت مدام در حال بروز رسانی با دقت 10 الی 20 سانتیمتر هستند. با استفاده از یادگیری عمیق، نقشه های تولید شده شامل مکان دقیق اشیاء ثابت مانند تابلو ها و خطرات رانندگی مانند محل ساختمان می شود.

 

چرا یادگیری عمیق در حال پیشرفت است؟
  1. پردازنده های جدید GPU با قدرت بیشتر و قیمت پایین تر: از آنجایی که فرآیند آموزش شبکه های عمیق بسیار زمان بر می باشد، پردازنده های GPU با تعداد هسته های زیاد گزینه بسیار مناسبی است. توسعه مستمر شرکت Nvidia موجب افزایش چشمگیر قدرت، کارایی و به صرفه تر شدن این پردازنده ها شده است. این فناوری ها را مس توان برد های Jetson-TX1 و TX2، کارت های گرافیکی مانند GTX 1080 و سیستم عامل های اختصاصی AI مانند DGX-1 و Drive PX 2 مشاهده کرد.
  2. در دسترس بودن فریم ورک یادگیری عمیق: پلاگین های C ++، از جمله TensorFlow گوگل و بسته های منبع باز Caffe، Torch و Theano، کاربران را قادر می سازد به راحتی شبکه های عصبی عمیق خود را توسعه دهند. همچنین طیف وسیعی از آموزش ها و دوره های آنلاین، به صورت فراگیر در دسترس همگان قرار دارد. کتابخانه شبکه عصبی مصنوعی (cuDNN) CUDA Nvidia شامل توابع متداول بهینه سازی شده یادگیری عمیق است که برای ساده سازی پیاده سازی شبکه عصبی مصنوعی تدوین شده است.
  3. کاهش پردازش: بسیاری از روشهای متداول دسته بندی (classification) برای کاربرد هایی نظیر برد های Embedded مناسب نیستند. برخلاف فرآیند یادگیری پیچیده شبکه های عمیق، زمان اجرای برنامه نهایی بسیار کم خواهد بود. همچنین برای آموزش شبکه نیازی به تشخیص ویژگی نیست و تصاویر به صورت مستقیم به شبکه اعمال می شود. بنابراین با استفاده از این روش، بسیاری از پیش پردازش ها قابل حذف هستند.

 

 

تهیه کننده: مهندس محمد طالبی
صفحه آکادمیک سایت ما
منبع