원글 링크:
•
Machine Learning에 대한 설명
•
AI로 어떻게 곡을 만들었는지
◦
데이터: 본인과 프로듀서 지인들이 만든 힙합 인스트루멘탈 MIDI 파일들 사용
◦
Google Cloud Platform 사용 + Magenta 설치
◦
훈련된 컴퓨터가 MIDI 생성 + 프로듀서는 악기 소리를 변경하여 더 좋게 들리도록
•
AI가 곡을 만드는 것에 대한 생각
◦
절대로 AI가 사람을 완전 대체해서는 안된다고 생각
◦
본인 혹은 프로듀서 지인들이 직접 만든 MIDI 데이터를 기반으로 하기 때문에 일종의 협업과 같은 형태가 되기도 (”minds coming together”)
•
글 작성자가 AI를 이용하여 만든 힙합 앨범
•
데이터
◦
데이터: 본인과 프로듀서 지인들이 만든 힙합 인스트루멘탈 MIDI 파일들 사용
◦
MIDI 데이터를 NoteSequences로 변환
◦
원하는 특정 사운드/스타일을 만들기 위해서 데이터셋을 cleaning하는 작업에 집중해야했음
•
모델
◦
두 모델을 각자 학습
◦
about 10 - 12 hours each
◦
on average achieved the most desirable metrics/performance around 15,000 epochs
◦
iterated on the models 20+ times
•
이후 작업
◦
모델이 원하는 정도의 퀄리티의 사운드/스타일을 출력할 때까지 학습
◦
백여개 정도의 output을 선정하여 EP에 사용할 snippet으로 사용
사용된 기술
A Comprehensive Survey on Deep Music Generation: Multi-level Representations, Algorithms, Evaluations, and Future Directions https://arxiv.org/abs/2011.06801
Drums RNN (Magenta 구현체)
•
github: magenta/magenta
•
lead drum pattern for snares/kicks/hi-hats
reference
Melody RNN (Magenta 구현체)
•
•
catchy lead melody
reference
•
magenta.tensorflow.org: A Recurrent Neural Network Music Generation Tutorial
•
magenta.tensorflow.org: Generating Long-Term Structure in Songs and Stories
모델 구조
•
Drums RNN: magenta/models/drums_rnn/drums_rnn_model.py
•
Melody RNN: magenta/models/melody_rnn/melody_rnn_model.py
두 모델은 모두 Magenta의 EventSequenceRNN 모델을 상속받고 있다.
•
EventSequence RNN: magenta/models/shared/events_rnn_model.py
Currently this class only supports generation, of both event sequences and note sequences
(via event sequences).
Support for model training will be added at a later time.