Course Content

Lesson 5.8: Using AutoNAC for Data-Aware Model Design

Throughout this course, we’ve explored how dataset characteristics significantly impact the design and performance of computer vision models. However, tailoring a model to fit the specific attributes of your data requires a great deal of deep learning expertise and can involve a labor-intensive, time-consuming process of trial and error. This leads us to an intriguing prospect: wouldn’t it be fantastic if there were a tool that could take your dataset characteristics and automatically generate the optimal model architecture?

Welcome to the world of Automatic Neural Architecture Construction (AutoNAC) developed by Deci! 

What Is AutoNAC

AutoNAC embodies a new level of automation in model design, providing a tool that considers not only your dataset’s characteristics but also your target hardware and the tradeoff between latency and accuracy that you aim to achieve. AutoNAC empowers you to generate the best model architecture, uniquely tailored for your specific application and inference hardware. Since AutoNAC optimizes the model at the architecture level, the model can still be further optimized using common model optimization and compression methods. That is, methods such as knowledge distillation, pruning, and quantization can still be applied to the model to improve its performance.

Hardware- and Data-Aware Model Design

This cutting-edge technology is powered by Deci’s proprietary, fast, and compute-efficient Automatic Neural Architecture Construction engine, capable of operating cost-effectively and at scale. By utilizing AutoNAC, you can ensure superior performance and accuracy, outperforming other state-of-the-art models by a factor of 3-10X. Additionally, AutoNAC simplifies the architecture selection and evaluation process, allowing you to move from data to a production-ready model within days, instead of weeks or months.

AutoNAC is hardware and data-aware. It considers all factors that can influence performance, including the inference environment and the compilation and quantization processes. Its input requirements include information on desired performance targets and various data characteristics, such as the task, image resolution, average object size, max object per image, and the number of classes. It’s important to note that AutoNAC is also privacy-aware; it does not require access to your data, only to metadata about your dataset characteristics. Hence, data privacy is not jeopardized at any stage during the process.

How Does AutoNAC Work?

AutoNAC’s engine performs a multi-objective search within an expansive search space to discover an architecture that delivers the highest accuracy for your specific speed, model size, and inference hardware targets.

Leveraging AutoNAC with DataGradients

Combining AutoNAC with DataGradients elevates its optimization capabilities to an even higher level. DataGradients provides a more detailed reflection of the dataset, enabling AutoNAC to fine-tune its optimization processes while also ensuring data privacy. This combination introduces an unparalleled level of precision, customization, and privacy assurance, enabling you to tailor models more closely to your unique requirements and constraints.

The Future of Model Development with AutoNAC

With the advent of AutoNAC and its integration with DataGradients, companies can not only gain  better accuracy and speed, but also revolutionize how models are developed. It allows for the creation of superior models faster, while significantly reducing development risks and costs.

AutoNAC, particularly when combined with DataGradients, represents a significant leap forward in the field of Neural Architecture Search, simplifying and enhancing the model development process in ways that were previously unachievable.

As we conclude this course, we hope that you have gained valuable insights into how you can best tailor models to your data’s specific characteristics and understand the immense potential of tools like AutoNAC and DataGradients in achieving this goal. Here’s to successful model building!

Share
Add Your Heading Text Here
				
					from transformers import AutoFeatureExtractor, AutoModelForImageClassification

extractor = AutoFeatureExtractor.from_pretrained("microsoft/resnet-50")

model = AutoModelForImageClassification.from_pretrained("microsoft/resnet-50")