2017-03-08 3 views
0

Lesen der anderen Q & A, die auf stackoverflow sind und die Informationen auf der offiziellen Seite von CMUSphinx, lese ich, dass ich den Schwellenwert anpassen muss, aber niemand genau sagt, was der Schwellenwert ist. Ich verstehe, dass, wenn der Wert des Schwellenwerts größer ist, Sie größere Chancen haben, gültige Ergebnisse zu haben, aber Sie können einige verlieren, wenn der Schwellenwert kleiner ist, dann verlieren Sie keine Ergebnisse, aber Sie erhalten einige, die ungültig sind ... (a viele von ihnen in einigen Fällen). Ich habe versucht, eine Stichwortsuche durchzuführen, aber ich konnte keine geeigneten Werte für die Schwellenwerte für meine Keywords finden. Könnte jemand erklären, wie das Ding funktioniert?Was ist der Mindestwert der Schlüsselwortschwelle

Spezifische Frage: Wenn Sie eine Keyword-Suche machen Sie die Schwelle für Schlüsselwort einstellen, dann, wenn Sie setzen die Erkennungs wie folgt aus:

recognizer = SpeechRecognizerRecorderSetup.defaultSetup() 
      .setAcousticModel(new File(appDir, "models/hmm/en-us-semi")) 
      .setDictionary(new File(appDir, "models/lm/cmu07a.dic")) 
      .setRawLogDir(appDir) 
      .setKeywordThreshold(1e-40) 
      .setAudioStorageDirectory("SpeechTutor") 
      .getRecognizer(); 

Was die Bedeutung des setKeywordThreshold() -Methode, wenn Sie bereits haben Legen Sie den Schwellenwert für jedes Keyword fest?

Eine andere Frage: Was ist der Bereich der Schwelle? Ich habe festgestellt, dass der Maximalwert 1,0 ist. Aber das Minimum?

Antwort

1

Was bedeutet die Methode setKeywordThreshold(), wenn Sie den Schwellenwert für jedes Schlüsselwort bereits festgelegt haben?

Es wird

ignoriert

Eine weitere Frage: Was ist der letzte Schrei der Schwelle? Ich habe festgestellt, dass der Maximalwert 1,0 ist. Aber das Minimum?

1e-50 ist ein Minimalwert. Es ist

http://cmusphinx.sourceforge.net/wiki/tutoriallm#keyword_lists

in Tutorial dokumentiert, die ich Ihnen zu lesen empfehlen.