Skip to content

kaede-kmr/evaluate-DL-monitoring

Repository files navigation

Evaluation of deep learning-based monitoring of frog reproductive phenology

This repository contains the code implementation used for training a deep learning classifier as described in the paper published Ichthyology & Herpetology by Kimura and Sota (DOI: https://doi.org/10.1643/h2023018). We trained a convolutional newral network (CNN) capable of identifying five frog species based on their call recorded in Kyoto City, Japan.

The code was uploaded to share an example of simple training procedure using Python and the fastai library. Audio datasets required for training and inference are not included, which are available from the corresponding author (K.K.) upon request.

The training procedure is chiefly based on fastai tutorials on multi-label image classification. If you are interested in creating your own species classification model, I recommend referring to the fastai tutorials as well as Chage (2020).

Environments

Install requirements: fastai 2.7.10, scikit-learn 1.2.0

We used a Windows computer with NVIDIA GeForce RTX 3060.

Description

  1. model-training.ipynb | Train the ResNet18 model to classify spectrograms into six classes. These classes include five frog species and background noise. Since more than one frog species can be present in a single spectrogram, multi-label classification has been implemented.
  2. model-evaluation.ipynb | Write out the classification results of the test dataset and various model performance metrics.
  3. inference-with-trained-model.ipynb | Apply the trained model (stored in output/20230102_trained-model.pkl) to detect frog species in the spectrograms generated from field recordings.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published