<!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>Simplified Influence Evaluation of Additional Training on Deep Neural Networks</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Naoto Sato</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hironobu Kuruma</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Yuichiroh Nakagawa</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hideto Ogawa Research</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Development Group</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hitachi</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>naoto.sato.je</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>hironobu.kuruma.zg</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>yuichiroh.nakagawa.hk</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>hideto.ogawa.cpg@hitachi.com</string-name>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2019</year>
      </pub-date>
      <fpage>34</fpage>
      <lpage>39</lpage>
      <abstract>
        <p>-During operation of a system including a deep neural network (DNN), new input values to the DNN that were not included in the initial dataset retained during development may be given. In such a case, the DNN may be additionally trained with the new input values; however, that additional training may reduce the accuracy of the DNN in regard to the initial dataset. It is therefore necessary to evaluate the influence of the additional training on the accuracy for the initial dataset. However, evaluation by testing all the input values included in the initial dataset takes time. In this paper, we newly propose a method for quickly evaluating the influence on the accuracy for the initial dataset. As for the proposed method, the gradient of the parameter values (such as weight and bias) for the initial dataset is extracted by running the DNN before the additional training. Then, after the additional training, its influence on the accuracy with respect to the initial dataset is calculated from the gradient and update differences of the parameter values. To show the feasibility of the proposed method, results of experiments with the MNIST dataset are presented, Accordingly, it is confirmed that the calculation amount of the proposed method after the additional training depends on the number of parameters; therefore, even if the number of input values included in the initial dataset is enormous, the influence of additional training can be evaluated quickly. Index Terms-machine learning, neural networks, regression analysis</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>In recent years, the introduction of machine-learning
technologies in various industrial fields has been advancing.
Among those technologies, deep neural networks (DNNs)
are being popularly applied. In addition to replacing human
tasks, in some fields, DNNs are demonstrating better ability
than people. DNNs are trained with a dataset. A dataset
is composed of pairs of input values to DNNs and their
corresponding expected output values. Part of the dataset is
used as training dataset for training DNNs, and the rest of the
dataset is used as test dataset to evaluate the trained DNNs.
In the training of DNNs, when input values included in the
training dataset are input into DNNs, values of parameters
such as weights and bias are adjusted so that the possibility
of obtaining the expected output values increases. After the
training is completed, the test dataset is used to measure the
probability of obtaining the expected output value as expected.
This probability—called accuracy—is an indicator showing
the validity of the developed DNNs. However, the accuracy
measured during development is only that with respect to the
initial dataset retained at that time. That is to say, when input
values that are not included in the initial dataset are given, the
output values are not exclusively those expected; consequently,
the accuracy of the DNN during operation is lower than that
during its development.</p>
      <p>
        When the accuracy of DNNs decreases, the DNNs may be
subjected to additional training during operation [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. As
for additional training, operating DNNs are trained by using
input values and their expected values newly acquired during
their operation. In this paper, a set of pairs of input values
used for additional training and their expected output values is
called an additional dataset. By additional training, parameter
values (such as weight and bias) are adjusted so as to improve
the accuracy concerning the additional dataset. However, The
result of the adjustment also influences the accuracy of the
initial dataset. Accordingly, it is necessary to evaluate not only
the accuracy for the additional dataset but also the accuracy
for the initial dataset. As for the result of that evaluation, in
the case that the accuracy with respect to the initial dataset
decreases, either training hyperparameters are changed and
the additional training is repeated, or rollback to the DNNs
before additional training is executed. Since it is assumed that
additional training is performed during operation of DNNs, it
is preferable to be able to evaluate the results of the additional
training in as short a time as possible. To grasp the influence
of additional training on the accuracy for the initial dataset, it
is sufficient to run the DNNs additionally trained with all the
input values included in the initial dataset and acquire their
accuracy again. However, when the number of input values
in the initial dataset is huge, it takes a long time to execute
that test. In other words, the accuracy of the DNNs cannot be
evaluated quickly.
      </p>
      <p>In this paper, a method for quickly evaluating the influence
of additional training on the accuracy for the initial dataset—
after completion of the additional training—is proposed. In
regard to the proposed method, the gradient of the parameter
values is extracted by executing the DNNs with input values
in the initial dataset before the additional training. Then,
after the additional training, its influence on the accuracy
for the initial dataset is calculated from the gradient and
the update differences of parameter values resulting from
the additional training. The results of experiments using the
proposed method with the MNIST dataset confirmed that the
amount of calculation to be performed after additional training
does not depend on the number of input values in the initial
dataset; instead, it depends on the number of parameters used
in the DNN. As a result, even if the number of input values in
the initial dataset is huge, applying the proposed method makes
it possible to evaluate the result of additional training quickly.
Moreover, the result of evaluating the influence of additional
training by the proposed method was compared with the result
of evaluating it by test execution. On the basis of the results of
that comparison, the utility of the proposed method was also
confirmed.</p>
    </sec>
    <sec id="sec-2">
      <title>II. BACKGROUND</title>
      <sec id="sec-2-1">
        <title>A. Deep Neural Networks</title>
        <p>For an arbitrary DNN, denoted as N , handling a
classification problem of class c(c &gt; 1), I is taken as the
number of neurons making up N , and each neuron (in any
layer) is denoted as ni(1 i I ). Also, Ji is taken as
the number of parameters used to calculate the value of ni,
and the parameter itself is denoted as [wi;1; :::; wi;j ; :::; wi;Ji ].
Note that if ni1 and ni1 are included in different layers,
Ji1 and Ji2 can be different. Then, a vector obtained by
combining the parameters of all the neurons is defined as W =
[w1;1; :::; w1;J1 ; w2;1; :::; w2;J2 ; :::; wI;1; :::; wI;JI ]. In the case
of a multilayer perceptron, for example, these parameters
correspond to weights and biases. Note that the formula for
calculating the value of each neuron by using these parameters
is not prescribed in this paper.</p>
        <p>For an arbitrary input value xm, the expected output value
corresponding to xm is expressed as t(xm). t(xm)
represents the identifier of the classification class to which xm
belongs. Moreover, when xm is input to N , the output value
returned by N is expressed as y(xm), which corresponds to
the c-dimensional vector [y1m; :::; ykm; :::; ycm]. The ym value
k
for each dimension represents the probability that the input
value xm belongs to class k. If ym has the largest value in
k
[y1m; :::; ykm; :::; ycm], class k is denoted as f st(y(xm)). That
is, 8ykm ykm yfmst(y(xm)) holds. When f st(y(xm)) = t(xm)
holds, it is said that N can correctly classify xm. Likewise,
if ykm has the second-largest value, class k is denoted as
snd(y(xm)). That is, 8ykm ykm 6= yfmst(y(xm)) ) ykm
ysmnd(y(xm)) holds.</p>
      </sec>
      <sec id="sec-2-2">
        <title>B. Additional Training</title>
        <p>The flow of additional training assumed in this paper is
shown in Fig. 1.</p>
        <p>In this flow, untrained DNN N 1 is trained first by using
the training dataset of initial dataset. The result of that training
is evaluated by using test dataset of the initial dataset. After
that, the resulting DNN, N0, starts to be used. During its use,
additional dataset 1 is newly acquired. Then, N0 is additionally
trained using the training dataset that is a subset of additional
dataset 1, and the result is evaluated in the same way using the
corresponding test dataset. The resulting DNN, N1, achieves
sufficient accuracy for additional dataset 1. However, N1 does
not always maintain sufficient accuracy for the initial dataset.
Accordingly, it is necessary to evaluate the influence of the
additional training on the accuracy for the initial dataset. That
necessity holds for the following additional trainings. As for
additional training s(1 s), if a dataset whose influence
should be evaluated is expressed as X^s, Xs is defined as
^
follows:</p>
        <p>Definition 1:
^
Xs =
{I D</p>
        <p>I D [ ∪ss0=11 ADs0
(s = 1)
(otherwise)
where I D and ADs0 represent the initial dataset and
additional dataset of additional training s0 respectively.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>III. PROPOSED METHOD Additional training 1 explained in Section II-B is used as a running example.</title>
      <sec id="sec-3-1">
        <title>A. Positive and Negative Gradients</title>
        <p>As for the proposed method, prior to additional training
1, preprocessing is performed on DNN N0. It is supposed
that N0 deals with a classification problem with class c(c &gt;
1). Hereafter, as for the expected output value t(xm) for an
arbitrary input value xm to N0, positive supervisor ps(t(xm))
and negative supervisor ns(t(xm)) are defined as follows:
Definition 2:
ps(t(xm))
ns(t(xm))
=
=
t(xm)
{snd(y(xm))
f st(y(xm))
(f st(y(xm)) = t(xm))
(otherwise)
where y(xm) represents the output value returned by N0
when xm is input to N0. At that time, as for all input values
included in arbitrary-input-value set X1 X^1, positive loss
that is loss under the assumption that positive supervisor is
the supervisory signal of the training, and negative loss that is
loss under the assumption that negative supervisor is the
supervisory signal of the training are calculated. Average positive
loss for X1 is denoted as P L(X1). Similarly, average negative
loss is denoted as N L(X1). For an arbitrary loss function
expressed as L(y(xm); t(xm)), P L(X1) and N L(X1) are
defined as follows:</p>
        <p>P L(X1) =
N L(X1) =
1 ∑X1 L(y(xm); ps(t(xm)))
M xm
1 ∑X1 L(y(xm); ns(t(xm)))</p>
        <p>M xm
where M represents the number of input values
included in X1. Next, the gradient of parameter W0 =
[w1;1; :::; wi;j ; :::; wI;JI ] of N0 with respect to P L(X1)
(obtained as previously described) is calculated. The gradient of
P L(X1), called positive gradient, is expressed by ∇P L(X1).
Similarly, the gradient of N L(X1), called negative gradient,
is expressed by ∇N L(X1). ∇P L(X1) and ∇N L(X1) are
defined as follows:</p>
        <p>Definition 4:</p>
      </sec>
      <sec id="sec-3-2">
        <title>B. Influence of Additional Training</title>
        <p>After ∇P L(X1) and ∇N L(X1) are created for N0,
additional training 1 is executed, and DNN N1 is created.
Parameter W1 of N1 is compared with parameter W0 of N0,
and the update difference of the parameter W = W1 W0,
is acquired. Then, positive influence P I(X1; W ) and
negative influence N I(X1; W ) given to X1 by updating the
parameter is calculated as follows:</p>
        <p>Definition 5:</p>
        <p>P I(X1;
N I(X1;</p>
        <p>W ) = ( ∇P L(X1)) ( W )</p>
        <p>W ) = ( ∇N L(X1)) ( W )</p>
        <p>P I(X1; W ) approximates the amount by which P L(X1)
is decreased by updating parameter W0 to W1.
Likewise, N I(X1; W ) corresponds to the approximate value
of the decrease in N L(X1). If W is denoted as
[ w1;1; :::; wi;j ; :::; wI;JI ], P I(X1; W ) corresponds to
∑i;j ( @P@Lw(iX;j1) wi;j ). For example, in the case that loss
function L is cross entropy, the relation between the value of
the decrease of in P L(X1) due to updating wi;j by wi;j , and
its approximate value @P@Lw(iX;j1) wi;j is shown in Fig. 2.</p>
        <p>Here, it is assumed that L is the loss function used for the
initial training to create N0 from N 1. The initial training
aims to reduce the loss calculated based on L (called training
loss hereafter), in which the expected output value is the
supervisory signal of the training. As a result, it is assumed that
the accuracy of the DNN in regard to X1 is improved. In that
case, the value of the decrease in training loss is considered
to be an index for evaluating the change of accuracy with
respect to X1. According to Definition 2, since the positive
supervisor is the same as the expected output value, P L(X1)
coincides with the training loss. It can therefore be assumed
that P I(X1; W ), which is an approximate value of the
decrease in P L(X1), can be taken as an index for evaluating
the change in accuracy with respect to X1.</p>
        <p>It can be said that the value of the decrease in P L(X1)
functions as an index indicating ”How close the output value
is to the expected output value.” However, after training has
progressed to a certain extent and the output value sufficiently
approaches the expected output value, it is considered that
not only ”How close the output value is to the expected
output value” but also ”How far it has deviated from an
erroneous output value” will influence accuracy. Accordingly,
as for the proposed method, the ”dimension with the maximum
value except for the dimension indicated by the expected
output value” among the elements of y(xm) (which is the
output value of N0) is focused on. Therefore, the output value
indicating that dimension is defined as negative supervisor.
Since the loss N L(X1) is calculated based on the negative
supervisor, the decrease in the loss N L(X1) represents ”how
close the output value is to the erroneous output value.”
Hence, N L(X1) is considered to be related to the decrease in
accuracy. Since N I(X1; W ) corresponds to the approximate
value of the decrease in N L(X1), it can therefore be assumed
that N I(X1; W ) also serves as an index for evaluating
the change in accuracy. Based on the above considerations,
the following IN F (X1; W ) can be used as an index for
evaluating change in accuracy with respect to X1.</p>
        <p>Definition 6:
IN F (X1;</p>
        <p>W ) = P I(X1;</p>
        <p>W )</p>
        <p>N I(X1;</p>
        <p>W )</p>
        <p>Among the formulas in Definitions 2 to 6 for determining
IN F (X1; W ), the formulas in Definitions 2 to 4 are
calculated after the end of the initial training and before the start
of additional training 1. Although the formulas in Definitions
5 and 6 are calculated after additional training 1, since the
amount of calculation depends on the number of elements
of W0 (not the number of input values contained in X1),
even if the size of X1 is enormous, change in accuracy can
be evaluated in a short time. In the case of a multilayer
perceptron, since the number of elements of W0 is given as
O(I2) for number of neurons I constituting N0, the calculation
order of the proposed method after additional training 1 is
given as O(I2).</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>IV. EXPERIMENT</title>
      <p>
        The results of experimentally applying the proposed method
to the MNIST dataset [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] (which is a handwritten dataset
containing the digits 0 to 9) are presented in the following.
In the following sections, arguments concerning IN F , etc.
are omitted as long as there is no misunderstanding .
      </p>
      <sec id="sec-4-1">
        <title>A. Setup</title>
        <p>In this experiment, it is assumed that 50 additional trainings
will be conducted after the initial training. It is also assumed
that 46,666 image data, which equals two-thirds of the 70,000
image data provided as the MNIST dataset, are retained as
initial dataset. It is supposed that the remaining 23,334 data
are acquired equally between additional trainings. Namely,
the number of data in each additional dataset is given by
23; 334=50 ; 466. Moreover, the ratio of the training dataset
to the test dataset in each dataset (initial, additional 1, and so
on) is set to 6:1 (as in the MNIST dataset). The DNN used is
a multilayer perceptron with two hidden layers (composed of
1,000 neurons each) in addition to the input and output layers.</p>
        <p>We evaluate the influence of additional training for each
classification class in this experiment. Accordingly, in
additional training s(1 s 50), a set of input values with
the same classification class k(0 k 9) is created from
X^s as Xsk. The proposed method is then applied for each Xsk
and IN F (Xsk; W ) was calculated. Moreover, to evaluate the
effectiveness of IN F , the difference value of actual accuracy
in regard to Xsk between before and after the additional
training is measured. Furthermore, the following times were
calculated: (i) the time taken to evaluate the influence by
applying the proposed method and (ii) the time taken to
evaluate the influence by executing the DNN with all the input
values included in X^s. Note that in the case of the proposed
method, the formulas to be calculated after the additional
training are those in Definitions 5 and 6. In the initial training
and all subsequent additional trainings, cross entropy is used as
loss function L. The experiment was performed on a Windows
10® PC equipped with two Intel® Core™ i7-8700 3.2-GHz
processor with 6 cores, 16-GB memory.</p>
      </sec>
      <sec id="sec-4-2">
        <title>B. Results</title>
        <p>Time taken to apply the proposed method and time taken
to run the DNN with all the input values contained in X^s are
plotted in Fig. 3.</p>
        <p>Fig. 3 indicates that calculation time of test execution
increases as number of additional training since the number
of input values in X^s increases. On the contrary, in the case
of the proposed method, it is confirmed that the evaluation
can be performed in almost the same time regardless of the
increase in number of data. It is evident from the fact that
the calculation order of the formulas in Definitions 5 and 6 is</p>
        <p>Fig. 3. Calculation times
given as O(I2) as mentioned in Section III-B. The amount of
calculation corresponding to the formulas in Definitions 2 to
4 increases in accordance with number of data; even so, those
calculations are carried out before additional training, so their
results are not included in the time for evaluating the results
of additional training.</p>
        <p>Values of IN F obtained as a result of the experiment (on
the left y-axis) and the difference value of actual accuracy
(right) in regard to Xsk between before and after the additional
training are plotted in Fig. 4.</p>
        <p>It is clear from Fig. 4 that the IN F value and the difference
value of actual accuracy have similar waveforms. In other
words, it can be said that when the IN F value increases or
decreases as compared with its previous value, it is highly
likely that the difference value of accuracy also increases
or decreases as compared with its previous time. It can be
supposed from this result that it is possible to utilize IN F as
an index for evaluating the change in accuracy. For example,
for the graphs with k = 0, the value of the second IN F
acquired in the additional training is smaller than that of the
first additional training. In that case, it can be predicted that
the difference value of the accuracy of the second additional
training becomes smaller than that of the first additional
training. (However, whether it increases by a smaller value
than the first additional training or it turns into a decrease
cannot be predicted.) For all classification classes, relative
change (increase or decrease) of IN F was compared with
relative change (increase or decrease) of difference value of
accuracy, and they agreed with a probability of about 89.2%.</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>V. EVALUATION AND RELATED WORK</title>
      <p>According to the above-presented experimental results, the
feasibility of the proposed method is confirmed. Since it is
confirmed that the proposed method does not depend on the
number of retained input values, the more the number of
retained input values is, the more useful the proposed method
is to evaluate the results of additional training than testing all
the retained input values.</p>
      <p>As for the proposed method, by examining whether IN F
increases or decreases compared with its previous value, it is
possible to evaluate whether the difference value of accuracy
also increases or decreases compared with its previous value.
Moreover, because IN F value and the difference value of
actual accuracy have similar waveforms, how much accuracy
changes after additional training can be roughly predicted
from the waveform of IN F . For example, if IN F increases
more than it previously increased, the difference value of
accuracy will also increase more than it previously increased.
However, the result of the evaluation by the proposed method
is not always accurate. Also, with the proposed method, it is
not possible to evaluate the precise value of accuracy after
additional training.</p>
      <p>In view of these advantages and disadvantages, it is thought
that the proposed method will be useful in a system that repeats
additional training of DNNs to find a better DNN during
operation. In the case of such a system, it should be promptly
decided whether the system adopts the DNN additionally
trained, tries another additional training, or performs rollback
to DNNs before the additional training. Examples of such
systems include rescue robots and stock trading systems. These
systems tend to prefer adapting to changes in the environment
as soon as possible by repeating additional training not to lose
opportunities to save people or gain profits. Otherwise, even if
the precise value of accuracy is evaluated by running on all the
data, using the proposed method in advance is advantageous
in that ”triage” becomes possible. For example, it is possible
to execute tests with input values from classification classes
that are highly likely to degrade accuracy.</p>
      <p>Because the number of layers, neurons, and parameters are
generalized in the definition of DNNs and types of activation
functions are not specified, the proposed method can be
applied to any neural networks of multilayer perceptron topology.
For the same reason, it is thought that the proposed method
gives similar results when applied to a convolutional neural
network.</p>
      <p>In the graphs for k = 0 shown in Fig. 4, as for the 4th and
8th additional trainings, accuracy drops due to the additional
training. In that case, it is considered that P L increases, so
IN F representing the decrease in P L should be a negative
value. However, as shown in Fig. 4, IN F may have a positive
value, the reason for which is explained below. As explained
in Section III-B, P I is an approximate value of decrease in
P L. First, it is supposed that wi;j is added to wi;j (which
is an element of parameter W ) and that the decrement value
of P L in that case is represented by P L. When wi;j &gt; 0,
P I &gt; 0 and P L &gt; 0; however, due to the property of the
cross entropy function used as L, P L &lt; P I holds. On the
contrary, if wi;j &lt; 0, although P I &lt; 0 and P L &lt; 0,
for the same reason, P L &lt; P I. That is, regardless of the
updating direction of wi;j , P I becomes larger than P L.
For the above reasons, the value of P I tends to be greater
than the actual value of the decrease in P L. Similar errors in
N I also occur. However, the additional training is conducted
so that P L decreases, so it is conceivable that decrease in P L
tends to be larger than that in N L in many cases. In that case,
the error caused by P I is larger than that caused by N I. As
a result, the value of IN F tends to be larger than the actual
value of the decrease in P L.</p>
      <p>
        To the author’s knowledge, no research results on a method
for evaluating additional training results have been published.
However, in a similar manner to our research presented in
this paper, Kirkpatrick et al. [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] have focused on decrease
in accuracy in multitask learning [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. For example, when
training for task 2 is carried out after training for task 1, it
is a problem that the performance of the previously trained
task (task 1) is catastrophically reduced. In response to that
problem, they proposed a method of identifying the parameters
(weights and biases) important in regard to task 1, and training
task 2 in a manner that change those parameters (important
in regard to task 1) as little as possible. Accordingly, it is
possible that their method can be applied to additional training
^
by associating the dataset of task 1 with dataset Xs and
making the dataset of task 2 correspond to additional dataset
s. However, even by applying this method, it is difficult to
completely eliminate the influence of additional training on
the accuracy for the initial dataset. Therefore, even when their
method is applied, the proposed method is still useful.
      </p>
    </sec>
    <sec id="sec-6">
      <title>VI. CONCLUSION</title>
      <p>Regarding the problem that the accuracy of the initial dataset
is decreased by the additional training of DNNs, a method
for quickly evaluating the influence of additional training
is proposed. The computational complexity of the proposed
method depends on the number of parameters of DNNs (such
as weight and bias), namely, not on the amount of data in the
initial dataset. Therefore, even if the amount of data included
in the initial dataset is enormous, applying the proposed
method makes it possible to evaluate the result of additional
training quickly. Moreover, it is clear from the results of
an experiment with the MNIST dataset that the method is
useful in the case of a system that requires quickness—
rather than accuracy—of evaluation, such as when additional
training of DNNs is performed during operation of the system
and further additional training is performed according to the
evaluation results. As for future work, the proposed method
will be evaluated using datasets other than MNIST. Moreover,
improving the means of creating I N F will help in the search
for more accurate evaluation.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>D.</given-names>
            <surname>Crankshaw</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Bailis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. E.</given-names>
            <surname>Gonzalez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Franklin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ghodsi</surname>
          </string-name>
          , and
          <string-name>
            <surname>M. I.</surname>
          </string-name>
          <article-title>Jordan: The Missing Piece in Complex Analytics: Low Latency, Scalable Model Management and Serving with Velox</article-title>
          ,
          <source>Conference on Innovative Data Systems Research</source>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Xiao</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Peng</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Z.</given-names>
            <surname>Zhang</surname>
          </string-name>
          <article-title>: Error-driven incremental learning in deep convolutional neural network for largescale image classification</article-title>
          ,
          <source>In Proceedings of the 22nd ACM international conference on Multimedia</source>
          , pp.
          <fpage>177</fpage>
          -
          <lpage>186</lpage>
          (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Y.</given-names>
            <surname>LeCun</surname>
          </string-name>
          , C. Cortes, and
          <string-name>
            <given-names>C. J. C.</given-names>
            <surname>Burges</surname>
          </string-name>
          .
          <article-title>The MNIST database of handwritten digits</article-title>
          . http://yann.lecun.com/exdb/mnist/.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Kirkpatrick</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Pascanu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Rabinowitz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Veness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Desjardins</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. A.</given-names>
            <surname>Rusu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Milan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Quan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Ramalho</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Grabska-Barwinska</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Hassabis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Clopath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kumaran</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Hadsell</surname>
          </string-name>
          :
          <article-title>Overcoming catastrophic forgetting in neural networks</article-title>
          ,
          <source>Proceedings of National Academy of Sciences (PNAS)</source>
          (
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A. A.</given-names>
            <surname>Rusu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. G.</given-names>
            <surname>Colmenarejo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Gulcehre</surname>
          </string-name>
          , G. Desjardins,
          <string-name>
            <given-names>J.</given-names>
            <surname>Kirkpatrick</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Pascanu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Mnih</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Kavukcuoglu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Hadsell</surname>
          </string-name>
          :
          <article-title>Policy distillation</article-title>
          ,
          <source>arXiv preprint arXiv:1511.06295</source>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>E.</given-names>
            <surname>Parisotto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L.</given-names>
            <surname>Ba</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Salakhutdinov</surname>
          </string-name>
          :
          <article-title>Actor-mimic: Deep multitask and transfer reinforcement learning</article-title>
          ,
          <source>arXiv preprint arXiv:1511.06342</source>
          (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>