<!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>Bird Identification from Timestamped, Geotagged Audio Recordings</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jan Schlüter</string-name>
          <email>jan.schlueter@ofai.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Austrian Research Institute for Artificial Intelligence</institution>
          ,
          <addr-line>Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Large-scale biodiversity monitoring would profit from automated solutions supporting or complementing human experts and citizen scientists. To foster their development, the yearly BirdCLEF scientific challenge compares approaches for identifying bird species in recorded vocalizations. The solution described in this work is based on an ensemble of Convolutional Neural Networks (CNNs) processing a mel spectrogram combined with Multi-Layer Perceptrons (MLPs) processing the recording date, time and geographic location. In BirdCLEF 2018, it achieved a mean average precision of 0.705 in detecting 1,500 South American bird species (0.785 for the foreground species), the second best entry to the challenge.</p>
      </abstract>
      <kwd-group>
        <kwd>Bioacoustics</kwd>
        <kwd>Bird vocalizations</kwd>
        <kwd>BirdCLEF 2018</kwd>
        <kwd>Deep Learning</kwd>
        <kwd>Convolutional Neural Networks</kwd>
        <kwd>Spectrograms</kwd>
        <kwd>Metadata</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Biodiversity monitoring is important to assess the impact of human actions on
other species, and inform decisions on short-term projects and long-term policies.
However, manually observing, classifying and counting animals is limited in scale
and scope by the supply of experts, the costs of human labor and basic human
needs. Automated or semi-automated approaches for recording and analyzing
observations would allow monitoring more locations, over longer time spans and
in forbidding terrain.</p>
      <p>For many animals, acoustic monitoring is an interesting option – it allows
to detect and classify individuals even when they are difficult to see, which is
precisely the reason for some of their vocalizations. Acoustic recording devices
paired with automatic classifiers could support both experts in the field in
identifying species, as well as enable passive acoustic monitoring.</p>
      <p>
        The CLEF (Conference and Labs of the Evaluation Forum) initiative fosters
the development of automatic classifiers for the case of bird vocalizations through
the yearly BirdCLEF challenge [
        <xref ref-type="bibr" rid="ref13 ref8">13,8</xref>
        ]. In 2018, it provided 36,496 recordings
of 1,500 South American bird species to develop classifiers on, and challenged
participants in two tasks: (1) Recognizing species in 12,347 recordings mostly
captured with monodirectional microphones aimed at individual birds, and (2)
recognizing species at 5-second intervals in 51 long-term recordings taken with
multidirectional recording devices.
      </p>
      <p>In the following, I describe my submission to BirdCLEF 2018, which reached
the second place among six participating teams. Section 2 details the layout and
training of a Convolutional Neural Network (CNN) processing the audio signals,
Section 3 describes a Multilayer Perceptron (MLP) predicting the species from
the metadata of each recording, and Section 4 explains how the predictions of
multiple audio and metadata networks are combined into a final result. Section 5
compares results on an internal validation set and the official test sets. Finally,
Section 6 discusses ideas that did not turn out successful, and Section 7 concludes
with a summary and an outlook.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Predictions from Audio</title>
      <p>The foundation of my submission is an ensemble of Convolutional Neural
Networks (CNNs) that process a mel spectrogram to produce occurrence
probabilities for each of the 1500 possible bird species. In the following, I describe how
the audio signal is preprocessed to be consumed by the network, what network
architectures were chosen, how the networks were trained, and how they are
applied at test time. Both for the architecture and for training I used multiple
variants which were later combined in an ensemble (Section 4).
2.1</p>
      <sec id="sec-2-1">
        <title>Spectrogram Extraction</title>
        <p>
          Adopted from [
          <xref ref-type="bibr" rid="ref21 ref9">21,9</xref>
          ], I first resample the audio signal to 22.05 kHz sample rate,
compute an STFT with a Hann window of 1024 samples and hop size of 315
samples (obtaining 70 frames per second), retain only the magnitudes, and apply a
mel filterbank of 80 triangular filters from 27.5 Hz to 10 kHz. These settings were
chosen as a starting point since they had proved to work well for bird detection,
and were not varied much during the experiments: reducing the upper bound to
8 kHz diminished results, increasing it to 11 kHz did not have a significant effect,
a window size of 2048 samples (for better low-frequency resolution) did not help.
Note that the magnitudes are linear; they will be compressed in the network.
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Network Architecture</title>
        <p>
          The network architecture is a CNN based on my submission to a bird detection
challenge (submission sparrow in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]), but modified to handle classification rather
than detection, and varied in different ways both in search of a better solution
and to obtain multiple variants for an ensemble.
        </p>
        <p>Figure 1 gives an overview of the architecture variants. The overarching idea
is to have a fully-convolutional network – i.e., a network with only convolutional
and pooling layers, no fixed-size fully-connected layers – process an input
spectrogram into a sequence of local predictions for each bird species, followed by
d
n
e
t
n
o
r</p>
        <p>F
e
m
i
pitch t
e
m
i
pitch t
s
n
la ito
co ic
L ed
r
p
e
m
i
logits t
laob ilgn
l o
G op
a global pooling strategy that produces a single prediction per species for the
full recording. This type of architecture can be directly trained and tested on
recordings of arbitrary length and does not require a hand-chosen averaging or
majority voting procedure to produce recording-wise predictions at test time.</p>
        <p>In the following, I will describe a common preprocessing frontend as well as
the local prediction and global prediction stages in detail.</p>
        <p>Frontend: The first step is a learned nonlinear magnitude transformation:
y = xσ(a),
where σ(a) = 1/ (1 + exp(−a))
(1)
It is applied elementwise to each time-frequency bin x, enhancing low magnitudes
similar to the more common application of a logarithmic function. a is initialized
to zero (so y = √x) and learned as part of the network, shared over all mel bands,
typically reaching values between -1.2 and -1.7 (yielding y = x0.23 to y = x0.15).</p>
        <p>
          This is followed by batch normalization [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] with means and standard
deviations shared over all time steps, but separated per mel band, and without learned
scale and shift (γ and β in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]). At test time, this is comparable to standardizing
each mel band to zero mean and unit standard deviation over the training set
(as in [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]), but at training time, it adds seemingly helpful noise through
computing the statistics for the current minibatch only, and it dynamically adapts
the standardization to any changes in the learned magnitude transformation.
Local predictions: The frontend is followed by one of two variants for
computing a sequence of local predictions from the input spectrogram.
        </p>
        <p>
          A) The first variant is based on submission sparrow in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], but enlarged and
adapted to perform classification rather than detection. It starts with two
convolutional layers of 64 3×3 units each, followed by non-overlapping max-pooling of
3×3, and two more convolutional layers of 128 3×3 units each. All convolutions
are unpadded (“valid”). At this point, the temporal resolution has been reduced
to a third, and there are 21 frequency bands remaining. I apply a convolutional
layer of 128 3×17 units, leaving 5 frequency bands, followed by 3 5 max-pooling,
×
squashing all frequency bands. This combination of convolution and pooling is
meant to fuse information over all frequency bands while introducing some pitch
invariance, and has proven helpful in [
          <xref ref-type="bibr" rid="ref20 ref9">20,9</xref>
          ]. This is followed by a convolutional
layer of 1024 9×1 units, fusing information over 103 original spectrogram frames
(1.5 s), finally followed by 1024 1 1 and 1500 1 1 units for classification (the last
× ×
three layers resemble what would be fully-connected layers in a fixed-input-size
CNN, but here they apply to an arbitrarily long input sequence).
        </p>
        <p>
          All layers except the last one are followed by batch normalization (the usual
variant with statistics shared over all spatial locations, but separated per
channel, and with learned scale and shift) and leaky rectification as max(x/100, x).
The last three layers are preceded by 50% dropout [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. The very last layer
neither has batch normalization nor a nonlinearity. While its 1500 features will
lead to predictions for the 1500 bird species, the nonlinearity will be applied
after global pooling, for reasons discussed below.
        </p>
        <p>B) As a variation on this architecture, I replaced the first four convolutional
layers with two residual blocks with pre-activation following [10, Fig. 1b]. Each
residual block consists of four 3 3 convolutional layers, each of which is preceded
×
by batch normalization and linear rectification as max(x, 0) (except for the initial
convolution following the preprocessing frontend, where pre-activation would be
redundant). Convolution inputs are padded with a leading and trailing row and
column of zeros so the output size matches the input size. Skip connections
add the input of each pair of two convolutions to its output. If needed, the
skip connection includes a 1 × 1 convolutional layer to adjust the number of
channels. The first residual block has 64 channels throughout and is followed by
3×3 max-pooling, the second residual block has 128 channels and is followed by
batch normalization, linear rectification and an unpadded convolutional layer of
128 units leaving 5 frequency bands (compared to the first CNN variant, this
requires 3×22 units instead of 3×17 units since the convolutions are padded).
3×5 max-pooling and remaining layers are adopted from the first CNN variant.
Global predictions: The previous stage produces a sequence of vectors of
size 1500, corresponding to the 1500 possible bird species. Specifically, since the
network includes two pooling operations over 3 frames each, it produces a local
prediction every 9 frames,1 for the part of the input spectrogram exceeding the
length of the network’s receptive field (103 frames for the first, 119 for the second
variant) minus padding (none for the first, 32 frames for the second variant).</p>
        <p>
          A) Treating this as a multiple-instance learning (MIL) problem [
          <xref ref-type="bibr" rid="ref1 ref6">6,1</xref>
          ] – for
each recording and species, the global occurrence label should be positive if at
least one of the local occurrence labels is positive –, the natural choice is to
form a global prediction by taking the maximum over time for each species.
However, this leads to very sparse gradients. Instead, I use log-mean-exp pooling
[19, Eq. 6]:
lme(y; a) =
1
a
log
1 T −1
        </p>
        <p>
          X exp(a · yt)
T t=0
!
(2)
Here, y denotes the time series of local predictions (y0, y1, . . . , yT −1) for a single
species, and a is a hyperparameter controlling the behaviour of the function: for
a → ∞, it approximates the maximum, for a → 0, it approximates the mean.
I set a = 1 (a = 0.2 or a = 5 work just as well, I did not explore it further).
1 It would be possible to obtain a prediction for every single frame by introducing
dilated convolutions and pooling as described in [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ], but this increases computational
costs without a strong benefit.
        </p>
        <p>B) As an alternative to a fixed pooling strategy that prefers larger inputs,
I explored pooling with temporal attention. I let the network produce a weight
αt for each time step, and compute a weighted sum:</p>
        <p>T −1
att(y, α) = X αtyt = αT y</p>
        <p>t=0
The αt are shared over all species, and α is produced with multi-head attention:
I extend the last convolutional layer of the local prediction stage by K units,
such that it produces 1500 + K time series. I split off the K additional time
series C and apply a softmax over time to each one:
Finally, I average the K soft-maxed time series B to obtain α:</p>
        <p>T −1
Bk,t = exp(Ck,t)/ X exp(Ck,i)</p>
        <p>i=0
αt =
By construction, α sums to 1.0 regardless of the sequence length. Using multiple
heads (I chose K = 16 or K = 64) makes it easier for the network to produce
attention series with multiple local maxima. Note that there is no additional
supervision needed to learn what to attend to; the global loss will be
backpropagated through (3), (5), (4) to reach the last layer of the local prediction stage.</p>
        <p>For both log-mean-exp pooling and attentional pooling, we now end up with
a single vector of 1500 values. Assuming that we want to predict the occurrence
of each species independently, the natural choice would be to apply the logistic
sigmoid function σ(x) = 1/(1 + exp(−x)) to squash each value into the range
(0, 1) and treat it as a binary prediction. However, since the training examples
strongly focus on capturing a single prominent species per recording, it turns out
to work slightly better to treat this as a categorical classification problem, so I
apply the softmax function to produce a distribution over 1500 classes instead.</p>
        <p>
          Note that when planning to train with categorical cross-entropy loss, it is
crucial to apply the softmax after the global temporal pooling operation, otherwise
the competition between classes is introduced at the wrong level. Considering
the case of global temporal max pooling, having the softmax last ensures the
loss gradient reaches the frame of maximal activation for each species. Having
the softmax first (i.e., on each local prediction) would propagate the gradient to
the frame where the correct species is most dominant over the others, and then
push down competing species for that frame only. Similar considerations apply
to log-mean-exp pooling and attentional pooling.
To deal with the fact that training recordings are usually a few minutes long,
but only sparsely populated with vocalizations of the target bird (without any
(3)
(4)
(5)
information on where in a recording the target bird is audible), several authors
employed hand-designed methods to find potential bird calls and trained on
these passages only [
          <xref ref-type="bibr" rid="ref14 ref17 ref23 ref5">17,23,14,5</xref>
          ]. Here I take a different route: I randomly choose
extracts long enough to hopefully contain at least one vocalization of every
annotated bird for a recording, and directly train on those, relying on the global
pooling operation to distribute the gradient to the relevant local predictions.
Optimization: The network is trained on mini-batches of 16 excerpts of up to
30 seconds to minimize categorical cross-entropy between network output and
targets (see below for three variants of forming targets). 10% of the recordings
are reserved as a validation set, selected to contain at least one recording per
species (the same split as [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] through personal communication). Weights are
updated with ADAM [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], with an initial learning rate of 0.001 dropped to a
tenth whenever the validation loss did not improve for 10 consecutive
miniepochs of 1000 updates each. Training is stopped at the third drop. The learning
rate for the magnitude compression parameter a (Equation 1) is kept 10 times
as high throughout training, otherwise it learns too slowly.
        </p>
        <p>Loss and targets: Optimization minimizes the cross-entropy loss between
predictions y and targets t:
Obviously, the network can never reach this target. However, as categorical
crossentropy (Equation 6) is linear in the targets, this is equivalent to adding the
cross-entropy losses against each background species and the foreground species,
weighting the latter twice. Furthermore, since ADAM is invariant to the scale
of the gradient, it is unimportant if we set the foreground target to 2 and
background to 1, or the foreground to 1 and background to 0.5, for example.
I employ three different variants for defining the target vector t for a recording.</p>
        <p>A) The most obvious choice for a categorical classification task is to set ts
to 1 for the annotated foreground species for the recording, and to 0 otherwise.
Denoting the foreground species as Sf , we have:</p>
        <p>B) To factor in the annotated background species, I set ts to 2 for the
foreground species, to 1 for any of the background species, and to 0 otherwise.
Denoting the set of background species as Sb, we have:
ce(y, t) = −</p>
        <p>S−1
X ts log(ys)
s=0
ts =
(1 if s = Sf</p>
        <p>0 otherwise
ts =
2 if s = Sf

</p>
        <p>1 if s ∈ Sb
0 otherwise
(6)
(7)
(8)</p>
        <p>
          C) As a third variant, I train a network as a Born-Again Network (BAN),
following [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]. Using a trained model, I compute predictions yˆ for the excerpt
encountered during training, and set the target as follows:
ts =
(yˆt + 1 if s = Sf
ˆ
yt
otherwise
(9)
Again, note that this is equivalent to adding the loss against the target of variant
A to the loss against yˆ (or averaging the two losses, if training with ADAM).
Even if the model computing yˆ has the same architecture as the new model to
be trained, this provides a helpful regularization, leading to faster convergence
and possibly improved generalization (or an additional model for ensembling).
Of course the same modification is possible for variant B (omitted for brevity).
Length bucketing: While aiming to train on 30-second excerpts (assuming
that even for long recordings, a random 30-second excerpt will often contain
vocalizations of all annotated birds), about 60% of the recordings are actually
shorter than 30 seconds. For those, we can just take the full recording. To avoid
wasted computation, I ensure to collect mini-batches of similarly-sized
recordings: All recordings between 3 s and 30 s length are ordered by length and split
into 8 same-sized buckets; recordings shorter than 3 s and longer than 30 s are
sorted into 2 additional buckets. When preparing a mini-batch, a random bucket
is chosen with probability proportional to its size, and 16 recordings within are
selected uniformly at random. Recordings shorter than 3 s are looped to reach
3 s, recordings longer than 30 s are randomly cropped to 30 s, other recordings are
randomly cropped to match the length of the shortest among the 16. This
produces mini-batches of same-sized excerpts without excessive cropping or padding.
Pipeline: Before training, all recordings are transformed to monophonic signals
at 22.05 kHz sample rate and written to fast persistent storage. During training,
multiple background threads read excerpts of these signals and apply an STFT to
prepare mini-batches of magnitude spectrograms. The mel filterbank is applied
on GPU as part of the network.
        </p>
        <p>Mel spectrograms are not precomputed before training to enable easy
experimentation with different mel spectrogram settings (and learned mel filterbanks).
STFTs are not precomputed because that would increase I/O costs (for the
settings in Section 2.1, a minute-long magnitude spectrogram in 32-bit
floatingpoint precision takes 8.2 MiB, while a same-length 22.05 kHz signal in 16-bit
integer precision takes 2.5 MiB), cancelling out savings in computation.
2.4</p>
      </sec>
      <sec id="sec-2-3">
        <title>Testing</title>
        <p>Since the network can process input of arbitrary size into a vector of 1500 class
probabilities, we can directly apply it to full test recordings for the first subtask
of the challenge (monodirectional recordings), and to 5-second excerpts for the
second subtask (long-term multidirectional recordings at 5-second intervals).</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Predictions from</title>
    </sec>
    <sec id="sec-4">
      <title>Metadata</title>
      <p>Not all 1500 bird species of the challenge are likely to occur across the whole
South American continent. Similarly, some migrating birds are not likely to occur
in specific seasons, and some species are more likely to be heard during dawn
than at noon. To learn about and use these dependencies, I train additional
networks on the metadata supplied with the training recordings, which is also
available for the test recordings: the date, time, geocoordinates, and elevation.
3.1</p>
      <sec id="sec-4-1">
        <title>Data Encoding</title>
        <p>As a first step, I cleaned up and unified the different formats for the time
(e.g., “14:20”, “11am”, “morning”, “PM”) and elevation (e.g., “1400”, “300-400”,
“1.270m”, “to 1100 m”) data, both of which seem to be drawn from freeform
text fields. Date and geocoordinates were already unified, but not all fields are
filled for each recording.</p>
        <p>To process the metadata with a neural network, I encode it as a fixed-size
vector. The numeric values for longitude, latitude and elevation are used directly.
The date is converted to the day of the year, and the time to the minute of the
day. To avoid a discontinuity from December 31, to January, 1 and from 23:59
to 0:00, I employ a K-dimensional circular encoding of these values using
phaseshifted sinusoid functions:
dˆk = √2 sin(2πd/D + πk/K),
(10)
where d is the value to encode (e.g., the minute of the day), D is the number of
possible values (e.g., 1440), and dˆ is the resulting K-dimensional encoding of d.
I experimented with two settings: K = 12 and K = 3. Missing metadata fields
are represented as zeros, and 5 additional binary values indicate which fields are
valid. In total, this results in a 14-dimensional vector for K = 3.</p>
        <p>As a final step, all values are standardized to zero mean and unit variance
using statistics over the training set (except for the circular-encoded values,
which are approximately standardized due to the √2 factor in Equation 10,
assuming a uniform distribution of days of the year and minutes of the day).
3.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Network Architecture</title>
        <p>The network architecture for this part is very simple: The 14-dimensional input
vector is processed by two fully-connected hidden layers of 256 and 512 leaky
rectified units each, and finally classified by a fully-connected output layer of
1500 softmax units. Dropout or batch normalization were not helpful.
3.3</p>
      </sec>
      <sec id="sec-4-3">
        <title>Training</title>
        <p>Optimization uses the same settings as for the audio network, except that
monitoring for early stopping uses the mean average precision (MAP, see Section 5)
on the validation set rather than the cross-entropy loss, and mini-epochs of 5000
instead of 1000 updates.</p>
        <p>Training targets are chosen according to strategy A or B of Section 2.3, with
strategy B turning out to be more useful for ensembling.</p>
        <p>To obtain additional variations for ensembling, I varied training in two ways:
A) I added Gaussian noise to the metadata values (before circular encoding, if
applicable), either with small standard deviations (3 days, 3 minutes, 5 meters,
0.3 degrees), medium standard deviations (7 days, 10 minutes, 20 meters, 1
degree) or large standard deviations (14 days, 30 minutes, 100 meters, 3 degrees).
B) I trained networks on a subset of metadata fields, either leaving out one of
the fields or all but one field.</p>
        <p>As an additional regularization, I experimented with randomly dropping
single fields (handling them like missing fields, i.e., replacing with zeros and flipping
the validity indicator variable), but this only worsened results.
4</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Ensembling of Predictions</title>
      <p>Both to combine audio-based and metadata-based predictions and to benefit
from multiple variations among the audio-based and metadata-based models, it
is crucial to be able to merge predictions of multiple models.</p>
      <p>In its simplest form, predictions by multiple models for the same recording
can be merged by averaging them. There are different stages at which this could
happen; empirically, it worked best to average predictions after global temporal
pooling, but before applying the softmax output nonlinarity.</p>
      <p>
        Averaging is sufficient for few similar models, but not optimal for larger sets of
diverse models, or for combining audio-based and metadata-based predictions:
in these cases, it pays off to weight the predictions of each model differently.
To automate the choice of weights, I employ hyperopt [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], a general-purpose
hyperparameter optimization tool. Given a set of models, I use it to search
a weight in [0, 1) for each model that optimizes the ensemble’s mean average
precision (MAP) on the validation set (specifically, the average of the MAPs for
the foreground and background species; see the next section for details on the
evaluation). When the set of models becomes large, hyperopt can also be used to
choose which models to include in the ensemble at all. To support this, I extend
the search space by a binary choice for each weight, allowing hyperopt to more
easily set it to zero. While this strategy greatly helps in finding a good ensemble,
of course it bears the risk of over-optimizing towards the validation set.
5
      </p>
    </sec>
    <sec id="sec-6">
      <title>Results</title>
      <p>Challenge submissions are evaluated in terms of mean average precision (MAP),
both when using only the annotated foreground species as ground truth and
when including the background species as additional correct classes. Given class
probabilities y and a set of annotated species S for a recording, the average
precision is computed as
ap(y, S) =
1</p>
      <p>X p(y, S, rank(y, s)),
|S| s∈S
(11)
(12)
(13)
where rank(y, s) is the number of values in y less than or equal to ys:
rank(y, s) =</p>
      <p>X [yi ≤ ys] ,
i
and p(y, S, k) is the precision at k:
p(y, S, k) = 1 X [rank(y, s) ≤ k] .</p>
      <p>k</p>
      <p>s∈S
The mean average precision is the mean of the average precisions of all recordings.
Note that when |S| = 1 (e.g., when only evaluating against foreground species),
the average precision is equal to the reciprocal rank of the correct species, as
easy to see when inserting (13) into (11).</p>
      <p>As an additional evaluation measure, I use the classification accuracy with
respect to the foreground species, and the top-5 classification accuracy (which
treats a prediction as correctly classified when the foreground species is among
the 5 largest class probabilities for a recording).</p>
      <p>Table 1 lists validation results for all candidate model variants partaking in
the ensemble search. In addition, it shows the ensembling weights, validation
and official test results for three ensembles formed from the candidate models.
We can draw several interesting insights from these results:
– All else kept equal, the residual network outperforms the plain CNN (variants
A and B in Section 2.2, “Local predictions”). It still pays off to combine them
in an ensemble.
– All else kept equal, log-mean-exp pooling tends to outperform temporal
attention (variants A and B in Section 2.2, “Global predictions”). Again, it
still pays off to combine them in an ensemble.
– All else kept equal, including background species in the targets tends to
decrease the foreground MAP against foreground species (and the classification
accuracy), while increasing the MAP against background species (variants
A and B in Section 2.3, “Loss and targets”).
– All else kept equal, retraining a model as a Born-Again Network (BAN) tends
to improve its performance (variant C in Section 2.3, “Loss and targets”).
– The metadata alone suffices to classify 21% of validation recordings correctly.
– Including all metadata fields gives better performance than omitting some.
– When training on a single metadata field, it seems location is the most
informative cue.
– There is no systematic difference between 12-dimensional and 3-dimensional
date/time encodings (but there is only a single pair of results with all else
kept equal).
– Adding Gaussian noise to metadata diminishes results. This might indicate
that the models learn to exploit unwanted correlations between training and
validation data, such as recordings done on the same day at the same
location, rather than learning robust occurrence patterns. However, when
ensembling with audio models, blurred (noisy) metadata is superior to unmodified
data.</p>
      <p>For the multidirectional task, I submitted predictions using Ensembles A, B
and C applied to 5-second excerpts (Run 3 was not included since there is no
information to use for filtering). They achieved c-MAP2 scores of 0.113, 0.146
and 0.097, respectively.</p>
      <p>Note that for both tasks, ensemble A outperformed ensemble C, while the
latter was superior on the internal validation set. This might indicate that the
validation set results are not a reliable indicator for choosing models after all.3
6</p>
    </sec>
    <sec id="sec-7">
      <title>Dead Ends</title>
      <p>
        During experimentation, I tried several ideas that did not turn out to be helpful
in the end, and were not discussed above. I will describe a few in the following.
mixup: Several authors augmented training examples by mixing them with
noise, based on a hand-designed approach for segmenting recordings into
passages containing birds and passages only containing background noise
[
        <xref ref-type="bibr" rid="ref14 ref23 ref5">23,14,5</xref>
        ]. When such a separation stage is not available, an alternative is to
mix training examples regardless of bird vocalizations and update the labels
accordingly. An interesting proposal in this regard is mixup [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]: Produce
2 c-MAP computes the average precision per species over all segments, rather than
per segment over all species, and then takes the mean over species.
3 On a related note, beware of trying to interpret the ensemble weights – they are not
indicative of which models are optimal; there are wildly different model selections
and weights that perform about the same on the validation set.
      </p>
      <p>weighted combinations of training examples paired with weighted
combinations of their target vectors. While this seems to be especially well-suited to
audio recordings, in my experiments, it slowed down convergence and lead
to worse results.</p>
      <p>
        Data augmentation: While data augmentation is often reported to be helpful
for audio classification (using transformations such as time stretching, pitch
shifting or equalization), in my experiments, it only diminished results.
Grouped convolution/dropout: Several authors proposed to design a
network architecture to have multiple separate computation paths processing
the same input that are merged in the end [
        <xref ref-type="bibr" rid="ref16 ref4">4,16</xref>
        ]. Some even consider this to
be a design dimension on the same level as network depth and width, under
the term multiplicity [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] or cardinality [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ].
      </p>
      <p>An easy way to implement such an architecture is to use grouped
convolutions – a variation of convolutional layers that divides the input channels
into non-overlapping groups to be processed separately. Multiple such layers
with the same number of groups result in separated deep computation paths.
Even with only two groups, this can promote the development of different
feature sets (e.g., edge and color features in AlexNet [16, Fig. 3]). I
experimented with different numbers of groups, keeping either the total number
of feature maps or total number of parameters constant, but a single group
always performed best. I also tried combining this with grouped dropout,
i.e., randomly dropping complete groups at training time, to promote
independence between computation paths, but to no avail.</p>
      <p>
        Per-Channel Energy Normalization (PCEN): As an alternative to the
basic learned magnitude transformation in Equation 1, I tried PCEN as
proposed in [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. It also includes a learned root compression, but with separate
exponents per mel band, and in combination with an automatic gain control
meant to improve robustness to different recording conditions. However, it
worked significantly worse on the internal validation set.
7
      </p>
    </sec>
    <sec id="sec-8">
      <title>Discussion</title>
      <p>Combining an ensemble of audio networks that individually achieve a Mean
Average Precision (MAP) score of up to 0.701 with an ensemble of metadata
networks that achieve up to 0.277, it is possible to reach a MAP score of 0.809 (for
detecting the foreground species in an internal validation set split off from the
BirdCLEF 2018 training data). Compared to an audio-only ensemble, including
the metadata improved scores by 3 to 5 percent points and helped securing the
second place in the official challenge results.</p>
      <p>
        Results could be improved in a number of ways. For one, I hardly varied
the spectrogram settings – especially the sampling rate of 22.05 kHz (and upper
frequency bound of 10 kHz for the mel filterbank) may be a suboptimal choice.
While this was enough to win a bird detection challenge [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], it discards a lot
of information from the original 44.1 kHz or 48 kHz signals. Secondly, seeing the
improvement from going from a plain CNN to a residual network, there probably
still is a lot to gain from larger networks or more modern design strategies such
as dual-path networks [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Thirdly, for convenience, I used a single validation set
both for early stopping during training and for model selection and weighting
for ensembling. This bears a strong risk of overfitting to the validation set,
and means a subset of recordings will never be used for training. Furthermore,
I used the same validation set as [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] (to be able to compare results during
development), which was designed to contain at least one recording per species
and otherwise picked randomly. This does not match the distribution of the
test set and disregards the fact that some recordists upload several recordings
from the same day and location, which may partly explain the high performance
of the metadata-only networks (especially when not corrupting metadata with
slight noise). Using cross-validation with more careful splits as [18, Sec. 2.2]
would lead to more informed model selection and more diverse model variants
for ensembling (trained on different sets of recordings). Finally, it is surprising
that data augmentation did not help in the variants I tried; a further exploration
of augmentation methods may improve generalization.
      </p>
      <p>When judging the relevance of results for practical applications, it is
important to distinguish the two subtasks. The MAP score used for the first subtask
is purely rank-based (Equation 11): it rewards models giving the correct species
higher scores than incorrect ones, but does not require a clear decision on which
species occur in a recording. Furthermore, as the test set only contains files that
include at least one of the possible 1500 bird species, models will never need
to decide whether a file contains a bird (or a known bird) at all. Finally, the
score takes an average over all test recordings, so species with more recordings
will be given higher importance than rare species. Thus, the first subtask only
captures the setting of an expert in the field interested in classification
suggestions for a particular vocalization, not a passive acoustic monitoring scenario.
The c-MAP score for the second subtask weights all species equally, and rewards
models giving segments that contain a particular species higher scores than those
that do not contain that species. This is closer to the requirements for passive
monitoring, and still has a lot of room for improvements.</p>
    </sec>
    <sec id="sec-9">
      <title>Acknowledgements</title>
      <p>I would like to thank Hervé Glotin, Hervé Goëau, Willem-Pier Vellinga, and
Alexis Joly for organizing this challenge, supported by Xeno-Canto, Floris’Tic,
SABIOD and EADM MaDICS. This research is supported by the Vienna Science
and Technology Fund (WWTF) under grants NXT17-004 and MA14-018. I also
gratefully acknowledge the support of NVIDIA Corporation with the donation
of two Tesla K40 GPUs and a Titan Xp GPU used for this research.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Amores</surname>
          </string-name>
          , J.:
          <article-title>Multiple instance classification: Review, taxonomy and comparative study</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>201</volume>
          ,
          <fpage>81</fpage>
          -
          <lpage>105</lpage>
          (
          <year>2013</year>
          ). https://doi.org/10.1016/j.artint.
          <year>2013</year>
          .
          <volume>06</volume>
          .003, http://refbase.cvc.uab.es/files/Amo2013.pdf
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bergstra</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yamins</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cox</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Making a science of model search: Hyperparameter optimization in hundreds of dimensions for vision architectures</article-title>
          .
          <source>In: Proceedings of the 30th International Conference on Machine Learning (ICML). Proceedings of Machine Learning Research</source>
          , vol.
          <volume>28</volume>
          , pp.
          <fpage>115</fpage>
          -
          <lpage>123</lpage>
          . Atlanta,
          <string-name>
            <surname>GA</surname>
          </string-name>
          , USA (Jun
          <year>2013</year>
          ), https://github.com/hyperopt/hyperopt
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jin</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Feng</surname>
          </string-name>
          , J.:
          <article-title>Dual path networks</article-title>
          .
          <source>In: Advances in Neural Information Processing Systems</source>
          <volume>30</volume>
          , pp.
          <fpage>4467</fpage>
          -
          <lpage>4475</lpage>
          . Curran Associates, Inc. (
          <year>2017</year>
          ), http://papers.nips.cc/paper/7033-dual-path-networks
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Dan</given-names>
            <surname>Cireşan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>U.M.</given-names>
            ,
            <surname>Schmidhuber</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.:</surname>
          </string-name>
          <article-title>Multi-column deep neural networks for image classification</article-title>
          .
          <source>In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</source>
          . pp.
          <fpage>3642</fpage>
          -
          <lpage>3649</lpage>
          . Providence, RI, USA (Jun
          <year>2012</year>
          ), http://www.idsia.ch/~ciresan/data/cvpr2012.pdf
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Fazekas</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schindler</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lidy</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rauber</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A multi-modal deep neural network approach to bird-song identification</article-title>
          .
          <source>In: Working Notes of CLEF</source>
          . Dublin, Ireland (Sep
          <year>2017</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-1866/paper_179
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Foulds</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Frank</surname>
          </string-name>
          , E.:
          <article-title>A review of multi-instance learning assumptions</article-title>
          .
          <source>Knowledge Engineering Review</source>
          <volume>25</volume>
          (
          <issue>1</issue>
          ),
          <fpage>1</fpage>
          -
          <lpage>25</lpage>
          (
          <year>Mar 2010</year>
          ). https://doi.org/10. 1017/S026988890999035X, http://www.cs.waikato.ac.nz/~ml/publications/2010/ FouldsAndFrankMIreview.pdf
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Furlanello</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lipton</surname>
            ,
            <given-names>Z.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Itti</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Anandkumar</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Born again neural networks</article-title>
          .
          <source>In: Proceedings of the 35th International Conference on Machine Learning (ICML). Proceedings of Machine Learning Research</source>
          , vol.
          <volume>80</volume>
          . Stockholm, Sweden (Jul
          <year>2018</year>
          ), https://arxiv.org/abs/
          <year>1805</year>
          .04770
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Goëau</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Glotin</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Planqué</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vellinga</surname>
            ,
            <given-names>W.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kahl</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Joly</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Overview of BirdCLEF 2018: monophone vs. soundscape bird identification</article-title>
          .
          <source>In: Working Notes of CLEF. Avignon</source>
          , France (
          <year>Sep 2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Grill</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schlüter</surname>
          </string-name>
          , J.:
          <article-title>Two convolutional neural networks for bird detection in audio signals</article-title>
          .
          <source>In: Proceedings of the 25th European Signal Processing Conference (EUSIPCO)</source>
          .
          <source>Kos Island</source>
          ,
          <source>Greece (Aug</source>
          <year>2017</year>
          ), http://ofai.at/~jan.schlueter/pubs/ 2017_eusipco.pdf
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>He</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ren</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
          </string-name>
          , J.:
          <article-title>Identity mappings in deep residual networks</article-title>
          .
          <source>In: Proceedings of the 14th European Conference on Computer Vision (ECCV)</source>
          . pp.
          <fpage>630</fpage>
          -
          <lpage>645</lpage>
          . Springer International Publishing, Amsterdam, Netherlands (
          <year>2016</year>
          ). https://doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -46493-0_
          <fpage>38</fpage>
          , preprint http://arxiv.org/ abs/1603.05027
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Hinton</surname>
            ,
            <given-names>G.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Srivastava</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krizhevsky</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sutskever</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Salakhutdinov</surname>
            ,
            <given-names>R.R.</given-names>
          </string-name>
          :
          <article-title>Improving neural networks by preventing co-adaptation of feature detectors</article-title>
          .
          <source>arXiv e-prints abs/1207.0580 (Jul</source>
          <year>2012</year>
          ), http://arxiv.org/abs/1207.0580
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Ioffe</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Szegedy</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Batch normalization: Accelerating deep network training by reducing internal covariate shift</article-title>
          .
          <source>In: Proceedings of the 32nd International Conference on Machine Learning (ICML). Proceedings of Machine Learning Research</source>
          , vol.
          <volume>37</volume>
          , pp.
          <fpage>448</fpage>
          -
          <lpage>456</lpage>
          . PMLR, Lille, France (
          <year>Jul 2015</year>
          ), http://proceedings.mlr.press/ v37/ioffe15.html
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Joly</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goëau</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Botella</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Glotin</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bonnet</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Planqué</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vellinga</surname>
            ,
            <given-names>W.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Müller</surname>
          </string-name>
          , H.:
          <article-title>Overview of LifeCLEF 2018: a large-scale evaluation of species identification and recommendation algorithms in the era of AI</article-title>
          .
          <source>In: Proceedings of CLEF. Avignon</source>
          , France (
          <year>Sep 2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Kahl</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wilhelm-Stein</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hussein</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Klinck</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kowerko</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ritter</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eibl</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Large-scale bird sound classification using convolutional neural networks</article-title>
          .
          <source>In: Working Notes of CLEF</source>
          . Dublin, Ireland (Sep
          <year>2017</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-1866/ paper_143.pdf
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Kingma</surname>
            ,
            <given-names>D.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ba</surname>
          </string-name>
          , J.:
          <article-title>Adam: A method for stochastic optimization</article-title>
          .
          <source>In: Proceedings of the 3rd International Conference on Learning Representations (ICLR)</source>
          . San Diego, CA, USA (May
          <year>2015</year>
          ), http://arxiv.org/abs/1412.6980
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Krizhevsky</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sutskever</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hinton</surname>
          </string-name>
          , G.E.:
          <article-title>ImageNet classification with deep convolutional neural networks</article-title>
          . In: Pereira,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Burges</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.J.C.</given-names>
            ,
            <surname>Bottou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Weinberger</surname>
          </string-name>
          ,
          <string-name>
            <surname>K.Q</surname>
          </string-name>
          . (eds.)
          <source>Advances in Neural Information Processing Systems</source>
          <volume>25</volume>
          , pp.
          <fpage>1097</fpage>
          -
          <lpage>1105</lpage>
          . Curran Associates, Inc. (
          <year>2012</year>
          ), http://papers.nips.cc/paper/ 4824-imagenet
          <article-title>-classification-with-deep-convolutional-neural-networks</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Lasseck</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Bird song classification in field recordings: Winning solution for NIPS4B 2013 competition</article-title>
          .
          <source>In: NIPS Workshop on Neural Information Scaled for Bioacoustics. Lake Tahoe</source>
          ,
          <string-name>
            <surname>NV</surname>
          </string-name>
          , USA (
          <year>2013</year>
          ), http://www.animalsoundarchive.org/ RefSys/Nips4b2013NotesAndSourceCode/WorkingNotes_Mario.pdf
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Lasseck</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Improved automatic bird identification through decision tree based feature selection and bagging</article-title>
          . In: Working Notes of CLEF. Toulouse, France (
          <year>Sep 2015</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1391</volume>
          /
          <fpage>160</fpage>
          -CR.pdf
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Pinheiro</surname>
            ,
            <given-names>P.O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Collobert</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>From image-level to pixel-level labeling with convolutional networks</article-title>
          .
          <source>In: Proceedings of the 28th IEEE Conference on Computer Vision and Pattern Recognition (CVPR)</source>
          . pp.
          <fpage>1713</fpage>
          -
          <lpage>1721</lpage>
          . Boston, MA, USA (Jun
          <year>2015</year>
          ), http://openaccess.thecvf.com/content_cvpr_2015/html/Pinheiro_From_
          <article-title>Image-Level_to_2015_CVPR_paper</article-title>
          .html
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Schlüter</surname>
          </string-name>
          , J.:
          <article-title>Learning to pinpoint singing voice from weakly labeled examples</article-title>
          .
          <source>In: Proceedings of the 17th International Society for Music Information Retrieval Conference (ISMIR)</source>
          . New York City, NY, USA (Aug
          <year>2016</year>
          ), http://ofai.at/~jan. schlueter/pubs/2016_ismir.pdf
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Schlüter</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grill</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Exploring data augmentation for improved singing voice detection with neural networks</article-title>
          .
          <source>In: Proceedings of the 16th International Society for Music Information Retrieval Conference (ISMIR)</source>
          . Málaga, Spain (Oct
          <year>2015</year>
          ), http://ofai.at/~jan.schlueter/pubs/2015_ismir.pdf
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Sercu</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goel</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Dense prediction on sequences with time-dilated convolutions for speech recognition</article-title>
          . In: NIPS Workshop on
          <article-title>End-to-end Learning for Speech and Audio Processing</article-title>
          . Barcelona,
          <string-name>
            <surname>Spain</surname>
          </string-name>
          (Nov
          <year>2016</year>
          ), http://arxiv.org/abs/1611.09288
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Sprengel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jaggi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kilcher</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hofmann</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Audio based bird species identification using deep learning techniques</article-title>
          .
          <source>In: Working Notes of CLEF. Évora, Portugal (Sep</source>
          <year>2016</year>
          ), http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1609</volume>
          /16090547.pdf
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Veit</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wilber</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Belongie</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Residual networks are exponential ensembles of relatively shallow networks</article-title>
          .
          <source>arXiv e-prints 1605.06431v1 (May</source>
          <year>2016</year>
          ), https: //arxiv.org/abs/1605.06431v1
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Getreuer</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hughes</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lyon</surname>
            ,
            <given-names>R.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saurous</surname>
            ,
            <given-names>R.A.</given-names>
          </string-name>
          :
          <article-title>Trainable frontend for robust and far-field keyword spotting</article-title>
          .
          <source>In: Proceedings of the 42nd IEEE International Conference on Acoustics, Speech, and Signal Processing (ICASSP)</source>
          . pp.
          <fpage>5670</fpage>
          -
          <lpage>5674</lpage>
          (
          <year>Mar 2017</year>
          ). https://doi.org/10.1109/ICASSP.
          <year>2017</year>
          .
          <volume>7953242</volume>
          , preprint http://arxiv.org/abs/1607.05666
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Xie</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Girshick</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dollar</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>He</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Aggregated residual transformations for deep neural networks</article-title>
          .
          <source>In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (Jul</source>
          <year>2017</year>
          ), http://openaccess.thecvf.com/content_cvpr_2017/html/Xie_Aggregated_ Residual_Transformations_CVPR_
          <year>2017</year>
          <article-title>_paper</article-title>
          .html
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Zhang</surname>
          </string-name>
          , H.,
          <string-name>
            <surname>Cisse</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dauphin</surname>
            ,
            <given-names>Y.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lopez-Paz</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <article-title>: mixup: Beyond empirical risk minimization</article-title>
          .
          <source>In: Proceedings of the 6th International Conference on Learning Representations (ICLR)</source>
          . Vancouver, Canada (May
          <year>2018</year>
          ), https://arxiv.org/abs/ 1710.09412
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>