You are on page 1of 5

The 9th IEEE International Conference on Dependable Systems, Services and Technologies, DESSERT’2018

24-27 May, 2018, Kyiv, Ukraine

Integration of Neural Networks


Into Smart Sensor Networks
Ivan Lobachev1,2, Roman Maleryk1, Svitlana Antoschuk1, Denys Filiahin1 and Mykhaylo Lobachev1
1
ONPU, Odesa, Ukraine, 65044
2
Intel Corp., Vancouver BC, Canada

Abstract—Within the scope of sensor networks, there computing resource is connected to the system it would
exists a number of obstacles in the face of lower processing “inherit” the necessary knowledge and information from
power, if focusing on power consumption, as well as the other modules present. This approach would allow
maintenance and deployment issues when operating on a making the system more easily scalable, and as a result it
larger scale. Such issues as bandwidth availability as well as
would more easily deal with unexpected situations and
communication latency are also important factors to
consider. This article discusses a distributes sensor network more complex problems.
model that utilizes a low power approach along with neural
II. OVERVIEW OF RELATED WORK
networks to facilitate more wholesome local processing fro
faster responses as well as improve overall system efficiency. There are various ways can be accelerated using a
The physical deployment model used the Intel Movidius number of approaches, either by means of specialized
VPU modules and Raspberry Pi microcontrollers to hardware or via software optimization. Nowadays there
investigate and model the neural network integration. As are a number of processors and devices developed
part of the architecture, Caffe and TensorFlow frameworks
specifically to work with neural networks. Below is a
were used the most to process graphical and numerical data.
Certain abstraction layers had to be developed to facilitate
quick overview of currently present solutions. Mobileye
smoother horizontal communication between the units. The EyeQ is a specialized processor to accelerate machine
system was tested to operate with both graphical inputs such vision processing with the intended use lying in
as images or video feeds, as well as numerical information, autonomous vehicles. Google Tensor Processing Unit
such as analog sensor data. (Google TPU) is a tensor processor of the neural
Keywords—Neural Networks, Sensor Networks, Machine processing class, which is a specialized integral system
Learning, Deep Learning, Smart Sensors, Distributed developed by Google, and intended to be used in tandem
Systems, Low-Power Solutions, Scalable Architecture with the machine learning library TensorFlow, as part of
new approach development in big data processing. The
I. INTRODUCTION Intel Nervana Neural Network Processor (NNP) is the first
In today’s environment neural networks are finding commercially available tensor processor, which is
new applications in many branches of the industry. intended for training neural networks using deep learning.
However, while major solutions apply the cloud Another complimentary example to such an approach can
computing approach, where the data is funnelled to central be IBM TrueNorth, which is a neuromorphic processor,
servers for processing, this introduces issues of bandwidth implemented based on neuron interaction rather than
limitations, network access and latency when considered arithmetic modeling. Lastly in terms of hardware there is
in the context of larger scale data acquisition and the Intel Movidius Myriad 2 which is a multicore AI-
transducer networks. For example, a smart building may accelerator based on the VLIW (Very Long Instruction
wish to uphold the privacy of the collected data, while Word) architecture. With additional tie-ins for video
other tasks such as image and video processing would processing it serves as a basis for the Movidius Neural
require significant amounts of computational power. Compute Stick, a device that supports USB interface and
These sorts of tasks can greatly benefit from the use of a employs the technology of deep neural networks [1].
compact and smart data processing method, for large data Similarly, in terms of software there are a few prominent
sets or big data structures, as well as dynamic resource frameworks at the moment that were also employed in this
allocation or system expansion. Case-wise examples can work. They are the TensorFlow framework, which is an
include a situation where currently allocated system open source library for machine learning developed by
resource are insufficient for the presented task, may Google and aimed at establishing and training neural
require new classes of supplied information, graphical or networks, with the goal of automatic location and
otherwise, or simply a task that this particular system has classification of figures nearing perception levels close to
not dealt with before. In order to solve this problem the those of a human. The other framework that was used is
software layer, based on a neural network, would be Caffe (Convolution Architecture For Feature Extraction)
implemented in such a way that if a new device, or is a deep learning environment, developed by Yangqing

978-1-5386-5903-8/18/$31.00 ©2018 IEEE 544


Jia from Berkley [2]. Caffe is an open source platform, While in order to save time the basic dataset, for the
distributed under the BSD license. Being developedin sake of this particular example road sign recognition was
C++ and supporting python, it provides sufficient degree used as seen in Figure 1, can be found online, it can be
of versatility for a range of applications. Based on the further developed and increased by means of manipulating
analysis of the available resources and analogous existing data. The dataset also becomes more robust when
solutions, it was decided to use Rasperry Pi 3 as the the introduced variety includes higher presence of noise,
Microcontroller Node within the sensor network distortion and unusual angles.
prototype, and the Movidius NCS as the supporting
module for neural network related tasks. This combination
allows to demonstrate the aspects of both self-sufficient
processing power of small-scale nodes, which in turns also
greatly benefits mobility where necessary, as well as low
power consumption, with the Movidius module requiring
less than 1W of power. In addition, the overall cost per
unit would be noticeably less than similar alternatives,
given the requirement of local processing and cloud
porting avoidance is applied. Figure 1. Examples of graphics from the training dataset

III. IMAGE RECOGNITION AND GRAPHIC PROCESSING To perform image recognition, during the initial stages
CAPABILITY INTEGRAITON the classical Convolutional Neural Network (CNN) model
Computer vision allows to discover, analyze track and can be used, for example AlexNet Figure 2 [6] [7].
classify objects. However in many applications, the main
task is offloaded to a remote server, or may induce high
performance and monetary costs if done locally. A few
examples of applications include medicine, industrial
applications as well as in the military [3] [4] [5]. For
example, some of the most advanced systems are capable
of sending the missile to a given area, instead of a specific
target. Upon arrival the missile will locate the targets
locally, after navigating to the correct location based on
received video data. Another new area of application is
the autonomous vehicle industry, including submersible Figure 2. Network architecture illustration
vehicles, aircrafts as well as land-based vehicles such as
As a starting point for testing, the dataset from The
cars, trains and robots. In these applications the level of
German Traffic Sign Recognition Benchmark [8] was
autonomy can vary from fully autonomous, for example
used. However in the future other types of datasets, as
UAVs, to assistive where the machine vision data is used
well as developments to the current one are in progress.
to support the driver or pilot and is limited by the
application and available computing and power resources. To minimize the time needed to train a neural network, the
To test graphic processing capabilities being integrated method of adaptation and improvement of already
established network models using the Caffe framework is
into the structure, the above applications were considered
employed. The framework describes the network in a
and used as a basis for the testing example. Given the fact
specialized “prototxt” file format, where the layers are
that the compact size of RPi and Movidius NCS positively
described in a style similar to JSON, as seen in Figure 3.
impact their mobility capabilities, the nodes with the
added functionality could also be used in self-driving cars The trained network is stored under a “caffemodel” file
or traffic-based applications. As mentioned previously the extension.
low power consumption of the overall unit also positively
reflects on the viability of such application. In order to
validate the core functionality being integrated, the
following stages are used.
 Search and creation of the dataset to facilitate the
learning
 The training of the deep neural network
 Converting the input graphical flow (either static
images or video) into required format
 Graphical processing of the data using the neural
network based on Movidius NCS Figure 3. An example of a layer within the neural network

545
To implement the aforementioned system, with
The obtained prototxt and caffemodel files are required dynamic architecture, the following set-up structure was
to create the “graph” file, which is in turn an input file for established. A microntroller board consisting of a
the neural chip interface. The file can be generated using a Raspberry Pi, the Movidius NCS modules and the Emotiv
specialized utility “MyNCCompile”. In order to utilize the Epoc+, the graphical representation of the setup can be
established infrastructure for video feed processing, a few seen in Figure 5 below.
slight modifications need to take place. After the video
feed is routed to the network, the “categories” and graph
files need to be modified to reflect the names of classes
within the trained network, in the same order as during its
learning procedure. This process can be automated the
same way as the dataset generation. By running the
modified software in tandem with the Movidius NCS we
are able to recognize the road sign presented to the unit
via a video feed as can be seen in Figure 4.

Figure 5. The representative structure of the setup

As a sanity check reference point, to begin the


investigation of this application, the initial dataset was
obtained from an open source resource. The chosen
Figure 4. An example of the module at work with a video feed dataset contains raw EEG data, that was gathered using
the Emotiv Epoc+ which contains 14 electrodes
The above test allows us to verify the viability of use monitoring the points F7, F8, F3, F4, FC5, FC6, T7, T8,
of such a system within a wider scope. For example in the P3, P4, P7, P8, O1, O2. The action of interest was the
future a similar approach can be used to classify room state of the eyes, either open or closed, was externally
states, occurring events or item location using an ongoing measured using a camera concurrent to the continuous
video feed from existing surveillance systems or other EEG measurement and then physically supplemented to
image collection sources. the dataset, upon investigation of the obtained contour
signs. A binary output result was obtained where “1”
defines the eyes being closed and “0” them being open.
IV. PROCESSING COMPLEX NUMERICAL SENSOR DATA The set contains 14976 measurements, with 14 signals per
As an example to test the numerical data processing measurement each signal supplied by one channel of the
using neural networks, a complex signal source in the Emotiv helmet EEG sensor. The recording time was 117
form of EEG array was chosen. Nowadays there are e seconds while the discrete frequency was 128 Hz. The
number of devices, even outside of the medically available sample of the data across all sensors, and the resulting
equipment to obtain EEG data, such as for example neural signal can be found on the graph in Figure 7.
helmets that are used by the gaming industry. Usually
such a device would contain a combination of sensors
within, including not only an array of EEG electrodes but
also motion sensors and gyroscopes to track the head
motions in addition to brain activity and signals, this as a
result, allows the device to be used in a wide range of
applications. To provide a brief overview of possible
applications, a neural helmet could be used by people with
movement disabilities [9], medical practitioners to
monitor brain activity of the patient [10], or to monitor the
emotional state of the patient when, for example, verbal
communication may not be possible. Alternatively it could Figure 6. A sample spectrogram containing over 6592 records of
be the next generation of joystick controllers for games, data
according to recent trends [11].

546
Figure 7. The graph of the recorded signals

In this experiment a neural network was used to


construct the classifier of the eye state, while the
implementation method employed the TensorFlow
framework due to its affinity for numerical applications,
the necessary software used Python as the programming
language of choice for the implementation. While using
the data from the instrumental peripherals a perceptron
was constructed with the network structure of 14x40x1,
which demonstrated a 94% accuracy on the tested Figure 8. Representative structural diagram of the software
datasets. However, in order for the dynamic system to abstraction layer
utilize the benefits of the Movidius NCS, which is
optimized for use with CNN based networks, the above
numerical dataset needed to pass through a software
As will also be discussed later, including in Section V,
abstraction layer before entering the NCS hardware. This
this approach demonstrates the viability of use of
pre-processing involved converting the obtained data into
acceleration of processing of large numerical data sets
a spectrogram form in the frequency domain, by means of
using socialized hardware based on CNN architecture for
a Fourier transform, and post process the obtained data in
higher degree of adaptability to the acquired data, and
graphical form from that point on. The resulting data lies
malleability of the application itself.
in the spectrum of 0.5 Hz to 30 Hz, due to the fact that this
scope encompasses all of the data of interest, delta
rhythms (0.5-4 Hz), theta rhythms (4-8 Hz)as well as V. OVERALL ARCHITECTURE
alpha (8-13 Hz) and beta (13-30 Hz) rhythms. Such an
approach improves efficiency, as the processing would The overall architecture of the system would build on
occur in batches, for data collected over a period of 1-10 top of
seconds. It is worth noting that the measurement of each the established transducer network described in [12].
of the sensors is assumed to be independent, and this Each of the nodes is still able to function on a power
allows to also increase the dataset size for the training budget of less than 5W, even given the prototype nature of
stages. The conceptual architectural diagram of the component selection. Furthermore this power efficiency
software abstraction layer for the spectrogram conversion has the potential to be further improve by applying the
of numerical data, in this case using EEG as the data architecture to a more industry specialized application,
source, can be found in Figure 8. where singular integration as well as additional
As can be interpreted from earlier introduction of the developments in firmware with regards to power saving
added software abstraction layer used for preprocessing, it can further improve the overall power efficiency of the
can condense a large amount of information into a single units. Nevertheless, even within the current configuration
entity that can more optimally be used within the scope of each node now possesses the ability to individually
CNN based networks. An example of such a resulting process graphical data and large sets of complex
graphic can be found in Figure 6. The spectrogram was numerical data, which can allow to decrease the amount of
constructed using 6592 records of data from 16 separate nodes needed by simply raising the load on a smaller
sources. number of existing ones. As mentioned previously there is
also the possibility for further optimization of node

547
utilization and placement based on specific applications consideration the reduction of nodes necessary has also
and use model, however they will not be discussed in improved. The system has performed block level testing
detail within the scope of this work. The above described on the ability to perform graphical data analysis using the
structure will also further benefit from leveraging the architecture outlined in Section III as well as complex
network aspect of the architecture overall, as will be numerical data processing discussed in Section IV, which
described in Section VI. also included an incorporation of a software layer to
allow more versatile data inputs.
VI. FUTURE WORK
REFERENCES
Future development of the functionality introduced in this [1] M. H. Ionica and D. Gregg, “The movidius myriad architecture’s
work is currently encompassing the following: potential for scientific computing,” IEEE Micro, vol. 35, no. 1, pp.
6–14, 2015.
 Incorporating load distribution across multiple [2] Y. Jia, E. Shelhamer, J. Donahue, S. Karayev, J. Long, R.
NCS units Girshick, S. Guadarrama, and T. Darrell, “Caffe: Convolutional
 Integrating the video processing component into a architecture for fast feature embedding,” in Proceedings of the
more complex system 22nd ACM international conference on Multimedia. ACM, 2014,
pp. 675–678.
 Improving the dynamic resource allocation [3] A. Makaenko and V. Kalaida, “Technique of localization of face
 Improving the “shared networks” architecture image for the systems of videocontrol on the bases of neuronet,”
implementation Thompson Polytechnic University Journal, vol. 309, no. 8, 2006.
[4] G. J. Beach, G. Moody, J. Burkowski, and C. J. Jacobus, “Portable
The last point of the aforementioned list refers to the composable machine vision system for identifying projectiles,”
ability of our system to “share” the networks it has already Jan. 11 2018, uS Patent App. 15/675,763.
[5] M. Nielsen, “Using neural nets to recognize handwritten digits,”
trained previously with other nodes or units, if the unit Neural Networks and Deep Learning, 2015.
determines that it is undertaking a similar task. The [6] H.-C. Shin, H. R. Roth, M. Gao, L. Lu, Z. Xu, I. Nogues, J. Yao,
improvement to the obtained network may then be made D. Mollura, and R. M. Summers, “Deep convolutional neural
based on new data that is received, and an updated version networks for computer-aided detection: Cnn architectures, dataset
characteristics and transfer learning,” IEEE transactions on
of the network will be shared back via the “common medical imaging, vol. 35, no. 5, pp. 1285–1298, 2016.
library” function which is implemented by relying on the [7] R. Liao, A. Schwing, R. Zemel, and R. Urtasun, “Learning deep
network structure of the system, where the nodes are able parsimonious representations,” in Advances in Neural Information
to communicate internally without the need for external Processing Systems, 2016, pp. 5076–5084.
[8] J. Stallkamp, M. Schlipsing, J. Salmen, and C. Igel, “Man vs.
network connections. computer: Benchmarking machine learning algorithms for traffic
sign recognition,” Neural Networks, no. 0, pp. –, 2012. [Online].
VII. CONCLUSION Available:
http://www.sciencedirect.com/science/article/pii/S0893608012000
In conclusion, the nodes of the transducer network were 457
able to assimilate the ability to use neural network [9] J. Meng, S. Zhang, A. Bekyo, J. Olsoe, B. Baxter, and B. He,
approaches to process bigger volumes of more complex “Noninvasive electroencephalogram based control of a robotic
arm for reach and grasp tasks,” Scientific Reports, vol. 6, p.
data. Furthermore, by incorporating the Visual Processing 38565, 2016.
Units (VPUs) into the new architecture the nodes have [10] L. Yuan and J. Cao, “Patients’ eeg data analysis via spectrogram
gained the ability to perform more sophisticated analysis image with a convolution neural network,” in International
and decision making based on graphical data such as Conference on Intelligent Decision Technologies. Springer, 2017,
pp. 13–21.
static imaging or dynamic video feeds. The improved [11] F. Shir, “Mind-reading system-a cutting-edge technology,” Mind,
processing capability allows for the system to become vol. 6, no. 7, 2015.
more adaptable to different environment and more [12] I. Lobachev and E. Cretu, “Smart sensor network for smart
efficient in terms of necessary units to cover a specific buildings,” in Information Technology, Electronics and Mobile
Communication Conference (IEMCON), 2016 IEEE 7th Annual.
area or obtain a desired volume of data. Furthermore, the IEEE, 2016, pp. 1–7.
increased processing power aided by the neural network [13] F. Conti and L. Benini, “A ultra-low-energy convolution engine
integration adds less than 1W of power budget increase for fast brain-inspired vision in multicore clusters,” in Design,
per NCS [13], which means that the overall power Automation & Test in Europe Conference & Exhibition (DATE),
2015. IEEE, 2015, pp. 683–688.
efficiency of the system as a whole, taking into

548

You might also like