0

虽然我们在一般情况下使用Bluemix Java SDK取得了很大的成功,但我们在尝试识别偶尔的非英语单词(例如外国姓氏)时遇到了问题。我们的希望是可以使用SPR语音表示法(它对text2speech非常有用)指定关键字列表,但这似乎不支持speech2text。任何建议/解决方法?如何为IBM Watson speech2text服务指定语音关键字?

SpeechToText service = new SpeechToText(); 
service.setUsernameAndPassword("USERNAME", "PASSWORD"); 

File audio = new File("C:\\Users\\AudioFiles\\euler.wav");  

RecognizeOptions options = new RecognizeOptions().Builder() 
    .contentType(HttpMediaType.AUDIO_WAV) 
    .continuous(true) 
    .inactivityTimeout(500) 
    .keywords({"Agarwal", "Euler", "Qin"}) 
    .keywordsThreshold(0.5) 
    .build(); 

    SpeechResults transcript = service.recognize(audio, options); 
    System.out.println(transcript); 

目标是能说“我的名字是约翰欧拉”。并且成绩单不要返回像“我的名字是约翰奥勒”的东西。 (这是目前的做法)。

THX。

+0

嗨,罗伯特,当你在关键字列表中查找“欧拉”时,它是否显示出来发现关键字列表? –

+0

Thx丹尼尔。这就是我们所希望的,唉。我们回来:'“keywords_result”:{}'。 –

+0

嗯,你传递的三个单词实际上都在词汇表中,但也许找不到它们,因为它们在语言模型中的权重很小。你有没有试过放宽门槛?如果任务以名字为焦点,您也可以尝试使用Watson STT定制服务来提高名字的概率。 –

回答

1

嗯,你传递的三个单词实际上是在词汇表中,但也许没有找到它们,因为它们在语言模型中的权重很小。你有没有试过放宽门槛?你也可以尝试使用Watson STT定制服务来提高名字的概率,如果任务是以名字为焦点的话