Ios 语音识别中如何处理同音词?
对于那些不熟悉a是什么的人,我提供以下示例:Ios 语音识别中如何处理同音词?,ios,swift,string,nlp,speech-recognition,Ios,Swift,String,Nlp,Speech Recognition,对于那些不熟悉a是什么的人,我提供以下示例: 我们的&are 嗨&嗨 到&太&两个 在使用iOS附带的时,我遇到了这样的情况:用户可能会说出其中一个单词,但它不会总是返回我想要的单词 我查看了[alternativeSubstrings]()属性,想知道这是否有帮助,但在我对上述单词的测试中,它总是返回为空 我也查了一下,但没有找到任何有用的东西 我知道当用户添加更多单词时,Speech API可以开始推断上下文并更正这些单词,但我的用例无法很好地处理这些单词,因为它通常最多只需要一两个单词
- 我们的&are
- 嗨&嗨
- 到&太&两个
[alternativeSubstrings]
()属性,想知道这是否有帮助,但在我对上述单词的测试中,它总是返回为空
我也查了一下,但没有找到任何有用的东西
我知道当用户添加更多单词时,Speech API可以开始推断上下文并更正这些单词,但我的用例无法很好地处理这些单词,因为它通常最多只需要一两个单词,从而限制了上下文的有效性
上下文处理的一个示例:
通过使用上面的单词,我得到了以下结果:
- 是
- 嗨
- 到
[are,our],[to,too,two],[hi,high]
,或者可以将字符串与支持同音词的函数进行比较
这方面的一个例子是:
if myDetectedWord == "to" then { ... }
其中,
myDetectedWord
可以是[也可以是两个]
,并且该函数将为每一个返回true。这是一个常见的NLP难题,我不太确定在这个应用程序中您希望得到什么样的输出。但是,如果可能,您可能希望在设计/架构(architecture)过程中绕过此问题。否则,这个问题将变成一个挑战
话虽如此,如果你真的想参与其中,我喜欢你的想法: 函数的字符串 这可能会更高效、更友好 一种方法是,我希望通过正则表达式处理来解决这个问题,而不是使用无休止的循环和数组。您可以先对循环和数组进行原型化,看看它是如何工作的,然后您可能希望使用正则表达式来获得性能 例如,您可以在正则表达式中定义固定数组并快速检查字符串(逐字检查,可能使用反向引用),并且可以根据需要在字符串处理中添加许多边界 您的固定数组也可以根据字符串的某些部分出现某些单词的概率来设计。比如说,
^I
vs
成为第一个单词的概率远远高于I
eye
- 在字符串的任何部分出现
的概率也高于出现I
的概率李>eye
虽然项目不错,但我希望你喜欢/喜欢这个挑战 谢谢@emma的回答。我将对此进行调查,尽管这可能需要一点时间。为了提供该项目的一些背景资料,这是一个PoC,对象是一位幼儿言语治疗师的朋友。她的目标是使用一种设备帮助对孩子的讲话进行快速评估,让他们从1-2个单词的短语列表中阅读。这就是为什么当词组可能是“两辆车”时,语境分析将不起作用。
^eye