লেখা: মশিউর রহমান
দুপুরের রোদটা তখন নরম হয়ে এসেছে। ইঞ্জিনিয়ারিং অনুষদের পুরনো করিডর—দেয়ালে হালকা খসে পড়া রঙ, জানালার কাঁচে আটকে থাকা ধুলো, তবু যেন সেখানে সময়ের একটা আলাদা গতি আছে। করিডরের দূরে নরম পায়ে এগিয়ে আসছেন আবির। মাঝবয়সী, শান্ত চোখ, কাঁধে ব্যবহার-খাওয়া চামড়ার ব্যাগ, হাতে গোল ফ্রেমের চশমা। দুপুরের ক্লাসটা শুরু করার আগে তিনি একটু থামলেন, জানালার বাইরে খেলার মাঠে দুই-তিনজন ছাত্রকে ফুটবল ছুঁড়তে দেখলেন, তারপর নিজেই একটি প্রশ্নে থমকালেন—কেন এত এআই প্রকল্প, এত ভালো মডেল থাকা সত্ত্বেও, কয়েক মাসেই ভেঙে পড়ে?
আজ তিনি সিদ্ধান্ত নিয়েছেন, উত্তরটা দেবেন, কিন্তু সাধারণ লেকচারের ভাষায় নয়—গল্পের মতো, দৃশ্যের মধ্যে দিয়ে, যাতে প্রযুক্তি কল্পনার সাথে গাঁথা থাকে। ক্লাসরুমে ঢুকে তিনি বোর্ডে চক দিয়ে বড় করে লিখলেন—মনিটরিং। তারপর একবার ছাত্রদের দিকে তাকিয়ে মৃদু হাসলেন।
“তোমরা ভাবছ,” তিনি ধীর স্বরে বললেন, “মেশিন লার্নিং মানেই মডেল বানানো, ডেটা খাওয়ানো, আর আউটপুট দেখা। কিন্তু আসলে এটা পুরো এক নাটক। প্রথম অঙ্ক ডেটা, মাঝখানে পাইপলাইন আর মডেল, শেষ অঙ্কে ব্যবহারকারী। আর প্রতিটি অঙ্কে আলাদা প্রহরী—মনিটরিং। কোনো এক জায়গায় প্রহরী ঘুমিয়ে পড়লে, নাটক ভেস্তে যাবে।”
ক্লাসটা যেন একসঙ্গে নীরব হলো। আবির বোর্ডে একটি লম্বা রেখা টেনে তার গায়ে ছোট ছোট ঘর আঁকতে লাগলেন—ইনজেশন, ভ্যালিডেশন, ট্রান্সফর্ম, ফিচার স্টোর, মডেল সার্ভিং, অবসার্ভেবিলিটি, ইউজার ফিডব্যাক। প্রতিটি ঘরের পাশে ছোট ছোট তীর, মাঝে মাঝে বৃত্ত—ফিডব্যাক লুপের চিহ্ন। তারপর তিনি প্রথম অঙ্ক শুরু করলেন।
প্রথম অঙ্ক: ইনপুট ডেটার দরজা—প্রথম প্রহরীর চোখ
“ভাবো, এক বিশাল লাইব্রেরি তোমাদের হাতে এসেছে,” আবির বললেন। “কিন্তু অর্ধেক বই ছেঁড়া, অনেকগুলো মুদ্রণ ভুল, কিছু আবার এমন পুরনো যে তাতে লেখা তথ্য এখন আর সত্যি নয়। এই বইগুলো দিয়ে কি তোমরা আধুনিক গবেষণা করতে পারবে?” কয়েকটা মাথা একসঙ্গে নেড়ে ‘না’ বলল। “এটাই ইনপুট ডেটার গল্প,” আবির হাসলেন, “মেশিন লার্নিংয়ে ডেটাই কাঁচামাল। কাঁচামাল খারাপ হলে, পরের সবকিছুই পরিশ্রমের জায়গায় দাঁড়ায়।”
তিনি বোর্ডে চারটি শব্দ লিখলেন—ভলিউম, ডিস্ট্রিবিউশন, কোয়ালিটি, টাইমলিনেস।
ভলিউম—খুব কম ডেটা হলে মডেল শিখবে কী? আবার অত্যাধিক হলে এটি প্রক্রিয়া করা কঠিন, খরচও বেশি, আর অপ্রাসঙ্গিক ডেটার কারণে সমস্যা বাড়ে।
ডিস্ট্রিবিউশন— একপাশে পাহাড়, অন্যপাশে সমতল হলে, মডেল পাহাড়ে হাঁটতে শিখবে, সমতলে পড়ে যাবে।
কোয়ালিটি— তথ্যের গুণগত মান খুব গুরুত্বপূর্ণ। মিসিং ভ্যালু, ডুপ্লিকেট, টাইপো, ভুল এনকোডিং, আউটলাইয়ার—এসব অনিয়ম পড়লেই মডেল ভুল শিখে।
টাইমলিনেস—ডেটা কতটা আপডেটেড? তথ্যের উৎস বদলেছে কি? গতকালের তথ্য দিয়ে আজকে মাপতে গেলে ভুল হবেই।
“প্রথম প্রহরী,” আবির বললেন, “হলো ডেটা ইনজেশন মনিটর। প্রতিদিন, প্রতি ঘন্টা, এমনকি প্রতি মিনিটে—কত রেকর্ড এলো, কতটা বাদ পড়ল, কতটা নষ্ট—সব লগে থাকবে। রেকর্ড রেট হঠাৎ পড়ে গেলে অ্যালার্ট। ডুপ্লিকেট রেট বাড়লে অ্যালার্ট। মিসিং ফিল্ড বেড়ে গেলে অ্যালার্ট। প্রহরীর চোখ বন্ধ থাকা চলবে না।”
কেস স্টাডি ১: ই-কমার্স রেকমেন্ডেশন—পুরনো লাইব্রেরির অভিশাপ
একটি দক্ষিণ-পূর্ব এশীয় ই-কমার্স প্ল্যাটফর্ম, কোটি ব্যবহারকারী, হাজারো পণ্য। তারা নতুন রেকমেন্ডেশন সিস্টেম চালু করল—প্রথম দুই সপ্তাহ সবাই খুশি। তৃতীয় সপ্তাহে গ্রাহকরা অভিযোগ করতে শুরু করল—সুপারিশে পুরনো অফার, স্টকে নেই এমন পণ্য, এমনকি বন্ধ হয়ে যাওয়া ব্র্যান্ড! টিম গিয়ে দেখে, ইনজেশন পাইপলাইনে ‘ফ্ল্যাট-ফাইল’ ড্রপ ফোল্ডার থেকে প্রতিদিনের ইনক্রিমেন্টাল ডেটার সাথে দুই বছর আগের আর্কাইভ ফাইলও মাঝে মাঝে ঢুকে পড়ছে। হ্যাশ-চেক বা ফাইল-এজ-চেক ছিল না, ফাইল নামের প্যাটার্ন মিলে গেলেই গিলে নিত। ফল—ইতিহাসের জঞ্জাল বর্তমানকে ঢেকে ফেলল।
এটি থেকে আমরা শিখলাম—ইনজেশনে ডুপ্লিকেট ফাইল গার্ড, টাইমস্ট্যাম্প ফেন্সিং, ডেটা ফ্রেশনেস SLA আর স্কিমা-ভার্সন চেক বাধ্যতামূলক। প্রথম দরজায় প্রহরী জেগে থাকলে ভেতরের মঞ্চ বাঁচে।
দ্বিতীয় অঙ্ক: ডেটা পাইপলাইনের করিডর—টর্চলাইট হাতে দ্বিতীয় প্রহরী
বোর্ডের রেখার পাশে আবির ছোট ছোট স্টেশন আঁকলেন—ভ্যালিডেশন → ক্লিনিং → ট্রান্সফর্ম → ফিচার ইঞ্জিনিয়ারিং → ফিচার স্টোর। “এই করিডরেই সবচেয়ে বেশি ভুল জমে,” তিনি বললেন। “কারণ এখানেই গণিত, সফটওয়্যার, আর বাস্তব জগতের কাঁচামাল একসাথে মিশে যায়।”
রেঞ্জ চেক—বয়সের কলামে ৩৪৫ বছরের মানুষ এলো কেন? ট্রানজ্যাকশনের অঙ্কে নেগেটিভ ভ্যালু কেন?
বণ্টন পর্যবেক্ষণ—গতকাল ‘সিটি=ঢাকা’ ৩০%, আজ ৭৫%—হঠাৎ-উত্থান কি কোনো ইন্সট্রুমেন্টেশন বাগ?
লিনিয়েজ—কোন ফিচার কোন উৎস থেকে কীভাবে এলো? কালকে যে ক্যালকুলেশন ছিল, আজ সেটি বদলালে মডেলের ভিত কাঁপে।
ডিপেনডেন্সি—একটি সার্ভিস ডাউন হলে, কয়টি ফিচার ক্ষতিগ্রস্ত? ব্যাকফিল আছে?
স্কিমা ইভোলিউশন—একটি নতুন কলাম যোগ হলো, কিন্তু ডাউনস্ট্রিম জব প্রস্তুত ছিল না—ক্র্যাশ, নীরব ডেটালস, বা নীরব ভুল।
“এখানে অটোমেটেড টেস্ট দরকার,” আবির বললেন। “ইউনিট টেস্ট শুধু কোডে নয়, ডেটায়—ডেটা ইউনিট টেস্ট। আর ডেটা প্রোফাইলিং—দিন-ওভার-দিন, সপ্তাহ-ওভার-সপ্তাহ। যখন বণ্টন বদলায়, ‘ড্রিফট মিটার’ বেজে উঠবে।”
কেস স্টাডি ২: ব্যাংকিং ফ্রড ডিটেকশন—টাইমজোনের অদৃশ্য ফাঁদ
একটি বড় ব্যাংকের ফ্রড মডেল প্রতিদিন ভোরে গত ২৪ ঘণ্টার ট্রানজ্যাকশন বিশ্লেষণ করে। কিছুদিন ধরে দেখা গেল—সকালে রিপোর্টে সন্দেহজনক ট্রানজ্যাকশন কম, দুপুরের রিপোর্টে হঠাৎ বেড়ে যায়। অনুসন্ধানে ধরা পড়ল—পাইপলাইনে UTC→লোকাল টাইম কনভার্সনে ডে-লাইট সেভিংসের অফসেট ভুল ছিল। ফলে প্রতি দিন ৬–৮ ঘণ্টার ডেটা ‘আগামী দিনে’ গিয়ে পড়ছে। মডেল ট্রেনিং ও ইনফারেন্স—দুটোতেই গ্যাপ।
এখানে আমরা শিখলাম—টাইমজোন কনভার্সনে সিঙ্গল সোর্স অফ ট্রুথ (একটাই লাইব্রেরি/সার্ভিস), ডেটা লিনিয়েজ ডকুমেন্টেশন, এবং স্লাইডিং উইন্ডো ভ্যালিডেশন। ডেটা পাইপলাইনের করিডরে টর্চলাইট না জ্বালালে অন্ধকারই প্রাপ্য।
তৃতীয় অঙ্ক: মডেলের আসন—রংমঞ্চে আলোর ফোকাস
“এবার মঞ্চের মাঝখানে,” আবির বললেন। “অ্যালগরিদম এখানে তার কৌশল দেখায়। কিন্তু মনে রেখো, সবচেয়ে সুন্দর মডেলও পরিবেশ বদলালে বোকা হতে দেরি করে না।”
তিনি বোর্ডে Accuracy, Precision, Recall, F1, AUC, Calibration—এই শব্দগুলো লিখলেন। “পারফরম্যান্স শুধু একটি সংখ্যায় মাপা যায় না। ক্যালিব্রেশন না থাকলে চমৎকার AUC-ও মিথ্যে আশ্বাস দেয়। স্ট্যাবিলিটি না থাকলে আজকের সাফল্য কালকে বালি।” তারপর লিখলেন—কনসেপ্ট ড্রিফট, ডাটা ড্রিফট, ডাটা লেবেল ল্যাগ।
“ড্রিফট,” আবির বললেন, “হলো বাস্তব জগতের চেহারা বদলের নাম। তোমার মডেল গত বছরের শহরের মানচিত্র দিয়ে আজকের যানজট মাপছে—ভুল হবেই। তাই উইন্ডোড বেসলাইন—গত ৭, ১৪, ৩০ দিনের চলতি মানদণ্ড—ধরে প্রতিদিন তুলনা করতে হবে। অ্যানোমালি ডিটেকশন দিয়ে মেট্রিক্সে হঠাৎ পতন বা উত্থান ধরতে হবে। আর ব্যর্থতার সময় শ্যাডো মডেল—নতুন মডেল অন্ধকারে পুরনোর সাথে দৌড়োবে—ব্যবহারকারীকে বিচলিত না করে।”
কেস স্টাডি ৩: স্বাস্থ্যসেবায় ঝুঁকি-পূর্বাভাস—মহামারীর অদৃশ্য পাঠ
একটি হাসপাতাল নেটওয়ার্কে রোগীর জটিলতার ঝুঁকি মাপার মডেল মহামারীর আগে দারুণ কাজ করত। মহামারীর সময় রোগীর প্রোফাইল বদলে গেল—বয়সের বণ্টন, কোমরবিডিটি, চিকিৎসা-প্রোটোকল, ভর্তি হওয়ার প্রবণতা—সব। কিন্তু মডেল ছিল পুরনো দিনের। ফল—মিসডিটেকশন বেড়ে গেল, রিসোর্স এলোকেশন ভুল হলো। পরে তারা ড্রিফট সিগন্যাল ধরতে পপুলেশন স্ট্যাটিস্টিক্স (বয়স, লিঙ্গ, কোমরবিডিটি), আউটকাম শিফট এবং ফিচার ইম্পর্ট্যান্স শিফট ট্র্যাক করতে শুরু করল। সাপ্তাহিক রিট্রেনিং, ডিসেন্ট্রালাইজড ভ্যালিডেশন, আর ক্যালিব্রেশন কার্ভ ঠিক করার পর মডেল ফিরল।
শিক্ষা—মডেল জীবন্ত; তার নিয়মিত চেকআপ না করলে, সে বাস্তবের সাথে তাল হারায়।
চতুর্থ অঙ্ক: ব্যবহারকারীর দরজা—দর্শকের আসনে শেষ প্রহরী
“শেষ অঙ্কে,” আবির বোর্ডে বড় করে লিখলেন—UX × AI = Impact। “আউটপুট যদি ব্যবহারকারীর হাতে গিয়ে হোঁচট খায়, তাহলে সেরা মডেলও বৃথা। লেটেন্সি, ব্যাখ্যাযোগ্যতা, ট্রাস্ট, রিলায়েবিলিটি—সবই এখানে মুদ্রার এপিঠ-ওপিঠ।”
“ব্যবহারকারী কাকে বলছি? কাস্টমার সাপোর্ট এজেন্ট, ট্রাক ড্রাইভার, ডাক্তার, ব্যাংকার—প্রত্যেকের কাজ আলাদা। তাদের জন্য আউটপুটের ভাষা আলাদা হওয়া উচিত। কখনও স্কোর যথেষ্ট, কখনও শ্রেণি, আবার কখনও কারণ-সহ ব্যাখ্যা—‘এই কারণে আমি এই সিদ্ধান্ত নিলাম’।”
কেস স্টাডি ৪: লজিস্টিক্স ETA—সঠিক সময়, ভুল জানালা
একটি লজিস্টিক্স কোম্পানি ETA প্রেডিকশন চালু করল। মডেল ভালো, ভুল কমছে, কিন্তু ড্রাইভাররা অ্যাপ ব্যবহার করছে না—স্ক্রিনে পাঁচটি ট্যাব, তিনটি চার্ট, আর স্কোরের মানে বুঝতে হলে ট্রেনিং নিতে হয়! প্রোডাক্ট টিম UI সরল করল—একটি স্ক্রিন, বড় অক্ষরে ETA, নিচে তিনটি কারণ: “ট্রাফিক: উচ্চ”, “আবহাওয়া: মেঘলা”, “হাবে কিউ: মাঝারি”—সাথে দুটি বোতাম: রিরাউট ও অ্যালার্ট কাস্টমার। গ্রহণযোগ্যতা ৩০% থেকে ৮২%।
শিক্ষা—ব্যবহারকারী কেবল গ্রাহক নন, বিচারকও। জটিলতা যদি মুখের ওপর ধাক্কা দেয়, প্রযুক্তি হার মানে।
প্রতিটি বক্সের নিচে ছোট ছোট বৃত্ত—মেট্রিক্স, পাশে ঘণ্টা—অ্যালার্ট, আর তীর চিহ্ন ফিরে যাচ্ছে শুরুতে—ফিডব্যাক লুপ। আবির বোর্ড ছেড়ে ক্লাসের দিকে তাকালেন—“এই ছবিটার আসল সৌন্দর্য হলো, কোনো এক জায়গায় চোখ বুজে রাখলে পুরো চিত্রটাই ভেঙে পড়ে।”
শ্রেণিকক্ষের নীরবতা
এই পর্যন্ত এসে আবির চুপ করে দাঁড়ালেন। ক্লাসটা নিস্তব্ধ। কেউ কেউ নোটবুকে ছোট্ট ফ্লোচার্ট কপি করছে, কেউ মেট্রিক্সের পাশে টিকচিহ্ন দিচ্ছে। আবির জানেন, এই নীরবতা হল বোঝার শব্দ। তারপর তিনি আবার শুরু করলেন—গল্পের সুরে, ধীর গতি।
“ধরো,” তিনি বললেন, “তোমরা একটি নদীর তীরে বসে আছ। নদীটা তোমার ডেটা, স্রোতটা ইনজেশন। মাঝখানে বাঁধ—পাইপলাইন। বাঁধে যদি ফাটল থাকে, জল ধীরে ধীরে চুঁইয়ে যাবে; প্রথমে ধরা যাবে না। একসময় মাটির তলায় আলগা জমানো জল তোমার ক্ষেতকে নোনা করে দেবে। পরে তুমি গাছের পাতা দেখে বলবে—কেন এমন হলো? কিন্তু ভুলটা ছিল অনেক আগেই। ঠিক তেমনই, মডেলের ভুল আমরা অনেক সময় দেখি দেরিতে; আসলে তার বীজ ছিল ইনপুটে, বা করিডরে।”
“কৃত্রিম বুদ্ধিমত্তা হলো একটা নাট্যমঞ্চের মতো,” আবির আবার হাসলেন, “অভিনেতারা সব প্রতিভাবান—কেউ ডেটা, কেউ পাইপলাইন, কেউ অ্যালগরিদম, কেউ UI। কিন্তু মিউজিক, আলো, মঞ্চ-পরিকল্পনা—সব একসাথে না হলে দর্শক উঠে যাবে। আর দর্শক কে? ব্যবহারকারী।”
ফ্লোচার্টের পাশে আরেক ছবি—রানবুক
“মনিটরিংয়ের পাশে চাই রানবুক—অ্যালার্ট এলে কী করতে হবে, লেখা থাকবে। যেমন—‘ফিচার ড্রিফট > থ্রেশহোল্ড হলে ১) মডেল ভর্তি ট্রাফিক ২৫% কমাও (ক্যানারি), ২) শ্যাডো মডেল অন করো, ৩) গত ১৪ দিনের বেসলাইনের সাথে দ্রুত ব্যাচ ভ্যালিডেশন চালাও, ৪) প্রভাবিত সেগমেন্টে UI-তে ‘লো কনফিডেন্স’ ব্যাজ দেখাও।’ রানবুক না থাকলে রাতে ফোন পেয়ে ইঞ্জিনিয়ার মানচিত্র ছাড়া শহরে ছুঁটে বেড়ায়।”
উপসংহার—প্রহরীদের প্রতি শ্রদ্ধা
ক্লাস শেষ হয়ে গেছে। আবির ব্যাগ তুললেন, বোর্ডে আঁকা ফ্লোচার্টের দিকে একবার তাকিয়ে নিলেন। “মনে রেখো,” তিনি ধীরে বললেন, “এআই কোনো যাদু নয়; এটা একটি সুশাসিত শহর। যেখানে প্রতিটি মোড়ে প্রহরী আছে—ইনজেশন, পাইপলাইন, মডেল, সার্ভিং, আর ব্যবহারকারী। প্রহরীরা যদি জেগে থাকে, শহর নিরাপদ। আর যদি তারা ঘুমিয়ে পড়ে, শহর অচেনা হয়ে যায়।”
ছাত্ররা ধীরে ধীরে বেরিয়ে গেল। করিডরে গুনগুন শব্দ, জানালার বাইরে নরম রোদ, আর বোর্ডে চক দিয়ে লেখা সেই একটি শব্দ—মনিটরিং—শূন্য ক্লাসে নীরবে জ্বলজ্বল করতে লাগল। আবির দরজায় দাঁড়িয়ে একবার ঘুরে তাকালেন, যেন নিজেরই আঁকা ছবিটা আরেকবার দেখে নিলেন। তারপর চলে গেলেন, পরের ক্লাসের দিকে—মনের ভিতরে ঠিক এই ভাবনা নিয়ে—যা মাপা যায়, তাই বাঁচে; যা বাঁচে, তাই উন্নত হয়।
Leave a comment