导言
在上一篇文章中,分享了我们在特征提取和语音识别方面的经验。具体来说,我们使用呼叫者diarization和LIUM库在单独的短语中检测语音。本文中将分享如何使用XGBoost以及LSTM和XGB的组合检测整个音频文件中的语音。
检测整个文件中的语音
如果文件至少包含一个违反规则的短语,将会标记为可疑文件。使用该方法标记2,500个文件。
为了提取特征,是用哪个相同的原理和相同的ANN架构,唯一的区别是,扩展了网络架构以适应特征空间的新维度。
通过最佳神经网络参数,实现了85%的分类精度。
XGBoost特征提取
XGBoost模型需要为每个文件提供固定的功能。为了满足功能需求,创建了几个信号和统计信息(参数)。
使用了以下统计数据:
信号的平均值
信号前10秒的平均值
信号最后3秒的平均值
信号局部最大值的平均值
信号前10秒的局部最大值的平均值
信号最后3秒的局部最大值的平均值
计算每个信号的所有统计数据,出记录长度外,功能总数为36。为每个录音提供了37个数字特征。算法的精度达到了0.869.
LSTM和XGB的组合
为了组合分类器,我们将混合应用于这两个模型,它使得平均准确度增加2%。
设法将该算法的预测精度提高0.9 ROC-AUC。
结果
我们使用205个文件的样本测试了深度神经网络分类器。其中,177人是中立的,28人是可疑的。DNN必须处理它们中的每一个,并且预测属于哪个组。
170个中性文件被正确识别为中性
7个中性文件被确认为可疑
13个可疑文件被正确识别为可疑文件
15个可疑文件被确定为中立
为了估计真假输出的百分比,我们使用了混淆矩阵,为了更好的视觉清晰度,使用2*2表。
检测语音中的特定短语
我们迫切的希望尝试这种方法来识别音频文件中的单词和短语。目标是检测呼叫中心代理在呼叫的前10秒钟内不向客户端介绍自己及其组织的文件。其中使用了200个短语,平均长度为1.5秒,呼叫中心代理介绍自己和中心的情况。
手动标记文件花了我们很多时间,因为遍历每一条记录都要检查所需的短语是否在其中。为了加快速度,使用扩充来增加数据集。我们随机改变了每个文件6次,增加了噪音,改变了频率,改变了音量,得到的数据集包含1500个样本。
结果
使用代理语音的前10秒来训练分类器,因为这是所需短语发音的时间范围。这种类型的每个文件被分成窗口(窗口长度1.5秒,窗口步骤1秒)并由网络处理为输入文件。作为每个文件的输出,在每个选定的时间窗口中发音的概率。
我们标记了300多个文件,以确定所需的短语是否在前10秒内发音,这些文件的准确率为87%。
为何使用语音识别软件
自动呼叫评分有助于为呼叫中心座席定义明确的KPI,确定最佳实践并遵循这些KPI,并提高呼叫中心的工作效率。但是,语音识别软件可以应用于更广泛的任务。
下面,您可以找到几个组织如何从语音识别软件中受益的示例:
收集和分析数据以改善语音用户体验
分析通话记录以查找连接和趋势
用他们的声音认出人
检测并识别客户的情绪,以获得更高的客户满意度
深入挖掘出价数据并提高首次呼叫解决率
增加每次通话的收入
降低客户流失率
长按二维码 ▲
订阅「架构师小秘圈」公众号
如有启发,帮我点个在看,谢谢↓