یادگیری ماشین یا Machine Learning (به اختصار ML) شاخهای از هوش مصنوعی (Artificial Intelligence) یا به اختصار AI و علوم کامپیوتر است که با استفاده از اطلاعات موجود و الگوریتمهای مختلف، اقدام به شبیه سازی روش یادگیری انسانها کرده و به تدریج دقت روش های یادگیری خود را بهبود میبخشد.
یکی از کارمندان شرکت IBM به نام Arthur Samuel، پس از تحقیق و پژوهش در مورد بازی "checkers" برای اولین بار اصطلاح یادگیری ماشین را ابداع کرد. Robert Nealey، در سال 1962 طی یک رویارویی با هوش مصنوعی به کار رفته در کامپیوتر IBM 7094، بازی را به آن باخت. در مقایسه با آنچه امروز می توان انجام داد، این شاهکار کامپیوتری تقریباً بی اهمیت به نظر می رسد اما همین اتفاق، نقطه عطف بزرگی در زمینه هوش مصنوعی است. طی چندین دهه بعد از آن، پیشرفتهای تکنولوژیکی در مورد ذخیرهسازی اطلاعات و افزایش قدرت پردازش داده ها، برخی از محصولات نوآورانهای را که امروزه شناخته شده هستند، مانند سیستم پیشنهاد ویدیو نتفلیکس یا خودروهای بدون راننده را در سطحی جهانی مطرح ساخت.
تصویر (1)
یادگیری ماشین (ML) جزء مهمی از حوزه رو به رشد علم داده کاوی (فرایند یافتن رابطه ها، الگوها یا ناهنجاری های موجود در داده های بزرگ می باشد که می تواند منجر به پیش بینی دقیق درباره آن داده ها شود) است. با استفاده از روش های آماری، الگوریتم ها برای طبقه بندی یا پیش بینی نتایج آموزش داده می شوند و کمک می کنند تا مفاهیم کلیدی در پروژه های داده کاوی را راحت تر درک کنند. بر اساس این مفاهیم نیز بینش هایی شکل می گیرند که متعاقباً تصمیمگیری را در برنامهها و کسبوکارها مدیریت میکنند. در حالت ایده آل، همین بینش ها بر معیارهای کلیدی رشد تأثیر می گذارد. همانطور که داده های کلان (big data) به رشد و گسترش ادامه میدهند، تقاضای بازار برای متخصصان حوزه داده های کلان نیز افزایش مییابد. شرکت ها از آنها میخواهد تا با بررسی داده ها، پاسخ های مناسب برای سوالات موجود در آن حوزه تجاری را پیدا کنند.
مقایسه یادگیری ماشین یا Machine Learning با یادگیری عمیق و شبکه های عصبی
تصویر (2)
از آنجایی که یادگیری عمیق (deep Learning) و یادگیری ماشین یا Machine Learning گاهی به جای یکدیگر مورد استفاده قرار می گیرند، توجه به تفاوت های ظریف بین این دو، می تواند بسیار ارزشمند باشد. یادگیری ماشین، یادگیری عمیق و شبکه های عصبی (neural networks)، همگی زیر شاخه های هوش مصنوعی هستند. با این حال، یادگیری عمیق در واقع یک زیر شاخه از یادگیری ماشین و شبکه های عصبی یک زیر شاخه از یادگیری عمیق است.
تفاوت یادگیری عمیق و یادگیری ماشین یا Machine Learning در نحوه یادگیری هر الگوریتم است (تصویر 3). یادگیری عمیق، بسیاری از بخش های "استخراج ویژگی" در یک فرآیند یادگیری را خودکار سازی می کند. این روش، برخی از مداخلات دستی انسان را حذف کرده و امکان استفاده از مجموعه داده های بزرگتر را فراهم می کند. از نظر لکس فریدمن (Lex Fridman - یکی از دانشمندان حوزه کامپیوتر، محقق هوش مصنوعی، فیلسوف و مدرس دانشگاه Massachusetts Institute of Technology)، می توان یادگیری عمیق را به عنوان "یادگیری ماشین مقیاس پذیر" در نظر گرفت. یادگیری ماشین (ML) غیر عمیق، تا حد زیادی به کمک انسان برای یادگیری نیاز دارد. افراد متخصص، مجموعه ای از ویژگی ها را برای درک تفاوت بین داده های ورودی تعیین می کنند، البته این مورد به تنهایی کافی نبوده و معمولاً برای یادگیری، به داده های ساختار یافته بیشتری نیاز خواهند داشت.
تصویر (3)
یادگیری عمیق میتواند از مجموعه دادههای برچسبگذاریشده که به عنوان supervised learning (در ادامه مقاله به آن پرداخته خواهد شد) نیز شناخته میشوند، برای بهبود الگوریتم خود استفاده کند اما یادگیری عمیق لزوماً به یک مجموعه داده برچسبدار وابسته نیست. یادگیری عمیق میتواند دادههای بدون ساختار را به شکل خام (مثلاً متن یا تصاویر) دریافت و سپس به طور خودکار مجموعهای از ویژگیهای استخراج شده را به عنوان معیار تعیین کند تا دستههای مختلف دادهها را از یکدیگر متمایز نماید. در این روش برخلاف یادگیری ماشین یا Machine Learning، نیازی نیست که یک انسان در فرایند پردازش داده ها ورود کند. یادگیری عمیق و شبکههای عصبی، باعث پیشرفت هرچه سریعتر علوم در زمینههایی مانند بینایی کامپیوتر (computer vision)، پردازش زبان طبیعی (natural language processing) یا به اختصار NLP و همچنین تشخیص گفتار (speech recognition) میشوند.
شبکههای عصبی (Neural networks) یا شبکههای عصبی مصنوعی (ANNs) از یک دسته گره (node) تشکیل شدهاند که شامل یک لایه ورودی، یک یا چند لایه پنهان و یک لایه خروجی می شود (تصویر 4). هر گره یا نورون مصنوعی به دیگری متصل می شود و دارای وزن و threshold (تعیین یک آستانه به عنوان معیار ،برای مثال: برای احتمالات پیش بینی شده نرمال، در محدوده 0 تا 1، threshold به طور پیش فرض روی 0.5 تنظیم شده است) مرتبط خواهد بود. اگر خروجی هر گره منحصربفرد، بالاتر از مقدار threshold مشخص شده باشد، آن گره فعال می شود و داده ها را به لایه بعدی شبکه ارسال می کند. در غیر این صورت، هیچ داده ای به لایه بعدی شبکه منتقل نمی شود. کلمه "عمیق" در عبارت یادگیری عمیق، به عمق لایه ها در یک شبکه عصبی اشاره دارد. یک شبکه عصبی که بیش از سه لایه داشته باشد (لایه هایی شامل ورودی ها و خروجی ها) می تواند یک الگوریتم یادگیری عمیق یا یک شبکه عصبی عمیق در نظر گرفته شود. یک شبکه عصبی که فقط دو یا سه لایه دارد، فقط یک شبکه عصبی اولیه است.
تصویر (4)
یادگیری ماشین یا Machine Learning چگونه کار می کند
از نظر دانشگاه Berkeley، سیستم یادگیری الگوریتم "یادگیری ماشین" سه بخش اساسی دارد:
-
فرآیند تصمیم گیری (Decision Process): به طور کلی، الگوریتم های یادگیری ماشین یا Machine Learning برای پیش بینی یا طبقه بندی استفاده می شوند. بر اساس برخی از داده های ورودی که می توانند دارای برچسب یا بدون برچسب باشند، الگوریتم شما تخمینی در مورد یک الگو در داده ها، ایجاد می کند.
-
تابع خطا (Error Function): تابع خطا برای ارزیابی مدل پیشبینی شده به کار میرود. اگر نمونه داده های مشخصی از قبل وجود داشته باشند، یک تابع خطا می تواند مقایسه ای بین آنها و احتمالات پیشبینی شده در مدل تحت تحقیق، برای ارزیابی میزان دقت آن مدل، انجام دهد.
-
فرآیند بهینه سازی مدل (Model Optimization Process): اگر مدل بتواند خود را با نکات موجود در داده های آموزشی بهتر تطبیق دهد، آنگاه می تواند وزن ها (weights) را نیز برای کاهش اختلاف بین مثال هایی با جواب و مشخص و پیشبینی انجام شده از سوی مدل، تغییر دهد. الگوریتم، این فرآیند ارزیابی و بهینه سازی را تکرار کرده و وزن ها را به طور مستقل تا رسیدن به یک threshold دقیق، بروز می کند.
متدهای یادگیری ماشینی
یادگیری ماشین یا Machine Learning به سه دسته اصلی تقسیم می شود.
تصویر (5)
یادگیری ماشین با ناظر (Supervised machine learning)
دلیل نام گذاری این روش به عنوان "یادگیری ماشین با ناظر" این است که الگوریتم های خود را به وسیله داده هایی که از قبل توسط یک یا چند ناظر، آماده و طبقه بندی شده اند، آموزش می دهد. نتیجه این آموزش، می تواند یک سیستم پیشبینی دقیق با طبقه بندی کارآمد باشد. همانطور که داده های ورودی به مدل وارد می شوند، وزن node های شبکه ای که در حال تعلیم هستند نیز تغییر می کند. عمل تطبیق وزن ها بر اساس داده های ورودی، تا زمانی که مدل به طور مناسب با داده ها تغذیه شود، ادامه خواهد داشت. این روند به عنوان بخشی از فرایند cross validation (یک روش آماری برای مقایسه و ارزیابی الگوریتم های یادگیری ماشین یا Machine Learning است، در این روش داده ها به دو بخش داده های آموزشی و داده های اعتبارسنجی تقسیم می شوند و مدل باید بتواند به نتیجه مناسبی در هر دو بخش آموزش و اعتبارسنجی دست یابد) صورت می گیرد تا اطمینان حاصل شود که مدل در حال آموزش، دچار overfitting (زمانی اتفاق میافتد که یک مدل جزئیات و مفاهیم اشتباه را در دادههای آموزشی یاد میگیرد تا حدی که بر عملکرد مدل روی دادههای جدید تأثیر منفی می گذارد) یا underfitting (به مدلی اشاره دارد که نه می تواند داده های آموزشی را مدل کند و نه می تواند به داده های جدید تعمیم دهد) نگردد.
یادگیری تحت نظارت، برای حل مشکلات در مقیاس های بسیار بزرگ و جهانی، مانند طبقه بندی ایمیل های Spam، می تواند کمک شایانی برای سازمان های فعال در این زمینه باشد. برخی از روشهای مورد استفاده در یادگیری نظارت شده، عبارتند از: neural networks، naïve bayes، linear regression، logistic regression، random forest و support vector machine یا همان (SVM).
یادگیری ماشین بدون ناظر (Unsupervised machine learning)
یادگیری بدون ناظر، از الگوریتم های یادگیری ماشین (ML) برای تجزیه و تحلیل و خوشه بندی مجموعه داده های بدون برچسب، استفاده می کند. این الگوریتم ها می توانند الگوهای پنهان یا دسته بندی بندی داده ها را بدون کمک انسان پیدا کنند. توانایی روش یادگیری بدون ناظر در کشف شباهت ها و تفاوت ها، آن را به راه حلی ایده آل برای exploratory data analysis (فرآیند انجام تحقیقات اولیه روی داده ها به منظور کشف الگوها، تشخیص ناهنجاری ها، آزمایش فرضیه ها و بررسی فرضیات با کمک آمار خلاصه و نمایش های گرافیکی)، cross-selling strategies (یک استراتژی برای فروش محصولات مرتبط با محصولی که مشتری قبلاً آن را خریداری نموده است)، تقسیم بندی مشتریان و تشخیص تصویر و الگو تبدیل می کند. همچنین یادگیری بدون ناظر، برای کاهش تعداد ویژگی های یک مدل از طریق فرآیند Dimensionality reduction (که وظیفه اش کاهش تعداد ویژگی ها در یک مجموعه داده است)، استفاده می شود.
principal component analysis (یک روش آماری که به شما امکان می دهد تا اطلاعات موجود در جداول داده های بزرگ را با استفاده از مجموعه کوچکتری از "شاخص های خلاصه" که به راحتی قابل مشاهده و تجزیه و تحلیل باشند، خلاصه کنید.) و singular value decomposition (تجزیه یک ماتریس A به 3 ماتریس U، S و V است. که در آن ماتریس S یک ماتریس قطری با مقادیر فرد می باشد) دو الگوریتم پر کاربرد برای انجام Dimensionality reduction هستند. سایر الگوریتمهای مورد استفاده در یادگیری بدون ناظر، شامل neural networks ،k-means clustering ،probabilistic clustering methods و غیره می شود.
یادگیری نیمه نظارتی (Semi-supervised learning)
یادگیری نیمهنظارتی یک ترکیب متعادل و بسیار مطلوب بین دو روش با ناظر و بدون ناظر است. در این روش از یک مجموعه داده با برچسب های مشخص اما با تعداد محدود، برای ایجاد طبقهبندی ها استفاده می شود. برای استخراج ویژگی ها، حجم بسیار بیشتری از داده های بدون برچسب، به سیستم داده خواهد شد. یادگیری نیمه نظارتی میتواند مشکل عدم وجود داده های با برچسب مشخص یا عدم توانایی مالی برای ایجاد گروهی از داده های برچسبگذاری شده در یک پروژه خاص را پوشش دهد و فرایند یادگیری ماشین موردنظر را به نتیجه برساند.
یادگیری ماشین یا Machine Learning به روش Reinforcement
یادگیری ماشینی Reinforcement، یک مدل یادگیری ماشین مشابه یادگیری با ناظر است اما الگوریتم، با استفاده از داده های آماده و دسته بندی شده آموزش داده نمی شود. این مدل با استفاده از پاداش و مجازات یاد می گیرد. مدل تحت تعلیم، با استفاده از دنباله ای از نتایج موفقیت آمیز یا همان پاداش ها، تقویت خواهد شد تا بتواند برای مشکلات موجود، بهترین توصیه ها یا عملکرد را ارائه دهد.
اگرچه طراح این الگوریتم خط مشی پاداش را تعیین می کند اما هیچ اشاره یا پیشنهادی برای نحوه حل مسئله به مدل نمی دهد. این به مدل بستگی دارد که بفهمد برای به حداکثر رساندن پاداش، باید چگونه کار را انجام دهد.
موارد استفاده از یادگیری ماشین یا Machine Learning در دنیای واقعی
در ادامه چند نمونه از "یادگیری ماشین یا Machine Learning" ذکر شده که ممکن است هر روز با آنها روبرو شوید:
-
تشخیص گفتار Speech recognition: تشخیص گفتار کامپیوتری (تبدیل گفتار به متن) قابلیتی است که از پردازش زبان طبیعی (NLP) برای پردازش گفتار انسان و تبدیل به نوشتار استفاده میکند. بسیاری از دستگاه های تلفن همراه برای انجام جستجوی صوتی از تشخیص گفتار در سیستم های خود استفاده می کنند. به عنوان نمونه، دستیار صوتی شرکت اپل با نام سیری، که ویژگی های دیگری مانند ارسال پیامک را نیز ارائه می دهد.
تصویر (6)
-
خدمات مشتری: ربات های چت آنلاین به مرور زمان جایگزین عوامل انسانی می شوند. آنها به سؤالات متداول در مورد موضوعاتی مانند حمل و نقل پاسخ داده یا مشاوره شخصی ارائه می کنند. این ربات ها طرز فکر شما را در مورد تعامل با مشتری، در وبسایتها و شبکه های اجتماعی تغییر میدهند.
-
بینایی رایانه (Computer vision): این فناوری هوش مصنوعی، رایانهها و سیستمها را قادر میسازد تا اطلاعات معناداری را از تصاویر دیجیتال، ویدیوها و سایر ورودیهای دیداری به دست آورند و بر اساس آن ورودیها، اقداماتی انجام دهند. بینایی کامپیوتر با استفاده از convolutional neural networks (شبکه های عصبی پیچیده) توانسته است در برچسبگذاری عکس در شبکه های اجتماعی، تصویربرداری های رادیولوژی، مراقبتهای بهداشتی و خودروهای بدون راننده، تاثیر مثبت بسزایی بگذارد.
تصویر (7)
-
موتور سیستم های پیشنهاد دهنده: الگوریتمهای هوش مصنوعی میتوانند از دادههای رفتاری مشتریان در گذشته، برای کشف ارتباط بین آنها استفاده کنند و نتایج ارائه شده از سوی این الگوریتم ها می توانند در توسعه یک استراتژی فروش مؤثر، کمک شایانی نمایند. سیستم های هوشمند پیشنهاد دهنده، برای ارائه پیشنهاد افزودن محصولات مرتبط با خرید مشتریان، در طول فرآیند بررسی سبد خریدشان در فروشگاه های آنلاین استفاده میشود.
-
معاملات خودکار سهام: برای بهینه سازی stock portfolios (مجموعه ای از سرمایه گذاری های مالی مانند سهام، اوراق قرضه، کالاها، وجه نقد و معادل های نقدی، از جمله صندوق های سرمایه گذاری و صندوق های قابل معامله در بورس است) طراحی شده اند. پلتفرمهای معاملاتی خودکار که از هوش مصنوعی بهره برده اند، می توانند هزاران یا حتی میلیونها معامله را در روز، بدون دخالت انسان انجام دهند.
چالش های یادگیری ماشینی
مطمئناً پیشرفت فناوری یادگیری ماشین یا Machine Learning، زندگی ما را آسانتر کرده است. با این حال، پیادهسازی یادگیری ماشین در کسبوکارها، می تواند از نظر اخلاقی نقایصی داشته باشد. برخی از نگرانی های ایجاد شده در مورد تکنولوژی های توسعه یافته بر اساس هوش مصنوعی، عبارتند از:
فرضیه Technological singularity
در حقیقت فرضیه technological singularity به معنی یک نقطه زمانی فرضی است که در آن رشد تکنولوژی غیرقابل کنترل و برگشت ناپذیر می شود و در نتیجه تغییرات غیر قابل پیش بینی در تمدن بشری ایجاد خواهد شد. در حالی که این موضوع توجه عمومی زیادی را به خود جلب می کند اما بسیاری از محققان نگران این فرضیه که هوش مصنوعی در آینده نزدیک از هوش انسانی پیشی بگیرد، نیستند.
تصویر (8)
از technological singularity به عنوان اَبَرهوش نیز یاد میشود، Nick Bostrum آن را بهعنوان «هوشی که عملاً در هر زمینهای، از جمله خلاقیت علمی، خرد عمومی و مهارتهای اجتماعی، بسیار بهتر از بهترین مغزهای انسان عمل میکند» تعریف می نماید. علیرغم این واقعیت که هوش مصنوعی و اَبَرهوش، قریب الوقوع نیست اما ایده های جالبی را مانند استفاده از سیستم های خودمختار، مانند اتومبیل های بدون راننده را به وجود می آورد.
تاثیر هوش مصنوعی بر مشاغل
در حالی که بسیاری از باورهای عمومی در مورد هوش مصنوعی روی از دست دادن شغل متمرکز می باشند اما نگرانی در این مورد بی دلیل است. با هر فناوری جدید، تقاضای بازار برای فرصت های شغلی خاص تغییر می کند. به عنوان مثال، در صنعت خودرو، بسیاری از تولیدکنندگان، مانند جنرال موتورز، روی تولید خودروهای الکتریکی تمرکز کرده اند تا با green initiatives (یک شرکت خصوصی که در سال 2015 با چندین طرح و هدف تغییر آب و هوا تاسیس شد) هماهنگ شوند.
صنعت انرژی از بین نمی رود اما منبع انرژی در حال تغییر از مصرف سوخت های فسیلی به مصرف برق است. هوش مصنوعی نیز باید به روشی مشابه مورد بررسی قرار گیرد، جایی که هوش مصنوعی تقاضا های شغلی را به عرصه های جدید دیگری هدایت می کند. با رشد و تغییر دادهها، باید افرادی در کنار این سیستم های هوشمند حضور داشته باشند تا به مدیریت این سیستمها کمک کنند. جنبه مهم هوش مصنوعی و تأثیر آن بر بازار کار، انتقال افراد به حوزه های کاری جدید خواهد بود.
حریم خصوصی
عبارت "حریم خصوصی" معمولاً در زمینه حریم خصوصی داده، حفاظت داده و امنیت داده مورد بحث قرار می گیرد و این نگرانی ها به سیاست گذاران این حوزه اجازه داده است که در سال های اخیر گام های بیشتری در راستای تحقق آن بردارند. به عنوان مثال، در سال 2016، قانون GDPR برای محافظت از داده های شخصی افراد در اتحادیه اروپا و منطقه اقتصادی اروپا ایجاد شد و به افراد امکان کنترل بیشتر روی داده هایشان را داد.
در ایالات متحده، ایالت های جداگانه در حال توسعه سیاست های حریم خصوصی هستند، مانند قانون حفظ حریم خصوصی مصرف کنندگان کالیفرنیا (California Consumer Privacy Act) که از کسب و کارها می خواهد که کاربران را در مورد جمع آوری اطلاعات آنها، آگاه کنند. این قانون شرکت ها را مجبور کرده تا در نحوه ذخیره و استفاده از داده های هویتی شخصی (personally identifiable data)، تجدید نظر کنند. در نتیجه، سرمایهگذاری در حوزه امنیت به اولویت بالایی برای کسب و کارها تبدیل شده است زیرا شرکت ها به دنبال حذف آسیب پذیری ها، فرصت های جاسوسی، هک و حملات سایبری خواهند بود.
سوگیری و امکان وجود تبعیض
مواردی از سوگیری های خاص یا تبعیض در اعلام نتیجه از سوی برخی سیستم های هوشمند، سوالات اخلاقی زیادی را در مورد استفاده از هوش مصنوعی ایجاد کرده است. چگونه میتوان از سوگیری ها و تبعیض احتمالی در سیستم های هوشمند در امان ماند در حالی که دادههای آموزشی خود میتوانند در معرض سوگیری قرار گیرند؟ در حالی که شرکتها معمولاً اهداف خوبی در خودکار سازی فرایند های داخلی خود دارند اما ممکن است نتیجه کاملا برعکس باشد. برای مثال آمازون برای خودکارسازی و آسان تر کردن فرآیند استخدام، از یک پروژه هوش مصنوعی استفاده کرد که این سیستم متاسفانه سوگیری هایی بر اساس جنسیت انجام داد و در نهایت به خاطر این خطا مجبور شدند پروژه را کنار بگذارند.
تصویر (9)
با رخ دادن چنین اتفاقاتی، Harvard Business Review سوالات مهم دیگری را در مورد استفاده از هوش مصنوعی برای استخدام مطرح کرده است، مانند اینکه باید از چه داده هایی هنگام ارزیابی یک فرد برای یک نقش استفاده کنید.
تبعیض و سوگیری فقط به عملکرد منابع انسانی محدود نمی شود. می توان آن را در تعدادی از برنامه ها، از نرم افزار تشخیص چهره گرفته تا الگوریتم های رسانه های اجتماعی نیز یافت.
همانطور که کسبوکارها از خطرات هوش مصنوعی آگاهتر میشوند، بحث در مورد رعایت اخلاق و ارزشها در هوش مصنوعی نیز فعالتر شده است.
مسئولیت پذیری
از آنجایی که قانونی برای تنظیم نحوه عملکرد هوش مصنوعی وجود ندارد، هیچ مکانیزم اجرایی برای اطمینان از اجرای هوش مصنوعی به صورت اخلاقی، وجود ندارد. برای پر کردن این شکاف، چارچوبهای اخلاقی به عنوان بخشی از همکاری بین فلاسفه حوزه اخلاق و محققان هوش مصنوعی برای کنترل ایجاد و توزیع مدلهای هوش مصنوعی در جامعه، پدیدار شدهاند. با این حال، در حال حاضر، اینها فقط برای راهنمایی هستند و تحقیقات نشان میدهد که ترکیبی از مسئولیت توزیع شده و فقدان آینده نگری نسبت به پیامدهای بالقوه، برای جلوگیری از آسیب به جامعه کافی نیست.