Chapter 4 of 7
Turning uncertain outcomes into numbers you can actually compute with
এতক্ষণ যতগুলো চ্যাপ্টার পড়েছো, সবগুলোই ইভেন্ট নিয়ে কথা বলেছে — "ডাইসে জোড় সংখ্যা উঠল," "রোগীর টেস্ট পজিটিভ এলো," "কার্ডটা টেক্কা।" ইভেন্ট মানে হ্যাঁ/না স্টেটমেন্ট — হয় ঘটবে, নাহলে ঘটবে না। কিন্তু বেশিরভাগ সময় তুমি যেটা নিয়ে আসলে মাথা ঘামাও সেটা হ্যাঁ/না না — সেটা একটা সংখ্যা। কয়টা হেড উঠল? মানুষটার উচ্চতা কত? আজকে লাইনে কয়টা ডিফেক্টিভ পার্ট বের হলো? Random variable হলো সেই টুল, যেটা "একটা অনিশ্চিত ফলাফল"-কে "একটা সংখ্যা, যা নিয়ে তুমি হিসাব-নিকাশ করতে পারো"-তে বদলে দেয়। এই চ্যাপ্টার এই টুলটাকে একদম গোড়া থেকে বানাবে, আর এরপরের পুরো কোর্সের জন্য এটাই সবচেয়ে গুরুত্বপূর্ণ যন্ত্র — প্রতিটা ডেটাসেট, প্রতিটা ফিচার, মডেলের প্রতিটা প্রেডিকশন, ভেতরে ভেতরে একটা random variable।
Random variable হলো এমন একটা নিয়ম, যেটা র্যান্ডম এক্সপেরিমেন্টের প্রতিটা সম্ভাব্য ফলাফলকে একটা সংখ্যার সাথে জুড়ে দেয়। ফরমালি বলতে গেলে, এটা একটা ফাংশন , যেটা স্যাম্পল স্পেস থেকে একটা আউটকাম নেয় আর সেটাকে একটা রিয়েল নাম্বারে ম্যাপ করে। নাম শুনে মনে হতে পারে এটা কোনো জাদুকরী "র্যান্ডম" জিনিস, কিন্তু আসলে এটা মোটেও অপ্রত্যাশিত কিছু না — এটা একটা ফাংশন, একটা নির্দিষ্ট, স্পষ্ট নিয়ম, যেটা এমন কিছুর উপর প্রয়োগ করা হয় যা অনিশ্চিত।
Random variable এমন একটা ফাংশন, যেটা র্যান্ডম এক্সপেরিমেন্টের প্রতিটা আউটকামকে একটা সংখ্যায় বদলে দেয় — যাতে প্রোবাবিলিটি নিয়ে (যেটা আসলে আউটকাম নিয়ে) কথা বলা যায় সাধারণ সংখ্যা, অ্যারিথমেটিক, গ্রাফ আর ইকুয়েশন দিয়ে।
উদাহরণ দিয়ে বোঝা যাক। একটা কয়েন তিনবার টস করো। স্যাম্পল স্পেস -এ ৮টা আউটকাম আছে: । এদের একটাও নিজে থেকে সংখ্যা না — "HTH" জিনিসটা তুমি অ্যাভারেজ করতে পারবে না। ধরো = "কয়টা হেড উঠল।" এখন প্রতিটা আউটকাম একটা সংখ্যা পেয়ে যায়: , , , ইত্যাদি। হঠাৎ করেই তুমি সংখ্যাভিত্তিক প্রশ্ন করতে পারছো — "-এর গড় মান কত?", "এটা কতটা ছড়ানো?" — যেগুলো "HTH"-এর মতো স্ট্রিং নিয়ে ভাবার সময় অর্থহীন ছিল।
Random variable ছাড়া প্রোবাবিলিটি থিওরি একেকটা আউটকাম, একেকটা ইভেন্ট, আলাদা আলাদাভাবে বর্ণনা করতে থাকত — সবগুলোকে জোড়া লাগানোর কোনো সংখ্যাভিত্তিক ভাষাই থাকত না। Random variable ঠিক সেই ভাষাটা দেয়: একবার একটা অনিশ্চিত পরিমাণকে random variable হিসেবে লিখে ফেললে, তুমি এর গড় মান (expectation), কতটা ছড়ানো (variance), দুটো এমন পরিমাণ একসাথে কীভাবে চলে (covariance) — সব হিসাব করতে পারো, প্লট করতে পারো, ট্রান্সফর্ম করতে পারো, অন্য random variable-এর সাথে মেলাতে পারো, একটা ফর্মুলায় ঢুকাতে পারো — যেটা "HTH"-এর মতো কাঁচা আউটকাম দিয়ে কখনোই সম্ভব না।
এই একই কারণে মেশিন লার্নিং-এ random variable এত গুরুত্বপূর্ণ: একটা ডেটাসেটের প্রতিটা কলাম, একটা ছবির প্রতিটা পিক্সেল, একটা মডেলের প্রতিটা প্রেডিক্টেড স্কোর — সবকিছুকেই random variable ধরা হয়, ঠিক এই কারণে যে এটাই তোমাকে ডেটার উপর গড়, ছড়ানো, আর সম্পর্ক হিসাব করার সুযোগ দেয়।
এই দুইটা আইডিয়া গুলিয়ে ফেলা সহজ, কিন্তু এগুলো একই পরিস্থিতির দুইটা আলাদা লেয়ার:
| Random Experiment | Random Variable | |
|---|---|---|
| কী এটা | যেই অ্যাকশন বা প্রসেসটা তুমি করো (ডাইস রোল, কয়েন টস, মানুষের উচ্চতা মাপা) | একটা রুল/ফাংশন যা এক্সপেরিমেন্টের প্রতিটা আউটকামকে একটা সংখ্যা দেয় |
| কী প্রোডিউস করে | স্যাম্পল স্পেস থেকে একটা আউটকাম (যা নাম্বারিক নাও হতে পারে — যেমন "HTH") | সবসময় একটা রিয়েল নাম্বার |
| উদাহরণ | ৩টা কয়েন টস করা | = কয়টা হেড, বা = ১ যদি তিনটাই এক হয়, নাহলে ০ |
| কয়টা থাকতে পারে? | একটা এক্সপেরিমেন্ট, একটা স্যাম্পল স্পেস | একই এক্সপেরিমেন্টের উপর অনেকগুলো ভিন্ন random variable বানানো যায় |
শেষ সারিটা নিয়ে একটু ভাবো: একই ৩-কয়েন-টস এক্সপেরিমেন্ট থেকে তুমি = কয়টা হেড, বা = ১ যদি প্রথম টসটা হেড হয় নাহলে ০, বা = আউটকাম কতবার H থেকে T-তে সুইচ করল — এরকম যেকোনো কিছু ডিফাইন করতে পারো। একই এক্সপেরিমেন্ট, তিনটা সম্পূর্ণ আলাদা random variable, একই অনিশ্চয়তা সম্পর্কে তিনটা আলাদা সংখ্যাভিত্তিক প্রশ্নের উত্তর।
Outcome হলো এক্সপেরিমেন্টের একটা নির্দিষ্ট ফলাফল (যেমন, "HTH" স্ট্রিংটা)। Random variable হলো একটা ফাংশন, যেটা একটা আউটকামের উপর প্রয়োগ হয়ে একটা সংখ্যা দেয় (যেমন )। Outcome হলো কাঁচা ইনপুট; random variable-এর মান হলো সংখ্যাভিত্তিক আউটপুট। "" বলতে গিয়ে অনেক সময় ভুলে আউটকামটাকেই বোঝানো হয়ে যায় — কিন্তু এই পার্থক্যটা স্পষ্ট রাখা জরুরি: হলো নিয়ম, আর , অথবা এক্সপেরিমেন্ট আসলেই ঘটে যাওয়ার পর সেই নিয়ম থেকে বেরিয়ে আসা নির্দিষ্ট সংখ্যা ।
একটা শক্ত, ধারাবাহিক নোটেশন-অভ্যাস তোমাকে এই চ্যাপ্টারের বাকি অংশে অনেক কনফিউশন থেকে বাঁচাবে:
| সিম্বল | মানে |
|---|---|
| (বড় হাতের অক্ষর) | Random variable নিজেই — রুল/ফাংশন, নির্দিষ্ট মান জানার আগে |
| (ছোট হাতের অক্ষর) | একটা নির্দিষ্ট, বিশেষ মান, যা random variable নিতে পারে বা নিয়েছে |
| প্রোবাবিলিটি যে random variable ঠিক মানটা নেবে | |
| প্রোবাবিলিটি যে -এর মান থেকে -এর মধ্যে কোথাও পড়বে |
-কে একটা প্লেসহোল্ডার হিসেবে ভাবো — "এই এক্সপেরিমেন্ট থেকে যেই সংখ্যাটা এখনই বের হবে," আর হলো সেই প্লেসহোল্ডারের একটা নির্দিষ্ট সম্ভাব্য মান। -কে তাহলে পড়া যায় — "সম্ভাবনা যে এই প্লেসহোল্ডারটা ঠিক এই নির্দিষ্ট সংখ্যাটাই হবে।"
কয়েন টস
X = n বার টসে কয়টা হেড — একটা এমন এক্সপেরিমেন্ট থেকে সংখ্যা, যেটা নিজে থেকে কোনো সংখ্যা দেয়নি।
ডাইস গেম
X = দুইটা ডাইসের যোগফল — বোর্ড গেমে সরাসরি প্লেয়ারের পরবর্তী চাল ঠিক করতে ব্যবহৃত হয়।
মেডিকেল টেস্টিং
X = ১ যদি টেস্ট পজিটিভ আসে, নাহলে ০ — একটা হ্যাঁ/না মেডিকেল রেজাল্টের সংখ্যাভিত্তিক এনকোডিং।
আবহাওয়া
X = আগামীকালের বৃষ্টিপাত মিলিমিটারে — সত্যিকারের কন্টিনিউয়াস পরিমাণ, আগে থেকে কোনো স্বাভাবিক উচ্চসীমা ছাড়াই।
ম্যানুফ্যাকচারিং
X = ১০০টার ব্যাচে কয়টা ডিফেক্টিভ ইউনিট — কোয়ালিটি কন্ট্রোলের সিদ্ধান্তের কেন্দ্রে থাকে।
মেশিন লার্নিং
প্রতিটা ফিচার কলাম (বয়স, পিক্সেল ইনটেনসিটি, শব্দ সংখ্যা) আর প্রতিটা লেবেলকে random variable ধরা হয়, যা একটা অজানা ডিস্ট্রিবিউশন থেকে আসে।
সব random variable একইভাবে আচরণ করে না। এই চ্যাপ্টারের বাকি অংশে — আর এই পুরো কোর্সের বাকি অংশে — সবচেয়ে গুরুত্বপূর্ণ ভাগাভাগিটা হলো একটা random variable discrete না continuous, কারণ এটার উপর নির্ভর করে কোন টুলগুলো খাটবে (PMF নাকি PDF, যোগফল নাকি ইন্টিগ্রাল, ইত্যাদি)।
একটা random variable discrete হয়, যদি সেটা শুধু গণনাযোগ্য (countable) কিছু মান নিতে পারে — মানে তুমি চাইলে সবগুলো এক এক করে লিস্ট করতে পারবে (তালিকাটা অসীম হলেও), আর পরপর দুইটা সম্ভাব্য মানের মাঝে ফাঁক থাকবে। গণনা করা জিনিসগুলো ক্লাসিক উদাহরণ: ২টা ডিফেক্টিভ আইটেম থাকতে পারে, বা ৩টা, কিন্তু কখনোই ২.৪টা না।
একটা random variable continuous হয়, যদি সেটা কোনো রেঞ্জের (রিয়েল নাম্বারের একটা ইন্টারভাল) মধ্যে যেকোনো মান নিতে পারে, একদম কোনো ফাঁক ছাড়া। দুইটা সম্ভাব্য মানের মাঝে অসীম সংখ্যক আরও মান সম্ভব। মাপজোখ করা জিনিসগুলো ক্লাসিক উদাহরণ: উচ্চতা, ওজন, সময়, তাপমাত্রা — এগুলো, নীতিগতভাবে, একটা রেঞ্জের ভেতরে যেকোনো মান নিতে পারে, যেকোনো নির্ভুলতা পর্যন্ত।
| বৈশিষ্ট্য | Discrete Random Variable | Continuous Random Variable |
|---|---|---|
| সম্ভাব্য মান | গণনাযোগ্য তালিকা (ফাইনাইট বা countably ইনফাইনাইট), মাঝে ফাঁক আছে | একটা ইন্টারভালের যেকোনো মান — অগণনাযোগ্য সংখ্যক, কোনো ফাঁক নেই |
| সাধারণ উৎস | কিছু গণনা করা (কয়টা...) | কিছু মাপা (কতটুকু / কতক্ষণ...) |
| ডিস্ট্রিবিউশন বর্ণনা করা হয় | Probability Mass Function (PMF) দিয়ে | Probability Density Function (PDF) দিয়ে |
| একটা মানের জন্য | সত্যিকারের পজিটিভ সংখ্যা হতে পারে | সবসময় ঠিক ০ (সেকশন ৪) |
| প্রোবাবিলিটি বের করা হয় | PMF মান যোগ করে | PDF ইন্টিগ্রেট করে (এরিয়া বের করে) |
| উদাহরণ | হেড সংখ্যা, ডাইস রোল, ডিফেক্ট সংখ্যা | উচ্চতা, ওজন, তাপমাত্রা, সময় |
Discrete: ডাইস রোল
শুধু ১ থেকে ৬ সম্ভব — মাঝে কিছু নেই।
Discrete: প্রতিদিন কয়টা ইমেইল
০, ১, ২, ৩, ... — একটা গণনা, কোনো ভগ্নাংশ ইমেইল হয় না।
Continuous: নির্ভুল রিঅ্যাকশন টাইম
যেকোনো পজিটিভ রিয়েল সংখ্যা সেকেন্ডে — ০.৩১২, ০.৩১২১, এভাবে সীমাহীনভাবে।
Continuous: নির্ভুল শরীরের তাপমাত্রা
একটা যুক্তিসঙ্গত রেঞ্জের ভেতরে যেকোনো মান, যেকোনো দশমিক নির্ভুলতা পর্যন্ত।
Continuous: শেয়ারের দামের ওঠানামা
খুব ছোট সময়ের জানালায় একটা রেঞ্জের যেকোনো মান নেয় বলে মডেল করা হয়।
Discrete: একটা রচনায় কয়টা বানান ভুল
একটা গণনা — সবসময় একটা নন-নেগেটিভ পূর্ণসংখ্যা।
একটা প্রশ্নই জিজ্ঞেস করো: "আমি কি নীতিগতভাবে সব সম্ভাব্য মান এক এক করে লিস্ট করতে পারব, মাঝে স্পষ্ট ফাঁক রেখে?" যদি হ্যাঁ হয় — লিস্টটা লম্বা বা টেকনিক্যালি অসীম হলেও (যেমন "০, ১, ২, ৩, ..." চিরকাল) — variable-টা discrete। আর যদি সম্ভাব্য মানগুলো নাম্বার লাইনের একটা কন্টিনিউয়াস অংশ পুরোপুরি ভরে ফেলে, কোনো ফাঁক ছাড়াই, তাহলে সেটা continuous।
একজন মানুষের সঠিক উচ্চতা continuous, যদিও আমরা সাধারণত সবচেয়ে কাছের সেন্টিমিটার বা ইঞ্চিতে রাউন্ড করে রিপোর্ট করি। যেই পরিমাণটা মাপা হচ্ছে সেটা এখনও continuous — রাউন্ডিং শুধু একটা ডিসপ্লে/মাপার-নির্ভুলতার সিদ্ধান্ত, random variable-এর আসল প্রকৃতি বদলায় না। কোনো কিছুকে discrete না continuous ধরা হবে সেটা নির্ভর করে আসল পরিমাণটার উপর, কতটা নির্ভুলভাবে সেটা রেকর্ড করা হয়েছে তার উপর না।
একটা discrete random variable হলো এমন একটা random variable, যার সম্ভাব্য মানের সেটটা গণনাযোগ্য। প্রতিটা সম্ভাব্য মান -এর একটা প্রোবাবিলিটি থাকে, আর — সবচেয়ে গুরুত্বপূর্ণ কথা — এই প্রোবাবিলিটিগুলো আসল, আলাদা আলাদা অর্থবহ সংখ্যা, শূন্য না।
একটা discrete random variable যত মান নিতে পারে সেই সেটটা প্রায়ই লেখা হয় আকারে। এটা ফাইনাইট হতে পারে (যেমন , ৩টা টসে হেড সংখ্যার জন্য) অথবা countably ইনফাইনাইট (যেমন , "প্রথম অভিযোগ আসার আগে কয়টা কাস্টমার কল এলো" — এর কোনো স্বাভাবিক উচ্চসীমা নেই)।
প্রতিটা discrete random variable-এর সাথে একটা নিয়ম থাকে, যা প্রতিটা সম্ভাব্য মানকে প্রোবাবিলিটি দেয় — এই অ্যাসাইনমেন্ট নিয়মটাই এই চ্যাপ্টারের পরের অংশে ফরমালি বলা হয়েছে Probability Mass Function (সেকশন ৫) নামে। আপাতত মূল আইডিয়াটা মনে রাখো: প্রতিটা মান -এর নিজের প্রোবাবিলিটি থাকে, আর যেহেতু সম্ভাব্য মানগুলো গণনাযোগ্য, তুমি এই প্রোবাবিলিটিগুলো এক এক করে লিস্ট করে ফেলতে পারো।
হেড সংখ্যা। একটা ফেয়ার কয়েন ৩ বার টস করো, আর = হেড সংখ্যা। সম্ভাব্য মান , প্রোবাবিলিটিসহ:
ডাইস আউটকাম। একটা ফেয়ার ৬-মুখী ডাইস রোল করো, আর = যেই সংখ্যা উঠল। সম্ভাব্য মান , প্রতিটার প্রোবাবিলিটি — একটা uniform discrete random variable, কারণ প্রতিটা মান সমান সম্ভাবনার।
ডিফেক্টিভ প্রোডাক্টের সংখ্যা। একটা ফ্যাক্টরি ৪টা ইউনিটের একটা ব্যাচ চেক করে, আর = কয়টা ডিফেক্টিভ পাওয়া গেল। সম্ভাব্য মান , আর — ডাইস রোলের মতো না — এই প্রোবাবিলিটিগুলো প্রায় নিশ্চিতভাবেই সমান না: ফ্যাক্টরির ডিফেক্ট রেট কম হলে ০টা ডিফেক্টিভ পাওয়ার সম্ভাবনা ৪টাই ডিফেক্টিভ পাওয়ার চেয়ে অনেক বেশি হওয়া উচিত। এই ডিস্ট্রিবিউশনটা তুমি নিচের ইন্টারঅ্যাক্টিভ সেকশনে নিজে বানাবে।
একটা continuous random variable হলো এমন একটা random variable, যা রিয়েল নাম্বারের একটা ইন্টারভালের (বা ইন্টারভালগুলোর মিলন) যেকোনো মান নিতে পারে। Discrete random variable-এর মতো না — এর সম্ভাব্য মানগুলো এক এক করে লিস্ট করা যায় না — দুইটা সম্ভাব্য মানের মাঝে সবসময় অসীম সংখ্যক আরও মান থাকে।
Continuous random variable সাধারণত একটা পুরো ইন্টারভাল জুড়ে মান নেয়, যেমন , , বা একটা বাউন্ডেড রেঞ্জ যেমন । যা এই রেঞ্জটাকে "continuous" বানায় তা হলো এতে কোনো ফাঁক নেই: এই রেঞ্জের প্রতিটা রিয়েল সংখ্যাই আসলেই সম্ভব।
সেকশন ২-এর পার্থক্যটা বোঝার একটা সহজ উপায়: একটা discrete random variable-এর সম্ভাব্য মানগুলো দেখতে নাম্বার লাইনের উপর কতগুলো বিন্দুর মতো, মাঝে ফাঁকা জায়গাসহ। একটা continuous random variable-এর সম্ভাব্য মানগুলো দেখতে একটা অখণ্ড লাইন-সেগমেন্টের মতো (বা রশ্মি, বা পুরো লাইন) — শক্ত, কিছুই বাদ না দিয়ে।
যেহেতু একটা continuous random variable-এর সম্ভাব্য মান একটা অখণ্ড রেঞ্জ তৈরি করে, স্বাভাবিক প্রশ্নটা হলো "এই নির্দিষ্ট মানটার প্রোবাবিলিটি কত?" না, বরং "মানটা এই রেঞ্জের মধ্যে কোথাও পড়ার প্রোবাবিলিটি কত?" — যেমন , একজন মানুষের ওজন কিলোগ্রামে ৬০ থেকে ৬৫-এর মধ্যে পড়ার জন্য। এটাই ঠিক সেই প্রশ্ন, যেটার উত্তর দেওয়ার জন্য Probability Density Function বানানো হয়েছে (সেকশন ৬), আর এটা হিসাব হয় একটা এরিয়া হিসেবে, লুকআপ না।
এই চ্যাপ্টারের সবচেয়ে অবাক করা ফ্যাক্টটা প্রথমবার যারা পড়ছে তাদের জন্য: একটা continuous random variable-এর জন্য প্রতিটা আলাদা মান -এর জন্য — এমনকি যেই মানগুলো আসলেই সম্ভব, তাদের জন্যও।
ইনটুইশনটা এরকম: ধরো একজন মানুষের সঠিক উচ্চতা ১৫০ সেমি আর ২০০ সেমি-এর মধ্যে অসীম সংখ্যক মানের যেকোনোটা হতে পারে — শুধু পূর্ণ সেন্টিমিটার না, মাঝের প্রতিটা দশমিকও, চিরকাল ধরে। যদি সেই অসীম সংখ্যক মানের প্রতিটাকেই সামান্য পজিটিভ প্রোবাবিলিটি দেওয়া হয়, তাহলে প্রোবাবিলিটিগুলো যোগ করলে ১-এর চেয়ে অনেক বড় (আসলে অসীম) কিছু হয়ে যাবে — যা প্রোবাবিলিটির মূল নিয়ম ভাঙে (সব প্রোবাবিলিটি মিলে ঠিক ১ হতে হবে)। এই কনট্রাডিকশন এড়ানোর একমাত্র উপায় হলো প্রতিটা আলাদা বিন্দুকে ঠিক শূন্য প্রোবাবিলিটি দেওয়া। প্রোবাবিলিটি জমা হয় শুধু একটা পুরো ইন্টারভাল দেখলে — তাই একটা আসল পজিটিভ সংখ্যা হতে পারে, যদিও আর আলাদা আলাদাভাবে শূন্য।
এই পুরো চ্যাপ্টারের সবচেয়ে কমন কনফিউশনের জায়গা এটা। একটা continuous variable-এর জন্য মানে এই না যে সেই মানটা কখনো ঘটতে পারবে না — মানে হলো, কোনো একক নির্দিষ্ট মান মোট প্রোবাবিলিটির মাপার-মতো কোনো অংশ বহন করে না, কারণ ঠিক সেই একই ভাগের জন্য প্রতিযোগিতা করছে অসীম সংখ্যক আরও নির্দিষ্ট মান। একজন মানুষের উচ্চতা আসলেই ঠিক ১৭২.৪০০০০০... সেমি হতে পারে; শুধু "ঠিক ওই মান, অসীম নির্ভুলতা পর্যন্ত"-এর প্রোবাবিলিটি জিজ্ঞেস করাটা অর্থবহ না। এই কারণেই continuous variable-এর জন্য আর সবসময় সমান — বাউন্ডারি পয়েন্ট আর ইনক্লুড বা এক্সক্লুড করলে কিছুই বদলায় না, কারণ দুটোই আলাদা আলাদাভাবে শূন্য যোগ করে।
উচ্চতা
একজন মানুষের সঠিক উচ্চতা, যেকোনো ইউনিটে — একটা অখণ্ড সম্ভাব্য মানের রেঞ্জ।
ওজন
শরীরের ওজন, প্যাকেজের ওজন, বা উপাদানের ওজন — মাপা, গোনা না।
তাপমাত্রা
ঘরের তাপমাত্রা, শরীরের তাপমাত্রা, বা আবহাওয়ার তাপমাত্রা — একটা ফিজিক্যাল রেঞ্জের যেকোনো মান নিতে পারে।
মাপার ডেটা
সেন্সর রিডিং, রিঅ্যাকশন টাইম, দূরত্ব — মূলত যেকোনো ফিজিক্যাল পরিমাণ, একটা যন্ত্র থেকে পড়া।
নিচের প্লেগ্রাউন্ডটা ট্রাই করো — সেকশন ৬ আর ৭-এর জন্য বানানো — "এরিয়া, বিন্দু না" আইডিয়াটা সরাসরি দেখার জন্য: ইন্টারভালের দুই প্রান্ত কাছাকাছি টেনে আনো, আর দেখো প্রোবাবিলিটি ঠিক ০-এর দিকে কমে যায়, যদিও কার্ভের উচ্চতা পুরোটা সময় স্পষ্টভাবে পজিটিভ থাকে।
Probability Mass Function (PMF) হলো সেই টুল, যা একটা discrete random variable-এর প্রতিটা সম্ভাব্য মানকে একটা প্রোবাবিলিটি দেয়। এটা লেখা হয় বা , আর এটা প্রতিটা সম্ভাব্য -এর জন্য ঠিক একটা প্রশ্নের উত্তর দেয়: "এই নির্দিষ্ট মানে কতটুকু প্রোবাবিলিটি 'মাস' বসে আছে?"
যেখানে: হলো -এর একটা প্লেইন ফাংশন — যেকোনো সম্ভাব্য মান দাও, এটা সেই মানের সাথে ঠিক সমান হওয়ার প্রোবাবিলিটি ফেরত দেবে।
PMF শুধু discrete random variable-এর জন্যই ডিফাইন করা হয় — এই কারণেই এই চ্যাপ্টার জুড়ে "PMF" আর "discrete" একসাথে চলে, ঠিক যেমন "PDF" আর "continuous" চলে (সেকশন ৬)।
প্রতিটা বৈধ PMF-কে দুইটা শর্ত পূরণ করতে হয়, আর যখনই তোমাকে একগুচ্ছ সংখ্যা দেওয়া হয় আর জিজ্ঞেস করা হয় "এটা কি একটা বৈধ PMF?", দুটোই চেক করা উচিত:
যেখানে: প্রথম শর্তটা নেগেটিভ প্রোবাবিলিটি বাদ দেয় (যা কখনোই অর্থবহ না), আর দ্বিতীয়টা বলে — প্রতিটা সম্ভাব্য মানের প্রোবাবিলিটি যোগ করলে ঠিক ১ হতে হবে — কারণ random variable-টা নিশ্চিতভাবে কোনো একটা মান নেবেই।
একটা টেবিলকে বৈধ PMF হিসেবে বিশ্বাস করার আগে সবসময় দুটো শর্তই চেক করো। যেমন — এই টেবিলটা ফেইল করে, কারণ — এটা বৈধ PMF না, যদিও প্রতিটা আলাদা সংখ্যা নন-নেগেটিভ।
একটা PMF দেখানোর সবচেয়ে সরাসরি উপায় হলো একটা টেবিল, যেখানে প্রতিটা সম্ভাব্য মানের পাশে তার প্রোবাবিলিটি লেখা থাকে — যেমন সেকশন ৩-এর ডিফেক্টিভ-প্রোডাক্ট উদাহরণে:
| x (ডিফেক্টিভ ইউনিট) | 0 | 1 | 2 | 3 | 4 |
|---|---|---|---|---|---|
| p(x) | 0.660 | 0.260 | 0.060 | 0.015 | 0.005 |
গ্রাফিক্যালি, একটা PMF আঁকা হয় উলম্ব বার (বা কখনো আলাদা আলাদা বিন্দু, "স্টেম প্লট" বলা হয়) দিয়ে, প্রতিটা সম্ভাব্য মানের জন্য একটা, উচ্চতা সেই মানের প্রোবাবিলিটির সমান — ইচ্ছাকৃতভাবে না একটা জোড়া লাগানো, কন্টিনিউয়াস কার্ভ, কারণ মাঝখানের মানগুলো (যেমন ) মোটেও সম্ভব না।
যেহেতু PMF সরাসরি একটা মানের দেয়, একটা রেঞ্জের প্রোবাবিলিটি হিসাব করা মানে শুধু একটা যোগফল: ।
উদাহরণ। উপরের ডিফেক্টিভ-প্রোডাক্ট PMF ব্যবহার করে, — ব্যাচে সর্বোচ্চ একটা ডিফেক্টিভ ইউনিট পাওয়ার সম্ভাবনা ৯২%।
P(X = x)। এটাই PMF-এর পুরো কাজ: প্রতিটা সম্ভাব্য -এর জন্য, এটা একটা সংখ্যা ফেরত দেয় — সেই মানের ঠিক প্রোবাবিলিটি।
বৈধ PMF-এর শর্ত। উপর থেকে আবার বলি: সব জায়গায় নন-নেগেটিভ, আর সব সম্ভাব্য মানের যোগফল ঠিক ১।
PMF মানের যোগফল। শুধু একটা টেকনিক্যাল নিয়ম না — এটা বোঝায় যে random variable-টা তার কোনো একটা সম্ভাব্য মানে নিশ্চিতভাবে পড়বেই, তাই সবগুলোর মোট প্রোবাবিলিটি ঠিক ১ হতে হবে, বেশিও না কমও না।
PMF ব্যাখ্যা করা। একটা লম্বা বার মানে সেই মান বেশি সম্ভাব্য; একটা ছোট বার মানে সেটা বিরল। বারের উচ্চতা তুলনা করা মানে সরাসরি প্রোবাবিলিটি তুলনা করা — এই কারণেই PMF গ্রাফ একটা discrete ডিস্ট্রিবিউশনের আকৃতি বুঝতে এত দ্রুত সাহায্য করে।
প্রিসেট বদলাও (ডাইস, দুই ডাইসের যোগফল, কয়েন-টস হেড, ডিফেক্ট সংখ্যা), তারপর ওয়েট স্লাইডার টেনে দেখো PMF বার, CDF আর হিসাব করা E[X], Var(X) লাইভ বদলায়।
X = result of one fair six-sided die. Drag any bar's weight below — the PMF renormalizes live.
PMF — P(X = x)
Sum of all bars = 1.000 (a valid PMF always sums to 1)
CDF — F(x) = P(X ≤ x)
F(x) climbs from 0 toward 1 and never decreases — each step's height equals that x's PMF value.
Adjust weights
E[X]
3.500
E[X²]
15.167
Var(X)
2.917
SD(X)
1.708
"Sum of two dice" প্রিসেটটা ট্রাই করো, আর এর PMF আকৃতি (একটা ত্রিভুজ, ৭-এ চূড়া) "Single die roll" প্রিসেটের সাথে (ফ্ল্যাট, কারণ প্রতিটা ফেস সমান সম্ভাবনার) তুলনা করো — একই ডাইস, কিন্তু সম্পূর্ণ আলাদা PMF আকৃতি, কারণ দুই ডাইস যোগ করলে মাঝামাঝি মান বেশি উপায়ে পাওয়া যায়, চরম মানের চেয়ে।
Probability Density Function (PDF) হলো PMF-এর continuous-variable ভার্সন। এটা লেখা হয় বা , কিন্তু — এটাই এই জিনিসটা সম্পর্কে সবচেয়ে গুরুত্বপূর্ণ কথা — কোনো প্রোবাবিলিটি না। এটা একটা ডেনসিটি: -এর প্রতি ইউনিটে প্রোবাবিলিটি। তুমি আসল প্রোবাবিলিটি পাও শুধু -এর নিচে কোনো ইন্টারভালে এরিয়া মেপে।
PDF শুধু continuous random variable-এর জন্যই ডিফাইন করা হয়, ঠিক যেভাবে PMF শুধু discrete-এর জন্য ডিফাইন করা হয়েছিল।
ইনটুইশন: এই ইন্টিগ্রালটা ঠিক "কার্ভ -এর নিচের এরিয়া, থেকে পর্যন্ত।" যেভাবে বারের উচ্চতা যোগ করলে discrete রেঞ্জের প্রোবাবিলিটি পাওয়া যায়, ঠিক সেভাবে এরিয়ার অসীম ছোট ছোট উলম্ব স্লাইস যোগ করলে (ইন্টিগ্রেট করলে) continuous রেঞ্জের প্রোবাবিলিটি পাওয়া যায়।
যেখানে: ডেনসিটি কখনো নেগেটিভ হতে পারে না, আর পুরো কার্ভের নিচের মোট এরিয়া, সব সম্ভাব্য মান জুড়ে, ঠিক ১ হতে হবে — "PMF মান যোগ করলে ১" এর সরাসরি continuous ভার্সন।
একটা PMF মানের মতো না (যা একটা প্রোবাবিলিটি, ০ আর ১-এর মাঝে থাকতেই হবে), একটা PDF মান ১-এর চেয়ে বড় হতে পারে। যেটা কখনো ১-এর চেয়ে বড় হতে পারে না তা হলো যেকোনো ইন্টারভালের উপর এরিয়া। -এ একটা খুব সরু, লম্বা স্পাইক একদম বৈধ, যতক্ষণ পুরো কার্ভের নিচের মোট এরিয়া ঠিক ১ থাকে।
একটা PDF আঁকা হয় একটা মসৃণ (বা অন্তত কন্টিনিউয়াস) কার্ভ দিয়ে, random variable-এর রেঞ্জ জুড়ে। যেখানে কার্ভ বেশি উঁচু, সেখানকার কাছাকাছি মানগুলো প্রতি ইউনিট প্রস্থে তুলনামূলক বেশি সম্ভাব্য; যেখানে কম, সেখানে তুলনামূলক বিরল। কার্ভ কখনো x-অক্ষের নিচে যায় না।
কোনো রেঞ্জে পড়ার প্রোবাবিলিটি বের করতে, দুই প্রান্তের মাঝে কার্ভের নিচের অংশটা শেড করো, আর সেই শেড করা এরিয়ার সাইজটাই হলো প্রোবাবিলিটি — ঠিক এটাই নিচের প্লেগ্রাউন্ডে তুমি নিজে করতে পারবে, ইন্টারভাল টেনে আর শেড করা এরিয়া (আর মিলে যাওয়া সংখ্যা) একসাথে বদলাতে দেখে।
f(x)। ডেনসিটি ফাংশনটা নিজে — একটা নির্দিষ্ট -এ কার্ভের উচ্চতা, মাপা হয় "-এর প্রতি ইউনিটে প্রোবাবিলিটি" হিসেবে, নিজে একটা প্রোবাবিলিটি না।
কার্ভের নিচের এরিয়া। যেই মেকানিজম ডেনসিটিকে প্রোবাবিলিটিতে বদলায়। এরিয়া না থাকলে, প্রোবাবিলিটিও নেই — কার্ভের নিচে ঠিক একটা -এ একটা উলম্ব লাইনের প্রস্থ শূন্য, তাই এরিয়াও শূন্য।
একটা ইন্টারভালের উপর প্রোবাবিলিটি। একটা continuous PDF-এর জন্য একমাত্র অর্থবহ প্রোবাবিলিটি প্রশ্ন — " থেকে -এর মধ্যে," কখনো "ঠিক " না।
PDF বনাম PMF।
| বৈশিষ্ট্য | PMF (discrete) | PDF (continuous) |
|---|---|---|
| সিম্বল | p(x) | f(x) |
| এটা কি প্রোবাবিলিটি? | হ্যাঁ — সরাসরি | না — একটা ডেনসিটি; শুধু এর নিচের এরিয়া প্রোবাবিলিটি |
| ফাংশনের মানের বৈধ রেঞ্জ | , ১-এর চেয়ে বেশি হতে পারে | |
| "যোগফল / ইন্টিগ্রাল = ১" | ||
| একটা রেঞ্জের প্রোবাবিলিটি | রেঞ্জে PMF মানের যোগফল | রেঞ্জের উপর PDF-এর ইন্টিগ্রাল (এরিয়া) |
| ঠিক একটা মানের প্রোবাবিলিটি | পজিটিভ হতে পারে | সবসময় ঠিক ০ (সেকশন ৪) |
Uniform আর triangular ডেনসিটির মধ্যে টগল করো, তারপর c আর d টেনে [c, d] ইন্টারভাল শেড করো। শেড করা এরিয়া হলো P(c ≤ X ≤ d) — দেখো এটা কীভাবে ইন্টারভাল সরু হওয়ার সাথে সাথে ০-এর দিকে কমে যায়।
P(3.00 ≤ X ≤ 6.00)
0.3000
F(3.00)
0.3000
F(6.00)
0.6000
P(X = single point)
0.0000
Drag c and d toward each other — the shaded area (the probability) shrinks toward 0 as the interval width shrinks toward 0, even though the curve's height f(x) stays positive. That's exactly why P(X = x) = 0 for a continuous random variable: a single point has zero width, so it contributes zero area.
Cumulative Distribution Function (CDF), লেখা হয় , এমন একটা ফাংশন যা discrete আর continuous — দুটো random variable-এর জন্যই কাজ করে — এটা সবসময় বলে দেয় কোনো নির্দিষ্ট মান -এর সমান বা তার কম হওয়ার প্রোবাবিলিটি কত, সবচেয়ে ছোট সম্ভাব্য মান থেকে শুরু করে পর্যন্ত জমা করে।
যেখানে: তুমি যেকোনো রিয়েল সংখ্যা বসাও, তোমাকে ফেরত দেবে সেই বিন্দু বা তার নিচে random variable-টা পড়ার মোট প্রোবাবিলিটি — নাম্বার লাইনে বাম থেকে ডানে যেতে যেতে এখন পর্যন্ত জমে থাকা যোগফল।
একটা discrete random variable-এর জন্য, CDF বানানো হয় -এর সমান বা কম প্রতিটা সম্ভাব্য আউটকামের PMF মান যোগ করে:
এটা CDF-কে একটা স্টেপ ফাংশন বানায় — এটা প্রতিটা সম্ভাব্য মান -এ ঠিক পরিমাণ লাফ দেয়, আর মাঝে সব জায়গায় একদম ফ্ল্যাট থাকে (কারণ একটা সম্ভাব্য মান থেকে পরেরটার মাঝে কোনো প্রোবাবিলিটি জমা হয় না)।
একটা continuous random variable-এর জন্য, CDF হলো PDF-এর চলমান ইন্টিগ্রাল, থেকে পর্যন্ত:
এটা CDF-কে একটা মসৃণ, কন্টিনিউয়াস কার্ভ বানায় (নিচের PDF-এর মসৃণতার সাথে মিলিয়ে), স্টেপ ফাংশন না — কোনো আলাদা লাফ নেই, কারণ কোনো একক বিন্দু পজিটিভ প্রোবাবিলিটি বহন করে না (সেকশন ৪)।
দুই ক্ষেত্রেই, CDF গ্রাফের সামগ্রিক আকৃতি একই: এটা একদম বামে ০-এ শুরু হয় (বা কাছাকাছি যায়), ডানে এগোতে থাকলে বাড়ে — বা ফ্ল্যাট থাকে — আর একদম ডানে ১-এ শেষ হয় (বা কাছাকাছি যায়)। এটা কখনো কমতে পারে না, কারণ ডানে যাওয়ার সাথে সাথে প্রোবাবিলিটি শুধু জমা হয়, কখনো কমে না।
CDF রেঞ্জের প্রোবাবিলিটি হিসাবকে একটা সাধারণ বিয়োগে নামিয়ে আনে, discrete আর continuous দুই ক্ষেত্রেই:
ইনটুইশন: হলো " পর্যন্ত সবকিছু," আর হলো " পর্যন্ত সবকিছু।" বিয়োগ করলে -এর নিচের ওভারল্যাপিং অংশটা বাদ যায়, শুধু আর -এর মাঝে সরাসরি পড়ার প্রোবাবিলিটিটা থেকে যায়।
F(x) = P(X ≤ x)। CDF-এর সংজ্ঞায়িত ইকুয়েশন — সবসময় "সমান বা কম" স্টেটমেন্ট, কখনো শুধু "সমান" না।
CDF-এর বৈশিষ্ট্য। কখনো কমে না, ০ থেকে ১-এর মধ্যে থাকে, আর discrete আর continuous দুই ক্ষেত্রেই right-continuous (এমন কোনো লাফ নেই যা "খুব আগেই" দেখা যায়)।
PMF আর CDF-এর সম্পর্ক। একটা -এ PMF-এর আলাদা মানটা সমান হয় সেই বিন্দুতে CDF-এর লাফের সাইজ-এর: , যেখানে হলো -এর ঠিক আগে CDF-এর মান। উপরের সেকশন ৫-এর প্লেগ্রাউন্ডে CDF প্যানেলটা আবার দেখো — প্রতিটা স্টেপের উচ্চতা ঠিক সেই -মানের PMF বারের সমান।
PDF আর CDF-এর সম্পর্ক। PDF হলো CDF-এর ডেরিভেটিভ: । সমতুল্যভাবে, CDF হলো PDF-এর চলমান ইন্টিগ্রাল (জমা এরিয়া) — ডিফারেনশিয়েট করলে সেকশন ৬-এর ইন্টিগ্রেশনটা "উল্টে" যায়, ঠিক যেভাবে ক্যালকুলাসে সাধারণত ডেরিভেটিভ আর ইন্টিগ্রাল একে অপরকে উল্টায়। সেকশন ৬-এর প্লেগ্রাউন্ডে, আর সরাসরি বাম প্রান্ত থেকে প্রতিটা বিন্দু পর্যন্ত চলমান এরিয়া হিসেবে দেখানো হয়েছে।
একটা transformation একটা বিদ্যমান random variable নেয় আর তার উপর একটা ফাংশন প্রয়োগ করে নতুন random variable বানায়: । -এর ডিস্ট্রিবিউশন যাই হোক না কেন, -এর নিজের, সাধারণত ভিন্ন, একটা ডিস্ট্রিবিউশন থাকবে — transformation শুধু মান রিলেবেল করে না, পুরো প্রোবাবিলিটির চিত্রটাই বদলে দিতে পারে।
একটা discrete -এর জন্য, -এর PMF বের করা মানে, প্রতিটা সম্ভাব্য -এর জন্য, সেই নির্দিষ্ট -তে পৌঁছানো প্রতিটা -এর প্রোবাবিলিটি যোগ করা:
এই যোগফলটা গুরুত্বপূর্ণ হয় যখনই ওয়ান-টু-ওয়ান না — একাধিক আলাদা মান একই -তে পড়তে পারে, আর তাদের প্রোবাবিলিটিগুলো মিলে যায়।
একটা continuous -এর জন্য, -এ ট্রান্সফর্ম করতে সাধারণত হিসাব করতে হয় ফাংশনটা -এর ইন্টারভালগুলো -এর ইন্টারভালে কীভাবে টেনে বড় বা ছোট করে — ফরমালি, একটা মসৃণ, ইনভার্টিবল -এর জন্য । এই "চেঞ্জ অফ ভেরিয়েবল" ফর্মুলার পুরো ডেরিভেশন একটা অ্যাডভান্সড কোর্সের বিষয়; এখানে যেটা গুরুত্বপূর্ণ তা হলো এর মূল আইডিয়া: -তে যাওয়ার সময় x-অক্ষ টেনে বড় করলে ডেনসিটি কমে যায় (একই মোট এরিয়া একটা বড় রেঞ্জে ছড়িয়ে পড়ে), আর সংকুচিত করলে ডেনসিটি বেড়ে যায় — মোট এরিয়া ১ রাখার জন্যই ডেনসিটি ঠিক এভাবে অ্যাডজাস্ট হয়।
Discrete উদাহরণ। ধরো একটা ফেয়ার ডাইস রোল, , প্রতিটার প্রোবাবিলিটি । যদি জোড়, যদি বিজোড়। যেহেতু তিনটা মান -এ ম্যাপ হয় (২, ৪, ৬) আর তিনটা -এ (১, ৩, ৫): আর — একটা সম্পূর্ণ নতুন, অনেক সহজ দুই-মানের random variable, পুরোপুরি আসল ডাইস রোল থেকে বানানো।
Continuous উদাহরণ। ধরো uniformly distributed -এ (কনস্ট্যান্ট ডেনসিটি ), আর । -এর প্রতিটা সম্ভাব্য মান তার দ্বিগুণে টেনে বড় হয়, তাই রেঞ্জ করে -এ — কিন্তু যেহেতু একই মোট প্রোবাবিলিটি (এরিয়া ১) এখন দ্বিগুণ চওড়া একটা রেঞ্জে ছড়াতে হয়, -এর ডেনসিটি অর্ধেক উঁচু হতে হবে: , -এর জন্য। রেঞ্জ বড় করা ডেনসিটিকে সংকুচিত করেছে, ঠিক যেমনটা জেনারেল ফর্মুলা বলে দেয়।
Random variable-এর উপর প্রয়োগ করা যেকোনো ফাংশন — , , , — আরেকটা random variable তৈরি করে। সবচেয়ে কমন আর কাজের বিশেষ ক্ষেত্রটা হলো linear transformation, কারণ এটা এত প্রেডিক্টেবলভাবে আচরণ করে যে এর নিজের নাম আর নিজের শর্টকাট নিয়ম প্রাপ্য।
একটা linear transformation-এর ফর্ম , ধ্রুবক আর -এর জন্য। এই একটা ফর্ম দিয়ে অনেক দৈনন্দিন অপারেশন কভার হয়: ইউনিট বদলানো (সেলসিয়াস থেকে ফারেনহাইট), একটা স্কোর রিস্কেল করা, একটা variable-কে তার মিন-এর চারপাশে সেন্টার করা, একটা ফিচারকে মেশিন লার্নিং মডেলে দেওয়ার আগে স্ট্যান্ডার্ডাইজ করা।
একটা ডিস্ট্রিবিউশনের সবচেয়ে কাজের দুইটা সামারি সংখ্যা — expectation আর variance, সম্পূর্ণভাবে সেকশন ১৫ আর ১৬-এ কভার করা হয়েছে — একটা linear transformation-এর অধীনে সহজ, প্রেডিক্টেবল উপায়ে বদলায়, আর এখানে এটা প্রিভিউ করার মতো, কারণ এটা এই সেকশনের সরাসরি ফলাফল:
| পরিমাণ | -এর প্রভাব |
|---|---|
| — শিফট আর স্কেল সরাসরি বহন হয় | |
| — শুধু স্কেল গুরুত্বপূর্ণ; দিয়ে শিফট করার variance-এ কোনো প্রভাব নেই | |
| ডিস্ট্রিবিউশনের আকৃতি | একই সামগ্রিক আকৃতি, শুধু সরানো এবং/অথবা টানা — নতুন কোনো বাম্প বা অসামঞ্জস্যতা যোগ হয় না |
Variance মাপে মিন-এর চারপাশে ছড়ানো, নাম্বার লাইনে অবস্থান না। প্রতিটা মান একই পরিমাণ দিয়ে শিফট হলে, মিনও ঠিক দিয়ে শিফট হয় — তাই প্রতিটা মান থেকে (একইভাবে শিফট হওয়া) মিনের দূরত্ব আগের মতোই থাকে। মানগুলো কতটা ছড়ানো তার কিছুই বদলায়নি, শুধু পুরো গুচ্ছটা কোথায় বসে আছে সেটা বদলেছে।
এতক্ষণ, প্রতিটা random variable প্রতি আউটকামে একটা সংখ্যা প্রোডিউস করেছে। একটা random vector এটাকে জেনারেলাইজ করে একাধিক সংখ্যা প্রোডিউস করে, একসাথে বান্ডল করে: । প্রতিটা নিজে একটা সাধারণ random variable, কিন্তু vector-টা এদের একটা মিলিত অবজেক্ট হিসেবে ধরে, কারণ বাস্তবে এগুলো সাধারণত একই আসল আউটকাম বর্ণনা করে আর একসাথে স্টাডি করার মতো — এদের একে অপরের সাথে সম্পর্কসহ।
| Scalar Random Variable | Random Vector | |
|---|---|---|
| প্রতি আউটকামে আউটপুট | একটা সংখ্যা | কয়েকটা সংখ্যা, একসাথে বান্ডল করা |
| নোটেশন | ||
| উদাহরণ | একজন রোগীর বয়স | একজন রোগীর (বয়স, ব্লাড প্রেশার, কোলেস্টেরল) একসাথে |
| কী স্টাডি করো | একটা ডিস্ট্রিবিউশন | সব কম্পোনেন্ট একসাথে একটা জয়েন্ট ডিস্ট্রিবিউশন (সেকশন ১১) |
আর -কে আলাদা আলাদাভাবে, একে একে স্টাডি করলে সম্ভাব্য গুরুত্বপূর্ণ তথ্য হারিয়ে যায়: এরা একসাথে চলে কিনা, বিপরীতভাবে চলে কিনা, নাকি একে অপরের সাথে কোনো সম্পর্কই নেই। একটা random vector হলো সেই নোটেশন, যেটা এই সম্পর্কের তথ্যটা অক্ষত রাখে, সেকশন ১১–১৪-তে যা কভার করা হয়েছে তার ভিত্তি তৈরি করে (জয়েন্ট, মার্জিনাল, কন্ডিশনাল ডিস্ট্রিবিউশন, আর ইনডিপেন্ডেন্স)।
এটাই ঠিক সেই জিনিস যাকে মেশিন লার্নিং ফিচার ভেক্টর বলে। একটা ডেটাসেটের একটা সারি — ধরো একজন মানুষের (বয়স, আয়, শিক্ষাবর্ষ) — একটা random vector: প্রতিটা কলাম একটা কম্পোনেন্ট random variable, আর পুরো সারিটা সেই random vector-এর একটা রিয়েলাইজেশন (একটা নির্দিষ্ট আউটকাম)। একাধিক ইনপুট ফিচার নেয় এমন প্রতিটা মডেল, ফরমালি, random vector-এর উপর কাজ করছে।
"Multivariate" মানে শুধু "একের বেশি random variable একসাথে জড়িত" — সেকশন ১১ থেকে ১৪ পর্যন্ত পুরো বিষয়টা এটাই। এই চ্যাপ্টারের বাকি অংশ, এখান থেকে, একটা একক random variable আলাদাভাবে স্টাডি করা থেকে সরে যায় দুই বা ততোধিক random variable একসাথে কীভাবে সম্পর্কিত সেটা স্টাডি করার দিকে — যেখানে আসল ডেটাসেটের জন্য সবচেয়ে কাজের মেশিনারি থাকে।
যখন দুইটা (বা বেশি) random variable একই এক্সপেরিমেন্ট থেকে আসে, তাদের জয়েন্ট ডিস্ট্রিবিউশন বর্ণনা করে তারা একসাথে নির্দিষ্ট মানের কম্বিনেশন নেওয়ার প্রোবাবিলিটি — শুধু আলাদা আলাদাভাবে না। এটা সেকশন ১০-এর random vector-এর স্বাভাবিক পরবর্তী ধাপ: জয়েন্ট ডিস্ট্রিবিউশন হলো আসলে একটা random vector দিয়ে হিসাব করার উপায়।
দুইটা discrete random variable আর -এর জন্য, joint PMF হলো:
যেখানে: এই একটা সংখ্যাই হলো প্রোবাবিলিটি যে সমান আর, একই সময়ে, সমান — দুটো variable-এর উপরই একসাথে একটা জয়েন্ট কন্ডিশন, দুটো আলাদা কন্ডিশন আলাদাভাবে না।
দুইটা continuous random variable-এর জন্য, joint PDF সেকশন ৬-এর সিঙ্গেল-ভেরিয়েবল PDF-এর মতোই ডেনসিটির ভূমিকা রাখে, কিন্তু এখন একটা দ্বিমাত্রিক অঞ্চলের উপর: , - প্লেনের যেকোনো অঞ্চল -এর জন্য।
Joint CDF দুই দিকেই একসাথে প্রোবাবিলিটি জমা করে: — প্রোবাবিলিটি যে বেশি হলেও আর বেশি হলেও , একসাথে।
"Joint probability" হলো এদের যেকোনোটার জন্য জেনারেল টার্ম — দুই বা তার বেশি random variable-এর মান একসাথে নিয়ে একটা প্রোবাবিলিটি স্টেটমেন্ট, একে একে না।
P(X = x, Y = y)। Joint PMF-এর সংজ্ঞায়িত পরিমাণ — কমাটা পড়ো "আর" হিসেবে: দুটো কন্ডিশনই একসাথে সত্যি হওয়ার প্রোবাবিলিটি।
f(x, y)। Joint PDF — একমাত্রার বদলে দুই মাত্রার উপর একটা ডেনসিটি, আসল প্রোবাবিলিটি পেতে একটা লাইন-সেগমেন্ট না, একটা এরিয়ার উপর ইন্টিগ্রেট করা হয়।
Joint Distribution। আর একসাথে কীভাবে আচরণ করে তার সম্পূর্ণ বর্ণনা — আর -এর প্রতিটা কম্বিনেশনের জন্য প্রতিটা joint PMF বা PDF মান।
Joint Distribution থেকে প্রোবাবিলিটি। একক variable-এর মতোই, আর -এর মিলিত রেঞ্জের প্রোবাবিলিটি পাওয়া যায় জয়েন্ট ডিস্ট্রিবিউশনকে সংশ্লিষ্ট অঞ্চলের উপর যোগ (discrete) বা ইন্টিগ্রেট (continuous) করে।
দুইটা random variable X আর Y-এর joint PMF টেবিল এডিট করো। মার্জিনাল, বাছাই করা একটা কন্ডিশনাল ডিস্ট্রিবিউশন, কোভ্যারিয়ান্স, কোরিলেশন, আর ইনডিপেন্ডেন্স চেক — সব একসাথে বদলাতে দেখো।
X and Y were generated with no relationship to each other. Edit any cell weight to explore other joint distributions.
Joint PMF — P(X = x, Y = y)
| X \ Y | 0 | 1 | P(X=x) |
|---|---|---|---|
| 0 | 0.150 | 0.100 | 0.250 |
| 1 | 0.300 | 0.200 | 0.500 |
| 2 | 0.150 | 0.100 | 0.250 |
| P(Y=y) | 0.600 | 0.400 | 1.000 |
Row X = 0
Row X = 1
Row X = 2
Conditional PMF — P(Y = y | X = x)
Y = 0
0.600
Y = 1
0.400
E[X]
1.000
E[Y]
0.400
Cov(X,Y)
0.000
Correlation
0.000
"Independent features" প্রিসেট দিয়ে শুরু করো আর লক্ষ্য করো ইনডিপেন্ডেন্স ব্যানারটা সবুজ হয়ে যায়। তারপর "Strongly dependent"-এ বদলাও আর কন্ডিশনাল PMF প্যানেলের উপরে X=0, X=1, X=2 বাটনগুলোতে ক্লিক করো — দেখো -এর ডিস্ট্রিবিউশন কতটা তীব্রভাবে বদলায় কোন -এ কন্ডিশন করছো তার উপর নির্ভর করে। এই বদলে যাওয়া কন্ডিশনাল ডিস্ট্রিবিউশনটাই dependence — চোখের সামনে দেখা।
আর -এর একটা joint distribution থাকলে, -এর একার marginal distribution হলো -কে সম্পূর্ণ বাদ দিয়ে বের করা -এর নিজের ডিস্ট্রিবিউশন — "-কে পুরোপুরি উপেক্ষা করলে দেখতে কেমন?" এটাকে "marginal" বলা হয়, কারণ উপরের প্লেগ্রাউন্ডের মতো একটা joint PMF টেবিলে, এই টোটালগুলো ঐতিহ্যগতভাবে টেবিলের মার্জিনে (সারি আর কলামের টোটাল) লেখা হয়।
ইনটুইশন: যাই হোক না কেন, হওয়ার প্রোবাবিলিটি বের করতে, -এর joint প্রোবাবিলিটি প্রতিটা সম্ভাব্য জুড়ে যোগ করো — যেভাবেই হোক না কেন, তার সাথে যেই মানই আসুক না কেন, সবগুলো।
একই আইডিয়ার continuous ভার্সন: -এর প্রতিটা সম্ভাব্য মানের উপর joint ডেনসিটি ইন্টিগ্রেট করো, দ্বিমাত্রিক joint ডেনসিটিকে -এর একার এক-মাত্রার মার্জিনাল ডেনসিটিতে নামিয়ে আনো।
উপরের প্লেগ্রাউন্ডের joint PMF টেবিলে, প্রতিটা সারির টোটাল (সেই সারি জুড়ে যোগফল) ঠিক সেই সারির -মানের জন্য , আর প্রতিটা কলামের টোটাল ঠিক সেই কলামের -মানের জন্য — তুমি যেই সারি আর কলাম টোটালগুলো দেখছো, সেগুলোই হলো মার্জিনাল ডিস্ট্রিবিউশন, স্লাইডার টানার সাথে সাথে লাইভ হিসাব করা।
Discrete Variable-এর জন্য Summation। অন্য variable-এর প্রতিটা মানের উপর যোগ করলে সেটা বাদ পড়ে যায় আর একক-variable মার্জিনাল PMF পাওয়া যায়।
Continuous Variable-এর জন্য Integration। একই আইডিয়ার continuous ভার্সন — অন্য variable-এর প্রতিটা মানের উপর ইন্টিগ্রেট করো।
Joint বনাম Marginal Distribution।
| Joint Distribution | Marginal Distribution | |
|---|---|---|
| কী বর্ণনা করে | X আর Y একসাথে, মিলিত আউটকাম হিসেবে | শুধু X (বা শুধু Y), অন্যটা সম্পূর্ণ উপেক্ষা করে |
| নোটেশন | বা | বা |
| কীভাবে পাওয়া যায় | দুটো variable একসাথে সরাসরি মডেল/অবজার্ভ করে | Joint distribution-কে অন্য variable-এর উপর যোগ বা ইন্টিগ্রেট করে |
| তথ্যের পরিমাণ | সম্পূর্ণ — X আর Y-এর সম্পর্কও অন্তর্ভুক্ত | আংশিক — X আর Y-এর সম্পর্কের সব তথ্য হারায় |
একটা conditional distribution বর্ণনা করে একটা random variable কীভাবে আচরণ করে যখন আরেকটা random variable-এর মান আগে থেকে জানা থাকে — এটা আগের চ্যাপ্টার Conditional Probability & Independence-এ শেখা conditional probability-র সরাসরি random-variable ভার্সন, শুধু একক ইভেন্টের বদলে পুরো ডিস্ট্রিবিউশনের উপর প্রয়োগ করা।
যেখানে: এটা ঠিক -এর joint প্রোবাবিলিটি, একা কতটা সম্ভাব্য ছিল তা দিয়ে ভাগ করা — শুধু এমন আউটকামগুলোতে মনোযোগ সীমিত করা, তারপর সেই সীমিত অংশের মধ্যে -এর মধ্যে প্রোবাবিলিটি মাস কীভাবে ছড়ানো তা জিজ্ঞেস করা।
সরাসরি প্রোবাবিলিটির বদলে ডেনসিটি দিয়ে একই ভাগ — -এ joint ডেনসিটি, -এ মার্জিনাল ডেনসিটি দিয়ে রিস্কেল করা, যাতে ফলাফল কন্ডিশনাল ডেনসিটি , -এর উপর ঠিক ১-এ ইন্টিগ্রেট হয়, যেমনটা যেকোনো বৈধ PDF-এর হওয়া উচিত।
সেকশন ১১-এর প্লেগ্রাউন্ডে, একটা মান বাছাই করে দুইটা কন্ডিশনাল PMF কার্ড পড়াটাই ঠিক এই হিসাবটা, লাইভ করা: joint টেবিলের প্রতিটা সারিকে সেই সারির নিজের টোটাল (তার মার্জিনাল প্রোবাবিলিটি) দিয়ে ভাগ করলে, -এর একটা ডিস্ট্রিবিউশন পাওয়া যায় যেটা সেই একটা নির্দিষ্ট -মানের জন্য নির্দিষ্ট।
এই তিনটা আইডিয়া একটা মাত্র, মনে রাখার মতো ইকুয়েশনে মিলে যায় — আগের চ্যাপ্টারের একই multiplication-rule প্যাটার্ন, এখন পুরো ডিস্ট্রিবিউশনে প্রয়োগ করা:
| আছে | চাই | কীভাবে |
|---|---|---|
| Joint distribution | Marginal distribution | অন্য variable-টা যোগ/ইন্টিগ্রেট করে বাদ দাও (সেকশন ১২) |
| Joint distribution + marginal | Conditional distribution | Joint-কে marginal দিয়ে ভাগ করো |
| Marginal + conditional distribution | Joint distribution | Marginal-কে conditional দিয়ে গুণ করো |
দুইটা random variable আর independent হয়, যদি একটার মান জানা অন্যটার সম্পর্কে একদমই কোনো নতুন তথ্য না দেয় — আগের চ্যাপ্টারের independent ইভেন্ট থেকে independent random variable-এর সরাসরি এক্সটেনশন।
(Continuous ক্ষেত্রে: প্রতিটা -এর জন্য।)
যেখানে: Independence-এর জন্য চাই joint distribution সমান হবে দুটো মার্জিনালের গুণফলের, প্রতিটা আর -এর কম্বিনেশনে — শুধু গড়ে না, আর শুধু কয়েকটা সুবিধাজনক কম্বিনেশনে না।
যখন আর independent, তাদের joint PMF/PDF শুধু দুইটা আলাদা, একক ডিস্ট্রিবিউশনের গুণফল ছাড়া কিছু না — পুরো দ্বিমাত্রিক joint টেবিল শুধু সারি টোটাল আর কলাম টোটাল থেকেই আবার বানানো যায়, কোনো এক্সট্রা তথ্য ছাড়াই।
| বৈশিষ্ট্য | Independent | Dependent |
|---|---|---|
| Joint distribution | অন্তত একটা -এর জন্য | |
| Conditional distribution | — প্রতিটা -এর জন্য একই | Conditional distribution -এর উপর নির্ভর করে বদলায় |
| Covariance | সবসময় ঠিক ০ (সেকশন ১৭) | পজিটিভ, নেগেটিভ, বা শূন্য হতে পারে |
| শুধু মার্জিনাল থেকে পুনর্নির্মাণযোগ্য? | হ্যাঁ | না — joint-এ মার্জিনালে না থাকা এক্সট্রা তথ্য থাকে |
আগের চ্যাপ্টারের ইভেন্টের মতোই, দুইটা random variable সামগ্রিকভাবে dependent হতে পারে, কিন্তু একটা তৃতীয় random variable জানা থাকলে conditionally independent হয়ে যেতে পারে: , প্রতিটা -এর জন্য। এটা ঠিক Naive Bayes-এর পিছনের অনুমান (আগের চ্যাপ্টারের ML সেকশনে কভার করা হয়েছে): ফিচারগুলোকে conditionally independent ধরা হয় ক্লাস লেবেল দেওয়া থাকলে, যদিও সামগ্রিকভাবে এরা কোরিলেটেড হতে পারে।
Independent: দুইটা আলাদা ডাইস রোল
একটা রোলের ফলাফল পরেরটার উপর কোনো প্রভাব ফেলে না — আলাদা, সম্পর্কহীন এক্সপেরিমেন্ট।
Independent: সম্পর্কহীন সেন্সর রিডিং
ফিজিক্যালি সম্পর্কহীন দুই জায়গার দুইটা সেন্সরের তাপমাত্রা রিডিং।
Dependent: উচ্চতা আর ওজন
লম্বা মানুষরা গড়ে বেশি ওজনের হয় — একটা জানলে অন্যটার সম্পর্কে তোমার প্রত্যাশা বদলে যায়।
Dependent: পড়ার সময় আর পরীক্ষার স্কোর
বেশি পড়াশোনার সময় সাধারণত (যদিও নিশ্চিত না) বেশি স্কোরের সাথে সম্পর্কিত।
Dependent: তাপমাত্রা আর আইসক্রিমের বিক্রি
গরমের দিনে বিক্রি বেশি — correlation ≠ causation শেখানোর ক্লাসিক উদাহরণ।
একটা random variable-এর expected value (বা expectation, বা mean) হলো একটা মাত্র সংখ্যা, যা সামারাইজ করে "এর ডিস্ট্রিবিউশন কোথায় কেন্দ্রীভূত" — যদি তুমি আন্ডারলাইং এক্সপেরিমেন্টটা বিপুল সংখ্যকবার রিপিট করো আর ফলাফলের গড় নাও, তাহলে লং-রান যেই গড় মানটা পাবে।
যেখানে: যোগ করার আগে প্রতিটা সম্ভাব্য মান -কে তার নিজের প্রোবাবিলিটি দিয়ে ওয়েট করা হয় — বেশি ঘটা মানগুলো গড়টাকে নিজেদের দিকে বেশি টানে।
একই ওয়েটেড-অ্যাভারেজ আইডিয়া, যোগফলের বদলে ইন্টিগ্রাল আর PMF-এর বদলে PDF দিয়ে — ডেনসিটি ঠিক discrete ক্ষেত্রে -এর মতো একই ওয়েটিং ভূমিকা রাখে।
অগত্যা এমন একটা মান না, যা আসলেই নিতে পারে — এটা একটা কমন কনফিউশনের জায়গা। ৩টা ফেয়ার কয়েন টসে হেড সংখ্যার expected value , যদিও "১.৫টা হেড" কোনো একক ৩-টসের সেটে সম্ভব আউটকাম না। অনেক রিপিটিশনের লং-রান গড় বর্ণনা করে, কোনো একক নির্দিষ্ট ট্রায়ালের প্রেডিকশন না।
প্রোবাবিলিটির সবচেয়ে শক্তিশালী, সবচেয়ে বেশি ব্যবহৃত ফ্যাক্টগুলোর একটা: expectation linear, মানে এটা যোগফল আর কনস্ট্যান্ট গুণের উপর পরিষ্কারভাবে ভাগ হয় — আর, লক্ষণীয়ভাবে, এটা তখনও সত্যি যখন জড়িত random variable-গুলো একে অপরের উপর dependent:
যেখানে: , , যেকোনো কনস্ট্যান্ট। এটা আর independent, কোরিলেটেড, বা যেকোনো কিছু হোক না কেন কাজ করে — এই ফ্যাক্টটাই expectation-কে এই চ্যাপ্টারের অন্য বেশিরভাগ পরিমাণের চেয়ে অনেক সহজে হিসাব করার মতো বানায়, যেগুলোর সাধারণত independence সম্পর্কে জানা লাগে।
E[X]। Random variable-টার নিজের expected value — এর ভরকেন্দ্র।
E[g(X)]। -এর কোনো ফাংশনের expected value, -কে (নিজে না) -এর নিজের প্রোবাবিলিটি বা ডেনসিটি দিয়ে ওয়েট করে হিসাব করা: , বা continuous -এর জন্য সংশ্লিষ্ট ইন্টিগ্রাল। এভাবেই ঠিক পরের সেকশনে variance-এর জন্য দরকার হিসাব করা হয়।
Weighted Average হিসেবে Expected Value। বোঝার সবচেয়ে পরিষ্কার উপায়: এটা একটা গড়, যেখানে প্রতিটা সম্ভাব্য মানকে কতটা সম্ভাব্য তা দিয়ে ওয়েট করা হয়, একটা প্লেইন অ্যারিথমেটিক গড়ের মতো সব মানকে সমান গুরুত্ব না দিয়ে।
ব্যবহারিক উদাহরণ। একটা ইন্স্যুরেন্স কোম্পানি একটা পলিসি প্রাইস করে সব পলিসিহোল্ডারের উপর দিয়ে। একটা ক্যাসিনো গেমের "হাউস এজ" ঠিক । একটা রেকমেন্ডেশন সিস্টেম অনুমান করে কনটেন্ট র্যাঙ্ক করার জন্য।
উদাহরণ — একটা সহজ গেম
একটা গেম খেলতে ৫ টাকা লাগে। তুমি ২০ টাকা জিতবে ০.১ প্রোবাবিলিটিতে, নাহলে ০ টাকা। তোমার নেট গেইন হয় (জয়, ৫ টাকা বাদ দিয়ে) ০.১ প্রোবাবিলিটিতে, বা (এন্ট্রি ফি লস) ০.৯ প্রোবাবিলিটিতে।
গড়ে একজন প্লেয়ার প্রতি খেলায় ৩ টাকা হারায়, যদিও কোনো একক খেলায় ফলাফল সবসময় ঠিক বা — কখনো না। এটাই ঠিক "কোনো একক আউটকাম সম্ভব না" পয়েন্টটা, টাকা দিয়ে বাস্তবে দেখানো।
বলে দেয় একটা ডিস্ট্রিবিউশন কোথায় কেন্দ্রীভূত, কিন্তু সেই কেন্দ্রের চারপাশে মানগুলো কতটা ছড়ানো তার কিছুই বলে না। Variance এই ফাঁকটা পূরণ করে: এটা মিন থেকে স্কয়ার্ড দূরত্বের expected value।
যেখানে: প্রথম ফর্মটা সরাসরি সংজ্ঞা — প্রতিটা মানের মিন থেকে স্কয়ার্ড দূরত্বের গড় নাও। দ্বিতীয় ফর্ম, , অ্যালজেব্রাইকভাবে একই, কিন্তু প্রায় সবসময় হিসাব করা অনেক সহজ, কারণ এতে শুধু আর লাগে (দুটোই সেকশন ১৫-এর সাধারণ expectation), মিন-কেন্দ্রিক নতুন কোনো হিসাব লাগে না।
যেখানে: স্কয়ার রুট নিলে variance-এর ইউনিট (-এর ইউনিটের বর্গ — যেমন "টাকা²") আবার -এর নিজের ইউনিটে ফিরে আসে (যেমন "টাকা") — এই কারণেই সাধারণত variance না, standard deviation-টাই সরাসরি রিপোর্ট আর ব্যাখ্যা করা হয়।
একটা বড় variance মানে মানগুলো, গড়ে, মিন থেকে দূরে — বেশি ছড়ানো, কম প্রেডিক্টেবল ডিস্ট্রিবিউশন। ঠিক ০ variance মানে প্রতিটা আউটকামই ঠিক মিন-এর সমান — এমন একটা random variable যা আসলে random-ই না, এই অর্থে যে এটা কখনো মিন থেকে সরে না।
Standard deviation হলো "মিন থেকে সাধারণ দূরত্ব," আসল variable যেই ইউনিটে মাপা হয়েছে সেই একই ইউনিটে — এই কারণেই একটা উচ্চতা ডিস্ট্রিবিউশনের SD সেন্টিমিটারে রিপোর্ট করা হয়, "সেন্টিমিটার স্কয়ার"-এ না। একটা ছোট SD মানে বেশিরভাগ মান মিন-এর কাছাকাছি জমে থাকে; একটা বড় SD মানে মান প্রায়ই মিন থেকে অনেক দূরে পাওয়া যায়।
Var(X)। উপরে সংজ্ঞায়িত variance-টা নিজে।
E[X²]। -এর "সেকেন্ড মোমেন্ট" — স্কয়ারের expected value, ঠিক অন্য যেকোনো -এর মতো হিসাব করা হয়, সেকশন ১৫ থেকে, দিয়ে। এই পরিমাণটাই শর্টকাট variance ফর্মুলাকে এত সুবিধাজনক বানায়।
Variance ও Standard Deviation-এর সম্পর্ক। SD শুধুই ; সমতুল্যভাবে, । এরা ছড়ানো সম্পর্কে ঠিক একই তথ্য বহন করে, শুধু আলাদা ইউনিটে প্রকাশ করা।
Scaling-এর প্রভাব। সেকশন ৯-এর transformation নিয়ম থেকে সরাসরি চালিয়ে: , আর তাই । দিয়ে স্কেল করলে standard deviation ঠিক দিয়ে টানা হয়; দিয়ে শিফট করলে কোনো প্রভাব নেই।
উদাহরণ — ডাইস রোল
একটা ফেয়ার ডাইস রোলের জন্য, আর ।
একটা সাধারণ রোল মিন ৩.৫ থেকে প্রায় ১.৭ ইউনিট দূরে পড়ে — এই ইনটুইশনের সাথে মিলে যে ডাইস রোল ছয়টা ফেস জুড়ে বেশ ছড়ানো। সেকশন ৫-এর প্লেগ্রাউন্ডে "Single die roll" প্রিসেটে ফিরে গিয়ে এই সংখ্যাগুলো লাইভ Var(X) আর SD(X) স্ট্যাট কার্ডের সাথে মিলিয়ে দেখো।
Covariance মাপে দুইটা random variable একসাথে একই দিকে চলে কিনা। এটা variance-এর স্বাভাবিক দুই-variable এক্সটেনশন — একটা variable-এর নিজের বিপরীতে ছড়ানো মাপার বদলে, এটা মাপে একটা variable-এর মিন থেকে বিচ্যুতি আরেকটার সাথে কতটা মেলে।
যেখানে: দ্বিতীয়, শর্টকাট ফর্মটাই আবার ব্যবহারিকভাবে সহজ — (গুণফলের expectation), , আর থেকে হিসাব করা, যেগুলো সবই সরাসরি joint আর marginal distribution থেকে আসে।
| Cov(X,Y)-এর চিহ্ন | মানে |
|---|---|
| পজিটিভ | X তার মিন-এর উপরে থাকলে, Y-ও সাধারণত তার মিন-এর উপরে থাকে (আর উল্টোটাও) — দুটো একই দিকে চলে |
| নেগেটিভ | X তার মিন-এর উপরে থাকলে, Y সাধারণত তার মিন-এর নিচে থাকে — দুটো বিপরীত দিকে চলে |
| শূন্য | কোনো দিকেই ধারাবাহিক লিনিয়ার প্রবণতা নেই (নিচের সতর্কবার্তা দেখো) |
আর independent হলে (সেকশন ১৪), তাদের covariance সবসময় ঠিক ০। কিন্তু উল্টোটা গ্যারান্টিড না: দুইটা variable zero covariance রাখতে পারে, তবুও dependent থাকতে পারে, যদি তাদের সম্পর্কটা শক্তভাবে নন-লিনিয়ার হয় (যেমন , যেখানে ০-এর চারপাশে সিমেট্রিক — আর স্পষ্টতই dependent, তবুও তাদের covariance ঠিক ০-এ দাঁড়ায়)। Covariance শুধুই লিনিয়ার প্রবণতা ধরতে পারে, আর একটা সত্যিকারের, শক্তিশালী, বাঁকা সম্পর্ক পুরোপুরি মিস করতে পারে।
যেহেতু covariance-এর কাঁচা সাইজ আর যেই ইউনিটে মাপা হয়েছে তার উপর নির্ভর করে (উচ্চতা সেন্টিমিটার থেকে মিটারে বদলালে covariance-এর সংখ্যা বদলে যায়, যদিও আসল সম্পর্কটা মোটেও বদলায়নি), correlation covariance-কে আর -এর মধ্যে একটা ইউনিটহীন সংখ্যায় রিস্কেল করে:
যেখানে: দুটো standard deviation দিয়ে ভাগ করলে ইউনিটগুলো সম্পূর্ণভাবে বাতিল হয়ে যায়, লিনিয়ার সম্পর্কের শক্তি আর দিক-এর একদম বিশুদ্ধ মাপ থেকে যায়: একটা নিখুঁত পজিটিভ লিনিয়ার সম্পর্ক, একটা নিখুঁত নেগেটিভ, আর মানে কোনো লিনিয়ার সম্পর্কই নেই।
| বৈশিষ্ট্য | Covariance | Correlation |
|---|---|---|
| রেঞ্জ | ||
| X, Y-এর ইউনিটের উপর নির্ভর করে? | হ্যাঁ | না — ইউনিটহীন, স্কেল-ইনভ্যারিয়েন্ট |
| ভিন্ন variable জোড়ার মধ্যে তুলনা করা সহজ? | না | হ্যাঁ — সবসময় একই স্কেল |
| ফর্মুলা |
Cov(X,Y)। উপরে সংজ্ঞায়িত covariance-টা নিজে — যেখান থেকে correlation হিসাব করা হয়, সেই বিল্ডিং ব্লক।
Pearson Correlation। উপরের নির্দিষ্ট, সবচেয়ে কমন correlation ফর্মুলা, Karl Pearson-এর নামে; এটা শুধু লিনিয়ার সম্পর্ক ধরে (উপরের Warning দেখো)।
Variable-দের সম্পর্ক। Covariance আর correlation হলো দুইটা স্ট্যান্ডার্ড টুল, যা দিয়ে একটা মাত্র সংখ্যায় বলা যায় দুইটা random variable-এর মান একসাথে কতটা চলে।
ML-এ ফিচার সম্পর্ক। ফিচার কোরিলেশন ম্যাট্রিক্স — একটা ডেটাসেটের প্রতিটা কলাম জোড়ার মানের টেবিল — এক্সপ্লোরেটরি ডেটা অ্যানালাইসিসের একটা স্ট্যান্ডার্ড প্রথম ধাপ, রিডান্ডেন্ট ফিচার (খুব বেশি ) বা অপ্রত্যাশিত সম্পর্ক খুঁজে বের করতে ব্যবহৃত হয়।
সেকশন ১১-এর প্লেগ্রাউন্ডে ফিরে গিয়ে "Mild positive relationship" প্রিসেট ট্রাই করো — লক্ষ্য করো Cov(X,Y) আর correlation দুটোই পজিটিভ, কিন্তু তাদের সর্বোচ্চ মানের কাছাকাছি না — প্রিসেটের সেলগুলোর "কিছুটা, পুরোপুরি না" সম্পর্কের সাথে মিলে।
এই পুরো চ্যাপ্টারের মেকানিজম — PMF, PDF, CDF, joint/marginal/conditional distribution, independence, expectation, variance, covariance — মেশিন লার্নিং থেকে আলাদা রাখা কোনো বিমূর্ত গণিত না। এটাই মেশিন লার্নিং যে ভোকাবুলারি দিয়ে তৈরি, ঠিক সেটা।
একটা ট্রেনিং ডেটাসেটের প্রতিটা কলাম — বয়স, পিক্সেল ব্রাইটনেস, শব্দ ফ্রিকোয়েন্সি — একটা random variable ধরা হয়, যা একটা আন্ডারলাইং (সাধারণত অজানা) ডিস্ট্রিবিউশন থেকে স্যাম্পল করা। একটা মডেল "সেই" বয়স কলামটাকে ফিক্সড লিস্ট হিসেবে দেখে না; স্ট্যাটিস্টিক্যালি, এটা প্রতিটা সারির বয়সকে একটা বয়স random variable থেকে বের হওয়া একটা রিয়েলাইজড মান হিসেবে ধরে।
তুমি যে লেবেল বা টার্গেট প্রেডিক্ট করতে চাও — "স্প্যাম নাকি না," "বাড়ির দাম," "পরের শব্দ" — সেটাও একটা random variable, প্রায়ই লেখা হয় । সুপারভাইজড লার্নিং, এই ভাষায়, হলো conditional distribution (সেকশন ১৩)-এর কাছাকাছি কিছু শেখার কাজ — ইনপুট ফিচার দেওয়া থাকলে টার্গেটটা দেখতে কেমন।
-সারির একটা ডেটাসেটকে একই আন্ডারলাইং random vector-এর (সেকশন ১০) টা independent রিয়েলাইজেশন হিসেবে ধরা হয় — প্রতিটা সারি -এর একটা স্যাম্পল।
একটা ফিচার মোটামুটি uniform, তীক্ষ্ণভাবে পিকড, স্কিউড, নাকি মাল্টি-মোডাল (এর PMF বা PDF আকৃতি) — এটা বোঝা সরাসরি মডেলিং সিদ্ধান্তে প্রভাব ফেলে — যেমন, একটা ফিচারকে নির্দিষ্ট মডেলে দেওয়ার আগে লগ-ট্রান্সফর্ম দরকার কিনা, বা এক্সট্রিম ভ্যালুর জন্য স্পেশাল হ্যান্ডলিং দরকার কিনা।
| ফিচার টাইপ | উদাহরণ | সাধারণ হ্যান্ডলিং |
|---|---|---|
| Discrete / categorical | দেশ, প্রোডাক্ট ক্যাটাগরি, জেন্ডার | One-hot encoding, embedding, বা PMF-স্টাইল ক্যাটাগরিকাল ডিস্ট্রিবিউশন হিসেবে ট্রিট করা |
| Discrete / count | কয়টা পারচেজ, কয়টা ক্লিক | Poisson-স্টাইল মডেলিং, বা সাধারণ নাম্বারিক ইনপুট হিসেবে ট্রিট করা |
| Continuous | বয়স, আয়, তাপমাত্রা, পিক্সেল ইনটেনসিটি | স্কেলিং/নরমালাইজেশন, PDF-স্টাইল continuous ডিস্ট্রিবিউশন হিসেবে ট্রিট করা |
আসল ডেটাসেটে প্রায় কখনোই ফিচার independent থাকে না — বয়স আর আয়, উদাহরণস্বরূপ, সাধারণত কোরিলেটেড (সেকশন ১৭)। এমন মডেল যা ফিচারগুলোর joint distribution হিসাবে নেয় (প্রতিটাকে আলাদাভাবে না ধরে), এমন ইন্টারঅ্যাকশন ধরতে পারে যা একটা নিষ্পাপ independent মডেল সম্পূর্ণ মিস করবে।
প্রায় প্রতিটা প্রেডিক্টিভ মডেল, মূলত, একটা conditional distribution অনুমান করছে: একটা ক্লাসিফায়ার অনুমান করে , একটা রিগ্রেশন মডেল অনুমান করে ( দেওয়া থাকলে -এর conditional distribution-এর মিন), আর একটা জেনারেটিভ মডেল সম্পূর্ণ conditional distribution অনুমান করে, শুধু এর মিন না।
মডেল ট্রেইন করতে ব্যবহৃত loss function নিজেই expectation। Squared error মিনিমাইজ করে মডেল ট্রেইন করা, ফরমালি, ট্রেনিং ডিস্ট্রিবিউশন জুড়ে -এর একটা অনুমান মিনিমাইজ করা — সেকশন ১৬-এর variance-এর সংজ্ঞাটাই, একটা কাঁচা random variable-এর বদলে prediction error-এ প্রয়োগ করা।
(bias-variance অর্থে) একটা হাই-variance মডেল এমন প্রেডিকশন দেয় যা কোন নির্দিষ্ট ট্রেনিং সেট দেখেছে তার উপর নির্ভর করে দারুণভাবে দুলতে থাকে — এটা সরাসরি এই চ্যাপ্টারের variance-এর সাথে সম্পর্কিত, কারণ এটা মাপে ট্রেনিং ডেটার আলাদা আলাদা র্যান্ডম স্যাম্পল জুড়ে মডেলের আউটপুট কতটা ছড়ানো।
Principal Component Analysis (PCA), সবচেয়ে বেশি ব্যবহৃত ডাইমেনশনালিটি-রিডাকশন টেকনিকগুলোর একটা, সরাসরি একটা ডেটাসেটের covariance matrix-এর উপর কাজ করে — প্রতিটা ফিচার জোড়ার মানের (সেকশন ১৭) একটা পূর্ণ গ্রিড — যেই দিকগুলোতে ডেটা সবচেয়ে বেশি ভ্যারি করে তা খুঁজে বের করার জন্য।
এমন কোনো মেশিন লার্নিং কনসেপ্ট খুঁজে পাওয়া সত্যিই কঠিন — loss function, regularization, generative model, evaluation metric, uncertainty estimate — যা শেষমেশ এই চ্যাপ্টারে সংজ্ঞায়িত PMF/PDF, expectation, variance, বা covariance-এর উপর নির্ভর করে না। এখানে স্বচ্ছন্দ হয়ে গেলে কোর্সের বাকি অংশে এর সুফল পাবে।
সমাধান দেখার আগে নিজে চেষ্টা করো — প্রতিটা প্রশ্ন এই চ্যাপ্টারের একটা নির্দিষ্ট স্কিল টার্গেট করে।
১. Discrete বনাম Continuous চেনা। প্রতিটাকে ক্লাসিফাই করো: (ক) একটা রচনায় বানান ভুলের সংখ্যা, (খ) ১০০ মিটার দৌড়ের সঠিক সময়, (গ) একটা পরিবারে সন্তানের সংখ্যা, (ঘ) একটা বোতলে পানির সঠিক আয়তন।
সমাধান: (ক) discrete, (খ) continuous, (গ) discrete, (ঘ) continuous — (ক) আর (গ) গণনা; (খ) আর (ঘ) মাপজোখ।
২. একটা PMF বানানো। একটা ব্যাগে ৩টা লাল আর ২টা নীল বল। একটা বল তোলো; যদি লাল, যদি নীল। PMF বানাও।
সমাধান: , । চেক: ✓ বৈধ PMF।
৩. PMF থেকে প্রোবাবিলিটি হিসাব। সেকশন ৫-এর ডিফেক্টিভ-ইউনিট PMF ব্যবহার করে (), বের করো।
সমাধান: ।
৪. একটা PDF ব্যাখ্যা করা। একটা PDF দেওয়া আছে , -এর জন্য, বাকি জায়গায় ০। এটা বৈধ কিনা কনফার্ম করো, আর মানে কী ব্যাখ্যা করো।
সমাধান: ✓ বৈধ। একটা ডেনসিটি, প্রোবাবিলিটি না — মানে -এর মান ০.৯-এর কাছাকাছি হওয়ার ডেনসিটি বেশি, ০.১-এর কাছাকাছি হওয়ার চেয়ে (যেখানে ), তাই রেঞ্জের উপরের দিকের মানগুলো তুলনামূলক বেশি সম্ভাব্য।
৫. PDF থেকে প্রোবাবিলিটি হিসাব। প্রবলেম ৪-এর , -এ ব্যবহার করে বের করো।
সমাধান: ।
৬. একটা CDF বানানো। প্রবলেম ২-এর বল-তোলার ব্যবহার করে, আর -এর জন্য বানাও।
সমাধান: । ।
৭. Expected Value হিসাব। একটা ফেয়ার ডাইস রোলের জন্য, হিসাব করো।
সমাধান: ।
৮. Variance হিসাব। দুইটা কয়েন টস; = হেড সংখ্যা, । বের করো।
সমাধান: । । ।
৯. Standard Deviation হিসাব। প্রবলেম ৮-এর variance ব্যবহার করে বের করো।
সমাধান: ।
১০. Covariance হিসাব। দুইটা random variable-এর joint PMF: । বের করো।
সমাধান: প্রতিটা। (শুধু সেলটাই কন্ট্রিবিউট করে, কারণ বাকি জায়গায় )। — পজিটিভ, তাই আর একসাথে চলার প্রবণতা রাখে।
১১. Joint ও Marginal Distribution প্রবলেম। প্রবলেম ১০-এর joint PMF ব্যবহার করে, marginal আর conditional বের করো।
সমাধান: । ।
Random Variable কী?
একটা এক্সপেরিমেন্টের আউটকামকে সংখ্যায় ম্যাপ করা।
Discrete বনাম Continuous
ঠিক করা কোন টুলবক্স (PMF/যোগফল নাকি PDF/ইন্টিগ্রাল) খাটবে।
PMF, PDF, CDF
একটা ডিস্ট্রিবিউশন সম্পূর্ণভাবে বর্ণনা করার তিনটা উপায় শেখা।
Transformation ও g(X)
কীভাবে পুরনো random variable থেকে নতুন তৈরি হয়, বিশেষত লিনিয়ারভাবে।
Random Vector ও Joint Distribution
একটা variable থেকে সরে গিয়ে কয়েকটাকে একসাথে স্টাডি করা।
Marginal ও Conditional Distribution
একটা variable-এর একার ভিউ, বা অন্যটা দেওয়া থাকলে একটার ভিউ ফিরে পাওয়া।
Independence
কখন joint distribution পরিষ্কারভাবে marginal-এ ভাগ হয় তা চেনা।
Expectation ও Variance
কেন্দ্র আর ছড়ানো দুইটা সংখ্যা দিয়ে সামারাইজ করা।
Covariance ও Correlation
দুইটা variable একসাথে কীভাবে চলে তা পরিমাপ করা।
ML প্রয়োগ
উপরের প্রতিটা আইডিয়া ফিচার, লস, আর মডেল হিসেবে আবার দেখা।