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

01

কম্পিউটার কেন মানুষের ভাষা বোঝে না?

⏱ ১৫ মিনিট

ধরো, তুমি তোমার বন্ধুকে বললে —

"আজকে অনেক ঠান্ডা লাগছে।"

তোমার বন্ধু সাথে সাথে বুঝে ফেলল — তুমি ঠান্ডায় কষ্ট পাচ্ছ, হয়তো একটা গরম কাপড় লাগবে, হয়তো চা খেতে ইচ্ছে করছে। এত কিছু সে বুঝে ফেলল মাত্র একটা বাক্য শুনে!

এখন এই একই বাক্যটা যদি একটা Computer-কে বলা হয়, সে কী বুঝবে?

ক্লাসে জিজ্ঞেস করো

  • Computer কি বাংলা বুঝতে পারে?
  • Computer কি অনুভূতি (Emotion) বুঝতে পারে?
  • Computer কি Sarcasm বুঝতে পারে? যেমন — "বাহ, দারুণ হলো তো!" (রাগ করে বলা)
  • Computer কি রসিকতা (Joke) বুঝতে পারে?

সত্যি কথা হলো — Computer আসলে কোনো ভাষাই সরাসরি বোঝে না। Computer শুধু একটা জিনিস বোঝে — সংখ্যা (Numbers)। ভেতরে ভেতরে একটা Computer শুধু 0 আর 1 নিয়ে কাজ করে (Electricity On/Off)।

তাহলে ভাষা কীভাবে Computer পর্যন্ত পৌঁছায়?

Human Language — "আজকে অনেক ঠান্ডা লাগছে"
Text — লেখা আকারে সংরক্ষণ
Numbers — শব্দ/অক্ষর → সংখ্যা
Computer — Pattern খুঁজে বের করতে পারে
মূল Intuition: Computer ভাষা "বোঝে" না, বরং ভাষার মধ্যে থাকা Pattern চিনতে শেখে। এই পুরো প্রক্রিয়াটাকেই সম্ভব করে তোলে NLP — Natural Language Processing
02

Neural Network — Quick Revision

⏱ ১০ মিনিট

NLP বোঝার আগে একটা জিনিস মনে করিয়ে দিই — Neural Network। মানুষের মস্তিষ্কে যেমন অনেক Neuron একসাথে কাজ করে, ঠিক তেমনি Neural Network হলো Computer-এর ভেতরে ছোট ছোট গাণিতিক "Neuron"-এর একটা জাল।

Analogy — রান্না শেখা

একজন নতুন বাবুর্চি প্রথমবার রান্না করলে হয়তো লবণ বেশি দিয়ে ফেলবে। বারবার ভুল থেকে শিখে একসময় নিখুঁত হয়। Neural Network-ও Training দিয়ে Pattern চিনতে শেখে।

ভাষার কাজে Neural Network কেন দরকার?

ভাষা জটিল — একই শব্দের একাধিক মানে, Context অনুযায়ী অর্থ পাল্টায়। সাধারণ Rule দিয়ে ধরা কঠিন। Neural Network Data দেখে জটিল Pattern নিজে শিখে নিতে পারে।

সংযোগ

Neural Networks
Deep Learning
NLP

Deep Learning = অনেক Layer-এর Neural Network। যখন এটা ভাষার কাজে ব্যবহার হয়, তখনই NLP-র শক্তিশালী হাতিয়ার হয়ে ওঠে।

03

NLP কী?

⏱ ২০ মিনিট

এখন আমরা তিনটা ছোট শব্দ ভেঙে বুঝি:

Natural

মানুষ যেভাবে স্বাভাবিকভাবে কথা বলে/লেখে — Programming Language না।

Language

শব্দ, বাক্য, ব্যাকরণ দিয়ে তৈরি Communication।

Processing

ধাপে ধাপে বিশ্লেষণ করে ফলাফলে পৌঁছানো।

সহজ সংজ্ঞা

NLP হলো AI-এর একটা শাখা, যা Computer-কে মানুষের স্বাভাবিক ভাষা বুঝতে, বিশ্লেষণ করতে এবং সাড়া দিতে শেখায়।

ভাষা থেকে Action

Language — "আগামীকাল ঢাকার আবহাওয়া কেমন?"
Computer — সংখ্যায় রূপান্তর + Pattern
Meaning — "আবহাওয়া জানতে চাওয়া"
Action — সঠিক উত্তর ফেরত

প্রতিদিনের NLP

ProductNLP কী করছে
Google Translateএক ভাষা → আরেক ভাষা
ChatGPTপ্রশ্ন বুঝে স্বাভাবিক উত্তর
Siri / Alexaকণ্ঠ → Text → Intent → Action
Grammarlyব্যাকরণ ও গঠন সংশোধন
Gmail Smart Replyমেইল পড়ে সংক্ষিপ্ত উত্তর suggest
কেন গুরুত্বপূর্ণ? Email, Review, Social Post — বিশাল তথ্যভাণ্ডার থেকে অর্থ বের করার উপায় NLP।
04

NLP কেন দরকার?

⏱ ১০ মিনিট

একটা E-commerce Company প্রতিদিন ১ লক্ষ Customer Review পায়। একজন মানুষ যদি প্রতিটা Review পড়ে, কতদিন লাগবে?

হিসাব

একটা Review ৩০ সেকেন্ড → ১ লক্ষ Review ≈ ৮৩৩ ঘণ্টা ≈ একজন মানুষের ~৩৫ দিন (ঘুম ছাড়া)!

যেখানে Manual পড়া অসম্ভব

লক্ষ লক্ষ Customer Review
হাজার হাজার Email
Social Media Comment
News Article
Medical Report
Legal Document

Business Example

NLP দিয়ে Review স্বয়ংক্রিয়ভাবে Positive / Negative / Battery complaint / Price complaint-এ ভাগ — Product Team সরাসরি জানে কোথায় উন্নতি দরকার।

05

NLP Pipeline — ধাপে ধাপে

⏱ ৩০ মিনিট

Raw Text থেকে একটা Business Decision পর্যন্ত পৌঁছাতে Text-কে অনেকগুলো ধাপ পার হতে হয়। এই পুরো যাত্রাকে বলে NLP Pipeline। নিচের lab-এ প্রতিটা ধাপে live example + Python code দেখো।

NLP Pipeline — Step by Step (Interactive)
Text এডিট করো · পরের ধাপ চাপুন · প্রতি ধাপে before→after + code দেখুন
Rawtext
Cleanre
Tokensplit
Stopfilter
Stemroot
Lemmadict
BoWvector
Modelinsight
Live Example
Python Code (Colab-style)

    
ধাপ ১: Raw Text কাঁচা সবজি — এখনো ধোয়া/কাটা হয়নি
ধাপ1 / 8
Tokens
Vocab10
Sentiment

প্রতিটা ধাপ — সংক্ষিপ্ত নোট

১–২. Raw Text → Cleaning

কাঁচা review থেকে URL, emoji, extra punctuation সরিয়ে lowercase করা।

৩–৪. Tokenization → Stop Words

শব্দে ভাঙা, তারপর i/the/this-এর মতো কম-অর্থবহ শব্দ বাদ। সতর্কতা: sentiment-এ "not" রাখা জরুরি হতে পারে।

৫–৬. Stemming vs Lemmatization

Stemming দ্রুত কিন্তু rough (purchas); Lemmatization dictionary-aware (love)।

৭–৮. Features → Model → Insight

BoW vector → model prediction (Positive/Negative) → business action।

মনে রাখার মতো ভুল: সব task-এ সব preprocessing step লাগে না — Modern Transformer-এ stemming প্রায়ই বাদ দেওয়া হয়।
06

Natural Language Understanding (NLU)

⏱ ২০ মিনিট

ধরো তুমি Alexa-কে বললে — "আগামীকালের আবহাওয়া কেমন থাকবে?" এখানে দুইটা কাজ:

  1. শব্দগুলো Text-এ রূপান্তর ও Process (NLP)
  2. তুমি কী চাও সেটা বোঝা — আবহাওয়ার তথ্য (NLU)

সহজ সংজ্ঞা

NLU হলো NLP-র উপশাখা, যেটা বাক্যের পেছনের আসল উদ্দেশ্য ও অর্থ বোঝার চেষ্টা করে।

NLP vs NLU

বিষয়NLPNLU
কাজভাষা Process — Tokenize, Cleanঅর্থ ও উদ্দেশ্য বোঝা
পরিধিবড় ছাতাNLP-র গভীরতর অংশ
উদাহরণTokenization, StemmingIntent, Entity Recognition
প্রশ্ন"বাক্যটার গঠন কী?""ব্যবহারকারী কী চাইছে?"

NLU-র চারটা মূল কাজ

Intent Recognition

"আগামীকাল ঢাকায় বৃষ্টি হবে?" → Intent = আবহাওয়া জানা।

Entity Recognition

Name, Location, Date খুঁজে বের করা — "ঢাকা", "আগামীকাল"।

Context Understanding

"ওটার দাম কত?" — "ওটা" আগের বাক্য থেকে বোঝা।

Sentiment Understanding

খুশি / রাগ / হতাশা বোঝা।

ChatGPT উদাহরণ: "গতকালের ইমেইলটা আবার ছোট করে লিখে দাও" — NLU বোঝে Summary চাইছ, আগের ইমেইল প্রসঙ্গে।
07

মানুষের ভাষায় Ambiguity (দ্ব্যর্থতা)

⏱ ২০ মিনিট

একই শব্দ বা বাক্যের একাধিক অর্থ থাকতে পারে — এটাকে বলে Ambiguity। মানুষ Context দিয়ে বোঝে; Computer-এর জন্য এটা ধাঁধা।

Try it — Ambiguity খুঁজে বের করো

একটা বাক্যে ক্লিক করো — কোন ধরনের Ambiguity তা দেখাবে

১. Lexical

শব্দগত দ্ব্যর্থতা — "Bank"।

২. Syntactic

বাক্য-গঠনগত — "I saw the man with a telescope."

৩. Semantic

সামগ্রিক অর্থ অস্পষ্ট — "The chicken is ready to eat."

৪. Pragmatic

আক্ষরিক অর্থ ≠ বাস্তব উদ্দেশ্য — "Can you open the window?"

মজার উদাহরণ

"আমি একটা মাছ ধরলাম যেটা দুই কেজি ওজনের একটা জাল দিয়ে।" — জালটা দুই কেজি, নাকি মাছটা?

কেন কঠিন? মানুষ অভিজ্ঞতা ও প্রসঙ্গ দিয়ে বোঝে; Computer-এর কাছে শুধু Text — তাই বিশাল Example দিয়ে শেখাতে হয়।
08

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

⏱ ২০ মিনিট
ApplicationBusiness সমস্যাNLP সমাধানউপকার
Google Searchঅস্পষ্ট queryIntent matchBetter UX
ChatGPTপ্রাকৃতিক সাহায্যউত্তর generateদ্রুত support
Translateভাষার বাধাভাষা রূপান্তরবৈশ্বিক যোগাযোগ
Grammarlyলেখার ভুলসংশোধন suggestProfessional লেখা
Siri / AlexaHands-freeSpeech → Intentসুবিধা
Support Chatbot২৪×৭ খরচAuto FAQখরচ কমানো
Spam FilterInbox ভরাPattern classifyনিরাপত্তা
Sentiment Analysisলক্ষ reviewAuto sentimentদ্রুত সিদ্ধান্ত
Resume Screeningহাজারো CVSkill extractদ্রুত hire
Fake Newsভুল তথ্যPattern detectবিশ্বাসযোগ্যতা
Medical NLPReport পড়াKey info extractদ্রুত সহায়তা
Legal Analysisদীর্ঘ documentClause detectদ্রুত review
09

Google Colab Demonstration

⏱ Hands-on

উপরে ★ Interactive Pipeline live demo দেয়। নিচে Colab-এ চালানোর reference code:

Step 1 — Import ও Raw Text
import re
import nltk
nltk.download('punkt')
nltk.download('stopwords')
nltk.download('wordnet')

from nltk.tokenize import word_tokenize
from nltk.corpus import stopwords
from nltk.stem import PorterStemmer, WordNetLemmatizer

text = "I LOVED this product!!! It's the BEST purchase ever :) Visit www.shop.com"
print("Raw Text:", text)
Expected Output
Raw Text: I LOVED this product!!! It's the BEST purchase ever :) Visit www.shop.com
Step 2 — Text Cleaning
clean_text = text.lower()
clean_text = re.sub(r'http\S+', '', clean_text)
clean_text = re.sub(r'[^a-z\s]', '', clean_text)
print("Cleaned Text:", clean_text)
Expected Output
Cleaned Text: i loved this product its the best purchase ever visit
Line-by-Line ব্যাখ্যা

text.lower() — "Best" আর "best" এক করে।
re.sub(r'http\S+', '', …) — Link সরায়।
re.sub(r'[^a-z\s]', '', …) — Punctuation/Emoji বাদ।

Step 3 — Tokenization
tokens = word_tokenize(clean_text)
print("Tokens:", tokens)
Tokens: ['i', 'loved', 'this', 'product', 'its', 'the', 'best', 'purchase', 'ever', 'visit']
Step 4 — Stop Word Removal
stop_words = set(stopwords.words('english'))
filtered_tokens = [word for word in tokens if word not in stop_words]
print("After Stop Word Removal:", filtered_tokens)
After Stop Word Removal: ['loved', 'product', 'best', 'purchase', 'ever', 'visit']
লক্ষ্য করো: "i", "this", "its", "the" বাদ পড়েছে।
Step 5 — Stemming
stemmer = PorterStemmer()
stemmed = [stemmer.stem(word) for word in filtered_tokens]
print("After Stemming:", stemmed)
After Stemming: ['love', 'product', 'best', 'purchas', 'ever', 'visit']
Step 6 — Lemmatization
lemmatizer = WordNetLemmatizer()
lemmatized = [lemmatizer.lemmatize(word) for word in filtered_tokens]
print("After Lemmatization:", lemmatized)
After Lemmatization: ['loved', 'product', 'best', 'purchase', 'ever', 'visit']
পার্থক্য: Stemming "purchase" → "purchas"; Lemmatization সঠিক শব্দ রাখে।
Step 7 — Bag of Words
from sklearn.feature_extraction.text import CountVectorizer

sample_reviews = ["loved product best purchase", "worst product ever bad"]
vectorizer = CountVectorizer()
vectors = vectorizer.fit_transform(sample_reviews)

print("Vocabulary:", vectorizer.vocabulary_)
print("Vector Form:\n", vectors.toarray())
Expected Output
Vocabulary: {'loved': 3, 'product': 6, 'best': 0, ...} Vector Form: [[1 1 0 1 ...] [0 0 1 0 ...]]
এখানে কী ঘটল? প্রতিটা শব্দ একটা column; প্রতিটা review একটা row-তে count — Text → Numbers।

Common Beginner Mistakes

Best Practices

10

সাধারণ ভুলগুলো (Beginner Mistakes)

⏱ ধারণা স্পষ্ট করা
১. NLP মানেই শুধু ChatGPT ভাবা
ChatGPT একটা Application; Spam, Translate, Search — সবই NLP।
২. NLP আর NLU গুলিয়ে ফেলা
NLP = বড় ছাতা (Process); NLU = অর্থ ও উদ্দেশ্য বোঝা।
৩. Computer মানুষের মতোই ভাষা বোঝে ধরে নেওয়া
Computer Pattern চেনে, মানুষের মতো "বুঝে" না।
৪. Text Preprocessing উপেক্ষা করা
Garbage In, Garbage Out — নোংরা text → খারাপ result।
৫. Translation-কেই NLP-র একমাত্র কাজ ভাবা
Sentiment, Chatbot, Search, Summarization — সমান গুরুত্বপূর্ণ।
11

Industry Best Practices

⏱ ১০ মিনিট
CompanyNLP ব্যবহার
GoogleSearch, Translate, Smart Compose
OpenAIChatGPT / LLM
MicrosoftGrammar Check, Copilot
AmazonAlexa, Review analysis
MetaModeration, Translation
NetflixReview/Description → Recommendation

Model বাজারে আসার প্রক্রিয়া

Data Collection
Text Cleaning
Model Training
Continuous Improvement
Human Feedback
মূল শিক্ষা: NLP System একবার বানিয়ে থেমে থাকে না — Feedback দিয়ে ক্রমাগত উন্নত হয়।
12

Interactive Classroom Activities

⏱ Interactive

Activity 1 — Ambiguity

"She saw the boy with binoculars", "সে বলল সে ব্যাংকে যাচ্ছে", "Flying planes can be dangerous" — কোন ধরনের Ambiguity?

Activity 2 — Pipeline Step

Teacher "Tokenization" বললে Student বলে পরের ধাপ ("Stop Word Removal")।

Activity 3 — Match

Healthcare / Banking / E-commerce / Media ↔ Medical Report / Fraud Alert / Review Analysis / Fake News।

Activity 4 — Entity

Paragraph থেকে Name, Location, Date, Organization আন্ডারলাইন।

Activity 5 — Intent

"আমার Order কোথায়?", "রিফান্ড কীভাবে পাব?" — Intent কী?

13

Revision, History ও Interview Prep

⏱ ঘরে Revise

NLP-র ইতিহাস

১৯৫০–৬০
Rule-Based — হাতে Grammar Rule; সীমিত ও ভঙ্গুর।
১৯৯০
Statistical NLP — Probability (Naive Bayes-এর মতো)।
২০১০
Word Embeddings + Deep Learning — Word2Vec, Neural Network।
২০১৭
Transformer — "Attention Is All You Need"।
২০১৮–এখন
BERT, GPT, LLM — ChatGPT সম্ভব হলো।

NLP Ecosystem

Artificial Intelligence (AI)
Machine Learning (ML)
Deep Learning
Neural Networks
Natural Language Processing (NLP)

NLP vs NLU vs NLG

শাখাপূর্ণরূপকাজউদাহরণ
NLPNatural Language Processingভাষা ProcessTokenization
NLUNatural Language Understandingঅর্থ বোঝাIntent Recognition
NLGNatural Language GenerationText তৈরিChatGPT উত্তর

Case Study — Review Analysis

Raw Reviews
NLP Pipeline
Sentiment Model
Business Decision

Modern NLP (Conceptual)

Word Embeddings

কাছাকাছি অর্থের শব্দ সংখ্যায়ও কাছাকাছি।

Transformers

সব শব্দ একে অপরের সাথে সম্পর্ক রেখে process।

BERT

Bidirectional — আগে ও পরে দুই দিক থেকে বোঝে।

GPT ও LLMs

বিশাল text দেখে Generate করতে পারে।

Quick Revision

Viva Questions

১. Computer কেন সরাসরি ভাষা বুঝতে পারে না?
শুধু সংখ্যা/pattern বোঝে; ভাষাকে সংখ্যায় রূপান্তর করতে হয়।
২. NLP আর NLU-র মূল পার্থক্য কী?
NLP = process; NLU = অর্থ ও উদ্দেশ্য বোঝা।
৩. Stemming আর Lemmatization-এর পার্থক্য?
Stemming দ্রুত/rough; Lemmatization dictionary-accurate।
৪. Pragmatic Ambiguity-র উদাহরণ দাও
"Can you open the window?" — প্রশ্ন নয়, অনুরোধ।

Top ৩০ Interview Questions

১. NLP কী?
AI-র শাখা যা Computer-কে মানুষের ভাষা বুঝতে ও সাড়া দিতে সক্ষম করে।
২. NLP আর NLU-র পার্থক্য?
NLP বড় ক্ষেত্র; NLU অর্থ/উদ্দেশ্য বোঝায় মনোযোগ দেয়।
৩. NLG কী?
Computer থেকে স্বাভাবিক পাঠযোগ্য text তৈরি।
৪. Tokenization কী?
Text-কে শব্দ/বাক্যে ভাগ করা।
৫. Stop Words কী?
I, is, the — বেশি ব্যবহৃত কিন্তু কম অর্থবহ শব্দ।
৬. Stemming vs Lemmatization?
Stemming rough/fast; Lemmatization accurate/slower।
৭. Feature Extraction কেন?
Model শুধু সংখ্যা বোঝে — text → numbers।
৮. Bag of Words কী?
শব্দ count; order বিবেচনা করে না।
৯. TF-IDF কী?
Common শব্দের গুরুত্ব কমিয়ে meaningful শব্দ হাইলাইট।
১০. Word Embedding কী?
অর্থ-কাছাকাছি শব্দ সংখ্যায়ও কাছাকাছি থাকে।
১১. Lexical Ambiguity?
এক শব্দের একাধিক অর্থ — Bank।
১২. Syntactic Ambiguity?
বাক্য-গঠন দুইভাবে পড়া যায় — telescope উদাহরণ।
১৩. NER কী?
Name, Location, Date, Organization খুঁজে বের করা।
১৪. Intent Recognition?
ব্যবহারকারীর মূল উদ্দেশ্য শনাক্ত — Order Tracking।
১৫. Sentiment Analysis?
Positive / Negative / Neutral বের করা।
১৬. Transformer কেন গুরুত্বপূর্ণ?
সব শব্দ সম্পর্ক রেখে একসাথে process — দ্রুত ও কার্যকর।
১৭. BERT কী?
Bidirectional Transformer — understanding-এ শক্তিশালী।
১৮. GPT কী?
Generative Transformer — নতুন text তৈরি।
১৯. LLM কী?
বিশাল data/parameter-এর language model — GPT, Gemini।
২০. Rule-Based vs Statistical NLP?
Rule = হাতে grammar; Statistical = data থেকে probability।
২১. Preprocessing কেন গুরুত্বপূর্ণ?
সঠিক cleaning model performance বাড়ায়।
২২. Corpus কী?
Training/analysis-এর বড় text collection।
২৩. POS Tagging কী?
Noun/Verb/Adjective ট্যাগ করা।
২৪. Context কেন কঠিন?
অর্থ প্রসঙ্গে বদলায়; আগের কথা মনে রাখতে হয়।
২৫. Chatbot-এ NLP?
Intent/Entity (NLU) + উত্তর (NLG)।
২৬. Speech-to-Text vs Text-to-Speech?
কণ্ঠ→লেখা vs লেখা→কণ্ঠ।
২৭. OCR + NLP?
ছবি থেকে text → তারপর NLP process।
২৮. Data Quality কেন গুরুত্বপূর্ণ?
Garbage In, Garbage Out।
২৯. Ambiguity চ্যালেঞ্জের উদাহরণ?
Sarcasm: "এটা ভালো না" ভুল Positive ধরা।
৩০. Beginner path?
Preprocessing + BoW/NB → Embeddings → Transformers → LLM।

MCQ

১. NLP-র পূর্ণরূপ?
(ক) National Language Program (খ) Natural Language Processing (গ) Neural Language Processing (ঘ) New Language Protocol
উত্তর: (খ) Natural Language Processing
২. কোনটা NLU-র কাজ?
(ক) Tokenization (খ) Intent Recognition (গ) Stemming (ঘ) Text Cleaning
উত্তর: (খ) Intent Recognition
৩. "Bank"-এর একাধিক অর্থ — কোন Ambiguity?
(ক) Syntactic (খ) Lexical (গ) Pragmatic (ঘ) Semantic
উত্তর: (খ) Lexical
৪. Transformer কোন Paper?
(ক) BERT (খ) Attention Is All You Need (গ) GPT (ঘ) Word2Vec
উত্তর: (খ) Attention Is All You Need
৫. Text → সংখ্যা?
(ক) Tokenization (খ) Cleaning (গ) Feature Extraction (ঘ) Stemming
উত্তর: (গ) Feature Extraction

Homework

  1. ৫টা App খুঁজে NLP কীভাবে ব্যবহার হয় এক প্যারাগ্রাফে লেখো।
  2. Colab-এ নিজের বাক্য দিয়ে Pipeline Run করো।
  3. NLP vs NLU — Chatbot উদাহরণ দিয়ে এক প্যারাগ্রাফ।

NLP Intro — Language First, Technology Later

পরবর্তী ধাপ: Sentiment Analysis / Transformers deeper dive