র‍্যান্ড সূচক গণনা


17

আমি একটি ক্লাস্টার অ্যালগরিদমের র‌্যান্ড সূচকটি কীভাবে গণনা করব তা নির্ধারণ করার চেষ্টা করছি, তবে আমি কীভাবে সত্য এবং মিথ্যা নেতিবাচক গণনা করতে পারি সেই স্থানে আটকে আছি।

এই মুহুর্তে আমি তথ্য পুনরুদ্ধারের একটি পরিচিতি (ম্যানিং, রাঘাভান এবং স্কটিজ, ২০০৯) বইয়ের উদাহরণটি ব্যবহার করছি। 359 পৃষ্ঠায় তারা কীভাবে র‌্যান্ড সূচক গণনা করতে পারে সে সম্পর্কে কথা বলছেন। এই উদাহরণের জন্য তারা তিনটি ক্লাস্টার ব্যবহার করে এবং ক্লাস্টারগুলিতে নিম্নলিখিত অবজেক্ট থাকে।

  1. aaaaab
  2. abbbbc
  3. aaccc

আমি অবজেক্টটি প্রতিস্থাপন করি (অক্ষরের মূল লক্ষণগুলি, তবে ধারণা এবং গণনা একই থাকে)। তারা কী সম্পর্কে কথা বলছে তা দেখার জন্য আমি বই থেকে সঠিক শব্দটি দেব:

আমরা প্রথমে টিপি + এফপি গণনা করি। তিনটি ক্লাস্টারে যথাক্রমে,,,, এবং points পয়েন্ট রয়েছে, সুতরাং একই ক্লাস্টারে থাকা মোট "পজিটিভ" বা ডকুমেন্টের জোড়া:

টিপি + এফপি = (62) + (62) + (52) = 15 + 15+ 10 = 40 বেছে নিন

এর মধ্যে ক্লাস্টার 1-এ জোড়া, ক্লাস্টার 2-এ বি জোড়, 3 ক্লাস্টারে সি জোড় এবং 3 টি ক্লাস্টারের জুটি সত্য ধনাত্মক:

টিপি = (52) + (42) + (32) + (22) = 10 + 6 + 3 + 1 = 20

সুতরাং, এফপি = 40 - 20 = 20।

এখানে অবধি গণনাগুলি পরিষ্কার, এবং আমি অন্য উদাহরণগুলি গ্রহণ করলে আমি একই ফলাফল পেতে পারি, তবে যখন আমি মিথ্যা নেতিবাচক এবং সত্য নেতিবাচক ম্যানিং এট আল গণনা করতে চাই। নিম্নলিখিত বিবরণ:

নিম্নলিখিত কন্টিনজেন্সি টেবিলের ফলে এফএন এবং টিএন একইভাবে গণনা করা হয়:

কন্টিনজেন্সি টেবিলটি নীচে দেখায়:

+--------+--------+
| TP: 20 | FN: 24 |
+--------+--------+
| FP: 20 | TN: 72 |
+--------+--------+

বাক্য: "এফএন এবং টিএন একইভাবে গণনা করা হয়" আমার কাছে পরিষ্কার নয় এবং টিএন এবং এফএন গণনা করার জন্য আমার কোন সংখ্যাগুলি দরকার তা আমি বুঝতে পারি না। আমি নিম্নলিখিতগুলি করে টেবিলের ডান দিকটি গণনা করতে পারি:

টিপি + এফপি + এফএন + টিএন = = = 136(n2)(172)

সূত্র: http://en.wikedia.org/wiki/Rand_index

সুতরাং, এফএন + টিএন = 136 - টিপি + এফপি = 136 - 40 = 96, তবে কীভাবে ভেরিয়েবলগুলি পৃথকভাবে গণনা করা যায় তা নির্ধারণে আমার সত্যিই সহায়তা হয় না। বিশেষত যখন লেখকরা বলেছেন: "এফএন এবং টিএন একইভাবে গণনা করা হয়"। আমি কিভাবে দেখতে পাচ্ছি না। এছাড়াও আমি যখন অন্য উদাহরণগুলিতে দেখি তারা প্রত্যেকে জোড়া দেখে কন্টিনজেন্সি টেবিলের প্রতিটি কক্ষ গণনা করে।

উদাহরণস্বরূপ: http : //www.otlet-inst متبادل. org/ wikics / Clustering_Problems.html#toc-Subsection-4.1

আমার প্রথম প্রশ্ন, ম্যানিং এট আল (২০০৯) এর উপর ভিত্তি করে, আপনি যদি কেবলমাত্র টিপি এবং এনপি জানেন তবে কি টিএন এবং এফএন গণনা করা সম্ভব? এবং যদি তা হয় তবে প্রদত্ত উদাহরণের ভিত্তিতে অনুরূপ গণনা কেমন দেখাচ্ছে?

উত্তর:


9

আমি একই সম্পর্কে চিন্তাভাবনা করছিলাম, এবং আমি এটি এর মতো সমাধান করেছি। মনে করুন আপনার একটি সহ-ঘটনা ম্যাট্রিক্স / কন্টিনজেন্সি টেবিল রয়েছে যেখানে সারিগুলি গ্রাউন্ড ট্রুথ ক্লাস্টার এবং কলামগুলি ক্লাস্টারিং অ্যালগরিদমের দ্বারা পাওয়া ক্লাস্টার।

সুতরাং, বইয়ের উদাহরণের জন্য, এটি দেখতে এমন হবে:

  | 1 | 2 | 3
--+---+---+---
x | 5 | 1 | 2
--+---+---+---
o | 1 | 4 | 0
--+---+---+---
◊ | 0 | 1 | 3

এখন, আপনি খুব সহজেই প্রতি কলামে যোগফল নিয়ে টিপি + এফপি গণনা করতে পারেন এবং এই সমস্ত মানগুলির চেয়ে '2' বেছে নিন। সুতরাং যোগফলগুলি [,,,, ৫] এবং আপনি '6 বেছে 2' + '6 বেছে 2' + '5 পছন্দ 2' করেন do

এখন, প্রকৃতপক্ষে, একইভাবে, আপনি সারিগুলির উপরের সমষ্টি নিয়ে টিপি + এফএন পেতে পারেন (সুতরাং, এটি উপরের উদাহরণে [8, 5, 4]), সমস্ত মানগুলির চেয়ে '2 বেছে' প্রয়োগ করুন, এবং গ্রহণ করুন যে যোগফল।

টিপির নিজেরাই ম্যাট্রিক্সের প্রতিটি কক্ষে '2 বেছে নিন' প্রয়োগ করে এবং সমস্ত কিছুর যোগফল ধরে নিয়ে গণনা করা যেতে পারে (ধরে নেওয়া যায় যে '1 পছন্দ 2' 0 হয়)।

আসলে, এখানে কিছু পাইথন কোড যা সঠিকভাবে এটি করে:

import numpy as np
from scipy.misc import comb

# There is a comb function for Python which does 'n choose k'                                                                                            
# only you can't apply it to an array right away                                                                                                         
# So here we vectorize it...                                                                                                                             
def myComb(a,b):
  return comb(a,b,exact=True)

vComb = np.vectorize(myComb)

def get_tp_fp_tn_fn(cooccurrence_matrix):
  tp_plus_fp = vComb(cooccurrence_matrix.sum(0, dtype=int),2).sum()
  tp_plus_fn = vComb(cooccurrence_matrix.sum(1, dtype=int),2).sum()
  tp = vComb(cooccurrence_matrix.astype(int), 2).sum()
  fp = tp_plus_fp - tp
  fn = tp_plus_fn - tp
  tn = comb(cooccurrence_matrix.sum(), 2) - tp - fp - fn

  return [tp, fp, tn, fn]

if __name__ == "__main__":
  # The co-occurrence matrix from example from                                                                                                           
  # An Introduction into Information Retrieval (Manning, Raghavan & Schutze, 2009)                                                                       
  # also available on:                                                                                                                                   
  # http://nlp.stanford.edu/IR-book/html/htmledition/evaluation-of-clustering-1.html                                                                     
  #                                                                                                                                                      
  cooccurrence_matrix = np.array([[ 5,  1,  2], [ 1,  4,  0], [ 0,  1,  3]])

  # Get the stats                                                                                                                                        
  tp, fp, tn, fn = get_tp_fp_tn_fn(cooccurrence_matrix)

  print "TP: %d, FP: %d, TN: %d, FN: %d" % (tp, fp, tn, fn)

  # Print the measures:                                                                                                                                  
  print "Rand index: %f" % (float(tp + tn) / (tp + fp + fn + tn))

  precision = float(tp) / (tp + fp)
  recall = float(tp) / (tp + fn)

  print "Precision : %f" % precision
  print "Recall    : %f" % recall
  print "F1        : %f" % ((2.0 * precision * recall) / (precision + recall))

আমি যদি এটি চালান তবে আমি পাই:

$ python testCode.py
TP: 20, FP: 20, TN: 72, FN: 24
Rand index: 0.676471
Precision : 0.500000
Recall    : 0.454545
F1        : 0.476190

আমি আসলে এটির চেয়ে অন্য কোনও উদাহরণ চেক করিনি, তাই আমি আশা করি আমি এটি সঠিকভাবেই করেছি .... ;-)


উত্তরের জন্য আপনি কিন্তু ব্যাখ্যা করতে চান না। আপনি উভয় সময় কলাম ভিত্তিক বলে। আপনি কি নিজের উত্তর আপডেট করতে এবং এফএন + টিএন যেমন আপনার এফপি + টিপি করেছেন তা অন্তর্ভুক্ত করতে পারেন
মনস্টার এমএমআরপিজি

আমি বুঝতে পারিনি টিপির জন্য কেন '2 বেছে নিন 2' বিবেচনা করা হয়। এর অর্থ কি এই নয় যে এক্সকে ভুলভাবে as হিসাবে শ্রেণিবদ্ধ করা হয়েছে?
vcosk

আপনি কি টিপি + এফএন এর জন্য "সারিগুলির চেয়ে বেশি পরিমাণ" বলতে চান না?
জাইথন

আমি দুঃখিত, হ্যাঁ আপনি ঠিক বলেছেন। উত্তরে এটি স্থির করুন।
টম

6

এই থ্রেডে অন্য উত্তরগুলি অধ্যয়ন করার পরে, এখানে আমার পাইথন বাস্তবায়ন, যা ইনপুট হিসাবে অ্যারে নেয়, sklearn-স্টাইল:

import numpy as np
from scipy.misc import comb

def rand_index_score(clusters, classes):

    tp_plus_fp = comb(np.bincount(clusters), 2).sum()
    tp_plus_fn = comb(np.bincount(classes), 2).sum()
    A = np.c_[(clusters, classes)]
    tp = sum(comb(np.bincount(A[A[:, 0] == i, 1]), 2).sum()
             for i in set(clusters))
    fp = tp_plus_fp - tp
    fn = tp_plus_fn - tp
    tn = comb(len(A), 2) - tp - fp - fn
    return (tp + tn) / (tp + fp + fn + tn)

In [319]: clusters
Out[319]: [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2]

In [320]: classes
Out[320]: [0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 2, 1, 0, 2, 2, 2, 0]

In [321]: rand_index_score(clusters, classes)
Out[321]: 0.67647058823529416

4

আমি নিজেই পুরোপুরি নিশ্চিত নই, তবে এইভাবেই আমি টিএন মানটি করেছি:
টিএন = (7 2) (10 2) (4 2)

(2 2) - ক্লাস্টার 1 - পরীক্ষাটি 'x' বলে, সুতরাং যারা x নয় তাদের গণনা করুন (এবং সঠিকভাবে 2 এবং 3 ক্লাস্টারে ক্লাস্টারযুক্ত)

অর্থাৎ 4 'o's + 3' d's (হীরা) = (7 2)

(10 2) - ক্লাস্টার 2, যেগুলি 'ও' নয় এবং সঠিকভাবে ক্লাস্টার 1 এবং 3 এ ক্লাস্টার করেছে তাদের গণনা করুন,

অর্থাৎ 5 'x' + (2'x '+ 3'd') = (10 2)

(4 2) - ক্লাস্টার 3, ক্লাস্টার 1 এবং 2 তে সঠিকভাবে ক্লাস্টারযুক্ত 'x' এবং 'ন' (হীরা আকারের উপাদান) এর নয় তাদের গণনা করুন।

ক্লাস্টারে ২ হিসাবে 4 'গুলি 2 = (4 2)

টিএন = (7 2) + (10 2) + (4 2) = 72।

তারপরে এফএন হ'ল:

এফএন = (17 2) - (টিপি + এফপি) - টিএন = 136 - 40 -72 = 24. ---> (17 = দস্তাবেজের মোট সংখ্যা)


এই উত্তরটি আমার কাছে সর্বাধিক উপলব্ধি করে, যদিও এটি সত্যই দেখায় না যে কীভাবে "এফএন এবং টিএন একইভাবে গণনা করা হয়", যেমনটি বইটি বলে এবং প্রশ্নটি উল্লেখ করে। আমি সন্দেহ করি যে এখানে একটি সহজ উপায় থাকতে পারে, সম্ভবত সম্ভবত ক্লাস্টার / ক্লাসগুলির স্যুইচিংয়ের কৌশলতে ইঙ্গিত দেওয়া উত্তর।
সিজউভিন

এটি ভুল, অন্যান্য বিবরণে এই বর্ণনাটি কাজ করে না। আমার upvote ফিরিয়ে দিন! সঠিক উত্তরটি @ ব্যবহারকারী9668 এর।
üzgür

এই উত্তরটি নিখুঁতভাবে উপলব্ধি করে।
এহসানএফ

2

অন্য একটি প্রশ্নের উদাহরণ গ্রহণ করা:

  | 1 | 2 | 3
--+---+---+---
x | 5 | 1 | 2
--+---+---+---
o | 1 | 4 | 0
--+---+---+---
◊ | 0 | 1 | 3

এফএন এর যুক্তিসঙ্গত উত্তর:

FN = (c(8,2)-c(5,2)-c(2,2))+(c(5,2)-c(4,2))+(c(4,2)-c(3,2))=24  

ব্যাখ্যা:

  • (গ (8,2) -c (5,2) -c (2,2))

    'x' (ক) এর জন্য ক্লাস্টার 1 এর জন্য একই ক্লাস্টারে (গ (5,2) এবং ক্লাস্টার 3 এর জন্য সি (2,2) এর একই শ্রেণীর সংমিশ্রণের জন্য 8 থেকে 2 টি বেছে নিন,

  • (গ (5,2) -c (4,2))

    ক্লাস্টার 2 এর জন্য একই ক্লাস্টারে (গ (4,2) একই শ্রেণীর সংমিশ্রণ থেকে 5 'ও' (বি) থেকে বিয়োগ 2 বেছে নিন

  • (গ (4,2) -c (3,2)

    '◇' (গ) এর জন্য 4 থেকে 2 টি বেছে নিন একই ক্লাস্টারে একই ক্লাসের সংমিশ্রণ (সি (3,2) ক্লাস্টার 3 এর জন্য)

আমি এটি এইভাবে প্রাপ্ত।


1

আমার আর এর একটি বাস্তবায়ন আছে যা আমি ব্যাখ্যা করব:

টিপি (কোডের একটি) হ'ল প্রতিটি ঘর 2 টি যোগফলের যোগফল the মূল প্রশ্ন অনুসারে (0 বা 1 2 টির সাথে 0 এর সমান চয়ন করুন)

FN (খ) হ'ল প্রতিটি সারির যোগফল 2, সমস্ত যোগফল, কম টিপি বেছে নেওয়া হয়। যেখানে প্রতিটি রো যোগফল প্রতিটি সত্য শ্রেণিতে নথির সংখ্যা উপস্থাপন করে।

এর যোগফল হ'ল সমস্ত নথি যা একই এবং একই ক্লাস্টারে (টিপি) প্লাস একই রকম এবং একই ক্লাস্টারে (এফএন) না থাকা সমস্ত নথি।

সুতরাং এটি (টিপি + এফএন) - টিপি = এফএন

এফপি (সি) একইভাবে গণনা করা হয়। প্রতিটি কলামের যোগফল 2 টি, সমস্ত সংক্ষিপ্ত, কম টিপি পছন্দ করে। এই ক্ষেত্রে প্রতিটি কলামের যোগফল প্রতিটি ক্লাস্টারে নথির সংখ্যা উপস্থাপন করে।

সুতরাং এর যোগফল হ'ল সমস্ত নথি যা একই এবং একই ক্লাস্টারে (টিপি) প্লাস সমস্ত নথি যা একই নয় এবং একই ক্লাস্টারে (এফপি) রয়েছে।

সুতরাং এটি (টিপি + এফপি) - টিপি = এফপি

এই 3 টি গণনা করে টিএন এর বাকি গণনাটি সরাসরি এগিয়ে রয়েছে। সারণির যোগফল 2 টি, কম টিপি, এফপি এবং এফএন = টিএন (ডি) চয়ন করে

এই পদ্ধতির সাথে আমার একমাত্র প্রশ্নটি এটি টিপির সংজ্ঞা। এই প্রশ্নের পরিভাষাটি ব্যবহার করে, আমি বুঝতে পারি না যে ক্লাস্টার 3-এ 2 এ'কে কেন টিপি হিসাবে বিবেচনা করা হয়। আমি এটি এখানে এবং সম্পর্কিত পাঠ্যপুস্তকে উভয়ই পেয়েছি। তবে আমি তাদের হিসাব বুঝতে পারি যে তাদের টিপি গণনাটি সঠিক ass

আশাকরি এটা সাহায্য করবে

FMeasure = function (x, y, beta) 
{
  x <- as.vector(x)
  y <- as.vector(y)
  if (length(x) != length(y)) 
    stop("arguments must be vectors of the same length")
  tab <- table(x, y)
  if (all(dim(tab) == c(1, 1))) 
    return(1)
  a <- sum(choose(tab, 2))
  b <- sum(choose(rowSums(tab), 2)) - a
  c <- sum(choose(colSums(tab), 2)) - a
  d <- choose(sum(tab), 2) - a - b - c
  ## Precision
  P = a / (a + c)
  ## Recall
  R = a / (a + b)
  ##F-Measure
  Fm <- (beta^2 + 1) * P * R / (beta^2*P + R)
  return(Fm)
}

এটি এত জনপ্রিয়, ডেল, সারি, কলাম বলতে কী বোঝ?
üzgür

আমি নিশ্চিত নই আপনি র‌্যান্ড স্ট্যাটিস্টিককে কেন জনপ্রিয় হিসাবে বর্ণনা করছেন? ঘর, সারি এবং কলামগুলি বিভ্রান্তির ম্যাট্রিক্সের ঘরগুলি সারি এবং কলামগুলিকে বোঝায়। ওপির প্রশ্ন অনুসারে।
স্যামপাসমোর

আচ্ছা, কারণ আসল প্রশ্নে কোনও বিভ্রান্তির ম্যাট্রিক্স নেই? এবং আপনি কোথাও বলেন নি যে এটি বিভ্রান্তির ম্যাট্রিক্স। এটি উপরের প্রথম উত্তরে এবং একবার ব্যবহার করা হয়েছে, হ্যাঁ আপনার পদ্ধতিটি কাজ করছে বলে মনে হচ্ছে।
üzgür

0

আপনি একইভাবে টিএন এবং এফএন গণনা করতে পারেন।

কেবল লেবেল এবং ক্লাস্টারের ভূমিকা স্যুইচ করুন ।

a) 1 1 1 1 1 2 3 3
b) 1 2 2 2 2
c) 2 3 3 3 3

... তারপর একই গণনা সম্পাদন।


আপনি আরও স্পষ্ট হতে পারে? এছাড়াও, আপনার তালিকায় আপনার কাছে একটি অতিরিক্ত 3 পেয়েছে (গ) আমার বিশ্বাস, 17 টি আইটেম থাকা উচিত।
সিজউভিন

খুব অস্পষ্ট উত্তর
মনস্টার এমএমআরপিজি

0

আমি মনে করি আমি এর থেকে মিথ্যা নেতিবাচক (এফএন) বিপরীত করেছি। প্রকৃত ইতিবাচকদের জন্য, আপনি 4 টি দল তৈরি করেছিলেন যা ইতিবাচক ছিল। ক্লাস্টার 1 এ, আপনি পাঁচটি এর পেয়েছিলেন; গুচ্ছ 2 এ, আপনার কাছে 4 খ ছিল; ক্লাস্টার 3 এ আপনার কাছে 3 গ এবং 2 এ ছিল।

মিথ্যা নেতিবাচক জন্য তাই।

  1. ক্লাস্টার 1 এ এর ​​সাথে শুরু করুন; ক্লাস্টারে 5 টি সঠিকভাবে স্থাপন করা আছে। ক্লাস্টার 2 এ আপনার 1 টি ভুয়া আছে, এবং ক্লাস্টারে দুটি ভুয়া আছে That যা দেয় (5 1) এবং (5 2)।
  2. তারপর খ এর জন্য। আপনি পূর্বে গণনা করেছেন 4 টি সঠিকভাবে স্থাপন করা হয়েছে's ক্লাস্টার 1 এ আপনার একটি ভুয়া বি রয়েছে এবং এটিই। এটি আপনাকে বি এর জন্য (4 1) দেয়।
  3. তারপর গ এর জন্য। আপনার ক্লাস্টার 2 এ একটি মিথ্যা সি রয়েছে, ক্লাস্টার 3 তে তিনটি সঠিক রয়েছে, সুতরাং (3 1) রয়েছে।
  4. এর পরে, আমরা ক্লাস্টার 3 এ এর ​​জুটির কথাটি ভুলতে পারি না যা আমরা সত্য পজিটিভ বলেছিলাম। সুতরাং সে সম্পর্কে শ্রদ্ধায়, আমাদের ক্লাস্টারে ২ টি ভুয়া আছে cl ক্লাস্টার 1 এ অন্য একটি রয়েছে যদিও আমরা তাদের মিথ্যা বলতে পারি না কারণ অনেকগুলি রয়েছে।

অতএব, আপনার কাছে (5 1) + (5 2) + (4 1) + (3 1) + (2 1) যা 5 + 10 + 4 + 3 + 2 = 24 সমান। 136 থেকে আপনি ইতিমধ্যে সত্য নেগ্র (টিএন) পেয়েছেন বলে বিয়োগ করুন।


0

এখানে বিয়োগ ছাড়াই র্যান্ড সূচকের জন্য প্রতিটি মেট্রিক গণনা করা যায়

সহজ বোঝার জন্য পার্শ্ব নোট:

1) র‌্যান্ড সূচক জোড়া উপাদানগুলির তুলনার উপর ভিত্তি করে। থিওরিটি পরামর্শ দেয়, অনুরূপ জোড় উপাদান একই ক্লাস্টারে স্থাপন করা উচিত, এবং ভিন্ন ভিন্ন উপাদানগুলির পৃথক ক্লাস্টারে স্থাপন করা উচিত।

2) আরআই ক্লাস্টারের সংখ্যার পার্থক্য সম্পর্কে চিন্তা করে না। এটি কেবল সত্য / মিথ্যা জোড় উপাদানগুলির যত্ন করে।

এই অনুমানের উপর ভিত্তি করে, র‌্যান্ড সূচক গণনা করা হয়

enter image description here

ঠিক আছে, আসুন এখানে ডুব দেওয়া আমাদের উদাহরণ:

  | 1 | 2 | 3
--+---+---+---
x | 5 | 1 | 2
--+---+---+---
o | 1 | 4 | 0
--+---+---+---
◊ | 0 | 1 | 3

ডিনোমিনেটরে, আমাদের মোট সম্ভাব্য জোড়া রয়েছে, যা is (17 2) = 136

আরও ভাল বোঝার জন্য এখন প্রতিটি মেট্রিক গণনা করা যাক:

ক) আসুন সহজ একটি দিয়ে শুরু করা যাক , ( সত্য ধনাত্মক বা অনুরূপ সঠিক )

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

a = (5 2) + (1 2) + (2 2) + (1 2) + (4 2) + (0 2) + (0 2) + (1 2) + (3 2) = 
  = 10 + 0 + 1 + 0 + 6 + 0 + 0 + 0 + 3 = 20

গ) এখন, আসুন সি ( মিথ্যা ধনাত্মক বা ভুল ভিন্ন )

এর অর্থ, সমস্ত জোড় সন্ধান করুন, যা আমরা একসাথে রেখেছি, তবে যা বিভিন্ন ক্লাস্টারে থাকা উচিত। গ্রিড উদাহরণে এর অর্থ, যে কোনও 2 অনুভূমিক কক্ষের মধ্যে সম্ভাব্য সমস্ত জোড় খুঁজে নিন

c = 5*1 + 5*2 + 1*2 + 
  + 1*4 + 1*0 + 4*0 + 
  + 0*1 + 0*3 + 1*3 = 
  = 5 + 10 + 2 + 4 + 0 + 0 + 0 + 0 + 3 = 24

ডি) গণনা করা হচ্ছে ( মিথ্যা নেতিবাচক বা ভুল অনুরূপ ) এর মানে, সব জোড়া যে আমরা বিভিন্ন ক্লাস্টার স্থাপন খুঁজে কিন্তু যা একসঙ্গে হতে হবে। গ্রিড উদাহরণে, যে কোনও 2 টি উল্লম্ব কক্ষের মধ্যে সম্ভাব্য সমস্ত জোড় খুঁজে নিন

d = 5*1 + 5*0 + 1*0 + 
  + 1*4 + 1*1 + 4*1 + 
  + 2*0 + 2*3 + 0*3 = 
  = 5 + 0 + 0 + 4 + 1 + 4 + 0 + 6 + 0 = 20

খ) এবং, অবশেষে ( খালি নেতিবাচক বা সঠিক ভিন্নতা ) করি

এর অর্থ, আমরা বিভিন্ন ক্লাস্টারে যে সমস্ত জোড়া রেখেছি তা সন্ধান করুন, যা বিভিন্ন ক্লাস্টারেও হওয়া উচিত। গ্রিডে, এর অর্থ হল যে কোনও 2 টি নন-উল্লম্ব এবং অনুভূমিক কোষের মধ্যে সমস্ত সম্ভাব্য জুড়ি সন্ধান করুন

আমি কী বলতে চাইছিলাম তা আরও ভালভাবে বোঝার জন্য এখানে কোন সংখ্যাগুলি গুণিত করা উচিত:

d = x1*o2 + x1*o3 + x1*◊2 + x1*◊3 + 
  + x2*o1 + x2*o3 + x2*◊1 + x2*◊3 + 
  + x3*o1 + x3*o2 + x3*◊1 + x3*◊2 + 
  + o1*◊2 + o1*◊3 + 
  + o2*◊1 + o2*◊3 + 
  + o3*◊1 + o3*◊2

সংখ্যায়:

d = 5*4 + 5*0 + 5*1 + 5*3 + 
  + 1*1 + 1*0 + 1*0 + 1*3 + 
  + 2*1 + 2*4 + 2*0 + 2*1 + 
  + 1*1 + 1*3 +
  + 4*0 + 4*3 = 72

এবং শেষে র‌্যান্ড সূচক সমান: (20 + 72) / 136 = 0.676


0

নীচে ছবিটি যা আপনার প্রশ্নের বর্ণনা দেয়:

Rand-Index-Question

এই সমস্যাটি সমাধান করার জন্য আপনাকে এই ম্যাট্রিক্সটি বিবেচনা করতে হবে:

+--------------------------------+--------------------------------------+
| TP:                            | FN:                                  |
| Same class + same cluster      | Same class + different clusters      |
+--------------------------------+--------------------------------------+
| FP:                            | TN:                                  |
| different class + same cluster | different class + different clusters |
+--------------------------------+--------------------------------------+

এইভাবে আমরা র‌্যান্ড সূচকটির জন্য টিপি, এফএন, এফপি গণনা করি:

TP, FN, and FP calculation for Rand Index

দ্রষ্টব্য: উপরের সমীকরণগুলিতে, আমি ছবিতে হীরাটি দেখানোর জন্য একটি ত্রিভুজ ব্যবহার করেছি।

উদাহরণস্বরূপ, মিথ্যা নেতিবাচক জন্য, আমাদের ক্লাস থেকে বাছাই করা উচিত তবে বিভিন্ন ক্লাস্টারে। সুতরাং, আমরা বাছাই করতে পারেন

  • ক্লাস্টার 1 থেকে 1 এক্স এবং ক্লাস্টার 2 = 1 থেকে 1 এক্স (51)(11)=5
  • ক্লাস্টার 1 থেকে 1 এক্স এবং ক্লাস্টার 3 = 1 থেকে 1 এক্স (51)(21)=10
  • ক্লাস্টার 1 থেকে 1 ও ক্লাস্টার 2 = 1 থেকে 1 হে (11)(41)=4
  • ক্লাস্টার 2 থেকে 1 এক্স এবং ক্লাস্টার 3 = 1 থেকে 1 এক্স (11)(21)=2
  • 1 গুচ্ছ 2 এবং 1 থেকে ক্লাস্টার 3 = থেকে (11)(31)=3

অবশেষে, আমরা হবে 24 (=5+ +10+ +4+ +2+ +3) রাষ্ট্র।

বাকি সমীকরণগুলির জন্য একই।

সবচেয়ে শক্ত অংশটি টিএন যা নীচের ছবির মতো করা যায়:

TN calculation for Rand Index

র‌্যান্ড সূচক গণনা করার জন্য কিছু ছোট পথ রয়েছে তবে এটি গভীর এবং ধাপে ধাপে গণনা। পরিশেষে, কন্টিনজেন্সি টেবিলটি নীচে দেখায়:

+--------+--------+
| TP: 20 | FN: 24 |
+--------+--------+
| FP: 20 | TN: 72 |
+--------+--------+
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.