তথ্য তত্ত্ব — Entropy, Cross-Entropy, KL
এই পাঠে যা শিখবেন
- "তথ্য" পরিমাপ — bits-এ কীভাবে হয়, কেন $\log$ ব্যবহার করা হয়
- Entropy ($H$) — অনিশ্চয়তার গাণিতিক পরিমাপ
- Cross-entropy — AI-এর সবচেয়ে বেশি ব্যবহৃত classification loss
- KL divergence — দু'টি বিতরণ কতটা ভিন্ন তা মাপার উপায়
- Python-এ এই তিনটি — হাতে-কলমে কোড
১ · "তথ্য" বলতে কী বোঝায়?
১৯৪৮ সালে Claude Shannon এক যুগান্তকারী প্রবন্ধ ("A Mathematical Theory of Communication") প্রকাশ করেন — যেখানে দেখান তথ্য গাণিতিকভাবে মাপা যায়। তার মূল উপলব্ধি — একটি বার্তায় ততটাই তথ্য যতটা সেটা বিস্ময়কর। প্রত্যাশিত খবর তথ্যহীন; অপ্রত্যাশিত খবর তথ্যপূর্ণ।
- "আগামীকাল সূর্য পূর্ব দিকে উঠবে।" — ০ bits প্রায় (সম্পূর্ণ প্রত্যাশিত)।
- "আজ ঢাকায় তুষারপাত হচ্ছে।" — অসাধারণ তথ্য! বিস্ময়কর বলেই।
- "একটি লটারি জিতেছেন (১ কোটিতে ১)।" — বিশাল তথ্য।
একটি ঘটনার সম্ভাবনা $p$ হলে — সেই ঘটনায় থাকা তথ্য (surprisalSurprisalএকটি single ঘটনার "তথ্য মূল্য"। কম সম্ভাবনা = বেশি surprisal. Shannon-এর তত্ত্বে এর একক bits ($\log_2$) বা nats ($\log_e$)।): $$I(x) = -\log_2 p(x) \text{ bits}$$
ছোট সম্ভাবনা = বেশি তথ্য। মুদ্রা ছোঁড়ায় Heads ($p = 0.5$) → $-\log_2(0.5) = 1$ bit. ছক্কায় ৬ পড়া ($p = 1/6$) → $\log_2 6 \approx 2.58$ bits. কেন $\log$? কারণ স্বাধীন ঘটনার যৌথ সম্ভাবনা গুণ হয় — কিন্তু আমরা চাই তাদের তথ্য যোগ হোক। $\log$ গুণকে যোগে রূপান্তরিত করে।
২ · Entropy — গড় তথ্য, মানে অনিশ্চয়তা
একটি random variable-এর entropy মানে — তার গড় তথ্য, অর্থাৎ গড়ে কতটুকু অনিশ্চিত। Shannon-এর সূত্র:
$$H(X) = -\sum_i p(x_i) \log_2 p(x_i)$$
উদাহরণ
ভারসাম্যপূর্ণ মুদ্রা (Heads/Tails — প্রতিটি $0.5$):
$H = -(0.5 \log_2 0.5 + 0.5 \log_2 0.5) = -(2 \times 0.5 \times -1) = 1$ bit
অসমতা মুদ্রা ($p_H = 0.9$, $p_T = 0.1$):
$H = -(0.9 \log_2 0.9 + 0.1 \log_2 0.1) \approx 0.469$ bits
সম্পূর্ণ পক্ষপাতী মুদ্রা ($p_H = 1.0$):
$H = 0$ bits — কোনো অনিশ্চয়তা নেই, ফলাফল আগে থেকেই জানা।
৩ · Python-এ NumPyNumPy · Numerical PythonPython-এর সবচেয়ে জনপ্রিয় গণিত library — দ্রুত array, vector, matrix calculation. ML/AI কোডের ভিত্তি। Entropy
import numpy as np
def entropy(p):
"""বিতরণ p-এর entropy (bits)।"""
p = np.array(p)
p = p[p > 0] # log(0) এড়াতে
return -np.sum(p * np.log2(p))
# পরীক্ষা
print(f"ভারসাম্যপূর্ণ মুদ্রা: {entropy([0.5, 0.5]):.4f} bits")
print(f"অসমতা মুদ্রা (0.9): {entropy([0.9, 0.1]):.4f} bits")
print(f"নিশ্চিত (1.0): {entropy([1.0]):.4f} bits")
print(f"৬-পাশি ছক্কা: {entropy([1/6]*6):.4f} bits")
print(f"৪-পাশি ভারসাম্য: {entropy([0.25]*4):.4f} bits")
৪ · Cross-Entropy — দু'টি বিতরণ মিশিয়ে
AI-তে আমরা সাধারণত একটি "প্রকৃত" বিতরণ ($p$) ও একটি "অনুমিত" বিতরণ ($q$) — দু'টির তুলনা করি। Cross-entropyCross-entropy$H(p, q) = -\sum p \log q$। ভাষাগতভাবে — "$p$ থেকে আসা ডেটা $q$ ব্যবহার করে encode করতে গড়ে কত bits লাগে।" $q = p$ হলে ন্যূনতম, ভিন্ন হলে বেশি। AI-তে classification loss. বলে — প্রকৃত বিতরণ $p$ থেকে আসা ডেটা $q$ ব্যবহার করে এনকোড করতে গড়ে কত bits লাগে।
$$H(p, q) = -\sum_i p(x_i) \log_2 q(x_i)$$
কেন এটি AI-এ গুরুত্বপূর্ণ?
একটি classificationClassification · শ্রেণিবিন্যাসML-এর একটি কাজ যেখানে input-কে আগে থেকে নির্ধারিত শ্রেণিতে ভাগ করা হয় — যেমন email "spam"/"ham", ছবি "কুকুর"/"বিড়াল"। মডেল প্রতিটি ক্লাসের জন্য সম্ভাবনা বের করে — যেমন [0.7, 0.2, 0.1] (কুকুর, বিড়াল, পাখি)।
সত্যি লেবেল হলো "কুকুর" — অর্থাৎ true distribution [1, 0, 0]। দু'টি বিতরণের মধ্যে cross-entropy = মডেলের loss।
AI-এর প্রায় সব classification মডেলে — ChatGPT, BERT, ResNet — cross-entropy loss ব্যবহৃত হয়। Language model প্রতিটি শব্দ সঠিকভাবে অনুমান করার সম্ভাবনা যত বাড়ায়, cross-entropy তত কমে।
৫ · KL Divergence — দু'টি বিতরণ কতটা ভিন্ন
Cross-entropy থেকে $p$-এর entropy বিয়োগ করলে পাই Kullback-Leibler (KL) divergence — দু'টি বিতরণের মধ্যে "দূরত্ব"।
$$D_{KL}(p \| q) = \sum_i p(x_i) \log_2 \dfrac{p(x_i)}{q(x_i)} = H(p, q) - H(p)$$
- $D_{KL}(p \| q) \geq 0$ সবসময় (Gibbs' inequality)।
- $D_{KL}(p \| q) = 0$ iff $p = q$।
- Symmetric নয়: $D_{KL}(p \| q) \neq D_{KL}(q \| p)$ সাধারণত — তাই "metric" নয়।
উদাহরণ Python-এ
import numpy as np
def cross_entropy(p, q, eps=1e-12):
p = np.array(p, dtype=float)
q = np.clip(np.array(q, dtype=float), eps, 1.0)
return -np.sum(p * np.log2(q))
def kl(p, q, eps=1e-12):
p = np.clip(np.array(p, dtype=float), eps, 1.0)
q = np.clip(np.array(q, dtype=float), eps, 1.0)
return np.sum(p * np.log2(p / q))
# Classification উদাহরণ
true = [1, 0, 0] # সত্য: কুকুর
good = [0.85, 0.10, 0.05] # ভালো অনুমান
bad = [0.05, 0.85, 0.10] # খারাপ অনুমান (বিড়াল বলেছে)
print(f"ভালো মডেলের loss: {cross_entropy(true, good):.4f}")
print(f"খারাপ মডেলের loss: {cross_entropy(true, bad):.4f}")
p = [0.5, 0.5]
q1 = [0.5, 0.5]
q2 = [0.9, 0.1]
print(f"\nKL(p || p): {kl(p, q1):.4f}")
print(f"KL(p || q2): {kl(p, q2):.4f}")
print(f"KL(q2 || p): {kl(q2, p):.4f} (≠ উপরের — asymmetric!)")
৬ · কেন $\log$ ভিত্তি $2$? এবং $e$?
$\log_2$ — তথ্যের একক "bits"। কম্পিউটার বিজ্ঞানে স্বাভাবিক।
$\log_e$ (ln) — একক "nats"। গণিতে স্বাভাবিক, derivative সরল।
AI কোডে — সাধারণত np.log() = প্রাকৃতিক log. সংখ্যা বদলায় ($\ln 2 \approx 0.693$ গুণ), কিন্তু আনুপাতিক সম্পর্ক একই — তাই gradient descent-এ পার্থক্য নেই।
৭ · AI-এ প্রয়োগ — কোথায় কোথায়
- Classification loss: Cross-entropy — প্রায় সব deep learning classifier-এ।
- Language Model: PerplexityPerplexity$2^{H(p,q)}$ — language model কতটা "বিভ্রান্ত" পরবর্তী token-এ। কম perplexity = ভালো model. GPT-4-এর perplexity ছোট datasets-এ ~৩-৫। = $2^{H(p, q)}$ — মডেল কতটা "বিভ্রান্ত" পরবর্তী শব্দে।
- VAEVAE · Variational Autoencoderএকটি generative model যা ডেটাকে compact "latent space"-এ encode করে আবার reconstruct করে। নতুন ছবি/ডেটা তৈরিতে ব্যবহৃত। (Variational Autoencoder): KL divergence — latent distribution-কে standard GaussianGaussian · Normal Distribution"ঘণ্টা আকৃতির" সবচেয়ে পরিচিত probability বিতরণ — গড় ($\mu$) ও মান বিচ্যুতি ($\sigma$) দিয়ে সংজ্ঞায়িত।-এর কাছে রাখা।
- GAN: Generator ও Discriminator-এর "যুদ্ধ" — JS divergence (KL-এর symmetric সংস্করণ)।
- RLHFRLHF · Reinforcement Learning from Human Feedbackমানুষের পছন্দ থেকে শিখে LLM-কে ভাল করার পদ্ধতি। ChatGPT, Claude এই কৌশলে fine-tune হয়েছে।: KL penalty — fine-tuned model-কে base model থেকে বেশি দূরে যেতে দেয় না।
- Diffusion model: noise বিতরণে cross-entropy-ভিত্তিক loss.
- Knowledge Distillation: Student-model শেখে teacher-এর soft prediction থেকে — KL minimize করে।
৮ · সরল উপলব্ধি — এক বাক্যে
$H(X) = -\sum p \log p$ — অনিশ্চয়তা। Cross-entropy = সত্য বিতরণ ও মডেলের দূরত্ব। AI-এর সব loss এই দু'টির ভাষা।
ভাবনার প্রশ্ন
প্রতিটি প্রশ্ন নিজে কিছুক্ষণ ভাবুন — তারপর "→ উত্তর" চাপুন।
প্র ০১ একটি classifier MSE (mean squared error) দিয়ে train করলে কাজ করে — কিন্তু cross-entropy দিয়ে অনেক ভালো। কেন? দু'টোর মধ্যে গাণিতিক ও বাস্তব পার্থক্য কী?
এটি deep learning-এর একটি ক্লাসিক প্রশ্ন — আজও interview-এ আসে। সংক্ষিপ্ত উত্তর: cross-entropy probabilistic, MSE geometric — এবং classification-এ আমাদের probability দরকার।
(১) Output-এর প্রকৃতি:
- Classification-এ output হলো প্রতিটি ক্লাসের সম্ভাবনা ($\sum = 1$)। MSE এই constraint জানে না — squared error দূরত্ব হিসাবে দেখে।
- Cross-entropy probabilistic loss — softmax-এর সাথে natural pair.
(২) Gradient signal:
- Sigmoid + MSE: যখন prediction ভুল হয়ে saturate করে (যেমন true=1, pred=0.001) — gradient খুব ছোট, vanishing gradient.
- Sigmoid + Cross-entropy: একই ভুলে gradient বড়, model দ্রুত শেখে। গাণিতিকভাবে — derivative সরাসরি $(p - y)$।
- এই কারণেই ১৯৮৬-৯০-এর দশকে neural network "শেখে না" সমস্যা cross-entropy-এ আংশিক সমাধান হয়।
(৩) তথ্যতাত্ত্বিক ব্যাখ্যা:
- Cross-entropy = MLE (Maximum Likelihood Estimation) — সবচেয়ে probable model বের করা।
- MSE = MLE যদি error Gaussian — image regression-এ ভালো, classification-এ অর্থহীন।
(৪) Confidence-এর শাস্তি:
- Cross-entropy "আত্মবিশ্বাসী ভুল"-কে কঠিন শাস্তি দেয় — true=1, pred=0.001 হলে loss = $-\log(0.001) \approx 6.9$, বিশাল।
- MSE-এ একই ভুলে loss = $1^2 = 1$ — তুলনায় ছোট। তাই model overconfident ভুল করতে ভয় পায় না।
কখন MSE classification-এ চলে? ছোট network-এ, balanced data-এ — কাজ করে কিন্তু ধীরে। আধুনিক production-এ প্রায় কখনোই না।
মূল উপলব্ধি: Loss function শুধু "error মাপা" নয় — গণিতে এটি মডেলের worldview। Cross-entropy বলে: "তুমি probability output করছ — আমি সেই probability-র quality মাপব।" এই philosophical clarity-ই deep learning-এর mathematical backbone.
প্র ০২ $D_{KL}(p \| q) \neq D_{KL}(q \| p)$ — এই asymmetry-র AI-তে বাস্তব impact কী? "Forward KL" বনাম "Reverse KL" — কখন কোনটি বেছে নিতে হয়?
KL-এর asymmetry শুধু গাণিতিক curiosity নয় — এটি AI ডিজাইনে বিশাল practical পার্থক্য আনে। "Forward" বনাম "Reverse" KL সম্পূর্ণ ভিন্ন আচরণ দেয়।
সংজ্ঞা স্পষ্ট করি:
- Forward KL: $D_{KL}(p \| q)$ — যেখানে $p$ প্রকৃত, $q$ আমাদের মডেল।
- Reverse KL: $D_{KL}(q \| p)$ — উল্টো।
(১) Forward KL — "Mean-seeking" / "Mass-covering":
- $p$ যেখানে nonzero, $q$ অবশ্যই nonzero হতে হবে — না হলে $\log(p/0) = \infty$।
- ফলে $q$ সব mode "ঢাকতে" চেষ্টা করে — gaps পূরণ করে।
- Multi-modal $p$-তে $q$ Gaussian হলে — সব mode-এর গড় বের করে (blurry)।
- কখন: Maximum likelihood, supervised classification — প্রকৃত data থেকে $q$ শেখা।
(২) Reverse KL — "Mode-seeking":
- $q$ যেখানে nonzero, $p$ হতে হবে — তাই $q$ শুধু একটি mode-এ "চিপে" বসে।
- Mode-collapse — variational inference-এ পরিচিত সমস্যা।
- কখন: Variational Inference (VAE, ELBO), policy distillation — যেখানে concentrated, sharp output চাই।
(৩) AI-তে বাস্তব উদাহরণ:
- VAE: $D_{KL}(q_\phi(z|x) \| p(z))$ — reverse KL — encoder $q$ যেন prior $p$-এর কাছাকাছি থাকে। তাই VAE-এর latent sometimes underuse mode.
- RLHF (PPO): $D_{KL}(\pi_{\text{new}} \| \pi_{\text{ref}})$ — reverse KL penalty — fine-tuned model base থেকে বেশি দূর না যায়। GPT-4-এর alignment এই trick-এ।
- Diffusion vs GAN: Diffusion forward KL-এ trained — তাই diversity বেশি। GAN reverse KL-জাতীয় objective — তাই কখনো mode-collapse.
(৪) Symmetric বিকল্প:
- JS divergence: $\frac{1}{2}D_{KL}(p \| m) + \frac{1}{2}D_{KL}(q \| m)$, যেখানে $m = \frac{p+q}{2}$। Bounded, symmetric. GAN-এ ব্যবহৃত।
- Wasserstein distance: ভিন্ন তত্ত্ব — distributions-এর support-এর "distance"। WGAN-এ ব্যবহৃত — gradient ভালো।
মূল উপলব্ধি: "KL = দূরত্ব" — এটি অর্ধ-সত্য। প্রকৃতপক্ষে KL একটি directional পরিমাপ — কে কাকে approximate করছে — সেটি গুরুত্বপূর্ণ। AI ডিজাইনে এই sophistication বুঝলে — আপনি GAN, VAE, RLHF-এর ভেতরের যুক্তি দেখতে পাবেন।
প্র ০৩ "GPT-4-এর perplexity ৩.৫" — এই সংখ্যা মানে কী? Cross-entropy-র সাথে সম্পর্ক? কেন language model-এর evaluation-এ এটিকেই standard ধরা হয়?
Perplexity ($PP$) — language modeling-এর প্রায় ১০০ বছরের পুরোনো (Shannon ১৯৫১) metric. এটি cross-entropy-র exponential — একটি intuitive interpretation দেয়।
সংজ্ঞা:
- Cross-entropy: $H(p,q) = -\frac{1}{N}\sum \log_2 q(x_i)$ — গড়ে কত bits প্রতি token.
- Perplexity: $PP = 2^{H(p,q)}$ (বা base-$e$ হলে $e^H$)।
- "Effective branching factor" — মডেল প্রতিটি step-এ কত options-এর মধ্যে সমান-সম্ভাব্য confused.
(১) "$PP = 3.5$" মানে কী?
- মডেল প্রতিটি token-এ গড়ে ৩.৫টি equally-likely option-এর মধ্যে confused.
- কম perplexity = বেশি confident, ভালো model.
- $PP = 1$ — perfect model (যা হয় না)।
- $PP = V$ (vocab size) — random guessing-এর সমান, worst.
(২) ঐতিহাসিক চিত্র:
- n-gram models (১৯৯০): Wikipedia perplexity ~১০০-২০০।
- LSTM (২০১৫): ~৬০-৮০।
- GPT-2 (২০১৯): ~১৭।
- GPT-3 (২০২০): ~৯।
- GPT-4 / Claude / Llama-3 (২০২৩-২৪): ~৩-৫ (small benchmarks-এ)।
- Human upper bound (Shannon ১৯৫০): English-এ ~১.৩ bits/character.
(৩) কেন standard?
- Direct optimization: Training loss = cross-entropy → perplexity তার exponential — তাই training-এ কী ঘটছে, evaluation-এ সরাসরি দেখায়।
- Interpretable: "৩.৫ options-এ confused" — সংখ্যা সরাসরি বোঝা যায়।
- Scale-invariant: Vocab size ভিন্ন হলেও পরিমাপের তুলনা করা যায়।
- No gold standard needed: কোনো human label দরকার নেই — শুধু text-এর likelihood.
(৪) Perplexity-এর সীমা:
- "Better perplexity ≠ better instruction-following." GPT-4 base-এর চেয়ে fine-tuned ChatGPT-এর perplexity বেশি — কিন্তু practical-এ ভালো।
- Tokenizer-নির্ভর — BPE vs SentencePiece-এ ভিন্ন numbers.
- Distribution shift-এ ভঙ্গুর — Wikipedia-তে train করা model code-এ বেশি perplexity.
- আধুনিক LLM evaluation-এ — MMLU, HellaSwag, ARC-এর মতো task-specific metrics বেশি ব্যবহৃত।
(৫) Bits Per Character (BPC): Character-level perplexity-র alternative — model size-এ tokenization-এর effect বাদ। OpenAI GPT-3 paper-এ এটি ব্যবহার।
মূল উপলব্ধি: Perplexity ১৯৫০-এর পরিমাপ আজও language model-এর "instinct level" দেখায়। কিন্তু ChatGPT-যুগে এটিই যথেষ্ট নয় — আজকের evaluation গভীর: reasoning, harmlessness, factuality. তবু training-এ আজও cross-entropy-ই objective.
প্র ০৪ আপনি একটি বাংলা spam-classifier তৈরি করছেন। ৯৫% email "ham" (ভালো), ৫% "spam"। Cross-entropy loss imbalanced — কী সমস্যা হবে, কীভাবে সমাধান?
Class imbalance — production ML-এর সর্বব্যাপী সমস্যা। বাংলায় spam detection, fraud detection, medical diagnosis — সবেই থাকে। সরল cross-entropy এতে ভঙ্গুর।
(১) সরল cross-entropy-র সমস্যা:
- Model সব email-কে "ham" predict করলেই ৯৫% accuracy — cross-entropy কম।
- Training-এ ham-এর gradient signal majority — spam underrepresented.
- Model "lazy" — minority class উপেক্ষা করে।
- Real-world cost asymmetric — spam miss করা বেশি ক্ষতিকর হতে পারে।
(২) সমাধান — ৬টি কৌশল:
-
Class weights (weighted cross-entropy):
- Loss-এ inverse frequency: $w_{\text{spam}} = 0.95/0.05 = 19$, $w_{\text{ham}} = 1$।
- PyTorch:
nn.CrossEntropyLoss(weight=torch.tensor([1, 19]))। - সরলতম, সাধারণত effective.
-
Focal loss (Lin et al. ২০১৭):
- $FL = -(1-p_t)^\gamma \log p_t$ — সহজ examples-এর contribution কমায়।
- Hard, misclassified examples-এ focus.
- Object detection (RetinaNet)-এ revolutionary.
-
Oversampling minority:
- SMOTE: synthetic minority examples.
- সাবধান — overfitting-এর risk.
-
Undersampling majority:
- সরল কিন্তু ডেটা harm — informational data হারানো।
-
Threshold tuning:
- Default ০.৫ না, validation-এ optimal threshold বের করুন।
- Precision-recall curve থেকে business cost balance.
-
Ensemble / Boosting:
- XGBoost, LightGBM-এ
scale_pos_weightbuilt-in. - Hard examples-এ bias দিয়ে শেখায়।
- XGBoost, LightGBM-এ
(৩) Metric নির্বাচন:
- Accuracy মিথ্যা ছবি দেয় — ৯৫% ham bias-এই ৯৫% accuracy.
- সঠিক: Precision, Recall, F1, ROC-AUC, PR-AUC।
- Spam-এ recall-এ জোর: "৯০% spam ধরছি" বনাম accuracy "৯৭%"।
- Confusion matrix বিশদ analysis.
(৪) Bangla-specific বিবেচনা:
- Bangla spam-এ code-mixing ("offer ৫০% off"!) — tokenizer carefully.
- BERT-Bangla, Bangla-BERT-Base — pretrained backbone.
- Training data — DataLab Bangladesh, IndicNLP-এর dataset.
- Edge case: "Eid-এ বিশাল offer" — religious term spam ও না-spam দু'টোতেই।
(৫) Production checklist:
- Class distribution log-করুন (training, validation, production)।
- Drift detection — distribution বদলালে retrain.
- Cost-sensitive evaluation: false positive vs false negative-এর business cost.
- Active learning — uncertain predictions human-এ পাঠান।
মূল উপলব্ধি: "Cross-entropy বুঝলেই ML জানা" — অর্ধসত্য। Real production-এ class imbalance, cost-sensitive learning, calibration — এসবই AI engineer-এর দক্ষতার আসল পরীক্ষা। গণিত বুঝলেন, এবার বাস্তবতার পরীক্ষা।
অনুশীলন
-
হিসাব করুন: একটি ৪-পাশি বিতরণ $p = [0.4, 0.3, 0.2, 0.1]$-এর entropy কত? Python-এ যাচাই করুন।
$H = -(0.4\log_2 0.4 + 0.3\log_2 0.3 + 0.2\log_2 0.2 + 0.1\log_2 0.1) \approx 1.846$ bits.
import numpy as np p = np.array([0.4, 0.3, 0.2, 0.1]) print(-np.sum(p * np.log2(p))) # 1.8464...৪-পাশি ভারসাম্যপূর্ণ ($0.25$ each) হলে entropy ছিল ২ bits — বর্তমান অসমতায় কম।
-
তুলনা করুন: True $p = [1, 0, 0]$, ৩টি মডেলের অনুমান:
- Model A: $[0.9, 0.05, 0.05]$
- Model B: $[0.6, 0.3, 0.1]$
- Model C: $[0.34, 0.33, 0.33]$ (random)
- Model A: $-\log_2(0.9) \approx 0.152$ bits — সেরা।
- Model B: $-\log_2(0.6) \approx 0.737$ bits.
- Model C: $-\log_2(0.34) \approx 1.556$ bits — random-এর কাছাকাছি।
True one-hot হলে cross-entropy = $-\log q[\text{correct class}]$। তাই correct class-এ যত high probability — তত কম loss.
-
চিন্তা করুন: ChatGPT-এর "perplexity" শব্দটি প্রায়ই উচ্চারিত হয়। এটি cross-entropy-র সাথে কীভাবে সম্পর্কিত?
প্র ০৩-এর উত্তরে বিস্তারিত আছে। সংক্ষেপে:
$PP = 2^{H(p,q)}$ (বা $e^H$ natural log হলে)। অর্থ: model প্রতি token-এ গড়ে কত equally-likely options-এর মধ্যে confused. কম PP = ভালো model. GPT-4-এর small benchmark-এ ~৩-৫।
আরও পড়ুন · ABCL TECH-এ আপনার পরবর্তী পদক্ষেপ
- পাঠ ২২ · অপ্টিমাইজেশন পরবর্তী পাঠ Cross-entropy-কে কে minimize করে? Gradient descent — optimization-এর গল্প।
- পাঠ ২০ · মডিউল ২ পর্যালোচনা আগের পাঠ Probability, distributions, Bayes — info theory-র ভিত্তি এখানে।
- পাঠ ১৯ · Bayes এই পাঠের সাথে সম্পর্কিত Bayes' theorem ও KL — Bayesian update-এর গাণিতিক জোড়া।
- সব AI Courses দেখুন ABCL TECH Python, ML, DL, NLP, CV, GenAI, RL, MLOps — সব AI কোর্স একসাথে।