1 पॉइंट द्वारा GN⁺ 2024-12-15 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Byte Latent Transformer (BLT) बाइट-लेवल बड़े भाषा मॉडल (LLM) के लिए एक नई आर्किटेक्चर है, जो tokenization-आधारित मॉडल के समान प्रदर्शन हासिल करते हुए inference efficiency और robustness को काफी बेहतर बनाती है
  • बाइट्स को dynamic size के patch में encode किया जाता है, और patch मुख्य computation unit के रूप में काम करते हैं
    • dynamic patch segmentation: अगले बाइट की entropy के आधार पर अधिक जटिल डेटा को ज्यादा compute resources आवंटित किए जाते हैं
  • बाइट-आधारित मॉडल पर पहली FLOP-controlled scaling study:
    • 8B (8 अरब) parameters, 4 ट्रिलियन (4T) training bytes तक scaling
    • fixed vocabulary की जरूरत बिना raw bytes पर मॉडल training की संभावना की पुष्टि

प्रमुख परिणाम

  1. कुशल training और inference:
    • जब डेटा predictable हो, तब लंबे patch चुने जाते हैं जिससे computation कम होता है
    • मॉडल complexity के अनुसार patch को dynamically adjust करके resources को optimize करता है
  2. scaling में सुधार:
    • fixed inference cost पर tokenization-आधारित मॉडल की तुलना में बेहतर प्रदर्शन
    • patch size और model size को एक साथ बढ़ाकर scaling efficiency हासिल की गई
  3. qualitative performance में सुधार:
    • reasoning और generalization क्षमता में सुधार: causal reasoning और sparse data (long-tail) handling में गुणात्मक सुधार
    • fixed vocabulary-आधारित approach की सीमाओं को पार करता है

महत्व

  • BLT tokenization के बिना raw bytes को process करते हुए भी, बड़े पैमाने के डेटा और मॉडल training की efficiency साबित करता है
  • यह inference cost के मुकाबले बेहतर प्रदर्शन देता है और अगली पीढ़ी के byte-level LLM की संभावना दिखाता है
  • खासकर जटिल डेटा को संभालते समय dynamic patch तरीका adaptive modeling के नए standard के रूप में स्थापित हो सकता है

1 टिप्पणियां

 
GN⁺ 2024-12-15
Hacker News राय
  • जब BERT रिलीज़ हुआ था उस गर्मियों में, मैं एक startup में काम कर रहा था जो classification tasks के लिए character-based CNN model इस्तेमाल करता था। टीम के लोग word vectors में रुचि रखते थे, लेकिन उनका मानना था कि out-of-vocabulary शब्द बहुत ज़्यादा होने के कारण यह असफल हो सकता है

    • "foundation models" में भी out-of-vocabulary शब्द एक समस्या थे
    • character-based model से ठीक-ठाक परिणाम मिल रहे थे, लेकिन यह राय थी कि neural network के अंदर "dictionary" स्टोर करना inefficient है
    • मुझे पूरा यक़ीन था कि Word2Vec जैसी पद्धति असफल होगी, इसलिए मैंने पिछला प्रोजेक्ट छोड़ दिया
    • जब byte pair encoding आया, तब मैंने कहा कि यह पहली tokenization पद्धति है जिसे मैं समर्थन दे सकता हूँ
    • मैं चाहता हूँ कि character labels के साथ काम किया जा सके। tokenizers के प्रति एक तरह की नापसंदगी है
  • hierarchy दिलचस्प है, लेकिन सिर्फ़ दो स्तर होना थोड़ा खटकता है। ज़्यादा स्तर जोड़ना research की दिशा हो सकती है

    • FLOP budget को hierarchy के अलग-अलग स्तरों में बाँटते समय सावधानी रखनी होगी
    • patches को और बड़े units में group करने का तरीका ढूँढना होगा
  • patch बनाने के लिए एक छोटा model input string के अगले character की संभावना का अनुमान लगाता है

    • उदाहरण: अगला character 'a' होने की संभावना 100% हो सकती है, या 'a' और 'b' की संभावना 10%-10% हो सकती है
    • character estimates को साथ में बाँधकर patch (या token) बनाया जाता है
  • sampling, LLMs का एक कठिन पहलू है, लेकिन यह दिलचस्प उपयोग संभव बनाता है, जैसे हमेशा valid JSON output कराने के लिए force करना या temperature बदलकर अलग-अलग distributions पाना

    • BLT में यह सोचा जा सकता है कि decoder को allowed/forbidden bytes को अतिरिक्त input के रूप में दिया जाए और valid output मिलने तक decoding दोहराई जाए
  • यह सवाल है कि क्या AI को binary files पर pretrain किया जा सकता है

  • यह सवाल भी है कि क्या tokenization को implicit बनाकर model को सिर्फ़ bytes (या characters) ही दिए जा सकते हैं

  • Karpathy का संबंधित उद्धरण: tokenization, LLMs की बहुत-सी अजीबताओं के केंद्र में है

    • LLMs शब्दों की spelling ठीक से क्यों नहीं कर पाते, इसका कारण tokenization है
    • LLMs साधारण string processing tasks क्यों नहीं कर पाते, इसका कारण tokenization है
    • LLMs non-English भाषाओं में कमज़ोर क्यों होते हैं, इसका कारण tokenization है
    • LLMs साधारण arithmetic में कमज़ोर क्यों होते हैं, इसका कारण tokenization है
    • GPT-2 को Python coding में बेवजह कठिनाई क्यों हुई, इसका कारण tokenization है
    • LLMs "<|endoftext|>" string देखते ही अचानक क्यों रुक जाते हैं, इसका कारण tokenization है
    • "trailing whitespace" warning क्यों आती है, इसका कारण tokenization है
    • "SolidGoldMagikarp" के बारे में पूछने पर LLMs क्यों टूट जाते हैं, इसका कारण tokenization है
    • LLMs में YAML को JSON से ज़्यादा पसंद क्यों किया जाना चाहिए, इसका कारण tokenization है
    • LLMs वास्तव में end-to-end language modeling क्यों नहीं कर रहे, इसका कारण tokenization है
    • असली पीड़ा की जड़ tokenization है
  • यह 3 components वाला model है

    • encoder: byte groups लेता है और patch नाम की hidden state/encoding output करता है
    • transformer: patch encodings को autoregressive तरीके से process करता है
    • decoder: transformer द्वारा process की गई encodings को bytes के रूप में output करता है
    • loss, bytes के बीच cross-entropy (अगले byte की भविष्यवाणी) पर आधारित है
  • bytes को group करने के तरीके

    • entropy threshold का उपयोग: अगर byte sequence की entropy threshold से कम हो, तो उसे group किया जाता है
    • यह data से सीखा गया model है
  • मौजूदा LLMs की byte pair tokenization की तुलना में इसके फ़ायदे हैं

    • encoder/decoder "learnable" tokenization पद्धति की तरह काम करते हैं
    • efficiency tradeoff बेहतर है (predictable byte sequences के मामले में encoder, मुख्य transformer की computational effort को "offload" कर सकता है)
    • इतिहास दिखाता है कि end-to-end learned systems, इंसानों द्वारा डिज़ाइन किए गए mechanisms से आगे निकल जाते हैं
  • मुझे लगा था कि अब हमें ठहराव के दौर में प्रवेश करना चाहिए