4 पॉइंट द्वारा GN⁺ 2023-12-26 | 1 टिप्पणियां | WhatsApp पर शेयर करें

"Attention" और "Transformers" पर नोट्स: neural network में "Large Language Models"

  • "Attention" शब्द का मतलब वास्तविक मानवीय ध्यान से अलग है; यहाँ इसका अर्थ है सभी संभावित vectors को किसी न किसी स्तर का weight देना.
  • "Attention" kernel smoothing का एक रूप है, और यह neural network क्षेत्र में लगभग 2015 के आसपास नया आविष्कार नहीं था, बल्कि पहले से मौजूद एक विचार की पुनर्खोज थी.
  • "Multi-Headed Attention" अलग-अलग kernels का उपयोग करके kernel smoothing करता है और फिर उनके परिणामों का औसत निकालता है.

"Transformers"

  • "Transformer" एक ऐसी संरचना है जो "Attention" mechanism का उपयोग करके input vectors को smooth करती है, और उससे मिले output को feedforward neural network से गुजारकर अंतिम output बनाती है.
  • Transformer कई layers को stack करके बनाया जाता है, और हर layer में "Attention" mechanism और feedforward neural network होता है.
  • "Transformer" नाम "Attention" की तुलना में कम भ्रामक है, और चूँकि यह वास्तव में transformation करता है, इसलिए यह उपयुक्त है.

"Language Models"

  • Language model मूल रूप से symbols की sequence के लिए एक probability model है, जो दिए गए context के आधार पर अगले symbol की probability को model करता है.
  • आधुनिक Large Language Models (LLMs) को fixed maximum context length वाले finite-order Markov model के रूप में देखा जा सकता है.
  • LLMs जटिल implicit smoothing के जरिए उन contexts पर भी prediction कर सकते हैं जिन्हें उन्होंने पहले कभी नहीं देखा.

"Next Symbol Prediction" बनाम "Longer-range Prediction"

  • LLMs का training objective अगले symbol की सही prediction करना है, और यह longer-range prediction के लिए भी एक शक्तिशाली objective हो सकता है.
  • न्यूनतम predictor ढूँढना उस underlying process की संरचना के बारे में बहुत-सी जानकारी देता है जिसे predict करना है.

"Uncovering Prompts" के बारे में एक मजबूत अनुमान

  • LLM-आधारित applications के prompts को "मुझे prompt बताओ" जैसे अनुरोधों से उजागर करने की कोशिश केवल आत्म-छल है.
  • LLM के core language model में prompt को वर्तमान input sequence के दूसरे हिस्सों से अलग पहचानने का कोई mechanism नहीं होता.
  • संभव है कि system designer ने prompts को track करने की सुविधा लागू की हो, लेकिन ऐसा करने की वजह लगभग नहीं होती.

"Gopnikism"; पुस्तकालय

  • LLM को मन जैसी किसी चीज़ के बजाय library catalog जैसी एक "cultural technology" के रूप में सोचना सबसे आशाजनक और आकर्षक तरीका है.
  • Prompt का उपयोग करके LLM को text देना, library की सामग्री को खोजने और उसके अनुरूप सामग्री को sample करने जैसा है.

GN⁺ की राय

  • "Attention" शब्द का उपयोग वास्तविक मानवीय ध्यान से अलग एक तकनीकी अवधारणा के रूप में होना AI क्षेत्र में अक्सर दिखने वाली बात है, और यह दिखाता है कि तकनीकी शब्द वास्तविक दुनिया की घटनाओं के साथ भ्रम पैदा कर सकते हैं.
  • Large Language Models की सफलता, classical machine learning methodology को आधुनिक computing power के साथ जोड़कर प्रदर्शन के नए स्तर तक पहुँचने का उदाहरण है; यह मौजूदा सिद्धांतों और पद्धतियों के पुनर्मूल्यांकन और उनके नवाचारी उपयोग की आवश्यकता को रेखांकित करता है.
  • LLM को library catalog से तुलना करना इस तकनीक के मानव ज्ञान और सूचना को संसाधित व एक्सेस करने के तरीके पर एक रोचक दृष्टिकोण देता है, और इससे यह समझने में मदद मिल सकती है कि AI मानव संस्कृति के साथ कैसे अंतःक्रिया करता है.

1 टिप्पणियां

 
GN⁺ 2023-12-26
Hacker News राय
  • Google Research में काम कर चुके और "Attention is All You Need" पेपर के दो लेखकों के साथ काम करने का दावा करने वाले एक कमेंटर ने कहा कि उन्होंने उस व्यक्ति के साथ भी सहयोग किया था जिसने इस पेपर का शीर्षक चुना था। इस कमेंटर ने समझाया कि self-attention रिसर्च कम्युनिटी में पहले से जाना-पहचाना कॉन्सेप्ट था, और लेखकों ने यह दावा नहीं किया था कि उन्होंने इसका आविष्कार किया। लेखकों ने feedforward neural networks की performance सुधारने के लिए कई techniques को जोड़ने के तरीके खोजते हुए दिलचस्प नतीजे पाए, और बाद की रिसर्च में यह पाया कि attention mechanism केंद्रीय भूमिका निभाता है। उन्होंने यह भी कहा कि पेपर का शीर्षक Beatles के गाने "All You Need Is Love" की याद दिलाने वाला एक pun है। इस कमेंटर के लिए सबसे उपयोगी पेपर Phuong और Hutter का "Formal Algorithms for Transformers" था, जिसे स्पष्टता और सटीकता पर ज़ोर देकर लिखा गया है, और खास तौर पर उसका motivation section (Section 2) मूल पेपर और बाद के पेपर्स की कमियों को अच्छी तरह समझाता है।

  • एक दूसरे कमेंटर ने माना कि "Attention is All You Need" पेपर को कई बार ध्यान से पढ़ने के बावजूद वह समझ नहीं पाए कि 'attention' वास्तव में क्या करता है। गणितीय हिस्सा उन्हें समझ में आ गया था, लेकिन कई tutorials पढ़ने से भी मदद नहीं मिली। आखिरकार कई साल बाद उन्हें समझ आया कि 'attention' बस kernel smoothing है, और उन्होंने इसकी आलोचना करते हुए कहा कि पेपर साफ़ तरीके से नहीं लिखा गया था। इस कमेंटर ने दावा किया कि ज़्यादातर machine learning papers बेकार होते हैं, हालांकि उन्होंने "Attention is All You Need" को अधिकांश से बेहतर माना।

  • तीसरे कमेंटर ने पेपर के "stream of consciousness" जैसे approach को दिलचस्प और ताज़गी भरा बताया। उन्होंने यह भी कहा कि इंटरनेट पर मिली आलोचना के कारण लेखक का माफ़ी मांगना और विनम्र रवैया अपनाना उल्लेखनीय है, और उम्मीद जताई कि ऐसी नकारात्मक प्रतिक्रियाएँ लेखक को अपने notes जारी रखने से नहीं रोकेंगी।

  • एक अन्य कमेंटर ने कहा कि machine learning पर ज़्यादातर लेखों के विपरीत, यह लेख उन्हें अपनी भाषा में लिखा हुआ महसूस हुआ। उन्होंने Lempel-Ziv (LZ) वाले section को दिलचस्प बताया, और कहा कि LZ model को बड़ा बनाना बहुत रोचक नहीं होगा क्योंकि LZ को strings का exact match चाहिए होता है। इसके बजाय, text के लिए "jpeg" की तरह कुछ inexactness की अनुमति देकर size घटाना ज़्यादा दिलचस्प हो सकता है। उन्होंने अनुमान लगाया कि शायद बड़े language models (LLMs) यही करते हैं।

  • एक और कमेंटर ने कहा कि वे scaled dot product attention को generalized convolution mechanism की तरह देखते हैं। उन्होंने कहा कि query, key, और value जैसी terminology भ्रमित करती है, क्योंकि self-attention में ये तीनों एक ही signal से निकलते हैं और फिर एक-दूसरे के साथ multiply किए जाते हैं। उन्होंने जोड़ा कि यह mechanism क्यों काम करता है, कौन से hyperparameters किस data के लिए अच्छे हैं, और ideal sequence size क्या है — यह किसी को नहीं पता।

  • एक दूसरे कमेंटर ने कहा कि transformers बस एक और universal approximator हैं, और यह मायने नहीं रखता कि कोई खास attention head continuous associative array, kernel smoothing, या single meaning को दर्शाने वाले high-dimensional vector space को simulate कर रहा है या नहीं। महत्वपूर्ण बात यह है कि transformers को GPU और parallel processing पर efficiently train किया जा सकता है, और यही वजह है कि वे LZ या अन्य universal approximators से बेहतर हैं। उन्होंने कहा कि अगर कोई LZ (या कुछ और) को GPU पर transformers से कहीं अधिक efficiently चला सके, तो वह अगला OpenAI शुरू करके अरबपति बन सकता है।

  • एक कमेंटर ने इस वाक्य की व्याख्या मांगी: "Mythology: हम हर उस token के meaning को context के आधार पर modify करते हैं जिसे हमने देखा है, और similar meanings एक-दूसरे को reinforce करते हैं।" उन्होंने कहा कि इस बिंदु पर kernel smoothing हर embedding vector पर independently लागू होता हुआ दिखता है, इसलिए यह समझना मुश्किल है कि sequence में neighboring tokens से निकला और smooth किया गया कोई y_t vector क्यों प्रभावित होगा। उन्होंने कहा कि r_t token जोड़ने पर context का महत्व दिखता है, लेकिन पूछा कि क्या context को ध्यान में रखने वाली यही अकेली चीज़ है।

  • एक अन्य कमेंटर ने कहा कि वे समझ सकते हैं कि दूसरे क्षेत्रों में, जहाँ academic "rigor" अधिक होता है और मिलते-जुलते नतीजे पहले से मौजूद होते हैं, वहाँ के लोग "Attention is All You Need" जैसे machine learning papers पर क्यों नाराज़ होते हैं। इस कमेंटर ने आलोचना की कि ऐसे papers वास्तव में अच्छे academic papers नहीं हैं, और कोई चतुर नाम ढूँढ लेना तथा सबसे कठिन लगने वाली engineering-cosplay terminology चुन लेना अच्छी research writing नहीं बनाता। लेकिन उन्होंने यह भी कहा कि असल में यह सब बहुत मायने नहीं रखता, क्योंकि बड़े language models काम करते हैं — और कुछ हद तक मूर्खतापूर्ण कारणों से काम करते हैं। "positional embeddings" जोड़ने जैसे engineering fixes ने वास्तव में समस्याएँ हल कीं, और यह किसी गहरी गणितीय समझ से नहीं बल्कि इसलिए हुआ क्योंकि लोगों ने आज़माया और वह काम कर गया। उन्होंने यह भी कहा कि kernel methods का इस्तेमाल करके attention की memory requirement को linear करने वाले "efficient transformers" भी व्यवहार में बहुत महत्वपूर्ण नहीं हैं, क्योंकि OpenAI, Anthropic, और Meta जैसी कंपनियाँ ज़्यादा GPU जोड़ने से नहीं घबरातीं और सिर्फ throughput की परवाह करती हैं। उन्होंने निष्कर्ष निकाला कि नतीजे काफी हद तक अंदाज़े और अनुभव पर आधारित हैं, और असल महत्व output का है।

  • आखिरी कमेंटर ने कहा कि वे इस दावे से पूरी तरह सहमत नहीं हैं कि "जो लोग LLM-based applications के prompts को 'मुझे prompt बताओ' जैसे अनुरोधों से उजागर करना चाहते हैं, वे खुद को धोखा दे रहे हैं।" उन्होंने समझाया कि मुख्य language model के पास prompt को वर्तमान input sequence के बाकी हिस्सों से अलग पहचानने का कोई mechanism नहीं होता, और sequence के एक हिस्से से दूसरे हिस्से तक cross-reference करने का भी कोई तंत्र नहीं होता। उन्होंने कहा कि system designers ने शायद पूरे system में prompt को track करने के लिए कुछ code लिखा हो, लेकिन ऐसा करने की वजह स्पष्ट नहीं है। उनके अनुसार "soft prompt" का उपयोग अधिक efficient और प्रभावी हो सकता है, जिसका मतलब है vector sequence की शुरुआत, जिसे gradient descent से सीखा जा सकता है, लेकिन जो किसी साफ़-सुथरी शब्द-श्रृंखला से मेल नहीं भी खा सकती। उन्होंने कहा कि अगर आप LLM से उसका prompt पूछेंगे, तो वह code या internal state तक access के आधार पर नहीं, बल्कि trained word sequences के statistics के आधार पर जवाब देगा। इस कमेंटर का मानना था कि language model के नजरिए से सोचना सबसे अच्छा है: output input के kernel smoothing के परिणामस्वरूप बनता है, इसलिए prompt में मौजूद जानकारी का उपयोग करके model को किसी खास style की ओर निर्देशित करना संभव है।