BERT (language model) (BN)
BERT (Bidirectional Encoder Representations from Transformers, ট্রান্সফর্মার থেকে দ্বিমুখী এনকোডার রিপ্রেজেন্টেশন) — এটি একটি বৃহৎ ভাষা মডেল (LLM) যা প্রাকৃতিক ভাষা বোঝার জন্য তৈরি, Google-এর গবেষকদের দ্বারা নির্মিত এবং ২০১৮ সালে উপস্থাপিত। BERT প্রাকৃতিক ভাষা প্রক্রিয়াকরণে (NLP) একটি নতুন যুগের সূচনা করেছিল, বিস্তৃত পরিসরের কাজে অভূতপূর্ব কর্মক্ষমতা প্রদর্শন করে এবং শিল্পে মানদণ্ড হিসেবে «pre-train & fine-tune» প্যারাডাইম প্রতিষ্ঠা করে।
BERT-এর মূল উদ্ভাবন হলো এর গভীরভাবে দ্বিমুখী আর্কিটেকচার, যা মডেলটিকে নেটওয়ার্কের সমস্ত স্তরে একটি শব্দের বাম ও ডান উভয় দিকের প্রসঙ্গ একসাথে বিবেচনা করতে সক্ষম করে। এটি একটি নতুন pre-training কাজের মাধ্যমে অর্জিত হয় — Masked Language Modeling (MLM)।
নামকরণ ও কার্যনীতি
সংক্ষিপ্ত নাম BERT-এর পূর্ণরূপ হলো Bidirectional Encoder Representations from Transformers।
- Bidirectional (দ্বিমুখী): মডেলটির মূল বৈশিষ্ট্য নির্দেশ করে — একটি শব্দের প্রসঙ্গ উভয় দিক থেকে (বাম থেকে ডানে এবং ডান থেকে বামে) একসাথে প্রক্রিয়া করার ক্ষমতা। একমুখী মডেলগুলির (যেমন GPT) বিপরীতে, যেগুলি একটি শব্দ প্রক্রিয়া করার সময় কেবল পূর্ববর্তী প্রসঙ্গ দেখে, BERT সম্পূর্ণ ক্রমটি দেখে, যা এটিকে একটি শব্দের অর্থের আরও গভীর ও সঠিক উপলব্ধি তৈরি করতে সক্ষম করে।
- Encoder (কোডার): নির্দেশ করে যে BERT শুধুমাত্র Transformer আর্কিটেকচারের কোডিং অংশ ব্যবহার করে। এনকোডারের কাজ হলো ইনপুট টেক্সট ক্রম পড়া এবং প্রতিটি token-এর জন্য একটি সমৃদ্ধ প্রাসঙ্গিক রিপ্রেজেন্টেশন (ভেক্টর) তৈরি করা। BERT ডিকোডার মডেলগুলির মতো মুক্ত আকারে টেক্সট জেনারেট করার জন্য ডিজাইন করা হয়নি।
- Representations (রিপ্রেজেন্টেশন): মডেলটি শব্দ ও বাক্যের জন্য উচ্চমানের সংখ্যাগত রিপ্রেজেন্টেশন (ভেক্টর বা embedding) তৈরি করতে প্রশিক্ষিত হয়, যা পরবর্তীতে বিভিন্ন NLP কাজ সমাধানে ব্যবহার করা যায়।
- from Transformers: নির্দেশ করে যে মডেলটির আর্কিটেকচার সম্পূর্ণরূপে Transformer-এর উপর ভিত্তি করে নির্মিত।
সৃষ্টির ইতিহাস
BERT-এর বিকাশ NLP-তে বেশ কয়েকটি গুরুত্বপূর্ণ অগ্রগতির ফলস্বরূপ:
- প্রাসঙ্গিক embedding: Word2vec ও GloVe-এর মতো মডেলগুলি প্রসঙ্গ বিবেচনা না করে শব্দের জন্য স্থির ভেক্টর তৈরি করত। ELMo মডেল (২০১৮) দ্বিমুখী LSTM নেটওয়ার্ক ব্যবহার করে প্রাসঙ্গিক-নির্ভর রিপ্রেজেন্টেশন তৈরি করে একটি পদক্ষেপ এগিয়ে গিয়েছিল, তবে এই দ্বিমুখীতা ছিল «উপরিভাগের» (দুটি একমুখী মডেলের সংযোজন)।
- Transfer Learning ও GPT: ২০১৮ সালের মাঝামাঝি সময়ে OpenAI GPT মডেল উপস্থাপন করে, যা অচিহ্নিত ডেটায় একটি বড় transformer মডেলের pre-training এবং পরবর্তীতে নির্দিষ্ট কাজে fine-tuning-এর কার্যকারিতা প্রদর্শন করেছিল। তবে GPT কঠোরভাবে একমুখী (বাম থেকে ডান) ছিল, যা সম্পূর্ণ প্রসঙ্গ বোঝার প্রয়োজনীয় কাজগুলিতে এর সক্ষমতা সীমিত করে রেখেছিল।
এই সীমাবদ্ধতাগুলি উপলব্ধি করে, Jacob Devlin-এর নেতৃত্বে Google-এর গবেষকরা BERT তৈরি করেন, যাতে একটি সত্যিকারের গভীরভাবে দ্বিমুখী মডেল তৈরি করা যায়। BERT সম্পর্কিত গবেষণাপত্রটি ২০১৮ সালের অক্টোবরে arXiv-এ প্রকাশিত হয়েছিল এবং কোড ও pre-trained মডেলগুলি উন্মুক্ত অ্যাক্সেসে প্রকাশিত হয়েছিল, যা বৈজ্ঞানিক সম্প্রদায়ে বিস্ফোরক আগ্রহ তৈরি করেছিল। BERT NLP-এর ১১টি মূল benchmark-এ রেকর্ড ভেঙেছিল, যার মধ্যে GLUE ও SQuAD অন্তর্ভুক্ত, এবং NLP-এর জন্য «ImageNet মুহূর্ত» হিসেবে আখ্যায়িত হয়েছিল, কারণ একটি সার্বজনীন মডেল সহজেই বহু কাজের জন্য অভিযোজিত হতে পারত।
আর্কিটেকচার
BERT সম্পূর্ণরূপে Transformer আর্কিটেকচারের কোডিং অংশ (encoder) এর উপর ভিত্তি করে। এটি একে অপরের উপরে স্তুপ করা বেশ কয়েকটি অভিন্ন স্তর নিয়ে গঠিত। দুটি প্রধান সংস্করণ রয়েছে:
- BERT-Base: ১২টি স্তর, ১২টি attention head, hidden state-এর আকার ৭৬৮, মোট প্যারামিটার সংখ্যা ~১১০ মিলিয়ন।
- BERT-Large: ২৪টি স্তর, ১৬টি attention head, hidden state-এর আকার ১০২৪, মোট প্যারামিটার সংখ্যা ~৩৪০ মিলিয়ন।
প্রতিটি স্তরে দুটি প্রধান সাব-লেয়ার রয়েছে:
- মাল্টি-হেড সেলফ-অ্যাটেনশন মেকানিজম (Multi-Head Self-Attention): ইনপুট ক্রমের প্রতিটি token-কে অন্য সমস্ত token-এর দিকে «মনোযোগ দিতে» এবং নিজের প্রাসঙ্গিক অর্থ নির্ধারণের জন্য তাদের গুরুত্ব ওজন করতে সক্ষম করে।
- পূর্ণ-সংযুক্ত নিউরাল নেটওয়ার্ক (Feed-Forward Network): প্রতিটি token-এ আলাদাভাবে প্রয়োগ করা হয়।
ইনপুট ডেটা
সঠিকভাবে কাজ করার জন্য BERT-এর ইনপুট ডেটার বিশেষ ফর্ম্যাটিং প্রয়োজন। ইনপুটে সরবরাহ করা token ক্রম সর্বদা বিশেষ token `[CLS]` (classification) দিয়ে শুরু হয়, যা সম্পূর্ণ টেক্সটের ক্লাসিফিকেশন কাজে ব্যবহৃত হয়। যদি একজোড়া বাক্য ইনপুট হিসেবে দেওয়া হয় (যেমন প্রশ্নোত্তর সিস্টেমের কাজে), সেগুলি `[SEP]` (separator) token দ্বারা বিভক্ত হয়।
ইনপুটে প্রতিটি token-এর চূড়ান্ত রিপ্রেজেন্টেশন তিনটি embedding-এর যোগফল:
- Token embedding: vocabulary থেকে নির্দিষ্ট token-এর সাথে সংশ্লিষ্ট ভেক্টর (BERT WordPiece tokenization ব্যবহার করে)।
- Segment embedding: নির্দেশ করে token-টি কোন বাক্যে (প্রথম বা দ্বিতীয়) অন্তর্গত।
- Positional embedding: ক্রমে token-এর অবস্থান নির্দেশ করে, কারণ Transformer আর্কিটেকচার নিজে থেকে শব্দের ক্রম বিবেচনা করে না।
Pre-training কাজ
গভীর দ্বিমুখীতা নিশ্চিত করতে BERT একসাথে দুটি অনন্য কাজে প্রশিক্ষিত হয়।
Masked Language Modeling (MLM)
এটি BERT-এর মূল উদ্ভাবন। স্ট্যান্ডার্ড ভাষা মডেলের মতো পরবর্তী শব্দ পূর্বাভাস করার পরিবর্তে, BERT বাক্যে এলোমেলোভাবে «মাস্ক করা» শব্দগুলি পূর্বাভাস করে। প্রক্রিয়াটি নিম্নরূপ:
- ইনপুট ক্রম থেকে এলোমেলোভাবে ১৫% token নির্বাচন করা হয়।
- এই ১৫%-এর মধ্যে:
- ৮০% বিশেষ token `[MASK]` দ্বারা প্রতিস্থাপিত হয়।
- ১০% vocabulary থেকে একটি এলোমেলো token দ্বারা প্রতিস্থাপিত হয়।
- ১০% অপরিবর্তিত থাকে।
- মডেলের কাজ হলো চারপাশের (বাম ও ডান) প্রসঙ্গের ভিত্তিতে এই ১৫% token-এর মূল মান পূর্বাভাস করা।
এই পদ্ধতি মডেলটিকে শব্দের মধ্যে গভীর শব্দার্থিক ও বাক্যগত সম্পর্ক শিখতে বাধ্য করে এবং এটিকে সত্যিকারের দ্বিমুখী হতে সক্ষম করে।
Next Sentence Prediction (NSP)
এই কাজটি BERT-কে বাক্যের মধ্যে সম্পর্ক বুঝতে শেখানোর জন্য ডিজাইন করা হয়েছিল, যা প্রশ্নোত্তর সিস্টেম বা টেক্সটুয়াল ইম্পলিকেশন বিশ্লেষণ (NLI) এর মতো কাজের জন্য অত্যন্ত গুরুত্বপূর্ণ। মডেলকে একজোড়া বাক্য (A ও B) দেওয়া হয় এবং এটিকে পূর্বাভাস করতে হয় যে B বাক্যটি A বাক্যের যৌক্তিক ধারাবাহিকতা কিনা।
- ৫০% ক্ষেত্রে B প্রকৃতপক্ষে মূল টেক্সটের পরবর্তী বাক্য।
- ৫০% ক্ষেত্রে B corpus-এর অন্য কোথাও থেকে নেওয়া একটি এলোমেলো বাক্য।
পরবর্তীতে গবেষণা (যেমন RoBERTa মডেলে) দেখিয়েছে যে NSP কাজটি MLM-এর চেয়ে কম গুরুত্বপূর্ণ এবং আরও কার্যকর প্রশিক্ষণ পদ্ধতির পক্ষে এটি ছেড়ে দেওয়া সম্ভব, তবে মূল BERT-এ এটি একটি গুরুত্বপূর্ণ ভূমিকা পালন করেছিল।
প্রয়োগ এবং Fine-Tuning
BERT-এর শক্তি Transfer Learning প্যারাডাইমে নিহিত। বিশাল corpus-এ (Wikipedia + BooksCorpus) ব্যাপক ও ব্যয়বহুল pre-training-এর পরে, pre-trained মডেলটি একটি নির্দিষ্ট ব্যবহারিক কাজ সমাধানের জন্য সহজে ও দ্রুত fine-tune করা যায়।
Fine-tuning প্রক্রিয়া সাধারণত নিম্নরূপ: 1. Pre-trained BERT আর্কিটেকচারে একটি ছোট, অপ্রশিক্ষিত কাজ-নির্দিষ্ট স্তর যুক্ত করা হয় (যেমন sentiment analysis-এর জন্য একটি ক্লাসিফায়ার)। 2. সম্পূর্ণ মডেলটি (BERT-এর weights এবং নতুন স্তর সহ) ওই নির্দিষ্ট কাজের জন্য একটি ছোট, লেবেলযুক্ত dataset-এ প্রশিক্ষিত হয়।
BERT যেসব কাজের জন্য অভিযোজিত হয় তার উদাহরণ:
- টেক্সট ক্লাসিফিকেশন (sentiment analysis, স্প্যাম ফিল্টার): `[CLS]` token-এর আউটপুটে একটি ক্লাসিফায়ার যুক্ত করা হয়।
- প্রশ্নোত্তর সিস্টেম (যেমন SQuAD): মডেল প্রদত্ত টেক্সটে উত্তরের শুরু ও শেষ token পূর্বাভাস করতে শেখে।
- নামযুক্ত সত্তা শনাক্তকরণ (NER): প্রতিটি token-এর আউটপুটে একটি ক্লাসিফায়ার যুক্ত করা হয়, যা নির্ধারণ করে token-টি কোনো নাম, সংস্থা, তারিখ ইত্যাদির অংশ কিনা।
রূপভেদ ও উদ্ভূত মডেল
BERT-এর সাফল্য এর ধারণার উপর ভিত্তি করে একটি সম্পূর্ণ মডেল পরিবারের উদ্ভব ঘটিয়েছে:
- RoBERTa (Facebook AI থেকে): «দৃঢ়ভাবে অপ্টিমাইজড BERT»। এটি একটি নতুন আর্কিটেকচার নয়, বরং BERT-এর আরও সতর্কতাপূর্ণ ও দীর্ঘ প্রশিক্ষণের ফলাফল: আরও বেশি ডেটায়, NSP কাজ ছাড়া এবং dynamic masking সহ। RoBERTa দেখিয়েছে যে মূল BERT «কম প্রশিক্ষিত» ছিল এবং সমস্ত প্রধান benchmark-এ এটিকে ছাড়িয়ে গেছে।
- DistilBERT (Hugging Face থেকে): Knowledge Distillation কৌশল ব্যবহার করে তৈরি BERT-এর একটি হ্রাসকৃত সংস্করণ। DistilBERT ৪০% ছোট, ৬০% দ্রুত এবং BERT-এর ৯৭% কর্মক্ষমতা বজায় রাখে, যা এটিকে প্রোডাকশনে এবং সীমিত রিসোর্সের ডিভাইসে ব্যবহারের জন্য আদর্শ করে তোলে।
- ALBERT (A Lite BERT, Google থেকে): প্যারামিটারের সংখ্যা কমানোর জন্য অপ্টিমাইজড সংস্করণ। দুটি মূল কৌশল ব্যবহার করে: embedding factorization এবং cross-layer parameter sharing। এটি কম প্যারামিটার সহ অনেক বড় মডেল তৈরি করতে সক্ষম করে।
- mBERT (Multilingual BERT): একসাথে ১০৪টি ভাষায় pre-trained BERT-এর একটি সংস্করণ। ক্রস-লিঙ্গুয়াল জ্ঞান স্থানান্তরের অসাধারণ ক্ষমতা প্রদর্শন করেছে।
- ডোমেন-নির্দিষ্ট মডেল: নির্দিষ্ট ক্ষেত্রের ডেটায় fine-tuned অনেক মডেল, যেমন BioBERT (বায়োমেডিসিন), SciBERT (বৈজ্ঞানিক টেক্সট) এবং FinBERT (অর্থসংস্থান)।
- ModernBERT (২০২৪-২০২৫): Answer.AI ও LightOn কোম্পানির BERT-সদৃশ মডেলের নতুন প্রজন্ম, যাতে আধুনিক আর্কিটেকচারাল উন্নতি যেমন RoPE (Rotary Position Embeddings) এবং দীর্ঘতর context (৮১৯২ token পর্যন্ত) সমর্থন অন্তর্ভুক্ত রয়েছে, এবং একই সাথে BERT-এর মৌলিক নীতিগুলি বজায় রাখা হয়েছে।
অন্যান্য মডেলের সাথে তুলনা
| মডেল | নির্মাতা | আর্কিটেকচার | প্রসঙ্গের দিক | মূল কাজ |
|---|---|---|---|---|
| BERT | Encoder | দ্বিমুখী | টেক্সট বোঝা, ক্লাসিফিকেশন, নিষ্কাশন | |
| GPT | OpenAI | Decoder | একমুখী (বাম থেকে ডানে) | টেক্সট জেনারেশন, ক্রম অব্যাহত রাখা |
| XLNet | Google / CMU | Autoregressive (permutation-ভিত্তিক) | দ্বিমুখী (তত্ত্বগতভাবে) | টেক্সট বোঝা (MLM-এর বিকল্প) |
| T5 | Encoder-Decoder | দ্বিমুখী (encoder) + একমুখী (decoder) | সার্বজনীন «টেক্সট-থেকে-টেক্সট» রূপান্তর |
প্রভাব
BERT NLP-তে একটি প্রকৃত বিপ্লব ঘটিয়েছে এবং পরবর্তী অনেক উন্নয়নের ভিত্তি স্থাপন করেছে:
- «pre-training + fine-tuning» প্যারাডাইমকে NLP-এর প্রভাবশালী পদ্ধতি হিসেবে প্রতিষ্ঠিত করেছে।
- ভাষা বোঝার জন্য গভীর দ্বিমুখী প্রসঙ্গের গুরুত্ব প্রমাণ করেছে।
- প্রবেশের বাধা কমিয়েছে উচ্চ-কর্মক্ষমতার NLP সিস্টেম তৈরিতে, কারণ গবেষক ও ডেভেলপারদের আর প্রতিটি কাজের জন্য স্ক্র্যাচ থেকে জটিল আর্কিটেকচার তৈরি করতে হতো না।
- Google Search-এ সংহত করা হয়েছিল, যা সার্চ ইঞ্জিনের সমগ্র ইতিহাসে সবচেয়ে বড় আপডেটগুলির একটি ছিল এবং মডেলটির ব্যবহারিক উপযোগিতা স্পষ্টভাবে প্রদর্শন করেছিল।
- একটি সম্পূর্ণ ইকোসিস্টেম তৈরি করেছে উদ্ভূত মডেল, সরঞ্জাম ও গবেষণার («BERTology»), AI ক্ষেত্রে সর্বাধিক উদ্ধৃত কাজগুলির একটি হয়ে উঠেছে।
যদিও GPT-3 ও GPT-4 এর মতো নতুন ও বৃহত্তর মডেলগুলি অনেক benchmark-এ (বিশেষত জেনারেটিভ কাজে) BERT-কে ছাড়িয়ে গেছে, BERT ও এর রূপভেদগুলি এখনও গভীর টেক্সট বোঝার প্রয়োজনীয় কাজে একটি শক্তিশালী ও ব্যাপকভাবে ব্যবহৃত সরঞ্জাম হিসেবে রয়ে গেছে।
রেফারেন্স
- GitHub-এ BERT-এর অফিসিয়াল রিপোজিটরি
- Google AI ব্লগে BERT-এর ঘোষণা
- The Illustrated BERT — BERT আর্কিটেকচারের ভিজ্যুয়াল ব্যাখ্যা
সাহিত্য
- Devlin, J. et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. arXiv:1810.04805.
- Vaswani, A. et al. (2017). Attention Is All You Need. arXiv:1706.03762.
- Peters, M. E. et al. (2018). Deep Contextualized Word Representations. arXiv:1802.05365.
- Liu, Y. et al. (2019). RoBERTa: A Robustly Optimized BERT Pretraining Approach. arXiv:1907.11692.
- Lan, Z. et al. (2020). ALBERT: A Lite BERT for Self-supervised Learning of Language Representations. arXiv:1909.11942.
- Sanh, V. et al. (2020). DistilBERT, a distilled version of BERT: smaller, faster, cheaper and lighter. arXiv:1910.01108.
- Yang, Z. et al. (2019). XLNet: Generalized Autoregressive Pretraining for Language Understanding. arXiv:1906.08237.
- Raffel, C. et al. (2020). Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer. arXiv:1910.10683.
- Lee, J. et al. (2020). BioBERT: a pre-trained biomedical language representation model for biomedical text mining. arXiv:1901.08746.
- Warner, B. et al. (2024). Smarter, Better, Faster, Longer: A Modern Bidirectional Encoder for Fast, Memory Efficient, and Long Context Finetuning and Inference. arXiv:2412.13663.