Efficient Image Processing with Deep Neural Networks
2019 IEEE International Conference on Image Processing (ICIP)

Email: eyeriss at mit dot edu

Welcome to the DNN tutorial website!

  • A summary of all DNN related papers from our group can be found here.
  • DNN related websites and resources can be found here.
  • To find out more about the Eyeriss project, please go here.
  • To find out more about other on-going research in the Energy-Efficient Multimedia Systems (EEMS) group at MIT, please go here.
  • or subscribe to our mailing list for updates on the Tutorial (e.g., notification of when slides will be posted or updated)


This tutorial describes methods to enable efficient processing for deep neural networks (DNNs), which is the cornerstone of many state-of-the-art image processing and computer vision algorithms. While DNNs delivers best-in-class accuracy and quality of results, it comes at the cost of high computational complexity. Accordingly, designing efficient algorithms for deep neural networks is an important step towards enabling the wide deployment of DNNs in image processing and computer vision systems (e.g., autonomous vehicles, drones, robots, smartphones, wearables, Internet of Things, etc).

In this tutorial, we will provide a brief overview of DNNs, the various hardware platforms that support DNNs including CPU, GPU, FPGA and ASICs, and highlight important benchmarking/comparison metrics and design considerations. We will then describe recent techniques that reduce the computation cost of DNNs from both the hardware architecture and network algorithm perspective. We will also discuss how these techniques can be applied to different image processing and computer vision tasks.


  • Part 1: Hardware Platforms for DNNs (e.g., CPU, GPU, FPGA, ASIC) and metrics for evaluating the efficiency of DNNs
  • Part 2: Co-design algorithms and hardware for efficient DNNs (e.g., precision, sparsity, network architecture design, network architecture search, designing networks with hardware in the loop)
  • Part 3: Application of efficient DNNs on a wide range of image processing and computer vision tasks (e.g., image classification, depth estimation, image segmentation, super-resolution)

Entire Tutorial [ slides ]

Links to projects featured in tutorial

  • Energy-Aware Pruning: Designing Energy-Efficient Convolutional Neural Networks
  • NetAdapt: Platform-Aware Neural Network Adaptation for Mobile Applications
  • FAST: A Framework to Accelerate Super-Resolution Processing on Compressed Videos
  • FastDepth: Fast Monocular Depth Estimation on Embedded Systems
  • DeeperLab: Single-Shot Image Parser
  • Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks
  • Accelergy: An Architecture-Level Energy Estimation Methodology for Accelerator Designs

An overview paper based on the tutorial "Efficient Processing of Deep Neural Networks: A Tutorial and Survey" is available here.



  title={Efficient processing of deep neural networks: A tutorial and survey},
  author={Sze, Vivienne and Chen, Yu-Hsin and Yang, Tien-Ju and Emer, Joel},
  journal={Proceedings of the IEEE},