Fine-tuning (deep learning) (BN)
ফাইন-টিউনিং (ইং. Fine-tuning), সূক্ষ্ম সমন্বয় নামেও পরিচিত, — এটি Machine Learning-এর ট্রান্সফার লার্নিং পদ্ধতির একটি কৌশল, যেখানে পূর্ব-প্রশিক্ষিত মডেলের (pre-trained model) প্যারামিটারগুলো নতুন, নির্দিষ্ট কোনো কাজের জন্য অভিযোজিত করা হয়। মডেলকে শূন্য থেকে প্রশিক্ষণ দেওয়ার পরিবর্তে — যার জন্য বিশাল পরিমাণ ডেটা ও কম্পিউটেশনাল রিসোর্স প্রয়োজন — fine-tuning মডেলের ওজনে ইতিমধ্যে এনকোড করা জ্ঞান ব্যবহার করে এবং সেগুলোকে নির্দিষ্ট প্রয়োজন অনুযায়ী "সমন্বয়" করার সুযোগ দেয়।
এই পদ্ধতিটি গভীর শিক্ষার ক্ষেত্রে, বিশেষ করে বড় ভাষা মডেল (LLM) এবং কম্পিউটার ভিশন মডেলের ক্ষেত্রে কার্যত একটি আদর্শ মান হয়ে উঠেছে।
ধারণা
ফাইন-টিউনিং প্রক্রিয়াটিকে দুটি প্রধান ধাপে ভাগ করা যায়:
1. পূর্ব-প্রশিক্ষণ (Pre-training): মডেলটি (যেমন BERT বা GPT) একটি অত্যন্ত বড় ও সাধারণ dataset-এ (যেমন সমগ্র ইন্টারনেট) স্ব-তত্ত্বাবধায়িত কাজ ব্যবহার করে (যেমন পরবর্তী শব্দ পূর্বানুমান) প্রশিক্ষিত হয়। এই ধাপে মডেলটি সাধারণ নিয়মাবলি, বাক্যগঠন, অর্থবিদ্যা এবং বিশ্বজ্ঞান আয়ত্ত করে।
2. ফাইন-টিউনিং (Fine-tuning): পূর্ব-প্রশিক্ষিত মডেলটিকে ভিত্তি হিসেবে নেওয়া হয় এবং এর ওজনগুলো লক্ষ্য কাজের জন্য ছোট, কিন্তু নির্দিষ্ট লেবেলযুক্ত dataset-এ পুনরায় সমন্বয় করা হয়।
মূল ধারণাটি হলো যে পূর্ব-প্রশিক্ষণ ধাপে অর্জিত জ্ঞান সার্বজনীন এবং তা আরও অনেক সংকীর্ণ কাজ সমাধানের জন্য সফলভাবে স্থানান্তরযোগ্য।
ফাইন-টিউনিং প্রক্রিয়া
সাধারণ ফাইন-টিউনিং প্রক্রিয়ায় নিম্নলিখিত ধাপগুলো অন্তর্ভুক্ত থাকে:
1. পূর্ব-প্রশিক্ষিত মডেল নির্বাচন: এমন একটি মডেল বেছে নেওয়া হয় যার মৌলিক সক্ষমতা লক্ষ্য কাজের জন্য উপযুক্ত (যেমন টেক্সট বোঝার কাজে BERT, জেনারেশনের জন্য GPT)।
2. আর্কিটেকচার অভিযোজন: পূর্ব-প্রশিক্ষিত মডেলে লক্ষ্য কাজের জন্য নির্দিষ্ট একটি নতুন "হেড" স্তর (head) যোগ করা হয়। উদাহরণস্বরূপ:
- টেক্সট শ্রেণিবিন্যাসের জন্য softmax ফাংশন সহ একটি সাধারণ পূর্ণ-সংযুক্ত স্তর যোগ করা হয়।
- নামযুক্ত সত্তা স্বীকৃতি (NER)-এর জন্য প্রতিটি token-এর আউটপুটে একটি শ্রেণিবিভাজক যোগ করা হয়।
3. লক্ষ্য dataset-এ প্রশিক্ষণ: সম্পূর্ণ মডেল (বা এর একটি অংশ) নতুন লেবেলযুক্ত dataset-এ প্রশিক্ষিত হয়। এই ধাপে মডেলের ওজন, পূর্ব-প্রশিক্ষিত স্তরের ওজনসহ, নতুন কাজে লস ফাংশন হ্রাস করার জন্য গ্রেডিয়েন্ট ডিসেন্ট ব্যবহার করে আপডেট করা হয়। 4. কম লার্নিং রেটের ব্যবহার: ফাইন-টিউনিংয়ের সময় সাধারণত পূর্ব-প্রশিক্ষণের তুলনায় উল্লেখযোগ্যভাবে কম লার্নিং রেট ব্যবহার করা হয়। মডেলের ওজনে ইতিমধ্যে এনকোড করা দরকারী জ্ঞান "ধ্বংস" না করে কেবল সেগুলোকে সতর্কতার সাথে সংশোধন করার জন্য এটি প্রয়োজনীয়।
ফাইন-টিউনিংয়ের ধরন
সম্পূর্ণ ফাইন-টিউনিং (Full Fine-tuning)
- নীতি: পূর্ব-প্রশিক্ষিত মডেলের সমস্ত প্যারামিটার নতুন "হেড" স্তরের সাথে একসাথে আপডেট করা হয়।
- সুবিধা: সম্ভাব্যভাবে সর্বোত্তম কার্যক্ষমতা নিশ্চিত করে, কারণ সম্পূর্ণ মডেলটি নতুন কাজের সাথে অভিযোজিত হয়।
- অসুবিধা: উল্লেখযোগ্য কম্পিউটেশনাল রিসোর্স ও মেমরি প্রয়োজন, কারণ সমস্ত প্যারামিটারের গ্রেডিয়েন্ট সংরক্ষণ ও আপডেট করতে হয়। বিপর্যয়মূলক বিস্মৃতির ঝুঁকি রয়েছে, যেখানে মডেল পূর্ব-প্রশিক্ষণে অর্জিত সাধারণ জ্ঞান "ভুলে" যায়।
প্যারামিটার-দক্ষ ফাইন-টিউনিং (Parameter-Efficient Fine-Tuning, PEFT)
এটি পদ্ধতিগুলোর একটি পরিবার যা ফাইন-টিউনিংয়ের কম্পিউটেশনাল খরচ কমাতে লক্ষ্য রাখে। মূল ধারণা হলো পূর্ব-প্রশিক্ষিত মডেলের অধিকাংশ প্যারামিটার জমাট করে রাখা এবং কেবল অল্পসংখ্যক নতুন বা নির্বাচিত বিদ্যমান প্যারামিটার প্রশিক্ষণ করা।
- PEFT পদ্ধতির উদাহরণ:
- অ্যাডাপ্টার (Adapters): Transformer আর্কিটেকচারে ছোট, অতিরিক্ত অ্যাডাপ্টার স্তর সন্নিবেশিত করা হয় এবং কেবল সেগুলোই প্রশিক্ষিত হয়।
- LoRA (Low-Rank Adaptation): সম্পূর্ণ ওজন ম্যাট্রিক্স আপডেট করার পরিবর্তে, LoRA তাদের নিম্ন-র্যাঙ্ক আপডেট প্রশিক্ষণ করে। এটি প্রশিক্ষণযোগ্য প্যারামিটারের সংখ্যা হাজার গুণ কমাতে সক্ষম করে।
- Prompt Tuning: ইনপুট ডেটায় প্রশিক্ষণযোগ্য ভেক্টর-"prompt" যোগ করা হয়, যেগুলো কাজ সমাধানের জন্য সমন্বয় করা হয়, যখন মডেলটি নিজেই জমাট থাকে।
- PEFT-এর সুবিধা:
- দক্ষতা: মেমরি ও কম্পিউটেশনের চাহিদা উল্লেখযোগ্যভাবে হ্রাস করে।
- মডুলারিটি: একটি পূর্ব-প্রশিক্ষিত মডেলকে অনেক কাজে সহজে অভিযোজিত করার সুযোগ দেয়, প্রতিটির জন্য কেবল ছোট অভিযোজিত ওজনের সেট সংরক্ষণ করে।
নির্দেশনা ফাইন-টিউনিং (Instruction Tuning)
এটি একটি বিশেষ ধরনের ফাইন-টিউনিং, যা LLM-এর স্বাভাবিক ভাষার নির্দেশনা অনুসরণ করার সক্ষমতা উন্নত করতে লক্ষ্য রাখে।
- কার্যপদ্ধতি: মডেলটি "নির্দেশনা — কাঙ্ক্ষিত আউটপুট" জোড়া নিয়ে গঠিত একটি dataset-এ ফাইন-টিউন করা হয়।
- লক্ষ্য: নতুন, পূর্বে অদৃষ্ট কাজের উপর মডেলের সাধারণীকরণ ক্ষমতা উন্নত করা, যা নির্দেশনা হিসেবে বর্ণনা করা যায়। InstructGPT এবং FLAN-T5-এর মতো মডেলগুলো এই পদ্ধতির উজ্জ্বল উদাহরণ।
সাহিত্য
- Howard, J.; Ruder, S. (2018). Universal Language Model Fine-tuning for Text Classification. arXiv:1801.06146.
- Houlsby, N. et al. (2019). Parameter-Efficient Transfer Learning for NLP. arXiv:1902.00751.
- Pfeiffer, J. et al. (2020). AdapterFusion: Non-Destructive Task Composition for Transfer Learning. arXiv:2005.00247.
- Hu, E. J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Lester, B.; Al-Rfou, R.; Constant, N. (2021). The Power of Scale for Parameter-Efficient Prompt Tuning. arXiv:2104.08691.
- Ben Zaken, A.; Goldberg, Y.; Ravfogel, S. (2022). BitFit: Simple Parameter-Efficient Fine-Tuning for Transformer-based Masked Language-Models. ACL 2022.
- Ouyang, L. et al. (2022). Training Language Models to Follow Instructions with Human Feedback. arXiv:2203.02155.
- Han, Z. et al. (2024). Parameter-Efficient Fine-Tuning for Large Models: A Comprehensive Survey. arXiv:2403.14608.
- Bian, J. et al. (2025). A Survey on Parameter-Efficient Fine-Tuning for Foundation Models in Federated Learning. arXiv:2504.21099.
- Li, X. et al. (2025). Revisiting Fine-Tuning: A Survey of Parameter-Efficient Techniques and Future Directions. Preprints.org.
আরও দেখুন
- বড় ভাষা মডেল
- BERT
- GPT