De nauwkeurigheid van herkenning verbeteren met een frasenlijst

Een woordgroepenlijst is een lijst met woorden of woordgroepen die van tevoren worden aangeboden om hun herkenning te verbeteren. Het toevoegen van een woordgroep aan een frasenlijst verhoogt het belang, waardoor deze waarschijnlijker wordt herkend.

Zie Taal- en spraakondersteuning voor de Speech-service voor ondersteunde woordgroepenlijst.

Voorbeelden van woordgroepen zijn:

  • Namen
  • Geografische locaties
  • Homoniemen
  • Woorden of acroniemen die uniek zijn voor uw branche of organisatie

Woordgroepenlijsten zijn eenvoudig en lichtgewicht:

  • Just-In-Time: er wordt een woordgroepenlijst opgegeven vlak voordat u de spraakherkenning start, waardoor u geen aangepast model hoeft te trainen.
  • Lichtgewicht: U hebt geen grote gegevensset nodig. Geef een woord of woordgroep op om de herkenning ervan te verbeteren.

U kunt woordgroepenlijsten gebruiken met de Speech Studio, Speech SDK of Speech Command Line Interface (CLI). De Batch-transcriptie-API biedt geen ondersteuning voor woordgroepenlijsten.

U kunt woordgroepenlijsten gebruiken met zowel standaard als aangepaste spraak. Er zijn situaties waarin het trainen van een aangepast model met woordgroepen waarschijnlijk de beste optie is om de nauwkeurigheid te verbeteren. In de volgende gevallen gebruikt u bijvoorbeeld aangepaste spraak:

  • Als u een grote lijst met woordgroepen wilt gebruiken. Een frasenlijst mag niet meer dan 500 zinnen bevatten.
  • Als u een frasenlijst nodig hebt voor talen die momenteel niet worden ondersteund.

Probeer het in Speech Studio

U kunt Speech Studio gebruiken om te testen hoe de woordgroepenlijst de herkenning van uw audio kan verbeteren. Als u een frasenlijst wilt implementeren met uw toepassing in productie, gebruikt u de Speech SDK of Speech CLI.

Stel dat u wilt dat de Speech-service deze zin herkent: "Hallo Rehaan, ik ben Jessie van Contoso bank."

Misschien vindt u dat een woordgroep onjuist wordt herkend als: "Hallo iedereen, ik ben Jesse van dat kan niet zo bank."

In het vorige scenario wilt u 'Rehaan', 'Jessie' en 'Contoso' toevoegen aan uw frasenlijst. Vervolgens moeten de namen correct worden herkend.

Probeer nu Speech Studio om te zien hoe de woordgroepenlijst de nauwkeurigheid van de herkenning kan verbeteren.

Notitie

Mogelijk wordt u gevraagd uw Azure-abonnement en spraakresource te selecteren en vervolgens de facturering voor uw regio te bevestigen.

  1. Ga naar realtime spraak naar tekst in Speech Studio.
  2. U test spraakherkenning door een audiobestand te uploaden of audio op te nemen met een microfoon. Selecteer bijvoorbeeld audio opnemen met een microfoon en zeg vervolgens 'Hi Rehaan, ik ben Jessie van contoso bank. " Selecteer vervolgens de rode knop om de opname te stoppen.
  3. U ziet nu het transcriptieresultaat in het tekstvak Testresultaten . Als 'Rehaan', 'Jessie' of 'Contoso' onjuist zijn herkend, kunt u de termen toevoegen aan een woordgroepenlijst in de volgende stap.
  4. Selecteer Geavanceerde opties weergeven en schakel frasenlijst in.
  5. Voer 'Contoso; Jessie; Rehaan" in het tekstvak voor de woordgroepenlijst. Meerdere zinnen moeten worden gescheiden door een puntkomma. Screenshot of a phrase list applied in Speech Studio.
  6. Gebruik de microfoon om de herkenning opnieuw te testen. Anders kunt u de pijl voor opnieuw proberen naast het audiobestand selecteren om uw audio opnieuw uit te voeren. De termen 'Rehaan', 'Jessie' of 'Contoso' moeten worden herkend.

Frasenlijst implementeren

Met de Speech SDK kunt u zinnen afzonderlijk toevoegen en vervolgens spraakherkenning uitvoeren.

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

Met de Speech SDK kunt u zinnen afzonderlijk toevoegen en vervolgens spraakherkenning uitvoeren.

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

Met de Speech SDK kunt u zinnen afzonderlijk toevoegen en vervolgens spraakherkenning uitvoeren.

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

Met de Speech SDK kunt u zinnen afzonderlijk toevoegen en vervolgens spraakherkenning uitvoeren.

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

Met de Speech SDK kunt u zinnen afzonderlijk toevoegen en vervolgens spraakherkenning uitvoeren.

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

Met de Speech CLI kunt u een woordgroepenlijst in de regel of met een tekstbestand opnemen, samen met de opdracht herkennen.

Probeer herkenning vanuit een microfoon of een audiobestand.

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

U kunt ook een frasenlijst toevoegen met behulp van een tekstbestand dat één woordgroep per regel bevat.

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

Toegestane tekens bevatten landinstellingen en cijfers, spatietekens en speciale tekens, zoals +, -, $, :, (, ), {, }, _, ., ?, @, \, ', &, #, %, ^, *, ', <, , >;, /. Andere speciale tekens worden intern uit de woordgroep verwijderd.

Volgende stappen

Bekijk meer opties om de nauwkeurigheid van herkenning te verbeteren.