یادگیری ماشین چیست؟ (۴ گام انتخاب مدل یادگیری ماشین مناسب)
آیا تعصبات و تمایلات انسانی در آینده فناوری تاثیر دارد؟
شک نکنید که همه ما، انتخابهای خود را بر مبنای قضاوتهای از پیش کرده ای، انجام میدهیم. اما، آیا در تکنولوژی هم، این قضاوتها و تعصبات ما تاثیر دارد؟ آیا فناوری مدرن دنیای امروز، مانند هوش مصنوعی و یادگیری ماشین، توانایی مصون ماندن از تعصبات ما را دارد؟ اگر آره، راه حل آن چیست؟
برای جواب به این سؤال، باید ابتدا بفهمیم یادگیری ماشین چیست و سپس، به دنبال جواب بگردیم!
یادگیری ماشین چیست؟
یادگیری ماشین (Machine Learning)، علم مطالعه الگوریتمها و مدلهای آماری مورد استفاده سیستمهای کامپیوتری است، که بهجای استفاده از دستورالعملهای واضح، از الگوها و استنباط برای انجام وظایف استفاده میکنند. یادگیری ماشین در بسیاری زمینهها از جمله مهندسی، کسب و کار، زبانشناسی و پزشکی کاربرد دارد.
موتورهای جستجوی اینترنتی در گوگل یا بینگ از یادگیری ماشین استفاده میکنند، چرا که نرمافزار یادگیری ماشین آنها چگونگی رتبهبندی برای یک صفحه وبسایت را درک کردهاست. همینطور فیسبوک که تصاویر افراد را شناسایی میکند نوعی از یادگیری ماشین است.
هدفها و انگیزهها
هدف یادگیری ماشین این است که رایانهها و سامانهها بتوانند به تدریج و با افزایش دادهها کارایی بهتری در انجام وظیفه مورد نظر پیدا کنند. گستره این وظیفه میتواند از تشخیص خودکار چهره با دیدن چند نمونه از چهره مورد نظر تا فراگیری شیوه گامبرداری رباتهای دو پا با دریافت سیگنال پاداش و تنبیه باشد.
طیف پژوهشهایی که در یادگیری ماشین میشود؛ گستردهاست. پژوهشگران بر آناند که روشهای یادگیری تازهای به وجود بیاورند و امکانپذیری و کیفیت یادگیری را برای روشهایشان مطالعه کنند و در سوی دیگر عدهای از پژوهشگران سعی میکنند؛ روشهای یادگیری ماشین را بر مسائل تازهای اعمال کنند. البته این طیف گسسته نیست و پژوهشهای انجامشده دارای مؤلفههایی از هر دو رویکرد هستند.
تقسیمبندی مسائل
یکی از تقسیمبندیهای متداول در یادگیری ماشین، تقسیمبندی بر اساس نوع داده های در اختیار عامل هوشمند است. به سناریوی زیر توجه کنید:
فرض کنید به تازگی رباتی سگنما خریدهاید که میتواند توسط دوربینی دنیای خارج را مشاهده کند، به کمک میکروفنهایش صداها را بشنود، با بلندگوهایی با شما سخن بگوید و چهارپایهاش را حرکت دهد. همچنین، در جعبه این ربات دستگاه کنترل از راه دوری وجود دارد که میتوانید انواع مختلف دستورها را به ربات بدهید.
اولین کاری که میخواهید بکنید این است که؛ اگر ربات شما را دید خرناسه بکشد اما اگر غریبهای را مشاهده کرد با صدای بلند عوعو کند. فعلاً، فرض میکنیم که ربات توانایی تولید آن صداها را دارد اما هنوز چهره شما را نمیشناسد. پس کاری که میکنید این است که، جلوی چشمهایش قرار میگیرید و به کمک کنترل از راه دورتان به او دستور میدهید که چهرهای که جلویش میبیند را با خرناسهکشیدن مربوط کند.
اینکار را برای چند زاویه مختلف از صورتتان انجام میدهید تا مطمئن باشید که ربات در صورتی که شما را از مثلاً نیمرخ ببیند بهتان عوعو نکند. همچنین شما چند چهره غریبه نیز به او نشان میدهید و چهره غریبه را با دستور عوعوکردن مشخص میکنید. در این حالت شما به کامپیوتر ربات گفتهاید که چه ورودی را به چه خروجی مربوط کند. دقت کنید که هم ورودی و هم خروجی مشخص است و در اصطلاح خروجی برچسبدار است. به این شیوه یادگیری، یادگیری نظارتی میگویند.
اینک حالت دیگری را فرض کنید. برخلاف دفعه پیشین که به رباتتان میگفتید چه محرکهای را به چه خروجی ربط دهد، اینبار میخواهید ربات خودش چنین چیزی را یاد بگیرد. به این صورت که اگر شما را دید و خرناسه کشید به نحوی به او پاداش دهید (مثلاً به کمک همان کنترل از راه دورتان) و اگر به اشتباه به شما عوعو کرد، او را تنبیه کنید (باز هم با همان کنترل از راه دورتان). در این حالت به ربات نمیگویید به ازای هر شرایطی چه کاری مناسب است، بلکه اجازه میدهید ربات خود کاوش کند و تنها شما بر اساس نتیجه نهایی، وی را تشویق یا تنبیه میکنید.
به این شیوه یادگیری، یادگیری تقویتی میگویند.
در دو حالت پیش قرار بود ربات ورودی را به خروجی مرتبط کند. اما گاهی اوقات، تنها میخواهیم ربات بتواند تشخیص دهد که آنچه میبیند (یا میشنود و…) را به نوعی به آنچه پیشتر دیدهاست، ربط دهد؛ بدون اینکه بهطور مشخص بداند آنچیزی که دیده شدهاست چه چیزی است یا اینکه چه کاری در موقع دیدنش باید انجام دهد.
ربات هوشمند شما باید بتواند بین صندلی و انسان تفاوت قائل شود بیآنکه به او بگوییم این نمونهها صندلیاند و آن نمونههای دیگر انسان. در اینجا برخلاف یادگیری با نظارت هدف ارتباط ورودی و خروجی نیست، بلکه تنها دستهبندیی آنها است. این نوع یادگیری که به آن یادگیری بدون نظارت میگویند، بسیار مهم است؛ چون دنیای ربات پُر از ورودیهایی است که کسی برچسبی به آنها اختصاص نداده اما به وضوح جزئی از یک دسته هستند.
از آنجا که شما سرتان شلوغ است، در نتیجه در روز فقط میتوانید مدت محدودی با رباتتان بازی کنید و به او اشیا را نشان دهید و نامشان را بگویید (برچسبگذاری کنید). اما، ربات در طول روز روشن است و دادههای بسیاری را دریافت میکند. در اینجا، ربات میتواند هم به خودی خود و بدون نظارت یاد بگیرد و هم هنگامی که شما او را راهنمایی میکنید، سعی کند از آن تجارب شخصیاش استفاده کند و از آموزش شما بهره بیشتری ببرد. به ترکیبی که عامل هوشمند هم از دادههای بدون برچسب و هم از دادههای با برچسب استفاده میکند؛ یادگیری نیمه نظارتی میگویند.
یادگیری نظارتی
یادگیری تحت نظارت، یک روش عمومی در یادگیری ماشین است که در آن به یک سیستم، مجموعهای از جفتهای ورودی – خروجی ارائه شده و سیستم تلاش میکند تا تابعی از ورودی به خروجی را فرا گیرد. یادگیری نظارتی نیازمند تعدادی داده ورودی به منظور آموزش سیستم است و به دو دسته تقسیم میشود:
- رگرسیون
- طبقه بندی
رگرسیون، آن دسته از مسائل هستند که خروجی یک عدد پیوسته یا یک سری اعداد پیوسته هستند. مانند، پیشبینی قیمت خانه بر اساس اطلاعاتی مانند مساحت، تعداد اتاق خوابها و …
طبقه بندی، به آن دسته از مسائل گفته میشود که خروجی یک عضو از یک مجموعه باشد. مانند، پیشبینی اینکه یک ایمیل هرزنامه هست یا خیر یا پیشبینی نوع بیماری یک فرد از میان ۱۰ بیماری از پیش تعریف شده. با اینحال، ردهای از مسائل وجود دارند که، خروجی مناسبی که یک سیستم یادگیری نظارتی نیازمند آن است، برای آنها موجود نیست.
این نوع از مسائل چندان قابل جوابگویی با استفاده از این روش نیستند. یادگیری تقویتی، مدلی برای مسائلی از این قبیل فراهم میآورد. در یادگیری تقویتی، سیستم تلاش میکند تا تقابلات خود با یک محیط پویا را از طریق آزمون و خطا بهینه نماید.
یادگیری بدون نظارت
مثالی از یادگیری بدون نظارت
از یادگیری نظارت نشده در دنیای امروز میتوان مثالهای متعددی زد. یکی از پُرکاربردترین آنها، پیشنهادهایی است که به کاربران در شبکههای اجتماعی داده میشود. به عنوان مثال، در اینستاگرام دادههای زیادی از هر کاربر از جمله علایق شخصی، کسانی که دنبال میکند، دنبالکنندگان او وجود دارد. اینستاگرام براساس این دادهها، ویژگیهای کابران را تعیین کرده و آنها را خوشهبندی (Clustering) میکند. در نهایت، با توجه به خوشهای که کاربر درون آن قرار گرفتهاست، پیشنهادهای متعددی به وی در جهت درگیر کردن بیشتر او با این شبکه اجتماعی میدهد.
یادگیری تقویتی
هدف یادگیری تقویتی، این است که چگونه عاملهای نرمافزاری، باید یک عمل را مناسب محیط انتخاب کنند، تا پاداش بهینه، بیشینه شود. بسیاری از الگوریتمهای یادگیری تقویتی، از تکنیکهای برنامهنویسی پویا استفاده میکنند. الگوریتمهای یادگیری تقویتی، در وسایل نقلیه خودران یا در یادگیری بازی در برابر حریف انسانی استفاده میشود.
یادگیری فرهنگ لغت پراکنده
یادگیری دیکشنری پراکنده یا فرهنگ لغت پراکنده، یک روش یادگیری ویژه است؛ که در آن یک مثال آموزشی به عنوان ترکیبی خطی از توابع پایه ارائه میشود، و فرض بر این است که یک ماتریس پراکندهاست. یادگیری دیکشنری پراکنده در چندین زمینه استفاده شدهاست. در دستهبندی، مسئله مشخص کردن کلاسهایی است که قبلاً دیده نشدهاند و متعلق به نمونه آموزشی اند.
برای دیکشنری که در آن هر کلاس از قبل ساخته شدهاست، یک مثال آموزشی جدید با کلاس همراه است که به بهترین شکل توسط دیکشنری مربوط نمایش داده میشود؛ مثلاً، یادگیری دیکشنری پراکنده در تشخیص و جداسازی نویز تصویر استفاده شدهاست. ایده اصلی این است که تکههای تصویر تمیز و بدون نویز، میتواند جداگانه توسط یک دیکشنری تصویری نشان داده شود، اما قسمت نویز نمیتواند.
روشهای جدید یادگیری ماشین
ماشین سازنده متغیر همبسته بالا
این الگوریتم یک مدل ترکیبی جدید برای بهبود مدلهای رگرسیون و مدلهای شبکه عصبی مصنوعی برای پیشبینی پدیدهها و عملکرد مواد است. ماشین سازنده متغیر همبسته بالا، سعی دارد متغیرهای جدیدی را به جای متغیرهای اولیه ایجاد کند که در بهبود دقت مدلها موثرتر هستند. این متغیرها، از متغیرهای اولیه با استفاده از توابع ریاضی متغیرهای جدیدی ایجاد میکند؛ به گونه ای که ارتباط بیشتری با خروجی و همبستگی کمتری با ورودیهای دیگر دارند. در HCVCM، سه مرحله وجود دارد.
اول، با استفاده از چندین تابع ریاضی متغیرهای جدیدی ایجاد میکنند. سپس متغیرهای جدید انتخاب میشوند، که در مقایسه با متغیرهای اولیه ضریب همبستگی بیشتری با خروجی دارند. در مرحله سوم، فقط متغیرهای جدیدی انتخاب میشوند که همبستگی آنها کمتر از همبستگی بین متغیرهای اولیه است.
زبانهای برنامهنویسی برای یادگیری ماشین
امروزه با توجه به گستردگی زبانهای برنامهنویسی، علاقهمندان به این بخش از هوش مصنوعی از زبانهای مختلفی استفاده میکنند. پُراستفادهترین این زبانها عبارتند از:
- پایتون (Python)
- متلب (MATLAB)
- جاوا (Java)
- R
- جاوا اسکریپت
- سی شارپ
- اسکالا
نکتهای که باید در نظر داشت، این است که بهترین زبان برنامهنویسی برای هوش مصنوعی و یادگیری ماشین وجود ندارد. چرا که این مسئله، کاملاً وابسته به موردی است که برنامهنویس میخواهد برای آن موضوع کدنویسی کند.
الگوریتمهای یادگیری ماشین چه کاربردی دارند؟
الگوریتمهای بسیار مختلفی برای یادگیری ماشین وجود دارد و هر روزه صدها الگوریتم جدید نیز تولید می شوند، و به طور معمول توسط سبک یادگیری (مانند یادگیری نظارتی، یادگیری بدون نظارت، یادگیری نیمه نظارتی) و یا با توجه به شباهتشان در فرم و عملکرد ( مانند طبقه بندی، برگشت، درخت تصمیم گیری، دسته کردن و…) گروه بندی می شوند. صرف نظر از سبک یادگیری یا عملکرد، تمام الگوریتمهای یادگیری ماشینی به شرح زیر هستند:
- نمایش: مجموعه ای از طبقه بندی کنندهها یا زبانی که کامپیوتر آن را می فهمد.
- ارزشیابی: همچنین معروف به عملکرد هدف/نمره دهی
- بهینه سازی: روش جست و جو؛ اغلب طبقه بندی کننده ای با بالاترین امتیاز
هدف اساسی الگوریتمهای یادگیری ماشین، تعمیم یادگیریها به فراتر از نمونههای آموزش داده شده است؛ یعنی تفسیر موفقیت آمیز دادهها.
چرا یادگیری ماشین و دانستن در مورد آن اهمیت دارد؟
یادگیری ماشین نه تنها یک تکنولوژی جدید و کاربردی است بلکه قرار است در آینده نزدیک تغییرات بسیار زیادی را در دنیا ایجاد کند و تاثیرات عمیقی در دنیا و بخصوص حوزه اقتصاد و کسب و کارها خواهد داشت. در ادامه برخی از اطلاعات مربوط به یادگیری ماشین و هوش مصنوعی آورده شده تا میزان اهمیت آن بیشتر درک شود.
- مجموع اختراعات ثبت شده در زمینه یادگیری ماشین از سال ۲۰۱۳ تا سال ۲۰۱۷ میلادی دارای نرخ رشد سالانه ترکیبی ۳۴% بوده است و این مسئله باعث شده که این حوزه به رتبه سوم در ثبت اختراع تبدیل شود.
- سازمان International Data Corporation (IDC) پیشبینی میکند که میزان سرمایه گذاری در حوزه هوش مصنوعی و یادگیری ماشین از حدود ۱۲ بیلیون دلار در سال ۲۰۱۷ به حدود ۵۷.۶ بیلیون دلار تا سال ۲۰۲۱ برسد.
با افزایش اهمیت کلان داده ها و پیچیده شدن فرآیند تجزیه و تحلیل آنها، یادگیری ماشین به یک روش اصلی برای رسیدگی به مسائل مربوط به کلان دادهها، تبدیل شده است. در این مواقع یادگیری ماشین میتواند به کارهای زیر رسیدگی کند:
- امور مالی، محاسبات، نمرهدهی اعتبارات و تجارت الگوریتمی
- پردازش تصویر، بینایی کامپیوتری، تشخیص چهره، تشخیص حرکت و تشخیص شیء
- زیست شناسی محاسباتی، تشخیص تومورهای سرطانی، تعیین توالی DNA، کشف دارو و حتی موارد مخدر
- تولید انرژی، پیشبینی قیمت بازار
- ساخت خودرو، حوزه هوافضا
- پردازش زبان طبیعی، برنامههای تشخیص و شناسایی صدا و زبان
یادگیری ماشین، توانایی یادگیری مستقل را برای ماشینها ایجاد میکند. یعنی به عبارتی یک ماشین میتواند از تجربیات، مشاهدات و الگوهایی که بر اساس یک مجموعه داده تجزیه و تحلیل میکند، آموزش ببیند. نکته مهم آن است که برای این کار لازم نیست به صورت اختصاصی برنامه ریزی شده باشد.
زمانی که برای برنامه خاصی کد نویسی میکنیم، در حقیقت داریم مجموعه شخصی از دستورها را برای سیستم ایجاد میکنیم تا با پیروی از آنها بتواند به نتیجه مورد نظر برسد. در حالی که در یادگیری ماشین، ما مجموعهای از دادهها را وارد میکنیم، تا از این طریق دستگاه بتواند با شناسایی و تجزیه الگوهای موجود در دادهها یادگیری داشته باشد و بر اساس این یادگیری بتواند از مشاهدات و اطلاعات خود نتیجه بگیرد و تصمیم گیری داشته باشد.
همهی اینها در نهایت باعث میشود که یک سیستم هوشمند و دارای قدرت تفکر تولید شود، که میتواند کارهای بسیار زیادی را انجام دهد.
چه زمانی به سراغ یادگیری ماشین میرویم؟
اگر به موارد زیر برخوردید، و یا حتی در بسیاری از موارد دیگر، میتوانید به سراغ یادگیری ماشین بروید:
- قوانین و معادلات که برای انسان بسیار پیچیده هستند، مانند تشخیص چهره و تشخیص گفتار
- انجام یک کار که دائما در حال تغییر است، مانند تشخیص کلاهبرداری از سوابق معاملات
- کاری که ماهیت دادههای آن در حال تغییر است و برنامه نیز باید مطابق با این دادهها سازگار شود. مانند تجارت خودکار، پیشبینی تقاضای انرژی و پیشبینی روند خرید
فرآیندهای یادگیری ماشین
در ادامه میخواهیم فرآیندهای یادگیری ماشین را تجزیه و تحلیل کنیم تا بتوانیم جزئیات آن را درک کنیم.
جمع آوری و تهیه داده
اولین قدم، در فرآیند یادگیری ماشین این است که ما دانش و داده مورد نیاز را برای یک ماشین تهیه کنیم. این دادهها به دو گروه تقسیم میشوند و یک گروه برای آموزش سیستم استفاده میشوند و گروه دیگر برای آزمایش سیستم. توجه داشته باشید که ما برای مثال میخواهیم نرمافزاری بسازیم، که بتواند یک فرد را به به محض اینکه در تصویر دید، شناسایی کند. برای این کار، در ابتدا با جمع آوری دادهها یعنی بعنوان مثال عکسهای افراد، شروع میکنیم.
علاوه بر آن، باید به این مسئله توجه داشته باشیم که دادههای انتخابی نماینده کل جمعیت باشند، بعنی در همان مثال تصویر اگر عکسهایی که برای آموزش انتخاب میکنیم افراد بین ۲۰ تا ۴۰ سال هستند، سیستم فقط توانایی شناخت افرادی با این میزان سن را دارد و اگر تصویری از کودکی به او نشان داده شود دچار مشکل میشود. دادهها معمولا به میزان ۸۰/۲۰ و یا ۷۰/۳۰ تقسیم میشوند تا اطمینان حاصل شود که مدل پس از آموزش کافی، میتواند بعدا آزمایش شود.
انتخاب و آموزش یک مدل
دومین مرحله و قدم بعدی در اصول یادگیری ماشین، انتخاب یک مدل و آموزش آن است. ما انواع مختلفی از الگوریتمها و مدلهای یادگیری ماشین داریم، که قبلا ایجاد و اصلاح شدهاند؛ تا بتوانند نوع خاصی از مسئله و یا مشکل را حل کنند. بنابراین، بسته به نیاز و مناسب بودن مدل برای حل مسئله مورد نظر، مدلی را انتخاب میکنیم و آموزش میدهیم.
ارزیابی یک مدل
یک ماشین، الگوها و خصوصیات مختلفی را از دادههایی که به آن آموزش داده شده است، یاد میگیرد و خود را برای تصمیمگیریهایی در زمینههای مختلف؛ مانند شناسایی، طبقه بندی یا پیش بینی دادههای جدید آموزش میدهد. برای بررسی دقیق اینکه ماشین چگونه قادر به اتخاذ این تصمیمات است، پیش بینیها را بر روی دادههای آموزش داده شده، آزمایش میکنند.
برای این کار، ابتدا بر روی دادههای آموزش داده شده کار میکنیم و پس از آموزش مدل به اندازه کافی، از آن برای آزمایش بر اساس دادهها استفاده میکنیم، تا بفهمیم برای مثال سیستم چه مقدار در تشخیص چهره موفق عمل میکند و چه میزان دقت دارد.
تنظیم و پیشبینی ابر پارامترها
در اصطلاحات مربوط به یادگیری ماشین، ابر پارامترها، پارامترهایی هستند که توسط خود مدل نمیتوانند تخمین زده شوند. اما، ما هنوز نیاز داریم تا آنها را بررسی کنیم، زیرا که نقش بسیار مهمی در افزایش عملکرد مدل دارند.
اگر بخواهیم تعریفی سنتی ارائه دهیم؛ ابر پارامترها در یادگیری ماشین، پارامترهایی هستند که باید توسط کاربر برای اجرای الگوریتم، مشخص شوند. پارامترهای کلاسیک به وسیله دادهها آموزش داده میشوند، در حالی که ابر پارامترها ممکن است از دادهها یاد بگیرند یا نه. پس از اتمام فرآیند بهینه سازی ابر پارامترها، می توان گفت که مدل یادگیری ماشین ساخته شده است و بسته به میزان موفقیت آن یا به طور دقیق، توانایی پیش بینی آن، می توانیم آن را در دنیای واقعی اجرا و پیاده سازی کنیم. بنابراین، با کمک روشهایی که گفته شد، می توانیم یک الگوریتم یادگیری ماشین بسازیم.
تاریخچه یادگیری ماشین
در سال ۱۹۴۳، برای اولین بار در یک مقاله تحقیقاتی مفهوم شبکههای عصبی مطرح شد. اما، به دلیل بالا بودن هزینههای محاسباتی و سخت بودن تهیه دادههای مورد نیاز برای آموزش ماشینها، سرعت پیشرفت این علم کند بود و فقط مؤسسات دانشگاهی بزرگ یا شرکتهای چند ملیتی میتوانستند روی این علم مطالعات انجام دهند. اما در سالهای اخیر با ظهور اینترنت و پیشرفت سخت افزارها این مشکلات از سر راه یادگیری ماشین کنار رفته است.
در این بخش، تاریخچه یادگیری ماشین و کارهایی که در سالهای مختلف در این زمینه انجام شده است را بیان می کنیم.
- در سال ۱۹۵۰، آلن تورینگ یک تست اختراع کرد، تا ببیند آیا یک انسان هنگام صحبت کردن با یک ماشین میتواند به اشتباه بیفتد که با یک انسان حرف میزند یا نه
- در سال ۱۹۵۲، آرتور ساموئل اولین برنامه یادگیری ماشین را، که بازی چکرز بود نوشت. در این بازی، کامپیوتر به مرور زمان و با انجام بازیهای بیشتر پیشرفت میکرد و مهارتهای بیشتری برای برنده شدن در بازی پیدا میکرد.
- در سال ۱۹۵۷، فرانک روزنبلات اولین شبکه عصبی برای کامپیوترها را اختراع کرد. این برنامه میتوانست از فرایند تفکر انسان در ماشین تقلید کند.
- در سال ۱۹۶۷، الگوریتم نزدیکترین همسایگی نوشته شد.
- در سال ۱۹۷۹، دانشجویان استنفورد سبد استنفورد را اختراع کردند، که میتوانست به تنهایی حرکت کند و با اشیای دیگر تصادف نکند.
- در سال ۱۹۹۷، سیستم Deep Blue شرکت IBM، قهرمان شطرنج جهان را شکست داد.
- در سال ۲۰۰۶، جفری هینتون اصطلاح یادگیری عمیق را برای توضیح الگوریتمهای جدیدی به کار برد، که به رایانهها اجازه میداد اشیاء و متن را در تصاویر و فیلمها ببینند و از هم متمایز کنند.
- در سال ۲۰۱۰، کینکت مایکروسافت به افراد اجازه داد، تا از طریق حرکات و ژستها با کامپیوتر تعامل داشته باشند.
- در سال ۲۰۱۲، Google’s X Lab یک الگوریتم یادگیری ماشین را توسعه داد، که میتوانست به طور مستقل ویدیوهای یوتیوب را مرور کند و ویدیوهای حاوی گربه را شناسایی کند.
- در سال ۲۰۱۶، الگوریتم AlphaGo توانست در بازیهای تختهای چینی Go تعداد پنج بازی از پنج بازی را ببرد.
دانلود رایگان کتاب جهانی از اعداد
معایب یادگیری ماشین
با وجود اینها، یادگیری ماشین معایبی نیز به همراه دارد. اول از همه، استفاده از آن ممکن است هزینهبر باشد. پروژههای یادگیری ماشین، معمولا توسط دانشمندان داده هدایت میشوند، که آنها هم حقوق بالایی دارند. این پروژهها همچنین به زیرساختهای نرمافزاری نیاز دارند، که این زیرساختها نیز میتوانند گران تمام شوند. همچنین مشکل دیگری تحت عنوان جهتگیری متعصبانه نیز دارد.
به عبارت دیگر، برخی الگوریتمها ممکن است، روی مجموعه دادههایی آموزش داده شوند، که گروههای خاصی را حذف میکنند یا در مورد آنها نتایج غلطی ارائه میدهند. این الگوریتمها، میتوانند به ارائهی مدلهای نادرستی از دادهها منجر شوند، که این مدلها در بهترین حالت شکست میخورند و در بدترین حالت نیز به مدلهای تبعیضآمیز مبدل میشوند. در نتیجه، هنگامی که شرکتی فرایندهای اصلی کسبوکار خود را بر اساس چنین مدلهای تبعیضآمیزی تنظیم میکند، نتیجهی به دست آمده میتواند غیرقانونی بوده یا به محبوبیت کسبوکار آسیب برساند.
یادگیری ماشین چیست؟
نحوهی انتخاب مدل یادگیری ماشینی مناسب چیست؟
فرایند انتخاب مدل یادگیری ماشین مناسب برای حل یک مشکل، اگر به صورت استراتژیک انجام نشود، میتواند زمانبر باشد. در ادامه، مراحلی استراتژیک برای دستیابی به مدل مناسب ارائه شده است.
گام اول: دادههای بالقوهی ورودی که باید برای راه حل مسئلهی مربوطه در نظر گرفته شوند، در ابتدا بررسی میشوند. این مرحله به کمک دانشمندان داده و کارشناسانی نیاز دارد که درک عمیقی از مسئلهی مذکور دارند.
گام دوم: دادهها در این مرحله جمع آوری میشوند، آنها به فرمت مشخصی تبدیل شده و در صورت لزوم برچسبگذاری میشوند. هدایت این مرحله معمولا برعهده دانشمندان داده و با کمک افرادی است که داده ها را آماده کردهاند.
گام سوم: الگوریتم یا الگوریتمهای مورد استفاده، انتخاب و آزمایش میشود تا کارکرد آنها روی دادههای مورد نظر ارزیابی شود. دانشمندان داده معمولا افرادی هستند که این مرحله را انجام میدهند.
گام چهارم: خروجیها به طور دقیق بررسی میشوند و این مرحله تا زمانی ادامه مییابد که، خروجی الگوریتم به سطح قابل قبولی از دقت برسد. این مرحله معمولا توسط دانشمندان داده به همراه ارائه از جانب کارشناسانی انجام میشود، که درک عمیقی از مسئلهی مذکور دارند.
پس، به جواب سؤال اول خود رسیدیم. اگرچه تعصبات انسانی، همیشه کار را سخت میکند؛ اما هوش مصنوعی و یادگیری ماشین، به کمک ما میایند، تا از قضاوتهای نادرست و زودهنگام، دوری کنیم. تکنولوژی، برای کمک به درست زندگی کردن به وجود آمده است. با هم برای این هدف تلاش خواهیم کرد. امیدوارم این مطلب برای شما مفید بوده باشد!