DEPARTMENT of INFORMATICS Evaluation of Machine Learning

Total Page:16

File Type:pdf, Size:1020Kb

DEPARTMENT of INFORMATICS Evaluation of Machine Learning DEPARTMENT OF INFORMATICS TECHNISCHE UNIVERSITÄT MÜNCHEN Bachelor’s Thesis in Informatics Evaluation of Machine Learning Inference Workloads on Heterogeneous Edge Devices Marco Rubin DEPARTMENT OF INFORMATICS TECHNISCHE UNIVERSITÄT MÜNCHEN Bachelor’s Thesis in Informatics Evaluation of Machine Learning Inference Workloads on Heterogeneous Edge Devices Evaluierung von Inferenzaufgaben für maschinelles Lernen auf heterogenen Edge-Geräten Author: Marco Rubin Supervisor: Prof. Dr. rer. nat. Martin Schulz Advisor: Dai Yang, Amir Raoofy Submission Date: 16th of March 2020 I confirm that this bachelor’s thesis in informatics is my own work and I have documented all sources and material used. Munich, 16th of March 2020 Marco Rubin Abstract Machine learning has traditionally been a thing of powerful computers and even supercomput- ers. Recent increases in computational power and the development of specialized architecture led to the possibility to perform machine learning, especially inference, on the edge. Those edge devices include small computers like the Nvidia Jetson Nano and accelerators like the Intel Neural Compute Sticks. In this thesis these devices and their respective frameworks are compared amongst each other and to an Apple MacBook Pro which represents a more traditional machine learning device. The comparisons are done by using an almost identical inference script across all platforms. The maximum possible throughput is also tested with tools specialized on the respective framework. Four models with a different number of convolutional layers were used to put a special emphasis on this kind of layer. The precision of the models dropped after the conversion to OpenVINO for the Neural Compute Sticks, but remained equally high on the other frameworks. Regarding performance, the MacBook was still the fastest device overall, but lost more performance proportionally to edge devices when used with an increasing number of convolutional layers. Amongst the edge devices, the Jetson Nano was the fastest, followed by the 2nd gen Neural Compute Stick and the 1st gen Neural Compute Stick. iii Contents Abstract iii 1 Introduction 1 1.1 Introduction . .1 1.2 A brief Overview of Neural Networks . .1 1.2.1 Structure . .1 1.2.2 Training . .2 1.2.3 Inferencing . .3 1.2.4 Layers . .3 1.3 Goal of the Thesis . .5 2 Implementation 6 2.1 Experiences . .6 2.2 Final Implementation . 10 2.2.1 Training . 10 2.2.2 Conversion to OpenVINO . 12 2.2.3 Inference . 12 2.2.4 Limitations of the Final Implementation . 13 3 Experiments 15 3.1 Setup . 15 3.1.1 Hardware . 15 3.1.2 Software . 17 3.2 Benchmarking Methods . 18 3.3 Limitations of the Benchmarking Methods . 19 4 Results 20 4.1 TensorFlow . 20 4.1.1 Results of the Evaluate Script . 20 4.1.2 Results of the Predict Script . 21 4.2 OpenVINO . 22 4.2.1 Results of the Benchmark App . 22 4.2.2 Results of the Predict Script . 23 4.3 ONNX Runtime . 24 4.4 Comparison of the Results between Frameworks . 25 4.4.1 Accuracy . 25 4.4.2 Runtimes . 26 iv Contents 5 Conclusion and Outlook 29 5.1 Conclusion . 29 5.2 Outlook . 30 List of Figures 31 List of Tables 32 Bibliography 33 v 1 Introduction 1.1 Introduction Since the last century, informatics has been a driving force for all kinds of related industries. However, in all that time, computers were not able to gain knowledge when processing data. Learning from experience is a typical human behaviour, enabling people to get better at their task. Machine learning tries to replicate this. It is believed to be able to solve problems in automatization, classification, recognition and many more domains. Its application field contains amongst others face recognition of specific persons in pictures and analyses of speech samples. Furthermore it can be used in robots to detect objects, or warn selfdriving cars when an obstacle is recognized. While the idea of machine learning is not new, the term has already been used in 1959 by Arthur Samuel while working at IBM [1], the ongoing development in processor technology made it increasingly useful for the variety of applications it is used today. These developments enabled the usage on increasingly smaller devices, in contrast to the supercomputers and workstations needed before. The latest target devices are the so called edge devices, which include small computers like the Raspberry Pi and Nvidia Jetson and accelerator devices like the Intel Movidius NCS, short for Neural Compute Stick [2]. Their market is quite heterogeneous as for many applications there is a specialised device. Edge devices do not possess the massive computing power of a supercomputer, but can provide real time data processing close to the destination. One of the application fields would be facial recognition performed decentralised close to the security camera. Because of the small size of an edge device, it could even be integrated into the security camera. 1.2 A brief Overview of Neural Networks The following introduction to neural networks covers the structure, the training process and in- ference of neural networks as well as a short explanation of different layers. As this thesis only uses classification neural networks, all the following explanation refers to this kind of network. 1.2.1 Structure A neural network consists of neurons which loosely resemble neurons of a brain [3]. Neurons use an input and an activation function to compute an output. They are aggregated in layers. Between layers, the neurons are connected with different weights as parameters. These 1 1 Introduction Figure 1.1: A simple neural network with three layers source: https://commons.wikimedia.org/wiki/File:Neural_network_example.svg weights model the probability that an edge is taken when a signal runs through the network. A higher value indicates a higher probability of taking the edge [4]. Networks consist of an input layer which handles the input, for example a picture, and an output layer which gives the probabilities for the respective classes. In between these layers there may be one or more hidden layers. In figure 1.1, each layer is indicated by a different colour, for example green for the input layer. The weights are indicated by the thickness of the arrows. The term Deep Learning is used when the network has more than one hidden layer [5]. 1.2.2 Training In the training process of a neural network, the network learns by predicting test data. For every sample the predicted result is compared to the provided label. If they match, the weights of used edges are increased or decreased if the opposite is the case. The input shape specifies the way data is presented to the network. For example, the input shape could specify batch size, height and width of the picture and the number of channels. The batch size specifies the number of samples which are processed simultaneously. After each batch, the weights of the network are updated [6]. Height and width of the picture specify the amount of pixel in the respective direction. The channel count depends on the colours of the picture. For example, an RGB picture would take three channels, while one in greyscale only requires one [7]. An epoch represents a training run over the whole input dataset. Typically, multiple epochs are used for training. More epochs most of the time lead to better results, but too many make the network prone to overfitting which leads to wore accuracy on unknown data as the network is too closely adapted to the training data. Accuracy is defined as the number of 2 1 Introduction correct predictions divided by the total number of predictions [8]. A trained neural network can be saved as a model which includes the nodes and edges as well as the weights. The model can later be loaded for further training or inference runs. 1.2.3 Inferencing Inferencing describes the process of using a previously trained network to make predictions on new data. Just like in the training process, the network is presented an input which it processes. Unlike in the training process, the output cannot be compared to a label to verify it. Instead the class with the highest probability is taken as the prediction of what the input is. More complex models often have higher accuracy but tend to be slower. Batching can also be used in inference to increase performance. 1.2.4 Layers Figure 1.2: Visual representation of one of the used models in this thesis 3 1 Introduction Neural networks consist of multiple layers which serve different purposes. Some of the most important ones are described below. Knowing the different layers and their impact on accuracy and inference times is crucial to understand the benchmark results in the following chapters of the thesis. In figure 1.2 the layers of the network are shown top-down. Additional parameters are in the boxes underneath the name of the layer. Convolutional layers One of the latest revolutions in neural networks was the introduction of convolutional layers. Their purpose is the extraction of features, such as the detection of edges, by considering smaller squares of a picture. This is done by sliding a smaller matrix, called filter, over the matrix representing the picture. The filter is filled with predefined values which describe the shape of the feature to be extracted. For each position of the filter the dot product is performed. This is shown in figure 1.3 where the blue lines refer to the multiplication of the elements of the input matrix and the filter. The green lines represent the addition of the previously multiplied values. The stride determines how many pixels the filter slides every time.
Recommended publications
  • SOL: Effortless Device Support for AI Frameworks Without Source Code Changes
    SOL: Effortless Device Support for AI Frameworks without Source Code Changes Nicolas Weber and Felipe Huici NEC Laboratories Europe Abstract—Modern high performance computing clusters heav- State of the Art Proposed with SOL ily rely on accelerators to overcome the limited compute power API (Python, C/C++, …) API (Python, C/C++, …) of CPUs. These supercomputers run various applications from different domains such as simulations, numerical applications or Framework Core Framework Core artificial intelligence (AI). As a result, vendors need to be able to Device Backends SOL efficiently run a wide variety of workloads on their hardware. In the AI domain this is in particular exacerbated by the Fig. 1: Abstraction layers within AI frameworks. existance of a number of popular frameworks (e.g, PyTorch, TensorFlow, etc.) that have no common code base, and can vary lines of code to their scripts in order to enable SOL and its in functionality. The code of these frameworks evolves quickly, hardware support. making it expensive to keep up with all changes and potentially We explore two strategies to integrate new devices into AI forcing developers to go through constant rounds of upstreaming. frameworks using SOL as a middleware, to keep the original In this paper we explore how to provide hardware support in AI frameworks without changing the framework’s source code in AI framework unchanged and still add support to new device order to minimize maintenance overhead. We introduce SOL, an types. The first strategy hides the entire offloading procedure AI acceleration middleware that provides a hardware abstraction from the framework, and the second only injects the necessary layer that allows us to transparently support heterogenous hard- functionality into the framework to enable the execution, but ware.
    [Show full text]
  • Intel® Deep Learning Boost (Intel® DL Boost) Product Overview
    Intel® Deep Learning boost Built-in acceleration for training and inference workloads 11 Run complex workloads on the same Platform Intel® Xeon® Scalable processors are built specifically for the flexibility to run complex workloads on the same hardware as your existing workloads 2 Intel avx-512 Intel Deep Learning boost Intel VNNI, bfloat16 Intel VNNI 2nd & 3rd Generation Intel Xeon Scalable Processors Based on Intel Advanced Vector Extensions Intel AVX-512 512 (Intel AVX-512), the Intel DL Boost Vector 1st, 2nd & 3rd Generation Intel Xeon Neural Network Instructions (VNNI) delivers a Scalable Processors significant performance improvement by combining three instructions into one—thereby Ultra-wide 512-bit vector operations maximizing the use of compute resources, capabilities with up to two fused-multiply utilizing the cache better, and avoiding add units and other optimizations potential bandwidth bottlenecks. accelerate performance for demanding computational tasks. bfloat16 3rd Generation Intel Xeon Scalable Processors on 4S+ Platform Brain floating-point format (bfloat16 or BF16) is a number encoding format occupying 16 bits representing a floating-point number. It is a more efficient numeric format for workloads that have high compute intensity but lower need for precision. 3 Common Training and inference workloads Image Classification Speech Recognition Language Translation Object Detection 4 Intel Deep Learning boost A Vector neural network instruction (vnni) Extends Intel AVX-512 to Accelerate Ai/DL Inference Intel Avx-512 VPMADDUBSW VPMADDWD VPADDD Combining three instructions into one UP TO11X maximizes the use of Intel compute resources, DL throughput improves cache utilization vs. current-gen Vnni and avoids potential Intel Xeon Scalable CPU VPDPBUSD bandwidth bottlenecks.
    [Show full text]
  • DL-Inferencing for 3D Cephalometric Landmarks Regression Task Using Openvino?
    DL-inferencing for 3D Cephalometric Landmarks Regression task using OpenVINO? Evgeny Vasiliev1[0000−0002−7949−1919], Dmitrii Lachinov1;2[0000−0002−2880−2887], and Alexandra Getmanskaya1[0000−0003−3533−1734] 1 Institute of Information Technologies, Mathematics and Mechanics, Lobachevsky State University 2 Department of Ophthalmology and Optometry, Medical University of Vienna [email protected], [email protected], [email protected] Abstract. In this paper, we evaluate the performance of the Intel Distribution of OpenVINO toolkit in practical solving of the problem of automatic three- dimensional Cephalometric analysis using deep learning methods. This year, the authors proposed an approach to the detection of cephalometric landmarks from CT-tomography data, which is resistant to skull deformities and use convolu- tional neural networks (CNN). Resistance to deformations is due to the initial detection of 4 points that are basic for the parameterization of the skull shape. The approach was explored on CNN for three architectures. A record regression accuracy in comparison with analogs was obtained. This paper evaluates the per- formance of decision making for the trained CNN-models at the inference stage. For a comparative study, the computing environments PyTorch and Intel Distribu- tion of OpenVINO were selected, and 2 of 3 CNN architectures: based on VGG for regression of cephalometric landmarks and an Hourglass-based model, with the RexNext backbone for the landmarks heatmap regression. The experimen- tal dataset was consist of 20 CT of patients with acquired craniomaxillofacial deformities and was include pre- and post-operative CT scans whose format is 800x800x496 with voxel spacing of 0.2x0.2x0.2 mm.
    [Show full text]
  • Dr. Fabio Baruffa Senior Technical Consulting Engineer, Intel IAGS Legal Disclaimer & Optimization Notice
    Dr. Fabio Baruffa Senior Technical Consulting Engineer, Intel IAGS Legal Disclaimer & Optimization Notice Performance results are based on testing as of September 2018 and may not reflect all publicly available security updates. See configuration disclosure for details. No product can be absolutely secure. Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more complete information visit www.intel.com/benchmarks. INFORMATION IN THIS DOCUMENT IS PROVIDED “AS IS”. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO THIS INFORMATION INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Copyright © 2019, Intel Corporation. All rights reserved. Intel, the Intel logo, Pentium, Xeon, Core, VTune, OpenVINO, Cilk, are trademarks of Intel Corporation or its subsidiaries in the U.S. and other countries. Optimization Notice Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations.
    [Show full text]
  • Accelerate Scientific Deep Learning Models on Heteroge- Neous Computing Platform with FPGA
    Accelerate Scientific Deep Learning Models on Heteroge- neous Computing Platform with FPGA Chao Jiang1;∗, David Ojika1;5;∗∗, Sofia Vallecorsa2;∗∗∗, Thorsten Kurth3, Prabhat4;∗∗∗∗, Bhavesh Patel5;y, and Herman Lam1;z 1SHREC: NSF Center for Space, High-Performance, and Resilient Computing, University of Florida 2CERN openlab 3NVIDIA 4National Energy Research Scientific Computing Center 5Dell EMC Abstract. AI and deep learning are experiencing explosive growth in almost every domain involving analysis of big data. Deep learning using Deep Neural Networks (DNNs) has shown great promise for such scientific data analysis appli- cations. However, traditional CPU-based sequential computing without special instructions can no longer meet the requirements of mission-critical applica- tions, which are compute-intensive and require low latency and high throughput. Heterogeneous computing (HGC), with CPUs integrated with GPUs, FPGAs, and other science-targeted accelerators, offers unique capabilities to accelerate DNNs. Collaborating researchers at SHREC1at the University of Florida, CERN Openlab, NERSC2at Lawrence Berkeley National Lab, Dell EMC, and Intel are studying the application of heterogeneous computing (HGC) to scientific prob- lems using DNN models. This paper focuses on the use of FPGAs to accelerate the inferencing stage of the HGC workflow. We present case studies and results in inferencing state-of-the-art DNN models for scientific data analysis, using Intel distribution of OpenVINO, running on an Intel Programmable Acceleration Card (PAC) equipped with an Arria 10 GX FPGA. Using the Intel Deep Learning Acceleration (DLA) development suite to optimize existing FPGA primitives and develop new ones, we were able accelerate the scientific DNN models under study with a speedup from 2.46x to 9.59x for a single Arria 10 FPGA against a single core (single thread) of a server-class Skylake CPU.
    [Show full text]
  • Deploying a Smart Queuing System on Edge with Intel Openvino Toolkit
    Deploying a Smart Queuing System on Edge with Intel OpenVINO Toolkit Rishit Dagli Thakur International School Süleyman Eken ( [email protected] ) Kocaeli University https://orcid.org/0000-0001-9488-908X Research Article Keywords: Smart queuing system, edge computing, edge AI, soft computing, optimization, Intel OpenVINO Posted Date: May 17th, 2021 DOI: https://doi.org/10.21203/rs.3.rs-509460/v1 License: This work is licensed under a Creative Commons Attribution 4.0 International License. Read Full License Noname manuscript No. (will be inserted by the editor) Deploying a Smart Queuing System on Edge with Intel OpenVINO Toolkit Rishit Dagli · S¨uleyman Eken∗ Received: date / Accepted: date Abstract Recent increases in computational power and the development of specialized architecture led to the possibility to perform machine learning, especially inference, on the edge. OpenVINO is a toolkit based on Convolu- tional Neural Networks that facilitates fast-track development of computer vision algorithms and deep learning neural networks into vision applications, and enables their easy heterogeneous execution across hardware platforms. A smart queue management can be the key to the success of any sector. In this paper, we focus on edge deployments to make the Smart Queuing System (SQS) accessible by all also providing ability to run it on cheap devices. This gives it the ability to run the queuing system deep learning algorithms on pre-existing computers which a retail store, public transportation facility or a factory may already possess thus considerably reducing the cost of deployment of such a system. SQS demonstrates how to create a video AI solution on the edge.
    [Show full text]
  • Bigdl: Distributed Deep Leaning on Apache Spark Using Bigdl
    Analytics Zoo: Distributed Tensorflow, Keras and BigDL in production on Apache Spark Jennie Wang, Big Data Technologies, Intel Strata2019 Agenda • Motivation • BigDL • Analytics Zoo • Real-world applications • Conclusion and Q&A Strata2019 Motivations Technology and Industry Trends Real World Scenarios Strata2019 Trend #1: Data Scale Driving Deep Learning Process “Machine Learning Yearning”, Andrew Ng, 2016 Strata2019 Trend #2: Real-World ML/DL Systems Are Complex Big Data Analytics Pipelines “Hidden Technical Debt in Machine Learning Systems”, Sculley et al., Google, NIPS 2015 Paper Strata2019 Trend #3: Hadoop Becoming the Center of Data Gravity Phillip Radley, BT Group Matthew Glickman, Goldman Sachs Strata + Hadoop World 2016 San Jose Spark Summit East 2015 Strata2019 Unified Big Data Analytics Platform Apache Hadoop & Spark Platform Machine Graph Spreadsheet Leaning Analytics SQL Notebook Batch Streaming Interactive R Java Python DataFrame Flink Storm Data ML Pipelines Processing SQL SparkR Streaming MLlib GraphX & Analysis Spark Core MR Giraph Resource Mgmt YARN ZooKeeper & Co-ordination Data Flume Kafka Storage HDFS Parquet Avro HBase Input Strata2019 Chasm b/w Deep Learning and Big Data Communities The Chasm Deep learning experts Average users (big data users, data scientists, analysts, etc.) Strata2019 Large-Scale Image Recognition at JD.com Strata2019 Bridging the Chasm Make deep learning more accessible to big data and data science communities • Continue the use of familiar SW tools and HW infrastructure to build deep learning
    [Show full text]
  • Bigdl, for Apache Spark* Openvino, Ray* and Apache Spark*
    Cluster Serving: Distributed and Automated Model Inference on Big Data Streaming Frameworks Authors: Jiaming Song, Dongjie Shi, Qiyuan Gong, Lei Xia, Jason Dai Outline Challenges AI productions facing Integrated Big Data and AI pipeline Scalable online serving Cross-industry end-to-end use cases Big Data & Model Performance “Machine Learning Yearning”, Andrew Ng, 2016 *Other names and brands may be claimed as the property of others. Real-World ML/DL Applications Are Complex Data Analytics Pipelines “Hidden Technical Debt in Machine Learning Systems”, Sculley et al., Google, NIPS 2015 Paper *Other names and brands may be claimed as the property of others. Outline Challenges AI productions facing Integrated Big Data and AI pipeline Scalable online serving Cross-industry end-to-end use cases Integrated Big Data Analytics and AI Seamless Scaling from Laptop to Distributed Big Data Prototype on laptop Experiment on clusters Production deployment w/ using sample data with history data distributed data pipeline Production Data pipeline • Easily prototype end-to-end pipelines that apply AI models to big data • “Zero” code change from laptop to distributed cluster • Seamlessly deployed on production Hadoop/K8s clusters • Automate the process of applying machine learning to big data *Other names and brands may be claimed as the property of others. AI on Big Data Distributed, High-Performance Unified Analytics + AI Platform Deep Learning Framework for TensorFlow*, PyTorch*, Keras*, BigDL, for Apache Spark* OpenVINO, Ray* and Apache Spark* https://github.com/intel-analytics/bigdl https://github.com/intel-analytics/analytics-zoo Seamless Scaling from Laptop to Distributed Big Data *Other names and brands may be claimed as the property of others.
    [Show full text]
  • Intel® Openvino™ with FPGA Support Through the Intel FPGA Deep Learning Acceleration Suite
    SOLUTION BRIEF Intel® OpenVINO™ with FPGA Support Through the Intel FPGA Deep Learning Acceleration Suite Intel® FPGA Deep Learning Acceleration Suite enables Intel FPGAs for accelerated AI optimized for performance, power, and cost. Introduction Artificial intelligence (AI) is driving the next big wave of computing, transforming both the way businesses operate and how people engage in every aspect of their lives. Intel® FPGAs offer a hardware solution that is capable of handling extremely challenging deep learning models at unprecedented levels of performance and flexibility. The Intel OpenVINO™ toolkit is created for the development of applications and solutions that emulate human vision, and it provides support for FPGAs through the Intel FPGA Deep Learning Acceleration Suite. The Intel FPGA Deep Learning Acceleration Suite is designed to simplify the adoption of Intel FPGAs for inference workloads by optimizing the widely used Caffe* and TensorFlow* frameworks to be applied for various applications, including image classification, computer vision, autonomous vehicles, military, and medical diagnostics. Intel FPGAs offer customizable performance, customizable power, deterministic low latency, and flexibility for today’s most widely adopted topologies as well as programmability to handle emerging topologies. Unique flexibility, for today and the future, stems the ability of Intel FPGAs to support emerging algorithms by enabling new numeric formats quickly. What makes FPGAs unique is its ability to achieve high performance through parallelism coupled with the flexibility of hardware customization – which is not available on CPU, GPU, or ASIC architectures. Turnkey Solution Offers Faster Time to Market The Intel Programmable Acceleration Card with Intel Arria® 10 GX FPGA (Intel PAC with Intel Arria 10 GX FPGA) combined with the Intel FPGA Deep Learning Acceleration Suite offer an acceleration solution for real-time AI inference with low latency as a key performance indicator.
    [Show full text]
  • Intel® Distribution of Openvino™ Toolkit Dr
    Intel® Distribution of OpenVINO™ toolkit Dr. Séverine Habert, Deep Learning Software Engineer April 9th, 2021 AI Compute Considerations How do you determine the right computing for your AI needs? Workloads requirements demand ASIC/ 1 FPGA/ GPU CPU 2 3 Utilization Scale What is my What are my use case How prevalent is AI workload profile? requirements? in my environment? Intel® Distribution of OpenVINO™ toolkit / Product Overview 2020 © Copyright, Intel Corporation 2 Intel® Distribution of OpenVINO™ Toolkit ▪ Tool Suite for High-Performance, Deep Learning Inference ▪ Fast, accurate real-world results using high-performance, AI and computer vision inference deployed into production across Intel® architecture from edge to cloud High-Performance, Streamlined Development, Write Once, Deep Learning Inference Ease of Use Deploy Anywhere • Enables deep learning inference from the edge to cloud. • Supports heterogeneous execution across Intel accelerators, using a common • Speeds time-to-market through an easy-to-use library of CV functions and pre- API for the Intel® CPU, Intel® Integrated Graphics, Intel® Gaussian & Neural optimized kernels. Accelerator, Intel® Neural Compute Stick 2, Intel® Vision Accelerator Design with • Includes optimized calls for CV standards, including OpenCV* and OpenCL™. Intel® Movidius™ VPUs. Intel® Distribution of OpenVINO™ toolkit / Product Overview 2020 © Copyright, Intel Corporation 3 Three steps for the Intel® Distribution of OpenVINO™ toolkit 1 Build 2 Optimize 3 Deploy Model Server Read, Load, Infer gRPC/ REST Server with C++ backend Model Optimizer Inference Engine Converts and optimizes Intermediate Common API that IR Data Deployment Manager trained model using a Representation abstracts low-level supported framework (.xml, .bin) programming for each hardware Trained Model Deep Learning Streamer Post-Training Optimization Tool Reduces model size into low- precision without re-training OpenCV OpenCL™ [NEW] Deep Learning Workbench Code Samples & Demos Open Model Zoo Visually analyze and fine-tune (e.g.
    [Show full text]
  • Download The
    Cloudera Fast Forward Labs Deep Learning for Image Analysis 2019 Edition 03 Cloudera Fast Forward Labs Deep Learning for Image Analysis 2019 Edition Copyright © 2019 by Cloudera Fast Forward Labs http://fastforwardlabs.com New York, NY To the future— Contents 1 Introduction 7 What Can Deep Learning Do? 8 The Risks 8 Image Analysis Use Cases 10 2 Background 15 Deep Learning for Image Analysis: A Brief Background 15 Reusing Representations Learned by CNNs: Transfer Learning 18 Hardware Developments 19 The Evolving Field 20 3 Applied Image Analysis: Tasks and Models 23 Supervised Learning Tasks 23 Unsupervised Learning Tasks 28 Picking a Good Model: Accuracy vs. Latency 30 4 Interpreting Models 35 Visualization Methods 36 Attribution Methods 38 Open Source Libraries for Model Interpretability 40 5 Prototype 43 Semantic Search 43 Model Explorer 49 Emergent Design Principles 50 Implementation Details 52 Beyond the Prototype 53 6 Deep Learning in Industry Today 55 Deep Learning for Image Analysis as a Service 55 Open Source Neural Network Libraries 56 ML in the Browser 60 Abstractions on Top of Deep Learning Libraries 61 Choosing a Deep Learning Framework 63 Repositories for Pretrained ML Models 64 Deep Learning for Image Analysis Products 65 7 Ethics 67 Training Dataset Bias 67 Privacy 69 Manipulating Reality 71 Environmental Considerations 73 8 Future 75 From Supervised to Unsupervised Learning 75 From Complex Networks to Simpler Networks 76 External Factor Training of Deep Learning: Image Anal- ysis Systems 77 Evolving Hardware 78 Sci-f Story: What the Eyes Can See 79 9 Conclusion 85 chapter 1 Introduction There has been an explosion of industry interest in deep learning in the last fve years, in particular in image anal- ysis (IA), making this area of machine learning even more relevant to enabling operations and creating diferentiation in business activities today.
    [Show full text]
  • Intel Openvino Video Inference on the Edge
    Intel OpenVINO Video Inference on the Edge Igor Freitas Notices and Disclaimers Intel technologies’ features and benefits depend on system configuration and may require enabled hardware, software or service activation. Performance varies depending on system configuration. No computer system can be absolutely secure. Check with your system manufacturer or retailer or learn more at www.intel.com. Performance results are based on testing as of Aug. 20, 2017 and may not reflect all publicly available security updates. See configuration disclosure for details. No product can be absolutely secure. Cost reduction scenarios described are intended as examples of how a given Intel-based product, in the specified circumstances and configurations, may affect future costs and provide cost savings. Circumstances will vary. Intel does not guarantee any costs or cost reduction. This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps. Any forecasts of goods and services needed for Intel’s operations are provided for discussion purposes only. Intel will have no liability to make any purchase in connection with forecasts published in this document. ARDUINO 101 and the ARDUINO infinity logo are trademarks or registered trademarks of Arduino, LLC. Altera, Arria, the Arria logo, Intel, the Intel logo, Intel Atom, Intel Core, Intel Nervana, Intel Saffron, Iris, Movidius, OpenVINO, Stratix and Xeon are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others.
    [Show full text]