List of Contents Guides for using the repository can be found here Chapter 0 A. ENVIRONMENT SETUP Required Packages CPU Installation venv Installation Anaconda Installation GPU Installation Local GPU Installation HPC Cluster GPU Installation Anaconda Installation B. HPC Cluster Guide Getting Started Accounts Accessing the Clusters Using the Clusters Resources Interactive Sessions Submitting Jobs Available Software Monitoring or Cancelling Jobs Chapter 1 A. Data Representation & Datasets Introduction Data Representation HVO_Sequence Example Code Datasets Groove Midi Dataset Load dataset as a dictionary Extract HVO_Sequence objects from dataset dictionaries Load GMD Dataset in HVO_Sequence format using a single command !!! B. HVO Sequence Basic Attributes Beat Division Factors Drum Mapping Grid Attributes Metadata HVO: Piano-roll Score Simple Usage Built-in Tools Multi-Segment Scores Chapter 2 - Models A. Groove Transformer Introduction Instantiating a Model BasicGrooveTransformer.GrooveTransformer BasicGrooveTransformer.GrooveTransformerEncoder Storing a Model Loading a Stored Model Generation using a Model B. Variational Groove transformer Introduction Model Description Network Architecture loss functions Training Parameters MonotonicGrooveVAE.GrooveTransformerEncoderVAE Instantiation Storing Loading Pretrained Versions Generation Chapter 3 - Evaluation Tools A. GrooveEvaluator Part A1 Prepapre the data used for Evaluation Initialization Preparing Predictions Get Ground Truth Samples Pass Samples to Model Add Predictions to Evaluator Saving and Loading Part A2 Accessing Evaluation Results Results as Dictionaries or Pandas.DataFrame Rendering Results as Bokeh Plots Rendering Piano Rolls/Audio/Midi Compiling Plots for Logging B. MultiSetEvaluator Prepapre the sets used for cross comparison Initialization Saving and Loading Available Analyzers Inter-Intra Analysis (raw statistics, distribution plots and KL/OA Plots) Hit, Velocity, Offset Analysis Compiling Results Chapter 4 - WANDB Chapter 5 - Training