AI/ML-এ গণিত আসলে কোথায় ব্যবহার হয়
এই পাঠে যা শিখবেন
- একটি সম্পূর্ণ ML পাইপলাইনের প্রতিটি ধাপে কোন গণিত ব্যবহৃত হয় তার একটি স্পষ্ট মানচিত্র
- কেন এই তিন ধরনের গণিত একসাথে শিখতে হয় — একটি বাদ দিলে বাকিগুলো বোঝা অসম্ভব হয়ে যায়
- এই কোর্স কীভাবে সাজানো, এবং AI Foundations কোর্সের সাথে এর পার্থক্য কী
- NumPy দিয়ে একটি ক্ষুদ্র "নিউরন" গণনা — যা এই পুরো কোর্সের preview
১ · কেন আলাদা করে "Math for AI" কোর্স?
AI Foundations কোর্সে আপনি ভেক্টর, ম্যাট্রিক্স, ডেরিভেটিভ ও সম্ভাবনার স্বজ্ঞা (intuition) পেয়েছেন — কোনো কোড ছাড়া, শুধু ধারণা। এই কোর্স ভিন্ন উদ্দেশ্যে তৈরি: এখানে আমরা প্রতিটি ধারণা সম্পূর্ণ গাণিতিকভাবে ডেরাইভ করব, প্রমাণ দেখব, এবং প্রতিটি সূত্রের পাশে আসল NumPy/PyTorch কোড লিখব। লক্ষ্য — আপনি যখন কোনো পেপার বা লাইব্রেরির সোর্স কোড পড়বেন, তখন যেন গণিতটা অচেনা না লাগে।
আপনার হাই স্কুল স্তরের বীজগণিত ও ক্যালকুলাসের সাথে পরিচিতি থাকলেই যথেষ্ট। আমরা প্রতিটি নতুন ধারণা শূন্য থেকে তৈরি করব — কিন্তু "স্বজ্ঞা" স্তরে থামব না, পুরো ডেরিভেশন পর্যন্ত যাব।
২ · একটি নিউরাল নেটওয়ার্ক = তিন ধরনের গণিতের চক্র
সবচেয়ে সহজ উপায় হলো একটি সম্পূর্ণ ML সিস্টেমের দিকে তাকানো এবং প্রতিটি ধাপে কোন গণিত কাজ করছে তা চিহ্নিত করা। নিচের প্রতিটি ধাপ পরবর্তী মডিউলগুলোর একটির সাথে সরাসরি সম্পর্কিত।
ধাপ ১ — ডেটা রিপ্রেজেন্টেশন ও ফরওয়ার্ড পাস
একটি ছবি, একটি বাক্য, একজন ব্যবহারকারী — সবকিছুকে সংখ্যার তালিকা অর্থাৎ ভেক্টরVectorসংখ্যার একটি সাজানো তালিকা। এই কোর্সের M2-তে সম্পূর্ণ গাণিতিকভাবে কভার করা হবে।-এ রূপান্তর করতে হয়। একটি নিউরনের গণনা — $z = \mathbf{w}^T \mathbf{x} + b$ — মূলত একটি ডট প্রোডাক্টDot Productদুটি ভেক্টরের উপাদান-ভিত্তিক গুণফলের যোগফল। নিউরাল নেটওয়ার্কের প্রতিটি নিউরনের মূল গণনা।। পুরো একটি লেয়ার একসাথে গণনা করতে হলে এটি হয়ে যায় ম্যাট্রিক্স মাল্টিপ্লিকেশন — এই কারণেই GPU এত গুরুত্বপূর্ণ, কারণ GPU ঠিক এই কাজেই (বড় ম্যাট্রিক্স গুণ) সবচেয়ে দক্ষ। → এটি কভার হবে M2 ও M3 (লিনিয়ার অ্যালজেব্রা)-তে।
ধাপ ২ — মডেল ভুল করে, এবং শেখে
একটি নতুন-তৈরি মডেল প্রথমে প্রায় এলোমেলো উত্তর দেয়। "কতটা ভুল" পরিমাপ করে একটি লস ফাংশনLoss Functionমডেলের পূর্বাভাস ও প্রকৃত উত্তরের মধ্যে পার্থক্য পরিমাপ করার একটি ফাংশন। প্রশিক্ষণের লক্ষ্য এই মানকে যতটা সম্ভব ছোট করা।। এরপর প্রশ্ন — প্রতিটি ওজন ($w$) সামান্য বাড়ালে বা কমালে লস কীভাবে বদলাবে? এই প্রশ্নের উত্তরই হলো গ্রেডিয়েন্টGradientএকটি ফাংশনের সবচেয়ে দ্রুত বৃদ্ধির দিক নির্দেশক ভেক্টর। প্রতিটি প্যারামিটারের সাপেক্ষে পার্শিয়াল ডেরিভেটিভ দিয়ে গঠিত। — এবং লক্ষ লক্ষ প্যারামিটারের জন্য এই গ্রেডিয়েন্ট কার্যকরভাবে হিসাব করার পদ্ধতিই হলো ব্যাকপ্রপাগেশনBackpropagationচেইন রুল ব্যবহার করে আউটপুট থেকে ইনপুটের দিকে গ্রেডিয়েন্ট হিসাব করার পদ্ধতি। প্রতিটি আধুনিক নিউরাল নেটওয়ার্ক এভাবেই প্রশিক্ষিত হয়।। → এটি কভার হবে M4 ও M5 (ক্যালকুলাস ও ব্যাকপ্রপাগেশন)-তে — এই কোর্সের হৃদয়।
ধাপ ৩ — অনিশ্চয়তা, মূল্যায়ন ও সিদ্ধান্ত
একটি মডেল কখনো ১০০% নিশ্চিত নয় — এটি সম্ভাবনা আউটপুট দেয় ("৮৭% সম্ভাবনা এটি বিড়াল")। এই সম্ভাবনাগুলো বৈধ কি না, মডেল ওভারফিট করছে কি না, একটি ফলাফল কাকতালীয় নাকি বাস্তব — এই সবকিছুর ভিত্তি সম্ভাবনা তত্ত্ব ও পরিসংখ্যান। এমনকি লস ফাংশনও (যেমন cross-entropy) সরাসরি সম্ভাবনা তত্ত্ব থেকে আসে। → এটি কভার হবে M6 ও M7 (সম্ভাবনা ও পরিসংখ্যান)-তে।
৩ · একটি ছোট্ট প্রমাণ — কোড দিয়ে দেখুন
নিচে একটি একক নিউরনের গণনা — $z = \mathbf{w}^T \mathbf{x} + b$ — NumPy দিয়ে দেখানো হলো। এই একটি লাইনই হলো লিনিয়ার অ্যালজেব্রার সবচেয়ে গুরুত্বপূর্ণ প্রয়োগ, যা আমরা M2-M3-তে গভীরভাবে বুঝব।
import numpy as np
# ইনপুট ভেক্টর (যেমন ৩টি ফিচার)
x = np.array([1.0, 2.0, 3.0])
# ওজন ভেক্টর (মডেল যা শিখেছে)
w = np.array([0.2, -0.5, 0.1])
b = 0.1
# একটি নিউরনের গণনা: z = w^T x + b
z = np.dot(w, x) + b
print("z =", z)
np.dot(w, x) — এই একটি ফাংশন কলের ভেতরেই লুকিয়ে আছে ডট প্রোডাক্টের সম্পূর্ণ সংজ্ঞা
($w_1 x_1 + w_2 x_2 + w_3 x_3$)। M2-তে আমরা দেখব কেন এই অপারেশনটাই AI-এর সবচেয়ে ঘন ঘন ব্যবহৃত গণনা।
৪ · এই তিনটি কেন আলাদা করে শেখা যায় না
গ্রেডিয়েন্ট ডিসেন্ট বোঝার জন্য গ্রেডিয়েন্ট (ক্যালকুলাস) লাগে, কিন্তু গ্রেডিয়েন্ট আসলে একটি ভেক্টর (লিনিয়ার অ্যালজেব্রা)। ব্যাকপ্রপাগেশন বোঝার জন্য ম্যাট্রিক্স মাল্টিপ্লিকেশনের চেইন রুল (দুই ক্ষেত্রই) লাগে। Cross-entropy loss বোঝার জন্য সম্ভাবনা তত্ত্ব লাগে, কিন্তু সেটি অপ্টিমাইজ করতে ক্যালকুলাস লাগে। তিনটি একসাথে বোনা — তাই এই কোর্সের মডিউলগুলো ক্রমানুসারে সাজানো, প্রতিটি আগেরটির উপর ভিত্তি করে তৈরি।
Deep Learning ও Machine Learning কোর্সে আপনি এই একই গণিত ব্যবহার হতে দেখবেন — কিন্তু সেখানে ফোকাস থাকে মডেল আর্কিটেকচার ও অ্যাপ্লিকেশনে। এই কোর্সের কাজ হলো সেই গণিতটাকে আগে থেকেই এত মজবুত করে দেওয়া যে, পরবর্তী কোর্সগুলোতে আপনি সূত্র দেখে থমকে না গিয়ে সরাসরি প্রয়োগে মনোযোগ দিতে পারবেন।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ কেন GPU (মূলত গ্রাফিক্সের জন্য তৈরি হার্ডওয়্যার) AI প্রশিক্ষণে এত গুরুত্বপূর্ণ হয়ে উঠল?
মূল উত্তর — ম্যাট্রিক্স মাল্টিপ্লিকেশন। কম্পিউটার গ্রাফিক্সেও মূল কাজ হলো লক্ষ লক্ষ পিক্সেলের উপর একই গাণিতিক অপারেশন (ম্যাট্রিক্স/ভেক্টর গণনা) সমান্তরালভাবে চালানো। নিউরাল নেটওয়ার্কের ফরওয়ার্ড ও ব্যাকওয়ার্ড পাসও একই ধরনের সমান্তরাল ম্যাট্রিক্স গণনা — তাই GPU-র হার্ডওয়্যার architecture (হাজার হাজার ছোট কোর, বড় ম্যাট্রিক্সের জন্য optimized) প্রায় দুর্ঘটনাক্রমে AI-এর জন্য নিখুঁত হয়ে যায়।
এই কারণেই NVIDIA-র মতো কোম্পানি, যারা মূলত গেমিং গ্রাফিক্স কার্ড বানাত, আজ AI হার্ডওয়্যারের কেন্দ্রে।
প্র ০২ যদি একটি মডেলের লস (loss) কমতে থাকে, তার মানে কি মডেলটি অবশ্যই ভালো হচ্ছে?
সবসময় নয়। ট্রেনিং ডেটার উপর লস কমা মানে মডেল সেই নির্দিষ্ট ডেটা মুখস্থ করছে (overfitting) হতে পারে, নতুন/অদেখা ডেটাতে ভালো করবে এমন নিশ্চয়তা নেই। এই পার্থক্য বোঝার জন্যই আমাদের পরিসংখ্যানের ধারণা লাগে — ট্রেনিং ও টেস্ট সেটে আলাদাভাবে পারফরম্যান্স মাপা, এবং কেন একটি সংখ্যা কমা মানেই "উন্নতি" নয় তা যাচাই করা।
এই কোর্সের M7 (পরিসংখ্যান)-এ আমরা এই ধরনের প্রশ্নের গাণিতিক ভিত্তি দেখব।
প্র ০৩ "AI Foundations" কোর্সেও ভেক্টর, গ্রেডিয়েন্ট ও সম্ভাবনা কভার হয়েছে। তাহলে এই কোর্স নেওয়ার দরকার কী?
AI Foundations জ্যামিতিক স্বজ্ঞা দেয় ("গ্রেডিয়েন্ট মানে পাহাড়ের সবচেয়ে খাড়া ওঠার দিক") — যথেষ্ট শুরুর জন্য,
কিন্তু backward() ফাংশনের ভেতরে আসলে কী ঘটছে তা বুঝতে যথেষ্ট নয়। এই কোর্স সেই পরের ধাপ —
পুরো ডেরিভেশন, প্রমাণ, এবং কোড — যাতে আপনি একটি পেপারের appendix-এ থাকা গাণিতিক সূত্র দেখেও ভয় না পান।
অনুশীলন
-
খুঁজে বের করুন: উপরের কোড সেলে
wওx-এর মান বদলে নিজেzএর মান হাতে হিসাব করুন, তারপর Run চেপে মিলিয়ে দেখুন।$z = w_1 x_1 + w_2 x_2 + w_3 x_3 + b$ সূত্র ব্যবহার করে হাতে হিসাব করুন। যদি কোড আউটপুটের সাথে না মেলে, সম্ভবত
bযোগ করতে ভুলে গেছেন — এটিই সবচেয়ে সাধারণ ভুল। -
ম্যাপ করুন: "ChatGPT একটি উত্তর তৈরি করার সময়" — এই প্রক্রিয়ার কোন অংশ লিনিয়ার অ্যালজেব্রা, কোন অংশ (ট্রেনিং-এর সময়) ক্যালকুলাস, এবং কোন অংশ সম্ভাবনা তত্ত্ব (পরবর্তী শব্দ বাছাই) ব্যবহার করে?
উত্তর তৈরির সময় (inference) — মূলত লিনিয়ার অ্যালজেব্রা (ম্যাট্রিক্স মাল্টিপ্লিকেশনের দীর্ঘ চেইন)। পরবর্তী শব্দ বাছাই — সম্ভাবনা তত্ত্ব (প্রতিটি সম্ভাব্য টোকেনের উপর একটি সম্ভাবনা বিতরণ থেকে sample করা)। ট্রেনিং-এর সময় (আগে থেকেই সম্পন্ন) — ক্যালকুলাস (ব্যাকপ্রপাগেশন দিয়ে কোটি কোটি প্যারামিটার আপডেট)।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পাঠ ০২ · এই কোর্সের নোটেশন ও পড়ার পদ্ধতি পরবর্তী পাঠ এই কোর্সে ব্যবহৃত সব গাণিতিক নোটেশন এক জায়গায় — স্কেলার, ভেক্টর, ম্যাট্রিক্স, গ্রেডিয়েন্ট ও আরও অনেক কিছু।
- AI Foundations কোর্স আগে দেখুন এই কোর্সের আগে যদি এখনো AI/ML-এর মৌলিক ধারণা না জেনে থাকেন, সেখান থেকে শুরু করুন।
- Deep Learning কোর্স প্রয়োগ দেখুন এই কোর্সের গণিত বাস্তবে কীভাবে PyTorch ও নিউরাল নেটওয়ার্কে ব্যবহৃত হয় তা দেখতে।
- সব AI Courses দেখুন ABCL TECH AI Foundations, Python for AI, Machine Learning, Deep Learning, Math for AI ও আরও অনেক কিছু — সব এক জায়গায়।