ASRTest
开源介绍
与传统的软件相比,设计针对DNN驱动的语音识别系统的测试方法更具挑战性。与DNN驱动的语音识别系统不同的是,在传统的软件开发过程中,开发人员手工确认和构建业务逻辑。这些语音识别系统的核心是DNN模型,采用数据驱动编程范式,从海量数据中学习。因此,传统的测试方法已不再适用于DNN驱动的语音识别系统。此外,DNN模型由多层和数百万个参数组成,导致输出原因无法分析和常规测试标准(如代码覆盖)无效。最后一个挑战是在生成测试用例时构建测试预言。构建正确的无标记音频的识别结果往往需要大量的人力物力。现有的数据集是非常宝贵的,建立一个新的数据集需要大量的时间、劳动力,甚至金钱成本。为了解决上述的测试DNN驱动的语音识别系统的挑战,该工具提供了一种面向场景特征的语音识别系统测试用例生成方法,其采用了三个系列的音频转换算子,包括特征突变、噪音注入和混响模拟去转换生成贴合真实应用场景的音频。
运行依赖
pip install pydub
pip insatll pyroomacoustics
pip install librosa==0.9.2 (注意版本正确)
参数说明
python speech_transform.py --type noise --gen_nums 4 --orig_dir ./orig_audio --target_dir ./target_audio
- type: 扩增算子的类型,可选范围为 feature,noise,room,分别对应人声特征变异,噪音注入,混响模拟
- gen_nums:每个音频被扩增的倍数
- orig_dir:种子音频存放的目录,注意该目录下的音频都会被扩增
- target_dir:扩增后音频的存放的位置
ASRTest
开源介绍
与传统的软件相比,设计针对DNN驱动的语音识别系统的测试方法更具挑战性。与DNN驱动的语音识别系统不同的是,在传统的软件开发过程中,开发人员手工确认和构建业务逻辑。这些语音识别系统的核心是DNN模型,采用数据驱动编程范式,从海量数据中学习。因此,传统的测试方法已不再适用于DNN驱动的语音识别系统。此外,DNN模型由多层和数百万个参数组成,导致输出原因无法分析和常规测试标准(如代码覆盖)无效。最后一个挑战是在生成测试用例时构建测试预言。构建正确的无标记音频的识别结果往往需要大量的人力物力。现有的数据集是非常宝贵的,建立一个新的数据集需要大量的时间、劳动力,甚至金钱成本。为了解决上述的测试DNN驱动的语音识别系统的挑战,该工具提供了一种面向场景特征的语音识别系统测试用例生成方法,其采用了三个系列的音频转换算子,包括特征突变、噪音注入和混响模拟去转换生成贴合真实应用场景的音频。
运行依赖
pip install pydub pip insatll pyroomacoustics pip install librosa==0.9.2 (注意版本正确)
参数说明