অ্যাটেনশন মেকানিজম (Attention Mechanism)
বইয়ের পাতায় হাইলাইট করা
যখন আপনি কোনো পাঠ্যবই বা টেক্সটবুক পড়েন, তখন কিন্তু প্রতিটি শব্দকে সমান গুরুত্ব দেন না। আপনি শুধু গুরুত্বপূর্ণ লাইনগুলো হাইলাইট বা মার্ক করেন। আপনার চোখ "এবং", "ও", "এর"-এর মতো সাধারণ শব্দগুলো এড়িয়ে গিয়ে সরাসরি মূল বিষয়গুলোর দিকেই মনোযোগ বা 'অ্যাটেনশন' দেয়। কোনো একটা প্যারাগ্রাফ থেকে প্রশ্নের উত্তর খোঁজার সময় আপনি শুধু দরকারি বাক্যগুলোর দিকে ফোকাস করেন আর বাকি সব অপ্রয়োজনীয় কথা মাথা থেকে একেবারে ঝেড়ে ফেলেন।
এআইয়ের ক্ষেত্রে অ্যাটেনশন (Attention) ঠিক এই কাজটাই করে। কোনো কিছু আউটপুট দেওয়ার সময় ইনপুটের ঠিক কোন শব্দ বা অংশের দিকে কতটা ফোকাস করতে হবে, এআই মডেলকে সেটা ডাইনামিকভাবে নির্ধারণ করতে সাহায্য করে এই অ্যাটেনশন মেকানিজম।
অ্যাটেনশন যে সমস্যার সমাধান করে
অ্যাটেনশন আবিষ্কারের আগে ল্যাঙ্গুয়েজ মডেলগুলোতে একটা বড় বটলনেক (bottleneck) বা আটকে থাকার সমস্যা ছিল। ধরুন, ইংরেজি ভাষার একটা বড় বাক্যকে বাংলায় অনুবাদ করতে হবে। আগের দিনের নিয়মটা ছিল এরকম:
- পুরো ইংরেজি বাক্যটা আগে শুরু থেকে শেষ পর্যন্ত পড়ো এবং সব তথ্য একত্র করে নির্দিষ্ট সাইজের একটা মাত্র ভেক্টরে (যাকে "কনটেক্সট বা context" বলে) ঢুকিয়ে ফেলো।
- তারপর ওই একটা মাত্র ভেক্টর থেকে পুরো বাংলা অনুবাদটা তৈরি করো।
কিন্তু ব্যাপারটা দেখুন, ৫০ শব্দের একটা বিশাল বাক্যকে জোর করে একটা ছোট ভেক্টরে ঢোকানো মানে হলো — আস্ত একটা বই পড়ে সেটাকে মাত্র এক বাক্যে বোঝানোর চেষ্টা করা! এতে করে অনেক দরকারি তথ্য হারিয়ে যায়। যে কারণে বড় বাক্যগুলোর অনুবাদের ক্ষেত্রে আগের মডেলগুলো একেবারে জঘন্য ফলাফল দিত।
অ্যাটেনশন ঠিক এখানেই জাদুর মতো কাজ করে। এটি মডেলকে প্রতিটি অনুবাদ করার সময় বা আউটপুট দেওয়ার সময় পুরো ইনপুট বাক্যটির দিকে আবার পেছন ফিরে তাকানোর সুযোগ করে দেয়। এর ফলে মডেল বুঝতে পারে যে, বর্তমানে যে শব্দটি সে বানাচ্ছে, তার জন্য ইনপুটের ঠিক কোন শব্দটি সবচেয়ে বেশি দরকারি।
অ্যাটেনশন কীভাবে কাজ করে: কোয়েরি, কি (Key), এবং ভ্যালু (Value)
অ্যাটেনশনকে আপনি একটা লাইব্রেরিতে বই খোঁজার সাথে তুলনা করতে পারেন:
- কোয়েরি (Q) বা Query — এটি হলো আপনার করা প্রশ্ন: "আমার ঠিক এখন কোন তথ্যটা দরকার?"
- কি (K) বা Key — এটি হলো প্রতিটি বইয়ের গায়ে লাগানো লেবেল বা ট্যাগ: "আমার ভেতরে কী তথ্য আছে?"
- ভ্যালু (V) বা Value — এটি হলো ওই বইয়ের ভেতরের আসল লেখা বা কনটেন্ট।
পুরো প্রক্রিয়াটা এভাবেই কাজ করে:
- শুরুতেই প্রতিটি কি (Key)-এর সাথে আপনার কোয়েরি (Query)-টা মিলিয়ে দেখা হয় যে, কোনটা কতটা প্রাসঙ্গিক (relevance score)।
- এরপর সেই স্কোরগুলোকে ওয়েট বা weight-এ পরিণত করা হয় (সফটম্যাক্স বা softmax ব্যবহার করে — যাতে সবগুলোর যোগফল ১ হয়)।
- সবশেষে সেই ভ্যালুগুলোর ওয়েট দিয়ে গুণ করে যোগফল (weighted sum) বের করা হয়।
গণিতের ভাষায় একে বলা হয়: Attention(Q, K, V) = softmax(QK^T / sqrt(d)) * V
এখানে sqrt(d) শুধু একটা ছোট স্কেলিং ফ্যাক্টর, যার কাজ হলো সংখ্যাগুলোকে খুব বড় হয়ে যাওয়া থেকে বাঁচিয়ে স্থিতিশীল বা স্টেবল রাখা। ব্যস, এতটুকুই! এটাই হলো অ্যাটেনশনের পুরো ফর্মুলা বা সূত্র। দেখতে একেবারেই সাধারণ, কিন্তু এটিই আর্টিফিশিয়াল ইন্টেলিজেন্সের ইতিহাস পালটে দিয়েছে।
সেলফ-অ্যাটেনশন (Self-Attention): শব্দগুলো যখন নিজেরা কথা বলে
সেলফ-অ্যাটেনশন-এর ক্ষেত্রে একটা পুরো বাক্য তার নিজের দিকেই মনোযোগ বা অ্যাটেনশন দেয়। বাক্যের প্রতিটি শব্দ অন্য শব্দগুলোকে প্রশ্ন করে: "আমাকে ভালোভাবে বোঝার জন্য এই বাক্যের আর কোন কোন শব্দ দরকারি?"
উদাহরণস্বরূপ ধরুন: "the animal didn't cross the street because it was too tired."
এখানে "it" বা "সেটা" বলতে কাকে বোঝানো হচ্ছে? প্রাণীটিকে (animal) নাকি রাস্তাকে (street)? মডেল এখানে সেলফ-অ্যাটেনশনের মাধ্যমে বের করে ফেলে যে "it"-এর সাথে "animal"-এর সবচেয়ে বেশি মিল বা সম্পর্ক আছে (কারণ প্রাণীই তো ক্লান্ত হতে পারে, রাস্তা তো আর ক্লান্ত হয় না)। তাই সে এই দুই শব্দের মধ্যে সবচেয়ে বেশি অ্যাটেনশন স্কোর দেয়।
সহজ ভাষায় অ্যাটেনশন মেকানিজম
অ্যাটেনশন কীভাবে পুরো পৃথিবীকে বদলে দিল
২০১৪ সালের আগে, সিকোয়েন্স মডেলগুলো (যেমন: অনুবাদ করার মডেল) যেকোনো লেখাকে বাম থেকে ডানে একটা একটা করে শব্দ হিসেবে পড়ত এবং একটা হিডেন স্টেটের মাধ্যমে সব তথ্য মনে রাখত। এর ফলে বড় কোনো বাক্য দিলে সে তালগোল পাকিয়ে ফেলত — কারণ, বাক্যের ৫০ নম্বর শব্দে পৌঁছাতে পৌঁছাতে সে ১ নম্বর শব্দটা প্রায় ভুলেই যেত!
অ্যাটেনশন এসে এই ঝামেলার মুলে কুঠারাঘাত করল। এটি বাক্যের যেকোনো দুই জায়গার মধ্যে সরাসরি সংযোগ তৈরি করার সুযোগ করে দিল। ৫০ নম্বর শব্দ এখন যত দূরেই থাক না কেন, সে সরাসরি ১ নম্বর শব্দের দিকে মনোযোগ দিতে পারে। শুধু এই একটা অভাবনীয় ধারণার কারণেই আজকের দিনে নিচে দেওয়া এই ম্যাজিকগুলো সম্ভব হয়েছে:
- মেশিন ট্রান্সলেশন (Machine translation), যা বিশাল বড় বাক্যকেও নিখুঁত অনুবাদ করতে পারে।
- বড় কোনো আর্টিকেল বা টেক্সট পড়ে তার থেকে সঠিক মূলভাব বা সারসংক্ষেপ (Text summarization) তৈরি করা।
- বিশাল বড় কোনো ডকুমেন্ট পড়ে তার মধ্যে থেকে সঠিক উত্তরটা (Question answering) খুঁজে বের করে দেওয়া।
- এবং সবশেষে — ট্রান্সফরমার (Transformer) আর্কিটেকচার, যা আজকের দিনের সব বড় বড় এলএলএম-কে (LLMs) পরিচালিত করছে।
ছোট কুইজ
পড়া চালিয়ে যান