کاربردهای یادگیری ماشین ، ساخت آن و مهارتهای مورد نیاز
یادگیری ماشین یکی از کلمات سنگینی است که این روزها زیاد آن را میشنوید. بیشتر مدیران دوست دارند از کاربردهای یادگیری ماشین استفاده کنند، اما نمیدانند معنای دقیق آن چیست و از کجا باید شروع کنند. شاید در نگاه اول رازآلود، بیش از اندازه فنی و حتی ترسناک به نظر برسد، اما در این مطلب به خوبی توضیح میدهیم که یادگیری ماشین چیست، کاربردهای آن کدام هستند، چطور ساخته میشود و برای استفاده از آن در سطح مدیریتی چه مهارتهایی باید داشته باشید.
یادگیری ماشین چیست؟
به بیان ساده، یادگیری ماشین توانایی برخی از برنامههای کامپیوتری خاص برای یادگیری از تجارب، درست همانگونه که انسانها از تجربههایشان میآموزند، است. برای توصیف دقیقتر بیایید کمی به گذشته سفر کنیم، به زمانی که یک نوزاد بودید و والدین سعی داشتند به شما یاد دهند کدام حیوان سگ است و کدام گربه. برای این کار اولین کاری که میکردند این بود که تصویر یک سگ از نژاد لابرادو را نشانتان میدادند و میگفتند «سگ». بعد از آن نوبت تصویری از یک گربه ایرانی بود و برای شما تکرار میکردند «گربه». این کار را با تصاویر مختلف سگ و گربه برایتان انجام میدادند، سگ و گربههایی با نژادهای مختلف و در حالتهای مختلف.
یک روز شما سگی را میبینید که هرگز مشابهش را ندیدهاید، سگی از نژاد متفاوت. در این شرایط به درستی تشخیص میدهید که آن یک سگ است. چطور این اتفاق افتاد؟ هیچ کس تا به حال نژاد آن سگ خاص را به شما نشان نداده بود و نگفته بود این یک سگ است، اما شما باز هم توانستید آن را طبق تجربه طبقهبندی کنید و این مهارت را با دیدن سگهای دیگر به دست آوردید.
روش کار یادگیری ماشین هم شباهت زیادی به این موضوع دارد. ما میتوانیم تصاویر طبقهبندی شده از سگها و گربههای مختلف را به عنوان مثالهای گوناگون به برنامه کامپیوتری نشان دهیم. اگر تعداد مثالهایی که با آن به برنامه آموزش میدهیم، کافی باشد، برنامه میتواند توانایی تشخیص سگ و گربه را داشته باشد. حتی میتواند نژادهایی از سگ یا گربه که تا به حال ندیده را هم به عنوان سگ یا گربه شناسایی کند و این کار را حتی بهتر از انسانها انجام میدهد.
کاربردهای یادگیری ماشین
همانطور که تشخیص سگ و گربه را میتوانیم به برنامه کامپیوتری یاد دهیم، امکان آموزش در زمینههای دیگر هم فراهم است. مثلا این که تصویر ریه یک فرد نشان دهنده یک ریه سالم است یا سرطانی. جالب است بدانید Google دقیقا این کار را کرده و با نشان دادن هزاران تصویر از ریه سالم و سرطانی به کامپیوتر، توانایی تشخیص این دو را به آن آموخته و جالبتر این که دقت تشخیص برنامه کامپیوتری 100% بوده است. پس حالا میتوانید تصور کنید که این اقدام تا چه اندازه میتواند تاثیرگذار باشد. فرض کنید در شرایطی که دسترسی به پزشک نباشد، این تکنولوژی چقدر کار را راحت میکند. به همین دلیل است که یادگیری ماشین پتانسیل خوبی برای نجات جان افراد دارد.
یکی از زیرمجموعه های یادگیری ماشین یادگیری عمیق Deep Learning (DL) نام دارد و توانسته بخش بینایی ماشین را متحول کند. بینایی ماشین یعنی استفاده از کامپیوترها برای درک و تفسیر تصاویر و ویدئوها. برخی از کاربردهای بینایی ماشین به شرح زیر هستند:
1- طبقهبندی تصاویر پزشکی
2- شناسایی چهره Apple
3- جستجوی وارونه Google
4- برچسب زدن Facebook
5- متعادلسازی محتوا Youtube
6- دوربین تشخیص صحنه گوشی هوشمند
7- تقویت کیفیت بازیهای ویدئویی NVIDIA به نام Deep Learning Super Sampling
8- اتومبیلهای خودران
و برنامههای بسیار دیگر.
چطور یک سیستم یادگیری ماشین بسازیم
بیشتر سیستمهای یادگیری ماشین دو فاز اولیه دارند:
1- فاز تمرینی
2- فاز آزمایشی/ استنباطی
در فاز تمرینی انسان به سیستم یادگیری ماشین نمونههای زیادی از دادههای مربوط به وظایفی که میخواهد سیستم یاد بگیرد و انجام دهد، را نشان میدهد. این فاز شبیه به همان بخشی است که والدین کودکان به آنها تصویر نشان میدهند. در فاز آزمایشی یا استنباطی ما از سیستم یادگیری ماشینی که تصاویر را آموخته استفاده میکنیم تا نمونههای جدید که قبلا ندیده را پیشبینی کند. این بخش شبیه به قسمتی است که یک کودک نژاد جدیدی از سگ را میبیند که قبلا شبیه به آن را ندیده بوده است. یا بخشی که سیستم یادگیری ماشین توانست ریه سالم را از سرطانی تشخیص دهد.
با تمام قدرت منقلبکنندهای که کاربردهای یادگیری ماشین دارد، باز هم میزان توانایی آن رابطه مستقیم با تعداد تصاویری دارد که به آن نشان میدهیم. به محض این که سیستم یادگیری ماشین کاری که باید انجام دهد را یاد بگیرد، آن را بهتر از نیروی انسانی انجام میدهد. برای مثال سیستم Google با نام Alpha Go بود که توانست در بازی Go بهترین بازیکن که یک انسان بود را شکست دهد. Alpha Go انقدر خوب بود که بسیاری از استراتژیهای مورد استفاده آن برای برنده شدن باعث گیج شدن متخصصان شد و بسیاری از آنها شروع به یادگیری استراتژیهای آن کردند.
مهارتهای مورد نیاز
حالا که به قدرت یادگیری ماشین پی بردید، چطور میخواهید آن را برای خودتان به کار گیرید؟ اینها مهارتهایی هستند که باید آنها را یاد بگیرید:
1- ریاضیات و آمار
2- علم منطق و برنامهنویسی: مخصوصا پایتون Python
3- چارچوبهای هوش مصنوعی: Tensorflow ،Pytorch ،Numpy، Pandas ،Sklearn ،Matplotlib
گاهی اوقات این یک مزیت است که آمار را با پایتون یاد بگیرید تا بتوانید تئوریها را با تمرین ادغام کنید. همچنین درباره انتخاب استفاده از پایتون یا زبانهای برنامهنویسی R تردیدهایی وجود دارد. اگر زمان کافی دارید هر دو زبان را به خوبی یاد بگیرید. البته بدون شک بیشتر سیستمهای یادگیری ماشین از پایتون استفاده میکنند. اما اگر زمان شما محدود است، تمرکز روی پایتون بیشترین شانس به دست آوردن یک شغل در زمینه یادگیری ماشین را به شما میدهد.