Entiteitstypen

Belangrijk

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

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

Uiting Intentie voorspeld Entiteiten geëxtraheerd 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'.
De verlichting van de slaapkamer uitschakelen Afslag 'slaapkamer' De entiteit 'Kamer' wordt geëxtraheerd als 'slaapkamer'.
Saldo controleren op mijn spaarrekening eindigend op 4406 checkBalance 'besparingen', '4406' De entiteit accountType wordt geëxtraheerd als 'savings' en '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 de entiteit Destination 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. Ga voor meer informatie over entiteiten als functies 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 er een genormaliseerde uitvoer voor te extraheren. Gebruik de aanbevelingsoptie om suggesties voor nieuwe woorden te bekijken op basis van de huidige lijst.

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

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

Genormaliseerde waarde Synoniemen
Klein sm, sml, tiny, smallest
Normaal md, mdm, regular, average, middle
Groot lg, lrg, big

Zie het artikel naslaginformatie over lijstentiteiten voor meer informatie.

Regex-entiteit

Met een entiteit met een reguliere expressie wordt een entiteit geëxtraheerd op basis van een standaardexpressiepatroon dat u opgeeft. Het negeert case en negeert culturele variant. Reguliere expressie-entiteiten zijn het beste voor gestructureerde tekst of een vooraf gedefinieerde reeks alfanumerieke waarden die in een bepaalde notatie worden verwacht. Bijvoorbeeld:

Entiteit Reguliere expressie Voorbeeld
Vluchtnummer flight [A-Z]{2} [0-9]{4} flight AS 1234
Creditcardnummer [0-9]{16} 5478789865437632

Zie het artikel naslaginformatie over regex-entiteiten voor meer informatie.

Vooraf gemaakte entiteiten

LUIS bevat een set vooraf gedefinieerde entiteiten voor het herkennen van algemene typen informatie, zoals datums, tijden, getallen, metingen en valuta. Vooraf gedefinieerde ondersteuning voor entiteiten 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 per cultuur.

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

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

Zie het naslagartikel over vooraf gedefinieerde entiteiten voor meer informatie.

Pattern.Any-entiteit

Een patroon. Een entiteit is een tijdelijke aanduiding met een 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 wordt het best gebruikt voor zinnen met een vaste lexicale structuur. Bijvoorbeeld:

Voorbeeld van een utterance Patroon Entiteit
Mag ik alsjeblieft 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 artikel Pattern.Any entities reference (Naslaginformatie over Pattern.Any-entiteiten ) voor meer informatie.

Machine learning-entiteit (ML)

De machine learning-entiteit maakt gebruik van context om entiteiten te extraheren 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 labeling is afgestemd op uw toepassing. Gebruik een ML-entiteit om gegevens te identificeren die niet altijd goed zijn opgemaakt, maar die dezelfde betekenis hebben.

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

Zie Machine learned-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
    • Gebouwnummer: 4567
    • Straatnaam: Hoofdstraat
    • Staat: NY
    • Postcode: 98052
    • Land: Verenigde Staten

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 volgordes en varianten van de entiteit en subentiteiten worden weergegeven in de gelabelde uitingen. Gelabelde voorbeelduitingen moeten alle geldige formulieren bevatten en entiteiten bevatten die worden weergegeven en afwezig zijn en die ook opnieuw zijn gerangschikt in de utterance.
  • Vermijd overfitting van de entiteiten naar een vaste set. Overfitting treedt op wanneer het model niet goed generaliseert en is een veelvoorkomend probleem in machine learning-modellen. Dit betekent dat de app niet voldoende zou werken met 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 uitingen die u opgeeft in de intentie Geen 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 bepalen onder welke intentie deze valt.

Voorbeeld van een utterance Entiteit Intentie
Boek een vlucht naar New York. Plaats Vlucht boeken
Boek me de grote vergaderruimte. Room Gereserveerde kamer

Entiteiten als functie voor entiteiten

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

Zie het artikel Naslaginformatie over GeografieV2-entiteiten voor meer informatie.

U kunt entiteiten ook gebruiken als vereiste functies voor andere entiteiten. Dit helpt bij het oplossen 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 list 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 gedefinieerde 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 naam van de intentie. Deze aanvullende, optionele gegevens zijn afkomstig van entiteiten die zijn gedetecteerd in de utterance. Elk type entiteit retourneert andere 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 entiteitenmatrix van het antwoord van het eindpunt

Aanbevolen procedures voor entiteiten

Machine learning-entiteiten gebruiken

Machine learning-entiteiten zijn afgestemd op uw app en moeten worden gelabeld om te kunnen slagen. Als u geen machine learning-entiteiten gebruikt, gebruikt u mogelijk de verkeerde entiteiten.

Machine learning-entiteiten kunnen andere entiteiten als functies gebruiken. 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