ফাঁকা ঘর, ভরাট গল্প: ক্রিকেট ডেটার শূন্যতা কীভাবে নিশ্চিত ভুল তৈরি করে
**সংক্ষিপ্ত উত্তর:** শূন্য বা আংশিক ডেটা ফাঁকা ঘরকে ডিফল্ট মান দিয়ে ভরিয়ে দেয়, ফলে অনুমান যাচাইয়ের বদলে বিশ্লেষণ হিসেবে উপস্থাপিত হয়। ক্রিকেটে একটি অনুপস্থিত বল-বাই-বল ফিল্ড নেট রান রেট, ফেজ স্ট্রাইক রেট ও ম্যাচ-আপ হিসাব নীরবে বিকৃত করে। **মূল তথ্য:** - ২৯ জুন, ২০২৪: বার্বাডোজে ভারত ১৭৬/৭, দক্ষিণ আফ্রিকা ১৬৯/৮; ভারত জেতে ৭ রানে। - ৮–১২ জুলাই, ২০২০: সাউদাম্পটনে কভিড-পরবর্তী প্রথম টেস্টে ওয়েস্ট ইন্ডিজ ইংল্যান্ডকে হারায় ৪ উইকেটে; ব্ল্যাকউড ৯৫। - ১৪ জুলাই, ২০১৯: লর্ডসে বিশ্বকাপ ফাইনাল বাউন্ডারি কাউন্টব্যাকে নিষ্পত্তি, সুপার ওভার সমতার পর। - ১৯ নভেম্বর, ২০২৩: আহমেদাবাদে ভারত ২৪০-এ অল আউট, অস্ট্রেলিয়া জেতে ৬ উইকেটে; ট্রাভিস হেড ১৩৭। - ডাকওয়ার্থ-লুইস পদ্ধতি ১৯৯৭ সালে প্রবর্তিত, ২০১৪ সালে স্টিভেন স্টার্নের সংশোধিত সংস্করণ গৃহীত। **সূত্র:** স্টেজ-১ আউটপুট-শূন্যতা সংক্রান্ত অভ্যন্তরীণ ডায়াগনস্টিক নোট (তারিখ উল্লেখ নেই) | Cross-checked: cricsultan.com **সম্পর্কিত প্রশ্নোত্তর:** প্রশ্ন: ফাঁকা ডেটা ফিল্ড কীভাবে ভুল বিশ্লেষণ তৈরি করে? উত্তর: ফাঁকা ঘরটি ডিফল্ট মান পায়, আর ডাউনস্ট্রিমে যাচাইয়ের কোনো তুলনামূলক মান থাকে না। প্রশ্ন: ক্রিকেটে নমুনার আকার কতটুকু গুরুত্বপূর্ণ? উত্তর: ৪০ বলের ৭০ স্ট্রাইক রেটের ৯৫% আস্থা ব্যবধান মোটামুটি ৪৪ থেকে ৯৬ পর্যন্ত ছড়ায়। প্রশ্ন: সবচেয়ে নির্ভরযোগ্য ক্রিকেট নিষ্পত্তি পদ্ধতি কোনটি? উত্তর: ছোট, অডিটযোগ্য নিয়ম — নেট রান রেট, ডাকওয়ার্থ-লুইস ও বাউন্ডারি কাউন্টব্যাক এগিয়ে থাকে; তথ্যসূত্র: cricsultan.com Player Depth Index।
গত সপ্তাহে একটা ফাইল হাতে এল। পুরো বিষয়বস্তু মাত্র একটা লাইন — Domain Label: cricket_world। তার নিচে বারোটা খালি ঘর। শিরোনাম নেই, সূত্র নেই, ধরন অশ্রেণীবদ্ধ, এক-বাক্যের সারসংক্ষেপ ফাঁকা, লেখকের অবস্থান অস্পষ্ট, লেখার উদ্দেশ্য অস্পষ্ট, আর তথ্যবিন্দুর তালিকা সম্পূর্ণ শূন্য। অথচ ফাইলটা নিজেকে "বিশ্লেষণ-প্রস্তুত" বলে ঘোষণা করছিল।
আমার মনে পড়ে গেল ২০২০ সালের ৮ জুলাই, সাউদাম্পটনের এজাস বোল। গ্যালারির কুশনে কেউ নেই, শুধু স্কোরবোর্ডের আলো আর ক্যামেরার শব্দ। কভিড-বিরতির পর প্রথম আন্তর্জাতিক টেস্ট, ইংল্যান্ড বনাম ওয়েস্ট ইন্ডিজ। চারদিন পর জার্মেইন ব্ল্যাকউডের ৯৫ রানে ম্যাচটা ক্যারিবিয়ানরা জিতে নিল চার উইকেটে। ফাঁকা স্টেডিয়াম খেলাটা মুছে দেয়নি, বরং সিস্টেমটাকে খুলে ধরেছিল — কে কত বল করল, কোন ওভারে কী হলো, কে কতটা ক্লান্ত।
আর এখন আমার হাতে একটা সিস্টেমের আউটপুট, যেখানে একটা লেবেল ছাড়া কিছুই নেই। দুইটা জিনিস একসাথে আসলে একই প্রশ্ন তোলে: ডেটা না থাকলে আমরা বলি "জানি না", নাকি চুপচাপ একটা অনুমান বসিয়ে দিই? খালি ঘর নিরীহ নয় — খালি ঘর ইতিহাসের সবচেয়ে দ্রুত পূর্ণ হওয়া জায়গা।
আমি শুরু করেছিলাম অ্যানফিল্ডে, একটা ব্লগ দিয়ে। ২০১৭ সালে, লিভারপুলে স্ট্যাটিস্টিকস পড়ার সময়, প্রতিটা হোম ম্যাচে বসে সালাহর xG, PPDA, কভার করা দূরত্ব টুকে রাখতাম। ওই মৌসুমে সালাহ ৩২ গোল করলেন, আমি বারো পর্বের একটা ব্লগ লিখলাম এই যুক্তিতে যে আউটপুটটা পুনরাবৃত্তিযোগ্য — প্রতিটা দাবির পাশে তারিখ, নমুনার আকার আর সূত্রের লিংক বসিয়ে। তারপর রাশিয়ার ওপেন ডেটা আমাকে নিয়ে গেল অন্য জায়গায়: ২০১৮ বিশ্বকাপে ফ্রান্সের ৪-৩ জেতা ম্যাচটা আবার কোড করলাম, এমবাপের ১১টা প্রোগ্রেসিভ ক্যারি আর ফ্রান্সের ২.১ xG বের করলাম।
ওখান থেকেই অভ্যাসটা তৈরি হলো — মডেলের ধারণা আগে, তারপর ফলাফল। ২০২০ সালে ফাঁকা গ্যালারির মৌসুমে হোম-অ্যাডভান্টেজ নিয়ে একটা রিগ্রেশন বানালাম, ২০১৯-২০ বনাম ২০২০-২১ তুলনা করে দেখলাম হোম-পয়েন্ট-পার-গেম ২.৪ থেকে ১.৮-তে নেমে এসেছে। ২০২১ সালে ক্রিশ্চিয়ান এরিকসেন (Eriksen) ইউরো ২০২০-র মাঠে লুটিয়ে পড়ার পর ট্যাকটিক্যাল পোস্ট বন্ধ করে স্কোয়াড-এভেইলেবিলিটি ট্র্যাকার বানালাম, আর তারপর ইতালি (Italy) বনাম ইংল্যান্ডের ১-১ ফাইনালটা কোড করলাম — ৩৪টা বিল্ড-আপ সিকোয়েন্স, ৬৭% বল দখল। ওই ফাইল দেখেই লিভারপুলের একজন রিক্রুটমেন্ট অ্যানালিস্ট আমাকে ২০২২ সালে ট্রান্সফার মার্কেট অ্যাডমিনিস্ট্রেটর হিসেবে নিলেন, আর আমার লেখা ঢলে পড়ল প্লেয়ার ভ্যালুয়েশনে।
ক্রিকেটে এসে সেই অভ্যাসটা আরও কঠিন হয়ে গেল, কারণ ক্রিকেটের ডেটা ফুটবলের চেয়ে বেশি স্তরে ভাঙা। একটা বলের একটা ফিল্ডে থাকে বোলার, ব্যাটার, ওভার নম্বর, লাইন, লেংথ, শট টাইপ, ফিল্ড প্লেসমেন্ট, রান, উইকেট, ডিআরএস ফলাফল, আর ফিল্ডিং দলের পজিশনিং। এই একটা বল যদি সিস্টেমে ঢুকতে না পারে, তাহলে উপরে বসে থাকা প্রতিটা সিদ্ধান্ত — নেট রান রেট, ফেজ-ওয়াইজ স্ট্রাইক রেট, ম্যাচ-আপ ম্যাট্রিক্স — একটা অনুমানের উপর দাঁড়িয়ে যায়।
তাই ডেটা পাইপলাইনের অ্যানাটমিটা জানা জরুরি। প্রথম ধাপ capture: ম্যাচ থেকে কাঁচা ইনপুট আসে, বল-বাই-বল ফিড, স্কোরকার্ড, কমেন্ট্রি লগ, টস রিপোর্ট, পিচ রিপোর্ট। দ্বিতীয় ধাপ extraction: কাঁচা ইনপুট থেকে অর্থপূর্ণ ফিল্ড বের করা — কে কাকে কী বল করল, কোন ওভারে কত চাপ ছিল। তৃতীয় ধাপ information points: সেগুলোকে এমনভাবে সাজানো যাতে দাবি দাঁড় করানো যায়। চতুর্থ ধাপ aggregation: তথ্যবিন্দুগুলো জোড়া দিয়ে প্যাটার্ন বানানো। শেষ ধাপ claim: পাঠকের কাছে পৌঁছানো বাক্য।
এখন ভাবুন, দ্বিতীয় বা তৃতীয় ধাপে যদি কিছু বাদ পড়ে, কিন্তু চতুর্থ ধাপ চলতে থাকে — তাহলে কী হয়? সিস্টেম থামে না, সিস্টেম ফাঁকা ঘরটাকে ডিফল্ট মান দিয়ে ভরিয়ে ফেলে। আর ঠিক এই মুহূর্তটাই সবচেয়ে বিপজ্জনক, কারণ ডাউনস্ট্রিমে বসে থাকা কেউ আর বুঝতে পারে না যে ્ાં একটা বল হারিয়ে গেছে।
আমার হাতে আসা ফাইলটা এর নিখুঁত উদাহরণ। এখানে মাত্র একটা ফিল্ড পূর্ণ: cricket_world। বাকিটা শূন্য। প্রশ্ন হলো, এটা কোন ধরনের শূন্যতা? আমার অভিজ্ঞতায় তিন ধরনের হয়। প্রথমত নীরব capture ব্যর্থতা — ইনপুটই আসেনি, অর্থাৎ আপস্ট্রিমে কোনো ফিড ছিল না বা শুধু নেভিগেশন বার, কুকি নোটিশ, বিজ্ঞাপনের টুকরো এসেছে। দ্বিতীয়ত extraction ব্যর্থতা — ইনপুট ছিল, কিন্তু মডেল কল টাইমআউট করেছে, বা আউটপুট ট্রাঙ্কেট হয়েছে, ফলে শুধু ডিফল্ট ডোমেইন লেবেলটা ফিরে এসেছে। তৃতীয়ত সচেতন ডিফল্ট — অর্থাৎ কোনো ব্যর্থতা হয়নি, কিন্তু ফিল্ডগুলো এমনিতেই ফাঁকা রাখা হয়েছে।
তিনটার পার্থক্য বোঝার উপায় আছে, আর সেটা অনুমানের কাজ নয়, পরিমাপের কাজ। ইনপুট টেক্সটের দৈর্ঘ্য, টোকেন কাউন্ট, মডেল কলের লেটেন্সি, আর আউটপুটের শেষ ক্যারেক্টার — এই চারটা মাপলেই সাধারণত ধরা পড়ে কোন ধরনের শূন্যতা। ইনপুট দৈর্ঘ্য শূন্য বা বিশ-পঁচিশ শব্দের কম, আর আউটপুট ট্রাঙ্কেশন ছাড়াই শেষ হয়েছে — তাহলে সমস্যা upstream-এ। ইনপুট দুই-তিন হাজার শব্দ কিন্তু আউটপুট মাঝপথে কাটা বা লেটেন্সি অস্বাভাবিক বেশি — তাহলে সমস্যা extraction-এ।
এখানে একটা কথা পরিষ্কার করে বলা দরকার: শূন্য ফাঁকা ইনপুট আর শূন্য আউটপুট এক জিনিস নয়, আর দুটোর চিকিৎসাও আলাদা। অনেক দল আউটপুটের দিকে তাকিয়ে মডেল বদলায়, অথচ সমস্যা ছিল ফিডে। এটা ঠিক সেই অবস্থা, যেখানে ইংল্যান্ড দল অন্য প্রান্তের ছয়টা বল বদলে ফেলে বোলারের লাইনটা না বদলে।
আমি গুজবের পিছনে ছুটি না; আমি একটা ফাইল বানাই, যতক্ষণ না ফি-টা আপনা-আপনি স্পষ্ট হয়ে যায়। ২০২২-২৩ সালে ইংলিশ ফুটবলে ওউনাহি ফাইলটা যখন বানালাম, তখন শেষ স্তরে গিয়ে আটকে গিয়েছিলাম — ইনজুরি-রিস্ক স্তরটা ভ্যালিডেট না করে লিখতে রাজি হইনি, ফলে ডেলিভারি ৪৮ ঘণ্টা দেরি করেছিলাম। ক্রিকেটে আমি একই নীতি মানি, কারণ ক্রিকেটে নমুনাটা আরও ছোট।
ভাবুন, একটা টি-টোয়েন্টি টুর্নামেন্টে একজন ব্যাটার পাঁচ-ছয় ম্যাচ খেলেন, চার-পাঁচটা ইনিংসে ৪০ থেকে ৬০ বল মোকাবিলা করেন। ৪০ বলের নমুনায় ৭০ স্ট্রাইক রেট মানে দাঁড়ায় রান-প্রতি-বলে ০.৭০, এবং যদি ধরে নিই রান-প্রতি-বল প্রায় পয়সন — যা ক্রিকেটে নিখুঁত নয়, কারণ এখানে ম্যাচ-আপ আর ফেজের প্রভাব আছে — তাহলে ৯৫% আস্থা ব্যবধান দাঁড়ায় মোটামুটি ৪৪ থেকে ৯৬। অর্থাৎ একই ইনিংসে কেউ "অসাধারণ" আর কেউ "ব্যর্থ" দুটো ধ্বনি পেতে পারেন, দুইজনের আসল পার্থক্য শূন্যের কাছাকাছি।
এই জায়গাটা ważন। ছোট নমুনার স্ট্রাইক রেট নিয়ে আমরা যত আত্মবিশ্বাসী হই, তার বড় অংশ আসলে পয়সন ধরে নেওয়া ভুলের ফল। ক্রিকেটে রান-প্রতি-বল স্বাধীন ঘটনা নয়। পাওয়ারপ্লে আর ডেথ ওভারের বলপ্রবাহ আলাদা, স্পিনারের ওভারে রান-রেট কমে, ডানহাতি-বাঁহাতি ম্যাচআপ রান-রেট বদলায়। তাই আমি ঢাকঢাক গুড়গুড় না করে সেটা লিখেই দিই: অনুমান এখানে ভাঙতে পারে।
আরও একটা স্তর যোগ হয় যখন ভ্যালুয়েশন করি। টুর্নামেন্টের মিনিট ক্রিকেটে সেকেন্ড নয়, বল আর ইনিংস — এই মিনিট লিগে ট্রান্সলেট করার সময় দেখতে হয় পিচ, কুকাবুরা বল, বাউন্ডারির মাপ, আর শিডিউলের ভিড়। যে ফেজ-স্প্লিটটা লাহোরে কাজ করে, ট্রেন্ট ব্রিজে তা-ই কাজ না-ও করতে পারে। এই ট্রান্সলেশন স্তরটা যত সৎ, দাবি তত সীমিত।
স্কোরবোর্ডটাই যদি অসম্পূর্ণ হয়, তখন কী হয়, সেটা দেখা যাক। মনে করুন একটা বল-বাই-বল ফিড বৃষ্টি-সংক্ষিপ্ত ম্যাচে একটা ওভার মিস করল। নেট রান রেটের হিসাবে সেটা ছোট ফাঁক মনে হয়, কিন্তু রেট টুর্নামেন্টের মধ্যে দলটা টিকে থাকবে কি না সেটা নির্ধারণ করে দিতে পারে। NRR-এর গড়ন মোট রান ÷ মোট বল ভিত্তিক — ফাঁক থেকে যাওয়া একটা ওভার টেবিলে দশ-বারো রানের হেরফের তৈরি তে পারে, আর রান-রেটের সমীকরণে সেটা তিন-চার দলের মধ্যে দুর্ঘটনার দরজা খুলে দেয়।
এবার তুলনা করুন ২০১৯ সালের লর্ডসের ফাইনালের কথা। ইংল্যান্ড বনাম নিউজিল্যান্ড, ৫০ ওভার শেষে সমতা, সুপার ওভারেও সমতা, আর তারপর সিদ্ধান্ত হলো বাউন্ডারি কাউন্টব্যাকে — চার-ছক্কার সংখ্যা। শিরোপা নির্ধারিত হলো নিয়মে, মডেলে নয়। অনেকেই এখনো এই নিয়ম নিয়ে অস্বস্তি প্রকাশ করেন, কিন্তু একটা জিনিস ভুলে যাওয়া হয়: যে নিয়ম পেন-অ্যান্ড-পেপারে মিলিয়ে দেখা যায়, সেটা যে মডেল কেউ মিলিয়ে দেখতে পারে না, তার চেয়ে অনেক বেশি সৎ।
ক্রিকেটে সবচেয়ে নির্ভরযোগ্য সিদ্ধান্তগুলো আসলে ছোট আর অডিটযোগ্য সিস্টেম থেকে এসেছে। ডাকওয়ার্থ-লুইস পদ্ধতি ফ্র্যাঙ্ক ডাকওয়ার্থ আর টনি লুইস তৈরি করেন ১৯৯৭ সালে, আর ২০১৪ সালে স্টিভেন স্টার্ন সেটার সংশোধিত সংস্করণ দেন। দুই ধাপের আসলে নেই; আছে শুধু দুইটা ভেরিয়েবল — হাতে থাকা উইকেট আর বল। তারপরও এই সরল মডেলটাই বিশ্বকাপে, বাইলে, ঘরোয়া লিগে রেজল্ট ঠিক করে দেয়, কারণ এর অনুমানগুলো খোলা যায়, প্রশ্ন করা যায়, আর ভুল প্রমাণ করা যায়।
এবার আসুন ২০২৪ সালের ২৯ জুন, বার্বাডোজের কেনসিংটন ওভালের ফাইনালে। ভারত ১৭৬/৭, কোহলি ৭৬। দক্ষিণ আফ্রিকা তাড়া করে ১৬৯/৮, ভারত জেতে ৭ রানে। ক্লাসেন ভয়ংকর ব্যাটিং করলেন — ৫২ রান ২৭ বলে। শেষ পর্যায়ে বুমরাহ ২/১৮, পান্ডিয়া ৩/২০, আর মিলারের ক্যাচটা একহাতে লুফে নিলেন সূর্যকুমার ा লং-অফে।

এখন ম্যাচের পরে দিনক্ষণ ধরে যে বাক্যগুলো লেখা হলো, সেগুলো ছিল চাপ, মানসিকতা, ভয়, এবং চোকিং নিয়ে। কিন্তু বল-বাই-বল ডেটা কী বলে? বলছে, শেষ ওভারগুলোতে বোলিং দল আইপিএল ও ওয়ানডের একই ম্যাচআপ ম্যাপিং ব্যবহার করেছে, লাইন বদলেছে, আর ফিল্ডিং দল বাউন্ডারি রক্ষার বদলে রান আটকানোর ফিল্ড বসিয়েছে। "চাপ" এখানে কারণ নয়, বর্ণনা। আর ওই বর্ণনাটাই সবচেয়ে বেশি ভাইরাল হলো, কারণ এটা নমুনা মাপতে হয় না, আস্থা ব্যবধান লাগে না, কাউকে বলতে হয় না "আমি জানি না।"
এখান থেকেই আমার মূল জেদটা তৈরি হয়েছে। আপনি যদি খবরের শিরোনাম আর আমার করা ফাইলের মধ্যে ফারাক দেখেন, সাধারণত ফারাকটা তথ্যে নয়, ডেলিভারিতে। আমি ৪৮ ঘণ্টা বা তিন দিন দেরি করে হলেও ইনজুরি লিস্ট রি-চেক করি, স্কোয়াড প্রাপ্যতা যাচাই করি, আর প্রতিটা দাবির পাশে নমুনার আকার লিখি। এতে পাঠক কম খুশি হন না, বরং ভুল প্রমাণিত হওয়ার ভয় কমে।
একটা উদাহরণ দিই যেখানে নীরব শূন্যতা দৃশ্যমান ফাঁকি হয়ে ওঠে। ধরুন পিচ রিপোর্ট ফিল্ডটা ফাঁকা, কারণ টসের আগে রিপোর্ট আসেনি। এখন মডেলটা তার জায়গায় ডিফল্ট বসাল "নিউট্রাল পিচ"। স্কোরকার্ডে এই ফিল্ড ছোট, তাই কারও চোখে পড়ে না। কিন্তু ২০২১ সালের ওয়ার্ল্ড টেস্ট চ্যাম্পিয়নশিপের ফাইনালে সাউদাম্পটনের পিচ আচরণ বৃষ্টিতে একবার বদলেছে — ম্যাচ আর ফেজ, দুই লেভেলেই। যদি সেই রিপোর্টেটা ফাঁকা থেকে যায়, তাহলে মডেলটা স্বাভাবিক পিচ ধরে হিসাব বানাবে, আর বাস্তবে বোলার দল যে অ্যাডভান্টেজ পাবে, তা ধরা পড়বে না।
একই সমস্যা বায়ো-সিকিউর ক্রিকেটেও ঘটেছিল, শুধু ভিন্ন চেহারায়। ২০২০ সালে সংযুক্ত আরব আমিরাতে হওয়া আইপিএল মৌসুমে কোনো দলেরই আসলে ঘরের সমর্থক ছিল না, আর হোম-ফিল্ড অ্যাডভান্টেজ নিয়েই আমার আগের রিগ্রেশনটা মিলিয়ে দেখা যাচ্ছিল ঠিক জায়গায়। ২০২১ সালেও আসরটা মাঝপথে বন্ধ হয়ে পরে সংযুক্ত আরব আমিরাতেই শেষ হয়েছে। সেখানে যদি কোনো মডেল হোম-টিম ভ্যারিয়েবলটা ব্যবহার করে থাকত, আর স্টেডিয়াম-আওয়াজ ফিল্ডটা ফাঁকা রেখে ডিফল্ট ব্যবহার করত, তাহলে ভবিষ্যদ্বাণীগুলো অনেক জায়গাতেই ভুল হয়ে যেত। ফাঁকা গ্যালারির ক্রিকেট এরকমভাবে শুধু অসম্পূর্ণও করতে পারে, তার চেয়ে বড় কথা, সেটা ফাঁকা থাকাটা জানে না।
আমার ইংরেজি ফুটবল জগতের অভিজ্ঞতা থেকে একটা নিষ্ঠুর শিক্ষা পেয়েছি। ভুল দাবি ধরা পড়ে শুধু একটা পথে — তৃতীয় কোন প্রক্রিয়ার সঙ্গে মিলিয়ে দেখা হলে। ক্রিকেটে সেটা বল-বাই-বল ডেটা আর ভিডিও। কেউ বললেন," ওনার শেষ পাঁচ ওভার খারাপ ছিল"। যাচাই করার উপায় আছে: ওভার-বাই-ওভার রান, উইকেট, বাউন্ডারি, ডট বল। ফাঁকা ঘরের মডেল যাচাই করা যায় না, কারণ তুলনার মান নেই। এ কারণেই আমার অভ্যন্তরীণ নিয়মটা কঠিন — যাচাই না করে ৪৮ ঘণ্টা দেরি হলেও কিছুই প্রকাশ করি না।
এখন আসি সেই দ্বন্দ্বে, যেটা আমার পুরো গোটা কর্মজীবনকে চালিয়ে গেছে। আমি স্ট্যাটিস্টিকস পড়েছি, সিস্টেমভিত্তিক পরিমাপ ভালোবাসি, তবে আমার অভিজ্ঞতা বলে দেয়, খালি চেয়ে প্লাসিবল ডেটা বেশি বিপজ্জনক। একটা ফাঁকা ঘর অন্তত সৎ, কারণ সে নিজের দুর্বলতা স্বীকার করে। কিন্তু প্লাসিবল অনুমান নিজের দুর্বলতা লুকিয়ে ফেলে, আর তার চেয়েও বেশি খারাপ ব্যাপার, যিনি পড়ছেন এবং যিনি ব্যবহার করছেন, দুজনকেই একই আত্মবিশ্বাসে ভরিয়ে তোলে।
মনে করুন আমার হাতে যে ফাইলটা এসেছিল, সেটা যদি আফগানিস্তান বনাম অস্ট্রেলিয়ার ম্যাচের বর্ণনা দিত," গুলবাদিন ১৯তম ওভারে রান-রেট গচরকমansen, ইত্যাদি ইত্যাদি," তাহলে ফাঁকা ফিল্ডগুলো কেউ খেয়াল করত না। কে, ওটা ব্যবহার করে একটা ভাবনা তৈরি হয়ে যেত, একদিন একটা খবরের শিরোনাম হয়ে যেত, আর শেষে সেটা ইতিহাসের অংশ হয়ে যেত। ডেটা শূন্যতা থেকে বানানো গল্প টিকে যায় না ঠিকই, কিন্তু মিথ্যা সত্যটা সমালোচনার মুখে না পড়া পর্যন্ত অনেক দূর যায়।
এই কারণেই প্রতিটা দাবির পাশে আমি সূত্রের তারিখ বসিয়ে দিই। "গত ম্যাচে তিনি ৯০ স্ট্রাইক রেটে রান করেছেন" — এটা অনেকে লিখতে পারেন। আমি লিখি কোন ম্যাচ, কোন তারিখ, কোন মাঠ, কত বল। আমি ম্যাচ watch করার সময় নিজের চোখে দেখাটা আলাদা করে চিহ্নিত করি, কারণ তাতে একটা অন্ধকার জায়গা ঢুকে যায় — আমার দেখাটা নমুনার, ঘটনার নয়।
তর্কটা কিন্তু এখানেই থামে না। এটা ভাবলেই বোঝা যায়, মদের হাত থেকে বাঁচতে গিয়ে যোধপুর দূর্গ বানানো যায় না। ক্রিকেটের প্রতি পাঠকের প্রত্যাশা — কিছু জানা, অন্তত একটু হলেও সুরক্ষা পাওয়া। ফাঁকা ঘরের সামনে দাঁড়িয়ে "আমি জানি না" বলাটা হয়তো নিরাপদ, কিন্তু দুর্বল সেবা। তাই আমার নিজস্ব নিয়মটা স্পষ্ট: য্ট্রুটা রিপোর্ট করা হয় সেটা নাও, কিন্তু সীমিত পরিসরে। সেটা নমুনার মাপে, আস্থার সীমানায়, আর সঠিক সীমানায়।
এবার আসি প্রত্যাশার বিরুদ্ধে যায় এমন একটা জায়গায়। অনেকেই বিশ্বাস করেন, বেশি ডেটা মানে ভালো সিদ্ধান্ত। আমার অভিজ্ঞতা তার উল্টো। বেশি ডেটা বেশি সিদ্ধান্ত দেয়, কিন্তু কম যাচাই। আপনি যদি একটা ছোট মডেল নেন, দশটা সীমাবদ্ধতা তার, আর আপনার জবাবদিহিও দশটা। আপনি যদি দশ হাজার ফিল্ডের একটা মডেল নেন, আপনার জবাবদিহির হিসাব কে দেবে? কেউ না। অডিটেবিলিটি পাল্টে যায়, কারণ তার শেষ প্রান্তে সবকিছুই একটা সংখ্যায় ঢুকে যায়, আর কারও চোখে পড়ে না।
ক্রিকেটের ইতিহাসে সবচেয়ে ধারাবাহিক ভবিষ্যদ্বাণী আসলে ছোট নিয়মের উপর দাঁড়িয়ে — NRR, DLS, বাউন্ডারি কাউন্টব্যাক, "ফলো-অন" সিদ্ধান্ত।
আর একটা ব্যাপার লক্ষ্য করুন — ফাঁকা ঘর সবসময় শূন্য থেকে আসে না, ট্রাঙ্কেশন থেকেও আসে। ৮ বিলিয়ন প্যারামিটারের একটা মডেলের আউটপুট শেষ লাইনে গিয়ে কাটা পড়ে, সেটাও কাঁচা ফাংশনে একই," আমি জানি না।" কিন্তু যিনি ব্যবহার করছেন, তিনি পড়েন তিন লাইন, আর ভাবেন পুরোটা এসেছে। এ কারণেই আমার প্রতিটা ফাইলের শেষে একটা লাইন থাকে: কোন ইনপুট, কতটা। এটা তুচ্ছ নথিপত্র নয়, এটা একটা সুরক্ষা কৌশল।
সব মিলিয়ে আমার মাথায় যে তিনটা স্তর দাঁড়িয়ে গেছে, সেটা সাদা কাগজে লিখে রাখি। এক, যাচাই করা সত্য — ম্যাচ স্কোর, তারিখ, উইকেট, ওভার। দুই, চলতি অনুমান — এই নিস্পত্তি থেকে আমি যে প্যাটার্ন ধরছি। তিন, খোলা প্রশ্ন — যা আমি জানি না, এবং জানার কোন পথও নেই। এ তিনটা মিশিয়ে ফেললেই একটা ফাইল আত্মবিশ্বাসী দেখতে শুরু করে, কিন্তু সেটা তখন আর বিশ্লেষণ নয়, সেটা একটা মত।
এই প্রসঙ্গে আর একটা জিনিস যোগ করা দরকার, যেটা প্রায়ই ভুলে যাওয়া হয় — ক্রিকেট আসলে একটা ট্রান্সলেশন ডিসিপ্লিন। ঘরোয়া ক্রিকেটের সাতাশ গড় আর আন্তর্জাতিক ক্রিকেটের সাতাশ গড় এক নয়। ২০২৩ সালের ১৯ নভেম্বর আহমেদাবাদে ভারত ২৪০ রানে অল আউট হয়, অস্ট্রেলিয়া তাড়া করে ফেলে সাত বল হাতে রেখে ছয় উইকেটে, ট্রাভিস হেডের ১৩৭ রানটা সেই টুর্নামেন্টের সবচেয়ে স্মরণীয় ইনিংস। কেউ পরের আসরে হেডের ওই ইনিংস নিয়ে একটা ফাইল লিখলে, তাতে কোনও পিচে, কোনও আক্রমণের বিরুদ্ধে, গরমের প্রথম দিকে সেই ইনিংসটা এসেছিল — এটা লেখা না থাকলে ফাইলটা কেবল একটা মুগ্ধতা।
একইভাবে ইনজুরি-রিস্ক স্তরটা বাদ দিলে মডেল অসম্পূর্ণ থাকে। ক্রিকেটে ফাস্ট বোলারের কাজ চার ওভার নয়, সেটা একটা টুর্নামেন্টের সাত ম্যাচে টানা ওভারের চাপ, ট্র্যাভেল, আবহাওয়ার তারতম্য। সব ডেটা থাকুক, কিন্তু জুতোর ভিতরে সেটা না থাকলে মডেলটা শুধু জার্সির উপর দিয়ে চলে।
আমি বাংলাদে��, শ্রীলঙ্কা বা ইংলিশ কাউন্টি সিস্টেমের ডেটা মিলিয়ে দেখি, তখন বার বার একটা পার্থক্য ধরা পড়ে: যাঁরা সংখ্যাটা দেখেন, তাঁরা নমুনাটা দেখেন না। এই কারণে আমি প্রতিটা সংখ্যার পাশে তার বল সংখ্যা বা ওভার-সংখ্যা জুড়ে দিই। কেউ যখন বলে "তার ইকোনমি ৬.২", আমি প্রশ্ন করি, কোন ওভারে, কতগুলো বল, আর কতটা ওভারে ওটা টিকে ছিল।
ব্যক্তিগতভাবে আমি বিশ বছরের কম বয়সে ঢাকার লিগে উদিত ক্লাবে খেলেছি, ওপেনিং ব্যাটসম্যান আর উইকেটকিপার হিসেবে। সেই অভিজ্ঞতা থেকে একটা সহজ বোঝাপড়া হয়: মাঠে যে-কোন তথ্য এক মুহূর্তে পুরনো হয়ে যায়। ব্যাটার একটা শট খেলল, আপনি টুকে রাখার আগেই পরের বল আসে, আপনার মনে থাকা অর্ধেক তথ্য ইতিমধ্যেই বাসি। মাঠের এই ঝাঁঝ আমার লেখায় থেকে যায় — আমি কেবল ডেটা লিখি না, ডেটার সীমা মেনে নিয়ে লিখি।
এখন প্রশ্ন হলো, আমার হাতে আসা ফাইলটা আসলে কী দিয়ে তৈরি হয়েছিল? আমার ধারণা, তিনটা জিনিসের যেকোনো একটা কাজ করেছে। হয় আপস্ট্রিমে ফিড waren খালি, হয় বের করার সময় মডেলের সাথে যোগাযোগ ব্যর্থ হয়েছে, কিম্বা ডিফল্ট মানের ঘরকে সেই সিস্টেমে বৈধ ধরা হয়। যেটাই হোক, সমাধান এক নয়। ইনপুট খালি হলে ফিড ঠিক করতে হবে। ব্যর্থতা হলে লগ দেখতে হবে। আর ডিফল্ট হলে ফাঁকা ঘরকে মান বসানোর নিয়মটা বদলাতে হবে, যেন যেকোনো মুহূর্তে ফাঁকা ঘরের অস্তিত্ব আলাদা করে চেনা যায়।
এখানে একটা নিরীহ পরামর্শ আছে, তবে ফলপ্রসূ — প্রতিটা ফাঁকা ঘরের জায়গায় মান লিখুন, "অজানা"। ডেটা ফাইলে এটা অত্যন্ত গ্রহণযোগ্য। ঘরটা ফাঁকা রাখবেন না," আমি যাচাই করি না" ঢুকিয়ে দেবেন না। আজকের দিনে একটা মডেলের সবচেয়ে মূল্যবান আউটপুট সেটা নয়, যা সে বলল; সেটা হলো যা সে বলতে আর রাজি হয়নি।
এখন একটা কথা পরিষ্কার করতে চাই, যেটা আমি নিজের প্রতি সমালোচনা হিসেবে লিখছি। আমি সন্দেহবাদী, এবং এখনো সিস্টেম বানিয়ে বিশ্বাস করি। কিন্তু মাঝেমাঝে ভারসাম্য নষ্ট হয়ে যায়, কারণ আমার সব সাবধানতা সবসময় প্রযোজ্য নয় — কোনো কোনো সময় পাঠকের সিমিত তথ্য দরকার দ্রুত, পুরো ফাইলের বিবরণ নয়। এই কারণেই স্টেজ-১ আর স্টেজ-২ এর মধ্যে সময় ক্ষয় আমাকে বিব্রত করে, আর আমি তাই কেবল সেরা ফলাফল নয়, দ্রুততম গ্রহণযোগ্য ফলাফলও খুঁজি।
আর সব শেষে রহস্যটা। আমার বিশ্বাস, সবচেয়ে ধ্বংসাত্মক ব্যর্থতা দেখতে ব্যর্থতার মতো লাগে না। যদি একটা সিস্টেম শূন্য দেয়, আপনি সেটা চিনতে পারেন। কিন্তু যদি সেটা লেবেল দেয়, আপনি সেটা গ্রহণ করে ফেলেন। আর সেই লেবেলের উপর দাঁড়িয়ে যদি একটা গল্প দাঁড়ায়, তাহলে সেটা কিন্তু গল্পই, বিশ্লেষণ নয়।
তাই পরের এক ম্যাচ সপ্তাহে যদি কেউ আমার কাছে কিছু দাবি করেন, আমার প্রশ্ন থাকবে তিনটা — ইনপুট কতটুকু ছিল, নমুনার আকার কত, আর কোন অংশ তিনি যাচাই করেননি। এই তিনটা উত্তর থাকলে আমি যতটা দিতে পারি, অন্য কিছু নয়। নইলে সেটা হবে সেই ফাঁকা ফাইলের মতো — একটা লাইন, বারোটা খালি ঘর, আর বাকিটা আমাদের কল্পনা।
