8 पॉइंट द्वारा xguru 2024-08-09 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • 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 टिप्पणियां

 
xguru 2024-08-09

Hacker News राय

  • AI coding assistants आने वाले कुछ वर्षों में काफ़ी आगे बढ़ेंगे

    • Chat AI में स्पष्ट reward function नहीं होता, इसलिए quality का आकलन करना मुश्किल है
    • Coding AI test लिखना, code लिखना, compile करना, और failed test cases की जाँच करना आदि को अनंत loop में चला सकता है
    • इस प्रक्रिया का उपयोग भविष्य के AI coding models के training data के रूप में किया जा सकता है
    • Language models गणितीय theorem proving में भी शानदार प्रदर्शन दिखाएँगे
    • Theorem verification software 100% सटीक feedback देता है, जिससे reinforcement learning संभव होता है
    • Program correctness की formal verification उबाऊ है, लेकिन LLMs इसे बदल सकते हैं
    • LLMs द्वारा बनाए गए annotations का उपयोग engine correctness साबित करने के लिए कर सकता है
  • RLHF जैसा सस्ता DIY तरीका यह है कि model को fine-tune करके output में score जोड़ दिया जाए

    • अच्छी response बनाने के लिए loss function नहीं लिखा जा सकता, इसलिए RLHF की ज़रूरत होती है
    • Base model prompt के लिए n completions बनाता है और उन्हें manually score दिया जाता है
    • फिर prompt => (completion, score) pairs training set बन जाते हैं
    • Model के train हो जाने के बाद, prompt में मनचाहा score शामिल करने पर model उस score के अनुरूप जवाब देने की कोशिश करता है
  • विभिन्न ML algorithms द्वारा reward function को "game" करने की समस्या finance और economics की समस्याओं जैसी है

    • जब लोग उत्पादक काम किए बिना पैसा पाने की कोशिश करते हैं, तो बहुत-सी गैर-उत्पादक चीज़ें बढ़ जाती हैं
    • इसे कम करने के लिए reward function को game करने पर दंड देने वाला system चाहिए
    • उस system को वास्तविक value समझनी चाहिए और उन मामलों की पहचान कर सकना चाहिए जहाँ reward function ऊँचा है लेकिन value कम है
  • Karpathy इस विषय को कहीं बेहतर जानते हैं, लेकिन इस पोस्ट में कुछ छूटा हुआ-सा लगता है

    • Go ऐसा game है जो इंसानों के हल करने के लिए बहुत जटिल है
    • LLM का लक्ष्य इंसानों की पूरी तरह नकल करना है
    • AlphaGo और Stockfish game की समझ को आगे बढ़ा सकते हैं, लेकिन LLM भाषा की सीमाओं का विस्तार नहीं कर सकते
    • LLM मूल रूप से imitation models हैं, इसलिए LLM के क्षेत्र में RLHF अधिक मायने रखता है
  • यह जानने की उत्सुकता है कि मौजूदा transformer-आधारित LLMs और optimal sequence prediction के बीच "gap" क्या है

    • मौजूदा LLMs के पास training के दौरान token prediction की cross-entropy को minimize करने वाला एक सरल objective function होता है
    • Solomonoff induction optimal sequence prediction हासिल करता है
    • यह जानना दिलचस्प होगा कि SI और GPT4 के साथ बातचीत कितनी अलग होगी
    • AGI के लिए optimal sequence prediction से अधिक की आवश्यकता है
    • Human-oriented objective function वह है जो user को संतुष्ट करने वाले जवाब देने की probability को maximize करे
    • लेकिन कई users होने के कारण aggregation method एक समस्या बन जाती है
    • Karpathy इसी समस्या की ओर संकेत कर रहे हैं
  • LEAN जैसे proof domains में state, action, progress measure, और final goal state होते हैं

    • अगर Karpathy LEAN proofs को automate करने पर ध्यान दें, तो वे गणित को हमेशा के लिए बदल सकते हैं
  • AlphaGo में human feedback नहीं था, लेकिन उसने इंसानों से सीखा था

    • AlphaZero ने human influence को हटाकर pure reinforcement learning का उपयोग किया
  • SPAG paper language models के साथ true reinforcement learning का एक उदाहरण है

    • Karpathy की पोस्ट में "scale" और "open-ended domain" गायब हैं
    • Adversarial language games आशाजनक लगते हैं
  • यह निष्कर्ष कि LLM + RL open-ended domain problem solving में इंसानों से बेहतर होंगे, पर्याप्त आधार वाला नहीं लगता