در ماههای اخیر، مایکروسافت، گوگل، اپل، فیس بوک و دیگر شرکتها اعلام کردهاند که ما دیگر در عصر موبایلها زندگی نمیکنیم. در عوض، اکنون در دنیا حرف اول را «هوش مصنوعی» میزند و این رسانههای دیجیتال هستند که منابع اصلی اطلاعاتاند و وظایف را انجام میدهند. گوشی هوشمند یا رایانهی شخصی شما اکنون در رتبهی دوم هستند.
در اینجا دو متدی که در ادامهی بحث به آنها میپردازیم را معرفی میکنیم: یادگیری ماشین (machine learning) و یادگیری عمیق (deep learning). این دو روشهایی در بحث «هوش مصنوعی» هستند اما استفاده از آنها، فراتر از این هم میرود. اما چه تفاوتی در بین آنها وجود دارد؟ در زیر یک بررسی اجمالی از آنها ارائه میدهیم.
کامپیوترها اکنون میبینند، میشنوند و صحبت میکنند
با کمک «یادگیری ماشین»، اکنون کامپیوترها آموزش داده میشوند تا وضعیت هوا را پیش بینی کنند، همچنین نتایج بازار سهام. آنها میتوانند عادتهای خرید را درک کنند، رباتها را در یک کارخانه کنترل کنند و به این قبیل کارها رسیدگی کنند . گوگل، آمازون، فیس بوک، نتفلیکس، لینکداین و بیشتر شرکتهای از این دست، توسط یادگیری ماشین پشتیبانی میشوند. اما در قلب همهی اینها چیزی جز دانستن یک الگوریتم نیست.
اگر بخواهیم به عبارت سادهتر بگوییم، یک الگوریتم، برنامهای کامل (مجموعهای از دستورالعملها) نیست، اما دنبالهای محدود از مراحل است که یک مشکل را حل میکنند. به عنوان مثال، یک موتور جستجو برپایهی یک الگوریتمی است که متن را از کاربر دریافت کرده و پایگاههای اطلاعاتی که به آن متن مربوط میشوند را پیدا میکند و نتایج مرتبط با موضوع را نشان میدهد. این موتور جستجو گامهای مشخصی را برای رسیدن به یک هدف مشخص طی میکند.
یادگیری ماشین درواقع در سال ۱۹۵۶ ایجاد شد. آرتور ساموئل (Arthur Samuel) نمیخواست جزئیات زیاد برنامهای برای یک کامپیوتری را بنویسد. در عوض او الگوریتمی ایجاد کرد که کامپیوتر را وادار میکرد هزاران بار در مقابل خودش بازی کند تا یاد بگیرد چگونه به عنوان یک حریف مستقل عمل کند. تا سال ۱۹۶۲، این کامپیوتر رقبای زیادی را شکست داد.
بنابراین، یادگیری ماشین در هستهی خود متکی بر آزمون و خطاست. ما نمیتوانیم به صورت دستی برنامهای بنویسیم که یک خودرو، فرق بین یک درخت و یک وسیلهی نقلیه را تشخیص دهد، اما میتوانیم الگوریتمی بسازیم که با کمک دادهها، این مشکل را بر طرف کند. الگوریتمها همچنین میتوانند به کمک برنامههایی بیایند که طوفانهای بزرگ را پیش بینی میکنند. همچنین میتوانند آلزایمر زودرس را شناسایی کنند وغیره.
یادگیری ماشین به طور معمول مشکل را به چند بخش تبدیل میکند. هر قسمت توسط یک فرمان حل میشود و سپس اینها باهم ترکیب شده تا یک پاسخ واحد برای مشکل ایجاد شود. تام میتچل (Tom Mitchell) از دانشگاه کارنیج ملون (Carnegie Mellon) توضیح میدهد که برنامههای کامپیوتری از تجربیات «میآموزند» و این باعث بهبود عملکرد آنها میشود یادگیری ماشین اساسا برنامهها را قادر به پیشبینی میکنند و این عمل با تکرار شدن و کسب تجربهی بیشتر تقویت میشود.
در زیر چهار نوع مختلف از «یادگیری ماشین» را آوردهایم:
یادگیری ماشین نظارت شده
در این قسمت، شما یک برنامهی کامپیوتری با اطلاعات برچسب گذاری شده فراهم میکنید. به عنوان مثال، اگر بخواهیم تصاویر دخترها و پسرها را از هم جدا کنیم، باید از الگوریتم مرتب سازی تصاویر استفاده کنیم؛ آنهایی که فرزند پسر دارند برچسب «پسر» میگیرند . تصاویری که فرزند دختر دارند، برچسب «دختر» میگیرند. این بعنوان یک مجموعه داده شناخته میشود و این برچسبها تا زمانی که برنامه بتواند با سرعت قابل قبولی تصاویر را جداسازی کند، باقی خواهند ماند.
یادگیری ماشین نیمه نظارت شده
در این مورد، تنها تعدادی از تصاویر برچسب میگیرند. سپس برنامهی کامپیوتری از یک الگوریتم برای بهترین عملکرد در مورد تصاویر برچسب گذاری نشده استفاده میکند و پس از ٖآن دادهها بعنوان training data (دادهی تمرینی) به برنامه برمیگردند. سپس مجموعهای جدید از تصاویر فراهم میشوند: تنها با چند برچسب. این فرایند تکرار میشود تا زمانی که برنامه بتواند با سرعت قابل قبولی بین تصاویر دختران و پسران تمایز قائل شود.
یادگیری ماشین بدون نظارت
این نوع از یادگیری ماشین اصلا شامل برچسبها نمیشود. در عوض این برنامه از طریق دو روش به سراغ جداسازی تصاویر دختران و پسران میرود. اولی الگوریتم «خوشه بندی» نامیده میشود که اشیائی که مشابه هم هستند را بر اساس ویژگیهای مثل اندازهی مو، اندازهی فک، جایگاه چشم و از این قبیل چیزها در یک گروه قرار میدهد. الگوریتم بعدی «پیوستگی» نامیده میشود که در آن برنامه بر اساس کشف شباهتها کار میکند. به عبارت دیگر یک الگوی مشترک بین تصاویر پیدا کرده و سپس بر آن اساس آنها را مرتب سازی میکند.
تقویت یادگیری ماشین
شطرنج میتواند مثال خوبی برای این نوع از الگوریتم باشد. برنامه قواعد بازی را میداند و بلد است چطور بازی کند و مراحل را تا انتها پیش میبرد. تنها اطلاعاتی که برای این برنامه ارائه شده است این است که بازی را ببرد یا ببازد. بازی را مرتبا تکرار میکند و حرکتهای موفقیتآم
نظرات