:sound: LP-MusicCaps:基于LLM的伪音乐字幕生成
这是LP-MusicCaps:基于LLM的伪音乐字幕生成的实现。该项目旨在为音乐生成字幕。1) 标签到字幕:利用现有标签,我们利用OpenAI的GPT-3.5 Turbo API的强大功能,基于音乐标签生成高质量且与上下文相关的字幕。2) 音频到字幕:使用音乐音频和伪字幕对,我们训练了一个跨模态编码器-解码器模型,用于端到端音乐字幕生成。
SeungHeon Doh, Keunwoo Choi, Jongpil Lee, Juhan Nam
将发表于ISMIR 2023
新闻
- 23.12.12 我们的论文受邀发表在TISMIR期刊上。敬请期待扩展版本
- 23.11.10 我们的论文入围ISMIR最佳论文奖(5/104)
简介
- 步骤1.标签到字幕:LLM字幕生成:从给定的标签输入生成字幕。
- 步骤2.预训练音乐字幕模型:从给定的音频生成伪字幕。
- 步骤3.迁移音乐字幕模型:从给定的音频生成人类水平的字幕。
开源材料
可在线获取用于未来研究。数据集示例见笔记本
安装
要在本地运行此项目,请按以下步骤操作:
- 安装python和PyTorch:
- python==3.10
- torch==1.13.1(请根据您的CUDA版本安装。)
- 其他要求:
- pip install -e .
快速开始:标签到字幕
cd lpmc/llm_captioning
python run.py --prompt {writing, summary, paraphrase, attribute_prediction} --tags <music_tags>
将<music_tags>替换为您想生成字幕的标签。用逗号分隔多个标签,例如beatbox, finger snipping, male voice, amateur recording, medium tempo
。
标签到字幕生成writing
结果:
查询:
写一个包含以下属性的歌曲描述句子
beatbox, finger snipping, male voice, amateur recording, medium tempo
----------
结果:
"体验一段业余录音的原始和真实能量,迷人的beatbox节奏与吸引人的手指打击声交织在一起,同时一个富有灵魂的男声以中等节奏传递富有感情的歌词。"
快速开始:音频到字幕
cd demo
python app.py
# 或
cd lpmc/music_captioning
wget https://huggingface.co/seungheondoh/lp-music-caps/resolve/main/transfer.pth -O exp/transfer/lp_music_caps
python captioning.py --audio_path ../../dataset/samples/orchestra.wav
{'text': "这是一个交响乐团演奏的一段激动人心、惊心动魄且令人兴奋的乐曲。
这段音乐适合在电影中某些宏伟壮观的场景中使用。
有单簧管、大号、小号和法国号在演奏。铜管乐器帮助营造出那种重大场合的感觉。",
'time': '0:00-10:00'}
{'text': '这是一段来自电影配乐的古典音乐。
单簧管演奏主旋律,同时铜管乐器和长笛也在演奏旋律。
声音的节奏背景由原声鼓提供。氛围宏大而充满胜利感。
这段音乐可以用于历史剧电影配乐中,特别是军队行进到最后的场景。',
'time': '10:00-20:00'}
{'text': '这是一段古典音乐的现场演奏。竖琴演奏旋律,而号角在背景中演奏低音线。
氛围恢宏。这段音乐可以用于历史剧电影配乐中,特别是冒险视频游戏的场景。',
'time': '20:00-30:00'}
重新实现
查看lpmc/llm_captioning
和lpmc/music_captioning
许可证
本项目采用CC-BY-NC 4.0许可证。详情见LICENSE。
致谢
我们要感谢WavCaps提供的音频字幕训练代码和deezer-playntell提供的基于内容的字幕评估协议。我们要感谢OpenAI提供GPT-3.5 Turbo API,它为这个项目提供了动力。
引用
如果该项目对您的研究有帮助,请考虑在您的出版物中引用我们的论文。BibTeX参考如下。
@article{doh2023lp,
title={LP-MusicCaps: LLM-Based Pseudo Music Captioning},
author={Doh, SeungHeon and Choi, Keunwoo and Lee, Jongpil and Nam, Juhan},
journal={arXiv preprint arXiv:2307.16372},
year={2023}
}