Article | REF: H3730 V1

Introduction to Neural Networks

Authors: Daniel ETIEMBLE, Fabrice AUZANNEAU

Publication date: March 10, 2023

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


Overview

Français

ABSTRACT

This article is an introduction to neural networks. After a brief history, the artificial neuron is presented with the different activation functions. The principle of networks is introduced with the learning and inference steps. The single layer perceptron with examples for the implementation of logical AND and OR functions, then the multilayer perceptron are introduced, with the principles of gradient backpropagation algorithms for updating the weights of neurons. The characteristics of deep neural networks are presented, including convolutional networks (CNN) and recurrent networks. The implementation of neural networks is discussed: programming techniques with libraries such as TensorFlow and hardware support (neural processors, specialized hardware operators, reduced data formats, etc.). The features enabling the use of neural networks for embedded applications are presented.

Read this article from a comprehensive knowledge base, updated and supplemented with articles reviewed by scientific committees.

Read the article

AUTHORS

 INTRODUCTION

Inspired by the workings of neurons in the brain, artificial neural networks were defined in the 1940s. The perceptron was introduced in 1957, followed by the multilayer perceptron in 1986. They disappeared from the news for a while, before coming back to the fore in the 2000s with deep neural networks.

The artificial neuron is presented, with its various activation functions. The operation of the single-layer perceptron is presented, with examples of the implementation of logical OR and AND functions, as well as its limitations. The characteristics of multilayer perceptrons are detailed, including the principles of gradient backpropagation, which enables the weights of neurons in different layers to be updated.

Deep neural networks marked a milestone in the development and use of neural networks. Convolutional neural networks (CNNs) are described in detail; the convolution and pooling layers precede the fully connected layers that enable data sizes to be restricted by extracting simple spatial features (such as contours), which subsequent layers combine to form more complex, abstract concepts: assembling contours into patterns, patterns into parts of objects, parts of objects into objects, and so on. This enables thousands of different configurations to be used as network inputs. The characteristics of recurrent networks, enabling recognition of input sequences, are also presented.

The implementation of neural networks has both software and hardware aspects:

  • programming. Software libraries such as TensorFlow, Caffee, Torch and PyTorch can be used on multi-core CPUs with or without GPUs. The various operations are defined in the form of a graph: program execution places the various operations on CPU, GPU or any other specific processor or gas pedal and defines the methods for their execution;

  • hardware support. Specialized hardware operators (convolution, pooling) are available as IPs for systems-on-a-chip (SoCs); neural processors are available (ARM neural processors, Google TPUs). In addition, reduced data formats such as 16-bit floats are integrated into neural processors or GPUs to reduce memory footprint and power consumption, and accelerate calculations.

Neural networks are increasingly used in embedded applications. The constraints of embedded components mean that the networks used have to be reduced and optimized. Four techniques are possible:

  • network simplification/optimization: reduce the number of layers to reduce the number of parameters;

  • pruning: reducing the size of a network by removing some of its parameters;

  • ...
You do not have access to this resource.

Exclusive to subscribers. 97% yet to be discovered!

You do not have access to this resource.
Click here to request your free trial access!

Already subscribed? Log in!


The Ultimate Scientific and Technical Reference

A Comprehensive Knowledge Base, with over 1,200 authors and 100 scientific advisors
+ More than 10,000 articles and 1,000 how-to sheets, over 800 new or updated articles every year
From design to prototyping, right through to industrialization, the reference for securing the development of your industrial projects

KEYWORDS

learning   |   neural network   |   perceptron   |   inference   |   convolutional network   |   recurrent network   |   ,neural networks implementation   |   NN for embedded


This article is included in

Software technologies and System architectures

This offer includes:

Knowledge Base

Updated and enriched with articles validated by our scientific committees

Services

A set of exclusive tools to complement the resources

Practical Path

Operational and didactic, to guarantee the acquisition of transversal skills

Doc & Quiz

Interactive articles with quizzes, for constructive reading

Subscribe now!

Ongoing reading
Introduction to neural networks