শ্রেণীবিভাগ: ভবিষ্যদ্বাণী পক্ষপাত

লজিস্টিক রিগ্রেশন পূর্বাভাস নিরপেক্ষ হওয়া উচিত। এটাই:

"ভবিষ্যদ্বাণীর গড়" হওয়া উচিত ≈ "পর্যবেক্ষণের গড়"

ভবিষ্যদ্বাণীর পক্ষপাত হল একটি পরিমাণ যা পরিমাপ করে যে এই দুটি গড় কত দূরে রয়েছে। এটাই:

$$\text{prediction bias} = \text{average of predictions} - \text{average of labels in data set}$$

একটি উল্লেখযোগ্য অশূন্য ভবিষ্যদ্বাণী পক্ষপাত আপনাকে বলে যে আপনার মডেলের কোথাও একটি বাগ আছে, কারণ এটি নির্দেশ করে যে মডেলটি কত ঘন ঘন ইতিবাচক লেবেল ঘটবে সে সম্পর্কে ভুল।

উদাহরণস্বরূপ, ধরা যাক আমরা জানি যে গড়ে, সমস্ত ইমেলের 1% স্প্যাম। যদি আমরা একটি প্রদত্ত ইমেল সম্পর্কে কিছু জানি না, তাহলে আমাদের ভবিষ্যদ্বাণী করা উচিত যে এটি স্প্যাম হওয়ার সম্ভাবনা 1%। একইভাবে, একটি ভাল স্প্যাম মডেলের গড় ভবিষ্যদ্বাণী করা উচিত যে ইমেলগুলি স্প্যাম হওয়ার সম্ভাবনা 1%। (অন্য কথায়, যদি আমরা প্রতিটি স্বতন্ত্র ইমেলের স্প্যাম হওয়ার পূর্বাভাসিত সম্ভাবনা গড় করি, ফলাফলটি 1% হওয়া উচিত।) যদি পরিবর্তে, মডেলের গড় ভবিষ্যদ্বাণী স্প্যাম হওয়ার সম্ভাবনা 20% হয়, আমরা উপসংহারে পৌঁছাতে পারি যে এটি পূর্বাভাসের পক্ষপাত প্রদর্শন করে।

ভবিষ্যদ্বাণী পক্ষপাতের সম্ভাব্য মূল কারণগুলি হল:

  • অসম্পূর্ণ বৈশিষ্ট্য সেট
  • গোলমাল ডেটা সেট
  • বগি পাইপলাইন
  • পক্ষপাতমূলক প্রশিক্ষণ নমুনা
  • অত্যধিক শক্তিশালী নিয়মিতকরণ

আপনি শেখা মডেলের পোস্ট-প্রসেসিং-এর মাধ্যমে ভবিষ্যদ্বাণীর পক্ষপাত সংশোধন করতে প্রলুব্ধ হতে পারেন—অর্থাৎ, একটি ক্রমাঙ্কন স্তর যোগ করে যা আপনার মডেলের আউটপুটকে পূর্বাভাসের পক্ষপাত কমাতে সামঞ্জস্য করে। উদাহরণস্বরূপ, যদি আপনার মডেলে +3% পক্ষপাত থাকে, তাহলে আপনি একটি ক্রমাঙ্কন স্তর যোগ করতে পারেন যা গড় ভবিষ্যদ্বাণী 3% কম করে। যাইহোক, নিম্নলিখিত কারণগুলির জন্য একটি ক্রমাঙ্কন স্তর যোগ করা একটি খারাপ ধারণা:

  • আপনি কারণের পরিবর্তে লক্ষণটি ঠিক করছেন।
  • আপনি একটি আরও ভঙ্গুর সিস্টেম তৈরি করেছেন যা আপনাকে এখন আপ টু ডেট রাখতে হবে।

যদি সম্ভব হয়, ক্রমাঙ্কন স্তরগুলি এড়িয়ে চলুন। যে প্রকল্পগুলি ক্রমাঙ্কন স্তরগুলি ব্যবহার করে সেগুলি তাদের উপর নির্ভরশীল হতে থাকে - তাদের মডেলের সমস্ত পাপ ঠিক করতে ক্রমাঙ্কন স্তরগুলি ব্যবহার করে৷ শেষ পর্যন্ত, ক্রমাঙ্কন স্তরগুলি বজায় রাখা একটি দুঃস্বপ্ন হয়ে উঠতে পারে।

বাকেটিং এবং ভবিষ্যদ্বাণী পক্ষপাত

লজিস্টিক রিগ্রেশন 0 এবং 1 এর মধ্যে একটি মান ভবিষ্যদ্বাণী করে। তবে, সমস্ত লেবেলযুক্ত উদাহরণ হয় ঠিক 0 (অর্থাৎ, উদাহরণস্বরূপ, "স্প্যাম নয়") বা ঠিক 1 (অর্থাৎ, উদাহরণস্বরূপ, "স্প্যাম")। অতএব, ভবিষ্যদ্বাণী পক্ষপাত পরীক্ষা করার সময়, আপনি শুধুমাত্র একটি উদাহরণের উপর ভিত্তি করে ভবিষ্যদ্বাণী পক্ষপাত সঠিকভাবে নির্ধারণ করতে পারবেন না; আপনি উদাহরণের একটি "বালতি" উপর ভবিষ্যদ্বাণী পক্ষপাত পরীক্ষা করা আবশ্যক. অর্থাৎ, লজিস্টিক রিগ্রেশনের জন্য ভবিষ্যদ্বাণীর পক্ষপাত শুধুমাত্র তখনই বোঝা যায় যখন পর্যাপ্ত উদাহরণ একসাথে গোষ্ঠীবদ্ধ করে একটি পূর্বাভাসিত মান (উদাহরণস্বরূপ, 0.392) পর্যবেক্ষণ করা মানগুলির সাথে তুলনা করতে সক্ষম হবে (উদাহরণস্বরূপ, 0.394)।

আপনি নিম্নলিখিত উপায়ে বালতি গঠন করতে পারেন:

  • রৈখিকভাবে লক্ষ্য ভবিষ্যদ্বাণী ভাঙ্গন.
  • কোয়ান্টাইল গঠন।

একটি নির্দিষ্ট মডেল থেকে নিম্নলিখিত ক্রমাঙ্কন প্লট বিবেচনা করুন। প্রতিটি বিন্দু 1,000 মানের একটি বালতি প্রতিনিধিত্ব করে। অক্ষগুলির নিম্নলিখিত অর্থ রয়েছে:

  • x-অক্ষটি সেই বালতির জন্য মডেলের ভবিষ্যদ্বাণী করা মানগুলির গড় প্রতিনিধিত্ব করে।
  • y-অক্ষ সেই বালতির জন্য ডেটা সেটের মানের প্রকৃত গড় উপস্থাপন করে।

উভয় অক্ষই লগারিদমিক স্কেল।

এক্স-অক্ষ হল ভবিষ্যদ্বাণী; y-অক্ষ হল লেবেল। ভবিষ্যদ্বাণীর মধ্যম এবং উচ্চ মানের জন্য, ভবিষ্যদ্বাণী পক্ষপাত নগণ্য। ভবিষ্যদ্বাণীর কম মানগুলির জন্য, পূর্বাভাসের পক্ষপাত তুলনামূলকভাবে বেশি।

চিত্র 8. পূর্বাভাস বায়াস কার্ভ (লগারিদমিক স্কেল)

মডেলের শুধুমাত্র অংশের জন্য ভবিষ্যদ্বাণী এত দরিদ্র কেন? এখানে কয়েকটি সম্ভাবনা রয়েছে:

  • প্রশিক্ষণ সেটটি ডেটা স্থানের নির্দিষ্ট উপসেটগুলিকে যথাযথভাবে উপস্থাপন করে না।
  • ডেটা সেটের কিছু উপসেট অন্যদের তুলনায় বেশি শোরগোল করে।
  • মডেল অত্যধিক নিয়মিত হয়. ( ল্যাম্বডার মান হ্রাস করার কথা বিবেচনা করুন।)