Course Abstract

Over the last few years, convolutional neural networks (CNN) have risen in popularity, especially in the area of computer vision. Many mobile applications running on smartphones and wearable devices would potentially benefit from the new opportunities enabled by deep learning techniques. However, CNNs are by nature computationally and memory intensive, making them challenging to deploy on a mobile device. In this course, we will tackle this challenge by bringing the power of CNNs and deep learning to memory and power-constrained devices like smartphones.

DIFFICULTY LEVEL: INTERMEDIATE

Learning Objectives

  • Learn the pratical strategies for CNN architecture deployement on mobile device.

  • Explore hands-on step by step example of building an iOS deep learning app

Instructor

Instructor Bio:

Head of AI & Research | Aira

Anirudh Koul

Anirudh Koul is a noted AI expert, ML Lead for NASA FDL, UN/TEDx speaker, author of O'Reilly's Practical Deep Learning book and a former scientist at Microsoft AI & Research, where he founded Seeing AI, considered the most used technology among the blind community after the iPhone. With features shipped to a billion users, he brings over a decade of production-oriented applied research experience on petabyte-scale datasets. He also coaches a team for Roborace, the Formula One championship of autonomous driving @200mph. His work in the AI for Good field, which IEEE has called 'life-changing', has received awards from CES, FCC, MIT, Cannes Lions, American Council of the Blind, showcased at events by UN, World Economic Forum, White House, House of Lords, Netflix, National Geographic, and lauded by world leaders including Justin Trudeau and Theresa May.

Course Outline

Module 1: Pratical strategies for CNN architecture deployement on mobile devices 

- Understand various strategies to circumvent obstacles and build mobile-friendly shallow CNN architectures that 

- How to significantly reduce the memory footprint and therefore make them easier 

- How to easily store CNN architectures on a smartphone 

- How to use family of model compression techniques to prune the network size for live image processing 

- How to build a CNN version optimized for inference on mobile devices

 - Learn practical strategies to preprocess your data in a manner that makes the models more efficient in the real world 

Module 2: Step by step example of building an iOS deep learning app 

- Tips and tricks, speed and accuracy trade-offs

- Benchmarks on different hardware to demonstrate how to get started developing your own deep learning application 

- Suitabllity for deployment on storage- and power-constrained mobile devices 

- How to apply similar techniques reducing the number of GPUs required and optimizing on cost

Background knowledge

  • This course is for current and aspiring Data Scientists, Deep Learning Engineers, AI Product Managers and Application Developers

  • Knowledge of following tools and concepts is useful:

  • Python

  • TensorFlow

  • Keras

Real-world applications

  • AI-powered financial assistant employ deep learning on mobile apps to create insights into your personal finances. Such an app is also developed by Bank of America

  • Fitness mobile apps with DL analyze data gathered from wearables, smartwatches, and fitness trackers, and the users receives personalized lifestyle advice

  • Healthcare mobile applications with ML have helped users to keep track of heart illnesses, diabetes, epilepsy, and migraines, and predict the possibility of one or other conditions