Pages

Thursday, 16 May 2024

Sparse Llama: Revolutionizing LLMs with 70% Sparsity


Introduction

The advent of Large Language Models (LLMs) has propelled the field of Artificial Intelligence (AI) into a new era of innovation. These models, with their ability to understand, generate, and interact with human language, have opened up new possibilities in machine learning. However, the vast size and complexity of these models come with a considerable computational cost, making them less accessible for widespread use. This is where the concept of sparsity comes into play.

What is Sparsity in Large Language Models?

Sparsity in LLMs is a technique that reduces the number of active parameters in a model without a substantial loss in performance. It’s akin to finding the most efficient path through a dense forest; the goal is to reach the other side using the least amount of effort while still enjoying the journey. As LLMs grow in size, their demands on computational resources increase. This not only escalates the cost of training and deploying these models but also limits their accessibility to those without substantial computing power. Sparsity addresses these challenges by reducing the model’s size and improving inference times, making LLMs more sustainable and democratized.

Recent advancements in sparsity have been groundbreaking. Techniques like pruning and sparse pretraining have enabled models to retain or even surpass their original accuracy while being significantly smaller and faster. These improvements are transformative, allowing LLMs to be deployed in environments where it was previously not feasible. Despite these advancements, challenges remain. Achieving high levels of sparsity without compromising the model’s ability to perform complex tasks is a delicate balance. Moreover, the lack of hardware that can efficiently handle sparse models has been a bottleneck.

Creators of Sparse Llama

Sparse Llama, a novel AI model developed by Cerebras and Neural Magic, is at the forefront of tackling these challenges. By integrating state-of-the-art sparsity techniques and leveraging specialized hardware, Sparse Llama aims to set a new standard for efficient LLMs. The development of Sparse Llama is part of the broader narrative of AI evolution, representing a shift towards more sustainable, accessible, and powerful AI systems that can drive innovation across various sectors. 

The driving force behind Sparse Llama was to create a model that could deliver the power of LLMs to a wider audience, making them more accessible and democratized. Cerebras and Neural Magic have achieved this major milestone in the field of LLMs. Their novel approach combines state-of-the-art pruning techniques, sparse pretraining, and purpose-built hardware, unlocking unprecedented levels of sparsity in LLMs. The motto behind the development of Sparse Llama is to pave the way for more efficient training and deployment of LLMs, making them accessible to a broader range of organizations and industries.

What is Sparse Llama?

Sparse Llama is a groundbreaking approach to Large Language Models (LLMs) that leverages sparsity to its advantage. It is a foundational model that has been optimized for sparsity, achieving a significant reduction in parameters while maintaining full accuracy in performance for a range of downstream tasks. This unique model is designed to create accurate, sparse versions of performant LLMs that achieve full accuracy recovery for fine-tuning tasks.

Key Features of Sparse Llama

  • 70% Sparsity: A groundbreaking level of parameter reduction, setting a new benchmark for LLMs.
  • Full Accuracy Recovery: Despite the significant reduction in size, it retains its ability to perform complex language tasks with high accuracy.
  • Training and Inference Acceleration: Leveraging Cerebras CS-3 system and Neural Magic’s DeepSparse engine, Sparse Llama offers up to 8x training acceleration and 3x faster inference.


    source - https://www.cerebras.net/blog/introducing-sparse-llama-70-smaller-3x-faster-full-accuracy

Capabilities/Use Case of Sparse Llama

Sparse Llama’s unique capabilities and use cases are as follows:

  • Efficiency: Sparse Llama’s ability to create highly sparse LLMs without sacrificing accuracy makes it more accessible and cost-effective for real-world applications. Its efficiency and speed enable its deployment in scenarios where real-time processing is crucial.
  • Chatbots: With its 70% sparsity and 3x faster inference, Sparse Llama can be used in latency-sensitive applications such as chatbots, where real-time interaction is key. It can handle complex conversational tasks, providing quick and accurate responses.
  • Code Generation and Instruction Following: Sparse Llama can be used for tasks such as code generation and instruction following, where precision and accuracy are paramount. Its ability to maintain full accuracy even with a significant reduction in parameters makes it ideal for these tasks.
  • Arithmetic Reasoning and Summarization: Sparse Llama’s capabilities extend to tasks like arithmetic reasoning and summarization. Its ability to understand and generate language makes it capable of performing complex reasoning tasks and generating concise summaries.

How does Sparse Llama work?

The Sparse Llama model exemplifies a novel approach that ingeniously blends multiple techniques to engineer highly sparse yet accurate Large Language Models (LLMs). Here’s an overview of its methodology:

Sparse pre-training with Sparse Fine-Tuning
source - https://www.cerebras.net/blog/introducing-sparse-llama-70-smaller-3x-faster-full-accuracy

One-Shot Pruning: The process starts with one-shot pruning, a pivotal technique that selectively eliminates the model’s non-critical weights. This is a foundational step in downsizing the model and enhancing its sparsity.

Sparse Pretraining: Subsequent to pruning, Sparse Llama undergoes a phase of sparse pretraining. During this phase, the pruned architecture is trained on extensive text data, enabling it to acclimate to its new, leaner structure.

Fine-Tuning on Specific Datasets: Following pretraining, the model is meticulously fine-tuned with targeted datasets. This fine-tuning is instrumental in tailoring the model to specialized tasks, thereby optimizing its performance.

Leveraging CS-3’s Support for Unlimited Unstructured Sparsity: A distinctive feature of Sparse Llama is its utilization of the CS-3 system’s capability for unlimited unstructured sparsity. This contrasts with GPUs’ constrained sparsity capabilities, as the CS-3 system accommodates arbitrary sparsity patterns at any level, aligning with the model’s intrinsic structure and learned weights.

The synergy of advanced pruning, tailored pretraining, and the CS-3 system’s specialized hardware culminates in a model that is remarkably reduced in size by up to 70%, thrice as fast, and yet fully accurate.

Performance Evaluation 

The Sparse Llama Model has been evaluated through a series of experiments, demonstrating its effectiveness and robustness across different tasks and sparsity levels.

The Sparse Llama Model was pretrained using SparseGPT with uniform sparsity profiles. The results indicate that sparse pretraining significantly outperforms post-training pruning, especially at high sparsity levels. At 50% and 70% sparsity, the model achieved 96.1% and 91.8% recovery of Llama Evaluation metrics respectively.

Fine-tuned Llama-2 7B evaluation metrics across limited context tasks
source - https://arxiv.org/pdf/2405.03594

Experiments were conducted on GSM8K and CNN Daily Mail datasets to assess the effectiveness of sparse fine-tuning. As detailed in table above, sparse pretrained models achieved comparable or superior performance to the current state-of-the-art for pruning during fine-tuning.

Fine-tuned Llama 2 7B evaluation metrics across large context tasks
source - https://arxiv.org/pdf/2405.03594

Ablations were conducted on datasets representing large context tasks. The results, as shown in table above, demonstrate the significant advantage of sparse pretrained models for large context tasks, especially at high sparsity levels.

Post-training quantization was applied to further compress the models. The INT8 format for weights and activations was crucial for achieving maximal speedups with the DeepSparse engine. The quantization methodology resulted in negligible accuracy degradation across tasks. Compared to baseline FP32 models, the reduction in compute through INT8 kernels and sparsity decreased time-to-first token by 3.86x for a standard 512 token prefill target, and reduced memory size through quantization and sparsity enabled an increase of 8.6x in decode tokens per second.

Access and Usage

Sparse Llama is open-source and available for use. You can find the model, along with its code and documentation, on the Neural Magic website and HuggingFace Model Collections. It’s also available for online demos via HuggingFace Spaces.

If you are interested to learn more about this model then all relevant links are provided under the 'source' section at the end of this article.

Limitations

Sparse Llama represents a leap forward in the domain of Large Language Models (LLMs), yet it encounters certain obstacles that need addressing. The prevalent pruning techniques face challenges in preserving accuracy when the models are highly sparse and tasked with complex operations. Additionally, the current GPU hardware offers limited support for sparsity, posing a significant barrier to advancing sparsity research.

Conclusion

The Sparse Llama model marks a notable advancement within the Large Language Models (LLMs) landscape, achieving remarkable sparsity levels, offering a glimpse into a future where LLMs are not only powerful but also efficient and accessible. Despite these strides, the journey is not complete, ongoing research is essential to fully tap into the vast possibilities that sparsity in LLMs presents.


Source
Website: https://www.cerebras.net/blog/introducing-sparse-llama-70-smaller-3x-faster-full-accuracy
HF research: https://huggingface.co/papers/2405.03594
arxiv research paper : https://arxiv.org/abs/2405.03594
arxiv research document: https://arxiv.org/pdf/2405.03594
Model collections: https://huggingface.co/neuralmagic
Code & Docs: https://docs.neuralmagic.com/llms/models/sparse-foundational-llama-2/
chat demo: https://huggingface.co/spaces/neuralmagic/llama-2-sparse-transfer-chat-deepsparse

No comments:

Post a Comment

ShowUI: Advanced Open-Source Vision-Language-Action Model for GUI

Introduction Graphical User Interface (GUI) assistants assist users to interact with digital appliances and applications. They can be an ord...