Intenties, uitingen en entiteiten definiëren

Voltooid

Uitingen zijn de zinnen die een gebruiker kan invoeren bij interactie met een toepassing die gebruikmaakt van uw taalmodel. Een intentie vertegenwoordigt een taak of actie die de gebruiker wil uitvoeren, of simpelweg de betekenis van een uiting. U maakt een model door intenties te definiëren en deze te koppelen aan een of meer utterances.

Denk bijvoorbeeld aan de volgende lijst met intenties en bijbehorende uitingen:

  • GetTime:
    • "Hoe laat is het?"
    • "Wat is de tijd?"
    • "Vertel me de tijd"
  • GetWeather:
    • "Wat is de weersvoorspelling?"
    • "Heb ik een paraplu nodig?"
    • "Zal het sneeuwen?"
  • TurnOnDevice
    • "Zet het licht aan."
    • "Schakel het licht in."
    • "Schakel de ventilator in"
  • Geen:
    • Hallo
    • "Afscheid"

In uw model moet u de intenties definiëren die uw model moet begrijpen, dus besteed enige tijd aan het overwegen van het domein dat uw model moet ondersteunen en de soorten acties of informatie die gebruikers kunnen aanvragen. Naast de intenties die u definieert, bevat elk model een intentie Geen die u moet gebruiken om expliciet uitingen te identificeren die een gebruiker kan indienen, maar waarvoor geen specifieke actie is vereist (bijvoorbeeld gespreksgroet zoals 'hallo') of die buiten het bereik van het domein voor dit model vallen.

Nadat u de intenties hebt geïdentificeerd die uw model moet ondersteunen, is het belangrijk om verschillende voorbeelduitingen voor elke intentie vast te leggen. Verzamel uitingen die u denkt dat gebruikers zullen invoeren; inclusief uitingen die hetzelfde betekenen, maar die op verschillende manieren zijn opgebouwd. Houd rekening met deze richtlijnen:

  • Meerdere verschillende voorbeelden vastleggen of alternatieve manieren om hetzelfde te zeggen
  • De lengte van de utterances variëren van kort tot gemiddeld tot lang
  • De locatie van het zelfstandig naamwoord of onderwerp van de uiting variëren. Plaats het aan het begin, het einde of ergens tussen
  • Gebruik de juiste grammatica en onjuiste grammatica in verschillende utterances om goede voorbeelden van trainingsgegevens te bieden
  • De precisie, consistentie en volledigheid van uw gelabelde gegevens zijn belangrijke factoren voor het bepalen van modelprestaties.
    • Label precies: Label elke entiteit altijd aan het juiste type. Neem alleen op wat u wilt uitgepakt, vermijd onnodige gegevens in uw labels.
    • Label consistent: dezelfde entiteit moet hetzelfde label hebben voor alle utterances.
    • Label volledig: Label alle exemplaren van de entiteit in al uw utterances.

Entiteiten worden gebruikt om specifieke context toe te voegen aan intenties. U kunt bijvoorbeeld een TurnOnDevice-intentie definiëren die kan worden toegepast op meerdere apparaten en entiteiten gebruiken om de verschillende apparaten te definiëren.

Houd rekening met de volgende utterances, intenties en entiteiten:

Uiting Intentie Entiteiten
Wat is de tijd? GetTime
Hoe laat is het in Londen? GetTime Locatie (Londen)
Wat is de weersvoorspelling voor Parijs? GetWeather Locatie (Parijs)
Heb ik vanavond een paraplu nodig? GetWeather Tijd (vanavond)
Wat is de prognose voor Seattle morgen? GetWeather Locatie (Seattle), Tijd (morgen)
Zet het licht aan. TurnOnDevice Apparaat (licht)
Zet de ventilator aan. TurnOnDevice Apparaat (ventilator)

U kunt entiteiten splitsen in een aantal verschillende onderdeeltypen:

  • Geleerde entiteiten zijn het meest flexibele type entiteit en moeten in de meeste gevallen worden gebruikt. U definieert een geleerd onderdeel met een geschikte naam en koppelt vervolgens woorden of woordgroepen eraan in trainingsuitingen. Wanneer u uw model traint, leert het dat het overeenkomt met de juiste elementen in de utterances met de entiteit.
  • Lijstentiteiten zijn handig wanneer u een entiteit met een specifieke set mogelijke waarden nodig hebt, bijvoorbeeld dagen van de week. U kunt synoniemen opnemen in een definitie van een lijstentiteit, zodat u een DayOfWeek-entiteit kunt definiëren die de waarden 'Zondag', 'Maandag', 'Dinsdag' enzovoort bevat, elk met synoniemen zoals 'Zon', 'Mon', 'Tue', enzovoort.
  • Vooraf gemaakte entiteiten zijn handig voor veelvoorkomende typen, zoals getallen, datum/tijd en namen. Wanneer bijvoorbeeld vooraf gemaakte onderdelen worden toegevoegd, detecteert u automatisch waarden zoals '6' of organisaties zoals 'Microsoft'. U kunt dit artikel bekijken voor een lijst met ondersteunde vooraf gedefinieerde entiteiten.