Coder Social home page Coder Social logo

sonata's Introduction

Sonata

Project for chord recognition using deep RNNs. Designed to be used with the Isophonics Dataset(http://isophonics.net/), but can be used with any dataset with labeled chords corresponding to a time interval.

Note: Datasets do not come with corresponding audio due to copyright concerns.

Setup:

  1. Clone Dataset
  2. Clone BTC Model
  3. add config/config.yaml with relevant paths
  4. mkdir checkpoints
  5. run train.py
  6. pip3 install audiomentations numpy pandas pyrubberband librosa pyyaml mir_eval pretty_midi music21 comet_ml sklearn torch torchvision matplotlib numba==0.48
  7. apt-get install ffmpeg

Example config(config/config.yaml):

model: 
  path: #PATH TO MODEL
  feature_size : 108
  timestep : 108
  num_chords : 133
  input_dropout : 0.2
  layer_dropout : 0.2
  attention_dropout : 0.2
  relu_dropout : 0.2
  num_layers : 8
  num_heads : 4
  hidden_size : 128
  total_key_depth : 128
  total_value_depth : 128
  filter_size : 128
  loss : 'ce'
  probs_out : False
  sample_rate: 22050
preprocess:
  data_path: #PATH TO DATASET
  sample_rate: 22050
  hop_size: 2048
  window_size: 10
  song_hz: 22050

sonata's People

Contributors

jrmylee avatar jrmyleecape avatar

Stargazers

Sitare Arslantürk avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.