کلسٹر تجزیہ

کیا جواب دہندگان ایسے گروہوں میں بٹتے ہیں – اقسام، پروفائلز، قطعات – جو پہلے سے متعین نہیں کیے گئے؟ کلسٹر تجزیہ (Cluster Analysis) جواب دہندگان کو کئی متغیرات پر بیک وقت ان کی باہمی مماثلت کے مطابق گروہ بند کرتا ہے۔ صفحہ دو مرحلہ وار طریقہ چلاتا ہے: وارڈ (Ward) کے طریقے سے درجہ وار کلسٹرنگ، اور پھر k-مینز (k-means) جو وارڈ کے کلسٹرز کے مراکز سے شروع ہوتا ہے۔ آؤٹ پٹ: کلسٹرز کی تعداد کے انتخاب کا جدول (کہنی (elbow)، سلہوٹ (silhouette) اور گیپ شماریہ (gap statistic))، ڈینڈروگرام (dendrogram)، ہر کلسٹر کا حجم اور معیار، اصل اکائیوں اور معیاری اسکورز میں کلسٹرز کا پروفائل، اردو اور انگریزی میں نتائج کا پیراگراف، اور کلسٹر کالم کے ساتھ ڈیٹا فائل۔

کیلکولیٹر

ڈیٹا لوڈ کرنا

ایکسل فائل یا SPSS فائل (.sav) یہاں گھسیٹ کر لائیں، یا منتخب کرنے کے لیے کلک کریں
سائٹ کے معیاری سانچے میں: قطار = جواب دہندہ، کالم = متغیر، پہلی قطار عنوانات کی۔ CSV بھی قبول ہے۔
کلسٹرنگ کے متغیرات عددی کالم ہیں – عموماً پیمانوں کے اسکور (آئٹمز کی اوسط) اور مقداری متغیرات؛ اگر آپ نے کرونباخ الفا کے صفحے پر پیمانے کا اسکور نکالا ہے تو وہاں سے ڈاؤن لوڈ کی گئی فائل یہاں اپ لوڈ کریں۔
صرف تجربہ کرنا چاہتے ہیں؟ مثال کی ڈیٹا فائل ڈاؤن لوڈ کریں (سوشل میڈیا کے استعمال پر سروے کے 150 جواب دہندگان: چار پیمانوں کے اسکور اور روزانہ گھنٹے، اور توثیق کے لیے پس منظر کے متغیرات، کوڈ بک شیٹ کے ساتھ): عبرانی میں مثال انگریزی میں مثال
یا

شیٹ سے کالم براہِ راست چسپاں کریں (عنوانات کی قطار سمیت) – ایکسل میں منتخب کریں، کاپی کریں اور یہاں چسپاں کریں:

A
B
C
D
E
F
آپ صرف چسپاں بھی کر سکتے ہیں – ڈیٹا خود بخود لوڈ ہو کر دکھایا جائے گا۔

متغیرات اور ترتیبات

رہنما

کب استعمال کریں؟

جب سوال لوگوں کے بارے میں ہو نہ کہ متغیرات کے بارے میں: کیا جواب دہندگان میں الگ الگ اقسام ہیں – غیر فعال صارفین بمقابلہ مواد تخلیق کرنے والے، وہ طلبہ جنہیں مدد درکار ہے بمقابلہ وہ جنہیں نہیں – بغیر اس کے کہ ایسے گروہ پہلے سے متعین کیے گئے ہوں۔ Wendler اور Gröttrup (2021، ص 623) کلسٹر تجزیے کی تعریف کثیر متغیر طریقوں کے ایک مجموعے کے طور پر کرتے ہیں جو "'ملتی جلتی' اشیاء کے گروہوں کی شناخت کے لیے استعمال ہوتے ہیں"، اور مثالوں میں مارکیٹنگ میں گاہکوں کی قطعہ بندی اور پس منظر اور کارکردگی کی بنیاد پر "خصوصی ضروریات والے طلبہ کے ذیلی گروہوں" کی شناخت گنواتے ہیں (ص 624)۔ سب سے اہم امتیاز، ان کی شکل 7.1 میں: کلسٹر تجزیہ قطاروں (جواب دہندگان) کو گروہ بند کرتا ہے، اور عاملی تجزیہ کالموں (آئٹمز) کو۔ اگر سوال یہ ہو کہ کون سے آئٹمز ایک ہی چیز ناپتے ہیں – توثیقی عاملی تجزیہ (CFA)، غیر نگرانی شدہ لرننگ (unsupervised learning) کا صفحہ (PCA) اور دریافتی عاملی تجزیہ (EFA) کا کیلکولیٹر؛ اگر گروہ پہلے سے معلوم ہوں اور پوچھا جائے کہ آیا وہ مختلف ہیں – تغیرات کا تجزیہ (ANOVA)۔ یہاں کوئی پیش گوئی شدہ متغیر نہیں اور کوئی "درست جواب" نہیں: یہ غیر نگرانی شدہ لرننگ ہے، اور "چونکہ گروہ کی رکنیت پہلے سے معلوم نہیں، الگورتھم گروہوں کی خصوصیات نہیں سیکھ سکتا" (Wendler & Gröttrup, 2021, p. 627)۔

غیر نگرانی شدہ لرننگ (unsupervised learning) کا صفحہ کلسٹرنگ کے تمام طریقوں (k-مینز، درجہ وار، گاؤسی آمیزے، DBSCAN، TwoStep) اور اس سوال کا جائزہ لیتا ہے کہ آیا کلسٹرز موجود بھی ہیں۔ یہ صفحہ سوالناموں میں ان میں سب سے عام طریقہ چلاتا ہے: وارڈ اور پھر k-مینز، مقداری متغیرات پر۔ زمرہ جاتی (categorical) متغیرات (مثلاً جنس، شعبۂ تعلیم) یہاں فاصلے کے حساب میں شامل نہیں ہوتے؛ وہ بعد میں کلسٹرز کی توثیق اور وضاحت کے لیے استعمال ہوتے ہیں۔

منطق: دو مراحل

مرحلہ الف – تجمیعی درجہ وار کلسٹرنگ۔ ہر جواب دہندہ سے بطور الگ کلسٹر آغاز کیا جاتا ہے، اور ہر قدم پر دو قریب ترین کلسٹرز کو ملا دیا جاتا ہے، یہاں تک کہ سب ایک کلسٹر میں آ جائیں (Hastie et al., 2009, p. 520; Everitt et al., 2011, p. 73)۔ ہر مرحلہ ایک تقسیم ہے، اور پورا درخت ڈینڈروگرام (dendrogram) ہے: "ہر گرہ کی اونچائی اس کے دو بچوں کے درمیان عدم مماثلت کے متناسب ہے"، اور درخت کو افقی طور پر کاٹنے سے کلسٹرز میں تقسیم حاصل ہوتی ہے (Hastie et al., 2009, p. 521)۔ گروہوں کے معاملے میں "قریب ترین" کا کیا مطلب ہے؟ یہ ربط (linkage) ہے (Everitt et al., 2011, pp. 76-77, Figure 4.3): واحد (قریب ترین جوڑا)، مکمل (دور ترین جوڑا)، اوسط (تمام جوڑے) – اور وارڈ، جس میں ان دو کلسٹرز کو ملایا جاتا ہے جن کے ملاپ سے "کلسٹرز کے اندر مربعوں کے مجموعے میں اضافہ… تمام متغیرات پر" سب سے کم ہو (Ward, 1963، بحوالہ Everitt et al., 2011، ص 78، جدول 4.1؛ اور اسی طرح Wendler & Gröttrup, 2021، ص 648، جدول 7.24)۔ وارڈ وہ ربط ہے جو k-مینز کے ہدف سے مطابقت رکھتا ہے: دونوں ایک ہی چیز کو کم سے کم کرتے ہیں – کلسٹرز کے اندر مراکز سے فاصلوں کے مربعوں کا مجموعہ۔ واحد ربط جواب دہندگان کی "زنجیر بندی" سے لمبے کلسٹرز بنانے کی طرف مائل ہوتا ہے، اور مکمل ربط ایسے مختصر کلسٹرز کی طرف جن کے ارکان بعض اوقات کسی دوسرے کلسٹر کے زیادہ قریب ہوتے ہیں (Hastie et al., 2009, pp. 524-525)۔

مرحلہ ب – k-مینز۔ درجہ وار کلسٹرنگ میں ایک ساختی خامی ہے: "کسی شے کی کسی خاص کلسٹر میں تفویض کبھی تبدیل نہیں ہو سکتی" (Wendler & Gröttrup, 2021, p. 628, Table 7.1) – جو جواب دہندہ ابتدا میں کسی پڑوسی سے ملا دیا گیا وہ وہیں رہتا ہے، چاہے آخر میں وہ کسی دوسرے کلسٹر کے مرکز کے زیادہ قریب ہو۔ k-مینز اس کی اصلاح کرتا ہے: مراکز دیے ہوئے ہوں تو ہر جواب دہندہ کو قریب ترین مرکز سے منسوب کیا جاتا ہے؛ تفویض دی ہوئی ہو تو ہر مرکز کا حساب اوسط کے طور پر کیا جاتا ہے؛ اور یہ عمل دہرایا جاتا ہے یہاں تک کہ کوئی تفویض نہ بدلے (Hastie et al., 2009، ص 510، الگورتھم 14.1)۔ ہر قدم فاصلوں کے مربعوں کا مجموعہ کم کرتا ہے، اس لیے ارتکاز کی ضمانت ہے – "تاہم نتیجہ ایک غیر بہترین مقامی کم ترین ہو سکتا ہے"، اور یہ نقطۂ آغاز پر منحصر ہے (ایضاً)۔ یہاں دونوں مراحل ملتے ہیں: Géron (2022, Chapter 9, "Centroid initialization methods") – "اگر آپ کو اتفاق سے تقریباً معلوم ہو کہ مراکز کہاں ہونے چاہئیں (مثلاً اگر آپ نے پہلے کوئی دوسرا کلسٹرنگ الگورتھم چلایا ہو)، تو آپ انہیں مقرر کر سکتے ہیں" بطور نقطۂ آغاز۔ اور اسی طرح Everitt اور ساتھی (2011، ص 122): ابتدائی تقسیم "کسی دوسرے کلسٹرنگ طریقے، شاید درجہ وار طریقوں میں سے کسی ایک، کے پچھلے اطلاق کا نتیجہ ہو سکتی ہے"۔ Kassambara (2017، ص 163) کے ہاں اس طریقے کا ایک نام ہے – "hierarchical k-means"، ایک ہائبرڈ طریقہ "k-مینز کے نتائج بہتر بنانے کے لیے"، جو اس حقیقت سے پیدا ہوا کہ "k-مینز کا حتمی حل کلسٹر مراکز کے ابتدائی تصادفی انتخاب کے لیے بہت حساس ہے"، اور اس کے تین قدم بالکل یہی ہیں: درجہ وار کلسٹرنگ اور درخت کو k کلسٹرز میں کاٹنا، ہر ایک کا مرکزِ ثقل، اور ان مراکز سے k-مینز – جبکہ "k-مینز ابتدائی تقسیم کو بہتر بنائے گا"، اس لیے وہ حتمی تقسیم سے "تھوڑی مختلف ہو سکتی ہے"۔ صفحہ بالکل یہی کرتا ہے: وارڈ کے درخت کو k کلسٹرز میں کاٹتا ہے، ہر ایک کا مرکزِ ثقل نکالتا ہے، اور ان سے k-مینز چلاتا ہے۔ نتیجہ متعین (deterministic) ہے – وہی ڈیٹا، وہی نتیجہ، ہر بار چلانے پر – اور اس میں وہ تصادفی آغاز نہیں جس سے Wendler اور Gröttrup (2021، ص 677) Modeler کے K-Means کے بارے میں خبردار کرتے ہیں، جو پہلے ریکارڈ سے شروع ہوتا ہے اور اس لیے "نتیجہ کسی حد تک اشیاء کی ترتیب پر منحصر ہے"۔ دوسری طرف، ایک ہی نقطۂ آغاز ایک حد بندی بھی ہے: "بہترین سازی کے طریقے کے نتائج ابتدائی تقسیم کے انتخاب سے انتہائی متاثر ہو سکتے ہیں"، اور "بہتر ہے کہ بہترین سازی کا الگورتھم مختلف ابتدائی تقسیموں کے ساتھ کئی بار چلایا جائے"؛ اور اگر مختلف ابتدائی تقسیمیں بہت مختلف گروہ بندیاں دیں تو یہ عموماً اس بات کی علامت ہے کہ کلسٹرز کی تعداد غلط ہے، یا کلسٹرز کا کوئی واضح ثبوت نہیں (Marriott, 1982, as cited in Everitt et al., 2011, p. 122)۔ صفحہ اس سمت میں دو چھوٹی جانچیں رپورٹ کرتا ہے – دونوں مراحل کا موازنہ اور واحد منتقلی کی جانچ (آگے دیکھیں)؛ بہت سے تصادفی آغازوں سے چلانا – R میں، nstart کے ساتھ۔

Wendler اور Gröttrup (2021، ص 628، جدول 7.1) دونوں خاندانوں کی خوبیوں اور خامیوں کا خلاصہ کرتے ہیں، اور دو مرحلہ وار طریقہ ہر ایک سے وہ لیتا ہے جس میں وہ اچھا ہے: درجہ وار سے – ایک درخت جو ہر سطح پر ساخت دکھاتا ہے اور "متعین (غیر تصادفی)" نتیجہ، اور k-مینز سے – "اشیاء کو دوسرے کلسٹرز میں دوبارہ تفویض کرنے" کی لچک۔ دونوں مراحل کا موازنہ ایک چھوٹی جانچ بھی ہے: صفحہ رپورٹ کرتا ہے کہ مرحلہ ب میں کتنے جواب دہندگان نے کلسٹر بدلا اور دونوں تقسیموں کے درمیان تصحیح شدہ رینڈ اشاریہ (ARI) – 1 مکمل اتفاق ہے۔ یہ اسی ڈیٹا پر الگورتھم کی جانچ ہے، کسی دوسرے نمونے میں حل کے استحکام کی نہیں – اس کے بارے میں مفروضات اور انتباہات کے حصے میں۔

معیار بندی اور فاصلہ

فاصلہ۔ دونوں طریقے جواب دہندگان کے درمیان اقلیدسی فاصلے (Euclidean distance) پر کام کرتے ہیں – تمام متغیرات میں فرقوں کے مربعوں کے مجموعے کا جذر، "سب سے عام فاصلے کا پیمانہ" (Everitt et al., 2011, p. 49, Equation 3.4) – اور اس کے مربع پر، جو "آؤٹ لائرز کے لیے زیادہ حساس" ہے (Wendler & Gröttrup, 2021, pp. 630, 637)۔ یہیں سے صفحے کا اہم سوال نکلتا ہے: فاصلے میں کیا شامل ہوتا ہے، اور کس وزن کے ساتھ۔ Hastie اور ساتھی (2009، ص 506) کہتے ہیں کہ "مناسب عدم مماثلت کے پیمانے کا تعین کلسٹرنگ کی کامیابی کے لیے کلسٹرنگ الگورتھم کے انتخاب سے کہیں زیادہ اہم ہے"۔

معیار بندی – ہاں، عموماً۔ اقلیدسی فاصلے میں بڑی وسعت والا متغیر حاوی ہو جاتا ہے: روزانہ گھنٹے (0-12) پیمانے کے اسکور (1-5) کو "دبا دیں گے"، اور کلسٹرز درحقیقت گھنٹوں کے کلسٹرز ہوں گے۔ اس لیے، جیسا کہ Everitt اور ساتھی (2011، ص 67) لکھتے ہیں، "مثلاً کلوگرام میں وزن، میٹر میں قد اور چار نکاتی پیمانے پر بے چینی کو مساوی سمجھنا معقول نہیں ہوگا"، اور "جو حل اکثر تجویز کیا جاتا ہے… وہ بس یہ ہے کہ کسی بھی تجزیے سے پہلے ہر متغیر کو تغیر (variance) 1 پر معیاری بنا دیا جائے"؛ Wendler اور Gröttrup (2021، ص 656-657) – عددی متغیرات کی معیار بندی "کلسٹرنگ کے عمل کے لیے بہت اہم ہے… قدروں کو قابلِ موازنہ بنانے کے لیے انہیں معیاری بنانا ضروری ہے"؛ اور Géron (2022, Chapter 9, "Limits of k-means") – "k-مینز چلانے سے پہلے ان پٹ خصوصیات کو اسکیل کرنا اہم ہے، ورنہ کلسٹرز بہت زیادہ کھنچے ہوئے ہو سکتے ہیں"۔ صفحے پر طے شدہ انتخاب z اسکورز ہے (ہر متغیر کے لیے اوسط 0 اور معیاری انحراف 1)، اور تب ہر متغیر کا فاصلے میں برابر وزن ہوتا ہے۔

معیار بندی – ہمیشہ نہیں۔ Hastie اور ساتھی (2009، ص 506) اس اصول سے خبردار کرتے ہیں: تمام متغیرات کو برابر اثر دینا "اگرچہ معقول لگ سکتا ہے، اور اکثر تجویز کیا جاتا ہے، بہت نقصان دہ ہو سکتا ہے"۔ اگر ایک متغیر گروہوں میں اچھی طرح امتیاز کرتا ہو اور دوسرا شور ہو، تو معیار بندی شور کا وزن بڑھا دیتی ہے، اور "گروہوں کو اس حد تک دھندلا دے گی کہ کلسٹرنگ الگورتھم انہیں ظاہر نہ کر سکے" – ان کی شکل 14.5 میں دو اچھی طرح الگ گروہ معیار بندی کے بعد غائب ہو جاتے ہیں۔ Everitt اور ساتھی (2011، ص 66-67) یہی بات یوں کہتے ہیں: معیار بندی وزن دینے کی ایک خاص صورت ہے، اور "جب متغیرات کو تجزیے سے پہلے معیاری بنایا جاتا ہے تو محقق فرض کرتا ہے کہ کسی متغیر کی اہمیت اس کے تغیر کے بڑھنے کے ساتھ گھٹتی ہے"؛ معیاری انحرافات کے مطابق وزن "غیر مؤثر معلوم ہوتے ہیں"؛ بہت سے اطلاقات میں متغیر کی وسعت سے تقسیم z اسکورز سے بہتر ہے (Milligan & Cooper, 1988، بحوالہ ایضاً)؛ اور بہتر ہے کہ گروہوں کے اندر تغیر کے مطابق معیار بندی کی جائے نہ کہ مجموعی تغیر کے مطابق – لیکن گروہ ہی تو وہ چیز ہیں جن کی تلاش ہے۔ اور جب تمام متغیرات پہلے سے ایک ہی پیمانے پر ہوں (مثلاً 1-5 کے چار پیمانوں کے اسکور)، تو معیار بندی وزن کو نمونے کے معیاری انحرافات کے مطابق بدل دیتی ہے – جو ہمیشہ مطلوب نہیں ہوتا۔ صفحہ z اسکورز یا اصل اکائیاں پیش کرتا ہے؛ وسعت کے مطابق معیار بندی صفحے پر نہیں۔ فیصلہ متغیرات اور سوال پر منحصر ہے ("ہر مسئلے کے سیاق میں محتاط سوچ کا کوئی متبادل نہیں"، ایضاً)؛ صفحے پر "متغیرات کی معیار بندی" کو نشان زد یا غیر نشان زد کیا جاتا ہے، اور آؤٹ پٹ بتاتا ہے کہ کیا منتخب ہوا۔ جب معیار بندی بند ہو اور متغیرات کی وسعتیں بہت مختلف ہوں – صفحہ خبردار کرتا ہے۔

لیکرٹ پیمانہ۔ فاصلہ فرض کرتا ہے کہ 1 اور 2 کے درمیان فرق 4 اور 5 کے درمیان فرق کے برابر ہے۔ Wendler اور Gröttrup (2021، ص 635، جدول 7.8) یاد دلاتے ہیں کہ لیکرٹ پیمانے میں "فاصلوں کی تشریح احتیاط سے کی جانی چاہیے، یا بالکل نہیں"، اور یہ کہ یہ سوال ادب میں متنازع ہے۔ سائٹ کے ضابطے کے مطابق (متغیرات اور پیمائش کی سطحیں کا صفحہ)، کثیر آئٹمی پیمانے کا اسکور – کئی آئٹمز کی اوسط – وقفی متغیر کے طور پر برتا جاتا ہے، اور واحد لیکرٹ آئٹم نہیں۔ اس سے سفارش نکلتی ہے: پیمانوں کے اسکورز کے مطابق کلسٹر کیا جائے (کرونباخ الفا اور پیمانے کا اسکور کا صفحہ)، الگ الگ آئٹمز کے مطابق نہیں۔

کتنے کلسٹرز؟

یہ تجزیے کا مشکل فیصلہ ہے، اور اس کا کوئی معنویت کا ٹیسٹ نہیں۔ Hastie اور ساتھی (2009، ص 518) دو صورتوں میں امتیاز کرتے ہیں: قطعہ بندی میں "k عموماً مسئلے کے حصے کے طور پر متعین ہوتا ہے" (k سیلز پرسنز والی کمپنی)؛ اور جب کلسٹرنگ "فطری گروہوں" کی وضاحت ہو تو k نامعلوم ہوتا ہے اور اس کا تخمینہ ڈیٹا سے لگانا پڑتا ہے۔ صفحہ 1 سے لے کر آپ کی منتخب کردہ زیادہ سے زیادہ تعداد تک ہر k کے لیے دو مرحلہ وار حل چلاتا ہے، اور تین معیار ساتھ ساتھ چھاپتا ہے:

کہنی (elbow)۔ کلسٹرز کے اندر مراکز سے فاصلوں کے مربعوں کا مجموعہ، Wk، k بڑھنے کے ساتھ ہمیشہ گھٹتا ہے – انتہا پر ہر جواب دہندہ خود ایک کلسٹر ہے اور W = 0 (Hastie et al., 2009, p. 519)۔ لیکن اگر واقعی k* گروہ ہوں تو کمی k* تک تیز ہوگی اور اس کے بعد معتدل، کیونکہ اس سے آگے ہر اضافی کلسٹر صرف ایک فطری گروہ کو دو میں تقسیم کرتا ہے؛ منحنی میں "خم" (kink) تلاش کیا جاتا ہے – "اور کلسٹرنگ کے طریقوں کے دوسرے پہلوؤں کی طرح، یہ طریقہ کسی حد تک تخمینی (heuristic) ہے" (Hastie et al., 2009, p. 519)؛ Everitt اور ساتھی (2011، ص 126) اضافہ کرتے ہیں کہ یہ "بہت موضوعی ہو سکتا ہے"، اور "بڑا" اکثر "صارف کی پیشگی توقعات کا تفاعل" ہوتا ہے۔ جدول میں یہ وضاحت شدہ تغیر (explained variance) کے طور پر بھی دکھایا جاتا ہے، 1 − Wk/W1 – مجموعی تغیر کا وہ حصہ جس کی تقسیم وضاحت کرتی ہے (R² کا مماثل؛ Wendler & Gröttrup, 2021، ص 649، جدول 7.25)۔

سلہوٹ (silhouette)۔ ہر جواب دہندہ کے لیے: a – اس کے اپنے کلسٹر کے ارکان سے اوسط فاصلہ، b – اگلے قریب ترین کلسٹر کے ارکان سے اوسط فاصلہ، اور سلہوٹ s = (b − a)/max(a, b)، 1− اور 1+ کے درمیان۔ Rousseeuw (1987، ص 56)، جنہوں نے یہ پیمانہ متعین کیا: s 1 کے قریب – جواب دہندہ "اچھی طرح کلسٹر شدہ" ہے؛ 0 کے آس پاس – "درمیانی صورت"، جس کے بارے میں "بالکل واضح نہیں" کہ وہ دونوں کلسٹرز میں سے کس سے تعلق رکھتا ہے؛ 1− کے قریب – تقریباً کہا جا سکتا ہے کہ اسے "غلط درجہ بند" کیا گیا۔ جو جواب دہندہ اکیلا ایک کلسٹر میں ہو اس کا سلہوٹ 0 ہے – ایک انتخاب جو "یقیناً من مانا ہے، لیکن صفر کی قدر سب سے غیر جانبدار معلوم ہوتی ہے" (ایضاً)۔ یہ پیمانہ موزوں ہے جب فاصلے نسبتی پیمانے پر ہوں (جیسے اقلیدسی فاصلہ) اور جب "مختصر اور واضح طور پر الگ کلسٹرز تلاش کیے جا رہے ہوں" (ص 55)، اور سلہوٹ کی اوسط "کلسٹرز کی ‘مناسب’ تعداد منتخب کرنے کے لیے استعمال ہو سکتی ہے" (ص 53)۔ تمام جواب دہندگان پر سلہوٹ کی اوسط تقسیم کے معیار کا پیمانہ ہے، اور سب سے زیادہ اوسط والا k امیدوار ہے؛ حدوں کے لیے دو ماخذ ہیں جو بنیادی طور پر متفق ہیں: Kaufman اور Rousseeuw سلہوٹ کی 0.5 سے اوپر اوسط میں "معقول درجہ بندی" دیکھتے ہیں (Kaufman & Rousseeuw, 1990، بحوالہ Everitt et al., 2011، ص 129)، اور SPSS Modeler کی دستاویزات، جیسا کہ Wendler اور Gröttrup (2021، ص 649) نقل کرتے ہیں، .25 تک کمزور، .25 اور .50 کے درمیان درمیانہ، اور .50 سے اوپر اچھا درجہ دیتی ہیں (IBM, 2015، بحوالہ ایضاً)۔ سلہوٹ k = 1 کے لیے متعین نہیں، اس لیے یہ نہیں کہہ سکتا کہ "یہاں کوئی کلسٹرز نہیں"۔

گیپ شماریہ (gap statistic؛ Tibshirani et al., 2001، بحوالہ Hastie et al., 2009، ص 519) "log Wk منحنی کا موازنہ اس منحنی سے کرتا ہے جو ڈیٹا پر مشتمل مستطیل پر یکساں طور پر پھیلے ہوئے ڈیٹا سے حاصل ہوتا ہے"، یعنی ایسے ڈیٹا سے جس میں کوئی کلسٹرز نہیں۔ گیپ دونوں کے درمیان فرق ہے؛ "درحقیقت یہ 'خم' کو تلاش کرنے کا ایک خودکار طریقہ ہے"، اور یہ "اس وقت بھی معقول طور پر کام کرتا ہے جب ڈیٹا ایک ہی کلسٹر میں آتا ہو، اور اس صورت میں کلسٹرز کی بہترین تعداد کا تخمینہ ایک لگانے کی طرف مائل ہوگا – وہ منظرنامہ جس میں زیادہ تر مسابقتی طریقے ناکام ہو جاتے ہیں" (ایضاً)۔ اصول (وہاں مساوات 14.39): سب سے چھوٹا k جس پر گیپ، k + 1 پر گیپ منفی اس کی معیاری خطا، سے کم نہ ہو۔ صفحہ یکساں ڈیٹا R کے جنریٹر سے بناتا ہے (طے شدہ طور پر سیڈ 2026، 100 نمونے)، اس لیے نتیجہ اسی سیڈ کے ساتھ cluster پیکج میں clusGap کے نتیجے کے عین مطابق ہے (R رہنما نیچے)۔ تینوں میں سے یہی واحد معیار ہے جو "ایک" جواب دے سکتا ہے: Everitt اور ساتھی (2011، ص 129) زور دیتے ہیں کہ یہ "واحد کلسٹر والے حل کے معیار کا اندازہ لگانے کی اجازت دیتا ہے"، یعنی یہ پوچھنے کی کہ آیا الگ کلسٹرز کا کوئی ثبوت ہے بھی – اس لیے آؤٹ پٹ میں k کے انتخاب کے لیے یہی طے شدہ ہے۔

عمومی سفارش یہ ہے کہ "گروہوں کی تعداد منتخب کرنے کے لیے کسی ایک اصول پر انحصار نہ کیا جائے، بلکہ کئی تکنیکوں کے نتائج کو یکجا کیا جائے" (Everitt et al., 2011, p. 130) – اس لیے جدول تینوں کو دکھاتا ہے۔ جب معیار متفق نہ ہوں – اور ایسا ہوتا ہے – فیصلہ محقق کو منتقل ہو جاتا ہے: Géron (2022، باب 9) ایک مثال دکھاتے ہیں جس میں سلہوٹ k=4 کو معمولی ترجیح دیتا ہے، اور وہ 5 چنتے ہیں کیونکہ کلسٹرز ملتے جلتے حجم کے ہیں؛ اور Wendler اور Gröttrup (2021، ص 650) یاد دلاتے ہیں کہ "کلسٹرنگ کے طریقے ہر کلسٹر کی مناسب وضاحت تلاش کرنے میں کوئی مدد فراہم نہیں کرتے" – جس حل کو الفاظ میں بیان نہ کیا جا سکے وہ اچھا حل نہیں، چاہے اس کے اشاریے بلند ہوں۔ عملی اصول √(n/2) (Mardia et al., 1979، بحوالہ Wendler & Gröttrup, 2021، ص 649) انتخاب کے لیے بہت موٹا ہے؛ یہ تشریح کے خانے میں صرف ایک حوالہ جاتی نقطے کے طور پر آتا ہے۔

آؤٹ پٹ کیسے پڑھیں؟

جدول 1 – کلسٹرز کی تعداد کا انتخاب۔ ہر k کے لیے: Wk، وضاحت شدہ تغیر، سلہوٹ کی اوسط، گیپ اور اس کی معیاری خطا۔ جو قطار گیپ شماریہ چنتا ہے وہ نمایاں ہے، اور اسی طرح سب سے زیادہ سلہوٹ والا k۔ شکل 1 تینوں منحنیات کو ساتھ ساتھ دکھاتی ہے۔

حل کے لیے کلسٹرز کی تعداد۔ جدول 1 کے نیچے k منتخب کیا جاتا ہے۔ طے شدہ انتخاب گیپ شماریے کا انتخاب ہے، اور اگر اس نے 1 چنا ہو – سب سے زیادہ سلہوٹ والا k، تنبیہ کے ساتھ۔ انتخاب بدلنے سے اس کے بعد آنے والی ہر چیز دوبارہ حساب ہوتی ہے، گیپ شماریہ دہرائے بغیر۔

شکل 2 – مرحلہ الف کا ڈینڈروگرام، منتخب k کے لیے کٹنے کی لکیر کے ساتھ۔ عمودی محور ملاپ کی اونچائی ہے (وارڈ کے فاصلوں میں): بلند ملاپ، نیچے کے ملاپوں کی ایک قطار کے اوپر، فطری کلسٹرز کے امیدوار ہیں (Hastie et al., 2009, p. 521)۔ SPSS یہی درخت 0-25 کے ری اسکیل شدہ پیمانے پر دکھاتا ہے ("Rescaled Distance Cluster Combine"; Wendler & Gröttrup, 2021, p. 645) – شکل یکساں ہے۔ 120 سے زیادہ جواب دہندگان کے نمونے میں پتے ایک ایک کر کے نہیں بنائے جاتے: درخت اپنے نچلے حصے کے 40 گروہوں کے اوپر دکھایا جاتا ہے، ہر گروہ میں جواب دہندگان کی تعداد کے ساتھ۔

جدول 2 – کلسٹرز کا حجم اور معیار: جواب دہندگان کی تعداد اور فیصد، ہر کلسٹر میں سلہوٹ کی اوسط اور منفی سلہوٹ والے جواب دہندگان کی تعداد (جو کسی دوسرے کلسٹر کے زیادہ قریب ہیں)، اور مرحلہ ب سے پہلے وارڈ کے کلسٹر میں حجم۔ نوٹ میں: مرحلہ ب میں کتنے جواب دہندگان نے کلسٹر بدلا، اور دونوں مراحل کے درمیان تصحیح شدہ رینڈ اشاریہ۔

جدول 3 – کلسٹرز کا پروفائل: ہر متغیر کے لیے – ہر کلسٹر میں اور پورے نمونے میں اوسط اور معیاری انحراف، اصل اکائیوں میں، اور η² – متغیر کے تغیر کا وہ حصہ جو کلسٹرز کے درمیان ہے۔ شکل 3 یہی اوسطیں معیاری اسکورز میں دکھاتی ہے، تاکہ ایک نظر میں نظر آئے کہ ہر کلسٹر کس چیز میں اوسط سے اوپر یا نیچے ہے۔ یہیں سے وہ نام نکلتا ہے جو آپ ہر کلسٹر کو دیں گے، اور یہ آپ کی تشریح ہے، حساب کا نتیجہ نہیں (Wendler & Gröttrup, 2021, p. 650)۔

شکل 4 – سلہوٹ: ہر جواب دہندہ کے لیے ایک ستون، ہر کلسٹر کے اندر ترتیب شدہ – ہر کلسٹر کے لیے "چاقو کی شکل"۔ شکل کی اونچائی کلسٹر میں جواب دہندگان کی تعداد ہے اور اس کی چوڑائی ان کے سلہوٹ؛ جس کلسٹر کے زیادہ تر ارکان مجموعی اوسط (نقطہ دار لکیر) سے نیچے ہوں وہ کمزور کلسٹر ہے (Géron, 2022, Chapter 9)۔ نتائج کا پیراگراف – اردو اور انگریزی میں؛ "نتیجے کی تشریح" کا خانہ – کیا معیار متفق ہیں؟، کلسٹرز کا معیار، مراحل کے درمیان کیا بدلا، اور اب کیا کیا جائے۔ کلسٹر کالم کے ساتھ ڈیٹا ڈاؤن لوڈ کریں – وہی فائل ایک اضافی کالم کے ساتھ، دوسرے صفحات پر وضاحت اور توثیق کے لیے۔

دوبارہ نمونہ گیری (resampling) میں استحکام – ایک کلک پر۔ سلہوٹ کی شکل کے نیچے "استحکام کا حساب" کا بٹن ہے (طے شدہ طور پر 100 جوڑے اور نمونے، گیپ شماریے والے سیڈ کے ساتھ)۔ جدول 4 ہر k کے لیے دو bootstrap نمونوں کے حلوں کے درمیان تصحیح شدہ رینڈ اشاریے کی تقسیم دیتا ہے – کم سے کم، ربعیے (quartiles)، وسطانیہ اور زیادہ سے زیادہ – اور شکل 5 اسے باکس پلاٹ میں دکھاتی ہے، ہر جوڑے کے لیے ایک نقطے کے ساتھ۔ جدول 5 پوری تقسیم سے منتخب حل کی طرف جاتا ہے: ہر کلسٹر کے لیے – bootstrap نمونوں میں اس سے سب سے ملتے جلتے کلسٹر سے جیکارڈ (Jaccard) مماثلت کی اوسط، کتنی بار وہ "ٹوٹا" اور کتنی بار "بحال ہوا"، اور Hennig (2023) کے مطابق تشریح۔ k بدلنے سے صرف جدول 5 دوبارہ حساب ہوتا ہے۔ جب استحکام کا حساب ہو چکا ہو تو وہ نتائج کے پیراگراف اور تشریح کے خانے میں بھی شامل ہو جاتا ہے۔ طریقے – اگلے حصے میں۔

مفروضات اور انتباہات

الگورتھم ہمیشہ کلسٹرز لوٹاتا ہے۔ "ایسے کلسٹرنگ طریقے ہمیشہ k گروہوں کے ساتھ آتے ہیں، ڈیٹا چاہے جیسا بھی ہو" (Rousseeuw, 1987, p. 55): k-مینز بالکل یکساں ڈیٹا سے بھی، جس میں کوئی ساخت نہ ہو، تین کلسٹرز لوٹائے گا؛ اور "درجہ وار طریقے ایک درجہ وار ساخت مسلط کرتے ہیں چاہے ایسی ساخت ڈیٹا میں واقعی موجود ہو یا نہ ہو" (Hastie et al., 2009, p. 522)۔ اس لیے گیپ شماریہ k کے انتخاب کے لیے طے شدہ ہے، اور اسی لیے تشریح کا خانہ سلہوٹ کمزور ہونے پر خبردار کرتا ہے۔

استحکام: کیا حل کسی دوسرے نمونے میں دہرایا جائے گا؟ Leisch (2016، ص 637)، Hennig اور ساتھیوں کی ہینڈ بک میں استحکام کی جانچ کے باب میں، ہر تقسیم میں تصادفیت کے دو ماخذوں میں امتیاز کرتے ہیں: نمونہ – آبادی سے ایک تصادفی ذیلی مجموعہ – اور الگورتھم، جس کے بارے میں "معلوم ہے کہ وہ ڈیٹا پر ساخت مسلط کرتا ہے چاہے وہ اچھی طرح منظم نہ ہو" (Dolnicar & Leisch, 2010، بحوالہ ایضاً)؛ اور اس لیے "ایک واحد تقسیم کا استعمال، جو کسی خاص الگورتھم کے ایک ہی حساب سے نکلی ہو، محققین کو ایک قابلِ اعتماد حل کی بجائے ایک تصادفی حل استعمال کرنے کے خطرے میں ڈالتا ہے"۔ دو مرحلہ وار طریقہ الگورتھم کی تصادفیت کو ختم کرتا ہے (کوئی تصادفی آغاز نہیں)، لیکن نمونے کی تصادفیت کو نہیں۔ استحکام خاص طور پر اس وقت اہم ہے جب تقسیم کی بنیاد پر فیصلے کیے جائیں – منڈی کی قطعہ بندی میں یہ قطعات کے جائزے کے چھ معیارات میں سے ایک ہے (Wedel & Kamakura, 1998، بحوالہ ایضاً، ص 639) – اور یہ الگ کلسٹرز کے وجود کے مترادف نہیں: شکل 28.1 میں مربع میں یکساں ڈیٹا پر k-مینز کے چار کلسٹرز بہت مستحکم ہیں، اور دائرے پر بالکل غیر مستحکم (ص 638)۔ جانچ کا طریقہ دوبارہ نمونہ گیری (resampling) ہے: ڈیٹا سے bootstrap نمونے نکالے جاتے ہیں، ہر ایک کو کلسٹر کیا جاتا ہے، اور تقسیموں کا موازنہ کیا جاتا ہے (ص 639-640)؛ باب تین طریقے پیش کرتا ہے – پیش گوئی کی قوت (Tibshirani & Walther, 2005)، جیکارڈ (Jaccard) اشاریے میں ہر کلسٹر کا استحکام (Hennig, 2007)، اور bootstrap نمونوں کے جوڑوں کے درمیان ARI (Dolnicar & Leisch, 2010؛ سب بحوالہ ایضاً، ص 641-643) – اور نتیجہ نکالتا ہے کہ "دوبارہ نمونہ گیری بڑا فرق ڈالتی ہے، جبکہ عین طریقہ اتنا اہم نہیں" (ص 650)۔ k کو استحکام کے مطابق بھی چنا جا سکتا ہے، لیکن احتیاط سے: "اکثر یہ خارج نہیں کیا جا سکتا کہ صحیح تقسیم کے علاوہ کسی اور تقسیم کا استحکام بھی بلند ہو" (ص 639)۔ صفحہ، ایک کلک پر، تیسرا اور دوسرا طریقہ چلاتا ہے۔

پوری تقسیم کا استحکام (جدول 4 اور شکل 5)۔ Dolnicar اور Leisch کے طریقے میں (2010، بحوالہ Leisch, 2016، سیکشن 28.2.3) نمونے کے حجم کے دو bootstrap نمونے نکالے جاتے ہیں، ہر ایک کو کلسٹر کیا جاتا ہے، تمام اصل جواب دہندگان کو دونوں میں سے ہر ایک میں قریب ترین مرکز سے منسوب کیا جاتا ہے، اور دونوں انتسابات کا موازنہ تصحیح شدہ رینڈ اشاریے سے کیا جاتا ہے؛ یہ عمل بہت بار دہرایا جاتا ہے، اور ہر جوڑا ایک آزاد قدر دیتا ہے۔ یہ طریقہ دوسرے دو طریقوں کے "درمیان" ہے: یہ پوری تقسیم کو ناپتا ہے، لیکن بعض کلسٹرز، شاید چھوٹے، کو غیر مستحکم ہونے کی گنجائش دیتا ہے (ص 642)۔ تقسیم کو باکس پلاٹ میں دیکھا جاتا ہے، اور "ایک کے قریب قدریں بلند استحکام کی نشاندہی کرتی ہیں" (ص 643)۔ Leisch کی مصنوعی مثال میں، کلسٹرز کی درست تعداد پر تمام اشاریے 1 کے برابر ہیں، اور غلط تعداد پر تقسیم بائیں جانب کھسک جاتی ہے، اور بعض اوقات دو چوٹیوں والی (bimodal) ہوتی ہے (ص 645)۔ صفحے پر وہی جوڑے k کی تمام قدروں کے لیے استعمال ہوتے ہیں، اس لیے k کی قدروں کا موازنہ انہی نمونوں پر ہوتا ہے۔

ہر کلسٹر کا استحکام (جدول 5)۔ Hennig کے طریقے میں (2007, as cited in Leisch, 2016, Section 28.2.2) منتخب تقسیم کی جانچ کی جاتی ہے، نہ کہ عمومی طور پر k کی (ص 646): ہر bootstrap نمونے میں منتخب ہونے والے جواب دہندگان لیے جاتے ہیں، ہر ایک ایک بار، انہیں کلسٹر کیا جاتا ہے، اور ہر اصل کلسٹر کے لیے نمونے میں جیکارڈ (Jaccard) مماثلت کے مطابق اس سے سب سے ملتا جلتا کلسٹر تلاش کیا جاتا ہے – مشترک جواب دہندگان کی تعداد تقسیم دونوں میں ملا کر جواب دہندگان کی تعداد۔ نمونوں پر مماثلت کی اوسط کلسٹر کے استحکام کا پیمانہ ہے۔ Hennig (2023)، fpc پیکج میں اپنے لکھے ہوئے clusterboot فنکشن کی دستاویزات میں، عملی اصول دیتے ہیں: ایک درست اور مستحکم کلسٹر کی اوسط .75 یا اس سے اوپر ہونی چاہیے؛ .60 اور .75 کے درمیان کلسٹر ڈیٹا میں کسی پیٹرن کی نشاندہی کرتا ہے، لیکن کون سے جواب دہندگان اس سے تعلق رکھتے ہیں – یہ بہت مشکوک ہے؛ .60 سے نیچے – اس پر بھروسہ نہ کریں؛ اور "بہت مستحکم" – .85 اور اس سے اوپر۔ کسی ایک نمونے میں .50 یا اس سے کم قدر کلسٹر کا "ٹوٹنا" سمجھی جاتی ہے، اور اس کا نظریاتی جواز موجود ہے (Hennig, 2008, as cited in García-Escudero et al., 2016, p. 668)۔ اور اسی دستاویز میں: استحکام صداقت (validity) کا واحد معیار نہیں، اور ایک بہت سخت طریقہ بھی ایسے مستحکم کلسٹرز دے سکتا ہے جو درست نہ ہوں۔

مثال کی فائل میں (100 جوڑے، سیڈ 2026) جدول 4 بالکل وہی دکھاتا ہے جو باب بیان کرتا ہے۔ k = 3 کے لیے ARI کا وسطانیہ .95 اور نچلا ربعیہ .94 – مستحکم۔ k = 2 کے لیے وسطانیہ .87، لیکن نچلا ربعیہ .33 – تقسیم دو چوٹیوں والی ہے، یعنی دو کلسٹرز میں دو مختلف تقسیمیں ایک دوسرے سے مقابلہ کر رہی ہیں۔ Leisch ایسی تقسیم کو "کئی مقامی زیادہ سے زیادہ" کی علامت بتاتے ہیں: اصل ڈیٹا میں ایک مقامی بہترین bootstrap نمونے میں عالمی بہترین ہو سکتا ہے (ص 643)۔ k = 4 سے وسطانیہ گرتا ہے: .76، .62، اور k = 8 پر .50 تک۔ جدول 5 میں، تینوں کلسٹرز کی جیکارڈ اوسط .98، .98 اور .96 ہے – بہت مستحکم، اور ان میں سے کوئی بھی کسی نمونے میں نہیں ٹوٹا۔ اور باب سے ایک اور تنبیہ: k کو استحکام کے مطابق چنا جا سکتا ہے، لیکن احتیاط سے – "اکثر یہ خارج نہیں کیا جا سکتا کہ صحیح تقسیم کے علاوہ کسی اور تقسیم کا استحکام بھی بلند ہو" (ص 639)۔ باب کے سیاحتی سروے میں 5 میں تقسیم سب سے مستحکم تھی، لیکن اس کے قطعات کا کوئی واضح پروفائل نہیں تھا، اس لیے اسے منتخب نہیں کیا گیا (ص 648)؛ اور 9 میں تقسیم میں کچھ کلسٹرز دوسروں سے زیادہ مستحکم تھے، اور ان میں سے مستحکم کلسٹرز ہی دلچسپ تھے (ص 649)۔

کلسٹرز کی شکل۔ k-مینز اور وارڈ ملتے جلتے حجم کے "کروی" کلسٹرز کو ترجیح دیتے ہیں: "جب کلسٹرز کے حجم، کثافتیں یا غیر کروی شکلیں مختلف ہوں تو k-مینز اچھی کارکردگی نہیں دکھاتا" (Géron, 2022, Chapter 9, "Limits of k-means")؛ وارڈ "ملتے جلتے حجم کے کروی کلسٹرز تلاش کرنے کی طرف مائل ہے" اور "آؤٹ لائرز کے لیے حساس ہے" (Everitt et al., 2011, p. 78, Table 4.1)، "اکثر اچھا کام کرتا معلوم ہوتا ہے، لیکن جہاں کروی ساخت نہ ہو وہاں بھی اسے مسلط کر سکتا ہے" (ص 84)، اور نقلی مطالعات میں یہ اس وقت کامیاب رہا جب کلسٹرز ملتے جلتے حجم کے تھے اور ناکام جب وہ مختلف حجم کے تھے (ص 83)؛ وارڈ میں "کلسٹرز کے حجم تقریباً یکساں ہوتے ہیں" (Wendler & Gröttrup, 2021, p. 648)، اور k-مینز "ملتے جلتے حجم کے کلسٹرز بنانے کی طرف مائل ہے" (ص 677)۔ ایک چھوٹا اور واقعی الگ گروہ نگلا جا سکتا ہے؛ بیضوی کلسٹرز کے لیے – گاؤسی آمیزہ (غیر نگرانی شدہ لرننگ (unsupervised learning) کا صفحہ، سیکشن 4)۔

آؤٹ لائرز۔ ایک انتہائی جواب دہندہ مرکز کو اپنی طرف کھینچتا ہے (اوسط) اور مربعوں کا مجموعہ بڑھا دیتا ہے؛ واحد ربط میں آؤٹ لائرز الگ تھلگ جواب دہندگان رہتے ہیں، اور مکمل ربط میں وہ کلسٹرز میں جذب ہو جاتے ہیں (Wendler & Gröttrup, 2021, p. 648, Table 7.24)۔ حل میں ایک یا دو جواب دہندگان کا کلسٹر تقریباً ہمیشہ آؤٹ لائر ہوتا ہے، کوئی قسم نہیں – اس کی جانچ آؤٹ لائرز اور مفروضات کے صفحے پر کی جاتی ہے۔

عملی حدود۔ گمشدہ قدریں: کلسٹرنگ کے متغیرات پر فہرست وار حذف (listwise deletion) (صفحہ بتاتا ہے کہ کتنے خارج ہوئے؛ متبادلات کے لیے – Hastie et al., 2009، ص 507، اور گمشدہ قدریں کا صفحہ)۔ حجم: 3,000 جواب دہندگان تک، کیونکہ درجہ وار کلسٹرنگ جواب دہندگان کے تمام جوڑوں کے درمیان فاصلے محفوظ رکھتی ہے؛ گیپ شماریہ ہر حوالہ جاتی مجموعے پر پورا تجزیہ چلاتا ہے، اس لیے 3,000 جواب دہندگان اور 100 نمونوں کے ساتھ اس میں تقریباً ایک منٹ لگتا ہے (نمونوں کی تعداد کم کی جا سکتی ہے)۔ نتیجہ متعین ہے، لیکن جب یکساں جواب دہندگان یا بالکل برابر فاصلے ہوں (لیکرٹ آئٹمز میں عام)، تو برابر اونچائی والے ملاپوں کی ترتیب قطاروں کی ترتیب سے طے ہوتی ہے، جیسے R میں۔ متغیرات کا مقداری ہونا ضروری ہے: عددی کوڈنگ والا زمرہ جاتی (categorical) متغیر (1 = مرد، 2 = عورت) عدد کے طور پر شامل ہوتا ہے اور فاصلے کو بے معنی بنا دیتا ہے – صفحہ خبردار کرتا ہے۔

یہ صفحہ کیا حساب نہیں کرتا۔ دوسرے ربط (واحد، مکمل، اوسط)، دوسرے فاصلے (مینہٹن، کوسائن)، زمرہ جاتی (categorical) اور مخلوط متغیرات (لاگ-امکان کے ساتھ TwoStep)، گاؤسی آمیزے اور BIC، DBSCAN، کلسٹرز کے درمیان معنویت کے ٹیسٹ (عام غلطیاں دیکھیں)، نمونہ گیری کے دوسرے طریقوں میں استحکام (پیش گوئی کی قوت، ذیلی نمونے، شور کا اضافہ)، اور خودکار بیرونی توثیق – کلسٹر کالم ڈاؤن لوڈ کر کے کائی اسکوائر اور تغیرات کا تجزیہ کے صفحات پر جانچا جاتا ہے۔

اور SPSS میں یہ کیسے کریں؟

SPSS Statistics میں دونوں مراحل Analyze › Classify کے تحت دو الگ پروسیجرز ہیں۔ آگے دیے گئے راستے اور اختیارات سافٹ ویئر کے بارے میں عمومی معلومات ہیں، جیسے غیر نگرانی شدہ لرننگ (unsupervised learning) کے صفحے پر، سیکشن 7؛ اس صفحے کے ماخذ SPSS Modeler سے متعلق ہیں نہ کہ Statistics سے۔ (1) معیار بندی (standardization): Analyze › Descriptive Statistics › Descriptives مع Save standardized values as variables – Z… نام کے متغیرات بنتے ہیں۔ (2) وارڈ: Z متغیرات پر Hierarchical Cluster؛ Method بٹن میں – Ward's method مع Squared Euclidean distance؛ Plots بٹن میں – Dendrogram؛ Save بٹن میں – k کے ساتھ Single solution۔ SPSS کے Agglomeration Schedule جدول میں Coefficients کالم R اور صفحے میں درخت کی اونچائی کے پیمانے پر نہیں، لیکن ملاپوں کی ترتیب وہی ہونی چاہیے، سوائے برابر اونچائی والے ملاپوں کے۔ (3) k-مینز: انہی متغیرات پر K-Means Cluster، کلسٹرز کی تعداد کے ساتھ، اور فائل سے ابتدائی مراکز (Read initial)؛ مراکز کا حساب وارڈ کلسٹر کے مطابق Z متغیرات کی اوسطوں کے طور پر کیا جاتا ہے (Data › Aggregate)۔ ابتدائی مراکز کے بغیر SPSS انہیں خود ڈیٹا میں سے چنتا ہے، اور نتیجہ صفحے کے نتیجے سے مختلف ہو سکتا ہے۔

صفحے کا بنایا ہوا سنٹیکس تینوں قدم اٹھاتا ہے: DESCRIPTIVES /SAVE، CLUSTER مع /METHOD WARD /MEASURE SEUCLID اور /SAVE CLUSTER(k)، اور QUICK CLUSTER مع /INITIAL – وارڈ کے مراکز جن کا صفحے نے حساب کیا، اعداد کے طور پر درج – اور /METHOD KMEANS(NOUPDATE) کے ساتھ، یعنی مراکز کی تازہ کاری صرف ڈیٹا پر ہر دور کے آخر میں، جیسے صفحے کے الگورتھم میں۔ سنٹیکس SPSS میں نہیں چلایا گیا۔ PSPP میں، جو SPSS سنٹیکس پڑھنے والا مفت سافٹ ویئر ہے، صرف پہلا حصہ (معیار بندی) جانچا گیا، کیونکہ اس میں CLUSTER کمانڈ نہیں اور /INITIAL نہیں۔ سلہوٹ، گیپ شماریہ اور دوبارہ نمونہ گیری میں استحکام کی جانچیں SPSS Statistics حساب نہیں کرتا – ان کے لیے R یا یہ صفحہ۔

اور R میں یہ کیسے کریں؟

بنیادی R میں: معیار بندی کے لیے scale، وارڈ کے لیے hclust(dist(z), method = "ward.D2") (ward.D2 اقلیدسی فاصلوں پر وارڈ ہے؛ پرانا ward.D فرض کرتا ہے کہ آپ پہلے ہی ان کا مربع لے چکے ہیں)، کاٹنے کے لیے cutree، اور kmeans مع centers = وارڈ کے مراکز اور algorithm = "Lloyd" – صفحے کا الگورتھم (R کا طے شدہ Hartigan-Wong ہے، جو "یقینی بناتا ہے کہ کسی مشاہدے کی ایک گروہ سے دوسرے گروہ میں کوئی واحد منتقلی ایسی نہیں جو ہدف کو کم کرے"؛ Hastie et al., 2009، ص 510۔ مثال کی فائل میں، k = 2 اور 3 کے لیے دونوں الگورتھم ایک ہی حل دیتے ہیں؛ بڑے k کے لیے Hartigan-Wong کبھی کبھی تھوڑا چھوٹا Wk والا حل تلاش کرتا ہے – اور صفحہ تشریح کے خانے میں رپورٹ کرتا ہے کہ کتنے جواب دہندگان کی واحد منتقلی Wk کو کم کر دیتی)۔ یہی طریقہ تیار فنکشن کے طور پر: factoextra پیکج میں hkmeans (Kassambara, 2017, pp. 163-164) – وارڈ (ward.D2) اور پھر kmeans، لیکن R کے طے شدہ اختیارات کے ساتھ (Hartigan-Wong، اور iter.max = 10)؛ مثال کی فائل میں یہ k = 2 اور 3 کے لیے صفحے کے عین مطابق ہے، اور بڑے k کے لیے تھوڑا چھوٹا Wk دیتا ہے۔ cluster پیکج silhouette اور clusGap دیتا ہے؛ d.power = 2، spaceH0 = "original" اور صفحے کے سیڈ کے برابر set.seed کے ساتھ – جدول 1 جیسا ہی گیپ اور وہی معیاری خطا۔ اسکرپٹ کے آخر میں – جداول 4-5 کی استحکام کی دونوں جانچیں: ہر k کے لیے ARI کے ساتھ bootstrap نمونوں کے 100 جوڑے، اور fpc پیکج سے clusterboot، دو مرحلہ وار حل کو کلسٹرنگ کے طریقے کے طور پر لے کر؛ اسی سیڈ کے ساتھ یہ بالکل صفحے والی قدریں دیتی ہیں۔ اسکرپٹ مثال کی ڈیٹا فائل پر جوں کا توں چلایا گیا (قدریں تبصروں میں)۔ R میں اردو کے لیے سائٹ کا اصول: UTF-8 فائل، ہر تبصرے کی سطر اردو لفظ سے شروع ہوتی ہے، اور متغیرات کے نام انگریزی میں (انگریزی فائل)۔

# کلسٹر تجزیہ – پروفیسر اسٹیٹ۔ یہ فائل UTF-8 میں محفوظ ہے؛ ہر تبصرے کی سطر اردو لفظ سے شروع ہوتی ہے
library(readxl)    # ایکسل پڑھنا
library(cluster)   # سلہوٹ اور گیپ شماریہ
library(mclust)    # تصحیح شدہ رینڈ اشاریہ (adjustedRandIndex)
library(fpc)       # ہر کلسٹر کا استحکام (clusterboot)

# لوڈنگ: معیاری سانچہ – قطار = جواب دہندہ، کالم = متغیر؛ شیٹ "Data"
d <- read_excel("C:/Rdata/DATA_cluster_example_eng.xlsx", sheet = "Data")
v <- c("passive_use", "social_comparison", "content_creation", "social_connection", "daily_hours")
x <- as.data.frame(d[complete.cases(d[, v]), v])           # فہرست وار حذف (150 میں سے 148)
z <- scale(x)                                             # معیار بندی: z اسکورز (n − 1 سے تقسیم)

# مرحلہ الف: اقلیدسی فاصلوں پر وارڈ – درخت، اور آخری ملاپوں کی اونچائی
hc <- hclust(dist(z), method = "ward.D2")
rev(tail(hc$height, 5))                                   # اونچائیاں: 22.80 17.44 7.15 6.99 5.71 – تیسرے کے بعد چھلانگ

# مرحلہ ب: ہر k کے لیے – درخت کو کاٹنا، مراکزِ ثقل بطور ابتدائی مراکز، اور k-مینز (Lloyd)
two_stage <- function(z, k, hc = hclust(dist(z), "ward.D2")) {
  w <- cutree(hc, k)
  centers <- apply(z, 2, function(col) tapply(col, w, mean))
  kmeans(z, centers = centers, iter.max = 100, algorithm = "Lloyd")
}
res <- lapply(2:8, function(k) two_stage(z, k, hc))
W   <- c(sum(z^2), sapply(res, function(m) m$tot.withinss))           # W_k، k = 1 سمیت
sil <- sapply(res, function(m) mean(silhouette(m$cluster, dist(z))[, "sil_width"]))
round(cbind(k = 1:8, W = W, R2 = 1 - W / W[1], silhouette = c(NA, sil)), 3)   # جدول: R² .365/.575/.605؛ سلہوٹ .337/.371/.274 (k = 2/3/4)

# گیپ شماریہ: وہی فنکشن، ہر متغیر کی وسعت میں 100 یکساں حوالہ جاتی نمونے؛ set.seed = صفحے کا سیڈ
set.seed(2026)
gap <- clusGap(z, FUNcluster = function(x, k) two_stage(x, k), K.max = 8, B = 100,
               d.power = 2, spaceH0 = "original")
print(gap, method = "Tibs2001SEmax")                      # گیپ: k = 3؛ گیپ 0.404/0.607/0.863/0.814، SE ≈ 0.035

# منتخب حل: حجم، اور اصل اکائیوں میں پروفائل
km <- res[[2]]                                            # k = 3
km$size                                                   # حجم: 59 51 38
round(aggregate(x, by = list(cluster = km$cluster), FUN = mean), 2)
summary(silhouette(km$cluster, dist(z)))$clus.avg.widths  # فی کلسٹر سلہوٹ: .370 .369 .373
d$cluster <- NA; d$cluster[complete.cases(d[, v])] <- km$cluster   # فائل کے لیے کلسٹر کالم

# یہی حل تیار فنکشن میں: factoextra پیکج میں hkmeans (Kassambara, 2017، باب 16) – وارڈ اور پھر k-مینز، لیکن Hartigan-Wong کے ساتھ
# اور iter.max = 100 کے بغیر؛ مثال کی فائل میں k = 2-3 کے لیے یکساں، اور k = 4 اور اس سے اوپر کے لیے W تھوڑا چھوٹا
# factoextra::hkmeans(z, 3)$size                          # 59 51 38

# دوبارہ نمونہ گیری میں استحکام (Leisch, 2016، باب 28) – صفحے کے جداول 4-5 کی طرح، اسی سیڈ کے ساتھ
# الف) پورا حل (Dolnicar & Leisch, 2010، بحوالہ ایضاً): دو bootstrap نمونے، ہر k کے لیے ہر ایک میں کلسٹرنگ، تمام اصل
# جواب دہندگان کو دونوں میں سے ہر ایک میں قریب ترین مرکز سے منسوب کرنا، اور دونوں انتسابات کے درمیان ARI؛ 100 جوڑے – ہر k کے لیے وہی جوڑے
nearest <- function(z, centers) apply(z, 1, function(r) which.min(colSums((t(centers) - r)^2)))
set.seed(2026)
stab <- t(replicate(100, {
  s1 <- z[sample.int(nrow(z), replace = TRUE), ]
  s2 <- z[sample.int(nrow(z), replace = TRUE), ]
  sapply(2:8, function(k) adjustedRandIndex(nearest(z, two_stage(s1, k)$centers), nearest(z, two_stage(s2, k)$centers)))
}))
colnames(stab) <- paste0("k=", 2:8)
round(apply(stab, 2, quantile, c(.25, .5, .75)), 3)       # جدول 4: وسطانیہ k=2 .868 (نچلا ربعیہ .333)، k=3 .945 (.939)، k=4 .760، k=5 .621 اور k=8 پر .503 تک
boxplot(stab, xlab = "k", ylab = "ARI")                   # شکل 5 (نقاط کے بغیر)

# ب) ہر کلسٹر (Hennig, 2007، بحوالہ ایضاً): fpc پیکج سے clusterboot، دو مرحلہ وار حل کو کلسٹرنگ فنکشن کے طور پر لے کر
hkm <- function(data, k) {
  cl <- two_stage(as.matrix(data), k)$cluster
  list(result = cl, nc = k, clusterlist = lapply(1:k, function(i) cl == i), partition = cl, clustermethod = "Ward + k-means")
}
cb <- clusterboot(z, B = 100, bootmethod = "boot", clustermethod = hkm, k = 3, seed = 2026, count = FALSE)
round(cb$bootmean, 3)                                     # جدول 5، جیکارڈ اوسط: .981 .975 .963
cb$bootbrd; cb$bootrecover                                # ٹوٹا (≤ .50) / بحال ہوا (> .75)، 100 میں سے: 0 0 0 / 100 100 100

نتائج کی رپورٹنگ

کلسٹر تجزیے میں محقق کے بہت سے فیصلے ہوتے ہیں، اس لیے رپورٹ ایسی ہونی چاہیے کہ انہیں دہرایا جا سکے: کون سے متغیرات شامل کیے گئے اور کیوں؛ آیا ان کی معیار بندی (standardization) کی گئی؛ فاصلہ اور طریقہ (وارڈ، اور پھر وارڈ کے مراکز سے k-مینز)؛ کلسٹرز کی تعداد کیسے منتخب ہوئی – معیار اور ان کی قدریں، تب بھی جب وہ متفق نہ ہوں؛ ہر کلسٹر کا حجم؛ اوسطوں اور معیاری انحرافات کے ساتھ پروفائل کا جدول؛ سلہوٹ کی اوسط؛ اگر استحکام جانچا گیا – طریقہ، نمونوں کی تعداد اور نتیجہ؛ اور اگر توثیق کی گئی – کلسٹرز ان متغیرات میں کس طرح مختلف ہیں جو ان کی تشکیل میں شامل نہیں تھے۔ APA (2020، سیکشن 6.43) تقاضا کرتا ہے کہ "اتنی معلومات رپورٹ کی جائیں کہ قاری تجزیوں کی تصدیق کر سکے"۔ کلسٹرز کے نام ("غیر فعال صارفین") تشریح ہیں، اور انہیں ان اوسطوں کے ساتھ رپورٹ کیا جاتا ہے جن پر وہ مبنی ہیں۔ صورت کے اصول (APA, 2020, Section 6.36): اوسط اور معیاری انحراف اعشاریہ سے پہلے صفر کے ساتھ، سلہوٹ کی اوسط اور η² اس کے بغیر۔ آؤٹ پٹ میں نتائج کا پیراگراف اسی طرح بنا ہے، اردو اور انگریزی میں۔

عام غلطیاں

مختلف اکائیوں والے متغیرات کی معیار بندی بھول جانا – اور بڑی وسعت والے متغیر کے کلسٹرز حاصل کرنا۔ اور بغیر سوچے معیار بندی کرنا – جب شور والا متغیر امتیاز کرنے والے متغیر جتنا وزن پا لیتا ہے (Hastie et al., 2009, p. 506)۔

درجنوں الگ الگ لیکرٹ آئٹمز کے مطابق کلسٹر کرنا پیمانوں کے اسکورز کی بجائے – الگ آئٹمز پر فاصلہ متنازع ہے (Wendler & Gröttrup, 2021, p. 635)، اور ایک پیمانے کے بہت سے آئٹمز اسے دوہرا وزن دے دیتے ہیں۔

"جو کچھ بھی موجود ہے" شامل کر دینا، بشمول پس منظر کے متغیرات (جنس، عمر) اور نتیجے کے متغیرات – اور پھر "دریافت" کرنا کہ کلسٹرز ان میں مختلف ہیں۔ جو متغیر کلسٹرز کی تشکیل میں شامل رہا وہ ان کی توثیق نہیں کر سکتا۔

k کو اس بنیاد پر چننا کہ کیا اچھا لگتا ہے معیار رپورٹ کیے بغیر، یا سب سے زیادہ سلہوٹ والا k چننا جب وہ .20 ہو – یعنی جب کوئی واضح ساخت نہ ہو۔

کلسٹرنگ کے متغیرات پر کلسٹرز کے درمیان F یا t ٹیسٹ، اور یہ رپورٹ کرنا کہ "کلسٹرز معنی خیز طور پر مختلف ہیں"۔ الگورتھم نے کلسٹرز اس طرح بنائے کہ وہ عین انہی متغیرات میں مختلف ہوں، اس لیے معنویت پہلے سے یقینی ہے اور کوئی معلومات نہیں بڑھاتی۔ صفحہ η² کو توضیحی پیمانے کے طور پر چھاپتا ہے، p کے بغیر۔

ڈینڈروگرام کو "ڈیٹا کی ساخت" سمجھنا۔ "مختلف درجہ وار طریقے، اور ڈیٹا میں چھوٹی تبدیلیاں بھی، کافی مختلف ڈینڈروگرامز کی طرف لے جا سکتی ہیں" (Hastie et al., 2009, p. 521)۔

ایک ہی بار چلانے پر اکتفا کرنا۔ ایک نمونے سے ایک تقسیم "ایک تصادفی حل ہو سکتی ہے، نہ کہ قابلِ اعتماد حل" (Leisch, 2016, p. 637)؛ اقسام رپورٹ کرنے سے پہلے دوبارہ نمونہ گیری (resampling) میں استحکام جانچا جاتا ہے (جداول 4-5)۔

کلسٹر کو ایک حقیقی گروہ سمجھنا – ایسی قسم جو آبادی میں موجود ہے – توثیق کے بغیر: کلسٹر اس نمونے کی وضاحت ہے، انہی متغیرات اور اسی فاصلے کے ساتھ (غیر نگرانی شدہ لرننگ (unsupervised learning) کا صفحہ، سیکشن 6)۔

حوالہ جات

American Psychological Association. (2020). Publication manual of the American Psychological Association (7th ed.). https://doi.org/10.1037/0000165-000

Everitt, B. S., Landau, S., Leese, M., & Stahl, D. (2011). Cluster analysis (5th ed.). Wiley. https://doi.org/10.1002/9780470977811

García-Escudero, L. A., Gordaliza, A., Matrán, C., Mayo-Iscar, A., & Hennig, C. (2016). Robustness and outliers. In C. Hennig, M. Meilă, F. Murtagh, & R. Rocci (Eds.), Handbook of cluster analysis (pp. 653-677). Chapman & Hall/CRC.

Géron, A. (2022). Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow: Concepts, tools, and techniques to build intelligent systems (3rd ed.). O'Reilly Media.

Hastie, T., Tibshirani, R., & Friedman, J. (2009). The elements of statistical learning: Data mining, inference, and prediction (2nd ed.). Springer. https://doi.org/10.1007/978-0-387-84858-7

Hennig, C. (2023). fpc: Flexible procedures for clustering (R package version 2.2.11) [Computer software]. https://CRAN.R-project.org/package=fpc

Kassambara, A. (2017). Practical guide to cluster analysis in R: Unsupervised machine learning (Ed. 1). STHDA.

Leisch, F. (2016). Resampling methods for exploring cluster stability. In C. Hennig, M. Meilă, F. Murtagh, & R. Rocci (Eds.), Handbook of cluster analysis (pp. 637-652). Chapman & Hall/CRC.

Rousseeuw, P. J. (1987). Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. Journal of Computational and Applied Mathematics, 20, 53-65. https://doi.org/10.1016/0377-0427(87)90125-7

Wendler, T., & Gröttrup, S. (2021). Data mining with SPSS Modeler: Theory, exercises and solutions (2nd ed.). Springer. https://doi.org/10.1007/978-3-030-54338-9

Ward (1963)، Kaufman اور Rousseeuw (1990)، Marriott (1982)، Milligan اور Cooper (1988) – بحوالہ Everitt اور دیگر (2011)؛ IBM (2015) اور Mardia اور دیگر (1979) – بحوالہ Wendler اور Gröttrup (2021)؛ Tibshirani اور دیگر (2001) – بحوالہ Hastie اور دیگر (2009) اور Everitt اور دیگر (2011)؛ Dolnicar اور Leisch (2010)، Wedel اور Kamakura (1998)، Tibshirani اور Walther (2005) اور Hennig (2007) – بحوالہ Leisch (2016)؛ Hennig (2008) – بحوالہ García-Escudero اور دیگر (2016)۔ Hennig (2023) – clusterboot کی دستاویزات (پیکج میں مدد کا صفحہ)، جو اصل میں پڑھی گئیں۔ سائٹ کے اصول کے مطابق، حوالہ جات کی فہرست میں صرف وہ ماخذ شامل ہیں جو اصل میں پڑھے گئے۔ Géron (2022) صفحہ نمبروں کے بغیر ڈیجیٹل نسخے میں – حوالہ باب اور سیکشن کے مطابق؛ Everitt اور دیگر (2011)، Hastie اور دیگر (2009)، Wendler اور Gröttrup (2021)، Rousseeuw (1987)، Leisch (2016)، García-Escudero اور دیگر (2016) اور Kassambara (2017) – مطبوعہ صفحے کے مطابق۔ صفحے کا حساب R 4.3.3 (hclust، cutree، kmeans) اور پیکجز cluster (silhouette، clusGap) اور mclust (adjustedRandIndex) کے مقابل تصدیق شدہ ہے، اور استحکام – R کے sample.int اور fpc (clusterboot) کے مقابل۔