📋 বিষয়সূচী (Table of Contents)

01

নিউরাল নেটওয়ার্ক কেন দরকার?

⏱ ১৫ মিনিট
🧑‍🏫 কল্পনা করো

একটা ৫ বছরের বাচ্চাকে একবার একটা বিড়াল দেখালে, সে হয়তো পরের বার কুকুরকেও বিড়াল বলে ফেলবে। কিন্তু ১০-২০টা বিড়াল দেখার পর সে নিজে থেকেই বুঝে যায় — বিড়ালের কান কেমন, শরীরের গঠন কেমন। কেউ তাকে "নিয়ম" শিখায়নি, সে নিজে অভিজ্ঞতা থেকে শিখেছে। মানুষের মস্তিষ্ক এভাবেই শেখে — বেশি উদাহরণ দেখে দেখে ভুল সংশোধন করে করে।

এখন চিন্তা করো — এই একই কাজ যদি কম্পিউটারকে দিয়ে করাতে হয় (একটা ছবি দেখে বিড়াল না কুকুর বলা), সাধারণ প্রোগ্রামিং দিয়ে এটা করা প্রায় অসম্ভব — কারণ প্রতিটা বিড়ালের রূপ আলাদা, প্রতিটা নিয়ম আলাদাভাবে লিখে শেষ করা যায় না।

💡 বাস্তব উদাহরণ যেখানে এই সমস্যা আছে

মোবাইলের Face Unlock, Google Translate, ChatGPT, স্বচালিত গাড়ি, ভয়েস অ্যাসিস্ট্যান্ট — এই সবকিছুতেই এমন জটিল প্যাটার্ন বোঝার দরকার হয়, যা সাধারণ নিয়ম-লেখা প্রোগ্রামিং দিয়ে সম্ভব না।

তিন ধাপের তুলনা

পদ্ধতিকীভাবে কাজ করেসীমাবদ্ধতা
Traditional Programmingমানুষ নিজে সব নিয়ম লিখে দেয়জটিল, পরিবর্তনশীল ডেটাতে (ছবি, ভয়েস) কাজ করে না
Machine Learningডেটা দেখিয়ে সহজ প্যাটার্ন শেখানো হয়খুব জটিল ডেটা (যেমন ছবির খুঁটিনাটি) ভালোভাবে ধরতে পারে না
Neural Networks (Deep Learning)মস্তিষ্কের গঠন নকল করে বহু স্তরে শেখেঅনেক বেশি ডেটা ও কম্পিউটিং শক্তি লাগে

Neural Network হলো মানুষের মস্তিষ্কের কাজ করার পদ্ধতি নকল করে বানানো একটা কম্পিউটার সিস্টেম, যেটা জটিল প্যাটার্ন (ছবি, ভাষা, শব্দ) নিজে নিজে শিখে নিতে পারে — অনেকটা মানুষের বাচ্চার মতো।

02

নিউরন কী?

⏱ ১৫ মিনিট
🔬 সহজ উপমা: লাইট সুইচ

একটা লাইট সুইচ ভাবো। যখন যথেষ্ট শক্তি পায়, তখনই বাতি জ্বলে ওঠে, নাহলে বন্ধ থাকে। মস্তিষ্কের নিউরনও অনেকটা এরকম — যথেষ্ট সংকেত পেলেই সে "সক্রিয়" হয়ে পরবর্তী নিউরনে সংকেত পাঠায়।

🔬 সহজ উপমা: মেসেঞ্জার

ধরো তোমার কাছে একটা জরুরি খবর আছে যা বন্ধুকে জানাতে হবে। তুমি সেটা বন্ধুকে বলবে, সে আবার তার বন্ধুকে বলবে — এভাবে খবর একজন থেকে আরেকজনে ছড়িয়ে যায়। নিউরনও একই রকম — একটা নিউরন সংকেত পেয়ে পরের নিউরনকে পাঠায়।

🔬 সহজ উপমা: টেলিফোন নেটওয়ার্ক

একটা টেলিফোন নেটওয়ার্কে লাখ লাখ লাইন একে অপরের সাথে যুক্ত থাকে। মস্তিষ্কেও লাখ লাখ নিউরন একে অপরের সাথে যুক্ত থেকে বিশাল একটা নেটওয়ার্ক তৈরি করে — এই পুরো নেটওয়ার্কই আমাদের চিন্তা, স্মৃতি ও সিদ্ধান্ত নেওয়ার ক্ষমতা তৈরি করে।

সংজ্ঞা: নিউরন (Neuron) হলো মস্তিষ্কের সবচেয়ে ছোট একক কোষ, যেটা সংকেত (signal) গ্রহণ করে, প্রক্রিয়া করে এবং পরবর্তী নিউরনে পাঠায়। এজন্যই নিউরনকে বলা হয় মস্তিষ্কের "বিল্ডিং ব্লক" — ইটের মতো, যা দিয়ে পুরো মস্তিষ্ক গঠিত।

উদ্দীপনা (Stimulus)
নিউরন (Neuron)
সংকেত (Signal)
প্রতিক্রিয়া (Response)

💡 উদাহরণ

তুমি গরম কিছু স্পর্শ করলে (উদ্দীপনা), তোমার হাতের নিউরন সেটা সংকেত আকারে মস্তিষ্কে পাঠায়, মস্তিষ্ক বুঝে "গরম, বিপদ" এবং তোমার হাত সাথে সাথে সরে যায় (প্রতিক্রিয়া) — এই পুরো ঘটনা এক সেকেন্ডেরও কম সময়ে ঘটে।

03

Biological Neural Network (BNN)

⏱ ২০ মিনিট

মস্তিষ্কে লাখ লাখ নিউরন একসাথে যুক্ত হয়ে যে বিশাল নেটওয়ার্ক তৈরি করে, তাকে বলে Biological Neural Network (BNN)। প্রতিটা নিউরনের কয়েকটা গুরুত্বপূর্ণ অংশ থাকে।

অংশকাজসহজ উপমা
Dendrites (ডেনড্রাইট)অন্য নিউরন থেকে সংকেত গ্রহণ করেএকটা গাছের শিকড়, যা চারদিক থেকে পানি সংগ্রহ করে
Cell Body / Soma (কোষ দেহ)প্রাপ্ত সংকেতগুলো একত্র করে প্রক্রিয়া করেএকটা অফিসের ম্যানেজার, যে সব রিপোর্ট জমা করে সিদ্ধান্ত নেয়
Axon (অ্যাক্সন)প্রক্রিয়াকৃত সংকেত পরবর্তী নিউরনে পাঠায়একটা টেলিফোন তার, যা দিয়ে বার্তা পাঠানো হয়
Synapse (সিন্যাপস)দুইটা নিউরনের সংযোগস্থল, যেখান দিয়ে সংকেত পার হয়দুইটা রাস্তার সংযোগস্থল বা সেতু
উদ্দীপনা
Dendrites
Cell Body
Axon
Synapse
পরবর্তী নিউরন

🧠 মানুষ কীভাবে শেখে

যখন তুমি বার বার একই কাজ করো (যেমন সাইকেল চালানো প্র্যাকটিস), তখন সেই কাজের সাথে যুক্ত নিউরনগুলোর মধ্যে সংযোগ (synapse) শক্তিশালী হতে থাকে। এজন্যই বার বার প্র্যাকটিস করলে কোনো কাজ সহজ হয়ে যায় — মস্তিষ্কের নিউরাল সংযোগ মজবুত হয়ে যায়।

04

BNN থেকে ANN-এ যাত্রা

⏱ ১৫ মিনিট

🧑‍🏫 কল্পনা করো

বিজ্ঞানীরা যখন দেখলেন মস্তিষ্ক এত চমৎকারভাবে শিখতে পারে, তখন তারা ভাবলেন — "যদি আমরা কম্পিউটার দিয়ে এই একই পদ্ধতি নকল করতে পারি, তাহলে কম্পিউটারও শিখতে পারবে!" এই ধারণা থেকেই জন্ম নিলো Artificial Neural Network (ANN) — অর্থাৎ, কৃত্রিমভাবে তৈরি করা নিউরাল নেটওয়ার্ক।

Biological Brain
মানুষের মস্তিষ্ক
Artificial Neural Network
কম্পিউটারে নকল করা সংস্করণ
Biological Neural NetworkArtificial Neural Network
Neuron (নিউরন)Node / Artificial Neuron
Dendrite (সংকেত গ্রহণ)Input (ইনপুট মান)
Synapse (সংযোগের শক্তি)Weight (ওয়েট)
Cell Body (প্রক্রিয়াকরণ)Activation Function
Brain (পুরো নেটওয়ার্ক)Neural Network (একাধিক Layer)
শেখা (প্র্যাকটিসে সংযোগ শক্তিশালী হওয়া)Training (ওয়েট আপডেট হওয়া)
স্মৃতিশেখা ওয়েটের মান সংরক্ষণ
Signal (বৈদ্যুতিক-রাসায়নিক সংকেত)সংখ্যা (numeric value)
⚠️ মনে রাখা জরুরি: ANN মস্তিষ্কের একটা অনুপ্রেরণা-ভিত্তিক সরলীকৃত মডেল মাত্র — এটা প্রকৃত মস্তিষ্কের মতো জটিল বা সম্পূর্ণ অনুরূপ নয়। মস্তিষ্কে জৈব-রাসায়নিক প্রক্রিয়া জড়িত, আর ANN শুধু সংখ্যা ও গণিত দিয়ে কাজ করে।
05

Artificial Neural Network (ANN) কী?

⏱ ২০ মিনিট

"Artificial" কেন বলা হয়? কারণ এটা মানুষের তৈরি করা, প্রকৃতিতে নিজে থেকে জন্ম নেয়নি — মস্তিষ্কের ধারণা থেকে অনুপ্রাণিত হয়ে কম্পিউটারে বানানো হয়েছে।

"Network" কেন বলা হয়? কারণ এতে অনেকগুলো ছোট ছোট ইউনিট (artificial neuron/node) একে অপরের সাথে যুক্ত থেকে একটা বড় সংযুক্ত কাঠামো তৈরি করে — ঠিক যেমন মস্তিষ্কে লাখো নিউরন যুক্ত থাকে।

সংজ্ঞা: Artificial Neural Network (ANN) হলো এমন একটা কম্পিউটার সিস্টেম, যা মানুষের মস্তিষ্কের নিউরনের গঠন থেকে অনুপ্রাণিত হয়ে তৈরি, এবং যা ডেটা থেকে প্যাটার্ন শিখে ভবিষ্যদ্বাণী বা সিদ্ধান্ত নিতে পারে।

Input
ডেটা দেওয়া
Learning
প্যাটার্ন শেখা
Prediction
ভবিষ্যদ্বাণী

কোথায় ব্যবহৃত হয়?

🖼️ Image Recognition

ছবিতে কী আছে তা চেনা

😀 Face Detection

ছবিতে মুখ শনাক্ত করা

✍️ Handwriting Recognition

হাতের লেখা পড়া

🏦 Fraud Detection

অস্বাভাবিক লেনদেন ধরা

🎬 Recommendation System

পছন্দ অনুযায়ী সাজেশন

🎙️ Speech Recognition

কথা শুনে টেক্সটে রূপান্তর

06

ANN কীভাবে কাজ করে?

⏱ ২৫ মিনিট

সম্পূর্ণ ওয়ার্কফ্লো

Input Data
Input Layer
Hidden Layer(s)
Output Layer
Prediction

উদাহরণ: শিক্ষার্থী পাস/ফেল ভবিষ্যদ্বাণী

🧑‍🏫 কল্পনা করো

ধরো আমরা একটা সিস্টেম বানাতে চাই, যেটা বলে দেবে একজন শিক্ষার্থী পাস করবে না ফেল করবে। এজন্য আমরা ৩টা তথ্য (Feature) ব্যবহার করবো:

📖 পড়ার সময় (ঘণ্টা)

🗓️ উপস্থিতির হার

📊 আগের পরীক্ষার নম্বর

এই মানগুলো নেটওয়ার্কের মধ্য দিয়ে কীভাবে যায়

Input Layer
সময়
উপস্থিতি
নম্বর
Hidden Layer
Output Layer
Pass/Fail
Try it · Forward Pass Playground

লাইভ পাস/ফেল সম্ভাবনা ক্যালকুলেটর

Slider সরালে input → weighted sum → sigmoid probability লাইভ আপডেট হবে।

Z = Wx + b0.00
Sigmoid(z)0.50
PredictionPass
Confidence50%
w₁·x₁ = 1.15 × 6.0 = 6.90
w₂·x₂ = 2.0 × 0.82 = 1.64
w₃·x₃ = 1.75 × 0.72 = 1.26
z = 6.90 + 1.64 + 1.26 + (−3.2) = 6.60
σ(z) = 1 / (1 + e−z) → P = 0.999
Feedforward Pipeline — Step by Step Math
পরের ধাপ চাপুন · slider বদলান · প্রতিটি ধাপে সূত্র + live সংখ্যা দেখুন
Inputx₁,x₂,x₃
Weightsw,b
Linearz=Σwᵢxᵢ+b
Sigmoidσ(z)
Threshold0.5
Classŷ
সব চিহ্ন এক নজরে (Math Dictionary)
চিহ্ননামকী করেউদাহরণ
x₁Study Hoursপড়ার ঘণ্টা (raw input)6.0
x₂Attendanceউপস্থিতি ÷ 100 (normalize)0.82
x₃Prev Scoreআগের নম্বর ÷ 1000.72
wᵢWeightপ্রতিটি feature-এর গুরুত্ব1.15, 2.0, 1.75
bBiasসিদ্ধান্তের baseline shift−3.2
zLinear Scorez = w₁x₁ + w₂x₂ + w₃x₃ + braw সংখ্যা
σ(z)Sigmoidz কে 0–1 সম্ভাবনায় আনে1/(1+e−z)
PProbabilityপাসের সম্ভাবনা0 থেকে 1
0.5ThresholdP ≥ 0.5 → Pass50%
ŷPredicted Classচূড়ান্ত Pass/FailPass বা Fail
ধাপ ১: Input Features ৩টি feature নেটওয়ার্কে ঢোকে
ধাপ1 / 6
z
P (Pass)
ŷ

প্রতিটা ইনপুট (পড়ার সময়, উপস্থিতি, নম্বর) একটা নির্দিষ্ট "গুরুত্ব" বা Weight নিয়ে Hidden Layer-এ পৌঁছায়। যেমন, হয়তো "পড়ার সময়"-এর গুরুত্ব বেশি, "উপস্থিতি"-র গুরুত্ব একটু কম। প্রতিটা নিউরনে এই ইনপুটগুলো যোগ হওয়ার সময় একটা অতিরিক্ত মান — Bias — যুক্ত হয়, যেটা সিদ্ধান্তকে একটু সমন্বয় করে। এরপর Activation ঠিক করে দেয় — এই নিউরন কি "সক্রিয়" হবে, নাকি না। শেষে Output Layer চূড়ান্ত সিদ্ধান্ত দেয় — Pass না Fail।

টার্মসহজ ব্যাখ্যা
Featuresইনপুট হিসেবে ব্যবহৃত তথ্য (পড়ার সময়, উপস্থিতি, নম্বর)
Weightsপ্রতিটা ইনপুটের গুরুত্ব বা প্রভাবের মাত্রা
Biasসিদ্ধান্তকে একটু সমন্বয় করার জন্য অতিরিক্ত মান
Activationনিউরন সক্রিয় হবে কিনা তার সিদ্ধান্ত
Outputচূড়ান্ত ফলাফল (এখানে Pass বা Fail)
07

ANN-এর আর্কিটেকচার

⏱ ২০ মিনিট

🟢 Input Layer (ইনপুট লেয়ার)

কাজ: বাইরের ডেটা নেটওয়ার্কে প্রবেশ করায়। প্রতিটা নোড একটা করে ফিচার প্রতিনিধিত্ব করে।

উদাহরণ

আমাদের শিক্ষার্থী উদাহরণে ৩টা ইনপুট নোড থাকবে — পড়ার সময়, উপস্থিতি, নম্বর।

🟠 Hidden Layer (হিডেন লেয়ার)

কেন গুরুত্বপূর্ণ: এখানেই আসল "শেখা" ঘটে। ইনপুটের মধ্যে লুকিয়ে থাকা জটিল সম্পর্ক এই লেয়ারগুলো ধরতে পারে।

💡 উপমা

একজন অভিজ্ঞ শিক্ষক যেভাবে অনেক তথ্য একসাথে বিশ্লেষণ করে একটা সিদ্ধান্তে পৌঁছান (শুধু নম্বর দেখেই না, উপস্থিতি ও অন্যান্য বিষয়ও বিবেচনা করে), Hidden Layer-ও তেমনি একাধিক ইনপুট একসাথে বিশ্লেষণ করে জটিল প্যাটার্ন বের করে।

🔴 Output Layer (আউটপুট লেয়ার)

কাজ: চূড়ান্ত ফলাফল দেয়। দুই ধরনের হতে পারে:

ধরনব্যাখ্যাউদাহরণ
Classificationএকটা নির্দিষ্ট শ্রেণি/ক্যাটাগরি বলে দেয়Pass/Fail, স্প্যাম/না-স্প্যাম
Regressionএকটা সংখ্যা অনুমান করেবাড়ির দাম, পরীক্ষার প্রত্যাশিত নম্বর

🟣 Weights (ওয়েট)

উপমা: ধরো তুমি একটা সিদ্ধান্ত নিচ্ছো বন্ধুদের পরামর্শের ভিত্তিতে। কারো পরামর্শ তুমি বেশি গুরুত্ব দাও, কারো কম। এই "গুরুত্ব দেওয়ার মাত্রা"-ই হলো Weight — প্রতিটা ইনপুট সংযোগের নিজস্ব একটা গুরুত্ব বা "শক্তি" থাকে, যা শেখার সময় আপডেট হতে থাকে।

🟣 Bias (বায়াস)

উপমা: একজন শিক্ষক পরীক্ষায় সবাইকে বাড়তি ২ নম্বর গ্রেস মার্ক দিলেন, যাতে সীমারেখার কাছাকাছি থাকা শিক্ষার্থীরাও ন্যায্যভাবে বিবেচিত হয়। Bias অনেকটা এরকম — এটা নেটওয়ার্কের সিদ্ধান্ত নেওয়ার থ্রেশহোল্ড (সীমা) একটু সমন্বয় করে দেয়, যাতে মডেল আরও নমনীয়ভাবে সিদ্ধান্ত নিতে পারে।

🟢 Activation Function (প্রাথমিক ধারণা)

প্রতিটা নিউরনকে সিদ্ধান্ত নিতে হয় — "আমি কি সক্রিয় হবো, নাকি চুপ থাকবো?" এই সিদ্ধান্ত নেওয়ার পদ্ধতিকেই বলে Activation।

💡 লাইট সুইচ

যথেষ্ট শক্তি পেলেই বাতি জ্বলে

🚪 দরজার সেন্সর

নির্দিষ্ট দূরত্বে এলেই দরজা খোলে

🎯 মোশন ডিটেক্টর

নড়াচড়া ধরা পড়লেই অ্যালার্ম বাজে

এই পর্যায়ে আমরা শুধু ধারণাটা বুঝলাম — Activation Function-এর বিস্তারিত গাণিতিক রূপ (Sigmoid, ReLU ইত্যাদি) আমরা পরবর্তী ক্লাসে শিখবো।

Try it · Network Topology

লাইভ Network Topology Visualizer

Input/Hidden/Output node count বদলালে diagram সাথে সাথে redraw হবে।

08

Feedforward প্রক্রিয়া

⏱ ১০ মিনিট

আমরা যে উদাহরণটা এতক্ষণ দেখলাম — ইনপুট থেকে হিডেন লেয়ার হয়ে আউটপুটে যাওয়া — এই একমুখী প্রবাহকেই বলে Feedforward। তথ্য শুধু সামনের দিকে এগোয়, পেছনে ফিরে আসে না।

Input
Hidden Layer
Output

💡 উপমা

এটা অনেকটা একটা কারখানার উৎপাদন লাইনের মতো — কাঁচামাল একদিক থেকে ঢোকে, ধাপে ধাপে প্রক্রিয়াকরণ হয়ে অন্যদিক থেকে তৈরি পণ্য বের হয়। কাঁচামাল কখনো পেছনের দিকে ফিরে যায় না।

পরবর্তী ধাপে (আজকের ক্লাসের বাইরে) নেটওয়ার্ক তার ভুল বুঝে Weight ও Bias সংশোধন করার জন্য উল্টো দিকে তথ্য পাঠায় — একে বলে Backpropagation, যা আমরা পরের ক্লাসে বিস্তারিত শিখবো।

Try it · Activation Graph

Activation Graph Explorer

Sigmoid, ReLU, Tanh curve compare করো এবং cursor point-এ output দেখো।

Sigmoid(z)0.00
ReLU(z)0.00
Tanh(z)0.00
Selected x1.2
σ(z) = 1 / (1 + e−z)
Try it · Decision Boundary

Decision Boundary Demo (Toy Data)

নতুন student point move করলে boundary-র কোন পাশে পড়ে তা থেকে class prediction দেখো।

Predicted ClassPass
Boundary Eq.y = 4x + 38
Point (x,y)(5.5,70)
Margin FeelNear line
Δ = y − (4x + 38) = 0
Fail samples Pass samples New student
09

বাস্তব প্রয়োগ

⏱ ১০ মিনিট

😀 Face Recognition

মোবাইল আনলক ও নিরাপত্তা ব্যবস্থা

📷 Google Photos

ছবিতে মানুষ ও বস্তু চেনা

💬 ChatGPT

মানুষের ভাষা বুঝে উত্তর দেওয়া

🏥 Medical Diagnosis

এক্স-রে/স্ক্যান দেখে রোগ শনাক্ত করা

🏦 Fraud Detection

অস্বাভাবিক লেনদেন ধরা

🎬 Recommendation Systems

পছন্দ অনুযায়ী সাজেশন

🚗 Autonomous Vehicles

রাস্তার পরিস্থিতি বুঝে সিদ্ধান্ত নেওয়া

🎙️ Voice Assistants

কথা শুনে কাজ সম্পন্ন করা

📄 OCR

ছবি থেকে লেখা টেক্সটে রূপান্তর

📧 Email Spam Detection

স্প্যাম মেইল স্বয়ংক্রিয়ভাবে ফিল্টার করা

10

Google Colab ডেমো

⏱ প্র্যাকটিক্যাল

এখন আমরা আমাদের শিক্ষার্থী Pass/Fail উদাহরণটা দিয়ে একটা খুবই ছোট ANN তৈরি করবো। ধরে নিচ্ছি তুমি কখনো Python লেখোনি — তাই প্রতিটা লাইন ব্যাখ্যা করা হবে।

ধাপ ১: ডেটাসেট তৈরি করা

কোড
import numpy as np
import pandas as pd

data = {
    'পড়ার_সময়': [1, 2, 3, 4, 5, 6, 7, 8],
    'উপস্থিতি_হার': [40, 50, 60, 65, 75, 80, 90, 95],
    'আগের_নম্বর': [30, 40, 45, 55, 60, 70, 80, 90],
    'ফলাফল': [0, 0, 0, 0, 1, 1, 1, 1]  # 0 = Fail, 1 = Pass
}

df = pd.DataFrame(data)
print(df)
আউটপুট
পড়ার_সময় উপস্থিতি_হার আগের_নম্বর ফলাফল 0 1 40 30 0 1 2 50 40 0 2 3 60 45 0 3 4 65 55 0 4 5 75 60 1 5 6 80 70 1 6 7 90 80 1 7 8 95 90 1

ব্যাখ্যা: আমরা ৮ জন কাল্পনিক শিক্ষার্থীর ডেটা বানালাম — পড়ার সময়, উপস্থিতির হার, আগের নম্বর, এবং ফলাফল (০ = Fail, ১ = Pass)।

ধাপ ২: ফিচার ও টার্গেট আলাদা করা

কোড
X = df[['পড়ার_সময়', 'উপস্থিতি_হার', 'আগের_নম্বর']]
y = df['ফলাফল']

print(X.shape)
print(y.shape)
আউটপুট
(8, 3) (8,)

ব্যাখ্যা: X-এ ইনপুট ফিচারগুলো (৮ জন শিক্ষার্থী, প্রত্যেকের ৩টা তথ্য) আর y-তে টার্গেট (ফলাফল) রাখা হলো।

ধাপ ৩: একটা সাধারণ ANN তৈরি করা (TensorFlow/Keras)

কোড
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

model = Sequential([
    Dense(4, activation='relu', input_shape=(3,)),   # Hidden Layer
    Dense(1, activation='sigmoid')                    # Output Layer
])

model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
model.summary()
আউটপুট
Model: "sequential" _________________________________________________________________ Layer (type) Output Shape Param # ================================================================= dense (Dense) (None, 4) 16 dense_1 (Dense) (None, 1) 5 ================================================================= Total params: 21 Trainable params: 21 _________________________________________________________________

লাইন-বাই-লাইন ব্যাখ্যা:

  • Sequential([...]) — লেয়ারগুলো ধারাবাহিকভাবে সাজানো একটা মডেল তৈরি করছি
  • Dense(4, activation='relu', input_shape=(3,)) — একটা Hidden Layer, যেখানে ৪টা নিউরন আছে, ইনপুট নেবে ৩টা মান (আমাদের ৩টা ফিচার)
  • Dense(1, activation='sigmoid') — Output Layer, ১টা নিউরন, যা 0 থেকে 1-এর মধ্যে একটা সম্ভাবনা দেবে (Pass হওয়ার সম্ভাবনা)
  • model.compile(...) — মডেলকে বলে দিচ্ছি কীভাবে শিখবে (কোন পদ্ধতিতে ভুল মাপবে ও সংশোধন করবে)

ধাপ ৪: মডেল ট্রেইন করা

কোড
model.fit(X, y, epochs=50, verbose=0)
print("ট্রেনিং সম্পন্ন হয়েছে!")
আউটপুট
ট্রেনিং সম্পন্ন হয়েছে!

ব্যাখ্যা: epochs=50 মানে মডেলটা পুরো ডেটাসেটটা ৫০ বার দেখে দেখে শিখবে, প্রতিবার একটু একটু করে ভুল কমিয়ে আনবে।

ধাপ ৫: নতুন শিক্ষার্থীর জন্য ভবিষ্যদ্বাণী

কোড
new_student = np.array([[6, 82, 72]])  # পড়ার সময়, উপস্থিতি, আগের নম্বর
prediction = model.predict(new_student)
print("Pass হওয়ার সম্ভাবনা:", prediction)
আউটপুট
Pass হওয়ার সম্ভাবনা: [[0.81]]

ব্যাখ্যা: মডেল বলছে এই নতুন শিক্ষার্থীর Pass করার সম্ভাবনা প্রায় ৮১% — অর্থাৎ, তার Pass করার সম্ভাবনা বেশ ভালো।

ফলাফলের ব্যাখ্যা

🔍 ইনসাইট

মডেলটা দেখলো, যেসব শিক্ষার্থীর পড়ার সময়, উপস্থিতি ও আগের নম্বর বেশি, তাদের Pass করার সম্ভাবনাও বেশি — এবং এই প্যাটার্নটা সে নিজে ডেটা দেখে শিখেছে, কেউ তাকে সরাসরি নিয়ম লিখে দেয়নি।

⚠️ সাধারণ শুরুর ভুল ও Best Practice:
  • মাত্র ৮টা ডেটা পয়েন্ট দিয়ে বাস্তব সিদ্ধান্ত নেওয়া — বাস্তবে অনেক বেশি (কমপক্ষে কয়েকশ) ডেটা দরকার
  • input_shape-এ ভুল সংখ্যা দেওয়া (ফিচারের সংখ্যার সাথে না মেলা) — এতে এরর আসে
  • খুব কম epochs দিয়ে মডেল ঠিকমতো না শিখেই থেমে যাওয়া, অথবা খুব বেশি epochs দিয়ে ওভারফিট হয়ে যাওয়া
  • Best Practice: সবসময় ডেটাকে Train ও Test অংশে ভাগ করে, Test অংশে মডেল যাচাই করা উচিত (এটা আমরা পরের ক্লাসে বিস্তারিত শিখবো)
11

আগের অ্যালগরিদমের সাথে তুলনা

⏱ ১০ মিনিট
বৈশিষ্ট্যANNLinear RegressionLogistic RegressionDecision TreeKNNSVM
জটিলতাউচ্চনিম্ননিম্নমাঝারিনিম্নমাঝারি-উচ্চ
শেখার ক্ষমতাখুবই জটিল প্যাটার্নও শিখতে পারেশুধু সরলরৈখিক সম্পর্কসরল ক্লাসিফিকেশননিয়মভিত্তিক প্যাটার্নদূরত্ব-ভিত্তিক প্যাটার্নজটিল কিন্তু সীমিত সীমারেখা
ডেটার প্রয়োজনঅনেক বেশি ডেটা প্রয়োজনকম ডেটাতেও চলেকম ডেটাতেও চলেমাঝারিমাঝারিমাঝারি
Feature Engineeringকম প্রয়োজন (নিজে শিখে নেয়)বেশি প্রয়োজনবেশি প্রয়োজনমাঝারি প্রয়োজনবেশি প্রয়োজন (স্কেলিং জরুরি)বেশি প্রয়োজন
পারফরম্যান্স (জটিল ডেটাতে)সবচেয়ে ভালোদুর্বলদুর্বল-মাঝারিমাঝারিমাঝারিভালো
Interpretability (বোঝা কতটা সহজ)কঠিন (ব্ল্যাক-বক্স)খুবই সহজসহজসহজসহজমাঝারি
সাধারণ ব্যবহারছবি, ভাষা, ভয়েসদাম পূর্বাভাসহ্যাঁ/না ক্লাসিফিকেশনসিদ্ধান্ত নেওয়ার নিয়মসাদৃশ্য-ভিত্তিক সুপারিশটেক্সট/ইমেজ ক্লাসিফিকেশন

🔑 সহজ কথায়

সাধারণ ডেটার জন্য (যেমন এক্সেল শিটের মতো সংখ্যাভিত্তিক ডেটা) Decision Tree বা Logistic Regression-এর মতো সহজ মডেল প্রায়ই যথেষ্ট এবং বোঝাও সহজ। কিন্তু ছবি, ভয়েস বা ভাষার মতো জটিল ডেটার জন্য ANN (এবং তার উন্নত রূপ Deep Learning) সবচেয়ে ভালো কাজ করে।

12

সাধারণ ভুল ধারণা ভাঙা

⏱ আলোচনা
❌ "ANN মানুষের মস্তিষ্কের মতোই কাজ করে"

✅ বাস্তবতা: ANN মস্তিষ্ক থেকে অনুপ্রাণিত একটা সরলীকৃত গাণিতিক মডেল মাত্র, প্রকৃত মস্তিষ্কের জটিলতার তুলনায় এটা অনেক সাধারণ।

❌ "বেশি Hidden Layer মানেই সবসময় ভালো ফলাফল"

✅ বাস্তবতা: অতিরিক্ত লেয়ার কখনো কখনো Overfitting (শুধু ট্রেনিং ডেটা মুখস্থ করে ফেলা) ঘটাতে পারে, যা নতুন ডেটাতে খারাপ ফলাফল দেয়।

❌ "Neural Network-এ ডেটা ক্লিনিং লাগে না"

✅ বাস্তবতা: নোংরা বা ভুল ডেটা দিলে ANN-ও ভুল প্যাটার্ন শিখে ফেলবে — ডেটা ক্লিনিং সবসময়ই গুরুত্বপূর্ণ।

❌ "ANN সবসময় Traditional ML-কে হারিয়ে দেয়"

✅ বাস্তবতা: ছোট বা সহজ ডেটাসেটে প্রায়ই Decision Tree বা Logistic Regression-এর মতো সাধারণ মডেল সমান বা ভালো ফলাফল দেয়, আর অনেক দ্রুত ও সহজে বোঝা যায়।

❌ "AI মানেই Neural Network"

✅ বাস্তবতা: Neural Network হলো AI অর্জনের একটা পদ্ধতি মাত্র, এছাড়াও rule-based সিস্টেম, Decision Tree-এর মতো অন্য পদ্ধতিও AI-এর অংশ হতে পারে।

13

রিভিশন ও প্রশ্নোত্তর

⏱ শেষ পর্যালোচনা

📌 দ্রুত রিভিশন নোট

  • নিউরন = মস্তিষ্কের সবচেয়ে ছোট একক, যা সংকেত গ্রহণ ও প্রেরণ করে
  • BNN-এর অংশ: Dendrite → Cell Body → Axon → Synapse
  • ANN হলো BNN থেকে অনুপ্রাণিত কম্পিউটার মডেল: Neuron→Node, Synapse→Weight
  • ANN-এর গঠন: Input Layer → Hidden Layer(s) → Output Layer
  • মূল উপাদান: Features, Weights, Bias, Activation, Output
  • Feedforward = তথ্যের একমুখী প্রবাহ (ইনপুট থেকে আউটপুট পর্যন্ত)

🧬 সম্পূর্ণ ভিজ্যুয়াল যাত্রা

মানুষের মস্তিষ্ক
Biological Neuron
Artificial Neuron
Artificial Neural Network
Deep Neural Network
আধুনিক AI সিস্টেম

🕰️ নিউরাল নেটওয়ার্কের ইতিহাস

১৯৪০-এর দশকে বিজ্ঞানীরা প্রথম মস্তিষ্কের নিউরনকে গাণিতিকভাবে মডেল করার চেষ্টা করেন। ১৯৫০-৬০-এর দশকে "Perceptron" নামে প্রথম সরল আর্টিফিশিয়াল নিউরন তৈরি হয়। কিন্তু কম্পিউটিং শক্তি ও ডেটার অভাবে দীর্ঘদিন এই গবেষণা থমকে ছিলো। ২০০০ সালের পর, বিশাল পরিমাণ ডেটা (Big Data) ও শক্তিশালী কম্পিউটার (GPU) হাতে আসায় Neural Network আবার জেগে ওঠে, এবং একে বলা শুরু হয় Deep Learning — যা আজকের ChatGPT, Google Translate-এর মতো আধুনিক AI সিস্টেমের মূল ভিত্তি।

📧 কেস স্টাডি: ইমেইল স্প্যাম শনাক্তকরণ

ইমেইলের লেখা (Raw Data)
সংখ্যায় রূপান্তর (Input Layer)
প্যাটার্ন বিশ্লেষণ (Hidden Layer)
স্প্যাম / না-স্প্যাম (Output)

ANN হাজার হাজার পুরনো ইমেইল (স্প্যাম ও না-স্প্যাম চিহ্নিত) দেখে শিখে নেয় — কোন ধরনের শব্দ, বাক্যগঠন বা প্যাটার্ন স্প্যামে বেশি দেখা যায় (যেমন "ফ্রি টাকা জিতুন", অতিরিক্ত লিংক)। এরপর নতুন কোনো ইমেইল এলে, সেই শেখা প্যাটার্নের ভিত্তিতে বলে দেয় এটা স্প্যাম কিনা।

❓ ভাইভা প্রশ্ন

১. নিউরনের প্রধান কাজ কী?
সংকেত গ্রহণ করা, প্রক্রিয়া করা এবং পরবর্তী নিউরনে পাঠানো।
২. Weight কী বোঝায়?
একটা ইনপুটের গুরুত্ব বা প্রভাবের মাত্রা।
৩. Hidden Layer কেন প্রয়োজন?
ইনপুটের মধ্যে লুকানো জটিল প্যাটার্ন শেখার জন্য।
৪. Feedforward মানে কী?
তথ্যের একমুখী প্রবাহ — ইনপুট থেকে আউটপুট পর্যন্ত, পেছনে না ফিরে।
৫. ANN কি মস্তিষ্কের হুবহু প্রতিরূপ?
না, এটা একটা সরলীকৃত অনুপ্রাণিত গাণিতিক মডেল মাত্র।

💼 ইন্টারভিউ প্রস্তুতি — টপ ৩০টি বিগিনার লেভেল প্রশ্ন

১. Neural Network কী?
মস্তিষ্কের নিউরনের গঠন থেকে অনুপ্রাণিত হয়ে তৈরি একটা কম্পিউটার সিস্টেম, যা ডেটা থেকে প্যাটার্ন শেখে।
২. একটা Biological Neuron-এর মূল অংশগুলো কী কী?
Dendrite, Cell Body (Soma), Axon, Synapse।
৩. Dendrite-এর কাজ কী?
অন্য নিউরন থেকে সংকেত গ্রহণ করা।
৪. Synapse কী?
দুইটা নিউরনের সংযোগস্থল, যেখান দিয়ে সংকেত পার হয়।
৫. ANN-এ Synapse-এর সমতুল্য কী?
Weight।
৬. ANN-এর মূল তিনটা লেয়ার কী কী?
Input Layer, Hidden Layer, Output Layer।
৭. Input Layer-এর কাজ কী?
বাইরের ডেটা নেটওয়ার্কে প্রবেশ করানো।
৮. Output Layer-এর দুই ধরনের কাজ কী কী?
Classification (শ্রেণি নির্ধারণ) ও Regression (সংখ্যা অনুমান)।
৯. Bias কেন প্রয়োজন?
নেটওয়ার্কের সিদ্ধান্ত নেওয়ার থ্রেশহোল্ড সমন্বয় করার জন্য, যাতে মডেল আরও নমনীয় হয়।
১০. Activation Function-এর মূল উদ্দেশ্য কী?
একটা নিউরন সক্রিয় হবে কিনা তা নির্ধারণ করা।
১১. Feedforward Network-এ তথ্য কীভাবে চলাচল করে?
একমুখীভাবে — ইনপুট থেকে হিডেন লেয়ার হয়ে আউটপুটে, পেছনে ফেরে না।
১২. ANN কোথায় ব্যবহৃত হয় তার ৩টা উদাহরণ দাও।
ইমেজ রিকগনিশন, ফেস ডিটেকশন, ভয়েস অ্যাসিস্ট্যান্ট।
১৩. Deep Learning কী?
অনেকগুলো Hidden Layer বিশিষ্ট বড় ও জটিল Neural Network।
১৪. ANN কি সবসময় Traditional ML থেকে ভালো?
না, ছোট বা সহজ ডেটাসেটে সাধারণ মডেলও সমান বা ভালো কাজ করতে পারে।
১৫. Overfitting কী?
মডেল ট্রেনিং ডেটা এত বেশি মুখস্থ করে ফেলে যে নতুন ডেটাতে খারাপ ফলাফল দেয়।
১৬. ANN-এর জন্য কেন প্রচুর ডেটা দরকার?
জটিল প্যাটার্ন সঠিকভাবে শিখতে অনেক উদাহরণ প্রয়োজন হয়।
১৭. Weight ও Bias-এর পার্থক্য কী?
Weight ইনপুটের গুরুত্ব ঠিক করে, Bias সিদ্ধান্তের থ্রেশহোল্ড সমন্বয় করে।
১৮. মানুষ কীভাবে নতুন কিছু শেখে (নিউরাল দৃষ্টিকোণ থেকে)?
বার বার প্র্যাকটিসের মাধ্যমে সংশ্লিষ্ট নিউরনগুলোর সংযোগ (synapse) শক্তিশালী হয়।
১৯. ANN-এ "Training" মানে কী?
ডেটা দেখিয়ে ধীরে ধীরে Weight ও Bias সঠিক মানে আপডেট করার প্রক্রিয়া।
২০. Classification আর Regression-এর পার্থক্য কী?
Classification শ্রেণি বলে দেয় (যেমন Pass/Fail), Regression সংখ্যা অনুমান করে (যেমন দাম)।
২১. ANN কি মানুষের মতো চিন্তা করে?
না, এটা শুধু গাণিতিক প্যাটার্ন শেখে, মানুষের মতো সচেতন চিন্তা করে না।
২২. কেন Hidden Layer-কে "Hidden" বলা হয়?
কারণ এটা সরাসরি ইনপুট বা আউটপুট নয়, ভেতরে লুকানো প্রক্রিয়াকরণ ধাপ।
২৩. ANN-এর একটা সীমাবদ্ধতা কী?
এর সিদ্ধান্ত বোঝা কঠিন (ব্ল্যাক-বক্স প্রকৃতির), এবং প্রচুর ডেটা ও কম্পিউটিং শক্তি লাগে।
২৪. TensorFlow/Keras কী?
Neural Network তৈরি ও ট্রেনিং করার জনপ্রিয় Python লাইব্রেরি।
২৫. ANN দিয়ে Spam Detection কীভাবে কাজ করে?
পুরনো স্প্যাম ও না-স্প্যাম ইমেইল দেখে প্যাটার্ন শিখে নতুন ইমেইল যাচাই করে।
২৬. Perceptron কী?
সবচেয়ে প্রথম ও সরলতম আর্টিফিশিয়াল নিউরন মডেল, ১৯৫০-৬০-এর দশকে তৈরি।
২৭. কেন ২০০০ সালের পর Neural Network আবার জনপ্রিয় হলো?
প্রচুর ডেটা (Big Data) ও শক্তিশালী কম্পিউটিং (GPU) সহজলভ্য হওয়ায়।
২৮. AI কি সবসময় Neural Network ব্যবহার করে?
না, rule-based সিস্টেম বা Decision Tree-এর মতো অন্য পদ্ধতিও AI-এর অংশ হতে পারে।
২৯. ANN আর্কিটেকচারে নোডের সংখ্যা কে ঠিক করে?
সাধারণত ডেভেলপার সমস্যার জটিলতা ও ডেটার ধরন বুঝে ঠিক করেন, এবং পরীক্ষার মাধ্যমে যাচাই করেন।
৩০. Deep Neural Network কীভাবে সাধারণ ANN থেকে আলাদা?
Deep Neural Network-এ অনেকগুলো Hidden Layer থাকে, যা আরও জটিল প্যাটার্ন শিখতে পারে।

✅ MCQ প্র্যাকটিস

১. Biological Neural Network-এ Synapse-এর সমতুল্য ANN-এ কী?
(ক) Node (খ) Weight (গ) Layer (ঘ) Bias
উত্তর: (খ) Weight
২. কোন লেয়ার সরাসরি বাইরের ডেটা গ্রহণ করে?
(ক) Hidden Layer (খ) Output Layer (গ) Input Layer (ঘ) Activation Layer
উত্তর: (গ) Input Layer
৩. Feedforward Network-এ তথ্য কীভাবে চলাচল করে?
(ক) দ্বিমুখী (খ) একমুখী (গ) এলোমেলো (ঘ) বৃত্তাকার
উত্তর: (খ) একমুখী
৪. নিচের কোনটি Classification-এর উদাহরণ?
(ক) বাড়ির দাম অনুমান (খ) Pass/Fail নির্ধারণ (গ) তাপমাত্রা অনুমান (ঘ) বিক্রয় পূর্বাভাস
উত্তর: (খ) Pass/Fail নির্ধারণ
৫. Overfitting-এর ফলাফল কী?
(ক) মডেল নতুন ডেটাতে ভালো করে (খ) মডেল নতুন ডেটাতে খারাপ করে (গ) ট্রেনিং সময় কমে যায় (ঘ) কোনো প্রভাব পড়ে না
উত্তর: (খ) মডেল নতুন ডেটাতে খারাপ করে

🎯 ক্লাসরুম অ্যাক্টিভিটি সংকলন

অ্যাক্টিভিটি ১ (রোল-প্লে — নিউরন হয়ে যাওয়া): ৫-৬ জন শিক্ষার্থী একটা সারিতে দাঁড়াবে। প্রথমজনকে একটা সংখ্যা (উদ্দীপনা) দেওয়া হবে, সে সেটা একটু পরিবর্তন করে (যোগ/গুণ) পরেরজনকে জানাবে — এভাবে শেষজন পর্যন্ত পৌঁছালে দেখা যাবে তথ্য কীভাবে ধাপে ধাপে পরিবর্তিত হয়ে "আউটপুট"-এ পৌঁছায়।
অ্যাক্টিভিটি ২ (আলোচনা): "ANN কি মানুষের মস্তিষ্কের মতোই চিন্তা করে?" — এই প্রশ্নে ৩ মিনিট খোলা আলোচনা করাও, এরপর সঠিক ব্যাখ্যা দাও।
অ্যাক্টিভিটি ৩ (কুইজ): বোর্ডে Weight, Bias, Activation শব্দগুলো লিখে শিক্ষার্থীদের বলতে হবে তারা প্রতিটার জন্য কোন বাস্তব-জীবনের উপমা মনে করতে পারে।

📝 হোমওয়ার্ক অ্যাসাইনমেন্ট

  1. নিজের ভাষায় লিখো — Biological Neuron আর Artificial Neuron-এর মধ্যে ৫টা মিল ও অমিল।
  2. Input Layer → Hidden Layer → Output Layer ডায়াগ্রামটা নিজ হাতে এঁকে, প্রতিটাতে একটা করে নিজের তৈরি উদাহরণ লেখো (শিক্ষার্থীর উদাহরণ ছাড়া অন্য কিছু)।
  3. একটা বাস্তব সমস্যা খুঁজে বের করো, যেখানে তুমি মনে করো ANN ব্যবহার করা যেতে পারে, এবং তার Input Feature ও Output কী হতে পারে তা লিখো।

🎓 নিউরাল নেটওয়ার্কের সূচনা — সম্পূর্ণ বিগিনার-ফ্রেন্ডলি ক্লাসরুম রিসোর্স

পরবর্তী ক্লাসে আমরা শিখবো — Activation Functions, Backpropagation ও Deep Learning-এর বিস্তারিত।