API 或 SDK 仅对数字(1 到 10000 之间)进行语音识别?

Posted

技术标签:

【中文标题】API 或 SDK 仅对数字(1 到 10000 之间)进行语音识别?【英文标题】:API or SDK to make speech recognition only for numbers (between 1 and 10000)? 【发布时间】:2019-08-26 18:34:33 【问题描述】:

我需要一种经过优化的专门解决方案来检测 1 到 1000 之间的数字,以便在智能手机上使用。 最好的解决方案是让这个 SDK 离线工作。 任何想法 ? 我没有找到任何使用 Google Speech 或 Amazon Transcribe 的配置来允许“仅数字”

【问题讨论】:

我对此投了赞成票。我也有类似的需求。我正在开发一个用于进行语音输入清单(离线)的应用程序。用户会声明一个预定义的关键字,后跟一个数字。 这不是一个与编码相关的问题。没有显示任何努力(即使是寻找和实施)。这根本不是提出这个问题的正确地方。 【参考方案1】:

严格要求人们提供数字是不正确的,即使您要求他们提供数字,他们通常也会说很多诸如“我不知道”或“等一下”之类的话。您将严重损害体验。

你必须智能地分析识别结果,即使识别出非数字你也必须采取相应的行动。

要特别提高数字的准确性,您可以使用 Google Speech API 的word hint feature。只需添加数字和其他必需的单词作为提示,Google 就会更准确地识别它们。亚马逊也有这个功能,他们称之为“custom vocabulary”。

如果您想使用离线 API,您当然可以尝试Kaldi。可以adapt Kaldi vocabulary带数字提高准确率,会比谷歌API好很多。

【讨论】:

【参考方案2】:

我为此找到的最佳解决方案是将 class tokens 作为短语传递给您的 google 请求。这允许您指定常用的特定值集以用作字典。例如,传入 ["$OOV_CLASS_DIGIT_SEQUENCE"] 允许您过滤任意长度的数字。

【讨论】:

以上是关于API 或 SDK 仅对数字(1 到 10000 之间)进行语音识别?的主要内容,如果未能解决你的问题,请参考以下文章

await 仅对异步函数有效城市字典 api discord js

AWS Elastic Beanstalk 仅对 API Gateway 开放

Azure IOT PnP 数字孪生 API/SDK 用于检索设备/孪生的属性、命令和遥测定义

API和SDK的区别

求一个版本号的正则表达式,版本号的格式可以是1.1或1.1.2或10000这个样子的

为啥我的 POST 请求仅对我的 API 不起作用?