ক্লাস্টারিং ফলাফলের তুলনা বোঝা


13

আমি গ্রুপগুলিতে ডেটা শ্রেণিবদ্ধকরণ নিয়ে পরীক্ষা করছি। আমি এই বিষয়টিতে বেশ নতুন, এবং কিছু বিশ্লেষণের ফলাফল বুঝতে চেষ্টা করছি।

কুইক-আর-এর উদাহরণ ব্যবহার করে কয়েকটি Rপ্যাকেজ প্রস্তাবিত। আমি এই দুটি প্যাকেজ ব্যবহার করার চেষ্টা করেছি ( ফাংশনটি fpcব্যবহার করে kmeansএবং mclust)। এই বিশ্লেষণের একটি দিক যা আমি বুঝতে পারি না তা হল ফলাফলগুলির তুলনা comparison

# comparing 2 cluster solutions
library(fpc)
cluster.stats(d, fit1$cluster, fit2$cluster)

আমি fpc ম্যানুয়ালটির প্রাসঙ্গিক অংশগুলি পড়েছি এবং আমার কী লক্ষ্য করা উচিত সে সম্পর্কে এখনও স্পষ্ট নয়। উদাহরণস্বরূপ, এটি দুটি পৃথক পৃথক ক্লাস্টারিং পদ্ধতির তুলনা করার আউটপুট:

$n
[1] 521

$cluster.number
[1] 4

$cluster.size
[1] 250 119  78  74

$diameter
[1]  5.278162  9.773658 16.460074  7.328020

$average.distance
[1] 1.632656 2.106422 3.461598 2.622574

$median.distance
[1] 1.562625 1.788113 2.763217 2.463826

$separation
[1] 0.2797048 0.3754188 0.2797048 0.3557264

$average.toother
[1] 3.442575 3.929158 4.068230 4.425910

$separation.matrix
          [,1]      [,2]      [,3]      [,4]
[1,] 0.0000000 0.3754188 0.2797048 0.3557264
[2,] 0.3754188 0.0000000 0.6299734 2.9020383
[3,] 0.2797048 0.6299734 0.0000000 0.6803704
[4,] 0.3557264 2.9020383 0.6803704 0.0000000

$average.between
[1] 3.865142

$average.within
[1] 1.894740

$n.between
[1] 91610

$n.within
[1] 43850

$within.cluster.ss
[1] 1785.935

$clus.avg.silwidths
         1          2          3          4 
0.42072895 0.31672350 0.01810699 0.23728253 

$avg.silwidth
[1] 0.3106403

$g2
NULL

$g3
NULL

$pearsongamma
[1] 0.4869491

$dunn
[1] 0.01699292

$entropy
[1] 1.251134

$wb.ratio
[1] 0.4902123

$ch
[1] 178.9074

$corrected.rand
[1] 0.2046704

$vi
[1] 1.56189

এখানে আমার প্রাথমিক প্রশ্নটি এই ক্লাস্টারের তুলনার ফলাফলগুলি কীভাবে ব্যাখ্যা করতে হবে তা আরও ভালভাবে বোঝা।


পূর্বে, আমি ডেটা স্কেলিংয়ের প্রভাব এবং একটি দূরত্বের ম্যাট্রিক্স গণনা করার বিষয়ে আরও জিজ্ঞাসা করেছি। তবে এর স্পষ্টভাবে মেরিয়ানা সফফার দ্বারা জবাব দেওয়া হয়েছিল, এবং আমি আমার প্রশ্নটির উপর জোর দিয়েই পুনর্গঠিত করছি যে আমি আমার আউটপুটটির ব্যাখ্যাটির প্রতি আগ্রহী যা দুটি ভিন্ন ভিন্ন ক্লাস্টারিং অ্যালগরিদমের তুলনা।

প্রশ্নের পূর্ববর্তী অংশ : আমি যদি কোনও ধরণের ক্লাস্টারিং করছি, আমার কি সবসময় ডেটা স্কেল করা উচিত? উদাহরণস্বরূপ, আমি dist()আমার স্কেলড ডেটাসেটে cluster.stats()ফাংশনটি ইনপুট হিসাবে ব্যবহার করছি , তবে কী চলছে তা আমি পুরোপুরি বুঝতে পারি না। আমি dist() এখানে পড়ি এবং এতে বলা হয়েছে :

এই ফাংশনটি ডেটা ম্যাট্রিক্সের সারিগুলির মধ্যে দূরত্বগুলি গণনা করতে নির্দিষ্ট দূরত্ব পরিমাপটি ব্যবহার করে গণনা করে দূরত্বের ম্যাট্রিক্স প্রদান করে।


আপনি কি আরও ব্যাখ্যা খুঁজছেন বা আপনি @ মারিয়ানার প্রতিক্রিয়াতে অসন্তুষ্ট? আমার ধারণা এটি আপনার প্রথম প্রশ্নটি (2 § concerns) সম্পর্কিত concerns যদি এটি হয় তবে আপনার নিজের প্রশ্নটি আপডেট করা উচিত যাতে লোকেরা বুঝতে পারে আপনি কেন এই প্রশ্নে অনুগ্রহ নির্ধারণ করছেন।
chl

@ সিএইচএল এটি পরিষ্কার করার জন্য আমি এটি আপডেট করব। আমি কেবল ক্লাস্টারিং তুলনা ব্যাখ্যা করার জন্য কিছু গাইডেন্স খুঁজছি, আউটপুটটির অর্থ কী তা বুঝতে পারছি না। @ মারিয়ানার প্রতিক্রিয়া এই পদ্ধতির সাথে যুক্ত কয়েকটি শর্ত ব্যাখ্যা করতে খুব সহায়ক হয়েছিল।
সেলেনিয়াস

উত্তর:


13

প্রথমে আপনাকে বলি যে আমি এখানে সমস্ত পদক্ষেপের সঠিক ব্যাখ্যা দিতে যাচ্ছি না, তবে ক্লাস্টারিং পদ্ধতিগুলি কীভাবে ভাল তা তুলনা করা যায় সে সম্পর্কে আমি আপনাকে একটি ধারণা দিতে যাচ্ছি (আসুন ধরে নেওয়া যাক আমরা একই সংখ্যার সাথে 2 টি ক্লাস্টারিংয়ের পদ্ধতি তুলনা করছি গুচ্ছের)।

  1. উদাহরণস্বরূপ, ক্লাস্টারের ব্যাস বৃহত্তর, সবচেয়ে খারাপ ক্লাস্টারিং, কারণ ক্লাস্টারের সাথে সম্পর্কিত পয়েন্টগুলি আরও ছড়িয়ে ছিটিয়ে রয়েছে।
  2. প্রতিটি ক্লাস্টারিংয়ের গড় দূরত্ব যত বেশি, ক্লাস্টারিংয়ের সবচেয়ে খারাপ পদ্ধতি। (ধরে নেওয়া যাক যে ক্লাস্টারের প্রতিটি বিন্দু থেকে গুচ্ছের কেন্দ্রস্থলের দূরত্বের গড় গড় দূরত্ব

এটি দুটি মেট্রিক যা সবচেয়ে বেশি ব্যবহৃত হয়। তারা কীসের জন্য দাঁড়িয়েছে তা বোঝার জন্য এই লিঙ্কগুলি দেখুন:

  • আন্ত-ক্লাস্টার দূরত্ব (উচ্চতর উচ্চতর, বিভিন্ন ক্লাস্টার সেন্ট্রয়েডের মধ্যে দূরত্বের সংমিশ্রণ)
  • ইন্ট্রা-ক্লাস্টার দূরত্ব (ক্লাস্টারের সদস্যদের মধ্যে ক্লাস্টারের কেন্দ্রস্থলের দূরত্বের সংমিশ্রণটি যত কম কম থাকে)

ভাল মেট্রিক্স উপরে বোঝার, চেক এই

তারপরে আপনার গ্রন্থাগারের ম্যানুয়ালটি পড়তে হবে এবং আপনি যে ব্যবস্থাগুলি এর প্রতিটিটির প্রতিনিধিত্ব করছেন তা বোঝার জন্য আপনি যে ফাংশনগুলি ব্যবহার করছেন তা পড়তে হবে, বা যদি এগুলি অন্তর্ভুক্ত না করা হয় তবে অন্তর্ভুক্তটির অর্থ সন্ধান করার চেষ্টা করুন। তবে, আমি এখানে বর্ণিত বিষয়গুলির সাথে আমি বিরক্ত করব না এবং তার সাথে থাকব না।

আপনার করা প্রশ্নগুলি এগিয়ে চলুন:

  1. স্কেলিং ডেটা সম্পর্কিত: হ্যাঁ আপনার সর্বদা ক্লাস্টারিংয়ের জন্য ডেটা স্কেল করা উচিত, অন্যথায় বিভিন্ন মাত্রার (ভেরিয়েবল) বিভিন্ন স্কেলগুলিতে ভেরিয়েবলের মানগুলি যত বেশি হবে তার তাত্ক্ষণিকভাবে আরও প্রভাবশালী, আরও প্রভাবশালী ক্লাস্টারিং কীভাবে করা হয় তাতে থাকবে, যদিও তাদের সবারই একই প্রভাব থাকতে হবে (যদি না কোনও নির্দিষ্ট অদ্ভুত কারণে আপনি সেভাবে না চান)।
  2. দূরত্ব ফাংশনগুলি সমস্ত দুরত্বকে এক বিন্দু (উদাহরণ) থেকে অন্য বিন্দুতে গণনা করে। সর্বাধিক সাধারণ দূরত্বের পরিমাপ ইউক্লিডিয়ান, সুতরাং উদাহরণস্বরূপ, ধরুন আপনি ধরুন আপনি উদাহরণটি 1 থেকে উদাহরণ 2 থেকে দূরত্বটি পরিমাপ করতে চান (আসুন ধরে নেওয়া যাক সরলতার জন্য আপনার কাছে কেবল 2 টি উদাহরণ রয়েছে)। এছাড়াও এর প্রতিটি উদাহরণস্বরূপ 3 মান আছে অনুমান করা যাক (x1, x2, x3), তাই I1=0.3, 0.2, 0.5এবং I2=0.3, 0.3, 0.4তাই i1 ও I2 থেকে ইউক্লিডিয় দূরত্ব হবে sqrt((0.3-0.2)^2+(0.2-0.3)^2+(0.5-0.4)^2)=0.17, অত দূরত্ব ম্যাট্রিক্স স্থাপিত হবে:

        i1    i2
    i1  0     0.17
    i2  0.17  0
    

লক্ষ্য করুন যে দূরত্বের ম্যাট্রিক্স সর্বদা প্রতিসম হয়।

ইউক্লিডিয়ান দূরত্বের সূত্রটি কেবলমাত্র বিদ্যমান নয়। এই ম্যাট্রিক্স গণনা করতে ব্যবহার করা যেতে পারে এমন আরও অনেক দূরত্ব রয়েছে। উদাহরণ হিসাবে উইকিপিডিয়া ম্যানহাটেইন দূরত্ব এবং এটি কীভাবে গণনা করা যায় তা পরীক্ষা করে দেখুন। ইউক্লিডিয়ান দূরত্বের উইকিপিডিয়া পৃষ্ঠার শেষে (যেখানে আপনি এর সূত্রটিও পরীক্ষা করতে পারেন) আপনি অন্যান্য দূরত্বের উপস্থিতি পরীক্ষা করতে পারেন।


আপনার খুব বিস্তৃত উত্তরের জন্য আপনাকে ধন্যবাদ - এটি খুব সহায়ক।
সেলেনিয়াস

আমি সত্যিই আনন্দিত এটি আপনার জন্য সহায়ক ছিল।
মারিয়ানা সফর

@ মারিয়ানাসফার স্ট্যানফোর্ড পৃষ্ঠায় লিঙ্কটি কাজ করে না। দয়া করে এটি আপডেট করুন বা এ্যাক্সেসযোগ্য করুন। ধন্যবাদ
হারমান টুথরট

7

আমি মনে করি ক্লাস্টারিংয়ের জন্য সর্বোত্তম মানের পরিমাপ হ'ল ক্লাস্টার অনুমান, যা লেবারযুক্ত এবং লেবেলযুক্ত ডেটা সহ শিক্ষার মাধ্যমে শিখিয়ে দেওয়া হয়েছে :

উদাহরণস্বরূপ, ধরুন এক্স = আরডি এবং "ক্লাস্টার অনুমান" এর বৈধতা, যেমন দুটি পয়েন্ট x, x এর একই লেবেল টি থাকা উচিত যদি এক্সের মধ্যে একটি পথ থাকে যা কেবলমাত্র অপেক্ষাকৃত উচ্চ পি (x) অঞ্চলে যায় )।

হ্যাঁ, এটি সেন্ট্রয়েড এবং কেন্দ্রগুলির পুরো ধারণাটি নিয়ে আসে। সর্বোপরি, এটি বরং স্বেচ্ছাসেবী ধারণাগুলি যদি আপনি এই সত্যটি সম্পর্কে চিন্তা করেন যে আপনার ডেটা যে স্থানটিতে আপনি বাস্তবে কাজ করছেন তার কোনও অ-লিনিয়ার সাবমানিফোল্ডের মধ্যে থাকতে পারে within

আপনি সহজেই সিন্থেটিক ডেটাसेट তৈরি করতে পারেন যেখানে মিশ্রণের মডেলগুলি ভেঙে যায়। এই এক উদাহরণ: মেঘের মধ্যে একটি বৃত্ত

দীর্ঘ গল্প সংক্ষিপ্ত: আমি একটি ক্লিস্টিং অ্যালগরিদমের গুণমানকে মিনিম্যাক্স উপায়ে পরিমাপ করব। সেরা ক্লাস্টারিং অ্যালগরিদম হ'ল এটিই এটি একই ক্লাস্টারের নিকটতম প্রতিবেশীর কাছে পয়েন্টের সর্বাধিক দূরত্বকে হ্রাস করে যখন এটি একটি ভিন্ন ক্লাস্টার থেকে নিকটতম প্রতিবেশীর কাছে বিন্দুর ন্যূনতম দূরত্বকে সর্বাধিক করে তোলে।

আপনি একটি ননপ্যারমেট্রিক ইনফরমেশন থিওরিটিক ক্লাস্টারিং অ্যালগরিদমে আগ্রহীও হতে পারেন ।


আমি কীভাবে মিনিম্যাক্স পদ্ধতির সাহায্যে একটি ক্লাস্টার ফিট পরীক্ষা করতে পারি? আমার ক্লাস্টারিংয়ের জ্ঞান স্তরটি খুব প্রাথমিক, তাই এই মুহূর্তে আমি কীভাবে দুটি পৃথক ক্লাস্টারিং পদ্ধতির তুলনা করব তা বোঝার চেষ্টা করছি।
সেলেনিয়াস

আপনি কি সংযুক্ত চিত্রটির জন্য আর কোডটি ভাগ করে নিতে পারেন?
আন্দ্রেজ

@ আন্দ্রেজ আমার অনুমান একটি গাউসিয়ান মেঘ ( x<-rnorm(N);rnorm(N)->y) কে r দ্বারা 3 ভাগে বিভক্ত করা হয়েছে (যার একটি অপসারণ করে)।

আমি এমন কোনও ব্যবহারিক অ্যালগরিদম জানি না যা সেই মানের পরিমাপ অনুযায়ী ফিট করে। আপনি সম্ভবত এখনও কে-মিনস এবং অন্যান্য ব্যবহার করতে চান। তবে উপরের পরিমাপটি যদি ভেঙে যায় তবে আপনি জানেন যে আপনি যে ডেটাটি দেখছেন তা সেই অ্যালগরিদমের জন্য উপযুক্ত নয় (এখনও!)।
বায়ারজ

@ আন্দ্রেজ আমি আর ব্যবহার করি না (পরিসংখ্যানের তুলনায় এমএল থেকে আসছেন :) তবে এমবিকিউ যা বলেছে তা ঠিক মনে হচ্ছে।
বায়ারজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.