মাল্টিক্লাস শ্রেণিবদ্ধকরণ সেটিংয়ে মাইক্রো গড় বনাম ম্যাক্রো গড় পারফরম্যান্স


102

আমি 3 টি ক্লাস সহ একটি মাল্টিক্লাস শ্রেণিবদ্ধকরণ সেটিং চেষ্টা করছি। শ্রেণীর বিতরণটি 3 টি শ্রেণির 1 টির মধ্যে বেশিরভাগ ডেটা পড়ে যায়। (ক্লাস লেবেলগুলির সংখ্যা 1,2,3, ক্লাস লেবেল 1 এ পড়ার 67.28%, ক্লাস 2-এ 11.99% ডেটা, এবং ক্লাস 3 এ থাকা)

আমি এই ডেটাসেটে একটি মাল্টিক্লাস ক্লাসিফায়ারকে প্রশিক্ষণ দিচ্ছি এবং আমি নিম্নলিখিত সম্পাদনাটি পাচ্ছি:

                    Precision           Recall           F1-Score
Micro Average       0.731               0.731            0.731
Macro Average       0.679               0.529            0.565

আমি নিশ্চিত না কেন সমস্ত মাইক্রো গড়। পারফরম্যান্স সমান এবং এছাড়াও ম্যাক্রো গড় পারফর্মেন্সগুলি এত কম কেন।


1
গড় দেওয়ার আগে আপনি স্বতন্ত্র সত্যের ইতিবাচক ইত্যাদির দিকে তাকাতে পারবেন না? এছাড়াও, ম্যাক্রো গড়গুলি মাইক্রো গড়ের তুলনায় কম থাকে
oW_

মাইক্রো এবং ম্যাক্রো এফ-ব্যবস্থাগুলি কি পাঠ্য শ্রেণীবদ্ধকরণ বা পুনরুদ্ধারের জন্য সুনির্দিষ্ট, বা এগুলি যে কোনও স্বীকৃতি বা শ্রেণিবিন্যাস সমস্যার জন্য ব্যবহার করা যেতে পারে ..... যদি তাই হয় তবে যেখানে আমরা প্রতিটি বা অন্য কোনও রেফারেন্সের তাত্পর্য পেতে পারি ...
ইড্রি

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

1
@ নিকোজেটলার আপনি সঠিক আছেন প্রতিটি ডাটা পয়েন্ট হুবহু এক শ্রেণিতে বরাদ্দ করা হলে মাইক্রো-এভারেজেড স্পষ্টতা এবং মাইক্রো-এভারেজেড রিকাল উভয়ই যথার্থতার সমান। আপনার দ্বিতীয় প্রশ্ন হিসাবে, শ্রেণিবিন্যাসগুলি বহু-লেবেলযুক্ত (প্রতিটি ডাটা পয়েন্ট একাধিক লেবেল নির্ধারিত হতে পারে) এবং / বা যখন কয়েকটি শ্রেণি মাল্টি-ক্লাসের ক্ষেত্রে বাদ থাকে তখন মাইক্রো-এভারেজেড মেট্রিকগুলি সামগ্রিক যথার্থতার চেয়ে আলাদা। Scikit-learn.org/stable/modules/… দেখুন ।
জনসন

উত্তর:


144

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

কেন উদাহরণস্বরূপ, নির্ভুলতার জন্য Pr=TP(TP+FP)

  • ক্লাস এ: 1 টিপি এবং 1 এফপি
  • ক্লাস বি: 10 টিপি এবং 90 এফপি
  • ক্লাস সি: 1 টিপি এবং 1 এফপি
  • ক্লাস ডি: 1 টিপি এবং 1 এফপি

PrA=PrC=PrD=0.5PrB=0.1

  • Pr=0.5+0.1+0.5+0.54=0.4
  • Pr=1+10+1+12+100+2+2=0.123

নির্ভুলতার জন্য এগুলি বেশ আলাদা মান। স্বজ্ঞাতভাবে, ম্যাক্রো-এভারেজ এ, সি এবং ডি ক্লাসের "ভাল" নির্ভুলতা (০.৫) একটি "শালীন" সামগ্রিক যথার্থতা (0.4) বজায় রাখতে অবদান রাখছে। যদিও এটি প্রযুক্তিগতভাবে সত্য (ক্লাস জুড়ে, গড় নির্ভুলতা 0.4) তবে এটি কিছুটা বিভ্রান্তিকর, কারণ প্রচুর সংখ্যক উদাহরণ সঠিকভাবে শ্রেণিবদ্ধ করা হয়নি। এই উদাহরণগুলি প্রধানত বি শ্রেণীর সাথে সামঞ্জস্যপূর্ণ, সুতরাং আপনার পরীক্ষার ডেটাগুলির 94.3% গঠন সত্ত্বেও তারা গড়ের দিকে 1/4 অবদান রাখে। মাইক্রো-এভারেজ পর্যাপ্তরূপে এই শ্রেণীর ভারসাম্যহীনতা অর্জন করবে এবং সামগ্রিক নির্ভুলতা গড়কে নীচে নেবে 0.123 (অধিক প্রভাবশালী শ্রেণীর বি (0.1)) এর যথাযথতার সাথে সামঞ্জস্য রেখে।

গণনাগত কারণে, কখনও কখনও শ্রেণীর গড় গণনা করা এবং তারপরে ম্যাক্রো-গড় গড়ের পক্ষে আরও সুবিধাজনক হতে পারে। শ্রেণি ভারসাম্যহীনতা যদি একটি সমস্যা হিসাবে পরিচিত হয় তবে এর চারপাশে বেশ কয়েকটি উপায় রয়েছে। একটি হ'ল কেবল ম্যাক্রো-এভারেজই নয়, এর মানক বিচ্যুতিও (3 বা তার বেশি ক্লাসের জন্য) প্রতিবেদন করা। আরেকটি হ'ল একটি ওজনযুক্ত ম্যাক্রো-গড় গণনা করা, যাতে প্রতিটি শ্রেণীর গড় অবদানের জন্য এটির জন্য উপলব্ধ উদাহরণগুলির তুলনামূলক সংখ্যার দ্বারা ওজন করা হয়। উপরের দৃশ্যে, আমরা প্রাপ্ত:

Prmacromean=0.25·0.5+0.25·0.1+0.25·0.5+0.25·0.5=0.4 Prmacrostdev=0.173

Prmacroweighted=0.0189·0.5+0.943·0.1+0.0189·0.5+0.0189·0.5=0.009+0.094+0.009+0.009=0.123

বৃহত্তর স্ট্যান্ডার্ড বিচ্যুতি (0.173) ইতিমধ্যে আমাদের জানিয়েছে যে 0.4 গড় শ্রেণীর মধ্যে অভিন্ন নির্ভুলতা থেকে শুরু করে না, তবে ভারিত ম্যাক্রো-গড় গণনা করা সহজতর হতে পারে, যা মূলত মাইক্রো-গড় গণনার অন্য উপায় is ।


10
এই উত্তরটি আরও উচ্চতর দাবিদার, কারণ এটি সূত্রের তালিকা (এবং এটি মূল বিষয়বস্তু) এর পরিবর্তে কেন মাইক্রো এবং ম্যাক্রো পৃথকভাবে আচরণ করে তা বোঝার ক্ষেত্রে সহায়তা করে।
স্টিফেন

2
এটি কীভাবে মূল প্রশ্নের বিভিন্ন ম্যাক্রো মানকে ব্যাখ্যা করে?
shakeszy

3
উত্তরে বড় শ্রেণি ছোটদের চেয়ে আরও ভাল পারফর্মেন্স সহ যদি আপনি উত্তরে স্কেচ করা দৃশ্যটি ফ্লিপ করেন তবে আপনি মাইক্রো এভারেজকে ম্যাক্রো গড়ের তুলনায় বেশি (আশাবাদী আচরণটি হিসাবে প্রশ্ন করা হয়েছে) দেখতে আশা করবেন would যে ম্যাক্রো মানগুলি আলাদা তা প্রত্যাশিত কম বা কম, যেহেতু আপনি বিভিন্ন জিনিস পরিমাপ করছেন (যথার্থতা, প্রত্যাহার ...)। কেন মাইক্রো গড় সব একই বিশ্বাস আমি বিশ্বাস করি।
পাইথিয়েস্ট

4
ভারসাম্যহীন ডেটাসেটের ক্ষেত্রে ম্যাক্রোর চেয়ে মাইক্রো এভারেজকেই বেশি পছন্দ করা উচিত, এই বক্তব্যটির সাথে আমি একমত নই। প্রকৃতপক্ষে, এফ স্কোরগুলির জন্য ম্যাক্রো মাইক্রোয়ের চেয়ে বেশি পছন্দ করা হয় কারণ পূর্ববর্তী প্রতিটি শ্রেণীর জন্য সমান গুরুত্ব দেয় যেখানে পরবর্তীকালে প্রতিটি নমুনাকে সমান গুরুত্ব দেওয়া হয় (যার অর্থ নমুনার সংখ্যা যত বেশি, তত বেশি বলে যে এটি চূড়ান্ত স্কোরের মধ্যে রয়েছে) সংখ্যাগরিষ্ঠ শ্রেণীর পক্ষে যথাযথতার মতো)। সূত্র: 1. cse.iitk.ac.in/users/purushot/papers/macrof1.pdf 2. clips.uantwerpen.be/~vincent/pdf/microaverage.pdf
শাহেনশা

3
"ভারী ম্যাক্রো-গড়" কি সর্বদা মাইক্রো গড়ের সমান হতে চলেছে? স্কাইকিট-লার্নে, "ওজনযুক্ত" এর সংজ্ঞাটি কিছুটা আলাদা: "প্রতিটি লেবেলের জন্য মেট্রিক গণনা করুন এবং তাদের গড়, সমর্থন দ্বারা ওজনযুক্ত (প্রতিটি লেবেলের সত্যিকারের উদাহরণগুলির সংখ্যা) খুঁজে পান।" এফ 1 স্কোরের ডক্স থেকে ।
willk

20

আসল পোস্ট - http://rushdishams.blogspot.in/2011/08/micro-and-macro-average-of-precision.html


মাইক্রো-গড় পদ্ধতিতে, আপনি আলাদা আলাদা সেটগুলির জন্য পৃথক সত্যের ধনাত্মক, মিথ্যা ধনাত্মক এবং সিস্টেমের মিথ্যা negativeণাত্মকগুলি যোগ করেন এবং পরিসংখ্যানগুলি পেতে এগুলি প্রয়োগ করেন।

কৌতুকময়, তবে আমি এটি খুব আকর্ষণীয় মনে করেছি। দুটি পদ্ধতি রয়েছে যার মাধ্যমে আপনি তথ্য পুনরুদ্ধার এবং শ্রেণিবিন্যাসের গড় পরিসংখ্যান পেতে পারেন।

1. মাইক্রো-গড় পদ্ধতি

মাইক্রো-গড় পদ্ধতিতে, আপনি আলাদা আলাদা সেটগুলির জন্য পৃথক সত্যের ধনাত্মক, মিথ্যা ধনাত্মক এবং সিস্টেমের মিথ্যা negativeণাত্মকগুলি যোগ করেন এবং পরিসংখ্যানগুলি পেতে এগুলি প্রয়োগ করেন। উদাহরণস্বরূপ, ডেটা সেট করার জন্য, সিস্টেমটি

True positive (TP1)  = 12
False positive (FP1) = 9
False negative (FN1) = 3

57.14%=TP1TP1+FP180%=TP1TP1+FN1

এবং ডেটা বিভিন্ন সেট জন্য, সিস্টেম

True positive (TP2)  = 50
False positive (FP2) = 23
False negative (FN2) = 9

তারপরে নির্ভুলতা (পি 2) এবং পুনর্বিবেচনা (আর 2) হবে 68.49 এবং 84.75

এখন, মাইক্রো-গড় পদ্ধতি ব্যবহার করে সিস্টেমের গড় নির্ভুলতা এবং রিকাল

Micro-average of precision=TP1+TP2TP1+TP2+FP1+FP2=12+5012+50+9+23=65.96

Micro-average of recall=TP1+TP2TP1+TP2+FN1+FN2=12+5012+50+3+9=83.78

মাইক্রো-এভারেজ এফ-স্কোর কেবল এই দুটি পরিসংখ্যানের সুরেলা মাধ্যম হবে।

2. ম্যাক্রো-গড় পদ্ধতি od

পদ্ধতিটি সরাসরি এগিয়ে রয়েছে। বিভিন্ন সেটে সিস্টেমটির যথার্থতা এবং পুনর্বিবেচনার গড় মাত্র নিন। উদাহরণস্বরূপ, প্রদত্ত উদাহরণের জন্য সিস্টেমের ম্যাক্রো-গড় যথার্থতা এবং পুনরুদ্ধারটি হ'ল

Macro-average precision=P1+P22=57.14+68.492=62.82 Macro-average recall=R1+R22=80+84.752=82.25

ম্যাক্রো-এভারেজ এফ-স্কোর কেবলমাত্র এই দুটি পরিসংখ্যানের সুরেলা মাধ্যম হবে।

আপনি কীভাবে ডেটার সেটগুলিতে সিস্টেম সামগ্রিকভাবে কার্য সম্পাদন করে তা জানতে চাইলে উপযুক্ততা ম্যাক্রো-গড় পদ্ধতি ব্যবহার করা যেতে পারে। এই গড় নিয়ে আপনার কোনও নির্দিষ্ট সিদ্ধান্ত নিয়ে আসা উচিত নয়।

অন্যদিকে, যখন আপনার ডেটাসেট আকারে পরিবর্তিত হয় তখন মাইক্রো-এভারেজ একটি দরকারী পরিমাপ হতে পারে।


21
আপনি এই ব্লগ পোস্ট ক্রেডিট দেওয়া উচিত ?
xiaohan2012

3
হ্যাঁ @ xiaohan2012, তিনি কেবল উত্তরটি কপি করেছেন yp
ম্যানুয়েল জি

স্ট্যাক ওভারফ্লোতে এটি আমার প্রথম উত্তর, এটি কীভাবে করব তা সম্পর্কে আমি নিশ্চিত ছিলাম না। আপনি একটি সম্পাদনা পরামর্শ দিতে পারেন? আমি এটা গ্রহণ করব। ধন্যবাদ
রাহুল রেড্ডি ভেমেরেডি

এটি লক্ষণীয় যে এখানে এফ 1-স্কোর অগত্যা ম্যাক্রো- এভারেজেড এফ 1 স্কোর হিসাবে সাধারণত ব্যবহৃত হয় না (যেমন সাইকিতে প্রয়োগ করা হয় বা এই কাগজে বর্ণিত )। সাধারণত, এফ 1 স্কোরটি প্রতিটি শ্রেণি / সেটগুলির জন্য পৃথক করে গণনা করা হয় এবং তারপরে গড়ে বিভিন্ন F1 স্কোরগুলি থেকে গড় গণনা করা হয় (এখানে, এটি বিপরীত উপায়ে করা হয়: প্রথমে ম্যাক্রো-গড় গড় নির্ভুলতা / পুনরুদ্ধার গণনা করা এবং তারপরে F1- স্কোর )।
মিলানিয়া

11

একটি বহু-শ্রেণীর সেটিংয়ে মাইক্রো-এভারেজেড নির্ভুলতা এবং রিকোল সবসময় একই থাকে are

P=cTPccTPc+cFPcR=cTPccTPc+cFNc

cFPc=cFNc

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

রাহুলের দেওয়া উত্তর হ'ল বাইনারি যথার্থতা গড়ে তোলার ক্ষেত্রে এবং একাধিক ডেটাসেট থেকে প্রত্যাহার করার ক্ষেত্রে। যে ক্ষেত্রে মাইক্রো-এভারেজেড স্পষ্টতা এবং পুনরুদ্ধার আলাদা।


2

এটি এমনই হওয়া উচিত। আমার গবেষণার জন্যও আমার একই ফলাফল ছিল। এটি প্রথমে অদ্ভুত বলে মনে হয়েছিল। মাল্টি-ক্লাস সিঙ্গল-লেবেল শ্রেণিবদ্ধের ফলাফলের মাইক্রো-এভারেজ করার সময় তবে নির্ভুলতা এবং পুনরুদ্ধার একই হওয়া উচিত। এর কারণ এটি যদি আপনি একটি ভুল শ্রেণিবদ্ধকরণ সি 1 = সি 2 (যেখানে সি 1 এবং সি 2 2 টি পৃথক শ্রেণি) বিবেচনা করেন তবে গির্জাভুক্তি সি 2 এর সাথে সম্মতিযুক্ত এবং মিথ্যা নেতিবাচক (এফএন) সি 1 এর সাথে সম্মতিযুক্ত। আপনি যদি সকল শ্রেণীর জন্য fn এবং fp যোগফল দেন তবে আপনি একই নম্বর পাবেন কারণ আপনি প্রতিটি শ্রেণিবদ্ধকে একটি শ্রেণীর সাথে সম্মান করে এবং অন্য শ্রেণীর সাথে সম্মিলিত fn হিসাবে গণনা করছেন।


0

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

তবে যথার্থতা, পুনর্বিবেচনা এবং এফ 1 স্কোরের জন্য মাইক্রো গড় সমান হওয়ার কারণ হ'ল মাইক্রো গড়ের এই মেট্রিকগুলির সামগ্রিক নির্ভুলতার ফলাফল হয় (মাইক্রো গড় হিসাবে সমস্ত শ্রেণিকে ইতিবাচক হিসাবে বিবেচনা করে)। মনে রাখবেন যে যথার্থতা এবং পুনর্বিবেচনা সমান হলে F1 স্কোর যথার্থ / পুনরুদ্ধারের সমান।

প্রশ্ন হিসাবে যদি "ভারী ম্যাক্রো-গড়" সর্বদা "মাইক্রো গড়" এর সমান হয়? বিভিন্ন নম্বর নিয়ে কিছু পরীক্ষা-নিরীক্ষা করেছি। ক্লাস এবং বিভিন্ন শ্রেণীর ভারসাম্যহীনতা এবং এটি প্রমাণিত যে এটি প্রয়োজনীয় সত্য নয়।

এই বিবৃতিগুলি এই ধারণাটি দিয়ে তৈরি করা হয়েছে যে আমরা একই ডেটাসেটের সমস্ত শ্রেণি বিবেচনা করছি (রাহুল রেড্ডি ভেমেরডির উত্তরের বিপরীতে)

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