Slide 1

Slide 1 text

automated annotation of animal vocalizations (scipy 2019 version) David Nicholson, Emory University, Biology Dept. NickleDave @nicholdav

Slide 2

Slide 2 text

Acknowledgements Gardner lab - Yarden Cohen - Alexa Sanchioni - Emily Mallaber - Vika Skidanova Sober lab - Jonah Queen hybrid-vocal-classifier + vak contributors: Varun Saravanan (Sober lab), Roman Ursu (Leblois), Bradley Colquitt + David Mets (Brainard), Ammon Perkes + Marc Badger (Schmidt) Vika Alexa Emily Yarden Jonah

Slide 3

Slide 3 text

Introduction Why automate annotation of vocalizations? 1. save time 2. answer (new) research questions a. have all the statistical power b. measure things we couldn't measure before

Slide 4

Slide 4 text

Introduction ● What do I mean by annotate vocalizations? ● Birdsong ○ consists of elements called syllables ○ segment sound file into syllables by threshold crossings of amplitude Bengalese finch 1

Slide 5

Slide 5 text

hybrid-vocal-classifier github.com/NickleDave/hybrid-vocal- classifier https://hybrid-vocal-classifier.rea dthedocs.io https://youtu.be/BwNeVNou9-s https://github.com/NickleDave/ML-co mparison-birdsong Introduction A simple convolutional neural network outperforms other algorithms (SVM, k-NN) that rely on engineered features extracted from audio segments

Slide 6

Slide 6 text

Introduction There are many cases in which segmenting is noisy, e.g. because of actual noises, and so methods that extract features from segments will fail

Slide 7

Slide 7 text

Introduction What would a good auto-annotater do for us? Criterion Software we developed to meet this criterion ● segment audio into vocalizations (birdsong syllables, speech syllables, whatever) ● predict labels for segments TweetyNet (neural network)

Slide 8

Slide 8 text

Introduction What would a good auto-labeler do for us? Criterion Software we developed to meet this criterion ● segment audio into vocalizations (birdsong syllables, speech syllables, whatever) ● predict labels for segments TweetyNet (neural network) ● make it easy for anyone to use vak (library)

Slide 9

Slide 9 text

Introduction What would a good auto-labeler do for us? Criterion Software we developed to meet this criterion ● segment audio into vocalizations (birdsong syllables, speech syllables, whatever) ● predict labels for segments TweetyNet (neural network) ● make it easy for anyone to use vak (library) ● work with many different data formats vak, crowsetta (libraries)

Slide 10

Slide 10 text

Methods TweetyNet: a hybrid convolutional-recurrent neural network that segments and labels birdsong and other vocalizations https://github.com/yardencsGitHub/tweetynet canary song segmented into phrases

Slide 11

Slide 11 text

TweetyNet: a hybrid convolutional-recurrent neural network that segments and labels birdsong and other vocalizations https://github.com/yardencsGitHub/tweetynet methods convolutional layers

Slide 12

Slide 12 text

methods TweetyNet: a hybrid convolutional-recurrent neural network that segments and labels birdsong and other vocalizations https://github.com/yardencsGitHub/tweetynet convolutional layers recurrent layers

Slide 13

Slide 13 text

methods TweetyNet: a hybrid convolutional-recurrent neural network that segments and labels birdsong and other vocalizations https://github.com/yardencsGitHub/tweetynet convolutional layers recurrent layers output layers Labels

Slide 14

Slide 14 text

Results TweetyNet achieves low frame error across individuals dataset: https://figshare.com/articles/BirdsongRecognition/3470165

Slide 15

Slide 15 text

Results TweetyNet achieves low frame error across individuals dataset: https://figshare.com/articles/BirdsongRecognition/3470165 <- frame error! (between 0 and 1)

Slide 16

Slide 16 text

Results TweetyNet achieves lower syllable error rate with less training data dataset: https://figshare.com/articles/BirdsongRecognition/3470165

Slide 17

Slide 17 text

Results TweetyNet achieves lower syllable error rate with less training data dataset: https://figshare.com/articles/BirdsongRecognition/3470165 <- syllable error! can be greater than 1

Slide 18

Slide 18 text

Results TweetyNet is accurate across large datasets of canary song with many syllables and lengthy bouts

Slide 19

Slide 19 text

discussion Question: how do I use TweetyNet? Doing science is already hard enough, I don't want to have to learn how to program neural networks on top of that

Slide 20

Slide 20 text

vak discussion vak: automated annotation of vocalizations for everybody https://github.com/NickleDave/vak spectrograms in array files audio files train annotation files Vocalization Dataset predict learning_curve

Slide 21

Slide 21 text

discussion crowsetta A tool to work with any format for annotating vocalizations https://crowsetta.readthedocs.io/en/latest/ crowsetta Audactiy .adu Praat textgrid Annotation (data type) your lab's format Transcriber ("scribe") .csv file format file Annotation formats ...

Slide 22

Slide 22 text

Conclusion Open-source community-developed tools provide opportunity for high throughput automated annotation of vocalizations Development on Github ● https://github.com/yardencsGitHub/tweetynet ● https://github.com/NickleDave/vak ● https://crowsetta.readthedocs.io/en/latest/ Next version out in time for Neuroscience 2019 in Chicago!