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

mamba-minimal

  • PyTorch में लिखे गए एक single-file सरल Mamba implementation mamba-minimal का परिचय।
  • यह आधिकारिक implementation के समान numerical output देता है, और यह forward तथा backward दोनों पर लागू होता है।
  • कोड सरल, पढ़ने में आसान और comments के साथ है।
  • इसमें आधिकारिक implementation की speed optimization जैसी सुविधाएँ शामिल नहीं हैं।
  • उपयुक्त parameter initialization शामिल नहीं है, लेकिन readability को नुकसान पहुँचाए बिना इसे जोड़ा जा सकता है।

Demo

  • prompt completion का उदाहरण दिखाने वाली demo.ipynb फ़ाइल।
  • Mamba model और AutoTokenizer का उपयोग करके text generation का उदाहरण दिया गया है।
  • generated example text में Mamba को दुनिया का सबसे लंबा venomous snake बताया गया है।

References

  • Mamba architecture का परिचय Albert Gu और Tri Dao के पेपर "Mamba: Linear-Time Sequence Modeling with Selective State Spaces" में दिया गया है।
  • आधिकारिक implementation GitHub पर उपलब्ध है।

GN⁺ की राय

  • mamba-minimal एक ऐसा प्रोजेक्ट है जिसे मौजूदा Mamba implementation की जटिलता कम करके शुरुआती software engineers के लिए भी समझने योग्य बनाया गया है।
  • यह प्रोजेक्ट machine learning क्षेत्र में कोड की readability और समझ को बेहतर बनाने में योगदान देता है।
  • वास्तविक usage examples के माध्यम से यह Mamba model का उपयोग करना आसान तरीके से दिखाता है, और यह सीखने वालों के लिए बहुत रोचक सामग्री बन सकता है।

1 टिप्पणियां

 
GN⁺ 2023-12-21
Hacker News राय
  • लाइब्रेरी साझा करना

    • एक सहकर्मी के साथ मिलकर ऐसी लाइब्रेरी बनाई है जो ज़्यादातर साझा model code को extract करती है। ज़्यादातर models को Python import प्रक्रिया और comments को छोड़कर लगभग 100 lines में implement किया जा सकता है।
    • उदाहरण के तौर पर BERT, Llama 1/2, MPT models का ज़िक्र किया गया है, और यह TorchScript JIT, PyTorch flash attention आदि को support करती है.
  • Mamba inference implementation साझा करना

    • Mamba code में speed optimization जैसी कई बातें हैं जिनकी वजह से उसे training में सीधे लागू करना कठिन है, इसलिए इसमें मदद कर सकने वाली अपनी Mamba inference implementation साझा की गई है.
  • Mamba के बारे में non-expert explanation का अनुरोध

    • Mamba की मुख्य insight, state space models, Mamba के सफल होने की वजह, और context length में खास दिलचस्पी न होने पर भी Mamba के अन्य फायदों के बारे में non-expert explanation मांगा गया है.
  • algorithm से मुख्य अपेक्षा

    • उम्मीद थी कि Mamba algorithm का मुख्य बिंदु parallel prefix scan होगा, लेकिन असली code किसी और तरीके से implement किया गया है.
  • Mamba पर एक चुटीला मज़ाक

    • इस मज़ाक पर हँसी कि Mamba दुनिया का सबसे लंबा ज़हरीला साँप है। arXiv paper का संदर्भ देकर उसके पीछे छिपी research को झाँककर देख पाना अच्छा लगा.
  • Mamba model training की कठिनाई पर सवाल

    • Huggingface पर मौजूद Mamba model को train करना कितना कठिन है, और सबसे बड़े model को train करने के लिए कितने GPU और कितना समय चाहिए, यह पूछा गया है.
  • official CUDA version को समझने की कोशिश साझा करना

    • official CUDA version को समझने की कोशिश की गई थी, लेकिन असफल रहने के बाद दोबारा प्रयास नहीं किया गया। इसके मुकाबले नई implementation को कहीं बेहतर बताया गया है.
  • single-file PyTorch implementation पर प्रशंसा

    • एक और single-file PyTorch implementation पर प्रशंसा जताई गई है, और माना गया है कि इस तरह का काम efficient ML research के लिए महत्वपूर्ण है। research की प्रगति की गति experiment execution time के inverse से जुड़ी होती है, और यह code की Kolmogorov complexity से संबंधित है। इस बात पर ज़ोर दिया गया है कि research tools, knowledge discovery की प्रक्रिया को तेज़ करने में कितने महत्वपूर्ण हैं.
  • original paper पर चर्चा का अनुरोध

    • पूछा गया है कि क्या original paper पर कोई चर्चा हुई थी, और यह भी बताया गया है कि RWKV और RetNet जैसे पहले के models में efficient implementation की कमी के कारण memory issues या अव्यावहारिक computational requirements की वजह से 8k context length के पूरे results गायब थे.
  • मुख्य बातों को सरल बनाने की सराहना

    • यह पसंद किया गया कि जटिल चीज़ों को सरल बनाकर उनके मूल तत्वों के रूप में प्रस्तुत किया गया है.