Part ১৪
Visual Learning Resources (ছবিতে শেখার উৎস)
AI কীভাবে কাজ করে তা দেখানো দশটি interactive গাইড
দশটি visual ও interactive উৎস, যা আপনাকে ভাষা-মডেলের ভেতরটা দেখতে দেয়: Transformer Explainer, LLM Visualization, 3Blue1Brown, The Illustrated Transformer, TensorFlow Playground, attention variant-এর ভিজ্যুয়াল গাইড, mixture of experts-এর ভিজ্যুয়াল গাইড, LLM Inference Handbook, Neuronpedia এবং Embedding Atlas। প্রতিটি section বলে উৎসটি কী দেখায়, কয়েক মিনিটে কীভাবে ব্যবহার করবেন এবং কী যাচাই করবেন। প্রতিটির নিজস্ব diagram, হিসাবের উদাহরণ, সহজ ভাষার ব্যাখ্যা এবং practice task আছে।
১০টি section · ৩২টি source · তিনভাবে ব্যাখ্যা
01
Transformer Explainer: মডেল কীভাবে পরের token অনুমান করে
আপনার browser-এ চলা একটি আসল GPT-2। Token, embedding, attention আর sampling ঠিক যে ক্রমে ঘটে সেই ক্রমে দেখুন।
সরাসরি দেখো · ১টি পাতা
Transformer Explainerpoloclub.github.ioনতুন tab-এ খোলো ↗ একটি উদাহরণ বাছো বা prompt লেখো, Generate চাপো, তারপর একটি token-এ click করে দেখো সেটি মডেলের ভেতর দিয়ে কীভাবে যায়। পাতাটি তোমার browser-এ GPT-2 নামায়, তাই প্রথমবার load হতে সময় লাগতে পারে।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
পরের শব্দ অনুমান করো, তারপর explainer-এ মিলিয়ে দেখো
এটা কেন দরকার
ভাষা-মডেল সবসময় একটি প্রশ্নেরই উত্তর দেয়: পরের token কী? উত্তরটি একটি শব্দ নয়। এটি সম্ভাবনার একটি তালিকা। এই task-এ তুমি তালিকাটি দেখবে।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি সম্ভাবনার তালিকা চায়।
Prompt Finish this sentence. Do not write the sentence again. The cat sat on the Give me the 5 most likely next words. For each word, give your best guess of its percentage chance. The five percentages must add up to about 100%. Show a small table only.
তুমি দেখবে: শতকরা হারসহ পাঁচটি শব্দ। হারগুলোর যোগফল প্রায় ১০০%। একটি শব্দ স্পষ্টভাবে সবার আগে।
Example উত্তর
| Word | Chance | |---|---| | mat | 45% | | floor | 20% | | couch | 15% | | bed | 12% | | roof | 8% |
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatTransformer Explainer খোলো। The cat sat on the লিখে Generate চাপো। পরের token-এর সম্ভাবনার তালিকা দেখো।
তুমি দেখবে: GPT-2-এর আসল সম্ভাবনাসহ candidate token-এর তালিকা। সবার আগে সাধারণত পরিচিত জায়গা বা জিনিস থাকে, যেমন floor, bed বা couch। chat-এর উত্তরের সাথে কিছুটা ভিন্ন হতে পারে। সেটা ঠিক আছে।
ধাপ ৩
একই chatExplainer-এ temperature slider প্রথমে
0.2, তারপর2.0করো। প্রতিবার Generate চাপো। chat-এ জিজ্ঞাসা করো: Why does a high temperature give stranger words?তুমি দেখবে:
0.2-এ প্রায় প্রতিবার সবচেয়ে সম্ভাব্য শব্দ জেতে।2.0-এ অপ্রচলিত শব্দ আসে। chat-এর উত্তরে থাকবে যে বেশি temperature সম্ভাবনার তালিকাকে সমান করে দেয়।
এইমাত্র কী হলো
মডেল প্রতিটি token-এর জন্য সম্ভাবনার একটি তালিকা বানায়। তারপর একটি sampling setting একটি token বাছে। Temperature তালিকাটি কতটা সমান হবে তা ঠিক করে।
কাজ শেষ, যখন তুমি একই ধারণা দুই জায়গায় দেখলে: chat মডেলের অনুমান এবং GPT-2-এর আসল সংখ্যা।
নিজেকে যাচাই করোতুমি top-k 1 করলে। দুইবার generate করলে কি output বদলাবে?উত্তর দেখো
না। top-k = 1 হলে মডেল সবসময় সবচেয়ে সম্ভাব্য একটি token-ই বাছে। একে greedy decoding বলে। তাই প্রতিবার একই output আসে।
ভিডিও দেখো · ৪টি
E-2: LLM কী | LLM কীভাবে কাজ করে? | Prompt Engineering Full Course in Bangla | Afran Sarkar Afran Sarkarবাংলা
Transformers, the tech behind LLMs | Deep Learning Chapter 5 3Blue1Brown
[Demo Video] Transformer Explainer: Learning LLM Transformers with Interactive Visual Explanation Polo Club of Data Science @ Georgia Tech
Transformers Explained Visually: Learn How LLM Transformer Models Work Polo Club of Data Science @ Georgia Tech
02
LLM Visualization: GPT-র ভেতরে 3D ভ্রমণ
GPT-ধরনের মডেলের layer-এর ভেতর দিয়ে উড়ে যান। প্রতিটি matrix-এর আসল আকার দেখুন এবং একটি token-কে input থেকে output পর্যন্ত অনুসরণ করুন।
সরাসরি দেখো · ১টি পাতা
LLM Visualizationbbycroft.netনতুন tab-এ খোলো ↗ গাইডেড walkthrough শুরু করতে Continue চাপো। ওপরে মডেল বাছো: GPT-2 (small), nano-gpt, GPT-2 (XL) বা GPT-3। বড় করে দেখতে full-screen বোতাম ব্যবহার করো।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
একটি ছোট মডেলের ভেতরের সংখ্যা গুনে দেখো
এটা কেন দরকার
মডেল মানে অনেক সংখ্যার স্তূপ। একবার হাতে গুনলে parameter আর width শব্দ দুটি আর অস্পষ্ট থাকে না।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি পেজের আসল nano-GPT-র আকার ব্যবহার করে।
Prompt A tiny GPT model has these sizes: vocabulary 3, positions 11, width C = 48, 3 transformer blocks. Each block has: two layer norms (2 × 48 weights and 2 × 48 biases in total for both), one attention layer (a 48 × 144 matrix and 144 biases for Q, K, V; then a 48 × 48 matrix and 48 biases for the output), and one MLP (48 × 192 plus 192 biases, then 192 × 48 plus 48 biases). The output layer shares its weights with the token embedding. There is one final layer norm (2 × 48). Count the parameters. Show a table: token embedding, position embedding, one block, three blocks, final layer norm, total. Show the arithmetic.
তুমি দেখবে: একটি ছোট table। token embedding-এ ১৪৪টি parameter (৩ × ৪৮)। position embedding-এ ৫২৮টি (১১ × ৪৮)। পুরো মডেলের মোট প্রায় ৮৫,০০০।
Example উত্তর
| Part | Parameters | |---|---| | Token embedding 3 × 48 | 144 | | Position embedding 11 × 48 | 528 | | One block | 28,272 | | Three blocks | 84,816 | | Final layer norm | 96 | | Total | 85,584 |
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatএকটি desktop browser-এ bbycroft.net/llm খোলো। walkthrough শুরু করো। Embedding ধাপে token table আর position table-এর আকার খোঁজো।
তুমি দেখবে: token table-এ ৩টি সারি এবং position table-এ ১১টি সারি। প্রতিটি সারিতে ৪৮টি সংখ্যা। এটি তোমার গণনার সাথে মেলে।
ধাপ ৩
একই chatchat-এ জিজ্ঞাসা করো: If I change the width C from 48 to 96 and keep everything else, how many parameters does the model have now? Show the arithmetic.
তুমি দেখবে: প্রায় ৩,৩৭,০০০-এর কাছাকাছি একটি সংখ্যা। width দ্বিগুণ করলে parameter প্রায় ৪ গুণ হয়, কারণ বেশিরভাগ weight matrix C × C বা C × 4C আকারের।
এইমাত্র কী হলো
Parameter-এর বেশিরভাগই block-এর weight matrix-এ থাকে। width দ্বিগুণ করলে সংখ্যা প্রায় চার গুণ হয়।
কাজ শেষ, যখন তুমি হাতে একটি ছোট GPT-র parameter গুনলে এবং 3D ছবিতে আকারগুলো মিলিয়ে দেখলে।
নিজেকে যাচাই করোnano-GPT-র attention map কেন ১১ × ১১?উত্তর দেখো
১১টি position-এর প্রত্যেকে তার আগের position-গুলো দেখতে পারে। তাই map-এ প্রতিটি position-এর জন্য একটি সারি ও একটি স্তম্ভ থাকে। causal mask-এর কারণে উপরের ত্রিভুজ ফাঁকা।
ভিডিও দেখো · ৪টি
03
3Blue1Brown: animation-এ neural network আর transformer
সাতটি ছোট পাঠ। একটি neuron থেকে শুরু করে LLM-এর attention আর MLP layer পর্যন্ত।
সরাসরি দেখো · ১টি পাতা
3Blue1Brown: Neural networks3blue1brown.comনতুন tab-এ খোলো ↗ সিরিজের পাঠের তালিকা। But what is a neural network? দিয়ে শুরু করো। নিচের ভিডিওগুলো এই পাতাতেই পাঠগুলো চালায়।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
হাতে gradient descent চালাও, তারপর সেটি ভেঙে দেখো
এটা কেন দরকার
LLM-এর training হলো বিশাল আকারে gradient descent। একটি weight-এ তিন ধাপ চালাতে পারলে তুমি loop-টি বুঝে ফেলেছ।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি সঠিক সংখ্যাসহ তিন ধাপ চায়।
Prompt A model has one weight w. Its loss is (w - 3)^2 + 1. The slope of the loss is 2 * (w - 3). Start at w = 0. Use a learning rate of 0.3. Apply the rule w_new = w - 0.3 * slope. Do 3 steps. Show a table with the columns: step, slope, new w. Show the arithmetic.
তুমি দেখবে: তিন সারির একটি table। ১ম ধাপের পর weight ১.৮। ২য় ধাপের পর ২.৫২। ৩য় ধাপের পর ২.৮০৮।
Example উত্তর
| Step | Slope | New w | |---|---|---| | 1 | 2 × (0 − 3) = −6 | 0 − 0.3 × (−6) = 1.8 | | 2 | 2 × (1.8 − 3) = −2.4 | 1.8 + 0.72 = 2.52 | | 3 | 2 × (2.52 − 3) = −0.96 | 2.52 + 0.288 = 2.808 |
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatক্যালকুলেটরে ১ম ধাপ যাচাই করো:
0 − 0.3 × (2 × (0 − 3))। তারপর 3Blue1Brown-এর ২য় অধ্যায়ের প্রথম অর্ধেক দেখো এবং cost surface-এ ball গড়িয়ে নামার ছবিটি খোঁজো।তুমি দেখবে: ১.৮। chat-এর উত্তর মেলে। ভিডিও একই ধারণা অনেক dimension-এ দেখায়।
ধাপ ৩
একই chatএই prompt-টি একই chat-এ paste করে Enter চাপো। এতে ধাপের মাপ অতিরিক্ত বড়।
Prompt Same loss and same start, but now use a learning rate of 1.1. Do 3 steps. Then explain in two sentences why the loss does not go down.
তুমি দেখবে: weight তলা পেরিয়ে লাফিয়ে যায় এবং ধাপ বড় হতে থাকে: ৬.৬, তারপর −১.৩২, তারপর প্রায় ৮.১৮। loss কমছে না, বাড়ছে।
Example উত্তর
Step 1: w = 0 − 1.1 × (−6) = 6.6 Step 2: w = 6.6 − 1.1 × 7.2 = −1.32 Step 3: w = −1.32 − 1.1 × (−8.64) = 8.184 Each step jumps over the bottom and lands farther away. The step is too large, so the loop diverges.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
এইমাত্র কী হলো
Gradient descent একটি loop: ঢাল মাপো, নিচের দিকে এক ধাপ নামো। learning rate ধাপের মাপ ঠিক করে। ধাপ বেশি বড় হলে training ব্যর্থ হয়।
কাজ শেষ, যখন তুমি একটি weight-এর জন্য training loop চালালে এবং সেটিকে converge আর diverge করতে দেখলে।
নিজেকে যাচাই করোআসল LLM training প্রায়ই ছোট learning rate দিয়ে শুরু হয় এবং ধীরে ধীরে বাড়ে। কেন?উত্তর দেখো
শুরুতে weight এলোমেলো থাকে এবং ঢালগুলো এলোমেলো। বড় ধাপ weight-কে অনেক দূরে ছুঁড়ে ফেলতে পারে, যেমন উপরের শেষ ধাপে হলো। ছোট প্রথম ধাপ নিরাপদ।
w = 3-এ সবচেয়ে কম ধাপে পৌঁছায়। তার উত্তর হাতে মিলিয়ে দেখো।ভিডিও দেখো · ৮টি
মেশিন লার্নিং আসলে কী? | What is Machine Learning? (Bangla Explanation) Foyzul Karimবাংলা
হাতেকলমে পাইথন ডিপ লার্নিং: নিউরাল নেটওয়ার্কে ডাটা কিভাবে থাকে? Building Intelligent Systems with Rakib: AI-ML-NLPবাংলা
But what is a neural network? | Deep learning chapter 1 3Blue1Brown
Gradient descent, how neural networks learn | Deep Learning Chapter 2 3Blue1Brown
Backpropagation, intuitively | Deep Learning Chapter 3 3Blue1Brown
Transformers, the tech behind LLMs | Deep Learning Chapter 5 3Blue1Brown
Attention in transformers, step-by-step | Deep Learning Chapter 6 3Blue1Brown
How might LLMs store facts | Deep Learning Chapter 7 3Blue1Brown
04
The Illustrated Transformer: ছবিতে Q, K আর V
Jay Alammar-এর বিখ্যাত transformer ব্যাখ্যা। attention-এর প্রতিটি ধাপের জন্য একটি করে ছবি।
সরাসরি দেখো · ১টি পাতা
The Illustrated Transformerjalammar.github.ioনতুন tab-এ খোলো ↗ পুরো পোস্টটি সরাসরি। আগে self-attention অংশ পড়ো। frame-এর ভেতরে scroll করো, অথবা পুরো প্রস্থে দেখতে পোস্টটি নতুন tab-এ খোলো।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
দুটি token-এর attention হিসাব করো, তারপর জিজ্ঞাসা করো ভাগ করি কেন
এটা কেন দরকার
Attention হলো কয়েকটি গুণ আর একটি softmax। একবার নিজে করলে সূত্রটি আর জাদুর মতো লাগে না।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। সংখ্যাগুলো উপরের হিসাবের উদাহরণের মতোই।
Prompt Compute one step of scaled dot-product attention by hand. Query q = [1, 0]. Key 1 = [1, 0], Key 2 = [0, 1]. Value 1 = [1, 2], Value 2 = [3, 4]. The key size d_k is 2. Show: the scores q·k, the scaled scores (divide by sqrt(d_k)), the softmax weights, and the final output vector. Round to 3 decimals.
তুমি দেখবে: ওজন প্রায় ০.৬৭০ ও ০.৩৩০। ফল প্রায় [1.66, 2.66]।
Example উত্তর
Scores: 1 and 0. Scaled: 0.707 and 0. Softmax weights: 0.670 and 0.330. Output: 0.670 × [1, 2] + 0.330 × [3, 4] = [1.660, 2.660].
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatThe Illustrated Transformer খোলো। যে ধাপে score ৮ দিয়ে ভাগ হয়েছে সেটি খোঁজো। তারপর নিচের প্রশ্নটি একই chat-এ copy করো।
Prompt Why do we divide the scores by sqrt(d_k) before softmax? Answer in 3 short sentences. Use the case d_k = 64 as an example.
তুমি দেখবে: পোস্টে ৮ দিয়ে ভাগ করা হয়েছে। এটি ৬৪-র বর্গমূল। ৬৪ হলো base মডেলের key-এর আকার।
Example উত্তর
Dot products of long vectors grow with the vector size. For d_k = 64 the scores can be around eight times larger than for d_k = 1. Large scores push softmax to nearly 0 and 1, so the gradients become tiny. Dividing by 8 keeps the scores in a range where softmax still learns.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ৩
একই chatchat-কে জিজ্ঞাসা করো: In the sentence “The animal didn't cross the street because it was too tired”, which word does “it” attend to? What changes if we replace “tired” with “wide”?
তুমি দেখবে: প্রথম বাক্যে animal। দ্বিতীয় বাক্যে street। শেষ শব্দের অর্থ বদলালে it কিসের দিকে ইঙ্গিত করে তা বদলে যায়।
এইমাত্র কী হলো
Attention হলো মেলাও, স্বাভাবিক করো, মেশাও: Q-কে K-র সাথে মেলাও, score-কে ওজনে বদলাও, তারপর V vector-গুলো মেশাও।
কাজ শেষ, যখন তুমি হাতে একটি attention ধাপ হিসাব করলে এবং scale factor-এর কারণ যাচাই করলে।
নিজেকে যাচাই করোএকটি token-এর token 2-এর জন্য score খুব বেশি এবং token 1-এর জন্য খুব কম। তার output কেমন হবে?উত্তর দেখো
প্রায় token 2-এর value vector-এর সমান হবে। কারণ softmax token 2-কে ১-এর কাছাকাছি ওজন দেয়।
[0, 1] করো এবং chat-কে হিসাবটি আবার করতে বলো। আগে অনুমান করো ফল কোন value-র কাছাকাছি হবে।ভিডিও দেখো · ৪টি
Attention in transformers, step-by-step | Deep Learning Chapter 6 3Blue1Brown
A gentle visual intro to Transformer models Hugging Face
Learn how ChatGPT and DeepSeek models work: How Transformer LLMs Work [Free Course] Jay Alammar
The Illustrated Transformer: Jay Alammar's Classic, Read and Highlighted Standarity
05
TensorFlow Playground: একটি ছোট network train করো এবং ভেঙে দেখো
আপনার browser-এ একটি ছোট neural network। একবারে একটি setting বদলান এবং দেখুন শেখার উপর তার কী প্রভাব পড়ে।
সরাসরি দেখো · ১টি পাতা
TensorFlow Playgroundplayground.tensorflow.orgনতুন tab-এ খোলো ↗ শুধু X1 আর X2-সহ circle dataset তৈরি আছে। play চাপো, তারপর নিচের পরীক্ষাগুলো করো: squared feature যোগ করো, hidden layer যোগ করো, বা activation Linear করো।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
অনুমান করো, পরীক্ষা করো, ব্যাখ্যা করো: বৃত্তের জন্য কেন শুধু রেখা যথেষ্ট নয়
এটা কেন দরকার
পরীক্ষা চালানোর আগে ফল অনুমান করা একটি ভালো অভ্যাস। তখন ফল যেদিকেই যাক, তুমি তা থেকে শেখো।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি একটি অনুমান চায়।
Prompt A classifier can draw only one straight line. The data has two classes in 2D. Class A is a filled disc around the origin (radius up to 1.5). Class B is a ring around it (radius from 2.2 to 3.1). Can one straight line separate the classes using only the inputs x1 and x2? If not, name one extra feature that makes it possible and explain in two sentences why. Do not use more than 70 words.
তুমি দেখবে: উত্তরে থাকবে না, একটি সোজা রেখা class দুটিকে আলাদা করতে পারে না। সে X1² + X2²-এর মতো একটি feature (কেন্দ্র থেকে দূরত্ব) সুপারিশ করবে।
Example উত্তর
No. Every line leaves part of the ring on both sides of the disc. Add the feature x1² + x2², which is the squared distance from the centre. In that feature, class A has small values and class B has large values, so a single threshold separates them.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatplayground.tensorflow.org খোলো। circle dataset বাছো। শুধু X1 আর X2 চালু রাখো। সব hidden layer সরিয়ে দাও। play চাপো এবং ১০ সেকেন্ড অপেক্ষা করো। তারপর X1² ও X2² চালু করো।
তুমি দেখবে: শুধু X1, X2 থাকলে loss প্রায় ০.৫-এ থাকে এবং background ঘোলা থাকে। squared feature যোগ করলে loss প্রায় ০-তে নামে এবং বিন্দুগুলো পরিষ্কার আলাদা হয়।
ধাপ ৩
একই chatchat-এ ফিরে জিজ্ঞাসা করো: I set the activation to Linear and added three hidden layers. Will the circle be solved with only X1 and X2? Explain. তারপর playground-এ চেষ্টা করো।
তুমি দেখবে: chat বলবে না। অনেকগুলো linear layer মিলেও linear। playground-ও তা নিশ্চিত করে: সীমারেখা সোজাই থাকে।
এইমাত্র কী হলো
network শুধু সেই সীমারেখাই আঁকতে পারে যা তার feature আর activation অনুমতি দেয়। ভালো feature, অথবা hidden layer-সহ non-linear activation, এমন সমস্যা সমাধান করে যা রেখা পারে না।
কাজ শেষ, যখন তুমি অনুমান করলে, পরীক্ষা করলে এবং ফল ব্যাখ্যা করলে। মডেলের একটি ধারণা এভাবেই যাচাই করতে হয়।
নিজেকে যাচাই করোLinear activation-এর সাথে hidden layer যোগ করলে কেন লাভ হয় না?উত্তর দেখো
প্রতিটি linear layer শুধু গুণ আর যোগ করে। এমন ধাপের শৃঙ্খল একটি গুণ আর একটি যোগের সমান। তাই পুরো network linear থাকে এবং সোজা রেখাই আঁকে।
ভিডিও দেখো · ৪টি
হাতেকলমে পাইথন ডিপ লার্নিং: নিউরাল নেটওয়ার্কে ডাটা কিভাবে থাকে? Building Intelligent Systems with Rakib: AI-ML-NLPবাংলা
Deep Learning 101: Tensorflow Playground Prof. Ryan Ahmed
TensorFlow Playground Demo (Beginner Friendly) Byte Size ML
Neural Network Demonstration with TF Playground IIT Madras - B.S. Degree Programme
06
Attention Variants-এর ভিজ্যুয়াল গাইড: MHA, GQA, MLA, sliding window ও আরও
লম্বা input-এর জন্য আধুনিক LLM কীভাবে attention সস্তা করে, পাশাপাশি তুলনা।
সরাসরি দেখো · ২টি পাতা
LLM Architecture Gallery (Sebastian Raschka)sebastianraschka.comনতুন tab-এ খোলো ↗ একই লেখকের model card-এর একটি গ্যালারি। একটি মডেল কোন attention variant ব্যবহার করে তা দেখো এবং এই section-এর টেবিলের সাথে মেলাও।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
A Visual Guide to Attention Variants in Modern LLMsmagazine.sebastianraschka.comনতুন tab-এ খোলো ↗ এই section-এর article, তার সব diagram-সহ। প্রকাশক এটি অন্য সাইটের ভেতরে দেখাতে দেয় না, তাই নতুন tab-এ খোলো।
নতুন tab-এ খোলো ↗
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
লম্বা chat-এর KV cache-এর আকার হিসাব করো, তারপর দেখো GQA কী বাঁচায়
এটা কেন দরকার
লম্বা chat গতির চেয়ে memory-র কারণে বেশি আটকায়। KV cache তার একটি বড় কারণ। একটি সূত্রে তুমি এর আন্দাজ করতে পারো।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি Llama 3 8B-র মতো আকার ব্যবহার করে।
Prompt A model has 32 layers, 8 KV heads, and a head size of 128. It stores the KV cache in FP16 (2 bytes per number). Formula: bytes per token = 2 (K and V) × layers × kv_heads × head_size × bytes. 1. Compute the KV cache per token in KiB. 2. Compute the cache for a context of 131,072 tokens in GiB. Show the arithmetic.
তুমি দেখবে: প্রতি token-এ 128 KiB, আর ১,৩১,০৭২ token-এ প্রায় 16 GiB।
Example উত্তর
1. 2 × 32 × 8 × 128 × 2 = 131,072 bytes = 128 KiB per token. 2. 131,072 × 131,072 = 17,179,869,184 bytes = 16 GiB.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatএকই chat-এ জিজ্ঞাসা করো: Now the same model, but with 32 KV heads (standard multi-head attention). How big is the cache for 131,072 tokens? How many times bigger is it?
তুমি দেখবে: প্রায় 64 GiB। এটি ৪ গুণ বড়, কারণ KV head ৪ গুণ।
ধাপ ৩
একই chatarticle খোলো এবং GQA অংশটি খোঁজো। GQA কেন KV-cache traffic কমায় তার ব্যাখ্যার বাক্যটি দেখো।
তুমি দেখবে: article বলছে GQA কয়েকটি query head-কে একই key-value projection ভাগ করতে দেয়। এতে KV caching অনেক সস্তা হয়, মূলত memory কমার মাধ্যমে।
এইমাত্র কী হলো
KV cache বাড়ে layer × KV head × context-এর দৈর্ঘ্য অনুযায়ী। GQA মাঝের উৎপাদকটি কমায়। MLA প্রতি head-এ যা জমা হয় তা ছোট করে।
কাজ শেষ, যখন তুমি লম্বা context-এর KV cache-এর আকার হিসাব করলে এবং দেখলে কেন আধুনিক মডেল কম KV head ব্যবহার করে।
নিজেকে যাচাই করোএকটি মডেলে ৩২টি query head আর ৮টি KV head। প্রতিটি KV head-কে কয়টি query head ভাগ করে নেয়?উত্তর দেখো
৪টি। ৩২টি query head ৪টি করে ৮টি গ্রুপে ভাগ হয় এবং প্রতিটি গ্রুপ একটি K ও V পড়ে।
ভিডিও দেখো · ৩টি
07
Mixture of Experts-এর ভিজ্যুয়াল গাইড: router, expert আর load balancing
আজকের অনেক LLM কেন প্রতিটি token-এর জন্য মাত্র কয়েকটি expert ব্যবহার করে, এবং router-কে কীভাবে ন্যায্য রাখা হয়।
সরাসরি দেখো · ১টি পাতা
A Visual Guide to Mixture of Experts (MoE)newsletter.maartengrootendorst.comনতুন tab-এ খোলো ↗ ৫০টিরও বেশি diagram-সহ article। প্রকাশক এটি অন্য সাইটের ভেতরে দেখাতে দেয় না, তাই নতুন tab-এ খোলো। লেখকের নিজের ভিডিও সংস্করণ নিচের ভিডিও তালিকায় আছে।
নতুন tab-এ খোলো ↗
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
একটি MoE মডেলের মোট আকার আর সক্রিয় আকার হিসাব করো
এটা কেন দরকার
“8x7B”-এর মতো একটি নাম দুটি আলাদা সংখ্যা লুকিয়ে রাখে। memory আর খরচের আন্দাজ করতে দুটিই দরকার।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। সংখ্যাগুলো guide-এর Mixtral 8x7B উদাহরণের।
Prompt A mixture-of-experts model has 8 experts in each layer. Each expert (all layers together) has 5.6 billion parameters. The router picks 2 experts for each token. Ignore the shared parameters. 1. How many parameters must be loaded in memory (total)? 2. How many parameters are used for one token (active)? 3. If each parameter takes 2 bytes (FP16), how many GB of memory do the experts need? Show the arithmetic in a short list.
তুমি দেখবে: মোট ৪৪.৮B, সক্রিয় ১১.২B, আর expert-দের জন্য প্রায় ৮৯.৬ GB memory।
Example উত্তর
1. Total: 8 × 5.6B = 44.8B. 2. Active: 2 × 5.6B = 11.2B. 3. Memory: 44.8B × 2 bytes = 89.6 GB. (The real Mixtral has some shared parameters, so its totals are 46.7B and about 12.8B.)
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatguide-এর শেষ অংশ Active vs. Sparse Parameters with Mixtral 8x7B খোলো। তার সংখ্যার সাথে chat-এর উত্তর মেলাও।
তুমি দেখবে: guide বলছে প্রতিটি expert ৫.৬B, ৭B নয়। load করতে হয় ৪৬.৭B, ব্যবহার হয় প্রায় ১২.৮B। chat-এর উত্তর একটু কম, কারণ সে shared parameter ধরেনি।
ধাপ ৩
একই chatএকই chat-এ জিজ্ঞাসা করো: A dense 13B model and this MoE model have almost the same speed per token. Why does the MoE model still need about 3.5 times more GPU memory?
তুমি দেখবে: সব expert load করতে হয়, কারণ পরের token-এর জন্য router যেকোনোটি বাছতে পারে। memory নির্ভর করে মোট আকারের উপর, আর গতি নির্ভর করে সক্রিয় আকারের উপর।
এইমাত্র কী হলো
Memory চলে মোট parameter অনুযায়ী। প্রতি token-এর গতি চলে সক্রিয় parameter অনুযায়ী।
কাজ শেষ, যখন তুমি একটি আসল MoE উদাহরণে মোট আকার আর সক্রিয় আকার আলাদা করলে এবং guide-এর সাথে মেলালে।
নিজেকে যাচাই করোএকটি router ৬৪টির মধ্যে সেরা ২টি expert বাছে। এক token-এর জন্য expert parameter-এর কত অংশ চলে?উত্তর দেখো
৬৪টির ২টি, অর্থাৎ ১/৩২, প্রায় ৩%। বাকি ৬২টি expert load করা থাকে, কিন্তু ওই token-এর জন্য বসে থাকে।
ভিডিও দেখো · ৩টি
A Visual Guide to Mixture of Experts (MoE) in LLMs Maarten Grootendorst
Mixture of Experts (MoE), Visually Explained Jia-Bin Huang
Mixture of Experts (MoE) Explained: Bigger AI Models Without More Compute | LLM Efficiency AIChronicles_JK
08
LLM Inference Handbook: prompt থেকে প্রথম token এবং তার পরে
Tokenize, schedule, prefill ও decode, আর serving দ্রুত ও সস্তা করার কৌশল।
সরাসরি দেখো · ১টি পাতা
LLM Inference Handbookhandbook.modular.comনতুন tab-এ খোলো ↗ handbook-এর প্রথম পাতা। একটি prompt-কে Tokenizer, Scheduling, Prefill ও Output-এর মধ্য দিয়ে অনুসরণ করতে LLM Inference Visualizer-এ play চাপো।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
একটি request-এর সময় মাপো, তারপর দুটি গতি-বাড়ানো কৌশল পরখ করো
এটা কেন দরকার
গতি বাড়াতে হলে জানতে হয় কোন সংখ্যাটি তুমি বাড়াচ্ছ। এই task তোমাকে সূত্র আর তুলনা করার দুটি ক্ষেত্র দেয়।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি diagram-এর end-to-end সূত্র ব্যবহার করে।
Prompt An LLM request has a time to first token (TTFT) of 400 ms and a time per output token (TPOT) of 25 ms. The answer has 200 tokens. Formula: end-to-end time = TTFT + (tokens - 1) x TPOT. 1. Compute the end-to-end time in ms and in seconds. 2. Compute how many tokens per second the user sees after the first token. Show the arithmetic.
তুমি দেখবে: 5,375 ms, প্রায় ৫.৪ সেকেন্ড। decode-এর সময় ব্যবহারকারী প্রতি সেকেন্ডে প্রায় ৪০টি token দেখে।
Example উত্তর
1. 400 + 199 x 25 = 400 + 4,975 = 5,375 ms, which is 5.38 s. 2. 1000 / 25 = 40 tokens per second.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatএকই chat-এ জিজ্ঞাসা করো: Prefix caching cuts TTFT from 400 ms to 100 ms. Speculative decoding instead cuts TPOT from 25 ms to 15 ms. Compute the new end-to-end time for each, and say which one helps more for a 200-token answer.
তুমি দেখবে: Prefix caching দিলে 5,075 ms। Speculative decoding দিলে 3,385 ms। লম্বা উত্তরের জন্য TPOT কমানো বেশি কাজে লাগে।
Example উত্তর
Prefix caching: 100 + 199 x 25 = 5,075 ms. Speculative decoding: 400 + 199 x 15 = 3,385 ms. For 200 tokens, speculative decoding saves more because the decode phase is most of the time.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ৩
একই chathandbook-এর পাতা খুলে visualizer-এ play চাপো। chat-এ জিজ্ঞাসা করো: For a chatbot with 4,000-token system prompts and 20-token answers, which optimization is more useful, prefix caching or speculative decoding? Why?
তুমি দেখবে: Prefix caching। prompt লম্বা আর উত্তর ছোট, তাই অপেক্ষার বেশিরভাগ prefill (TTFT)। shared system prompt cache করলে তার বেশিরভাগ বাদ যায়।
এইমাত্র কী হলো
যে মাপকাঠিতে কষ্ট হচ্ছে সেই অনুযায়ী কৌশল বাছো: লম্বা prompt-এ TTFT, লম্বা উত্তরে TPOT।
কাজ শেষ, যখন তুমি একটি request-এর সময় হিসাব করলে এবং একই সূত্রে দুটি গতি-বাড়ানো কৌশল তুলনা করলে।
নিজেকে যাচাই করোএকজন ব্যবহারকারী বলছেন প্রথম শব্দ আসতে ৬ সেকেন্ড লাগে, কিন্তু বাকিটা দ্রুত আসে। কোন ধাপ ধীর, এবং প্রথমে কোন কৌশল চেষ্টা করবে?উত্তর দেখো
ধীর অংশ TTFT: queue আর prefill। বারবার আসা prompt-এর শুরুর জন্য prefix caching চেষ্টা করো এবং queue-র সময় ও batching setting দেখো।
ভিডিও দেখো · ৩টি
Efficient LLM Serving with vLLM (Ray x AI21 Meetup) AI21 Labs
An Intermediate Guide to Inference Using vLLM Red Hat Open
vLLM Deep Dive: PagedAttention, Continuous Batching & 24x Throughput Latest AI Technolgy Breakdowns
09
Neuronpedia: মডেলের ভেতরের feature-এর অর্থ দেখুন
sparse autoencoder ভাষা-মডেলের ভেতরে যে feature খুঁজে পায়, তা দেখা, পরীক্ষা করা ও steer করার একটি open platform।
সরাসরি দেখো · ২টি পাতা
Neuronpedia: a real feature (Gemma 2 2B, layer 20, feature 1000)neuronpedia.orgনতুন tab-এ খোলো ↗ স্বয়ংক্রিয়ভাবে লেখা লেবেলটি বলছে elements related to React component structure and rendering methods। সবচেয়ে বেশি সক্রিয় করা লেখাগুলো পড়ে লেবেলটি যাচাই করো। তারপর test box-এ নিজের লেখা দাও।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
Neuronpedia homeneuronpedia.orgনতুন tab-এ খোলো ↗ পুরো সাইট। text দিয়ে feature খুঁজতে Search, আর মডেল লেখার সময় কোনো feature বাড়াতে-কমাতে Steer ব্যবহার করো।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
একটি feature-এর লেবেল তার উদাহরণ দিয়ে যাচাই করো
এটা কেন দরকার
Feature-এর লেবেল স্বয়ংক্রিয়ভাবে লেখা হয়। ভালো engineer উদাহরণ পড়ে ঠিক করেন লেবেলটি সঠিক কি না। এই task তোমাকে সেই অভ্যাস দেয়।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি দুটি neuron দিয়ে superposition-এর ধারণা চায়।
Prompt A layer has only 2 neurons, but it must store 3 different ideas (A, B, C). The ideas rarely appear at the same time. Explain in under 80 words how the layer can still store all three. Use the word "direction".
তুমি দেখবে: উত্তরে থাকবে যে তিনটি ধারণা ২D সমতলে তিনটি দিক হিসেবে রাখা যায়, যেমন ১২০ ডিগ্রি দূরত্বে। এটি কাজ করে কারণ ধারণাগুলো প্রায় একসাথে আসে না।
Example উত্তর
Each idea gets its own direction in the 2D plane, for example three arrows 120 degrees apart. When idea A appears, the two neurons move along A's arrow. Because the ideas rarely appear together, the layer can tell them apart by direction. This is superposition: more ideas than neurons.
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatneuronpedia.org খোলো। Search ব্যবহার করে একটি সহজ ধারণার feature খোঁজো, যেমন ocean। দুটি feature খোলো। প্রতিটির ব্যাখ্যা আর top উদাহরণ পড়ো। তারপর নিচের দুর্বল উদাহরণগুলো দেখো।
তুমি দেখবে: প্রতিটি feature-এর বেশিরভাগ top উদাহরণ ব্যাখ্যার সাথে মেলে। কিছু দুর্বল উদাহরণে দ্বিতীয় অর্থ বা শব্দের ভিন্ন ব্যবহার দেখা যায়।
ধাপ ৩
একই chatchat-এ ফিরে জিজ্ঞাসা করো: Give me 3 reasons why an automatically written label for an SAE feature can mislead a reader.
তুমি দেখবে: তিনটি কারণ, যেমন: লেবেল হয়তো শুধু top উদাহরণ থেকে এসেছে; feature হয়তো দ্বিতীয়, দুর্বল অর্থেও সক্রিয়; লেবেল একটি মডেলের অনুমান, যা ভুল হতে পারে।
এইমাত্র কী হলো
Feature-এর লেবেল একটি অনুমান। তুমি তা যাচাই করো উদাহরণ, দুর্বল সক্রিয়তা আর steering দিয়ে।
কাজ শেষ, যখন তুমি superposition ব্যাখ্যা করলে এবং আসল feature পাতা তাদের লেবেলের সাথে মিলিয়ে দেখলে।
নিজেকে যাচাই করোSparse autoencoder কেন সক্রিয় feature-এর সংখ্যার উপর শাস্তি দেয়?উত্তর দেখো
শাস্তিটি autoencoder-কে প্রতিটি activation অল্প কয়েকটি feature দিয়ে ব্যাখ্যা করতে বাধ্য করে। এতে প্রতিটি feature একটি স্পষ্ট ধরনের প্রতিনিধি হয়, যা পড়া সহজ।
ভিডিও দেখো · ৩টি
10
Apple-এর Embedding Atlas: আপনার embedding-এর ভিজ্যুয়াল মানচিত্র
text, ছবি বা শব্দের একটি table-কে মানচিত্রে বদলান। cluster, প্রতিবেশী আর outlier দেখুন, এবং linked chart দিয়ে filter করুন।
সরাসরি দেখো · ২টি পাতা
Embedding Atlas: IEEE VIS publications exampleapple.github.ioনতুন tab-এ খোলো ↗ প্রায় ৩,৭৫০টি প্রকাশনার একটি সর্বজনীন example dataset-এ চলমান Embedding Atlas। মানচিত্রটি conference অনুযায়ী রঙ করো, pan ও zoom করো, একটি বিন্দুতে click করে পড়ো, এবং linked chart দিয়ে filter করো। মানচিত্রের জন্য WebGPU-সহ browser লাগে, যেমন সাম্প্রতিক Chrome, Edge বা Safari।
Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
Embedding Atlas: load your own fileapple.github.ioনতুন tab-এ খোলো ↗ এখানে একটি CSV, JSONL বা Parquet ফাইল ফেলো। পাতাটি বলে data তোমার browser-এই থাকে। নিচের practice task-এর
tickets.csvফাইলটি ব্যবহার করতে পারো।Click করলে পাতাটি তার নিজের সাইট থেকে load হয়। বড় screen-এ সবচেয়ে ভালো কাজ করে।
অনুশীলন · ১টি task
যেকোনো free AI chat খোলো: ChatGPT · Claude · Gemini
অনুশীলন কীভাবে করবে
- নতুন chat মানে একদম নতুন কথোপকথন, আগের কোনো history নেই। ChatGPT, Claude বা Gemini-তে New chat-এ click করো। সাধারণত এটা উপরে বাঁ দিকে থাকে।
- একই chat মানে: যে chat খোলা আছে, সেখানেই লিখতে থাকো। আগে যা পাঠিয়েছ, AI তা মনে রাখে।
- Prompt ব্যবহার করতে: Copy-তে click করো, chat-এর message box-এ click করো, paste করো (Ctrl+V, বা phone-এ চেপে ধরে রাখো), তারপর Enter চাপো।
- AI-এর উত্তর প্রতিবার একটু আলাদা হয়। তোমার উত্তর example-এর সাথে হুবহু মিলতে হবে না। একই ধারণা আছে কি না, সেটা দেখো।
- শুধু বানানো data ব্যবহার করো। নিজের বা অন্যের ব্যক্তিগত তথ্য chat-এ paste করবে না।
Task ১
৪০টি বার্তার মানচিত্র আঁকো এবং যে বার্তাটি মেলে না সেটি খুঁজে বের করো
এটা কেন দরকার
টেবিলে যা লুকিয়ে থাকে, মানচিত্রে তা দেখা যায়। তুমি একটি ছোট dataset বানাবে, যাতে ইচ্ছে করে একটি ভুল রাখা আছে। তারপর মানচিত্রে সেই ভুল খুঁজবে।
ধাপ ১
নতুন chatএই prompt-টি copy করে একটি AI chat-এ paste করো এবং Enter চাপো। এটি একটি ছোট CSV বানায়। CSV-র লেখা
tickets.csvনামের একটি ফাইলে copy করো।Prompt Create a CSV with the header: message,topic Write 40 short customer-support messages (8 to 15 words each) from an online shop. Use exactly 4 topics, 10 rows each: billing, login, shipping, returns. Then add one extra row at the end: a message about baking a chocolate cake, with the topic "unknown". Output only the CSV in a code block.
তুমি দেখবে:
message,topicheader-সহ ৪০ সারির একটি CSV: ৪টি topic-এর প্রতিটিতে ১০টি সারি। রান্না নিয়ে একটি সারি কোনো topic-এর সাথে মেলে না।Example উত্তর
message,topic I was charged twice for the same order this month,billing My password reset email never arrives in my inbox,login The parcel has been stuck at the depot for five days,shipping How do I send back a jacket that is too small,returns ... What is the best way to bake a moist chocolate cake,unknown
তোমার উত্তরের ভাষা একটু আলাদা হবে।
ধাপ ২
একই chatEmbedding Atlas খোলো, Load Data বাছো এবং
tickets.csvনির্বাচন করো। জিজ্ঞাসা করলে text হিসেবেmessagecolumn বাছো। মানচিত্রের জন্য অপেক্ষা করো। রঙের সেটিং থাকলে বিন্দুগুলোtopicঅনুযায়ী রঙ করো।তুমি দেখবে: ৪টি স্পষ্ট দল (billing, login, shipping, returns) সহ একটি মানচিত্র। একটি একলা বিন্দু, অর্থাৎ কেকের বার্তাটি, সব দল থেকে দূরে বসে আছে।
ধাপ ৩
একই chatএকলা বিন্দুর উপর hover করে তার লেখা পড়ো। login দলের একটি বিন্দু বেছে তার নিকটতম প্রতিবেশীদের দেখো। chat-এ জিজ্ঞাসা করো: The map shows 4 groups and one lone point. Name 3 things I should check before I say the lone point is a labelling error.
তুমি দেখবে: login বিন্দুর প্রতিবেশীরা অন্য login বার্তা। chat পরামর্শ দেবে: সারিটি পড়ো, topic-এর লেবেল দেখো, আর অন্য embedding model বা অন্য UMAP সেটিং দিয়ে পরীক্ষা করো।
এইমাত্র কী হলো
একই ধরনের সারি cluster বানায়। একটি একলা বিন্দু হলো এমন সারি, যা পড়ে দেখা দরকার। তার উপর সিদ্ধান্ত নেওয়ার আগে সারি আর সেটিং যাচাই করো।
কাজ শেষ, যখন তুমি একটি ছোট dataset বানালে, তার মানচিত্র আঁকলে এবং ইচ্ছে করে রাখা একটি outlier খুঁজে পেলে।
নিজেকে যাচাই করোমানচিত্রে দুটি cluster দূরে দূরে আছে। তুমি কি বলতে পারো যে এরা, অর্ধেক দূরত্বের আরেক জোড়া cluster-এর চেয়ে দ্বিগুণ আলাদা?উত্তর দেখো
না। UMAP কাছের বিন্দু কাছে রাখে, কিন্তু লম্বা দূরত্ব নির্ভরযোগ্যভাবে রাখে না। দূরের দূরত্বকে শুধু মোটামুটি ইঙ্গিত ভাবো।
ভিডিও দেখো · ২টি
তথ্যসূত্র
Sources
সব citation মূল paper (arXiv), vendor-এর docs (OpenAI, Anthropic, Google) বা official team blog-এ যায়। প্রতিটি পাতা খুলে citation-এর তথ্য যাচাই করা হয়েছে।
- [1]Cho et al., "Transformer Explainer: Learning LLM Transformers with Interactive Visual Explanation and Experimentation" (arXiv, 2024)
- [2]Polo Club of Data Science, Georgia Tech, "Transformer Explainer" (interactive page)
- [3]Vaswani et al., "Attention Is All You Need" (NeurIPS 2017)
- [4]Brendan Bycroft, "LLM Visualization" (interactive 3D page)
- [5]Brendan Bycroft, "llm-viz" (source code of the LLM Visualization page)
- [6]Andrej Karpathy, "nanoGPT" (minimal GPT training and inference code)
- [7]3Blue1Brown, "Neural networks" (video lesson series, Deep Learning chapters 1–7)
- [8]Jay Alammar, "The Illustrated Transformer" (blog post, 2018)
- [9]Bahdanau, Cho, Bengio, "Neural Machine Translation by Jointly Learning to Align and Translate" (ICLR 2015)
- [10]Smilkov, Carter et al., "TensorFlow Playground" (interactive page)
- [11]Smilkov, Carter, Sculley, Viégas, Wattenberg, "Direct-Manipulation Visualization of Deep Networks" (ICML Workshop on Visualization for Deep Learning, 2016)
- [12]Sebastian Raschka, "A Visual Guide to Attention Variants in Modern LLMs" (Ahead of AI, 22 March 2026)
- [13]Ainslie et al., "GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints" (EMNLP 2023)
- [14]DeepSeek-AI, "DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language Model" (2024)
- [15]Beltagy, Peters, Cohan, "Longformer: The Long-Document Transformer" (2020)
- [16]Maarten Grootendorst, "A Visual Guide to Mixture of Experts (MoE)" (Exploring Language Models, 7 October 2024)
- [17]Shazeer et al., "Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer" (ICLR 2017)
- [18]Fedus, Zoph, Shazeer, "Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity" (JMLR 2022)
- [19]Jiang et al., "Mixtral of Experts" (Mistral AI, 2024)
- [20]"LLM Inference Handbook", chapter "What is LLM inference?" (handbook.modular.com)
- [21]Kwon et al., "Efficient Memory Management for Large Language Model Serving with PagedAttention" (SOSP 2023)
- [22]Leviathan, Kalman, Matias, "Fast Inference from Transformers via Speculative Decoding" (ICML 2023)
- [23]Neuronpedia, "An open source interpretability platform" (neuronpedia.org)
- [24]Cunningham et al., "Sparse Autoencoders Find Highly Interpretable Features in Language Models" (2023)
- [25]Lieberum et al., "Gemma Scope: Open Sparse Autoencoders Everywhere All At Once on Gemma 2" (Google DeepMind, 2024)
- [26]Bricken et al., "Towards Monosemanticity: Decomposing Language Models With Dictionary Learning" (Anthropic, Transformer Circuits Thread, 2023)
- [27]Lindsey et al., "On the Biology of a Large Language Model" (Anthropic, Transformer Circuits Thread, 2025)
- [28]Apple, "Embedding Atlas" (documentation and live demo)
- [29]Ren, Hohman, Lin et al., "Embedding Atlas: Low-Friction, Interactive Embedding Visualization" (2025)
- [30]McInnes, Healy, Melville, "UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction" (2018)
- [31]Su et al., "RoFormer: Enhanced Transformer with Rotary Position Embedding" (2021)
- [32]Brown et al., "Language Models are Few-Shot Learners" (NeurIPS 2020)