- 在mid文件夹下存放原始的midi音乐
cd tool-chain
,依次执行mid2xml.sh
,sequentialize2.sh
(sequentialize.sh
也可以,但推荐后者),xml2pkl.sh
,merge.sh
cd ..; cp data.pkl CompoNet/data/train.pkl
cd CompoNet
- 训练的模型会保存到
save
,如果想重新训练,请保证save
是空的 ./train.py
- 训练过程中按ctrl+c会出现输入指令的提示,c为继续,q为退出,w为保存训练模型,l为修改学习速率(未实现……)
- 训练结束后,
./sample.py
生成乐曲,前奏为训练数据的前x个note cd ../output; ./output2xml.py; xml2mid.py
,生成output.mid
可调的参数在下面几个位置:
compo_net.py
中Config类的定义(建议在train.py中传给Config的参数里改)compo_net.py
中_sample函数决定取样方法sample.py
中初始序列长度