Site icon آکادمی آمانج

یادگیری عمیق از گذشته تا امروز

تاریخچه یادگیری ماشین

یادگیری عمیق حوزه ای از یادگیری ماشین است که با استفاده از زبان های برنامه نویسی مثل پایتون به کامپیوترها این آموزش را می دهد تا فرایند یادگیری را همانند انسان ها تجربه کنند: یعنی یادگیری با مثال. یادگیری ماشین یک حوزه بسیار گسترده است که تاریخچه شکل گیری آن به مدت‌‌ها قبل بازمی‌گردد. در اصل، این علم با نام تشخیص الگو شناخته می‌‌شد، اما به‌‌ مرور زمان الگوریتم‌‌ها، از نظر ریاضی، بسیار وسیع‌تر و البته پیچیده‌ تر شدند. در یادگیری ماشین، از دو مفهوم شبکه‌های عصبی (با الهام‌ از ساختار مغز) و یادگیری عمیق استفاده می‌‌شود. الگوریتم‌های یادگیری عمیق، دارای معماری ویژه‌ای با تعداد لایه‌‌های فراوان است که در یک شبکه جریان می‌‌یابند. بنابراین، یادگیری عمیق بخشی از یادگیری ماشین و یادگیری ماشین خود بخشی از هوش مصنوعی به حساب می‌‌آید.

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

 

در حالیکه یادگیری عمیق در دهه 1980 برای اولین بار تئوریزه شد، اما به 2 دلیل به تازگی کاربرد و سودمندی آن مشخص شده:
۱) یادگیری عمیق نیازمند تعداد عظیمی از اطلاعات برچسب گذاری شده (Labeled Data) است. همین ماشین های بدون راننده مثال ما، نیازمند میلیون ها عکس و هزاران ساعت ویدئو بوده است.
۲)  یادگیری عمیق، نیازمند قابلیت محاسبه گری قابل توجهی است. پردازنده های گرافیکی با عملکرد بالا، ساختاری متوازنی را دارا هستند که یادگیری عمیق را ممکن می سازند. این ویژگی باعث می شود که هنگام محاسبه اطلاعات به صورت خوشه ای و انبوه، تیم توسعه دهنده، زمان آموزش برای شبکه یادگیری عمیق را از هفته ها به ساعت ها کاهش دهند.

 

مثال هایی ملموس از یادگیری عمیق

 

حوزه رانندگی خودکار

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

حوزه هوافضا

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

حوزه الکترونیک

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

حوزه پردازش هنرهای تجسمی

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

 

یادگیری عمیق چگونه کار می کند؟

اغلب مدل های یادگیری عمیق از شبکه های عصبی مصنوعی استفاده می کنند به همین دلیل به این مدل ها، شبکه های عصبی عمیق هم گفته می شود.
اصطلاح “عمیق” به تعداد لایه های مخفی در شبکه ی عصبی اشاره دارد. شبکه های عصبی می توانستند 2 یا 3 لایه داشته باشند اما امروزه شبکه های عصبی عمیق می توانند به اندازه ی 150 لایه هم داشته باشند.

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

یکی از مدل های رایج شبکه های عصبی عمیق، شبکه ی عصبی کانوولوشن یا پیچشی (convolutional neural networks) که به اختصار CNN یا ConvNet خوانده می شود.

 

تفاوت یادگیری ماشین و یادگیری عمیق چیست؟

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

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

یادگیری ماشین یا یادگیری عمیق؟

یادگیری ماشین مجموعه‌ای از تکنیک‌ها و مدل‌هایی را ارایه می‌دهد که شما بر اساس کاربرد، اندازه داده‌هایی که پردازش می‌کنید، و نوع مسئله ای که با آن مواجه هستید از این تکنیک ها استفاده می کنید. یک مدل یادگیری عمیق موفق به مقدار بسیار زیادی داده برای آموزش مدل و GPU (پردازنده های گرافیکی) برای پردازش سریع داده‌های شما نیاز دارد.

 

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

یادگیری عمیق چه قابلیت‌‌هایی نسبت به سایر برنامه‌‌ها دارد؟

نوشتن یک برنامه، کاری بسیار دشوار است. در گذشته، رایانه‌ها چنان کند بودند و حافظه نیز به حدی گران‌‌قیمت بود که ناچار به علم منطق روی آورده شد؛ این همان علمی است که رایانه‌‌های فعلی بر اساس آن کار می‌‌کنند. منطق، زبان پایه‌‌ی ماشین‌‌هاست که توسط آن، اطلاعات به‌‌ صورت بیت به بیت پردازش می‌‌شوند. اما رایانه‌ها همچنان بسیار کند و محاسبات بسیار پرهزینه بود.

 

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

کلام آخر یادگیری ماشین

در آخر باید گفت که یادگیری فرایندی به ‌‌شدت محاسباتی است، اما شما فقط نیاز دارید یک‌ بار برنامه بنویسید و سپس با دادن اطلاعات مختلف به آن، می‌توانید مسائل مختلف را حل کنید. دیگر نیازی نیست که شما حتماً در یک موضوع متخصص باشید؛ چرا که هزاران برنامه‌‌ی کاربردی درمورد هر موضوعی می‌توان یافت که در آن با حجم زیادی از اطلاعات سروکار داریم. روز به روز یادگیری ماشین در حال تکمیل شدن است و اگر یادگیری عمیق به نقطه کمال خود برسد، شاید خیلی از هزینه هایی که امروزه به اجبار به جوامع تحمیل می شوند وناشی از خطای انسانی هستند، به حداقل رسیده و کارهای روزمره انسان ها به بهترین شکل صورت خواهد پذیرفت.

منبع مقاله: mathworks

مشاهده نسخه گرافیکی و کامل