تاپيک: clustering
نمايش پست تنها
قديمي ۰۱-۲۶-۱۳۹۰, ۱۲:۴۳ بعد از ظهر   #22 (لینک دائم)
taha_mokfi Male
Moderator
 
آواتار taha_mokfi
 
تاريخ عضويت: بهمن ۱۳۸۹
محل سكونت: تهران
پست ها: 88
تشكرها: 41
93 تشكر در 42 پست
پيش فرض

نقل قول:
نوشته اصلي بوسيله zmmhmmdrz نمايش پست
همون kmeans unsupervise
ابتدا به تعداد کلاستر ها از داده ها به صورت راندم انتخاب می کنید به عنوان مرکز کلاستر های ابتدایی
در ادامه داده ها را با استفاده از فاصله اقلیدسی در کلاستر های خودشان قرار می دهیم (فاصله هر داده با مراکز را حساب کرده هر کدام کمتر بود آن داده را در آن کلاستر قرار می دهیم )
شرایط پایانی را ،که می تواند تعداد تکرار یا شرط جا به جا نشدن در کلاستر ها باشد را چک می کنیم
اگر پایان نیافته بود میانگین دادههای هر کلاستر را حساب می کنیم معمولا به صورت برداری
میانگین بدست آمده در هر کلاستر مرکز کلاستر می شود و روال بالا را تکرار می کنیم یعنی دوباره داده ها را با استفاده از فاصله اقلیدسی در کلاستر مربوط به خودشان قرار داده و شرط پایانی را چک می کنیم
اولا من صنایع خوندم با اینکه بچه های صنایع متلب رو خیلی دوست دارند من اصلا دوست ندارم. و پس متلب بلد نیستم. اما قوی ترین نرم افزار داده کاوی یعنی clementine رو خیلی خوب بلدم. خیلی جالب توی رنکینگ جهانی سال 2007 KDD متلب توی رده 10هم قرار داره. لینک های زیر رو ببینید:
Data Mining - Most Popular Data Mining Software (Software) - The Data Mine Wiki
Poll: Data Mining / Analytic Software Tools

متلب اصلا نرم افزار داده کاوی نیست نرم افزارهای open source داده کاوی که بشه مثل متلب code نویسی کرد توش و تخصصشون داده کاوی باشه خیلی زیاده.
البته این موضوع به خاطر استادای ایرانی هست که به روز نیستند و هنوز با نرم افزارهای سنتی کار می کنند.
در هر حال من فکر کنم با دو متغیرجنسیت که دو مقدار داره و داده سن که 100 واحد داره فقط می شه از روش های کاهش داده ها یا نرمالسازی داده ها برای یک الگوریتم بدون نظارت مثل k-means استفاده کرد. البته از لحاظ validity این روش، این روش خیلی بد روی داده های خاص مثل داده های شما عمل می کنه.
ولی باز من فکر می کنم این داده ها با همین شکل هم خوب جواب بدند. مثلا شما برای این نوع داده ها خوشه بندی رو باید بین 2 تا 10 تا خوشه بیشتر انجام ندید. چون باید این موضوع رو هم در نظر بگیرید که تعداد خوشه ها باید به نوعی منطقی باشه. البته نه منطق خیلی دقیق و قوی.

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


age sex K-Means
12 0 cluster-1
13 0 cluster-1
14 0 cluster-1
15 0 cluster-5
16 0 cluster-5
17 0 cluster-5
18 0 cluster-5
19 0 cluster-3
20 0 cluster-3
21 0 cluster-3
12 1 cluster-4
13 1 cluster-4
14 1 cluster-4
15 1 cluster-6
16 1 cluster-6
17 1 cluster-6
18 1 cluster-6
19 1 cluster-2
20 1 cluster-2
21 1 cluster-2

یه نکته خیلی مهم. حتما حتما حتما از روش های بالانس داده ها استفاده کنید. مثلا اینجور نباشه که مثلا از زن ها 10 رکورد داشته باشید در مجموعه داده ها تون و از مردها 90 رکورد. این اریب بودن داده ها موجب می شه که خوشه بندی تون تحت تاثیر قرار بگیره.

جواب قانع کننده بود؟
__________________
همه چیز آخرش به او ختم می شود
taha_mokfi آفلاين است   پاسخ با نقل قول
از taha_mokfi تشكر كرده است:
zmmhmmdrz (۰۱-۲۷-۱۳۹۰)