কম্পিউটার কেবল সংখ্যা বোঝে, কিন্তু ভাষা হল শব্দ ও অর্থের এক জটিল জাল। বড় ভাষা মডেল (LLM) যাতে মানুষের ভাষা প্রক্রিয়া করতে পারে, তার জন্য প্রতিটি টোকেনকে এমন একটি সংখ্যাসমষ্টিতে রূপান্তর করতে হয় যা তার অর্থ, সম্পর্ক ও প্রসঙ্গ ধারণ করে। এই রূপান্তরকেই বলা হয় এম্বেডিং – একধরনের ঘন ভেক্টর প্রতিনিধিত্ব, যা মডেলের বোধগম্যতার ভিত্তি তৈরি করে। এখানে আমরা এম্বেডিং কী, কেন LLM-এ এটি অপরিহার্য এবং কীভাবে এটি কাজ করে তা গভীরভাবে দেখব।
এম্বেডিং কী
এম্বেডিং হল কোনো বিচ্ছিন্ন প্রতীককে (শব্দ, সাবওয়ার্ড, বা পুরো বাক্য) একটি নিম্নমাত্রিক, অবিচ্ছিন্ন ভেক্টর স্পেসে ম্যাপ করার কৌশল। সহজভাবে বললে, প্রতিটি টোকেন একটি নির্দিষ্ট দৈর্ঘ্যের ফ্লোটিং-পয়েন্ট সংখ্যার অ্যারে হিসেবে প্রকাশিত হয়। উদাহরণস্বরূপ, “রাজা” শব্দটির এম্বেডিং হতে পারে [0.21, -0.45, 0.73, …, 0.09] – যেখানে অ্যারেটির দৈর্ঘ্য (ডাইমেনশন) সাধারণত ৩৮৪, ৭৬৮ বা ১৫৩৬-এর মতো হয়।
এই ভেক্টরগুলো এমনভাবে তৈরি করা হয় যাতে অর্থগতভাবে কাছাকাছি শব্দগুলো ভেক্টর স্পেসেও কাছাকাছি থাকে। ফলে এম্বেডিং কেবল একটি সংখ্যাসূচক প্রকাশ নয়; এটি শব্দার্থ, সম্পর্ক, এমনকি সাংস্কৃতিক প্রসঙ্গ পর্যন্ত ধারণ করে, যা LLM-কে “বোঝার” ক্ষমতা দেয়।
কেন এলএলএম-এ এম্বেডিং অপরিহার্য
ট্রান্সফরমার আর্কিটেকচারে বিলিয়ন প্যারামিটারের সত্ত্বেও মডেল ইনপুট হিসেবে সরাসরি টেক্সট নিতে পারে না। সংখ্যায় রূপান্তরের সময় এম্বেডিং তিনটি গুরুত্বপূর্ণ ভূমিকা পালন করে:
- অর্থ সংরক্ষণ: একই ধরনের শব্দ (যেমন “সুখী” ও “আনন্দিত”) কাছাকাছি ভেক্টর পায়, যা মডেলকে সাদৃশ্য ও প্রতিস্থাপনযোগ্যতা বুঝতে সাহায্য করে।
- সিনট্যাক্টিক ও সিম্যান্টিক সম্পর্ক: ভেক্টর অপারেশনের মাধ্যমে সম্পর্ক প্রকাশিত হয় – যেমন “রাজা - পুরুষ + নারী” করলে “রানি”-র কাছাকাছি ভেক্টর পাওয়া যায়।
- প্রসঙ্গ সংবেদনশীলতা: আধুনিক LLM-এ এম্বেডিং স্থির নয়; একই শব্দ বাক্যভেদে ভিন্ন এম্বেডিং পায় (যেমন “কলা” ফল না কলা বিদ্যা বোঝাচ্ছে), যা মডেলকে দ্ব্যর্থতা নিরসনে সাহায্য করে।
এম্বেডিং ছাড়া কোনো মডেলই শব্দের পারস্পরিক নির্ভরশীলতা ধরতে পারত না, ফলে জেনারেটেড টেক্সট অর্থহীন বা যান্ত্রিক হত।
কীভাবে এম্বেডিং কাজ করে
প্রক্রিয়াটি কয়েকটি ধাপে সম্পন্ন হয়:
- টোকেনাইজেশন: প্রথমে কাঁচা টেক্সটকে টোকেনে ভাঙা হয় – শব্দ, সাবওয়ার্ড বা বাইট-পেয়ার এনকোডিং ইউনিটে।
- এম্বেডিং লুকআপ: প্রতিটি টোকেন আইডির জন্য একটি প্রশিক্ষিত এম্বেডিং ম্যাট্রিক্স থেকে সংশ্লিষ্ট ভেক্টরটি নেওয়া হয়। শুরুর দিকে এই ভেক্টরগুলো এলোমেলো থাকে, পরে ট্রেনিং-এর মাধ্যমে শেখা হয়।
- পজিশনাল এনকোডিং যোগ: ট্রান্সফরমার মডেলের জন্য টোকেনের অবস্থান বোঝাতে পজিশনাল ভেক্টর যোগ করা হয়, কারণ এম্বেডিং নিজে অবস্থান ধারণ করে না।
- প্রসঙ্গ-সচেতন রূপান্তর: মডেলের স্তরগুলোতে সেলফ-অ্যাটেনশন মেকানিজমের মাধ্যমে টোকেন এম্বেডিংগুলো পরস্পরের সাথে মিথস্ক্রিয়া করে এবং ধীরে ধীরে প্রসঙ্গ-নির্ভর প্রতিনিধিত্বে বিবর্তিত হয়।
ভেক্টরগুলোর মধ্যে সম্পর্ক বোঝার অন্যতম জনপ্রিয় মাপকাঠি হল কসাইন সাদৃশ্য (cosine similarity), যা দুটি ভেক্টরের মধ্যবর্তী কোণের ভিত্তিতে ০ থেকে ১-এর মধ্যে একটি মান দেয়। মডেল প্রশিক্ষণের সময় এমনভাবে এম্বেডিং শেখে যাতে সম্পর্কিত টোকেনের কসাইন সাদৃশ্য বেশি হয়।
বাস্তব উদাহরণ ও পাইথন কোড
একটি বহুভাষিক সেন্টেন্স ট্রান্সফরমার ব্যবহার করে এম্বেডিং তৈরি ও সাদৃশ্য পরিমাপের সংক্ষিপ্ত উদাহরণ:
from sentence_transformers import SentenceTransformer, util
# মডেল লোড (একাধিক ভাষা সমর্থিত)
model = SentenceTransformer('paraphrase-multilingual-MiniLM-L12-v2')
# শব্দ ও বাক্যের এম্বেডিং
words = ['বিড়াল', 'কুকুর', 'মহাকাশ', 'ল্যাপটপ']
embeddings = model.encode(words)
# কসাইন সাদৃশ্য ম্যাট্রিক্স
sim = util.cos_sim(embeddings, embeddings)
print(sim)
কোডটি প্রথমে একটি প্রাক-প্রশিক্ষিত মডেল লোড করে, চারটি শব্দের জন্য ৩৮৪-মাত্রার এম্বেডিং বের করে এবং তাদের পারস্পরিক কসাইন সাদৃশ্য প্রিন্ট করে। আউটপুটে দেখা যাবে “বিড়াল” ও “কুকুর”-এর মধ্যে সাদৃশ্য বেশি (~০.৭) আর “মহাকাশ” ও “ল্যাপটপ”-এর মধ্যে কম – অর্থাৎ ভেক্টর স্পেস সঠিকভাবেই পারিভাষিক সম্পর্ক ফুটিয়ে তোলে।
সংক্ষেপ ও গুরুত্বপূর্ণ ধারণা
এম্বেডিং হল LLM-এর ভাষাবোধের স্তম্ভস্বরূপ। এটি টোকেনকে অর্থপূর্ণ, উচ্চমাত্রিক সংখ্যায় রূপ দিয়ে মডেলকে সাদৃশ্য, সম্পর্ক ও প্রসঙ্গ আয়ত্ত করতে সাহায্য করে।
মনে রাখার মতো মূল পয়েন্ট:
- এম্বেডিং হল ঘন ভেক্টর, যার ডাইমেনশন স্থির (যেমন ৩৮৪, ৭৬৮)।
- ভালো এম্বেডিং অর্থগতভাবে সম্পর্কিত টোকেনকে কাছাকাছি রাখে।
- আধুনিক LLM-এ এম্বেডিং প্রসঙ্গ-সাপেক্ষ, অর্থাৎ একই টোকেন বাক্যভেদে ভিন্ন ভেক্টর পেতে পারে।
- কসাইন সাদৃশ্য দ্রুত ও কার্যকরভাবে ভেক্টর স্পেসে দূরত্ব মাপার মাধ্যম।
- এম্বেডিং ম্যাট্রিক্স ট্রেনিং-এর মাধ্যমে ডেটা থেকে শেখা হয়, তৈরি করার সময় কোন হাতেকলমে নিয়ম লাগে না।
শব্দকে সংখ্যায় রূপ দেওয়ার এই যন্ত্রই LLM-কে নিছক পরিসংখ্যানিক তোতাপাখি না হয়ে অর্থবহ কথোপকথনে সক্ষম করে তোলে।