তাহলে আপনার AI ক্যামেরা মনে করে প্রত্যেক মহিলা একজন নার্স এবং প্রত্যেক পুরুষ একজন CEO। দারুণ, দারুণ, দারুণ।
কখনও কোনও "AI-enhanced" অ্যাপে ছবি আপলোড করে দেখেছেন যে সেটি আপনার বন্ধুর শাড়িকে আত্মবিশ্বাসের সাথে বাথরুমের আলখাল্লা হিসেবে চিহ্নিত করছে? অথবা কোনও মেডিকেল ইমেজিং সিস্টেম আপনার হাতের তিলকে ব্লুবেরি বলছে? AI ইমেজিং-এ এটাই হল ডেটাসেট বায়াস (বৈষম্য), এবং এটা শুধু অদ্ভুত নয়— বিপজ্জনকও হতে পারে। বিষয়টা অনেকটা এরকম যে একটা বাচ্চাকে শুধু স্বরবর্ণ দিয়ে বর্ণমালা শেখানো। অবশ্যই, তারা কিছু একটা গাইবে। কিন্তু আপনি চাইবেন না তারা প্রেসক্রিপশন লিখুক।
আমরা এখন এক অদ্ভুত মুহূর্তে দাঁড়িয়ে আছি যেখানে কম্পিউটার ভিশন এত ভালো যে সর্বত্র বিদ্যমান—আপনার ফোন, আপনার গাড়ি, আপনার ডাক্তারের চেম্বার—কিন্তু এখনও এত খারাপ যে মূল বিষয়, প্রেক্ষাপট এবং কখনও কখনও পুরো জনগোষ্ঠীকে এড়িয়ে যায়। এর জন্য সাধারণত গণিত দায়ী নয়। দায়ী হল ডেটা। বিশেষভাবে, সেই ডেটা যা এই মডেলগুলোকে খুব সংকীর্ণ লেন্সের মাধ্যমে বিশ্ব দেখতে প্রশিক্ষণ দিয়েছে।
আসুন, আমরা আলোচনা করি কিভাবে AI ইমেজিং-এ ডেটাসেট বায়াস চুপিসারে প্রবেশ করে, সবকিছু এলোমেলো করে দেয়, এবং—সবচেয়ে গুরুত্বপূর্ণ—কিভাবে আপনি আপনার বিড়ালকে ক্রোসাঁ বলতে বাধা দিতে পারেন।
AI ইমেজিং-এ ডেটাসেট বায়াস কী? সহজ ভাষায় যা আপনার খালা/ফুফু পড়বেন
AI ইমেজিং-এ ডেটাসেট বায়াস তখন ঘটে যখন কোনও মডেলকে প্রশিক্ষণ দেওয়ার জন্য ব্যবহৃত ছবিগুলো বাস্তব বিশ্বকে উপস্থাপন করে না। যদি আপনার ডেটাসেটে বেশিরভাগই একটি নির্দিষ্ট জাতিগোষ্ঠীর মুখ, সীমিত সংখ্যক স্কিন টোন অথবা নিখুঁত স্টুডিও আলোতে তোলা বস্তুর ছবি থাকে (হাই, ইনফ্লুয়েন্সার রিং লাইট!), তাহলে মডেলটি বাস্তবতার একটি ভুল সংস্করণ শেখে।
- সিলেকশন বায়াস (Selection bias): আপনি সেই ছবিগুলো বেছে নিয়েছেন যেগুলো পাওয়া সবচেয়ে সহজ ছিল—স্টক ফটো, সাদা ব্যাকগ্রাউন্ড এবং মাঝে মাঝে সন্দেহজনকভাবে সুখী সালাদ-খাদক।
- লেবেল বায়াস (Label bias): মানুষেরা ছবি লেবেল করে। মানুষেরা তাদের মতামত নিয়ে আসে। কখনও কখনও সেই মতামতগুলো "বাস্তবতার থেকে বেশি সৃজনশীল লেখা" হয়ে যায়।
- কনটেক্সট বায়াস (Context bias): একজন মহিলার পাশে স্টেথোস্কোপ? অবশ্যই একজন নার্স। একই জিনিস একজন পুরুষের পাশে? ডাক্তার। মডেলটি ডেটাসেট থেকে এই стереотип (стереотип) শিখেছে।
- ডোমেইন বায়াস (Domain bias): আপনি চকচকে পণ্যের ছবি দিয়ে প্রশিক্ষণ দিয়েছেন, তারপর আবছা কারখানার মেঝেতে স্থাপন করেছেন। স্বাভাবিকভাবেই, ফর্কলিফটকে বিগফুট মনে হবে।
আপনি যদি কোনও AI-কে শুধুমাত্র একটি এলাকার মাধ্যমে বিশ্ব দেখতে শেখান, তাহলে এটি শহরের কেন্দ্রস্থলে হারিয়ে গেলে অবাক হবেন না।
হাস্যকর নয়, গুরুতর বিষয়: কোথায় বায়াস শুধুমাত্র একটি मीम (мем) থাকে না
AI ইমেজিং-এ বায়াস শুধু मीम (мем) তৈরি করার মতো ব্যর্থতা তৈরি করে না। এটি নিম্নলিখিত ক্ষেত্রেও দেখা যায়:
- মেডিকেল ইমেজিং: ডার্মাটোলজি ডেটাসেটে কম প্রতিনিধিত্ব করা স্কিন টোনগুলোর কারণে মেলানোমার মতো অবস্থার সনাক্তকরণের হার খারাপ হতে পারে। যখন পিক্সেলগুলো প্রশিক্ষণের উদাহরণের সাথে মেলে না, তখন ত্রুটি বেড়ে যায়।
- নিরাপত্তা এবং নজরদারি: মুখের শনাক্তকরণে ভুল শনাক্তকরণের কারণে ভুল গ্রেফতারের ঘটনা ঘটেছে, বিশেষ করে ভিন্ন বর্ণের মানুষের ক্ষেত্রে। এটা ভালো ইউজার এক্সপেরিয়েন্স (User experience) নয়।
- নিয়োগ এবং পরিচয় যাচাইকরণ: ফেস-ম্যাচিং (Face-matching) যা নন-বাইনারি (Non-binary) বা ট্রান্স (Trans) মুখ শনাক্ত করতে ব্যর্থ হয়, তা শুধু বিরক্তিকর নয়— esclusive (esclusive)।
- স্বায়ত্তশাসিত সিস্টেম: একটি সেল্ফ-ড্রাইভিং (Self-driving) গাড়ি যা বেশিরভাগ ক্যালিফোর্নিয়ার রোদে প্রশিক্ষণপ্রাপ্ত, সেটি মিনেসোটার তুষার ঢাকা স্টপ সাইন (Stop sign) নাও চিনতে পারে। গাড়িটি বেপরোয়া নয়। এটি শুধু অরক্ষিত।
যখন মডেলের জগৎ ছোট হয়, তখন আসল মানুষদের এর জন্য মূল্য দিতে হয়।
কিভাবে এটা চুপিসারে প্রবেশ করে: ইমেজ ডেটাসেট বায়াসের চারটি ঘোড়া
১) "বিনামূল্যের জিনিসপত্র বায়াস"
ইমেজ এর জন্য খোলা ওয়েব স্ক্র্যাপ করা মূলত পিক্সেলের জন্য ডাম্পস্টার-ডাইভিং (Dumpster-diving)। আপনি অনেক সেলিব্রিটির হেডশট, টেক কনফারেন্স ব্যাজ এবং পণ্যের ছবি পাবেন যা দেখে মনে হবে চাঁদে তোলা হয়েছে। প্রতিদিনের নোংরা বাস্তবতা? তেমন নয়। এটি আপনার মডেলকে কিছু নির্দিষ্ট মুখ, স্থান এবং ভাইবের দিকে ঝুঁকিয়ে দেয়।
২) "অ্যানোটেশন ড্রিফট"
দুজন লেবেলার (Labelers) একটি লেবেলিংয়ের কাজে যোগ দেয়। একজন হুডিকে (Hoodie) "স্পোর্টসওয়্যার" (Sportswear) হিসেবে ট্যাগ করে, অন্যজন বলে "ক্যাজুয়ালওয়্যার" (Casualwear), এবং তৃতীয়জন এটিকে "স্ট্রিটওয়্যার" (Streetwear) বলে। মডেলটি শেখে যে পোশাক একটি বিশৃঙ্খলা। আরও খারাপ, লেবেলাররা (Labelers) সাংস্কৃতিক অনুমান নিয়ে আসে—যেমন কাকে "বস" (Boss) মনে হয় বা কোনটি "স্বাভাবিক" চুলের স্টাইল হিসেবে গণ্য হয়।
৩) "কনটেক্সট ক্রাচ"
মডেলগুলো শর্টকাট (Shortcut) ভালোবাসে। যদি আপনার ডেটাসেটে শেফদের ৯০% ছবিতে পুরুষ থাকে, তাহলে মডেলটি "শেফ" (Chef) অনুমান করার জন্য লিঙ্গকে একটি শর্টকাট (Shortcut) হিসেবে ব্যবহার করবে। এটা বুদ্ধিমত্তা নয়; এটা একটা পক্ষপাতদুষ্ট চিট শিট (Cheat sheet)।
৪) "ডোমেইন মিসম্যাচ"
DSLR গ্ল্যাম শট (Glam shot) দিয়ে প্রশিক্ষণ দিন, নিম্ন-রেজোলিউশনের নিরাপত্তা ক্যামেরায় স্থাপন করুন। দিনের বেলার ছবি দিয়ে প্রশিক্ষণ দিন, রাতের বেলায় স্থাপন করুন। শহরের রাস্তায় প্রশিক্ষণ দিন, গ্রামের রাস্তায় স্থাপন করুন। আপনার মডেল মূলত চার্জার (Charger) ছাড়া ভ্রমণ করছে।
পিএইচডি (PhD) বা লাই ডিটেক্টর (Lie detector) ছাড়াই বায়াস চিহ্নিত করা
এখানে কিছু উপায় দেওয়া হল যার মাধ্যমে আপনি বুঝতে পারবেন আপনার AI ইমেজিং মডেলে বায়াস (Bias) রয়েছে কিনা।
- পারফরম্যান্স গ্যাপ: ডেমোগ্রাফিক, লাইটিং, জিওগ্রাফি অথবা ডিভাইসের প্রকার অনুসারে আপনার ভ্যালিডেশন মেট্রিক্সকে ভাগ করুন। যদি কিছু নির্দিষ্ট গ্রুপের জন্য অ্যাকুরেসি (Accuracy) একটি কেইস (Case) ছাড়া ফোনের মতো পরে যায়, তাহলে বুঝবেন এখানে বায়াস রয়েছে।
- কনফিউশন ম্যাট্রিক্স যা আপনাকে বিভ্রান্ত করে: যদি মডেলটি নির্দিষ্ট ক্লাসগুলোকে গুলিয়ে ফেলে—যেমন হিজাবকে টুপি মনে করে—তাহলে বুঝবেন ডেটাসেটে সমস্যা আছে।
- বৈশিষ্ট্য অ্যাট্রিবিউশন অডিট: Grad-CAM এর মতো টুল প্রকাশ করতে পারে যে আপনার "বিড়াল" ডিটেক্টর আসলে একটি সোফার প্যাটার্নকে চিহ্নিত করছে। অভিনন্দন, আপনি গৃহসজ্জার সামগ্রী চেনা শিখেছেন।
- বাস্তব-বিশ্ব পাইলট ড্রিফট: বন্য পরিবেশে ছোট পাইলট চালান। যদি মডেলটি ফ্লুরোসেন্ট আলোতে (Fluorescent lighting) একটি বেসমেন্টের (Basement) গাছের মতো আতঙ্কিত হয়ে যায়, তাহলে এর আরও বিভিন্ন ডেটার প্রয়োজন।
টুলকিট: কিভাবে ডেটাসেট বায়াস আপনার প্রোডাক্ট রোডম্যাপে (Product roadmap) আঘাত করার আগে কমাবেন
বায়াস প্রতিরোধের বিষয়টি একটি বাড়ির সংস্কারের মতো। আপনি মেরামত করতে পারেন, শক্তিশালী করতে পারেন অথবা ভেঙে নতুন করে তৈরি করতে পারেন। আপনার বাজেট: সময়, ডেটা এবং বিনয়।
১) একটি জাদুঘরের মতো তৈরি করুন (ফ্লি মার্কেটের মতো নয়)
- কাভারেজ (Coverage) নির্ধারণ করুন: ডেমোগ্রাফিক, আলোর পরিস্থিতি, ক্যামেরার ধরন, ভৌগোলিক অবস্থান এবং পরিবেশ লিখুন যা আপনার সিস্টেমকে সামলাতে হবে। যদি এটা লেখা না থাকে, তবে তা শুধু ইচ্ছাপূরণ।
- কোটা (Quota) নির্ধারণ করুন: হ্যাঁ, কোটা (Quota)। যদি আপনার ৩০% ব্যবহারকারী কম আলোতে থাকে, তাহলে আপনার ডেটাসেটের ৩০% কম আলোর ছবি হওয়া উচিত। একই নিয়ম স্কিন টোনের (Skin tone) রেঞ্জ (ফিটজপ্যাট্রিকের মতো স্কেল ব্যবহার করুন), বয়সের গ্রুপ, পোশাকের স্টাইল এবং সাংস্কৃতিক প্রেক্ষাপটের ক্ষেত্রেও প্রযোজ্য।
- একাধিক উৎস থেকে ডেটা সংগ্রহ করুন: স্টক ফটো (Stock photo) হল ডেজার্ট (Dessert)। আপনার ঘরে তৈরি খাবারেরও প্রয়োজন: ব্যবহারকারীর দেওয়া ছবি (সম্মতিসহ), বায়াস অডিট (Bias audit) সহ পাবলিক ডেটাসেট এবং কম প্রতিনিধিত্ব করা গ্রুপগুলো থেকে লক্ষ্যযুক্ত ডেটা সংগ্রহ।
২) একজন আইনজীবীর মতো লেবেল করুন (তবে বন্ধুত্বপূর্ণভাবে)
- পরিষ্কার ট্যাক্সোনমি: লেবেলিংয়ের (Labeling) জন্য একটি গাইড (Guide) লিখুন। না, একটি বাস্তব গাইড। প্রান্তিক কেইস (Case), উদাহরণ এবং কী করা উচিত নয়, তা অন্তর্ভুক্ত করুন। লেবেলারদের "ভাইব" (Vibe) কমান।
- বিভিন্ন অ্যানোটেটর (Annotators): আপনার অ্যানোটেটররা (Annotators) যদি একই তিনটি কফি শপে যায়, তাহলে আপনার লেবেলও (Label) একই হবে। ভৌগোলিক এবং সাংস্কৃতিক বৈচিত্র্য সাহায্য করে।
- চুক্তি পরীক্ষা: আন্তঃ-অ্যানোটেটর (Inter-annotator) চুক্তি পরিমাপ করুন এবং একজন প্রধান লেবেলারের (Labeler) সাথে মতবিরোধের বিচার করুন। ভুল সিদ্ধান্তের জন্য গড় করবেন না।
- সংবেদনশীল বৈশিষ্ট্য: যখন উপযুক্ত এবং সম্মতি থাকে, তখন মূল্যায়নের জন্য সুরক্ষিত-বৈশিষ্ট্য ট্যাগ সংগ্রহ করুন। প্রশিক্ষণ থেকে দূরে রাখুন যদি না আপনি নিয়ন্ত্রিত ন্যায্যতা হস্তক্ষেপ করছেন।
৩) একজন বিজ্ঞানীর মতো প্রশিক্ষণ দিন (সাথে স্ন্যাকস রাখুন)
- ভারসাম্যপূর্ণ স্যাম্পলিং: স্তরীভূত স্যাম্পলিং এবং ক্লাস রিওয়েটিং (Class reweighting) ব্যবহার করুন যাতে মডেলটি সংখ্যাগরিষ্ঠ ক্লাসে ডুবে না যায়।
- ডেটা অগমেন্টেশন (Data augmentation), দায়িত্বের সাথে: আলো, কোণ, অবরোধ এবং ব্যাকগ্রাউন্ড পরিবর্তন করুন। সিন্থেটিক ডেটা (Synthetic data) সাহায্য করতে পারে, তবে একটি গেম ইঞ্জিনকে আপনার পুরো বাস্তবতা উদ্ভাবন করতে দেবেন না।
- ডি-বায়াসিং (Debiasing) উদ্দেশ্য: ন্যায্যতা-সচেতন ক্ষতি বা সীমাবদ্ধতা অন্তর্ভুক্ত করুন যা গ্রুপগুলোর মধ্যে পারফরম্যান্সের ব্যবধান কম করে।
- ডোমেইন অ্যাডাপটেশন: যদি স্থাপনা অন্ধকার, গোলমালপূর্ণ বা নিম্ন-রেজোলিউশনের হয়, তাহলে সেই বিশ্বকে অনুকরণ করুন। আরও ভালো: সেই বিশ্বে সংগ্রহ করুন।
৪) একজন সমালোচকের মতো পরীক্ষা করুন
- স্লাইস-এন্ড-ডাইস (Slice-and-dice) মূল্যায়ন: উপগোষ্ঠী দ্বারা নির্ভুলতা, প্রিসিশন/রিকল (Precision/recall), এবং ক্যালিব্রেশন (Calibration) রিপোর্ট (Report) করুন। আপনি যদি এটি দেখতে না পান তবে এটি ঠিক করতে পারবেন না।
- কাউন্টারফ্যাকচুয়াল (Counterfactual) পরীক্ষা: বিষয় স্থির রেখে প্রেক্ষাপট পরিবর্তন করুন। একজন মহিলা ব্রিফকেস (Briefcase) ধরে থাকলে কি তিনি একজন “শিক্ষক” হয়ে যান, যেখানে একজন পুরুষ ব্রিফকেস (Briefcase) ধরে থাকলে তিনি একজন “CEO” হন? এটাই 4K-তে ধরা পড়া কনটেক্সট বায়াস।
- স্ট্রেস টেস্ট: আপনার মডেলের উপর বিরূপ আলো, মোশন ব্লার (Motion blur), তুষার, কুয়াশা, মাস্ক (Mask) এবং টুপি নিক্ষেপ করুন। মূলত নিউরাল নেটগুলোর (Neural net) জন্য হ্যালোইন।
৫) গুরুত্ব দিয়ে পর্যবেক্ষণ করুন
- ড্রিফট ডিটেকশন: লঞ্চের পরে ইনপুট ডিস্ট্রিবিউশনে (Input distribution) পরিবর্তন ট্র্যাক (Track) করুন। যখন আপনার অ্যাপটি (App) হঠাৎ করে ব্রাজিলে জনপ্রিয় হয়ে যায়, তখন আপনি জানতে চাইবেন।
- হিউম্যান-ইন-দ্য-লুপ: ব্যবহারকারীদের ত্রুটি এবং বায়াস ফ্ল্যাগ (Flag) করতে দিন, এবং রিপোর্টগুলো (Report) পড়ুন। এমনকি সবগুলো বড় হাতের অক্ষরে লেখাগুলোও।
- রিট্রেইন রিদম: রিফ্রেশগুলো (Refresh) নির্ধারণ করুন। বাসি মডেলগুলো (Model) সিনিয়রিটিসহ পক্ষপাতদুষ্ট মডেল।
বাস্তব-বিশ্ব পরিস্থিতি: যেখানে ডেটাসেট বায়াস ভাইব নষ্ট করে
- ডার্মাটোলজি AI: যদি আপনার প্রশিক্ষণের ছবিগুলোতে বেশিরভাগ হালকা স্কিন টোন (Skin tone) থাকে, তাহলে গাঢ় ত্বকের ক্ষতগুলো কম সনাক্ত করা হয়। সমাধান: বিভিন্ন জনসংখ্যার ক্লিনিক থেকে উৎসগুলোকে একত্রিত করুন এবং স্কিন টোনের (Skin tone) বিভাগ দ্বারা মূল্যায়ন করুন।
- খুচরা ক্ষতি প্রতিরোধ: পরিষ্কার, উজ্জ্বল দোকান থেকে পরীক্ষার ফুটেজে প্রশিক্ষিত মডেলগুলো ভিড়, আবছা দোকানগুলোতে ভুল করে। সমাধান: অঞ্চল এবং ঋতু জুড়ে বাস্তব দোকান থেকে সংগ্রহ করুন। এছাড়াও, হুডিকে অপরাধী করবেন না।
- কৃষি ইমেজিং: দিনের বেলায় ড্রোন (Drone) ছবিগুলোতে প্রশিক্ষিত একটি মডেল সন্ধ্যায় কীটপতঙ্গ সনাক্ত করতে পারে না। সমাধান: দিনের বিভিন্ন সময় এবং সেন্সর (Sensor) প্রকার (RGB + তাপীয়) অন্তর্ভুক্ত করুন। গাছপালারও রাতের জীবন আছে।
- ডকুমেন্ট স্ক্যানিং: কোঁকড়া চুল বা মাথার আচ্ছাদনীর কারণে পাসপোর্ট (Passport) সেলফি (Selfie) চেকগুলো ব্যর্থ হয়। সমাধান: প্রশিক্ষণ প্রসারিত করুন এবং স্পষ্টভাবে চুলের টেক্সচার এবং আচ্ছাদন মূল্যায়ন করুন। বোনাস: UI প্রম্পট (Prompt) এবং আলোর দিকনির্দেশনা উন্নত করুন।
কিছু ভুল ধারণা যা আমি শুনি (এবং হ্যাঁ, আমি প্রমাণ নিয়ে এসেছি)
- "বড় ডেটাসেট = কম বায়াস।" যদি আপনার বড় ডেটাসেট একই জিনিসের বেশি হয়, তাহলে আপনি সমস্যাটি আরও বড় করেছেন। এটা ভুল কফির ভেন্টি (Venti) অর্ডার করার মতো।
- "আমরা একটি চালাক অ্যালগরিদম (Algorithm) দিয়ে পোস্ট-প্রসেসিংয়ে (Post-processing) এটি ঠিক করব।" অ্যালগরিদম (Algorithm) বায়াস কমাতে পারে, কিন্তু আপনি একটি আলু পালিশ করে হীরা বলতে পারবেন না। ভালো আলু দিয়ে শুরু করুন—মানে, ডেটা।
- "ন্যায্যতা মানে সবার জন্য একই নির্ভুলতা।" কখনও কখনও সমতা হলো লক্ষ্য; কখনও কখনও সমান সুযোগ বা ক্যালিব্রেটেড (Calibrated) স্কোর বেশি গুরুত্বপূর্ণ। আপনি যে ক্ষতি প্রতিরোধ করতে চান তার সাথে মেলে এমন মেট্রিকস (Metrics) নির্বাচন করুন।
- "সিন্থেটিক ডেটা (Synthetic data) বৈচিত্র্য সমাধান করে।" এটি ফাঁক পূরণ করতে সাহায্য করে, কিন্তু জেনারেটর (Generator) যদি বাস্তব ছবি থেকে বায়াস (Bias) শেখে, তাহলে আপনি 4K-তে সমস্যাটি ক্লোন (Clone) করেছেন।
একটি বাস্তবসম্মত, ধাপে ধাপে বায়াস চেকাপ (Bias checkup) যা আপনি এই সপ্তাহে চালাতে পারেন
- আপনার ডেটাসেটের (Dataset) একটি তালিকা তৈরি করুন: এতে কে বা কারা আছে—ডেমোগ্রাফিক, আলো, ডিভাইস, অবস্থান—তার একটি সহজ টেবিল তৈরি করুন। লাল রঙ দিয়ে ফাঁকগুলো চিহ্নিত করুন। এমনভাবে কাজ করুন যেন আপনি নিজের মডেলকে গ্রেড (Grade) দিচ্ছেন।
- একটি ন্যায্য মূল্যায়ন সেট (Eval set) তৈরি করুন: আপনার পছন্দের গ্রুপগুলোর মধ্যে ১,০০০-১০,০০০ ছবি স্তরীভূত করুন। এটি আপনার বার্ষিক শারীরিক পরীক্ষা।
- দুটি বায়াস মেট্রিকস (Metrics) বাছাই করুন: উপগোষ্ঠীর নির্ভুলতা এবং ক্যালিব্রেশন ত্রুটি দিয়ে শুরু করুন। যদি আপনার অ্যাপটি (App) উচ্চ-ঝুঁকির হয় (চিকিৎসা, পরিচয়), তাহলে সমান সুযোগ বা মিথ্যা-নেতিবাচক হারের ব্যবধান যোগ করুন।
- থ্রেশহোল্ড (Threshold) সেট (Set) করুন: "সামগ্রিক নির্ভুলতার ৯৫% এর নিচে কোনও উপগোষ্ঠী নয়" - এটি একটি শুরু। এটি লিখে রাখুন। একটি দেয়ালে টেপ (Tape) দিয়ে লাগিয়ে দিন।
- ট্রায়াজ এবং রিট্রেইন: লক্ষ্যযুক্ত ডেটা সংগ্রহ করে ফাঁক পূরণ করুন, আপনার স্যাম্পলারকে (Sampler) রিওয়েট (Reweight) করুন এবং যেখানে আপনি স্থাপন করেন সেখানে ডোমেইন অগমেন্টেশন (Domain augmentation) চেষ্টা করুন। ন্যায্য মূল্যায়নটি (Eval) আবার চালান। যতক্ষণ না আপনার দেয়ালের পোস্টারটি আপনার উপর চিৎকার করা বন্ধ করে ততক্ষণ পর্যন্ত পুনরাবৃত্তি করুন।
সতর্ক থাকুন: প্রবিধান, নিরীক্ষা এবং কেন আপনার আইনি দল হঠাৎ করে লাঞ্চ ভালোবাসে
আইন এবং মান উন্নত হচ্ছে। ইমপ্যাক্ট অ্যাসেসমেন্ট (Impact assessment), প্রশিক্ষণ ডেটার ডকুমেন্টেশন (Documentation), এবং পোস্ট-ডিপ্লয়মেন্ট মনিটরিংয়ের (Post-deployment monitoring) জন্য প্রয়োজনীয়তা আশা করুন—বিশেষ করে স্বাস্থ্যসেবা, নিয়োগ এবং সরকারি খাতের ব্যবহারে। অনুবাদ: রেকর্ড (Record) রাখুন। ডেটাসেটের জন্য ডেটাসিট, মডেলের জন্য মডেল কার্ড এবং প্রতিটি বড় পরিবর্তনের জন্য একটি কাগজের প্রমাণ রাখুন। আপনার ভবিষ্যৎ সত্তা—এবং একজন নিয়ন্ত্রক—আপনাকে ধন্যবাদ জানাবে।
যখন আপনার স্প্রেডশিট (Spreadsheet) কাঁদতে শুরু করে তখন চেষ্টা করার মতো সরঞ্জাম
- বায়াস ইভালুয়েশন লাইব্রেরি: ওপেন-সোর্স টুলকিটগুলোর (Open-source toolkit) সন্ধান করুন যা উপগোষ্ঠীর মেট্রিকস, ক্যালিব্রেশন (Calibration) এবং ন্যায্যতা সীমাবদ্ধতা রিপোর্ট (Report) করে। এদের মধ্যে অনেকগুলি সাধারণ ML ফ্রেমওয়ার্কের (Framework) সাথে একত্রিত।
- ব্যাখ্যাযোগ্যতা: স্যালিয়েন্সি ম্যাপ, Grad-CAM, SHAP। মডেলটি আসলে কী দেখছে তা দেখতে এগুলো ব্যবহার করুন। যদি এটি লোগো (Logo) হয় এবং পণ্য না হয়, তাহলে আপনার একটি ক্রাশ সমস্যা আছে।
- ডেটা ব্রাউজার: যে সিস্টেমগুলো আপনাকে মেটাডেটা (Metadata) দ্বারা ফিল্টার (Filter) করতে, বিতরণ ব্যবধানগুলো দেখতে এবং প্রায়-ডুপ্লিকেট (Duplicate) চিহ্নিত করতে দেয়। কম ক্লোন (Clone) এবং আরও বেশি কাভারেজের (Coverage) লক্ষ্য রাখুন।
উল্লেখযোগ্য: ডেটাসেট নির্বাচন বা নিরীক্ষণ করার সময় আপনি যদি একটি যুক্তিসঙ্গত পরীক্ষা করতে চান, তাহলে Sider.AI আপনাকে দ্রুত বিতরণ তুলনা করতে, কম প্রতিনিধিত্ব করা স্লাইসগুলো হাইলাইট (Highlight) করতে এবং "উহ-ওহ" সম্পর্কগুলো প্রকাশ করতে সাহায্য করতে পারে উৎপাদন বাগ হওয়ার আগে। এটিকে এমন একজন বন্ধু হিসেবে ভাবুন যে আপনাকে বলে আপনার দাঁতে শাক আছে—ধীরে ধীরে এবং চার্টসহ। মানবিক দিক: দল বায়াস ঠিক করে, টুলবার নয়
- বিভিন্ন দল বিভিন্ন অন্ধ দাগ লক্ষ্য করে। আপনার দলের সবাই যদি একই তিনটি শহরে ছুটি কাটায়, তাহলে আপনার মডেলও তাই করবে।
- অনুপ্রেরণা গুরুত্বপূর্ণ। যদি সাফল্য শুধুমাত্র "সামগ্রিক নির্ভুলতা" হয়, তাহলে লোকেরা পক্ষপাতদুষ্ট মডেল পাঠাবে যা লিডারবোর্ড (Leaderboard) জেতে। ন্যায্যতার লক্ষ্য নির্ধারণ করুন এবং সেগুলো অর্জনের জন্য পুরস্কৃত করুন।
- ব্যবহারকারীদের সাথে কথা বলুন, বিশেষ করে যারা সবচেয়ে খারাপ ফলাফল পায়। আপনার ড্যাশবোর্ড (Dashboard) যা বলবে না, তারা আপনাকে তা বলবে।
দ্রুত জয় বনাম দীর্ঘ পথ: আপনার সময়সীমার উপর ভিত্তি করে কী করবেন
- আগামীকাল শিপিং করুন: আপনার সবচেয়ে খারাপ পারফর্ম করা উপগোষ্ঠীর জন্য লক্ষ্যযুক্ত অগমেন্টেশন (Augmentation) যোগ করুন, আপনার ক্ষতি রিওয়েট (Reweight) করুন এবং ড্রিফটের (Drift) জন্য সতর্কতা সহ একটি মনিটরিং ড্যাশবোর্ড (Monitoring dashboard) লাগিয়ে দিন।
- পরের মাসে শিপিং করুন: ফাঁকগুলোর উপর দৃষ্টি নিবদ্ধ করে একটি ছোট কিন্তু শক্তিশালী ডেটাসেট সংগ্রহ করুন, ন্যায্যতার সীমাবদ্ধতা দিয়ে রিট্রেইন (Retrain) করুন এবং একটি কাউন্টারফ্যাকচুয়াল (Counterfactual) পরীক্ষার স্যুট চালান।
- পরের ত্রৈমাসিকে শিপিং করুন: কোটা-ভিত্তিক স্যাম্পলিং, ক্রমাগত বায়াস মূল্যায়ন এবং প্রকাশের আগে একটি ক্রস-ফাংশনাল (Cross-functional) পর্যালোচনা অন্তর্ভুক্ত করতে আপনার ডেটা পাইপলাইন (Pipeline) পুনরায় ডিজাইন করুন।
চেকলিস্ট (Checklist) যা আপনি আসলে ব্যবহার করবেন
- আমরা কি জানি আমাদের ডেটাতে কে আছে এবং কে অনুপস্থিত?
- আমরা কি উপগোষ্ঠীর পারফরম্যান্সের (Performance) লক্ষ্য নির্ধারণ করেছি?
- আমাদের লেবেলগুলো (Label) কি সামঞ্জস্যপূর্ণ এবং সাংস্কৃতিকভাবে সচেতন?
- আমরা কি আমাদের ব্যবহারকারীরা যে পরিবেশে বাস করে সেখানে পরীক্ষা করেছি—শুধু আমাদের ল্যাবে নয়?
- যখন জিনিসগুলি ভুল হয় তখন আমরা কি মডেলের (Model) সিদ্ধান্তগুলি ব্যাখ্যা করতে পারি?
- লঞ্চের (Launch) পরে আপডেট (Update) এবং নিরীক্ষণের জন্য আমাদের কি কোনও পরিকল্পনা আছে?
এটি প্রিন্ট (Print) করুন। ফ্রেমে বাঁধুন। অথবা আপনার এসপ্রেসো মেশিনে লাগিয়ে দিন।
যখন বায়াস একটি বৈশিষ্ট্য, ত্রুটি নয়: সীমা সনাক্তকরণ
কিছু ইমেজিংয়ের (Imaging) কাজ সাংস্কৃতিক নিয়ম (ফ্যাশন, অঙ্গভঙ্গি, প্রতীক) এনকোড (Encode) করে যা সর্বজনীন নয়। কখনও কখনও সঠিক উত্তর হল এক-সাইজ-ফিটস-অল (One-size-fits-all) ন্যায্যতার পিছনে না ছুটে অঞ্চল, সংস্কৃতি বা ব্যবহারের কেইস (Case) অনুসারে মডেলগুলোকে স্থানীয়করণ করা। লক্ষ্য হল এমন একটি AI তৈরি করা নয় যা সবার সম্পর্কে সবকিছু জানে—বরং এমন একটি তৈরি করা যা জানে যে এটি কখন জানে না।
মূল কথা: আপনার AI কে একটি বুদ্বুদে বড় হতে দেবেন না
AI ইমেজিংয়ে (Imaging) ডেটাসেট বায়াস (Dataset bias) আপনার ক্যামেরাকে কাগজের তোয়ালে টিউবের (Towel tube) মাধ্যমে বিশ্ব দেখতে শেখানোর মতো: আপনি একটি সংকীর্ণ দৃশ্য এবং মাথাব্যথা পান। তবে আপনি এতে আটকা পড়বেন না।
- আপনার ডেটা নিরীক্ষণ করুন যেন এটি গুরুত্বপূর্ণ—কারণ এটি গুরুত্বপূর্ণ।
- সদিচ্ছা দিয়ে লেবেল (Label) করুন, সীমাবদ্ধতা দিয়ে প্রশিক্ষণ দিন এবং সন্দেহ দিয়ে পরীক্ষা করুন।
- বাস্তব জগৎ অনিবার্যভাবে আপনাকে অবাক করে দিলে পর্যবেক্ষণ করুন, শুনুন এবং ঠিক করুন।
এটি করুন, এবং আপনার AI শাড়িকে বাথরুমের আলখাল্লা এবং তিলকে ফল হিসাবে গুলিয়ে ফেলা বন্ধ করবে। এটি সম্ভবত মানুষকে সাহায্য করার জন্য যথেষ্ট ভাল হবে—নিরাপদে, ন্যায্যভাবে এবং বন্য, অগোছালো বাস্তবতায় যেখানে আমরা সবাই আসলে বাস করি।
এখন আপনার ডেটাসেট (Dataset) পরীক্ষা করুন। আমি অপেক্ষা করব। এবং আমি কোণে দাঁড়িয়ে আপনার মডেলকে ফিসফিস করে বলব: "এটা তুমি নও, এটা তোমার ট্রেনিং সেট।"
FAQ
Q1: সাধারণ ইংরেজিতে, AI ইমেজিংয়ে ডেটাসেট বায়াস কী?
যখন প্রশিক্ষণের ছবিগুলো বাস্তব বিশ্বের সাথে মেলে না—খুব কম স্কিন টোন (Skin tone), আলোর পরিস্থিতি বা প্রসঙ্গ থাকে। মডেলটি একটি সংকীর্ণ বাস্তবতা শেখে এবং যখন এটি সেই বুদ্বুদের বাইরের কিছু সম্মুখীন হয় তখন পক্ষপাতদুষ্ট বা ভুল ভবিষ্যদ্বাণী করে।
Q2: আমি শিপিং করার আগে কীভাবে ডেটাসেট বায়াস সনাক্ত করব?
আপনার মেট্রিকসকে উপগোষ্ঠী—ডেমোগ্রাফিক, আলো, ডিভাইস—অনুসারে ভাগ করুন এবং পারফরম্যান্সের ব্যবধানগুলি সন্ধান করুন। প্রসঙ্গ এবং লেবেলিংয়ের (Labeling) বায়াস দ্রুত ধরার জন্য কাউন্টারফ্যাকচুয়াল (Counterfactual) পরীক্ষা এবং একটি ছোট, কিউরেটেড (Curated) ন্যায্য মূল্যায়ন সেট (Eval set) যোগ করুন।
Q3: কম্পিউটার ভিশনে কি সিন্থেটিক ডেটা (Synthetic data) ডেটাসেট বায়াস ঠিক করতে পারে?
সিন্থেটিক ডেটা (Synthetic data) বিরল আলো বা কোণের মতো ফাঁক পূরণ করতে পারে, তবে এটি আপনার বিদ্যমান বায়াসকে ক্লোনও (Clone) করতে পারে। কম প্রতিনিধিত্ব করা পরিস্থিতিগুলিকে বাড়াতে এটি ব্যবহার করুন, বিভিন্ন বাস্তব-বিশ্বের ছবি প্রতিস্থাপন করতে নয়।
Q4: সবকিছু পুনর্নির্মাণ না করে বায়াস কমানোর দ্রুত উপায় কী?
ক্লাস রিওয়েট (Class reweight) করুন, লক্ষ্যযুক্ত অগমেন্টেশন (Augmentation) যোগ করুন এবং আপনার সবচেয়ে খারাপ পারফর্ম করা গ্রুপগুলোর উপর দৃষ্টি নিবদ্ধ করে একটি ছোট ডেটাসেট সংগ্রহ করুন। তারপর ন্যায্য-সচেতন ক্ষতির সাথে রিট্রেইন (Retrain) করুন এবং লঞ্চের (Launch) পরে ড্রিফট (Drift) নিরীক্ষণ করুন।
Q5: ইমেজিং বায়াস পরিমাপ করতে আমার কোন মেট্রিকস (Metrics) ব্যবহার করা উচিত?
উপগোষ্ঠীর নির্ভুলতা এবং ক্যালিব্রেশন (Calibration) ত্রুটি দিয়ে শুরু করুন, তারপর উচ্চ-ঝুঁকির কাজগুলির জন্য সমান সুযোগ বা মিথ্যা-নেতিবাচক হারের ব্যবধান বিবেচনা করুন। যে ক্ষতি আপনি সবচেয়ে বেশি প্রতিরোধ করতে চান তার সাথে সঙ্গতি রেখে মেট্রিকস (Metrics) বাছাই করুন।