به کمک نیاز دارید؟

خدمات تخصصی

جستجو
این کادر جستجو را ببندید.
آموزش R

آموزش R | خوشه‌بندی سلسله مراتبی

خوشه بندی سلسله مراتبی تکنیکی است که در گروه بندی یا دسته بندی داده ها به کارمی رود. نقاط داده ها در این روش در دسته ها و زیر دسته هایی بر اساس معیار شباهت قرار می گیرند. در روش خوشه بندي سلسله مراتبي، به خوشه هاي نهايي بر اساس ميزان عموميت آنها ساختاري سلسله مراتبي، معمولا به صورت درختي نسبت داده ميشود. به اين درخت سلسله مراتبي دندوگرام (dendogram) ميگويند. روش کار تکنيکهاي خوشهبندي سلسله مراتبي معمولا بر اساس الگوريتمهاي حريصانه (Greedy Algorithms) و بهينگي مرحله هاي (stepwise-optimal) است. روشهاي خوشهبندي بر اساس ساختار سلسله مراتبي توليدي توسط آنها معمولا به دو دسته زير تقسيم ميشوند:

• بالا به پايين (Top-Down) يا تقسيم کننده(Pisive)
در اين روش ابتدا تمام دادهها به عنوان يک خوشه در نظر گرفته ميشوند و سپس در طي يک فرايند تکراري در هر مرحله دادههايي شباهت کمتري به هم دارند به خوشههاي مجزايي شکسته ميشوند و اين روال تا رسيدن به خوشه هايي که داراي يک عضو هستند ادامه پيدا ميکند.

اعضای شبکه مشاوران در حوزه «تحقیقات بازار، بازاریابی و فروش»

شقایق جرسی

مشاور کسب و کار و امور بیمه

اگر بعنوان فعال حوزه بیمه یا خدمات، دنبال تضمین موفقیت...

فرناز زمانی

مشاور کارآفرینی و فروش

اگر بعنوان مدیر کسب و کار، به دنبال رونق و...

ماهرخ مخصوص

مشاور بازاریابی و فروش

اگر بعنوان کارآفرین یا فعال اقتصادی به دنبال کسب برتری...

حدیث هداوند

مشاور راه‌اندازی و مدیریت کافه‌، پشتیبانی مشتریان (CRM) و کنترل کیفیت خدمات

اگر در کافه‌داری، پشتیبانی مشتریان (CRM) برای تبدیل آنها به...

تارا علیمیری

مشاور QC، R&D، اجرای فنی و فروش در صنایع غذایی

اگر برای کارآفرینی، کنترل کیفیت، R&D، اجرای فنی و یا...

آسیه ناظمی

مشاور بازاریابی و آنلاین سازی کسب و کار

اگر بعنوان فعال اقتصادی، به دنبال رونق فروش و یا...

شراره قشقایی

مشاور مدیریت سالن‌های آرایش و زیبایی

اگر بعنوان فعال حوزه آرایش و زیبایی به دنبال کسب...

بنفشه سیدکباری

مشاور تحقیقات بازار، بازاریابی و فروش

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

طاهره حسن زاده

تحلیل‌گر داده و مشاور یادگیری‌ماشین و دیپ لرنینگ

اگر به مهارت های یک تحلیلگر داده با تجربه در...

سپیده خوشاب

مشاور و تحلیلگر داده‌های آماری

اگر برای تجزیه و تحلیل و کشف دانش‌های پنهان در...

ریحانه رضایی

مشاور بازاریابی و فروش

اگر به دنبال برقراری ارتباط موثر و هدفمند با مخاطبان...

کیمیا نظری

مشاور و استراتژیست شبکه‌های اجتماعی

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

الهام بختیاری

استراتژیست، مدیر و مشاور محتوا

اگر برای کسب برتری در موتورهای جستجو به متخصص، استراتژیست...

ندا روشندل

مشاور کارآفرینی و بازرگانی

اگر به دنبال موفقیت در کارآفرینی با نگاه یک تاجر...

مرضیه محیط

مشاور برندینگ و طراحی و توسعه محصول

اگر به عنوان کارآفرین و یا صنعت‌گر به دنبال تقویت...

الهه زری باف

مشاور اینستاگرام مارکتینگ

اگر به دنبال افزایش دنبال کنندگان فعال در صفحه اینستاگرام...

حسین وثوق

مترجم و مشاور عکاسی، فیلمبرداری، تدوین و کارگردانی

اگر به دنبال طراحی کمپین‌های تبلیغاتی با نگاه یک کارگردان...

سپیده گونجی

مشاور SEO ،UI/UX و بازاریابی دیجیتال

اگر قصد دارید در دنیای دیجیتال فعالیت کرده و در...

فاطمه محمدی

مشاور برندسازی، بازاریابی و فروش

اگر بعنوان کارآفرین یا فعال اقتصادی بدنبال تقویت برند، رونق...

مژگان سلطانی صحت

مشاور طراحی مد/پوشاک و بازاریابی و فروش

اگر به کمک یک طراح لباس مجرب در صنعت طراحی...

علیرضا اخوان

مشاور برندینگ، بازاریابی و فروش

اگر به دنبال رونق کسب و کار و افزایش درآمد...

زهره مستوفی فر

مشاور بازاریابی و فروش

اگر در فضای پررقابت کنونی بدنبال موفقیت تضمینی و داشتن...

نهال سهیلی فر

مشاور تولید محتوا

اگر بعنوان فعال اقتصادی به دنبال تثبیت جایگاه و گسترش...

سارا موسوی

مشاور دیجیتال مارکتینگ و فروش

اگر بدنبال افزایش فروش و توسعه سهم خود در بازارهای...

مریم عبدلی

مشاور برندینگ و تحقیقات بازار

اگر نیازمند تحلیل و ارزیابی رفتار مشتریان، نیاز بازار و...

راحله همایونی

متخصص و مشاور بازرگانی و تجارت بین‌الملل

اگر برای تهیه مواد موردنیاز کسب و کار خرده فروشی...

نگار رحمتی

مشاور و طراح UI/UX برمبنای اصول بازاریابی

اگر به یک طراحی UI/UX برمبنای اصول بازاریابی جهت حل...

سحر مسعودی

مشاور و تحلیل‌گر داده‌

اگر به تجزیه و تحلیل داده های پیچیده و یافتن...

ساناز دژکام

مشاور امور بیمه و تولید محتوا

اگر به عنوان یک کارآفرین خانگی یا دیجیتال مارکتر در...

متینه مقدم

مشاور تحقیقات بازار، بازاریابی و فروش

اگر به دنبال برنامه‌ریزی و موفقیت در کسب و کارهای...

علی قوامی

مشاور راه اندازی و توسعه کسب و کار

اگر به دنبال موفقیت در کارآفرینی و یا داشتن کسب...

نازنین نوری

مشاور بازاریابی، فروش و مذاکرات تجاری

اگر بعنوان کارآفرین یا فعال اقتصادی به دنبال رشد کسب...

عالیه پوریوسف

مشاور بازاریابی شبکه‌های اجتماعی و تولید محتوا

اگر به دنبال تقویت بازاریابی دیجیتال و افزایش درآمد در...

فرزانه پورشعبان

مشاور شغلی و توانمندسازی مهارت‌های مدیران

اگر به دنبال موفقیت، رشد و کسب سودحداکثری در کسب...

رویا حسین زاده

مشاور مالی، بازاریابی، فروش، تجارت و بازرگانی

اگر به یک متخصص حسابداری و مالی آشنا به بازاریابی...

هاله تسلیمی

مشاور و استراتژیست برند

اگر نیازمند برندسازی برای کسب و کار، محصول و یا...

مهلا دهقان

مشاور هوش تجاری

اگر برای رشد کسب و کار خود نیاز به استفاده...

فرزانه برجیان

مشاور توسعه کسب و کار و مدیریت فروش

اگر می خواهید کسب و کاری چابک مبتنی بر تحولات...

میثم صحراکار

مشاور عکاسی و فیلمبرداری

اگر به دنبال خلاقیت در عکاسی و تصویربرداری برای تولید...

ندا رضائی انواری

مترجم و مشاور کارآفرینی، بازاریابی، سرمایه‌گذاری و مهاجرت

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

مریم صباغی اصل

مشاور بازاریابی و فروش محصول

برای بازاریابی محصولات صنعتی، رهبری بازار، ارتباطات تبلیغاتی، مدیریت برند...

معصومه رضوی

مشاور طراحی گرافیک و تولید محتوای دیجیتال مارکتینگ

اگر برای معرفی محصولات و خدمات و یا برندسازی از...

•  پايين به بالا (Bottom-Up) يا متراکم شونده (Agglomerative)
در اين روش ابتدا هر دادهها به عنوان خوشهاي مجزا در نظر گرفته ميشود و در طي فرايندي تکراري در هر مرحله خوشههايي که شباهت بيشتري با يکديگر با يکديگر ترکيب ميشوند تا در نهايت يک خوشه و يا تعداد مشخصي خوشه حاصل شود. از انواع الگوريتمهاي خوشه بندي سلسله مراتبي متراکم شونده رايج ميتوان از الگوريتم هاي Single-Linkage، Average-Linkage وComplete-Linkage نام برد. تفاوت اصلي در بين تمام اين روشها به نحوة محاسبة شباهت بين خوشهها مربوط ميشود. که در بخشهاي بعد به تشريح هر يک پرداخته خواهد شد.
خوشه بندی سلسله مراتبی در R
با بسته های قدرتمند R می توان خوشه بندی ها را به خوبی انجام داد. دستور کلی خوشه بندی سلسله مراتبی در R به صورت زیر است:

hclust(d, method = “complete”, members=NULL)

تقریبا تمام روش های خوشه بندی بر مبنای “فاصله” استوارند. ماتریس فاصله که با جایگذاری فاصله ی میان هر دو جفت از داده ها در یک ماتریس به دست می آید در جای دادن نقاط داده ها نقشی اساسی ایفا می کند. نقاطی که به هم نزدیکترند در یک گروه یا خوشه جای می گیرند. بنا براین ورودی روش خوشه بندی سلسله مراتبی یک ماتریس فاصله خواهد بود. در نتیجه باید یکی از آن ها را محاسبه کنیم.
در گام بعد باید این ماتریس فاصله را در تابع hclust اجرا کنیم

hclust(as.dist(d))

المان های تابع hclust به شرح زیر است:
• d ساختاری بر اساس تفاوت موجود در نمونه ها، که از تابع dist به دست می آید.
• method روش خوشه بندی سلسله مراتبی را شرح می دهد. که باید یکی از روش های “single”، “ward”، “complete”، “average”، “mcquitty”، “median” یا “centroid” در دستور فوق نوشته شود.
در حالت کلی این روش های خوشه بندی به قرار زیرند:

1. Ward’s minimum variance or error sum of squares method.
2. single linkage or nearest neighbor method.
3. complete linkage or diameter.
4. average linkage, group average, or UPGMA method.
5. McQuitty’s or WPGMA method.
6. median, Gower’s or WPGMC method.
7. centroid or UPGMC method.

که روش ward کمترین واریانس را در یافتن خوشه ها دخیل می کند و روش “complete linkage” خوشه های شبیه به هم را پیدا می کند. روش “single linkage” که بسیار مرتبط به درخت پوشای مینیمم است، از استراژدی خوشه بندی “friends of friends” استفاده می کند. سایر روش های فوق راه میان بری میان خوشه بندی “complete”و خوشه بندی “single” هستند.
برای درک بهتر این خوشه بندی سلسله مراتبی مثال زیر را گام به گام شرح می دهیم:
فرض کید معدل دانشجویان کارشناسی ارشدآمار ده دانشگاه به صورت زیر باشد و بخواهیم این 10 دانشگاه را بر اساس معدل به صورت سلسله مراتبی خوشه بندی کنیم؛

h<-C(12,13,17,4,13,8,19,14,7,16,12)
data<-data.frame(h)

( نوشتن داده ها به صورت دیتا فریم در مواقعی که تعداد داده ها زیاد باشند و نیز داده هایمان چند بعدی باشند کار را ساده تر خواهد کرد)

dh<-dist(data)ساختن ماتریس فاصله

dh

1 2 3 4 5 6 7 8 9 10

2 1

3 5 4

4 8 9 13

5 1 0 4 9

6 4 5 9 4 5

7 7 6 2 15 6 11

8 2 1 3 10 1 6 5

9 5 6 10 3 6 1 12 7

10 4 3 1 12 3 8 3 2 9

11 0 1 5 8 1 4 7 2 5 4

sh<-hclust(dh,”single”)خوشه بندی از روش تنها

ch<-hclust(dh,”complete”)خوشه بندی با روش کامل

ah<-hclust(dh,”average”)خوشه بندی با روش میانگین

oh<-hclust(dh,”centroid”)خوشه بندی با روش مرکزگرایی

par(mfrow=c(2,2)) قرار دادن نمودارها در دو سطر و دو ستون در یک صفحه
plot(sh,hang=-1)
plot(ch,hang=-1)
plot(ah,hang=-1)
plot(oh,hang=-1

چنانچه بخواهید خوشه بندی را از مرحله ای به بعد متوقف کنید و یا خواهان تعداد خوشه های مورد نظر خود باشید از دستور (cutree(d,n=k استفاده کنید به طوری که n تعداد خوشه های مورد نظر تان است.
با مثالی دیگر این توابع و کاربردهای دیگر خوشه بندی را در R بهتر ببینید:

require(graphics)
hc <- hclust(dist(USArrests), “ave”)
plot(hc)
plot(hc, hang = -1)

## Do the same with centroid clustering and squared Euclidean distance,
## cut the tree into ten clusters and reconstruct the upper part of the
## tree from the cluster centers.

همین کار را با روش خوشه بندی مرکزی با مجذور فاصله اقلیدسی انجام می دهیم:

kc <- hclust(dist(USArrests)^2, “cen”)
plot(kc,hang=-1)

حال چنانچه بخواهیم فقط از وضیعت 10 خوشه از قسمت فوقانی دندوگرام (نمودار درختی) اطلاع داشته باشیم باید درخت را برش و بازسازی کنیم:

memb <- cutree(kc, k = 10)
memb
cent <- NULL
for(k in 1:10){
cent <- rbind(cent, colMeans(USArrests[memb == k, , drop = FALSE]))
}
hc1 <- hclust(dist(cent)^2, method = “cen”, members = table(memb))
opar <- par(mfrow = c(2, 2))
plot(hc, labels = FALSE, hang = -1, main = “Original Tree”)
plot(hc1, labels = FALSE, hang = -1, main = “Re-start from 10 clusters”)
par(opar)

دکتر علی قوامی
دکتر علی قوامی
دانش‌آموخته دکترای تخصصی (PhD) کارآفرینی فناوری، بنیانگذار و مدیر گروه بین‌المللی کسب و کار ساکوراد با بیش از ۲۰ سال تجربه بعنوان کوچ، مدرس، مشاور و منتور در حوزه‌های مختلف راه‌اندازی و توسعه کسب‌وکار در ۱۵ کشور جهان هستم. در تلاشم تا تجربیات ذی‌قیمت خود را با شما دوستان عزیزم به اشتراک گذارم.
پیشنهاد بر اساس سلیقه شما

مسیریابی تحصیلی - شغلی (آنلاین)

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

سئوالات و نظرات ارزشمند خود را با ما مطرح کنید

دیدگاهتان را بنویسید

راهنمای گام به گام تا دریافت مشاوره

گام اول

انتخاب حوزه تخصصی مدنظر

گام دوم

بررسی رزومه مشاوران مرتبط

گام سوم

انتخاب مشاور با تخصص مدنظر

گام چهارم

تکمیل فرم و ثبت درخواست

گام پنجم

پرداخت حق‌الزحمه مشاور

گام ششم

تماس با شما برای تعیین وقت

گام هفتم

برقراری ارتباط شما با مشاور