Udostępnij za pośrednictwem


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 migrację aplikacji LUIS do interpretacji języka konwersacyjnego, aby korzystać z ciągłej pomocy technicznej i wielojęzycznych możliwości produktów.

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 wykonania 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 moim 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 wyrazó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, , tinysmallest
Śred. md, , mdm, regular, , averagemiddle
Duży lg, , lrgbig

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

Jednostka wyrażeń regularnych

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:

Encja Regular expression 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 wyrażeń regularnych.

Wstępnie skompilowane encje

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 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 skompilowaną dokumentację 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 2nd8am 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 on zgodny z określoną regułą lub wzorcem i najlepiej używanym dla zdań ze stałą strukturą leksykaczną. Na przykład:

Przykładowa wypowiedź Wzorzec Encja
Czy mogę mieć burger proszę? Can I have a {meal} [please][?] hamburger
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 nauczona 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, aby etykietowanie było dostosowane do aplikacji pomyślnie. 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ę. "book"
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 efektywnych 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. Przykładowe wypowiedzi z etykietami powinny zawierać wszystkie prawidłowe formularze oraz 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 ma miejsce, 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 różnić oznaczone przykładowe wypowiedzi, aby aplikacja mogła uogólnić poza ograniczone przykłady, które podajesz.
  • 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 cech lub cech wyróżniających dla innych intencji lub jednostek, dzięki czemu system obserwuje i uczy się za ich pomocą.

Jednostki jako funkcje dla 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ę, której dotyczy.

Przykładowa wypowiedź Encja Zamiar
Zarezerwuj mi lot do Nowego Jorku. City Zarezerwuj lot
Zarezerwuj mi główną salę konferencyjną. Pokój 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 jak "Zarezerwuj mi lot z Kairu do Seattle", prawdopodobnie będziesz mieć 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).

Można również używać jednostek 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ę Rozmiar uczenia maszynowego, 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 kulturze.

Dane z jednostek

Większość czatbotów i aplikacji potrzebuje 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 zgodna 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żeń regularnych lub jednostki listy, lub użyć wstępnie utworzonych jednostek jako funkcji.

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

Następne kroki