یادگیری ماشین در R — بخش دوم، الگوریتم k-NN

اولین الگوریتمی که در این سری از پست‌ها به آن می‌پردازیم، الگوریتم K- near­est neigh­bours یا به اختصار k-NN نام دارد. این الگوریتم  یکی از ساده‌ترین الگوریتم‌های یادگیری ماشینی است و به دسته‌ای از این الگوریتم‌ها به نام الگوریتم‌های clas­si­fi­ca­tion (طبقه‌بندی) تعلق دارد. الگوریتم‌های clas­si­fi­ca­tion در یادگیری ماشینی و آمار، الگوریتم‌هایی هستند که مشخص می‌کنند با توجه به یک مجموعه‌ی داده موجود و مورد استفاده به منظور آموزش که شامل مشاهداتی است که عضویتشان در یک دسته موجود است، یک مشاهده جدید به کدام یک از مجموعه دسته‌ها( زیرجمعیت‌ها) تعلق دارد. این الگوریتم در دسته‌ای از الگوریتم‌های یادگیری ماشین به نام یادگیری با نظارت قرار می‌گیرد.

بیشتر بخوانید

یادگیری ماشین در R — بخش یک و نیم، طبقه‌بندی الگوریتم‌های یادگیری ماشینی

قرار بود این پست درباره‌ی اولین الگوریتم این سری به نام k-NN باشد اما متاسفانه من به این نکته توجه نکرده بودم که بدون ارایه‌ی یک طبقه‌بندی مناسب برای این الگوریتم‌ها، کار نوشتن درباره‌ی آنها سخت خواهد شد. برای طبقه‌بندی این الگوریتم‌ها به دو روش عمل می‌شود:

  • طبقه‌بندی بر اساس نحوه یادگیری
  • طبقه‌بندی بر اساس کاربرد و شباهت بین الگوریتم‌ها

بیشتر بخوانید

یادگیری ماشینی در R — بخش اول، مقدمه

یادگیری ماشینی شاخه‌ای از علوم کامپیوتر است که به گفته آرتور ساموئل در ۱۹۵۹، به کامپیوترها توانایی یاد گرفتن می‌دهد، بدون آن که صراحتا برای آن برنامه‌ریزی شده باشند. یادگیری ماشینی از مطالعه شناسایی الگوها و نظریه یادگیری محاسباتی تکامل یافته و به طور کلی به مطالعه و ساخت الگوریتم‌هایی می‌پردازد که می‌توانند از داده‌های موجود یاد بگیرند و بر روی داده‌ها پیش‌بینی انجام دهند. در این مجموعه پست‌ها که هنوز معلوم نیست تا کی ادامه داشته باشید، قصد دارم درباره‌ی الگوریتم‌های رایج یادگیری ماشینی که پیاده‌سازی آنها در R آسان است و یا پکیج‌های خوبی در R دارند بنویسم. ایده‌ی کلی این مجموعه آشنایی با آن بخش از یادگیری ماشینی است که در مبحث تحلیل داده کاربرد دارند و قرار نیست به کاربردهای پیچیده‌تر آن برسد. این پست‌ها را با الگوریتم‌های کلسیفایر مانند K-NN در پست بعدی شروع می‌کنیم، در ادامه به الگوریتم‌های پیشبینی مانند مدل‌های رگرسیونی خواهیم رسید و در نهایت به انواع دیگر الگوریتم‌های یادگیری ماشینی می‌رسیم. هدف این پستها ارایه‌ی یک توضیح فارسی برای الگوریتم، کد R آن و یک دیتاست به عنوان مثال است. اگر پیشنهادی برای این مجموعه دارید، یا دیتاستی مناسب برای این مجموعه سراغ دارید خوشحال می‌شود در نظرات همین مطلب آن را به اشتراک بگذارید.