WeKws是一个面向生产的端到端关键词检测(Keyword Spotting, KWS)工具包,由微信AI团队开发并开源。它专门为物联网(IoT)设备设计,提供了一种让用户通过语音唤醒词来控制设备的免提体验。WeKws具有低功耗、小型化、低计算复杂度等特点,能够在资源受限的嵌入式设备上实时检测预定义的关键词。
作为一个生产级的工具包,WeKws不仅提供了高精度的模型和算法,还注重易用性和可扩展性。开发者可以利用WeKws快速构建和部署自己的关键词检测系统,无需深入了解底层算法细节。同时,WeKws还支持多种应用场景和硬件平台,能够满足不同用户的需求。
WeKws具有以下几个突出特点:
端到端架构:采用端到端的深度学习方法,无需手动特征工程,简化了开发流程。
小型化设计:模型参数量小,适合在资源受限的IoT设备上运行。
低延迟:支持流式检测,能够实时响应用户的语音指令。
多场景支持:适用于单一唤醒词、多唤醒词、自定义唤醒词等多种应用场景。
跨平台:支持web浏览器、x86、Android、树莓派等多种硬件平台。
开源友好:采用Apache 2.0开源协议,鼓励社区贡献和创新。
WeKws采用模块化的设计,主要包含以下几个核心组件:
特征提取:将原始音频信号转换为适合模型输入的特征表示,如Mel频谱图等。
神经网络模型:采用先进的深度学习模型进行关键词检测,如FSMN、TCN等。
解码器:根据模型输出进行后处理,得到最终的检测结果。
运行时:提供跨平台的推理引擎,支持在不同设备上高效运行模型。
工具链:包括数据处理、模型训练、评估、导出等辅助工具。
WeKws支持多个公开的唤醒词数据集,包括:
在这些数据集上,WeKws实现了多个先进的神经网络模型,如:
这些模型在准确率和效率方面都达到了业界领先水平。WeKws还提供了在这些数据集上预训练好的模型,用户可以直接下载使用或进行微调。
要开始使用WeKws,请按以下步骤操作:
git clone https://github.com/wenet-e2e/wekws.git