Rozpoznávání pojmenovaných entit

Důležité

Podpora studia Machine Learning (Classic) skončí 31. srpna 2024. Doporučujeme do tohoto data přejít na službu Azure Machine Learning.

Od 1. prosince 2021 nebude možné vytvářet nové prostředky studia Machine Learning (Classic). Do 31. srpna 2024 můžete pokračovat v používání stávajících prostředků studia Machine Learning (Classic).

Dokumentace ke studiu ML (Classic) se vyřazuje z provozu a v budoucnu se nemusí aktualizovat.

Rozpoznává pojmenované entity v textovém sloupci.

kategorie: Analýza textu

Poznámka

platí pro: jenom Machine Learning Studio (classic)

podobné moduly přetažení jsou k dispozici v návrháři Azure Machine Learning.

Přehled modulu

tento článek popisuje, jak používat modul pro rozpoznávání pojmenované Entity v Machine Learning studiu (classic) k identifikaci názvů věcí, jako jsou lidé, společnosti nebo umístění ve sloupci textu.

Rozpoznávání pojmenovaných entit je důležitou oblastí výzkumu ve strojovém učení a zpracování přirozeného jazyka (NLP), protože je možné ji použít k zodpovězení mnoha reálných otázek, jako jsou:

  • Obsahuje seznam na začátku jméno osoby? Poskytuje také svoje aktuální umístění?

  • Které společnosti byly zmíněny v novinovém článku?

  • Byly zadány produkty uvedené ve stížnostech nebo přezkumech?

Chcete-li získat seznam pojmenovaných entit, zadejte jako vstup datovou sadu, která obsahuje textový sloupec. Modul pro rozpoznávání pojmenovaných entit pak určí tři typy entit: lidé (za), umístění (Loc) a organizace (org).

Modul také označí sekvence, kde byla tato slova nalezena, aby bylo možné použít termíny v další analýze.

Například v následující tabulce je uvedena jednoduchá vstupní věta a podmínek a hodnot generovaných modulem:

Zadání textu Výstup modulu
"Boston je skvělé místo pro živé." 0, Boston, 0, 6, LOC

Výstup může být interpretován takto:

  • První ' 0 ' znamená, že tento řetězec je prvním článkem vstupu do modulu.

    Vzhledem k tomu, že jeden článek může mít více entit, včetně čísla řádku článku ve výstupu, je důležité pro mapování funkcí na články.

  • Boston je rozpoznaná entita.

  • 0Následující Boston způsob znamená, že entita Boston začíná od prvního písmene vstupního řetězce. Indexy jsou založené na nule.

  • 6 znamená, že délka entity Boston je 6.

  • LOC znamená, že entita Boston je místo nebo umístění. Další podporované typy pojmenovaných entit jsou Person ( PER ) a Organization ( ORG ).

Jak nakonfigurovat rozpoznávání pojmenovaných entit

  1. Přidejte modul pro rozpoznávání pojmenovaných entit do experimentu v studiu (Classic). modul můžete najít v kategorii Analýza textu .

  2. Ve vstupu s názvem příběhpřipojte datovou sadu obsahující text, který se má analyzovat.

    Výraz "Story" by měl obsahovat text, ze kterého mají být extrahovány pojmenované entity.

    Sloupec použitý jako text by měl obsahovat více řádků, kde se každý řádek skládá z řetězce. řetězec může být krátký, jako je věta nebo dlouhý, například novinový článek.

    Můžete připojit libovolnou datovou sadu, která obsahuje textový sloupec. Pokud však vstupní datová sada obsahuje více sloupců, použijte možnost vybrat sloupce v datové sadě k výběru pouze sloupce obsahujícího text, který chcete analyzovat.

    Poznámka

    Druhý vstup, vlastní prostředky (ZIP), se v tuto chvíli nepodporuje.

    V budoucnu můžete přidat vlastní soubory prostředků pro identifikaci různých typů entit.

  3. Spusťte experiment.

Výsledky

Modul výstupuje datovou sadu obsahující řádek pro každou rozpoznanou entitu spolu s posuny.

Vzhledem k tomu, že každý řádek vstupního textu může obsahovat více pojmenovaných entit, je číslo ID článku automaticky vygenerováno a zahrnuto do výstupu, aby bylo možné identifikovat vstupní řádek, který obsahoval pojmenovanou entitu. ID článku vychází z přirozeného pořadí řádků ve vstupní datové sadě.

Tuto výstupní datovou sadu můžete převést na sdílený svazek clusteru pro stažení nebo ji uložit jako datovou sadu pro opakované použití.

Použití rozpoznávání pojmenovaných entit ve webové službě

pokud publikujete webovou službu z Machine Learning studia (classic) a chcete webovou službu využívat pomocí jazyka C#, pythonu nebo jiného jazyka, jako je například R, je nutné nejprve implementovat kód služby, který je k dispozici na stránce s nápovědě webové služby.

Pokud webová služba poskytuje více řádků výstupu, adresa URL webové služby, kterou přidáte do kódu C#, Python nebo R, by měla mít příponu scoremultirow místo score .

Předpokládejme například, že jste pro webovou službu použili následující adresu URL: https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/score

Chcete-li povolit výstup na více řádků, změňte adresu URL na https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/scoremultirow

Chcete-li publikovat tuto webovou službu, měli byste po modulech pro rozpoznávání pojmenovaných entit přidat další modul pro spuštění skriptu jazyka R a transformovat výstup víceřádkových řádků na jeden oddělený středníkem (;). Důvodem pro konsolidaci více řádků výstupu do jednoho řádku je vrácení více entit na vstupní řádek.

Předpokládejme například, že máte vstupní větu se dvěma pojmenovanými entitami. Místo vrácení dvou řádků pro každý řádek vstupu můžete vracet jednotlivé řádky s více entitami, které jsou odděleny středníkem, jak je znázorněno zde:

Vstupní text Výstup webové služby
Microsoft má dvě místa pro Office v Bostonu. 0, Microsoft, 0, 9, ORG,;, 0, Boston, 38, 6, LOC,;

Následující příklad kódu ukazuje, jak to provést:

# Map 1-based optional input ports to variables  
d <- maml.mapInputPort(1) # class: data.frame  
y=length(d) ##size of cols  
x=dim(d)[1] ##size of rows  
longd=matrix("NA",nrow=1,ncol=x*(y+1))  
for (i in 1:x)  
  {   
     for (j in 1:y)  
     {  
       longd[1,j+(i-1)*(y+1)]=toString(d[i,j])   
     }  
     longd[1,j+(i-1)*(y+1)+1]=c(";")  
  }   

final_output=as.data.frame(longd)  
# Select data.frame to be sent to the output Dataset port  
maml.mapOutputPort("final_output");  

Příklady

Tento blog poskytuje rozšířené vysvětlení způsobu, jakým funkce rozpoznávání pojmenovaných entit funguje, její pozadí a možné aplikace:

Podívejte se také na následující ukázkové experimenty v Azure AI Gallery , kde najdete ukázky způsobu použití metod klasifikace textu běžně používaných ve službě Machine Learning:

Technické poznámky

Podpora jazyků

V současné době modul pro rozpoznávání pojmenovaných entit podporuje jenom anglický text. Může zjistit názvy organizací, osobní jména a umístění v anglických větách. Pokud použijete modul v jiných jazycích, nemusí se zobrazit chyba, ale výsledky nejsou tak vhodné jako u anglického textu.

v budoucnu se podpora dalších jazyků dá povolit integrací vícejazyčných komponent poskytovaných v Office Toolkit přirozeného jazyka.

Očekávané vstupy

Název Typ Description
Článkem Tabulka dat Vstupní datová sada (DataTable) obsahující textový sloupec, který chcete analyzovat.
CustomResources ZIP Volitelné Soubor ve formátu ZIP, který obsahuje další vlastní prostředky.

Tato možnost není momentálně k dispozici a je poskytována pouze pro dopředné kompatibility.

Výstupy

Název Typ Description
Entity Tabulka dat Seznam posunů znaků a entit

Viz také

Analýza textu
Hashování funkcí
Skóre modelu Vowpal Wabbit 7-4
Trénování modelu Vowpal Wabbit 7-4