Delen via


Entiteitstypen

Belangrijk

LUIS wordt op 1 oktober 2025 buiten gebruik gesteld en vanaf 1 april 2023 kunt u geen nieuwe LUIS-resources maken. We raden u aan uw LUIS-toepassingen te migreren naar gesprekstaalbegrip om te profiteren van continue productondersteuning en meertalige mogelijkheden.

Een entiteit is een item of een element dat relevant is voor de intentie van de gebruiker. Entiteiten definiëren gegevens die kunnen worden geëxtraheerd uit de uiting en zijn essentieel om de vereiste actie van een gebruiker te voltooien. Voorbeeld:

Uiting Voorspelde intentie Geëxtraheerde entiteiten Uitleg
Hallo hoe gaat het? Begroeting - Niets te extraheren.
Ik wil een kleine pizza bestellen orderPizza 'klein' De entiteit Grootte wordt geëxtraheerd als 'klein'.
Licht van slaapkamer uitschakelen Afslag 'slaapkamer' De entiteit 'Ruimte' wordt geëxtraheerd als 'slaapkamer'.
Saldo controleren op mijn spaarrekening die eindigt op 4406 checkBalance 'besparingen', '4406' De entiteit accountType wordt geëxtraheerd als 'spaargeld' en de entiteit 'accountNumber' wordt geëxtraheerd als '4406'.
Koop 3 tickets naar New York buyTickets '3', 'New York' De entiteit 'ticketsCount' wordt geëxtraheerd als '3' en 'Destination' entiteit wordt geëxtraheerd als 'New York'.

Entiteiten zijn optioneel, maar worden aanbevolen. U hoeft geen entiteiten te maken voor elk concept in uw app, alleen wanneer:

  • De clienttoepassing heeft de gegevens nodig, of
  • De entiteit fungeert als een hint of signaal voor een andere entiteit of intentie. Voor meer informatie over entiteiten als functies gaat u naar Entiteiten als functies.

Entiteitstypen

Als u een entiteit wilt maken, moet u deze een naam en een type geven. Er zijn verschillende typen entiteiten in LUIS.

Lijstentiteit

Een lijstentiteit vertegenwoordigt een vaste, gesloten set gerelateerde woorden, samen met hun synoniemen. U kunt lijstentiteiten gebruiken om meerdere synoniemen of variaties te herkennen en een genormaliseerde uitvoer voor deze entiteiten te extraheren. Gebruik de aanbevolen optie om suggesties voor nieuwe woorden weer te geven op basis van de huidige lijst.

Een lijstentiteit is niet machine learning, wat betekent dat LUIS geen meer waarden detecteert voor lijstentiteiten. LUIS markeert een overeenkomst met een item in een lijst als een entiteit in het antwoord.

Overeenkomende lijstentiteiten zijn beide hoofdlettergevoelig en moeten exact overeenkomen. Genormaliseerde waarden worden ook gebruikt bij het vergelijken van de lijstentiteit. Voorbeeld:

Genormaliseerde waarde Synoniemen
Klein sm, , , smltinysmallest
Gemiddeld mdregular, mdm, averagemiddle
Groot lg, , lrgbig

Zie het naslagartikel voor lijstentiteiten voor meer informatie.

Regex-entiteit

Een entiteit met een reguliere expressie extraheert een entiteit op basis van een normaal expressiepatroon dat u opgeeft. Het negeert hoofdlettergebruik en negeert culturele variant. Reguliere expressie-entiteiten zijn het meest geschikt voor gestructureerde tekst of een vooraf gedefinieerde reeks alfanumerieke waarden die in een bepaalde indeling worden verwacht. Voorbeeld:

Entity Regular expression Opmerking
Vluchtnummer flight [A-Z]{2} [0-9]{4} flight AS 1234
Creditcardnummer [0-9]{16} 5478789865437632

Zie het naslagartikel over regex-entiteiten voor meer informatie.

Vooraf samengestelde entiteiten

LUIS bevat een set vooraf gedefinieerde entiteiten voor het herkennen van algemene soorten informatie, zoals datums, tijden, getallen, metingen en valuta. Vooraf gedefinieerde entiteitsondersteuning verschilt per cultuur van uw LUIS-app. Zie de vooraf gedefinieerde entiteitsverwijzing voor een volledige lijst met vooraf gedefinieerde entiteiten die door LUIS worden ondersteund, inclusief ondersteuning door cultuur.

Wanneer een vooraf gemaakte entiteit is opgenomen in uw toepassing, worden de voorspellingen opgenomen in uw gepubliceerde toepassing. Het gedrag van vooraf gebouwde entiteiten is vooraf getraind en kan niet worden gewijzigd.

Vooraf gemaakte entiteit Voorbeeldwaarde
PersonName James, Bill, Tom
DatetimeV2 2019-05-02, , May 2nd8am on May 2nd 2019

Zie het naslagartikel over vooraf gemaakte entiteiten voor meer informatie.

Pattern.Any-entiteit

Een patroon. Een entiteit is een tijdelijke aanduiding voor variabele lengte die alleen wordt gebruikt in de sjabloonuiting van een patroon om aan te geven waar de entiteit begint en eindigt. Het volgt een specifieke regel of patroon en het beste gebruikt voor zinnen met een vaste lexicale structuur. Voorbeeld:

Voorbeeld van een utterance Patroon Entity
Mag ik een hamburger? Can I have a {meal} [please][?] hamburger
Mag ik een pizza? Can I have a {meal} [please][?] pizza
Waar vind ik The Great Gatsby? Where can I find {bookName}? The Great Gatsby

Zie het naslagartikel over entiteiten Pattern.Any voor meer informatie.

Ml-entiteit (Machine Learned)

Machine learning-entiteit maakt gebruik van context voor het extraheren van entiteiten op basis van gelabelde voorbeelden. Het is de voorkeursentiteit voor het bouwen van LUIS-toepassingen. Het is afhankelijk van machine learning-algoritmen en vereist dat labels worden aangepast aan uw toepassing. Gebruik een ML-entiteit om gegevens te identificeren die niet altijd goed zijn opgemaakt, maar dezelfde betekenis hebben.

Voorbeeld van een utterance Geëxtraheerde productentiteit
Ik wil een boek kopen. 'boek'
Mag ik deze schoenen alsjeblieft krijgen? 'schoenen'
Voeg die shorts toe aan mijn mandje. 'shorts'

Zie Machine learning-entiteiten voor meer informatie.

ML-entiteit met structuur

Een ML-entiteit kan bestaan uit kleinere subentiteiten, die elk hun eigen eigenschappen kunnen hebben. Een adresentiteit kan bijvoorbeeld de volgende structuur hebben:

  • Adres: 4567 Main Street, NY, 98052, USA
    • Bouwnummer: 4567
    • Straatnaam: Hoofdstraat
    • Status: NY
    • Postcode: 98052
    • Land: VS

Effectieve ML-entiteiten bouwen

Volg deze aanbevolen procedures om effectief machine learning-entiteiten te bouwen:

  • Als u een machine learning-entiteit met subentiteiten hebt, moet u ervoor zorgen dat de verschillende orders en varianten van de entiteit en subentiteiten worden weergegeven in de gelabelde utterances. Gelabelde voorbeelduitingen moeten alle geldige formulieren bevatten en entiteiten bevatten die worden weergegeven en afwezig zijn en die ook in de utterance opnieuw zijn gerangschikt.
  • Vermijd overfitting van de entiteiten naar een vaste set. Overfitting treedt op wanneer het model niet goed generaliseert en een veelvoorkomend probleem is in machine learning-modellen. Dit impliceert dat de app niet voldoende zou werken aan nieuwe typen voorbeelden. Op zijn beurt moet u de gelabelde voorbeelduitingen variëren, zodat de app kan generaliseren buiten de beperkte voorbeelden die u opgeeft.
  • Uw labeling moet consistent zijn voor de intenties. Dit omvat zelfs utterances die u opgeeft in de intentie None die deze entiteit bevat. Anders kan het model de reeksen niet effectief bepalen.

Entiteiten als functies

Een andere belangrijke functie van entiteiten is om ze te gebruiken als kenmerken of onderscheidende eigenschappen voor andere intenties of entiteiten, zodat uw systeem ze observeert en leert.

Entiteiten als functies voor intenties

U kunt entiteiten gebruiken als signaal voor een intentie. De aanwezigheid van een bepaalde entiteit in de uiting kan bijvoorbeeld onderscheid maken tussen welke intentie deze valt.

Voorbeeld van een utterance Entity Intentie
Boek een vlucht naar New York. City Vlucht boeken
Boek me de belangrijkste vergaderruimte. Ruimte Gereserveerde ruimte

Entiteiten als functie voor entiteiten

U kunt ook entiteiten gebruiken als indicator voor de aanwezigheid van andere entiteiten. Een veelvoorkomend voorbeeld hiervan is het gebruik van een vooraf samengestelde entiteit als een functie voor een andere ML-entiteit. Als u een vluchtboekingssysteem bouwt en uw uiting eruitziet als 'Boek me een vlucht van Cairo naar Seattle', hebt u waarschijnlijk Origin City en Destination City als ML-entiteiten. Een goede gewoonte is om de vooraf gedefinieerde GeographyV2-entiteit te gebruiken als een functie voor beide entiteiten.

Zie het naslagartikel over entiteiten GeographyV2 voor meer informatie.

U kunt entiteiten ook gebruiken als vereiste functies voor andere entiteiten. Dit helpt bij de oplossing van geëxtraheerde entiteiten. Als u bijvoorbeeld een toepassing voor het bestellen van pizza's maakt en u een ENTITEIT Size ML hebt, kunt u de entiteit SizeList-lijst maken en deze gebruiken als een vereiste functie voor de entiteit Grootte. Uw toepassing retourneert de genormaliseerde waarde als de geëxtraheerde entiteit uit de utterance.

Zie functies voor meer informatie en vooraf gebouwde entiteiten voor meer informatie over vooraf gedefinieerde entiteitenomzetting die beschikbaar is in uw cultuur.

Gegevens van entiteiten

De meeste chatbots en toepassingen hebben meer nodig dan de intentienaam. Deze aanvullende, optionele gegevens zijn afkomstig van entiteiten die zijn gedetecteerd in de utterance. Elk type entiteit retourneert verschillende informatie over de overeenkomst.

Eén woord of woordgroep in een utterance kan overeenkomen met meer dan één entiteit. In dat geval wordt elke overeenkomende entiteit geretourneerd met de bijbehorende score.

Alle entiteiten worden geretourneerd in de matrix met entiteiten van het antwoord van het eindpunt

Aanbevolen procedures voor entiteiten

Machine Learning-entiteiten gebruiken

Machine learning-entiteiten zijn afgestemd op uw app en vereisen dat labeling is geslaagd. Als u geen machine learning-entiteiten gebruikt, gebruikt u mogelijk de verkeerde entiteiten.

Door machine learning-entiteiten kunnen andere entiteiten als functies worden gebruikt. Deze andere entiteiten kunnen aangepaste entiteiten zijn, zoals reguliere expressie-entiteiten of lijstentiteiten, of u kunt vooraf gemaakte entiteiten als functies gebruiken.

Meer informatie over effectieve machine learning-entiteiten.

Volgende stappen