دیتاماینینگ یار

خوشه‌بندی در داده کاوی

تحلیل خوشه‌بندی (Cluster Analysis) یا بطور خلاصه خوشه‌بندی، فرآیندی است که به کمک آن می‌توان مجموعه‌ای از اشیاء را به گروه‌های مجزا افراز کرد. هر افراز یک خوشه نامیده می‌شود. اعضاء هر خوشه با توجه به ویژگی‌هایی که دارند به یکدیگر بسیار شبیه هستند و در عوض میزان شباهت بین خوشه‌ها کمترین مقدار است. در چنین حالتی هدف از خوشه‌بندی، نسبت دادن برچسب‌هایی به اشیاء است که نشان دهنده عضویت هر شیء به خوشه است.

به این ترتیب تفاوت اصلی که بین تحلیل خوشه‌بندی و تحلیل طبقه‌بندی (Classification Analysis) وجود دارد، نداشتن برچسب‌های اولیه برای مشاهدات است. در نتیجه براساس ویژگی‌های مشترک و روش‌های اندازه‌گیری فاصله یا شباهت بین اشیاء، باید برچسب‌هایی بطور خودکار نسبت داده شوند. در حالیکه در طبقه‌بندی برچسب‌های اولیه موجود است و باید با استفاده از الگوی‌های پیش‌بینی قادر به برچسب گذاری برای مشاهدات جدید باشیم.

با توجه به روش‌های مختلف اندازه‌گیری شباهت یا الگوریتم‌های تشکیل خوشه‌،‌ ممکن است نتایج خوشه‌بندی برای مجموعه داده ثابت متفاوت باشند. شایان ذکر است که تکنیک‌های خوشه‌بندی در علوم مختلف مانند، گیاه‌شناسی، هوش مصنوعی، تشخیص الگوهای مالی و … کاربرد دارند.

تعریف خوشه بندی

فرض کنید کودکی هستید که به همراه یک کیسه پر از تیله در اتاقی نشسته‌ اید. اکنون کیسه را باز می‌کنید و اجازه می‌دهید تا تیله‌ها روی زمین حرکت کنند. متوجه می‌شوید که تیله ها رنگهای متفاوتی دارند: قرمز، آبی، زرد، سبز. تیله ها را برحسب رنگ جدا می‌کنید تا اینکه چهار گروه تیله داشته باشید. سپس متوجه می‌شوید که برخی از تیله ها بزرگ، بعضی کوچک و بعضی، متوسط هستند. حال تصمیم می‌گیرید که تیله‌های بزرگ و کوچک را با هم  و تیله‌های متوسط را به گروهی مجزا دسته بندی کنید. شما به این تقسیم بندی نگاه می‌کنید و از این کار راضی هستید. اکنون یک عملیات خوشه‌بندی انجام داده‌اید.

دوباره نگاهی به خوشه‌ها می‌کنید و می‌بینید که نه تنها تیله هایی با رنگهای یکپارچه دارید، بلکه تیله‌های چشم گربه‌ای، شرابی، شیشه‌ای و احتمالا انواع دیگری نیز دارید. برخی از تیله‌ها دارای سائیدگی هستند. برخی از آنها دارای زوایایی هستند که بطور مستقیم حرکت نمی‌کنند. اکنون سر درگم هستید، شما گروه‌ بندی خود را براساس کدام خصوصیت انجام می‌دهید؟ اندازه، رنگ یا فاکتورهای دیگر از قبیل شکل یا جنس؟ به احتمال زیاد شما دوست دارید فقط بازی کنید!

زمانی که با یک مجموعه کوچک از خصوصیات سروکار داریم، خوشه‌بندی یک عمل ساده ای است که می توانیم آن را انجام دهیم. اما زمانی که خصوصیات رشد می‌کنند مشکلات خوشه‌بندی افزایش پیدا کرده و حتی ممکن است از طریق ذهن آدمی غیر ممکن باشد. عمل خوشه‌بندی فقط در ۵ یا ۶ بٌعد برای افراد نظریه پرداز که فهم عمیقی از داده‌ها دارند امکان پذیر است. اما مجموعه داده‌های مدرن، عموماً شامل ده‌ها (اگر نگوییم صدها) بٌعد هستند و زمانی که ما نمی‌توانیم روابط ممکن بین خصوصیات را درک کنیم، عمل خوشه‌بندی غیر ممکن می‌شود.

توجه:  در این مقاله منظور از بٌعد تعداد خصوصیات اشیاء می‌باشد. به عنوان مثال، نقاط در صفحه دکارتی دارای دو بعد X و Y هستند.

کلاسترینگ، اشیاء را براساس ویژگی‌هایی که با هم دارند گروه‌بندی می‌کند. هدف اصلی در خوشه بندی تقسیم بندی اشیاء به گونه‌ای است که بیشترین شباهت در یک گروه و بیشترین تفاوت با اشیاء گروه‌های دیگر را دارا ‌باشد. بعنوان تعریف ساده‌تر می‌توان گفت که اشیاء در خوشه مخصوص خود دارای بیشترین شباهت و در برابر اشیای متعلق به خوشه‌های دیگر دارای بیشترین تفاوت هستند.

در برنامه‌های کاربردی، عمل خوشه‌بندی بصورت کاملا متمایز انجام نمی‌گیرد. جدا از مسائل فوق خوشه‌بندی داده‌ها را از هم جدا می‌کند و هر خوشه داده‌های مخصوص خود را دارد و از تداخل داده در خوشه جلوگیری می‌شود. البته خوشه بندی فازی جدا از مسئله فوق می‌باشد و اجازه می‌دهد که یک شیء متعلق به چند گروه وابسته باشد. در کلاسترینگ هر خوشه می‌تواند خود به چند زیر خوشه تبدیل شود. 

خوشه بندی در داده کاوی

Clustering :  یکی از روش های کاوش در داده های انبوه و کشف اطلاعات و دانش از این داده ها، داده کاوی می باشد. برای استخراج الگو از این داده ها الگوریتم های متعددی مورد استفاده قرار می گیرند و هرکدام موارد استفاده مخصوص به خود را دارند. یکی از مهم ترین و پرکاربرد ترین تکنیک های داده  کاوی استفاده از الگوریتم های خوشه بندی است. خوشه بندی یا دسته بندی داده ها با استفاده از شباهت های ذاتی آنپ ها داده های مشابه را در یک گروه قرار می دهد. و بر اساس این دسته بندی و شباهت به کشف الگو و استخراج نهفته در ذات داده  ها می پردازد. و یافتن این الگوها مدیریت داده ها برای کاربردهای مختلف بسیار آسان میکند.

خوشه بندی یا دسته بندی داده ها

خوشه بندی یا دسته بندی داده ها : خوشه بندی یک روش یادگیری بدون نظارت است. یک روش یادگیری بدون نظارت روشی است که در آن دیتاست مورد نظر حاوی داده هایی است بدون برچسب هدف یا گروهی که داده به آن متعلق است. به طور کلی، از آن به عنوان فرایندی برای یافتن ساختار یا الگویی معنی دار برای دسته بندی داده ها بکار می رود.

خوشه بندی وظیفه تقسیم جمعیت یا نقاط داده به تعدادی گروه است به گونه ای که نقاط داده در گروهی که عضو است بیشترین شباهت را به سایر نقاط داده در همان گروه داشته باشد و با نقاط داده در گروه های دیگر شباهتی نداشته باشد. در اصل مجموعه ای از اشیا یا داده ها بر اساس شباهت و عدم شباهت تقسیم بندی می شوند؛ این یک وظیفه اصلی برای کاوش داده و یک روش برای تجزیه و تحلیل داده های کلان است که در بسیاری از زمینه ها از جمله شناخت الگو، تجزیه و تحلیل تصویر، بازیابی اطلاعات، بیوانفورماتیک، فشرده سازی داده ها، گرافیک رایانه و یادگیری ماشین مورد استفاده قرار می گیرد.

الگوریتم های خوشه بندی داده هایی را که ویژگی های مشابه به هم و نزدیک  دارند را در دسته‌های جداگانه که به آن خوشه گفته می‌شود قرار می‌دهند. با نگاهی ساده تر به مسئله خوشه بندی در میابیم که خوشه  بندی می تواند همان دسته بندی باشد که روزانه بارها بدون توجه به این که این عمل را انجام می دهیم از آن برای دسته بندی وسایل استفاده می کنیم. زمانی که با تعدادی اشیاء با صفات مختلف ولی محدود رو به رو هستیم به راحتی اشیاء را دسته بندی می کنیم.

 به طور مثال کودکی تعدادی تیله دارد و تیله  ها را روی زمین می ریزد. با نگاهی به تیله  ها متوجه می شود تعدادی تیله آبی رنگ، تعدادی زرد و تعدادی قرمز رنگ است به راحتی آن ها را از روی رنگ در سه دسته قرار می دهد. زمانی که دقیق تر نگاه می کند تعدادی تیله بزرگتر و تعدادی کوچکتر است باز هم می تواند تیله  ها را به دلخواه بر اساس سایز دسته بندی کند. و زمانی که مجدد به تیله¬ های دسته بندی شده با دقت بیشتری نگاه می کند متوجه ترک و ساییدگی روی بعضی از تیله ها می شود و اگر بخواهد همه ی این ویژگی ها اعم از سایز تیله ها، رنگ، و سالم بودن را در دسته بندی خود دخیل کند کار مشکل می شود و دچار سردرگمی می گردد. و به احتمال زیاد دسته  بندی را رها کرده و به بازی مشغول می شود!

هنگامی که با یک مجموعه کوچک و با ویژگی های محدودی از این مجموعه رو به رو هستیم، دسته بندی این مجموعه کاری اسان است و به راحتی می توانیم آن را انجام دهیم. اکنون فرض کنید در یک مجموعه متشکل از  هزاران داده و با تعداد زیادی ویژگی رو به رو هستید و قصد دسته بندی این داده  ها را دارید؛ این کار برای انسان بسیار سخت و طاقت فرسا است. این جاست که کار دسته بندی با تعداد ویژگی های زیاد از صبر و حوصله ی انسان خارج می شود و الگوریتم های خوشه بندی بهترین ابزار برای حل این گونه مشکلات است، از این الگوریتم ها در مجموعه داده‌های بزرگ و در مواردی که تعداد ویژگی‌های داده زیاد باشد استفاده می‌شود.

عمل تجزیه و تحلیلی که توسط الگوریتم های خوشه بندی انجام می شود تفاوت زیادی با دسته بندی داده توسط انسان دارد چون این الگوریتم ها  درک دقیقی از داده ها  و تشکیل یک خوشه و چگونگی یافتن کارآمد یک خوشه دارند.ویژگی هایی که این الگوریتم ها بر اساس آن، این خوشه ها را ایجاد می کنند شامل خوشه هایی با فاصله کم بین اعضای خوشه، خوشه هایی با تراکم بالای داده، فاصله ها و توزیع های آماری خاص است.

انواع روش های خوشه بندی در داده کاوی

اگر چه بیشتر الگوریتم‌ها یا روش‌های خوشه‌بندی مبنای یکسانی دارند ولی تفاوت‌هایی در شیوه اندازه‌گیری شباهت یا فاصله و همچنین انتخاب برچسب برای اشیاء هر خوشه در این روش‌ها وجود دارد.

خوشه‌ها در مناطقی با چگالی بیشتر هستند (نقاط داده متراکم‌تر) که با نواحی دارای چگالی کم‌تر (تراکم داده کم) از هم جدا شده‌اند. در این روش‌ها، نقاطی که در یک محدوده معین (یک شعاع همسایگی خاص) از هم قرار دارند در یک خوشه قرار می‌گیرند. در روش‌های مبتنی بر چگالی، معمولا یک حداقل چگالی در نظر گرفته می‌شود و در نواحی که این حداقل رعایت شده، خوشه‌بندی انجام می‌شود. این روش‌ها ذاتا برای فضای پیوسته تعریف شده‌اند. در شکل زیر تعدادی داده داریم در هر منطقه ای که تراکم داده ها بیشتر است داده ها تشکیل یک خوشه داده اند.

روش های پارتیشن بندی بدین شرح است که یک زیرمجموعه از مجموعه داده های مورد نظر را به تعداد K تا مجموعه از پیش تعیین شده از زیرمجموعه های دارای داده تقسیم می کنیم. آنها برای بدست آوردن گروه هایی با یک شکل کروی یا حداکثر محدب مناسب هستند و می توانند در مجموعه داده هایی با اندازه ی کوچک یا متوسط استفاده شوند. در این روش، براساس n مشاهده و k گروه، عملیات خوشه‌بندی انجام می‌شود. به این ترتیب تعداد خوشه‌ها یا گروه‌ها از قبل در این الگوریتم مشخص است. با طی مراحل خوشه‌بندی تفکیکی، هر شیء فقط و فقط به یک خوشه تعلق خواهد داشت و هیچ خوشه‌ای بدون عضو باقی نمی‌ماند. از انواع روش های پارتیشن بندی می توان به k-means ,k-median ,Fuzzy C-means اشاره کرد.

خوشه بندی k-means

خوشه بندی k-means : الگوریتم k-means یکی از ساده‌ترین و محبوب‌ترین الگوریتم‌های خوشه بندی است که در داده‌کاوی بخصوص در حوزه ی یادگیری نظارت نشده به کار می‌رود. معمولا در حالت چند متغیره، باید از ویژگی‌های مختلف اشیا به منظور طبقه‌بندی و خوشه‌ کردن آن‌ها استفاده کرد. به این ترتیب با داده‌های چند بعدی سروکار داریم که معمولا به هر بعد از آن، ویژگی یا خصوصیت گفته می‌شود. با توجه به این موضوع، استفاده از توابع فاصله مختلف در این جا مطرح می‌شود. ممکن است بعضی از ویژگی‌های اشیا کمی و بعضی دیگر کیفی باشند.

روش های سلسله مراتبی، روش درختی داده ها را به زیر گروه هایی تقسیم می کند در این الگوریتم ها نیازی به تعیین تعداد زیر گروه ها نیست. انواع روش های سلسله مراتبی شامل روش تقسیمی (Divisive hierarchical methods) و روش تجمعی ( Agglomerative hierarchical methods)است. روش تقسیمی یک روش خوشه بندی از بالا به پایین است و از کل داده شروع می شود و در نهایت به کوچکترین جزء می رسد. و روش تجمعی دقیقا عکس روش تقسیمی است و یک روش پایین به بالا است از کوچکترین جزء شروع می کند و در نهایت تمامی داده ها در یک دسته قرار می گیرند.

روش  شبکه ای، دسته خاصی از روش‌های مبتنی بر چگالی هستند که در آن‌ها هر منطقه مجزا در فضای داده که جست‌ و‌ جو می‌شود، در ساختار شبکه مانندی قرار می‌گیرد. به طور مثال نقاط داده شده در صفحه مختصات رسم شده و سپس صفحه به شبکه هایی تقسیم می شود و نقاطی که با هم در یک شبکه قرار بگیرند در یک خوشه قرار دارند این روش به نسبت دیگر روش ها درصد صحت پایین تری دارد ولی زمان بسیار مناسبی در خوشه بندی دارد.

الگوریتم‌های خوشه‌ بندی

معمولا ۴ گروه اصلی برای الگوریتم‌های خوشه‌بندی وجود دارد. الگوریتم‌های خوشه‌بندی تفکیکی، الگوریتم‌های خوشه‌بندی سلسله مراتبی، الگوریتم‌های خوشه‌بندی برمبنای چگالی و الگوریتم‌های خوشه‌بندی برمبنای مدل. در ادامه به معرفی هر یک از این گروه‌ها می‌پردازیم.

در این روش، براساس n مشاهده و k گروه، عملیات خوشه‌بندی انجام می‌شود. به این ترتیب تعداد خوشه‌ها یا گروه‌ها از قبل در این الگوریتم مشخص است. با طی مراحل خوشه‌بندی تفکیکی، هر شیء فقط و فقط به یک خوشه تعلق خواهد داشت و هیچ خوشه‌ای بدون عضو باقی نمی‌ماند. اگر lijlijنشانگر وضعیت تعلق xixiبه خوشه cjcj باشد تنها مقدارهای ۰ یا ۱ را می‌پذیرد. در این حالت می‌نویسند:

lij=1, xi∈cjorlij=0, xi∉cjlij=1, xi∈cjorlij=0, xi∉cj

هر چند این قانون‌ها زمانی که از روش خوشه‌بندی فازی (Fuzzy Clustering) استفاده می‌شود، تغییر کرده و برای نشان دادن تعلق هر شئی به هر خوشه از درجه عضویت استفاده می‌شود. به این ترتیب میزان عضویت xixi به خوشه cjcj مقداری بین ۰ و ۱ است. در این حالت می‌نویسند:

lij∈[۰,۱]lij∈[۰,۱]

معمولا الگوریتم‌های تفکیکی بر مبنای بهینه‌سازی یک تابع هدف عمل می‌کنند. این کار براساس تکرار مراحلی از الگوریتم‌های بهینه‌سازی انجام می‌شود. در نتیجه الگوریتم‌های مختلفی بر این مبنا ایجاد شده‌اند. برای مثال الگوریتم k-میانگین (K-means) با تعیین تابع هدف براساس میانگین فاصله اعضای هر خوشه نسبت به میانگینشان، عمل می‌کند و به شکلی اشیاء را در خوشه‌ها قرار می‌دهد تا میانگین مجموع مربعات فاصله‌ها در خوشه‌ها، کمترین مقدار را داشته باشد. اگر مشاهدات را با x نشان دهیم، تابع هدف الگوریتم k-میانگین را می‌توان به صورت زیر نوشت:

E=k∑j=1∑x∈cjdist(x,μcj)E=∑j=1k∑x∈cjdist(x,μcj)

که در آن μcjμcj میانگین خوشه‌ cjcj و dist نیز مربع فاصله اقلیدسی است.

به این ترتیب با استفاده از روش‌های مختلف بهینه‌سازی می‌توان به جواب مناسب برای خوشه‌بندی تفکیکی رسید. ولی از آنجایی که تعداد خوشه‌ها یا مراکز اولیه باید به الگوریتم داده شود، ممکن است با تغییر نقاط اولیه نتایج متفاوتی در خوشه‌بندی بدست آید. در میان الگوریتم‌های خوشه‌بندی تفکیکی، الگوریتم k-میانگین که توسط مک‌کوئین (McQueen) جامعه شناس و ریاضیدان در سال ۱۹۶۵ ابداع شد از محبوبیت خاصی برخوردار است.

برعکس خوشه‌ بندی تفکیکی که اشیاء را در گروه‌های مجزا تقسیم می‌کند، خوشه‌بندی سلسله مراتبی (Hierarchical Clustering)، در هر سطح از فاصله، نتیجه خوشه‌بندی را نشان می‌دهد. این سطوح به صورت سلسله مراتبی (Hierarchy) هستند. برای نمایش نتایج خوشه‌بندی به صورت سلسله مراتبی از درختواره (Dendrogram) استفاده می‌شود. این شیوه، روشی موثر برای نمایش نتایج خوشه‌بندی سلسله مراتبی است.  در طی مراحل خوشه‌بندی، نزدیکترین مقدارها (براساس تابع فاصله تعریف شده) با یکدیگر ادغام شده و خوشه جدیدی می‌سازند. در انتها نیز خوشه تشکیل شده در مرحله دوم با خوشه تشکیل شده در مرحله چهارم ادغام شده و خوشه نهایی را ایجاد می‌کنند. همانطور که دیده می‌شود با داشتن شش مقدار خوشه‌بندی سلسله مراتبی، پنچ مرحله خواهد داشت زیرا در هر مرحله فقط یک عمل ادغام انجام می‌شود.

نکته: توجه داشته باشید که مقدارهایی که روی محور افقی دیده می‌شوند، بیانگر موقعیت مقدارها در لیست داده‌ها است و نه خود مقادیر. همچنین محور عمودی نیز فاصله یا ارتفاع بین خوشه‌ها را نشان می‌دهد.

در الگوریتم خوشه‌بندی سلسله مراتبی معمولا با کوچکترین خوشه‌ها شروع می‌کنیم. به این معنی که در ابتدا هر مقدار بیانگر یک خوشه است. سپس دو مقداری که بیشترین شباهت (کمترین فاصله) را دارند با یکدیگر ادغام شده و یک خوشه جدید می‌سازند. بعد از این مرحله، ممکن است دو مقدار یا یک مقدار با یک خوشه یا حتی دو خوشه با یکدیگر ادغام شده و خوشه جدیدی ایجاد کنند. این عملیات با رسیدن به بزرگترین خوشه که از همه مقدارها تشکیل یافته پایان می‌یابد. به این ترتیب اگر n مقدار داشته باشیم در مرحله اول تعداد خوشه‌ها برابر با n است و در آخرین مرحله یک خوشه باقی خواهد ماند.

برای اندازه‌گیری فاصله بین دو خوشه یا یک مقدار با یک خوشه از روش‌های پیوند (Linkage) استفاده می‌شود. از انواع روش‌های پیوند می‌توان به نزدیکترین همسایه (Nearest Neighbor) یا پیوند تکی (Single Linkage)، دورترین همسایه (Furthest Neighbor)یا پیوند کامل (Complete Linkage) و همچنین پیوند میانگین (Average Linkage) اشاره کرد.

معمولا به این شیوه خوشه‌بندی سلسله مراتبی، روش تجمیعی (Agglomerative) می‌گویند. برعکس اگر عمل خوشه‌بندی سلسله مراتبی به شکلی باشد که با بزرگترین خوشه، عملیات خوشه‌بندی شروع شده و با تقسیم هر خوشه به خوشه‌های کوچکتر ادامه پیدا کند، به آن خوشه‌بندی سلسله مراتبی تقسیمی (Divisive Hierarchical Clustering) می‌گویند. در آخرین مرحله این روش، هر مقدار تشکیل یک خوشه را می‌دهد پس n خوشه خواهیم داشت. هر چند شیوه نمایش خوشه‌بندی سلسله مراتبی تقسیمی نیز توسط درختواره انجام می‌شود ولی از آنجایی که محدودیت‌هایی برای تقسیم یک خوشه به زیر خوشه‌های دیگر وجود دارد، روش تقسیمی کمتر به کار می‌رود.

نکته: در شیوه خوشه‌بندی سلسله مراتبی، عمل برچسب گذاری در طی مراحل خوشه‌بندی اصلاح پذیر نیست. به این معنی که وقتی عضوی درون یک خوشه قرار گرفت هرگز از آن خوشه خارج نمی‌شود.از الگوریتم‌های معروف برای خوشه‌بندی سلسله مراتبی تجمیعی می‌توان به AGNES و برای تقسیمی به DIANA اشاره کرد.

روش‌های خوشه‌بندی تفکیکی قادر به تشخیص خوشه‌هایی کروی شکل هستند. به این معنی که برای تشخیص خوشه‌ها از مجموعه داده‌هایی به شکل‌های کوژ (Convex) یا محدب خوب عمل می‌کنند. در عوض برای تشخیص خوشه‌ها برای مجموعه داده‌های کاو (Concave) یا مقعر دچار خطا می‌شوند. به تصویر ۳ توجه کنید که بیانگر شکل‌های کاو است.

میانگین هر دو خوشه در روش k-means در محلی قرار گرفته است که مربوط به خوشه‌ دیگر است. در حالی که خوشه‌بندی برمبنای چگالی به خوبی نقاط را در خوشه‌های درست قرار داده است.

در الگوریتم‌ها خوشه‌بندی برمبنای چگالی، نقاط با تراکم زیاد شناسایی شده و در یک خوشه قرار می‌گیرند. از الگوریتم‌های معروف در این زمینه می‌توان به DBSCAN اشاره کرد که در سال ۱۹۹۶ توسط استر (Ester) معرفی شد. این الگوریتم توانایی شناسایی نقاط دورافتاده را داشته و می‌تواند تاثیر آن‌ها را در نتایج خوشه‌بندی از بین ببرد. شیوه کارکرد این الگوریتم‌ بنا به تعریف‌های زیر قابل درک است:

xNϵ(y)xNϵ(y)

|Nϵ(y)|≥Nmin|Nϵ(y)|≥Nmin

در اینجا |Nϵ(y)||Nϵ(y)| نشانگر تعداد اعضای همسایگی به شعاع ϵϵ از نقطه y است.

پس شرط اول به معنی این است که x در همسایگی از y قرار دارد و شرط دوم نیز بیان می‌کند که باید تعداد اعضای همسایگی y از حداقل تعداد اعضای همسایگی بیشتر باشد.

x=x1,x2,…,xi=yx=x1,x2,…,xi=y

در این حالت برای مثال x1x1 قابل دسترسی مستقیم (Direct Reachable) به x2x2  نامیده می‌شود.

۱٫ اگر x درون C باشد و y نیز قابل دسترسی به x با پارامترهای ϵϵ و NminNmin باشد، آنگاه y نیز در C است.

۲٫  اگر دو نقطه x و y در C باشند آنگاه این نقاط براساس پارامترهای ϵϵ  و NminNmin نقاط متصل محسوب شوند.

به این ترتیب خوشه‌ها شکل گرفته و براساس میزان تراکمشان تشکیل می‌شوند. نویز یا نوفه (Noise) نیز نقاطی خواهند بود که در هیچ خوشه‌ای جای نگیرند.

 نکته: با توجه به تعریف خوشه، مشخص است که اندازه هر خوشه از NminNmin بیشتر است.

مراحل خوشه‌بندی برمبنای چگالی به این ترتیب است که ابتدا یک نقطه را به صورت اختیاری انتخاب کرده و نقاط قابل دسترس برای آن پیدا می‌شود. اگر x یک نقطه مرکزی باشد (نقطه‌ای که درون خوشه قرار داشته باشد)، خوشه را تشکیل می‌دهد ولی اگر x نقطه‌ای مرزی باشد (نقطه‌ای که در لبه‌های خوشه قرار داشته باشد) آنگاه هیچ نقطه‌ قابل دسترسی برای x وجود نخواهد داشت و الگوریتم از نقطه‌ای دیگری ادامه پیدا می‌کند.

در مراحل خوشه‌بندی ممکن است دو خوشه که به یکدیگر نزدیک باشند، ادغام شوند. فاصله بین دو خوشه برحسب حداقل فاصله بین اعضای دو خوشه (پیوند تکی) سنجیده می‌شود.

نکته: انتخاب مقدار برای پارامترهای ϵϵ و NminNmin مسئله مهمی است که براساس نظر محقق باید به الگوریتم داده شوند. ترسیم نمودار داده‌ها در انتخاب این پارامترها می‌تواند موثر باشد. هرچه داده‌ها در دسته‌های متراکم‌تر دیده شوند بهتر است مقدار ϵϵ را کوچک در نظر گرفت و اگر لازم است که تعداد خوشه‌ها کم باشند بهتر است مقدار NminNmin را بزرگ انتخاب کرد.

خوشه‌ بندی برمبنای مدل (Model-Based Clustering)

در روش‌های پیشین، فرضیاتی مبنی بر وجود یک توزیع آماری برای داده‌ها وجود نداشت. در روش خوشه‌بندی برمبنای مدل (Model-Based Clustering)  یک توزیع آماری برای داده‌ها فرض می‌شود. هدف در اجرای خوشه‌بندی برمبنای مدل، برآورد پارامترهای توزیع آماری به همراه متغیر پنهانی است که به عنوان برچسب خوشه‌ها در مدل معرفی شده.

با توجه به تعداد خوشه‌هایی که در نظر گرفته شده است، مثلا k، تابع درستنمایی را برای پیدا کردن خوشه‌ها به صورت زیر می‌نویسند:

LM(Θ۱,Θ۲,Θ۳,…,Θk;t1,t2,…,tk)=n∏i=1k∑j=1tjfj(xi,Θj)LM(Θ۱,Θ۲,Θ۳,…,Θk;t1,t2,…,tk)=∏i=1n∑j=1ktjfj(xi,Θj)

در رابطه بالا tjtj بیانگر احتمال تعلق نقطه به خوشه jام و fjfj نیز توزیع آمیخته با پارامترهای ΘjΘj است.

در اکثر مواقع برای داده‌ها توزیع نرمال آمیخته در نظر گرفته می‌شود. در چنین حالتی توزیع آمیخته را به فرمی می‌نویسند که درصد آمیختگی (درصدی از داده‌ها که متعلق به هر توزیع هستند) نیز به عنوان پارامتر در مدل حضور دارد.

f(x)=k∑j=1pjΦ(X;μj,Σi)f(x)=∑j=1kpjΦ(X;μj,Σi)

در رابطه بالا ΦΦ توزیع نرمال با پارامترهای μjμj  وΣjΣj برای توزیع jام هستند و pjpj نیز درصد آمیختگی برای توزیع jام محسوب می‌شود. در تصویر ۶ یک نمونه از توزیع آمیخته نرمال دو متغیره نمایش داده شده است.

انتخاب‌های مختلفی برای ماتریس واریانس-کوواریانس یا ΣΣ وجود دارد. یکی از این حالت‌ها در نظر گرفتن استقلال و یکسان بودن واریانس برای همه توزیع‌ها است. همچنین می‌توان واریانس هر توزیع را متفاوت از توزیع‌های دیگر در نظر گرفت و بدون شرط استقلال عمل کرد. در حالت اول پیچیدگی مدل و تعداد پارامترهای برآورد شده کم و در حالت دوم پیچیدگی مدل و تعداد پارامترهای برآورده شده زیاد خواهد بود.

برای برآورد پارامترهای چنین مدلی باید از تابع درستنمایی استفاده کرد و به کمک مشتق مقدار حداکثر را برای این تابع بدست آورد. با این کار پارامترهای مدل نیز برآورد می‌شوند. ولی با توجه به پیچیدگی تابع درستنمایی می‌توان از روش‌هایی ساده‌ و سریع‌تری نیز کمک گرفت. یکی از این روش‌ها استفاده از الگوریتم EM (مخفف Expectation Maximization) است. در الگوریتم EM که براساس متغیر پنهان عمل می‌کند، می‌توان به حداکثر مقدار تابع درستنمایی همراه با برآورد پارامترها دست یافت.

در چنین حالتی می‌توان برچسب تعلق هر مقدار به خوشه را به عنوان متغیر پنهان در نظر گرفت. اگر متغیر پنهان را zijzij در نظر بگیریم مقداری برابر با ۱ دارد اگر مشاهده iام در خوشه jام باشد و در غیر اینصورت مقدار آن ۰ خواهد بود.

چه تحلیل و آنالیزهایی خوشه بندی نیستند؟

در این قسمت به طور خلاصه تفاوت تجزیه و تحلیل خوشه‌ای با دیگر تکنیک های گروه‌بندی را بیان می‌کنیم. در واقع گروه‌بندی اشیاء، داده را به کلاس های نام گذاری شده تخصیص می‌دهد. در گروه بندی هر شیء دارای یک سرپرست و یا ناظر می‌باشد. می‌توان گفت خوشه بندی یک نوع طبقه بندی بدون سرپرست است یعنی اشیاء بر اساس شباهت‌هایی که باهم دارند تقسیم می‌شوند و نه بر اساس معیارهای از پیش تعیین شده. به همین دلیل به خوشه‌بندی گاهی اوقات طبقه بندی بدون سرپرست نیز می‌گویند. در داده‌کاوی هنگامی که از اصطلاح طبقه بندی استفاده می‌شود منظور همان طبقه بندی بصورت با سرپرست می‌باشد و همچنین واژه‌های قطعه بندی و پارتیشن بندی مترادف خوشه بندی هستند. این لغات بارها در روش های سنتی استفاده شده است. در واقع استفاده از قطعه بندی، استفاده از تکنیک های ساده ای برای گروه‌بندی داده‌ها می‌باشد.

بعنوان مثال تقسیم بندی پیکسل‌های عکس به دو قسمت رنگ و شدت رنگ و یا تقسیم بندی مردم به گروهایی بر اساس درآمد و یا نام خانوادگی؛ با این وجود بعضی از تقسیم‌بندی‌های عکس و تجزیه و تحلیل بازار خوشه‌ می‌باشد و از یک چارچوب ریاضی برای داده‌کاوی استفاده می‌کنند. قوانین زیادی از داده‌کاوی روی مشکلات تقسیم بندی فعالیت و نظارت دارد و به همین ترتیب روش‌های فراوانی برای پارتیشن بندی مجموعه‌ای از داده وجود دارد اما هیچ کدام در سطح تجزیه و تحلیل خوشه‌بندی نمی‌باشند.

 ارتباط محکمی میان پارتیشن‌بندی و گراف خوشه بندی وجود دارد. برای درک بهتر تفاوت میان خوشه بندی و سایر تکنیک‌های گروه‌بندی اشیاء به مثال زیر توجه کنید.

اگرچه یک کوئری مجموعه‌ای از رکوردها  را به دو گروه تقسیم می کند ( و فقط قسمت مورد نیاز پرس و جو بازیابی می‌شود) این دو نتیجه به علت نداشتن ارتباط، خوشه بندی نیستند. یک پرس و جو مجموعه ای از اشیاء را نمایش می‌دهد در حالی که خوشه بندی تلاش می‌کند اشیاء را براساس شباهت ها و تفاوت‌ها سازماندهی کند.

 نکته: شاید به نظر برسد که پاسخ های کوئری دارای شباهت هایی هستند، اما باید توجه داشت که در پرس و جو عموما تمام ابعاد درخواست نمی‌شوند و ممکن است شباهت ها فقط در چند بٌعد کوچک باشد.

کاربردهای خوشه بندی در داده کاوی

از کاربرد خوشه بندی می توان به موارد زیر اشاره کرد:

خوشه بندی در داده کاوی برای مدیریت ارتباط با مشتری

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

موضوع مهم و نقطه تفاوت در خوشه بندی با سایر روش‌های داده کاوی در این است که برچسب اولیه‌ای تعیین نمی‌شود. در واقع در سایر روش‌ها بر اساس ویژگی‌های اولیه‌ای که تعیین می‌شود، دسته بندی و طبقه بندی صورت می‌گیرد. در صورتیکه در خوشه بندی، بدون تعیین فاکتورهای اولیه و بر اساس ویژگی‌های داده‌ها طبقه‌بندی صورت می‌گیرد.

مدیریت ارتباط با مشتری چیست؟

مدیریت ارتباط با مشتری یا CRM به مجموعه‌ی فعالیت‌هایی گفته می‌شود که کمک می‌کنند تا بین سازمان و مشتری ارتباط موفقی شکل گیرد. مجموعه اقدامات، تلاش‌ها و فناوری‌هایی که در این راه استفاده می‌شوند، به جلب رضایت مشتری و ساخت یک مشتری وفادار کمک می‌کنند.

از مزایای مدیریت ارتباط با مشتری، می‌توان به موارد زیر اشاره کرد:

کمپانی‌هایی که از CRM استفاده می‌کنند به خوبی این موضوع را دریافته‌اند که حفظ مشتری فعلی، مقرون به صرفه‌تر از جذب مشتری جدید است. در مدیریت ارتباط با مشتری، از سوابق و اطلاعات قبلی تجربه کسب می‌شود تا در آینده و برای ارتباط بهتر با مشتری و پیشرفت سازمان از آن‌ها کمک گرفته شود. و به همین دلیل، داده کاوی می‌تواند در این بخش مفید واقع شود.

خوشه بندی در داده کاوی برای مدیریت ارتباط با مشتری

از کاربردهای داده کاوی در سازمان‌ها پیش بینی شرایط آینده برای بهترین تصمیم‌ها و واکنش‌هاست. از همین ویژگی می‌توان برای پیش بینی درخواست‌های مشتری هم بهره برد. در واقع به کمک خوشه بندی در داده کاوی برای مدیریت ارتباط با مشتری، داده‌های گذشته‌ای که تیم CRM داشته جمع آوری می‌شود و با استفاده از خوشه بندی در دسته‌ها (خوشه‌ها) با ویژگی‌های مشابه تقسیم بندی می‌شود تا نتیجه‌ای سودمند استخراج شود.

به این دو مثال توجه کنید

خوشه بندی روش‌های متفاوتی دارد، اما بطور کلی کیفیت یک خوشه بندی با الگوهایی که از بین داده‌ها استخراج می‌کند، سنجیده می‌شود. این الگوها عموما برای انسان ناشناخته هستند. بنابراین از یک خوشه بندی با کیفیت در مدیریت ارتباط با مشتری انتظار می‌رود بتواند رفتارهای مشتری را به عنوان داده دریافت کند، الگوهایی از بین آن‌ها استخراج کند تا تیم CRM بتواند از آن الگوها برای آشنایی با نیازهای فعلی مشتری و همچنین پیش‌بینی نیازهای او استفاده کند و بهترین بازدهی را داشته باشد.

اما خوشه بندی در داده کاوی برای ارتباط با مشتری علاوه بر مواردی که در بالا ذکر شد، فواید دیگری هم دارد. داده‌های مشتری اطلاعات بسیار سودمندی از تقاضا و انتظارات آن‌ها در اختیار سازمان می‌گذارد. فرقی ندارد که کسب و کار فروشنده‌ی کالا است یا خدمات، این روش اطلاعات مفیدی از محصولات یا خدماتی که در آینده باید به لیست خود اضافه کنید در اختیار شما می‌گذارد.

برای CRM در سازمان خود برنامه‌ریزی کنید

همانطور که توضیح داده شد، خوشه بندی یکی از روش‌های داده کاوی است. از مزیت‌های استفاده از خوشه بندی در داده کاوی برای مدیریت ارتباط با مشتری، می‌توان به گزینه‌های زیر اشاره کرد:

فعالیت شما هرچه باشد، ارائه خدمات خوب و ارتباط موفق با مشتری به پیشرفت و بقای کسب و کار کمک می‌کند. در نتیجه بهتر است از تکنولوژی روز برای درک نیازهای مشتری بهره ببرید.

اهمیت خوشه بندی در هوش تجاری

در تحقیقات بازار استفاده از  تجزیه و تحلیل  به روش خوشه بندی می تواند به طور گسترده کاربرد داشته باشد؛ کارشناسان و محققان در زمینه ی پژوهش های بازار از الگوریتم های خوشه بندی استفاده می کنند. به طور مثال در تحقیقات حوزه بازاریابی برای تقسیم بندی مخاطبانِ تبلیغات مختلف و همچنین در دسته بندی نتایج نظرسنجی کاربرد فراوان دارد.

بدین وسیله محققان، مشتریان و مصرف کنندگان بخش های مختلف بازار را به گروه هایی مشخص تقسیم کنند تا روابط بین گروه های مختلف مصرف کنندگان بالقوه، گروه بندی اقلام خریداری شده توسط مشتری، برای دسته بندی اقلام موجود در فروشگاه های اینترنتی استفاده می شود.

 به عنوان مثال، تمام اقلام مشابه موجود در یک فروشگاه اینترنتی را می‌توان با استفاده از روش های خوشه بندی در یک گروه قرار داد و با استفاده از این خوشه بندی مشتری راحت تر کالای مورد نیاز خود را جست و جو کند و همچنین با پیگیری خرید مشتری میتوان پیشنهادهایی نزدیک به سلیقه مشتری به او داد و این خود باعث تشویق خرید از محصولات مورد نظر می شود و همچنین مصرف کننده احساس میکند از طرف سیستم به خوبی نیازها و سلیقه ی او درک شده است و این امر موجب تبدیل شدن مشتری معمولی به یک مشتری وفادار می شود . با استفاده از دسته بندی فرم های نظرسنجی بخصوص فرم های انلاین می توان نظرات مصرف کنندگان و مخاطبان را دسته بندی کرد و به راحتی میزان رضایت و نارضایتی و همچنین دلایل رضایت و نارضایتی را بدست آورد و در راستای افزایش رضایت مصرف کننده تلاش کرد. بنابراین الگوریتم های داده  کاوی جزء جدایی ناپذیر تجزیه و تحلیل داده ها در حوزه ی کسب و کار است.

جمع بندی خوشه بندی در داده کاوی

خوشه بندی در داده کاوی یکی از مهم ترین الگوریتم های یادگیری بدون ناظر در داده کاوی است. ما با داده های بسیاری در حوزه های مختلف سر و کار داریم که بسیاری از این داده ها نیاز به دسته بندی دارند. تعدادی از این داده ها، بدون برچسب هستند یعنی گروهی که این داده ها به آن تعلق دارند برخلاف الگوریتم های یادگیری با ناظر مشخص نیست. بنابراین ما برای تجزیه و تحلیل این داده ها نیاز به روش های خوشه بندی داریم و به طور کلی خوشه بندی، گروه بندی ذاتی را در بین داده های بدون برچسب تعیین می کند؛ و این گروه بندی ذاتی داده ها در رفع مسائل کنونی برای یافتن الگو در این حجم وسیع داده بسیار می تواند در همه ی زمینه ها مفید باشد.

ارتباط و مشاوره با شما ۰۹۳۶۷۹۳۸۰۱۸ در واتس اپ

دیدگاه‌ها

*
*


پاسخ من را به ایمیلم ارسال کن

    مهدي مهمان 30 تیر 1398 پاسخ

    سلام آقاي مقيمي عزيز
    اگه خاطرتان باشه دو ماه قبل در خصوص داده كاوي صحبتهايي داشتيم. در طول مدت دو ماه نرم افزارهاي spss‌ و celamentine‌رو كار كردم و براي داده هاي صنعتي داخل شركت معروف درحال تحليل هستم . نتايج اخير آن به اطلاع مديران شركت رسيده و استقبال خوبي صورت گرفته و مايلم در ركاب شما در پروژه ها و مقالات دگير زمينه ها نيز فعال بشم. اگه مايل بوديد و جسارت نباشه مي خواستم از تجريه شما استفاده كنم و بتونم كمكي هم كرده باشم. تشكر

      مهدي مقيمي مدیر کل 2 مرداد 1398 پاسخ

      سلام وقت بخیر
      از لطف شما متشکرم. بنده در حدی نیستم که شما فرمایش می فرمایید. خدمت شما پیام دادم

    مهسا مهمان 18 اسفند 1399 پاسخ

    با سلام. من تازگی حدود یک ماه هست یادگیری spss را با هدف تحلیل های آماری و انجام پروژه های آماری شروع کردم. می خواستم بدونم می تونم برای این هدف از تجربه شما استفاده کنم؟و یا اگر امکانش وجود داره در آینده در این جهت همکاری داشته باشیم؟ با سپاس

      مهدي مقيمي مدیر کل 25 دی 1400 پاسخ

      سلام و وقت بخیر
      ما گروهی داریم که در صورتی که احراز شرایط باشید می تونید کارهای مربوطه رو با دریافت پول انجام بدید و عضوی از تیم ما بشید
      در صورت تمایل به شماره واتس اپ پایین سایت پیام بدید

error: با عرض پوزش؛ لطفا از مطالعه مطالب لذت ببرید.