Typy jednostek

Ważne

Usługa LUIS zostanie wycofana 1 października 2025 r. i od 1 kwietnia 2023 r. nie będzie można utworzyć nowych zasobów usługi LUIS. Zalecamy migrowanie aplikacji usługi LUIS do interpretacji języka konwersacyjnego , aby korzystać z ciągłej pomocy technicznej produktu i możliwości wielojęzycznych.

Jednostka jest elementem lub elementem, który jest istotny dla intencji użytkownika. Jednostki definiują dane, które można wyodrębnić z wypowiedzi i są niezbędne do ukończenia wymaganej akcji użytkownika. Na przykład:

Wypowiedź Przewidywana intencja Wyodrębnione jednostki Wyjaśnienie
Witaj jak się masz? Powitanie - Nic do wyodrębnienia.
Chcę zamówić małą pizzę orderPizza "mały" Jednostka "Size" jest wyodrębniona jako "mała".
Wyłącz światło sypialni Zjazd "sypialnia" Jednostka "Pokój" jest wyodrębniona jako "sypialnia".
Sprawdź saldo na koncie oszczędnościowym kończącym się na 4406 checkBalance "oszczędności", "4406" Jednostka "accountType" jest wyodrębniona jako "oszczędności", a jednostka "accountNumber" jest wyodrębniona jako "4406".
Kup 3 bilety do Nowego Jorku buyTickets "3", "Nowy Jork" Jednostka "ticketsCount" jest wyodrębniona jako jednostka "3", a jednostka "Destination" jest wyodrębniona jako "Nowy Jork".

Jednostki są opcjonalne, ale zalecane. Nie musisz tworzyć jednostek dla każdej koncepcji w aplikacji tylko wtedy, gdy:

  • Aplikacja kliencka potrzebuje danych lub
  • Jednostka działa jako wskazówka lub sygnał dla innej jednostki lub intencji. Aby dowiedzieć się więcej o jednostkach jako funkcjach, przejdź do pozycji Jednostki jako funkcje.

Typy jednostek

Aby utworzyć jednostkę, musisz nadać jej nazwę i typ. Istnieje kilka typów jednostek w usłudze LUIS.

Jednostka listy

Jednostka listy reprezentuje stały, zamknięty zestaw powiązanych słów wraz z ich synonimami. Jednostki listy umożliwiają rozpoznawanie wielu synonimów lub odmian i wyodrębnianie znormalizowanych danych wyjściowych. Użyj opcji zalecanej , aby wyświetlić sugestie dotyczące nowych słów na podstawie bieżącej listy.

Jednostka listy nie jest wyuczone maszynowo, co oznacza, że usługa LUIS nie odnajduje większej liczby wartości dla jednostek listy. Usługa LUIS oznacza dowolne dopasowanie do elementu na dowolnej liście jako jednostkę w odpowiedzi.

Dopasowywanie jednostek listy jest uwzględniane zarówno w przypadku wielkości liter, jak i musi być dokładnie zgodne. Znormalizowane wartości są również używane podczas dopasowywania jednostki listy. Na przykład:

Znormalizowana wartość Synonimy
Mały sm, sml, tiny, smallest
Śred. md, mdm, regular, average, middle
Duży lg, lrg, big

Aby uzyskać więcej informacji, zobacz artykuł referencyjny dotyczący jednostek listy .

Jednostka regex

Jednostka wyrażenia regularnego wyodrębnia jednostkę na podstawie podanego wzorca wyrażenia regularnego. Ignoruje wielkość liter i ignoruje wariant kulturowy. Jednostki wyrażeń regularnych najlepiej nadają się do tekstu strukturalnego lub wstępnie zdefiniowanej sekwencji wartości alfanumerycznych, które są oczekiwane w określonym formacie. Na przykład:

Jednostka Wyrażenie regularne Przykład
Numer lotu flight [A-Z]{2} [0-9]{4} flight AS 1234
Numer karty kredytowej [0-9]{16} 5478789865437632

Aby uzyskać więcej informacji, zobacz artykuł referencyjny dotyczący jednostek regex .

Wstępnie utworzone jednostki

Usługa LUIS zawiera zestaw wstępnie utworzonych jednostek do rozpoznawania typowych typów informacji, takich jak daty, godziny, liczby, pomiary i waluta. Obsługa wstępnie utworzonej jednostki różni się w zależności od kultury aplikacji usługi LUIS. Aby uzyskać pełną listę wstępnie utworzonych jednostek, które obsługuje usługa LUIS, w tym obsługę według kultury, zobacz wstępnie utworzone odwołanie do jednostki.

Po dołączeniu wstępnie utworzonej jednostki do aplikacji jej przewidywania są uwzględniane w opublikowanej aplikacji. Zachowanie wstępnie utworzonych jednostek jest wstępnie wytrenowane i nie można ich modyfikować.

Wstępnie utworzona jednostka Przykładowa wartość
PersonName James, Bill, Tom
Data/godzina 2 2019-05-02, May 2nd, 8am on May 2nd 2019

Aby uzyskać więcej informacji, zobacz artykuł referencyjny dotyczący wstępnie utworzonych jednostek .

Pattern.Any, jednostka

Wzorzec. Każda jednostka jest symbolem zastępczym o zmiennej długości używanym tylko w wypowiedzi szablonu wzorca, aby oznaczyć miejsce rozpoczęcia i zakończenia jednostki. Jest ona zgodna z określoną regułą lub wzorcem i najlepiej używaną dla zdań ze stałą strukturą leksykaliczną. Na przykład:

Przykładowa wypowiedź Wzorce Jednostka
Czy mogę mieć burger proszę? Can I have a {meal} [please][?] Burger
Czy mogę mieć pizzę? Can I have a {meal} [please][?] Pizza
Gdzie mogę znaleźć Wielki Gatsby? Where can I find {bookName}? Wielki Gatsby

Aby uzyskać więcej informacji, zobacz artykuł Referencyjny dotyczący jednostek Pattern.Any .

Jednostka uczenie maszynowe (ML)

Jednostka poznana na maszynie używa kontekstu do wyodrębniania jednostek na podstawie przykładów oznaczonych etykietami. Jest to preferowana jednostka do tworzenia aplikacji usługi LUIS. Opiera się ona na algorytmach uczenia maszynowego i wymaga dostosowania etykiet do aplikacji. Użyj jednostki ML, aby zidentyfikować dane, które nie zawsze są dobrze sformatowane, ale mają takie samo znaczenie.

Przykładowa wypowiedź Wyodrębniona jednostka produktu
Chcę kupić książkę. "książka"
Czy mogę dostać te buty proszę? "buty"
Dodaj te szorty do koszyka. "szorty"

Aby uzyskać więcej informacji, zobacz Machine learned entities (Jednostki poznane na maszynie ).

Jednostka ML ze strukturą

Jednostka ML może składać się z mniejszych jednostek podrzędnych, z których każda może mieć własne właściwości. Na przykład jednostka Adres może mieć następującą strukturę:

  • Adres: 4567 Main Street, NY, 98052, USA
    • Numer budynku: 4567
    • Nazwa ulicy: Main Street
    • Stan: NY
    • Kod pocztowy: 98052
    • Kraj: USA

Tworzenie skutecznych jednostek uczenia maszynowego

Aby efektywnie tworzyć jednostki poznane na maszynie, postępuj zgodnie z następującymi najlepszymi rozwiązaniami:

  • Jeśli masz jednostkę nauczoną maszyną z jednostkami podrzędnymi, upewnij się, że w wypowiedziach oznaczonych etykietami są prezentowane różne zamówienia i warianty jednostek i jednostek podrzędnych. Oznaczone przykładowe wypowiedzi powinny zawierać wszystkie prawidłowe formularze i uwzględnić jednostki, które są wyświetlane i nieobecne, a także zmienić kolejność w wypowiedzi.
  • Unikaj nadmiernego dopasowania jednostek do ustalonego zestawu. Nadmierne dopasowanie występuje, gdy model nie uogólnia się i jest typowym problemem w modelach uczenia maszynowego. Oznacza to, że aplikacja nie będzie działać odpowiednio na nowych typach przykładów. Z kolei należy zmienić oznaczone przykładowe wypowiedzi, aby aplikacja mogła uogólnić poza podane ograniczone przykłady.
  • Etykietowanie powinno być spójne we wszystkich intencjach. Obejmuje to nawet wypowiedzi podane w intencji None , która zawiera tę jednostkę. W przeciwnym razie model nie będzie mógł skutecznie określić sekwencji.

Jednostki jako funkcje

Inną ważną funkcją jednostek jest użycie ich jako funkcji lub cech wyróżniających dla innych intencji lub jednostek, dzięki czemu system obserwuje i uczy się za ich pomocą.

Jednostki jako funkcje intencji

Jednostki można użyć jako sygnału dla intencji. Na przykład obecność określonej jednostki w wypowiedzi może odróżnić intencję, w której się mieści.

Przykładowa wypowiedź Jednostka Zamiar
Zarezerwuj mi lot do Nowego Jorku. City (Miasto) Zarezerwuj lot
Zarezerwuj mi główną salę konferencyjną. Pokojach Pokój rezerwowy

Jednostki jako funkcja dla jednostek

Jednostki można również użyć jako wskaźnika obecności innych jednostek. Typowym przykładem jest użycie wstępnie utworzonej jednostki jako funkcji dla innej jednostki uczenia maszynowego. Jeśli tworzysz system rezerwacji lotów, a twoja wypowiedź wygląda następująco: "Zarezerwuj mi lot z Kairu do Seattle", prawdopodobnie będziesz mieć miasto Origin City i Destination City jako jednostki ML. Dobrym rozwiązaniem jest użycie wstępnie utworzonej jednostki GeographyV2 jako funkcji dla obu jednostek.

Aby uzyskać więcej informacji, zobacz artykuł GeographyV2 entities reference (Jednostki GeographyV2).

Jednostki można również używać jako wymaganych funkcji dla innych jednostek. Pomaga to w rozwiązywaniu wyodrębnionych jednostek. Jeśli na przykład tworzysz aplikację do zamawiania pizzy i masz jednostkę Size ML, możesz utworzyć jednostkę listy SizeList i użyć jej jako wymaganej funkcji dla jednostki Size. Aplikacja zwróci znormalizowaną wartość jako wyodrębnioną jednostkę z wypowiedzi.

Zobacz funkcje , aby uzyskać więcej informacji i wstępnie utworzone jednostki , aby dowiedzieć się więcej o wstępnie utworzonych jednostkach dostępnych w twojej kulturze.

Dane z jednostek

Większość czatbotów i aplikacji wymaga więcej niż nazwa intencji. Te dodatkowe, opcjonalne dane pochodzą z jednostek odnalezionych w wypowiedzi. Każdy typ jednostki zwraca różne informacje o dopasowaniu.

Jedno słowo lub fraza w wypowiedzi może być zgodne z więcej niż jedną jednostką. W takim przypadku każda pasująca jednostka jest zwracana z wynikiem.

Wszystkie jednostki są zwracane w tablicy jednostek odpowiedzi z punktu końcowego

Najlepsze rozwiązania dotyczące jednostek

Korzystanie z jednostek uczenia maszynowego

Jednostki poznane na maszynie są dostosowane do aplikacji i wymagają pomyślnego etykietowania. Jeśli nie używasz jednostek poznanych na maszynie, możesz użyć nieprawidłowych jednostek.

Jednostki poznane na maszynie mogą używać innych jednostek jako funkcji. Te inne jednostki mogą być jednostkami niestandardowymi, takimi jak jednostki wyrażenia regularnego lub jednostki listy, lub użyć wstępnie utworzonych jednostek jako funkcji.

Dowiedz się więcej o efektywnych jednostkach uczenia maszynowego.

Następne kroki