خوشه بندی اساسی در یادگیری ماشین

مدل خوشه بندی
مدل خوشه بندی مدل یادگیری ماشین بدون فشار تحت فشار ، که هدف ندارد یا نمونه اولیه ای از نتایج را ندارد ، این مدل هایی هستند که برای گروه بندی اطلاعاتی که قبلاً هرگز سازماندهی نشده اند ، استفاده می شوند. که گروه های داده را از شباهت تقسیم می کند ، مانند گروه مشتریان از رفتار خرید مشتری که ویژگی های مشابهی دارد ، همان نوع گروه های مشتری خواهد بود
الگوریتم های مورد استفاده برای ساخت مدل خوشه بندی شامل K-Mean و DBScan
ابتدا با K-Mean آشنا شوید.
K-Mean یکی از روشهای داده کاوی در گروه Laerning بدون فشار است یا یک ترجمه مستقیم یادگیری بدون تدریس است (یادگیری تحت نظارت ، باید قبل از گرفتن قطار آموزش دهد و باید آزمایش کند.) عملکرد اصلی K-Mean گروه خوشه بندی است که به گروه های آماری تقسیم می شود. که البته باید حداقل 2 شماره متغیر داشته باشد
در این مقاله ، ما به K-Mean در پایتون خواهیم پرداخت. ما از Google Colab برای اجرای کد استفاده خواهیم کرد.
مثال استفاده از K-Mean برای تقسیم مشتریان از درآمد و رفتار هزینه است.
مرحله 1: داده ها را از CSV بارگیری کنید
- برای بارگیری اطلاعات از پیوندهای .csv مشتری در بازار ، از پاندا استفاده کنید.
- برای دیدن 5 ردیف اول داده از .head () استفاده کنید.
نتیجه کد
مرحله 2: داده های تحلیلی را انتخاب کنید.
- ما فقط 2 ستون را انتخاب می کنیم: درآمد سالانه و نمره هزینه.
نتیجه کد
مرحله 3: نمایش طرح پراکندگی
- نمودار توزیع مشتری را نشان دهید تا ببینید که چگونه مشتریان از هم جدا می شوند.
نتیجه کد
مرحله 4: از روش آرنج برای یافتن سمت راست K استفاده کنید.
- گروه های آزمایش از 2 تا 9 گروه
- محاسبه INRTIA (فاصله کل در گروه)
- طرح پیوند برای دیدن کدام K مناسب ترین است. (از نقطه کسر چالش دیدن کنید)
نتیجه کد
مرحله 5: مدل K-Means را در K = 5 ایجاد کنید
- برای تقسیم مشتریان به 5 گروه (همانطور که از روش آرنج به دست آمده است) از KMeans استفاده کنید.
نتیجه کد
مرحله ششم: مرکز هر خوشه را پیدا کنید.
- مختصات مرکز هر گروه (مرکز خوشه) را ببینید
- به ما کمک می کند تا درک کنیم کدام گروه از درآمد/رفتار
نتیجه کد
مرحله 7: از جمله اطلاعات مشتری با Centroid و اضافه کردن برچسب
- اطلاعات مشتری + Centroid را در یک جدول همراه کنید.
- برای مشتریان برچسب Cluster (0-4) (0-4) را وارد کنید.
- برچسب ویژه “20” را به نقطه Centroid وارد کنید تا به طور جداگانه از مشتریان نمایش داده شود.
نتیجه کد
مرحله 8: گروه های مشتری جداگانه را نشان دهید
- برای نشان دادن گروهی از نمودارهای جداگانه در خوشه از pairplot استفاده کنید.
نتیجه کد
مرحله 9: به اینرسی نهایی مراجعه کنید.
- ببینید مدل چقدر دقیق ایجاد شده است. (مقدار کمتری)
- برای ارزیابی کیفیت تقسیم گروه استفاده می شود
نتیجه کد
از این مثال ، K-Means راهی برای تقسیم گروه های داده بر اساس فاصله از مرکز هر گروه (Centroid) است که کاربران باید از قبل تعداد گروه ها (k) را از قبل مشخص کنند ، سپس از محاسبات مکرر استفاده کنند. برای یافتن موقعیت مرکز جدید تا زمانی که سیستم هنوز هم باشد
مزایای استفاده از k به راحتی قابل استفاده است. مناسب برای مبتدیان اما محدودیت این است که قادر به کنترل خوب (دورتر) و مناسب برای گروه هایی نیست که مانند یک دایره شکل می گیرند.
نمونه های بیشتر
ما نمونه های داده دیگری مانند اطلاعات DBSCAN را امتحان خواهیم کرد. (خوشه بندی مکانی مبتنی بر چگالی برنامه های کاربردی با سر و صدا)
ابتدا با DBSCAN آشنا شوید.
DBSCAN (خوشه بندی اسپاتیل مبتنی بر چگالی برنامه های با سر و صدا) برای یافتن منطقه ای است که در آن جزیره داده است. که می تواند از نقطه داده اطراف در یک شعاع مشخص محاسبه شود
ما برای دیدن DBSCAN در پایتون خواهیم آمد. ما از Google Colab برای اجرای کد استفاده خواهیم کرد.
مثال تقسیم مشتریانی است که از تکنیک های DBSCAN استفاده می کنند.
مرحله 1: بارگیری داده ها
- اطلاعات را از URL مشخص شده ، که اطلاعات مربوط به مشتریان در بازار (مشتریان بازار) است ، بارگیری کنید.
نتیجه کد
مرحله 2: ستون مورد نظر را انتخاب کنید.
- ستون درآمد سالانه (k $) و نمره هزینه (1-100) را انتخاب کنید زیرا این اطلاعاتی است که می خواهیم برای سازماندهی مشتریان استفاده کنیم.
نتیجه کد
مرحله 3: تنظیم داده ها (استاندارد سازی)
- اندازه داده ها را تنظیم کنید تا ارزش هر دو متغیر (درآمد سالانه و نمره هزینه) را در همان مقیاس (با میانگین 0 و انحراف استاندارد 1) ارائه دهد ، که به خوشه بندی کمک می کند تا دقیق تر شود.
نتیجه کد
مرحله 4: استفاده از DBSCAN برای گروه بندی
- از DBSCAN برای گروه بندی داده ها با استفاده از مقدار EPS (اندازه شعاع مورد استفاده برای اتصال نقطه داده) و min_samples استفاده کنید (تعداد امتیازاتی که باید در گروه باشد تا نقطه بتواند یک گروه ایجاد کند).
- EPS = 0.3: حداکثر فاصله بین دو نقطه را که می تواند در یک گروه گنجانده شود ، تعیین کنید.
- min_samples = 10: حداقل تعداد امتیازات گروه را تعریف کنید که می تواند به عنوان یک گروه در نظر گرفته شود.
- نتایج گروه (برچسب ها) را در ستون خوشه DataFrame وارد کنید.
نتیجه کد
مرحله 5: نتایج را با نمودارها نشان دهید
- از Seaborn و Matplotlib برای ایجاد نمودار نقشه پراکندگی برای نمایش اطلاعات سازماندهی شده توسط DBSCAN استفاده کنید.
- ما اطلاعات را در هر گروه مشاهده خواهیم کرد (خوشه 0 ، خوشه 1 ، خوشه -1) در رنگ ها و نمادهای مختلف نمایش داده می شود.
نتیجه کد
از این مثال ، DBSCAN تکنیکی است که از قبل به گروه ها احتیاج ندارد. در صورتی که هر منطقه اطلاعات کافی داشته باشد ، اطلاعاتی در خارج از گروه به عنوان “سر و صدا” یا اختلال در نظر گرفته می شود.
DBSCAN از K-Means انعطاف پذیرتر است ، زیرا می تواند داده های پیچیده ای را کنترل کند و از نظر بسیار خوبی برخوردار باشد ، اما باید مقادیر Ramian مانند EPS و min_samples را با دقت انتخاب کند.
پایان
برای این مقاله نمونه ای از خوشه بندی از 2 مجموعه داده ، یعنی K-Mean و DBSCAN را نشان داده ایم. ما می توانیم سعی کنیم متغیرها را برای ایجاد معادلات دیگر رگرسیون خطی توسط خودمان تغییر دهیم.
ارجاع دادن
1. خوشه بندی – dbscan
2. یادگیری ماشین با مدل خوشه بندی
3.Blog برای چاکریت
4.Colab
5.Chatgpt