Sdílet prostřednictvím


Shromažďování dat pro vaši aplikaci

Důležité

Služba LUIS bude vyřazena 1. října 2025 a od 1. dubna 2023 nebudete moct vytvářet nové prostředky LUIS. Doporučujeme migrovat aplikace LUIS do porozumění konverzačnímu jazyku, abyste mohli využívat další podporu produktů a vícejazyčné funkce.

Aplikace LUIS (Language Understanding) potřebuje data jako součást vývoje aplikací.

Data používaná ve službě LUIS

Služba LUIS používá text jako data k trénování a testování aplikace LUIS pro klasifikaci záměrů a pro extrakci entit. Potřebujete dostatečně velkou sadu dat, abyste měli dostatek dat k vytvoření samostatných datových sad pro trénování i testování, které mají rozmanitost a distribuci uvedené konkrétně níže. Data v každé z těchto sad by se neměla překrývat.

Trénování výběru dat pro ukázkové promluvy

Vyberte promluvy pro trénovací sadu na základě následujících kritérií:

  • Skutečná data jsou nejlepší:

    • Skutečná data z klientské aplikace: Vyberte výroky, které jsou skutečnými daty z klientské aplikace. Pokud zákazník dnes odešle webový formulář s dotazem a vytváříte robota, můžete začít daty webového formuláře.
    • Crowd-sourced data: Pokud nemáte žádná existující data, zvažte crowd sourcing promluvy. Zkuste pro váš scénář přetížit zdrojové promluvy ze skutečné populace uživatelů, abyste získali nejlepší aproximaci skutečných dat, která vaše aplikace uvidí. Davové lidské promluvy jsou lepší než promluvy generované počítačem. Když sestavíte datovou sadu syntetických promluv vygenerovaných podle konkrétních vzorů, nebude vám chybět velká část přirozené variace, kterou uvidíte s lidmi, kteří vytvářejí promluvy a nebudou nakonec dobře generalizovat v produkčním prostředí.
  • Rozmanitost dat:

    • Rozmanitost oblastí: Ujistěte se, že data pro každý záměr jsou co nejvíce různorodá, včetně formulace (volba slova) a gramatiky. Pokud učíte záměr o zásadách lidských zdrojů o prázdninových dnech, ujistěte se, že máte promluvy, které představují termíny, které se používají pro všechny oblasti, které používáte. Například v Evropě se lidé mohou ptát taking a holiday a v USA se mohou ptát na taking vacation days.
    • Rozmanitost jazyka: Pokud máte uživatele s různými nativními jazyky, které komunikují v druhém jazyce, ujistěte se, že máte promluvy, které představují ne nativní mluvčí.
    • Vstupní rozmanitost: Zvažte cestu vstupu dat. Pokud shromažďujete data od jedné osoby, oddělení nebo vstupního zařízení (mikrofon), pravděpodobně chybí rozmanitost, která bude pro vaši aplikaci důležitá, aby se dozvěděla o všech vstupních cestách.
    • Rozmanitost interpunkce: Vezměte v úvahu, že lidé používají různé úrovně interpunkce v textových aplikacích a ujistěte se, že máte rozmanitost způsobu použití interpunkce. Pokud používáte data, která pocházejí z řeči, nebude mít žádnou interpunkci, takže ani vaše data by neměla.
  • Distribuce dat: Ujistěte se, že data rozložená mezi záměry představují stejné rozložení dat, která klientská aplikace obdrží. Pokud vaše aplikace LUIS klasifikuje promluvy, které jsou požadavky na naplánování dovolené (50 %), ale zobrazí se také promluvy týkající se dotazů na zbývající dny dovolené (20 %), schvalování listů (20 %) a některých mimo rozsah a chat (10 %), pak by vaše datová sada měla obsahovat ukázkové procento každého typu promluvy.

  • Používejte všechny datové formuláře: Pokud vaše aplikace LUIS bude přijímat data ve více formulářích, nezapomeňte tyto formuláře zahrnout do trénovacích promluv. Pokud například klientská aplikace přijímá řeč i typový textový vstup, musíte mít řeč na text generované promluvy i napsané promluvy. Uvidíte různé varianty v tom, jak lidé mluví z toho, jak zapisují, a také různé chyby v rozpoznávání řeči a překlepy. Všechny tyto varianty by měly být reprezentovány ve vašich trénovacích datech.

  • Pozitivní a negativní příklady: Aby se aplikace LUIS naučila, musí se dozvědět, co je záměr (pozitivní) a co není (negativní). Ve službě LUIS můžou být promluvy pozitivní pouze pro jeden záměr. Když se promluva přidá do záměru, služba LUIS automaticky vytvoří stejnou ukázkovou promluvu jako negativní příklad pro všechny ostatní záměry.

  • Data mimo obor aplikace: Pokud vaše aplikace uvidí promluvy, které spadají mimo vaše definované záměry, nezapomeňte je poskytnout. Příklady, které nejsou přiřazeny ke konkrétnímu definovanému záměru, budou označeny záměrem None (Žádný). Je důležité, aby realistický příklad záměru None správně předpověděl promluvy, které jsou mimo rozsah definovaných záměrů.

    Pokud například vytváříte robota personálního oddělení zaměřeného na volno a máte tři záměry:

    • naplánování nebo úprava opuštění
    • Inquire about available leave days
    • schválit/zrušit schválení

    Chcete mít jistotu, že máte promluvy, které pokrývají oba tyto záměry, ale také ty, které pokrývají potenciální promluvy mimo daný rozsah, který by aplikace měla sloužit takto:

    • What are my medical benefits?
    • Who is my HR rep?
    • tell me a joke
  • Vzácné příklady: Vaše aplikace bude muset mít vzácné příklady i běžné příklady. Pokud vaše aplikace nikdy neviděla vzácné příklady, nebude je moct identifikovat v produkčním prostředí. Pokud používáte skutečná data, budete moct přesněji předpovědět, jak bude aplikace LUIS fungovat v produkčním prostředí.

Kvalita místo množství

Než přidáte další data, zvažte kvalitu stávajících dat. Se službou LUIS používáte strojové učení. Kombinace popisků a funkcí strojového učení, které definujete, je to, co vaše aplikace LUIS používá. Nespoléhá jenom na množství popisků, aby bylo nejlepší predikce. Nejdůležitější je rozmanitost příkladů a jejich reprezentace toho, co vaše aplikace LUIS uvidí v produkčním prostředí.

Předběžné zpracování dat

Následující kroky předběžného zpracování vám pomůžou vytvořit lepší aplikaci LUIS:

  • Odebrání duplicit: Duplicitní promluvy neublíží, ale ani jim to nepomůže, takže jejich odebráním ušetříte čas označování.
  • Použijte stejné předběžné zpracování klientské aplikace: Pokud vaše klientská aplikace, která volá koncový bod predikce služby LUIS, použije zpracování dat za běhu před odesláním textu do služby LUIS, měli byste aplikaci LUIS vytrénovat na data, která se zpracovávají stejným způsobem.
  • Nepoužívejte nové procesy čištění, které klientská aplikace nepoužívá: Pokud vaše klientská aplikace přijímá řečově vygenerovaný text přímo bez vyčištění, jako je gramatika nebo interpunkce, musí promluvy odrážet totéž, včetně všech chybějících interpunkčních znamének a jakýchkoli jiných chybných znaméností, které budete muset zohlednit.
  • Nevyčisťujte data: Nezbavujte se poškozených vstupů, které můžete získat z zkomoleného rozpoznávání řeči, náhodných klávesových stisků nebo chybně napsaného nebo chybně napsaného textu. Pokud se v aplikaci zobrazí podobné vstupy, je důležité, aby byla natrénovaná a otestovaná. Pokud byste neočekávejte, že by vaše aplikace ho pochopila, přidejte poškozený záměr vstupu . Označte tato data, abyste aplikaci LUIS pomohli předpovědět správnou odpověď za běhu. Klientská aplikace může zvolit odpovídající odpověď na nesrozumitelné promluvy, jako Please try againje .

Popisování dat

  • Označit text jako by byl správný: Ukázkové promluvy by měly mít všechny formy entity označené. To zahrnuje text, který je chybně napsaný, chybně napsaný a špatně napsaný.

Kontrola dat po spuštění aplikace LUIS v produkčním prostředí

Po nasazení aplikace do produkčního prostředí zkontrolujte promluvy koncového bodu a sledujte skutečné přenosy promluv. To vám umožní aktualizovat trénovací promluvy skutečnými daty, což zlepší vaši aplikaci. Na základě skutečného použití bude potřeba zlepšit jakoukoli aplikaci vytvořenou s daty crowd sourced nebo nereálných scénářů.

Výběr testovacích dat pro dávkové testování

Všechny výše uvedené principy pro trénování promluv platí pro promluvy, které byste měli použít pro testovací sadu. Zajistěte, aby distribuce napříč záměry a entitami co nejvíce odrážela skutečnou distribuci.

Nepoužívejte v testovací sadě promluvy z trénovací sady. To nesprávně ztěžuje výsledky a neudělí vám správnou představu o tom, jak bude vaše aplikace LUIS fungovat v produkčním prostředí.

Po publikování první verze aplikace byste měli testovací sadu aktualizovat promluvami z reálného provozu, abyste zajistili, že testovací sada odráží vaši produkční distribuci a v průběhu času můžete monitorovat realistický výkon.

Další kroky

Zjistěte, jak služba LUIS mění vaše data před predikcí.