Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

banter is a package for creating hierarchical acoustic event classifiers out of multiple call type detectors.

NotificationsYou must be signed in to change notification settings

SWFSC/banter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CRAN versionCRAN last day downloadsCRAN last week downloadsCRAN last month downloadsCRAN total downloads
R-CMD-check

banter

Description

banter is a package for creating hierarchical acoustic event classifiers out of multiple call type detectors.

Installation

To install the latest version from GitHub:

# make sure you have devtools installedif(!require('devtools')) install.packages('devtools')# install package from GitHubdevtools::install_github('SWFSC/banter')

For a complete tutorial, runbanterGuide().

Quick Tutorial

The BANTER (Bio-Acoustic eveNT classifiER) model is initialized with a data frame of events. There is one row per event and it must have a column calledevent.id which is a unique id for each event, and a column calledspecies which assigns each event to a given species. Every other column in the data.frame will be used as a predictor variable for the events.
In the package, an example data.frame is in thetrain.data example data list as the$events element.

data(train.data)bant.mdl<- initBanterModel(train.data$events)

Next, detector data is added to the initialized BANTER model object. Each detector is a data.frame with a column calledevent.id that associates the detected call with an event that the model was initialized with, and acall.id column that provides a unique identifier for each call. Every other column will be used as a predictor variable for the calls.
In the package, example data.frames for three detectors are provided in the$detectors element of thetrain.data example data list. Here is an example of adding the burst pulse (bp) detector.

bant.mdl<- addBanterDetector(bant.mdl,data=train.data$detectors$bp,name="bp",ntree=10,sampsize=1)

TheaddBanterDetector function can be called repeatedly to add additional detectors. Alternatively, if the detectors are all in a named list, they can be added at once:

bant.mdl<- addBanterDetector(bant.mdl,data=train.data$detectors,ntree=10,sampsize=1)

Once all of the detectors have been added, then the full BANTER model is run:

bant.mdl<- runBanterModel(bant.mdl,ntree=5000,sampsize=3)

The model can be easily summarized:

summary(bant.mdl)

The actualrandomForest model can be extracted for the event or detector models:

# extract event Random Forest modelevent.rf<- getBanterModel(bant.mdl,"event")# extract burst pulse (bp) Random Forest modelbp.rf<- getBanterModel(bant.mdl,"bp")

These can then be visualized using other tools, such as those in therfPermute package:

library(rfPermute)plotVotes(event.rf)

To predict novel data, it must be in a list with the event data in the$events element, and the detector data in a named list called$detectors:

data(test.data)predict(bant.mdl,test.data)

Contact

Reference

Rankin, S., Archer, F., Keating, J. L., Oswald, J. N., Oswald, M., Curtis, A. and Barlow, J. (2017) Acoustic classification of dolphins in the California Current using whistles, echolocation clicks, and burst pulses. Mar Mam Sci, 33: 520-540.doi:10.1111/mms.12381

version 0.9.8 (on CRAN)

  • move package to SWFSC GitHub site

version 0.9.6

  • changed behavior ofaddBanterDetector() to provide a warning instead of an error if a detector didn't have enough detections of a species and add all detectors that were valid.
  • minor bug fixes and edits for CRAN

version 0.9.5

  • addsubsampleDetections() to draw a random number of detections per event
  • fixedpredict() so that species names innew.data are modified usingmake.names() like they are in constructing the initial banter model.
  • added run timestamps to all models and changedsummary() to display a matrix of all.
  • fixed trace and inbag plots insummary() andplotDetectorTrace().

version 0.9.4

  • Detector names and detector predictor column names submitted toaddBanterDetector() are now first checked to make sure they are syntactically valid and unique by comparing them with the results frommake.names().
  • Detector names and detector predictor column names innew.data submitted topredict() are first checked to make sure at least one detector from model is present.
  • Detectors missing innew.data forpredict() will automatically have all species detector probabilities and detector proportions set to 0.
  • Added validation option topredict() ifspecies column exists innew.data
  • Default value for num.cores has been set to 1.
  • AddedbanterGuide()

version 0.9.3

  • Initial CRAN release

Contributors3

  •  
  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp