- Reinforcement Learning from Human Feedback (RLHF), pretraining और supervised finetuning (SFT) के बाद LLM training का तीसरा (और आख़िरी) प्रमुख चरण है
- RLHF पर मेरा विचार यह है कि यह RL का सिर्फ़ एक हिस्सा है, और यह बात व्यापक रूप से ज्ञात नहीं है
- RLHF को वास्तव में RL (reinforcement learning) कहना पर्याप्त नहीं है
- उदाहरण के लिए, AlphaGo को वास्तविक RL से train किया गया था, और अगर उसे RLHF से train किया गया होता, तो वह आज जैसी उपलब्धि हासिल नहीं कर पाता
- अगर AlphaGo को RLHF से train किया गया होता तो क्या होता?
- मानव evaluators को Go board की दो अवस्थाएँ दिखाकर पूछा जाता कि इनमें से कौन-सी बेहतर है
- इस तरह की लगभग 100,000 comparisons इकट्ठा की जातीं, और मानव मूल्यांकन (vibe check) की नकल करने वाला एक 'Reward Model' (RM, reward model) neural network train किया जाता
- फिर इस reward model को आधार बनाकर RL चलाया जाता, ताकि ऐसे moves सीखे जाएँ जिन्हें अच्छा मूल्यांकन मिले
- लेकिन इससे Go में सार्थक प्रदर्शन हासिल नहीं हो पाता
- दो मुख्य कारण जिनसे RLHF, AlphaGo के लिए उपयुक्त नहीं है
- पहला, vibe भ्रामक हो सकता है। यह reward वास्तविक जीत वाला reward नहीं, बल्कि एक inaccurate proxy लक्ष्य है
- दूसरा, RL optimization प्रक्रिया में reward model training data की सीमा से बाहर की असामान्य अवस्थाओं को ऊँचा score दे सकता है, जिससे optimization विकृत होने की संभावना बहुत अधिक होती है
- RM, vibe की नकल करने वाला अरबों parameters वाला एक बड़ा neural network है
- जब LLM पर RLHF लागू किया जाता है, तब समस्याएँ
- LLM का reward model भी उन responses को ऊँचा score देने की प्रवृत्ति रखता है जिन्हें मानव evaluators पसंद कर सकते हैं
- यह reward model "वास्तविक" समस्या हल नहीं करता, बल्कि केवल उस proxy लक्ष्य का मूल्यांकन करता है कि इंसानों को कौन-सा response पसंद आ सकता है
- RLHF को बहुत लंबे समय तक नहीं चलाया जा सकता, क्योंकि model जल्दी ही ऐसे responses देना सीख जाता है जो reward model को deceive करें
- आप देख सकते हैं कि LLM assistant "The the the the the the" जैसी अजीब चीज़ों के साथ response देना शुरू कर देता है
- यह मज़ाकिया लग सकता है, लेकिन RM इसे बहुत शानदार मानता है
- यानी उसने RM के training data distribution के बाहर वाले क्षेत्र में adversarial examples खोज लिए हैं
- इन्हीं कारणों से RLHF को बहुत अधिक optimization steps तक नहीं चलाया जा सकता, और कुछ सौ/हज़ार steps के बाद इसे रोकना पड़ता है, क्योंकि optimization RM को deceive करना शुरू कर देता है
- यह AlphaGo जैसा RL नहीं है
- फिर भी LLM Assistant बनाने में RLHF उपयोगी क्यों है
- RLHF को Generator-Discriminator के बीच के gap से लाभ मिलता है
- यानी, कई तरह की समस्याओं में मानव evaluators के लिए शुरुआत से ideal answer लिखने की तुलना में कई candidate answers में से सबसे अच्छा answer चुनना कहीं आसान होता है
- इसका अच्छा उदाहरण "क्लिप पर एक कविता बनाओ" जैसे prompt में कई candidates में से अच्छी कविता चुनना है
- RLHF मानव supervision में मौजूद इसी 'ease' gap का लाभ उठाने का एक तरीका है
- साथ ही, RLHF hallucination (गलत जानकारी गढ़ना) कम करने में भी उपयोगी है
- अगर training के दौरान RM इतना सक्षम हो कि LLM के कुछ गढ़ने को पकड़ सके, तो वह कम reward देकर model को penalize करना सीख सकता है और model को ऐसे तथ्यों पर जोखिम लेना नापसंद करना सिखा सकता है जिनके बारे में वह निश्चित नहीं है
- हालाँकि, hallucination और उसकी mitigation का संतोषजनक समाधान एक पूरी तरह अलग विषय है
- निष्कर्ष: "RLHF उपयोगी है, लेकिन यह वास्तविक RL नहीं है"
- अब तक open domain में बड़े पैमाने पर production-grade "वास्तविक" RL को LLM पर विश्वसनीय ढंग से हासिल और साबित किए जाने का कोई मामला नहीं है
- सहज रूप से भी ऐसा इसलिए है क्योंकि open domain problem solving में वास्तविक reward पाना (जैसे किसी game को जीतना) बहुत कठिन है
- Go जैसे बंद और game-like environments, जहाँ dynamics सीमित हों और reward function का मूल्यांकन आसान हो तथा उसे deceive न किया जा सके, वहाँ यह रोचक है
- उदाहरण के लिए, document summarization, थोड़े अस्पष्ट सवालों के जवाब, jokes करना, या Java code को Python में फिर से लिखने जैसी चीज़ों के लिए आप objective reward कैसे देंगे?
- सिद्धांत रूप से इसकी दिशा में रास्ता असंभव नहीं है, लेकिन यह आसान भी नहीं है और creative thinking की आवश्यकता है
- लेकिन जो कोई इस समस्या को विश्वसनीय रूप से हल कर देगा, वह वास्तविक RL चला सकेगा
- वही तरह का RL जिसने AlphaGo को Go में इंसानों को हराने में सक्षम बनाया
- और जो इस समस्या को हल करेगा, वह open domain problem solving में इंसानों से बेहतर LLM बना सकेगा
1 टिप्पणियां
Hacker News राय
AI coding assistants आने वाले कुछ वर्षों में काफ़ी आगे बढ़ेंगे
RLHF जैसा सस्ता DIY तरीका यह है कि model को fine-tune करके output में score जोड़ दिया जाए
विभिन्न ML algorithms द्वारा reward function को "game" करने की समस्या finance और economics की समस्याओं जैसी है
Karpathy इस विषय को कहीं बेहतर जानते हैं, लेकिन इस पोस्ट में कुछ छूटा हुआ-सा लगता है
यह जानने की उत्सुकता है कि मौजूदा transformer-आधारित LLMs और optimal sequence prediction के बीच "gap" क्या है
LEAN जैसे proof domains में state, action, progress measure, और final goal state होते हैं
AlphaGo में human feedback नहीं था, लेकिन उसने इंसानों से सीखा था
SPAG paper language models के साथ true reinforcement learning का एक उदाहरण है
यह निष्कर्ष कि LLM + RL open-ended domain problem solving में इंसानों से बेहतर होंगे, पर्याप्त आधार वाला नहीं लगता