gpt4 book ai didi

python - 如何组合两个音频并在机器学习中训练它们

转载 作者:行者123 更新时间:2023-11-30 10:00:07 25 4
gpt4 key购买 nike

我必须使用音频文件训练神经网络。

我有一个音频数据集,其中包含带有人名和命令的文件夹。假设一个文件夹是“Marvin”,人名变成“Mavin”,另一个文件夹是“speak”,所以命令是“speak”。现在我想要音频文件,其中音频显示“马文讲话”。

现在我想到的方法是加入 pydub 库中的音频文件并训练神经网络。

from pydub import AudioSegment
sound_marvin = AudioSegment.from_file('marvin_audio.wav')
sound_speak = AudioSegment.from_file('speak_audio.wav')
final = sound_marvin + sound_speak
final.export('final.wav', format='wav')

我的方法正确还是有更好的方法?

欢迎任何建议/想法。

最佳答案

您的问题“我的方法是否正确,或者是否有更好的方法来做到这一点?”涉及很多问题。最突出的是:

  1. 读取两个不同的音频文件并将它们连接起来
  2. 将音频文件混合为一个音频文件
  3. 使用音频作为神经网络 (NN) 的输入(即应使用什么形式的输入数据)
  4. 用于音频相关任务的神经网络类型
  5. 神经网络将被训练执行的实际损失/任务
  6. 如何验证该方法是否更好

我认为你暗示你问的是1和2,所以我将集中回答1和2。

<小时/>

只有在以下情况下,您所展示的内容才可能是一个最小的工作示例:

  1. marvin_audio.wavspeak_audio.wav 具有相同的采样频率
  2. + 表示连接,这对于音频处理来说确实非常不直观。

如果上述两个条件不成立,那么您的音频将会失真。

如果两者都成立,那么您将首先获得第一个文件的音频,然后获得第二个文件的音频。

您可以做的事情很少,并且不需要专业的领域知识。这些将是:

  1. 从音频文件中,从开头和结尾修剪静音(silene = 最大值低于阈值的连续样本,例如 -60 dB FS)
  2. 标准化音频文件,使两者都具有 |1|作为最大值
  3. 在静音修剪的音频文件的开头和结尾(分别)添加淡入和淡出
  4. 手动创建一个静音音频文件(即以全零作为样本值的音频文件),其持续时间由您定义,这样在音频文件的大多数组合/串联下听起来几乎是正常的。

为了更好地控制您正在做的事情,我建议使用一些更专用的音频处理库,例如 librosa

关于python - 如何组合两个音频并在机器学习中训练它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59352027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com