在Youtube上,我可以下载视频的CC字幕,但字幕不包含标点符号。如何自动为字幕添加标点符号?
这是自然语言处理(NLP)中研究的一个问题,通常称为标点符号还原。有一些深度学习解决方案可以实现此目标,但它们并不完美,尽管它们可以实现不错的结果。您可以尝试使用https://github.com/ottokart/punctuator2,它基于这篇论文。(您可以在此处尝试该工具)。
在2023年,有多种方法可以做到这一点:
1. 使用chatGPT,它效果非常好,但由于输入文本的限制,对于长视频(60分钟以上)而言,这是一个相当繁琐的过程。除了批量处理之外,还必须控制每个批次的输出质量,因为它目前不是100%一致的。 2. 使用Deep Multilingual Punctuation Prediction。它可以精确恢复英文文本的77%的标点符号。但它无法修复大写字母。 3. 使用yt-dlp和Whisper。从YouTube下载mp3并运行Whisper。这个OpenAI模型可以非常好地进行语音转文字,并提供带有标点符号的输出。但对于长视频/音频来说速度较慢(处理60分钟音频需要约30分钟)。示例实现 4. 使用yt-dlp和whisper.cpp。它的处理速度更快,处理60分钟音频只需不到10分钟。我的示例实现 5. 使用Shoki.app。无法从YouTube中获取它们,您必须自己生成它们。 谷歌 提供了一项为任意文本生成标点的服务,并且根据我的个人经验,它比某些竞争对手更准确,因此我建议将其通过该服务运行。