<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>The system of convolution neural networks automated training Vladislav A. Sobolevskiia</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>th line V.O.</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>St. Petersburg</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Russia</string-name>
        </contrib>
      </contrib-group>
      <fpage>100</fpage>
      <lpage>106</lpage>
      <abstract>
        <p>In this paper the research related to the creation of a program complex, which realizes the automated generation of service-programs for the artificial intelligence systems based on the convolution neural networks is presented. The presented program complex to accelerate and simplify the generation and training of convolutional neural networks.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Machine learning</kwd>
        <kwd>convolutional neural networks</kwd>
        <kwd>service-oriented architecture</kwd>
        <kwd>internet of things</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        In modern world the recognition
technologies of photo and video images are
being implemented more intensively. The
development of this sphere became possible
due to the appearance of new convolution
neural network (CNN) architectures and the
modification of existing ones. The given type of
architecture turned out to be successful enough
for solving the tasks of image analysis,
segmentation and semantic recognition. The
higher the CNN accuracy and capabilities are,
the more complex CNN become. Some of the
most successful and widespread CNN
architectures at the moment have a plenty of
heterogeneous layers [
        <xref ref-type="bibr" rid="ref1 ref2 ref3">1-3</xref>
        ]. This leads not only
to the increase of work quality, but to the
complication in creating and training such
networks.
      </p>
      <p>At the same time, the number of tasks that
can be solved using CNN rises. The given tasks
not always demand the application of the most
complex and foremost CNN architectures, but
they are still quite difficult and regular users
without any knowledge of deep learning
methods and their implementation skills would
not be able to create and adapt these networks
correctly. It can be said that the quantity of such
tasks is growing faster than the number of
professionals capable of solving them.</p>
      <p>
        This leads to the fact that the task of creating
the systems of CNN generation automation
process for one or the other spheres is becoming
very relevant [
        <xref ref-type="bibr" rid="ref4 ref5 ref6">4-6</xref>
        ]. At the same time, the
demand for a system suitable for solving typical
tasks from different spheres is becoming more
acute. There are many tasks of one class (for
example, the recognition of certain tree species
in space images, landscape peculiarities,
specific nature objects etc), the solving
principle of which has been already discovered
or they are being handled on the basis of an
individual CNN production [
        <xref ref-type="bibr" rid="ref7 ref8 ref9">7-9</xref>
        ] or not being
solved at all due to the lack of specialists.
      </p>
      <p>Additionally, a lot of CNNs are produced in
forms of program prototypes (for instance,
using MatLab) and such prototypes require
improvement for implementing into the
existing monitoring systems which are
designed at specific stacks of applied
programming languages (C++, Java, Python
etc). In its turn, this makes the further
development and the following implementation
of prototypes more complicated.</p>
      <p>
        For solving the given tasks, the system of
convolution neural networks automated
training was designed based on the
serviceoriented approach within the project presented
in this article. The approach of artificial neural
networks automated generation is not new and
there are some works upon this topic [
        <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13">10-13</xref>
        ].
All these works point to the fact that the
automation of machine learning models
production process will allow to fasten the
process of developing program products for
solving a multitude of tasks. The system
described in the article elaborates the idea of
automation and has module extensible structure
which allows to add and combine trainable
architectures, training algorithms, data
normalization, validation etc. Moreover, due to
genetic algorithms, the given system is capable
of automated CNN generating and training
which allows non-professionals who are not
aware of neural networks setting details to use
it for solving typical tasks. The work result of
this system is not only a built architecture, but
a generated executable file with additional
REST and SOAP wrappings that without any
preliminary preparations will allow to start the
produced CNN as a service and apply to it from
other systems and program complexes. This
presents the system as a tool for a quick and
effortless solving of simple typical tasks by
regular users.
      </p>
      <p>
        By present time, the designed system had
already been used for generating simple deep
neural networks that were introduced into
thirdparty program products for solving specific
applied tasks [
        <xref ref-type="bibr" rid="ref14 ref15">14-15</xref>
        ]. In suggested article the
capabilities of the given program complex
which were improved using CNN automated
training are described.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. The service-oriented approach in neural networks automation generation</title>
      <p>
        The service-oriented architecture (SOA) of
applications implies a module approach to the
program application development [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. In the
considered situation the given paradigm is
implemented at several levels.
      </p>
      <p>At the level of the program complex itself
SOA maintains the modularity and
interchangeability of CNN generation and
training algorithms. Thus, the whole process of
automated generation and training is divided
into some consecutively evoked program
modules:
• the input data normalization module;
• the generation module of chosen CNN
or the module of pre-trained CNN
architecture initialization;
• the CNN training module (including
verification and validation submodules).</p>
      <p>Each of these modules is presented in
several realization variants (for various CNN
architectures) and certain realizations are
chosen depending on the requirements. In
addition, these modules are evoked from an
external automated training module (it is
currently implemented on the basis of a genetic
algorithm) which was developed with an
expectation of changeability. The other
algorithms of solution search can be used
instead of it and there is no need to make
significant modifications to other modules for
the use of these algorithms.</p>
      <p>This approach is based on the principles of
transparency and scalability which allows to
expand the program product functionality by
adding new modules, not by modifying the
existing ones.</p>
      <p>It is obvious that the given approach would
not allow to implement the automated training
of all possible CNN architectures. However, the
generation and training processes of typical
architectures have a precise and consecutive
algorithm. Having implemented the given
algorithm in the program complex it would be
possible to solve the task of typical neural
network solutions streaming (conveyor)
implementation as the main one.</p>
      <p>The service-oriented approach in the
developed program complex occurs in the fact
that all modules should not be necessarily
installed to one and the same personal computer
(PC). Modules can be distributed between
different PCs or placed in cloud storages. Thus,
the given program complex can be
implemented in the form of a distributed system
that blends into the SOA paradigm completely.</p>
      <p>
        At the program product operation result
level SOA is maintained by the implementation
of autonomous service containing CNN trained
to solve a specific task. This service is
crossplatformed and it can be launched without any
prior installing and additional software setting
on the basis of some operation systems (which
is possible due to the cross-platform of the
given modules implementation language
Python [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]). Respectively, such module can be
used in the systems maintaining both SOA
paradigm and the Internet of Things (IoT) via
interfaces REST and SOAP [
        <xref ref-type="bibr" rid="ref18 ref19 ref20">18-20</xref>
        ].
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. The algorithm of convolution neural networks automated training</title>
      <p>The difficulty in CNN production and
training lies in the fact that they are being
trained only having a marked training dataset
which describes the class of recognizable
objects. The recognition of different object
classes requires various CNN architectures and
their parameter settings. Due to the CNN
complexity this task becomes very
resourceintensive.</p>
      <sec id="sec-3-1">
        <title>This is one of the CNN key</title>
        <p>
          restrictions of CNN trained with a teacher. Now
the approach which consists in multitasking
CNN creation for different science fields that
can solve the whole class of tasks is often used
selected objects. However, the development of
each of these CNNs is more resource-intensive
and demands participation of specialists able to
project the architectures of such networks. The
alternative solution described in this article is
the automated training of models. This kind of
solution implies simultaneous training of some
CNNs based on prepared information dataset
for the following situational choice of the most
precise model which leads to the necessity to
solve
the
task
of
models
parametrical
adaptation quality assessment. At the same
time, the formation task of training dataset in
common
case
does
not
require
special
knowledge [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ]. The automated system (AS)
described in the article is relevant in such cases
when the development of a wholesome CNN
able to solve the task in the most accurate way
is unprofitable. Using this system, it is possible
to create CNN able to solve the assigned task
cheaper and faster with an accuracy specified
by user.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>The algorithm of CNN selection was</title>
        <p>implemented in the following way:
1.</p>
        <p>CNN</p>
        <p>In the first parent population a fixed
number
(M)
is
generated
with
randomly set parameters.</p>
        <p>Nd of new</p>
        <p>CNNs is generated, the
parameters of which are selected randomly
out of two occasionally
chosen
parent
CNNs, and also Nr of CNN, the parameters
which are set completely randomly
considering the given value ranges for these
the</p>
        <p>CNN
selection</p>
        <p>is
the
roulette
method
parameters.
performed</p>
        <p>
          using
(formula 1) [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ]
  =



∑ =1  
,
(1)
where pi is the choice probability of i-CNN,
fi is the value of fitness function for i-CNN,
N is the quantity of CNN in population. The
roulette method was chosen as the most
universal one, because the algorithm is
supposed to be used for different classes of
tasks.
algorithms
        </p>
        <p>Although
would
the</p>
        <p>use
have
of</p>
        <p>specific
fastened
the
operation speed for some task classes, but it
inevitably would have slowed the operation
speed for other classes. The inaccuracy
estimation calculated
using</p>
        <p>CNN target
parameter value relatively to the real value
of a test dataset (formula 2) lies in the basis
of the fitness function
(2)

 =
1


√  =1(  −   )2
∑
where εij is the output value of a target
parameter, which was forecast by i-network
in response to an input test j-vector, ωj is the
real value of a test dataset in response to an
input test j-vector, X is the quantity of test
vectors.</p>
        <p>The result of a calculation according to the
given formula is a "fitness level" value,
which is inversely proportional to the mean
squared error of i-CNN at the test dataset. As
a result of selection, M is selected to the
current generation out of (M + Nd + Nr)
CNN with the maximum pi value (choice
probability of i-CNN).
4.</p>
        <p>For all CNN the mean squared error of
the target parameter value calculated by
them relatively to the real test dataset value
is computed. If at least one CNN shows the
mean squared error lower than the set value,
the cycle stops. The CNN with the lowest
mean squared error is treated as a "winner".
Otherwise, the return to point 2 takes place.
In addition, the population of each iteration
is stored separately. If the population of a
current iteration coincides completely with a
previous population, it means that during all
iteration the CNN configuration with the
most accuracy has not been found and the
unconditional transition to step 5 is carried
out.
5.</p>
        <p>If a CNN with the mean squared error
lower than the set value is not found, the
cycle launches from the step 1 with a new
parent population, for which new random
parameter values are set. If the solution is
not found after I iteration, the task is
declared to be unsolvable with specified
settings and the output from the algorithm is
performed.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Technologies used in developed program complex the</title>
      <p>
        This program complex is developed in
programming language Python, the main assets
of which relate to its cross-platform,
extensibility and large amount of sided program
libraries used for solving specified tasks. The
suggested programming language was chosen
because at the moment it happens to be the main
solution for deep learning systems development
and also because it allows to realize SOA
paradigm easily [
        <xref ref-type="bibr" rid="ref26 ref27">26, 27</xref>
        ]. Keras and
TensorFlow libraries are used for training
algorithms implementation.
      </p>
      <p>Such stack of technologies is explained by
the fact that the program does not face the
implementation task of untypical solutions. On
the contrary, the quick realization of already
known architectures is required. The use of
already developed, tested and optimized
libraries satisfies the set task completely. At the
same time, the key requirements are
extensibility and scalability. Respectively, the
program complex realization on the basis of a
constantly extending program platform will
allow to add new CNN architectures and their
work tools at the cost of one program interface.
The cross-platform of the described stack and
the support of SOA paradigm will allow to scale
the program complex to different hardware.</p>
      <p>
        It is important to mention separately that
CUDA SDK is also included in the used
program libraries, which allows to exploit
hardware acceleration during artificial neural
network training using NVidia video cards [
        <xref ref-type="bibr" rid="ref28 ref29">28,
29</xref>
        ]. The use of this technology makes the
process of CNN training significantly faster
[
        <xref ref-type="bibr" rid="ref30">30</xref>
        ].
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. The approbation of automated convolution neural network training program complex</title>
      <p>
        For approbation of the program complex
prototype performing additional training of
Mask R-CNN (MRCNN) CNN architecture
trained on COCO dataset was developed. The
given configuration was chosen because of the
balance between universality and accuracy
[
        <xref ref-type="bibr" rid="ref31">31</xref>
        ]. By default, MRCNN is already capable of
recognizing fundamentally different object
classes, from automobiles to animals. That is
why, by proper additional training, it would be
able to recognize a wide range of objects that
are not included into COCO dataset.
      </p>
      <p>The program complex was tested on the
calculation task of the amount of deer in a herd
from air photography. Besides the fact that deer
do not belong to the COCO dataset and
MRCNN is not able to distinguish them by
default from the range of other creatures (sheep,
gazelles, cows, horses), the specificity of this
task has something to do with the fact that
photos are made from various angles and
distances, at different landscapes and during all
seasons, which result in the fact that deer can be
shot under different angles, in various scales
and can have diverse colouring. What is more,
due to the size of herds, deer often cover one
another in photos. This leads to the fact that the
described task in non-trivial and the application
of CNN trained at common amount of data is
impossible. In figure 1 the recognition results of
one out of two images using MRCNN without
additional training are shown.</p>
      <p>It can be noted that there are plenty of false
negative errors evoked by the COCO dataset
specificity, in which there is an insufficient
number of images with similar scaling of
objects. To get rid of false operations, it is
required to train the network using images
marked for the specified task. That is why
MRCNN was additionally trained using the
CNN automated training system prototype. The
training was conducted in the automated mode
based on the training dataset specified by a user.
The following parameters of a training process
were varied in the prototype:
• the quantity of training epochs;
• the quantity of training steps in each
epoch;
• the speed of training;
• the threshold of detection skipping.</p>
      <p>The CNN declared to be the winner by a
system was trained on 3 epochs, with 53
training steps in each, 0,0058 training speed and
0,86 threshold of detection skipping. The
described network for the same image
recognized correctly 58 out of 93 deer and did
not perform any false negative error (figure 2).</p>
      <p>Of course, the trained CNN did not reach the
maximum possible accuracy, but it can be
improved in the future. What is more, the
recognition accuracy may be increased by using
the other CNN architectures. But the prototype
testing can be considered successful because
program and service coverages were generated
for additionally trained MRCNN which will
allow to use the received CNN for solving the
set task right away. Due to the unified interface,
it will be possible to perform the
implementation of the most accurate CNNs in
the future. Even if in the following versions a
different CNN architecture is used, the program
and service coverage interface will not change,
and it will not be required to introduce changes
into the programs at the client side.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusion</title>
      <p>Nowadays, the program complex is at its
prototype stage and it is used for the
development of some off-site applications. First
of all, to start the full operation the
improvement of user application interface is
needed. As at the prototyping step the product
is used by specialists in machine learning, the
current interface is not adapted for using by
regular users. Because of this, the accessibility
for the wide user audience which is one of the
key tasks facing the program complex is not
being solved at the moment.</p>
      <p>In addition, because of the
highperformance requirements, during the given
program product functioning the program
complex transition to highly productive servers
is needed for the commercial use. The
calculation specifity during CNN training puts
a range of requirements to the hardware and the
commercial use implies the parallel training of
several models that can load the system
significantly. Despite the calculation
parallelism put in the program complex
architecture using SOA, it is demanded to
perform the additional research and stress-tests
to outline the specific requirements to the
hardware.</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgements</title>
      <p>This work was supported by the RFBR grant
№19-37-90112 and the budgetary theme
00732019-0004.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.</given-names>
            <surname>Krizhevsky</surname>
          </string-name>
          , I. Sutskever,
          <string-name>
            <given-names>G. E.</given-names>
            <surname>Hinton</surname>
          </string-name>
          ,
          <article-title>ImageNet classification with deep convolutional neural networks</article-title>
          ,
          <source>Communications of the ACM</source>
          (
          <year>2017</year>
          ), volume
          <volume>60</volume>
          , issue 6, pp.
          <fpage>84</fpage>
          -
          <lpage>90</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>K.</given-names>
            <surname>Simonyan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Zisserman</surname>
          </string-name>
          ,
          <article-title>Very deep convolutional networks for large-scale image recognition</article-title>
          ,
          <source>3rd International Conference on Learning Representations</source>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M. D.</given-names>
            <surname>Zeiler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Fergus</surname>
          </string-name>
          ,
          <article-title>Visualizing and understanding convolutional networks</article-title>
          ,
          <source>3th European Conference on Computer Vision</source>
          (
          <year>2014</year>
          ), volume
          <volume>8689</volume>
          , issue 1, pp.
          <fpage>818</fpage>
          -
          <lpage>833</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Geng</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <article-title>Automated design of a convolutional neural network with multiscale filters for cost-efficient seismic data classification</article-title>
          ,
          <source>Nature Communications</source>
          , volume
          <volume>11</volume>
          , issue 1,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Witsuba</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rawat</surname>
          </string-name>
          , T. Pedapati,
          <article-title>Automation of deep learning</article-title>
          ,
          <source>Proceedings of the 2020 International Conference on Multimedia Retrieval</source>
          (
          <year>2020</year>
          ), pp.
          <fpage>5</fpage>
          -
          <lpage>6</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B.</given-names>
            <surname>Baker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Gupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Naik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Raskar</surname>
          </string-name>
          ,
          <article-title>Designing neural network architectures using reinforcement learning</article-title>
          ,
          <source>5th International Conference on Learning Representations</source>
          (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <article-title>[7] Ateeq-ur-</article-title>
          <string-name>
            <surname>Rauf</surname>
            ,
            <given-names>A. R.</given-names>
          </string-name>
          <string-name>
            <surname>Ghumman</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Ahmad</surname>
            ,
            <given-names>H. N.</given-names>
          </string-name>
          <string-name>
            <surname>Hashmi</surname>
          </string-name>
          ,
          <article-title>Performance assessment of artificial neural networks and support vector regression models for stream flow predictions</article-title>
          ,
          <source>Environmental Monitoring and Assessment</source>
          , volume
          <volume>190</volume>
          , issue 12, article 704,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Alizadeh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Yazdi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. K.</surname>
          </string-name>
          <article-title>AlShamiri, Assessment of machine learning techniques for monthly flow prediction</article-title>
          .
          <source>Water (Switzerland)</source>
          , volume
          <volume>10</volume>
          , issue 11, article 1676,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Lantrip</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Griffin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Aly</surname>
          </string-name>
          ,
          <article-title>Results of near-term forecasting of surface water supplies</article-title>
          ,
          <source>Proceedings of the 2005 World Water and Environmental Resources Congress</source>
          , Anchorage, Alaska,
          <string-name>
            <surname>US</surname>
          </string-name>
          ,
          <year>2005</year>
          . doi:
          <volume>10</volume>
          .1061/40792(
          <issue>173</issue>
          )
          <fpage>447</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>I.</given-names>
            <surname>Bello</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Zoph</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Vasudevan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q. V.</given-names>
            <surname>Le</surname>
          </string-name>
          ,
          <article-title>Neural optimizer search with Reinforcement learning</article-title>
          ,
          <source>34th International Conference on Machine Learning</source>
          (
          <year>2017</year>
          ), volume
          <volume>1</volume>
          , pp.
          <fpage>712</fpage>
          -
          <lpage>721</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>H.</given-names>
            <surname>Cai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <article-title>Efficient architecture search by network transformation</article-title>
          ,
          <source>32nd AAAI Conference on Artificial Intelligence</source>
          (
          <year>2018</year>
          ), pp.
          <fpage>2787</fpage>
          -
          <lpage>2794</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>J.-D. Dong</surname>
            , A.-C. Cheng, D.-C. Juan,
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Wei</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Sun</surname>
          </string-name>
          , DPP-Net:
          <article-title>Device-Aware Progressive Search for Pareto-</article-title>
          <source>Optimal Neural Architectures, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)</source>
          , volume
          <volume>11215</volume>
          , pp.
          <fpage>540</fpage>
          -
          <lpage>555</lpage>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Wistuba</surname>
          </string-name>
          ,
          <article-title>Deep learning architecture search by neuro-cell-based evolution with function-preserving mutations</article-title>
          ,
          <source>Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)</source>
          , volume
          <volume>11052</volume>
          , pp.
          <fpage>243</fpage>
          -
          <lpage>258</lpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>V.</given-names>
            <surname>Mikhailov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Spesivtsev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Sobolevsky</surname>
          </string-name>
          ,
          <string-name>
            <surname>N.</surname>
          </string-name>
          <article-title>Kartashev, Multi-Model Estimation of the Dynamics of Plant Community Phytomass</article-title>
          ,
          <source>The 13th IEEE International Conference Application of Information and Communication Technologies</source>
          , Baku, Azerbaijan, pp.
          <fpage>324</fpage>
          -
          <lpage>328</lpage>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Zelentsov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. M.</given-names>
            <surname>Alabyan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I. N.</given-names>
            <surname>Krylenko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            <surname>Yu</surname>
          </string-name>
          . Pimanov,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Ponomarenko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Potryasaev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. E.</given-names>
            <surname>Semenov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. A.</given-names>
            <surname>Sobolevskii</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B. V.</given-names>
            <surname>Sokolov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. M.</given-names>
            <surname>Yusupov</surname>
          </string-name>
          ,
          <article-title>A ModelOriented System for Operational Forecasting of River Floods, Herald of the Russian Academy of Sciences</article-title>
          , volume
          <volume>89</volume>
          , issue 4, pp.
          <fpage>405</fpage>
          -
          <lpage>417</lpage>
          ,
          <year>2019</year>
          . doi:
          <volume>10</volume>
          .1134/S1019331619040130.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bell</surname>
          </string-name>
          ,
          <article-title>Introduction to Service-Oriented Modeling, in Service-Oriented Modeling: Service Analysis</article-title>
          ,
          <source>Design and Architecture</source>
          , Wiley &amp; Sons, New York, NY,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>V.</given-names>
            <surname>John</surname>
          </string-name>
          , Guttag Introduction to
          <article-title>Computation and Programming Using Python: With Application to Understanding, 2nd Edition</article-title>
          , MIT Press, Cambridge, Massachusetts,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Mesmoudi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lamnaour</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y. E. L.</given-names>
            <surname>Khamlichi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tahiri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Touhafi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Braeken</surname>
          </string-name>
          ,
          <article-title>Design and implementation of a smart gateway for IoT applications using heterogeneous smart objects</article-title>
          ,
          <source>4th International Conference on Cloud Computing Technologies and Applications</source>
          , Cloudtech,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>D.</given-names>
            <surname>Hanes</surname>
          </string-name>
          , IoT Fundamentals: Networking Technologies, Protocols, and
          <article-title>Use Cases for the Internet of Things</article-title>
          , Cisco Press, Indianapolis, Indiana,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>T.</given-names>
            <surname>Erl</surname>
          </string-name>
          ,
          <string-name>
            <surname>Service-Oriented</surname>
            <given-names>Architecture</given-names>
          </string-name>
          :
          <article-title>Analysis and Design for Services and Microservices, 2nd Edition</article-title>
          , Prentice Hall, Upper Saddle River, New Jersey,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>D.</given-names>
            <surname>Xu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Tian</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Kong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Tan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Shi</surname>
          </string-name>
          ,
          <article-title>Deep learning based emotion analysis of microblog texts</article-title>
          ,
          <source>Information Fusion</source>
          , volume
          <volume>64</volume>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>11</lpage>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>U.</given-names>
            <surname>Ozkaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Melgani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. Belete</given-names>
            <surname>Bejiga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Seyfi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Donelli</surname>
          </string-name>
          ,
          <string-name>
            <surname>GPR</surname>
          </string-name>
          <article-title>B scan image analysis with deep learning methods</article-title>
          ,
          <source>Measurement: Journal of the International Measurement Confederation</source>
          , volume
          <volume>165</volume>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>A.</given-names>
            <surname>Dutta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Batabyal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Basu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. T.</given-names>
            <surname>Acton</surname>
          </string-name>
          ,
          <article-title>An efficient convolutional neural network for coronary heart disease prediction</article-title>
          ,
          <source>Expert Systems with Applications</source>
          , volume
          <volume>159</volume>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>M.</given-names>
            <surname>Sewak</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. R.</given-names>
            <surname>Karim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pujari</surname>
          </string-name>
          ,
          <article-title>Practical convolutional neural networks: implement advanced deep learning models using Python, Packt Publishing</article-title>
          , Birmingham, UK,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Gladkov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. V.</given-names>
            <surname>Kureichik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V. M.</given-names>
            <surname>Kureichik</surname>
          </string-name>
          ,
          <article-title>Genetic algorithms: a textbook, 2nd Edition</article-title>
          , Fizmatlit, Moscow, Russia,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>T.</given-names>
            <surname>Ziade</surname>
          </string-name>
          , Python Microservices Development, Packt Publishing, Birmingham, UK,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>G. C.</given-names>
            <surname>Hillar</surname>
          </string-name>
          , Internet of Things with Python, Packt Publishing, Birmingham, UK,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <surname>D. B. Tuomanen</surname>
          </string-name>
          ,
          <article-title>Hands-On GPU Programming with Python and CUDA: Explore high-performance parallel computing with CUDA</article-title>
          ,
          <string-name>
            <surname>Packt</surname>
            <given-names>Publishing</given-names>
          </string-name>
          , Birmingham, UK,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>J.</given-names>
            <surname>Han</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Sharma</surname>
          </string-name>
          ,
          <article-title>Learn CUDA Programming: A beginner's guide to GPU programming and parallel computing with CUDA 10</article-title>
          .x and C/C++,
          <string-name>
            <surname>Packt</surname>
            <given-names>Publishing</given-names>
          </string-name>
          , Birmingham, UK,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>B.</given-names>
            <surname>Vaidya</surname>
          </string-name>
          ,
          <article-title>Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA: Effective techniques for processing complex image data in real time using GPUs, Packt Publishing</article-title>
          , Birmingham, UK,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <given-names>K.</given-names>
            <surname>He</surname>
          </string-name>
          , G. Gkioxari,
          <string-name>
            <given-names>P Dollar</given-names>
            , R. Girshick,
            <surname>Mask</surname>
          </string-name>
          <string-name>
            <surname>R-CNN</surname>
          </string-name>
          ,
          <source>Proceedings of the IEEE International Conference on Computer Vision</source>
          , volume
          <year>2017</year>
          , pp.
          <fpage>2980</fpage>
          -
          <lpage>2988</lpage>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>