arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1911.02497cs.LGcs.CVstat.ML
收藏

一种可编程的神经网络压缩方法

A Programmable Approach to Neural Network Compression

University of Utah(犹他大学);NVIDIA(英伟达);University of Toronto(多伦多大学)

Vinu Joseph, Saurav Muralidharan, Animesh Garg, Michael Garland, Ganesh Gopalakrishnan

摘要:

深度神经网络(DNN)通常包含比它们被训练来执行的特定任务所需的更多的权重,以更高的精度表示。因此,它们通常可以使用诸如权重修剪和量化之类的技术来压缩,这些技术可以减少模型大小和推理时间,而不会明显损失准确性。然而,为给定的DNN、硬件平台和优化目标找到最佳压缩策略和相应的目标稀疏性目前需要昂贵的、经常手动的试错实验。本文介绍了一个可编程的模型压缩系统Condensa。用户在Python中以编程方式组成简单的运算符,以构建更复杂和实际有趣的压缩策略。给定策略和用户提供的目标(例如最小化运行时间),Condensa使用一种新型的基于贝叶斯优化的算法来自动推断所需的稀疏性。我们在四个真实世界的DNN上的实验表明,每次搜索最多使用10个样本,内存占用和硬件运行时吞吐量分别提高了188倍和2.59倍。我们在https://github.com/NVlabs/condensa上发布了Condensa的参考实现。

英文摘要:

Deep neural networks (DNNs) frequently contain far more weights, represented at a higher precision, than are required for the specific task which they are trained to perform. Consequently, they can often be compressed using techniques such as weight pruning and quantization that reduce both the model size and inference time without appreciable loss in accuracy. However, finding the best compression strategy and corresponding target sparsity for a given DNN, hardware platform, and optimization objective currently requires expensive, frequently manual, trial-and-error experimentation. In this paper, we introduce a programmable system for model compression called Condensa. Users programmatically compose simple operators, in Python, to build more complex and practically interesting compression strategies. Given a strategy and user-provided objective (such as minimization of running time), Condensa uses a novel Bayesian optimization-based algorithm to automatically infer desirable sparsities. Our experiments on four real-world DNNs demonstrate memory footprint and hardware runtime throughput improvements of 188x and 2.59x, respectively, using at most ten samples per search. We have released a reference implementation of Condensa at https://github.com/NVlabs/condensa.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑