# 0106 meeting note
###### tags: `meeting note`
https://drive.google.com/drive/folders/1f95_VN2CH4QYUlU83fGmW5Xn_O8G1tCc?usp=share_link
- New Input/Output format
- Input
- chroma x 3
- float
- I ignore bass track when calculating chromagrams to prevent machine read the ground truth directly from the input
- **IF OUR GOAL IS TO WRITING BASS ACCOMPANIMENT OF A MIDI JAZZ PIECE, THEN WE SHOULD NOT HIDE THE GROUND TRUTH IN CHROMAGRAM !!**
- speed
- positive integer
- number of instrument playing simultaneously
- positive integer
- is bass playing
- true(1) / false(0)
- if there are bass notes in this bar in ground truth
- it’s hard for machine or even human to guess where the arranger of the piece want bass be silent
- time signature
- [integer, integer]
- beat position
- integer (0~15)
- bar position
- positive integer
- Output
- pitch + rest
- One hot vector
- B0~D5, rest -> len=53
- is_onset
- true(1) / false(0)
- whether this frame is the start of a note
- make it able to learn the note repetition
- start_correction / end_correction
- float >= 0
- offset (sec) of the actual start/end of note
- make it able to learn how to swing
- velocity
- 0 <= integer <= 127
- how heavily the note is hit
- Graph help u understand


- Next Step
- Fit the model with new input and output format
- Try [gradient clipping](https://neptune.ai/blog/understanding-gradient-clipping-and-how-it-can-fix-exploding-gradients-problem) or weight decay to prevent gradient explosion, which always happens
- experiment go go go
- prepare test and validation dataset