A felismerési pontosság javítása kifejezéslistával

A kifejezéslista azoknak a szavaknak vagy kifejezéseknek a listája, amelyek előre meg lesznek adva a felismerésük javítása érdekében. Ha egy kifejezést hozzáad egy kifejezéslistához, az növeli annak fontosságát, így nagyobb valószínűséggel lesz felismerve.

A támogatott kifejezéslista területi beállításaiért tekintse meg a Speech szolgáltatás nyelv- és hangtámogatását.

Példák a kifejezésekre:

  • Nevek
  • Földrajzi helyek
  • Azonos alakú szavak
  • Az iparág vagy a szervezet számára egyedi szavak vagy mozaikszavak

A kifejezéslisták egyszerűek és egyszerűek:

  • Igény szerinti: A beszédfelismerés megkezdése előtt megjelenik egy kifejezéslista, így nincs szükség egyéni modellek betanítására.
  • Egyszerű: Nincs szükség nagy adatkészletre. Adjon meg egy szót vagy kifejezést, hogy növelje annak felismerését.

A Speech Studióval, a Speech SDK-val vagy a Speech Parancssori felülettel (CLI) kifejezéslistákat is használhat. A Batch átírási API nem támogatja a kifejezéslistákat.

A kifejezéslistákat szabványos és egyéni beszéddel is használhatja. Vannak olyan helyzetek, amikor a kifejezéseket tartalmazó egyéni modell betanítása valószínűleg a legjobb megoldás a pontosság javítására. A következő esetekben például egyéni beszédet használna:

  • Ha nagy kifejezéslistát kell használnia. Egy kifejezéslistának nem szabad 500-nál több kifejezéssel rendelkeznie.
  • Ha olyan nyelvek kifejezéslistájára van szüksége, amelyek jelenleg nem támogatottak.

Kipróbálás a Speech Studióban

A Speech Studióval tesztelheti, hogy a kifejezéslista hogyan javítaná a hangfelismerést. Ha egy kifejezéslistát éles környezetben szeretne megvalósítani az alkalmazással, használja a Speech SDK-t vagy a Speech CLI-t.

Tegyük fel például, hogy azt szeretné, hogy a Speech szolgáltatás felismerje ezt a mondatot: "Szia Rehaan, Jessie vagyok a Contoso bankból."

Előfordulhat, hogy egy kifejezést helytelenül ismernek fel a következőként: "Szia mindenki, én vagyok Jesse nem tudja ezt a bank."

Az előző forgatókönyvben fel szeretné venni a "Rehaan", a "Jessie" és a "Contoso" kifejezést a kifejezéslistára. Ezután a neveket helyesen kell felismerni.

Most próbálja ki a Speech Studiót annak megtekintéséhez, hogy a kifejezéslista hogyan javíthatja a felismerési pontosságot.

Feljegyzés

Előfordulhat, hogy a rendszer arra kéri, hogy válassza ki az Azure-előfizetést és a Speech-erőforrást, majd nyugtázza a régió számlázását.

  1. Lépjen a Valós idejű beszéd a szöveghez a Speech Studióban.
  2. A beszédfelismerés teszteléséhez töltsön fel egy hangfájlt, vagy rögzítse a hangot mikrofonnal. Válassza ki például a hang felvételét egy mikrofonnal , majd mondja ki a következőt: "Hi Rehaan, Jessie vagyok a Contoso bankból. " Ezután válassza a piros gombot a felvétel leállításához.
  3. Az átírás eredményét a Teszteredmények szövegmezőben kell látnia. Ha a "Rehaan", a "Jessie" vagy a "Contoso" helytelenül lett felismerve, a következő lépésben hozzáadhatja a kifejezéseket egy kifejezéslistához.
  4. Válassza a Speciális beállítások megjelenítése lehetőséget, és kapcsolja be a Kifejezés listát.
  5. Írja be a "Contoso; Jessie; Rehaan" a kifejezéslista szövegmezőjében. Több kifejezést pontosvesszővel kell elválasztani. Screenshot of a phrase list applied in Speech Studio.
  6. A mikrofonnal ismét tesztelje a felismerést. Ellenkező esetben a hangfájl melletti újrapróbálkozási nyílra kattintva újra futtathatja a hangot. A "Rehaan", a "Jessie" vagy a "Contoso" kifejezéseket fel kell ismerni.

Kifejezéslista implementálása

A Speech SDK-val egyenként adhat hozzá kifejezéseket, majd futtathatja a beszédfelismerést.

var phraseList = PhraseListGrammar.FromRecognizer(recognizer);
phraseList.AddPhrase("Contoso");
phraseList.AddPhrase("Jessie");
phraseList.AddPhrase("Rehaan");

A Speech SDK-val egyenként adhat hozzá kifejezéseket, majd futtathatja a beszédfelismerést.

auto phraseListGrammar = PhraseListGrammar::FromRecognizer(recognizer);
phraseListGrammar->AddPhrase("Contoso");
phraseListGrammar->AddPhrase("Jessie");
phraseListGrammar->AddPhrase("Rehaan");

A Speech SDK-val egyenként adhat hozzá kifejezéseket, majd futtathatja a beszédfelismerést.

PhraseListGrammar phraseList = PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");

A Speech SDK-val egyenként adhat hozzá kifejezéseket, majd futtathatja a beszédfelismerést.

const phraseList = sdk.PhraseListGrammar.fromRecognizer(recognizer);
phraseList.addPhrase("Contoso");
phraseList.addPhrase("Jessie");
phraseList.addPhrase("Rehaan");

A Speech SDK-val egyenként adhat hozzá kifejezéseket, majd futtathatja a beszédfelismerést.

phrase_list_grammar = speechsdk.PhraseListGrammar.from_recognizer(reco)
phrase_list_grammar.addPhrase("Contoso")
phrase_list_grammar.addPhrase("Jessie")
phrase_list_grammar.addPhrase("Rehaan")

A Speech CLI-vel sorba állíthat egy kifejezéslistát, vagy egy szövegfájlt a felismerő paranccsal együtt.

Próbáljon felismerni egy mikrofonból vagy egy hangfájlból.

spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
spx recognize --file "your\path\to\audio.wav" --phrases "Contoso;Jessie;Rehaan;"

Olyan szövegfájllal is hozzáadhat kifejezéslistát, amely soronként egy kifejezést tartalmaz.

spx recognize --microphone --phrases @phrases.txt
spx recognize --file "your\path\to\audio.wav" --phrases @phrases.txt

Az engedélyezett karakterek közé tartoznak a területi beállításokra jellemző betűk és számjegyek, szóközök és speciális karakterek, például +, -, $, :, (, ), {, }, _, ., ?, @, \, ', &, #, %, ^, *, ', <, , >;, /. Az egyéb speciális karaktereket a rendszer belsőleg eltávolítja a kifejezésből.

Következő lépések

További lehetőségek a felismerés pontosságának javításához.