সেমান্টিক এম্বেডিং, যেমন Word2Vec এবং GloVe, আসলে ভাষা মডেলিং এর দিকে প্রথম পদক্ষেপ - এমন মডেল তৈরি করা যা কোনোভাবে ভাষার প্রকৃতি বোঝে (বা প্রতিনিধিত্ব করে)।
ভাষা মডেলিংয়ের মূল ধারণা হলো, মডেলগুলোকে লেবেলবিহীন ডেটাসেটে প্রশিক্ষণ দেওয়া, যা একটি অসুপারভাইজড পদ্ধতিতে করা হয়। এটি গুরুত্বপূর্ণ কারণ আমাদের কাছে প্রচুর পরিমাণে লেবেলবিহীন টেক্সট উপলব্ধ থাকে, যেখানে লেবেলযুক্ত টেক্সটের পরিমাণ সবসময় সীমিত থাকবে, কারণ লেবেলিংয়ে যে পরিমাণ প্রচেষ্টা ব্যয় করা যায় তা সীমিত। বেশিরভাগ ক্ষেত্রে, আমরা এমন ভাষা মডেল তৈরি করতে পারি যা অনুপস্থিত শব্দগুলো পূর্বানুমান করতে পারে টেক্সটে, কারণ টেক্সটে একটি র্যান্ডম শব্দ মাস্ক করা এবং সেটিকে প্রশিক্ষণের নমুনা হিসেবে ব্যবহার করা সহজ।
আমাদের পূর্ববর্তী উদাহরণগুলোতে, আমরা প্রি-ট্রেইনড সেমান্টিক এম্বেডিং ব্যবহার করেছি, কিন্তু এটি দেখার মতো আকর্ষণীয় যে কীভাবে এই এম্বেডিংগুলো প্রশিক্ষণ দেওয়া যায়। এখানে কয়েকটি সম্ভাব্য ধারণা রয়েছে যা ব্যবহার করা যেতে পারে:
- N-Gram ভাষা মডেলিং, যেখানে আমরা N পূর্ববর্তী টোকেন দেখে একটি টোকেন পূর্বানুমান করি (N-গ্রাম)।
-
কন্টিনিউয়াস ব্যাগ-অফ-ওয়ার্ডস (CBoW), যেখানে আমরা একটি টোকেন সিকোয়েন্স
$W_{-N}$ , ...,$W_N$ এর মধ্যে$W_0$ টোকেন পূর্বানুমান করি। -
স্কিপ-গ্রাম, যেখানে আমরা মধ্যবর্তী টোকেন
$W_0$ থেকে পার্শ্ববর্তী টোকেনগুলোর সেট {$W_{-N},\dots, W_{-1}, W_1,\dots, W_N$} পূর্বানুমান করি।
ছবি এই পেপার থেকে
নিম্নলিখিত নোটবুকগুলোতে আপনার শেখা চালিয়ে যান:
পূর্ববর্তী পাঠে আমরা দেখেছি যে শব্দ এম্বেডিংগুলো জাদুর মতো কাজ করে! এখন আমরা জানি যে শব্দ এম্বেডিং প্রশিক্ষণ দেওয়া খুব জটিল কাজ নয়, এবং প্রয়োজন হলে আমরা ডোমেইন-নির্দিষ্ট টেক্সটের জন্য আমাদের নিজস্ব শব্দ এম্বেডিং প্রশিক্ষণ দিতে সক্ষম।
- PyTorch এর অফিসিয়াল ভাষা মডেলিং টিউটোরিয়াল।
- TensorFlow এর অফিসিয়াল Word2Vec মডেল প্রশিক্ষণের টিউটোরিয়াল।
- gensim ফ্রেমওয়ার্ক ব্যবহার করে কয়েকটি লাইনে সবচেয়ে সাধারণ এম্বেডিং প্রশিক্ষণের পদ্ধতি এই ডকুমেন্টেশনে বর্ণিত।
ল্যাবে, আমরা আপনাকে এই পাঠের কোড পরিবর্তন করে CBoW এর পরিবর্তে স্কিপ-গ্রাম মডেল প্রশিক্ষণ দেওয়ার চ্যালেঞ্জ দিচ্ছি। বিস্তারিত পড়ুন
