Cluster Evaluation এবং Silhouette Score

Machine Learning - সাইকিট-লার্ন (Scikit-Learn) - K-Means Clustering
167

Cluster Evaluation ক্লাস্টারিং অ্যালগরিদমের কার্যকারিতা মূল্যায়ন করার জন্য ব্যবহৃত একটি গুরুত্বপূর্ণ প্রক্রিয়া। ক্লাস্টারিং একটি unsupervised learning পদ্ধতি, যেখানে ডেটা পয়েন্টগুলিকে একই গ্রুপে ভাগ করা হয়, কিন্তু ক্লাস্টারের সঠিকতা যাচাই করার জন্য কোনো লেবেলড ডেটা থাকে না। তাই ক্লাস্টারিংয়ের গুণমান পরিমাপ করার জন্য বিশেষ কিছু মেট্রিক্স এবং মেট্রিক্সের সাহায্য নেয়া হয়। এই প্রক্রিয়ায় Silhouette Score একটি জনপ্রিয় এবং শক্তিশালী মেট্রিক যা ক্লাস্টারিংয়ের কার্যকারিতা এবং ডেটার গ্রুপিং পরিমাপ করতে ব্যবহৃত হয়।


Cluster Evaluation (ক্লাস্টার মূল্যায়ন)

ক্লাস্টারিংয়ের গুণমান নির্ধারণ করার জন্য কয়েকটি পদ্ধতি এবং মেট্রিক্স ব্যবহৃত হয়, যার মধ্যে কিছু মূল মেট্রিক্স হলো:

  1. Inertia (Within-cluster Sum of Squared Errors, SSE):
    • এটি ক্লাস্টারের মধ্যে ডেটা পয়েন্টগুলির পরিমাণের একটি পরিমাপ। কম Inertia মানে ক্লাস্টারের মধ্যে পয়েন্টগুলি কাছাকাছি অবস্থিত।
    • ফর্মুলা: Inertia=i=1nj=1kxicj2Inertia = \sum_{i=1}^{n} \sum_{j=1}^{k} ||x_i - c_j||^2 যেখানে, xix_i হচ্ছে ডেটা পয়েন্ট এবং cjc_j হচ্ছে ক্লাস্টার সেন্ট্রয়েড।
  2. Silhouette Score (সিলুয়েট স্কোর):
    • এটি ক্লাস্টারিংয়ের গুণমানের মূল্যায়ন করতে ব্যবহৃত একটি গুরুত্বপূর্ণ মেট্রিক। এটি ক্লাস্টারের মধ্যে পয়েন্টগুলির সম্পর্ক এবং ক্লাস্টারের বাইরে পয়েন্টগুলির সম্পর্কের উপর ভিত্তি করে কাজ করে। Silhouette Score স্কেলিং করা হয় -1 থেকে 1 পর্যন্ত, যেখানে 1 হল সেরা মান (অর্থাৎ, পয়েন্টগুলো তাদের ক্লাস্টারের মধ্যেই ভালোভাবে ফিট হয়েছে), এবং -1 হল খারাপ মান (অর্থাৎ, পয়েন্টগুলো ভুল ক্লাস্টারে আছে)।
    • ফর্মুলা: s(i)=b(i)a(i)max(a(i),b(i))s(i) = \frac{b(i) - a(i)}{\max(a(i), b(i))} যেখানে:
      • a(i)a(i) হল পয়েন্ট ii এর নিজ ক্লাস্টারের মধ্যে গড় দূরত্ব।
      • b(i)b(i) হল পয়েন্ট ii এর সবচেয়ে নিকটবর্তী ক্লাস্টারের গড় দূরত্ব।
  3. Davies-Bouldin Index (DBI):
    • এটি ক্লাস্টারিংয়ের মান পরিমাপ করে। একটি ভালো ক্লাস্টারের জন্য, DBI এর মান কম হওয়া উচিত। এটি প্রতি ক্লাস্টারের মধ্যে গড় স্ক্যাটার এবং অন্য ক্লাস্টারের সাথে সম্পর্কের মধ্যে ভারসাম্য পরিমাপ করে।
  4. Dunn Index:
    • এটি দুটি ক্লাস্টারের মধ্যে সর্বোচ্চ দূরত্ব এবং ক্লাস্টারের মধ্যে সর্বনিম্ন দূরত্বের অনুপাত হিসাব করে। একটি উচ্চ Dunn Index মানে ভালো ক্লাস্টারিং।

Silhouette Score (সিলুয়েট স্কোর)

Silhouette Score হল একটি মূল্যায়ন মেট্রিক যা কেবল ক্লাস্টারগুলির মধ্যে পয়েন্টগুলির কিভাবে ভালোভাবে গ্রুপ করা হয়েছে তা নয়, বরং সেগুলির একে অপর থেকে কতটা আলাদা তা বোঝায়। এটি ক্লাস্টারিংয়ের কার্যকারিতা মূল্যায়ন করতে ব্যবহৃত হয় এবং এটি K-means বা অন্য ক্লাস্টারিং অ্যালগরিদমের জন্য খুবই জনপ্রিয়।

Silhouette Score এর মান:

  • 1: পয়েন্টটি তার ক্লাস্টারে ভালভাবে ফিট হয়েছে এবং অপর ক্লাস্টারের থেকে ভালভাবে আলাদা।
  • 0: পয়েন্টটি দুইটি ক্লাস্টারের মধ্যে সীমান্তে অবস্থিত।
  • -1: পয়েন্টটি ভুল ক্লাস্টারে ফিট হয়েছে, অর্থাৎ এটি অন্য ক্লাস্টারের কাছে আরও কাছাকাছি।

Silhouette Score এর গণনা:

Silhouette Score একটি পয়েন্ট ii এর জন্য হিসাব করা হয়, যেখানে a(i)a(i) হল সেই পয়েন্টটির নিজ ক্লাস্টারের ভিতরে গড় দূরত্ব এবং b(i)b(i) হল অন্য ক্লাস্টারের সাথে গড় দূরত্ব।

  • a(i)a(i) (অর্থাৎ, নিজের ক্লাস্টারের মধ্যে দূরত্ব): এটি পয়েন্ট ii থেকে ক্লাস্টারের অন্যান্য পয়েন্টগুলোর গড় দূরত্ব।
  • b(i)b(i) (অর্থাৎ, অন্য ক্লাস্টারের সাথে দূরত্ব): এটি পয়েন্ট ii থেকে তার নিকটবর্তী ক্লাস্টারের গড় দূরত্ব।

Silhouette Score উদাহরণ:

ধরা যাক, আমরা K-means clustering ব্যবহার করছি এবং আমাদের দুটি ক্লাস্টার রয়েছে। প্রতিটি পয়েন্টের জন্য আমরা a(i)a(i) এবং b(i)b(i) গণনা করি এবং তারপর সেগুলি নিয়ে সিলুয়েট স্কোর নির্ধারণ করি।

from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
import numpy as np

# উদাহরণ ডেটা তৈরি করা
X = np.array([[1, 2], [1, 3], [2, 3], [6, 5], [6, 6], [7, 7]])

# KMeans মডেল তৈরি করা (2 ক্লাস্টার)
kmeans = KMeans(n_clusters=2, random_state=42)
kmeans.fit(X)

# Silhouette Score গণনা করা
score = silhouette_score(X, kmeans.labels_)
print(f'Silhouette Score: {score}')

সিলুয়েট স্কোরে কি লক্ষ্য করবেন?

  • একটি উচ্চ সিলুয়েট স্কোর (প্রায় 1) মডেলকে বলে যে ক্লাস্টারগুলি খুব ভালোভাবে সংযুক্ত এবং একে অপর থেকে আলাদা।
  • নিম্ন সিলুয়েট স্কোর (প্রায় -1) এর মানে হলো পয়েন্টগুলো ভুল ক্লাস্টারে অবস্থান করছে।
  • শূন্য সিলুয়েট স্কোর এর মানে হলো পয়েন্টগুলি ক্লাস্টারের সীমান্তে অবস্থিত।

সারাংশ

  • Cluster Evaluation হল ক্লাস্টারিং অ্যালগরিদমের কার্যকারিতা মূল্যায়ন করার প্রক্রিয়া, যেখানে ক্লাস্টারগুলির মধ্যে পয়েন্টগুলি কিভাবে সঠিকভাবে সাজানো হয়েছে তা পরিমাপ করা হয়।
  • Silhouette Score হল একটি জনপ্রিয় মেট্রিক যা ক্লাস্টারের গুণমান পরিমাপ করে। এটি ক্লাস্টারগুলির মধ্যে সম্পর্ক এবং একে অপর থেকে তাদের পৃথকতা বোঝায় এবং এর স্কোর -1 থেকে 1 পর্যন্ত হতে পারে, যেখানে 1 একটি আদর্শ ক্লাস্টারিং ফলাফল।
  • এই মেট্রিক্সগুলি ব্যবহার করে আপনি ক্লাস্টারিং মডেলের কার্যকারিতা এবং তার সঠিকতা পরিমাপ করতে পারবেন।
Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...