Rozpoznawanie jednostek nazwanych
Ważne
Obsługa programu Machine Learning Studio (wersja klasyczna) zakończy się 31 sierpnia 2024 r. Zalecamy przejście do usługi Azure Machine Learning przed tym terminem.
Od 1 grudnia 2021 r. nie będzie można tworzyć nowych zasobów programu Machine Learning Studio (wersja klasyczna). Do 31 sierpnia 2024 r. można będzie nadal korzystać z istniejących zasobów programu Machine Learning Studio (wersja klasyczna).
- Zobacz informacje na temat przenoszenia projektów uczenia maszynowego z programu ML Studio (wersja klasyczna) do Azure Machine Learning.
- Dowiedz się więcej o Azure Machine Learning.
Dokumentacja programu ML Studio (wersja klasyczna) jest wycofywana i może nie być aktualizowana w przyszłości.
Rozpoznaje nazwane jednostki w kolumnie tekstowej
Kategoria: analiza tekstu
Uwaga
Dotyczy: tylko Machine Learning Studio (klasyczne)
Podobne moduły przeciągania i upuszczania są dostępne w Azure Machine Learning projektanta.
Omówienie modułu
W tym artykule opisano, jak używać modułu rozpoznawanie jednostek nazwanych w programie Machine Learning Studio (wersja klasyczna) do identyfikowania nazw rzeczy, takich jak osoby, firmy lub lokalizacje w kolumnie tekstu.
Rozpoznawanie jednostek nazwanych jest ważnym obszarem badań nad uczeniem maszynowym i przetwarzaniem języka naturalnego(NLP), ponieważ może służyć do odpowiadania na wiele rzeczywistych pytań, takich jak:
Czy tweet zawiera imię i nazwisko osoby? Czy tweet zawiera również bieżącą lokalizację?
Które firmy zostały wymienione w artykule z wiadomościami?
Czy określone produkty zostały wymienione w skargach lub recenzjach?
Aby uzyskać listę nazwanych jednostek, należy podać zestaw danych jako dane wejściowe zawierające kolumnę tekstową. Moduł rozpoznawanie jednostek nazwanych następnie zidentyfikuje trzy typy jednostek: osoby (PER), lokalizacje (LOC) i organizacje (ORG).
Moduł oznacza również sekwencje według miejsca, w którym te wyrazy zostały znalezione, dzięki czemu można używać terminów w dalszej analizie.
Na przykład w poniższej tabeli przedstawiono proste zdanie wejściowe oraz terminy i wartości wygenerowane przez moduł:
Tekst wejściowy | Dane wyjściowe modułu |
---|---|
"Boston to doskonałe miejsce do życia". | 0,Boston,0,6,LOC |
Dane wyjściowe można interpretować w następujący sposób:
Pierwszy "0" oznacza, że ten ciąg jest pierwszym artykułem wejściowym modułu.
Ponieważ jeden artykuł może mieć wiele jednostek, w tym numer wiersza artykułu w danych wyjściowych, jest ważny w przypadku mapowania funkcji na artykuły.
Boston
to rozpoznana jednostka.Następujący
0
ciąg oznaczaBoston
, że jednostka rozpoczynaBoston
się od pierwszej litery ciągu wejściowego. Indeksy są od zera.6
oznacza, że długość jednostkiBoston
wynosi 6.LOC
oznacza, że jednostkaBoston
jest miejscem lub lokalizacją. Inne obsługiwane nazwane typy jednostek to osoba (PER
) i organizacja (ORG
).
Jak skonfigurować rozpoznawanie jednostek nazwanych
Dodaj moduł rozpoznawanie jednostek nazwanych do eksperymentu w programie Studio (wersja klasyczna). Moduł można znaleźć w kategorii analiza tekstu kategorii.
W danych wejściowych o nazwie Story połącz zestaw danych zawierający tekst do przeanalizowania.
Element "story" powinien zawierać tekst, z którego mają zostać wyodrębnione nazwane jednostki.
Kolumna używana jako story powinna zawierać wiele wierszy, gdzie każdy wiersz składa się z ciągu. Ciąg może być krótki, taki jak zdanie, lub długi, jak artykuł z wiadomościami.
Możesz połączyć dowolny zestaw danych, który zawiera kolumnę tekstową. Jeśli jednak wejściowy zestaw danych zawiera wiele kolumn, użyj opcji Wybierz kolumny w zestawie danych, aby wybrać tylko kolumnę zawierającą tekst, który chcesz przeanalizować
Uwaga
Drugie dane wejściowe, Custom Resources (Zip), nie są obecnie obsługiwane.
W przyszłości możesz tutaj dodać pliki zasobów niestandardowych, aby identyfikować różne typy jednostek.
Uruchom eksperyment.
Wyniki
Moduł wyprowadza zestaw danych zawierający wiersz dla każdej rozpoznanej jednostki wraz z przesunięciem.
Ponieważ każdy wiersz tekstu wejściowego może zawierać wiele nazwanych jednostek, numer identyfikatora artykułu jest automatycznie generowany i uwzględniany w danych wyjściowych, aby zidentyfikować wiersz wejściowy, który zawierał nazwaną jednostkę. Identyfikator artykułu jest oparty na naturalnej kolejności wierszy w wejściowym zestawie danych.
Możesz przekonwertować ten wyjściowy zestaw danych na plik CSV do pobrania lub zapisać go jako zestaw danych do ponownego użycia.
Używanie rozpoznawania nazwanych jednostek w usłudze internetowej
Jeśli publikujesz usługę internetową z programu Machine Learning Studio (wersja klasyczna) i chcesz korzystać z usługi internetowej przy użyciu języka C#, Python lub innego języka, takiego jak R, musisz najpierw zaimplementować kod usługi podany na stronie pomocy usługi internetowej.
Jeśli usługa internetowa udostępnia wiele wierszy danych wyjściowych, adres URL usługi internetowej, która jest dodawania do kodu języka C#, Python lub R scoremultirow
score
, powinien mieć sufiks zamiast .
Załóżmy na przykład, że używasz następującego adresu URL dla usługi internetowej: https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/score
Aby włączyć dane wyjściowe z wieloma wierszami, zmień adres URL na https://ussouthcentral.services.azureml.net/workspaces/<workspace id>/services/<service id>/scoremultirow
Aby opublikować tę usługę internetową, należy dodać dodatkowy moduł Execute R Script (Wykonywanie skryptu R) po module rozpoznawanie jednostek nazwanych , aby przekształcić dane wyjściowe z wieloma wierszami w pojedynczy rozdzielany średnikami (;)). Przyczyną konsolidacji wielu wierszy danych wyjściowych w jednym wierszu jest zwrócenie wielu jednostek na wiersz wejściowy.
Załóżmy na przykład, że masz zdanie wejściowe z dwoma nazwami jednostek. Zamiast zwracać dwa wiersze dla każdego wiersza danych wejściowych, można zwrócić pojedynczy wiersz z wieloma jednostkami oddzielony średnikami, jak pokazano poniżej:
Tekst wejściowy | Dane wyjściowe usługi internetowej |
---|---|
Firma Microsoft ma dwie lokalizacje biurowe w Bostonie. | 0,Microsoft,0,9,ORG,;,0,Boston,38,6,LOC,; |
W poniższym przykładzie kodu pokazano, jak to zrobić:
# 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");
Przykłady
Ten blog zawiera rozszerzone wyjaśnienie sposobu działania rozpoznawania nazwanych jednostek, jego tła i możliwych aplikacji:
Ponadto zapoznaj się z następującymi przykładami eksperymentów w Azure AI Gallery, aby uzyskać pokazy użycia metod klasyfikacji tekstu często używanych w uczeniu maszynowym:
Przykład kategoryzacji wiadomości: używa funkcji wyznaczania wartości skrótu do klasyfikowania artykułów na wstępnie zdefiniowaną listę kategorii.
Przykład podobnych firm: używa tekstu artykułów w Wikipedii do kategoryzowania firm.
Klasyfikacja tekstu — krok 1 z 5: Przygotowywanie danych: w tym pięciosekwowym przewodniku klasyfikacji tekstu tekst z wiadomości w serwisie Twitter jest używany do przeprowadzania analizy tonacji. Pokazano również różne techniki wstępnego przetwarzania tekstu.
Uwagi techniczne
Obsługa języków
Obecnie moduł rozpoznawanie jednostek nazwanych obsługuje tylko tekst w języku angielskim. Może wykrywać nazwy organizacji, nazwiska i lokalizacje w zdaniach w języku angielskim. Jeśli używasz modułu w innych językach, możesz nie otrzymać błędu, ale wyniki nie są tak dobre jak w przypadku tekstu w języku angielskim.
W przyszłości obsługę dodatkowych języków można włączyć, integrując składniki wielojęzyczne dostępne w zestawie narzędzi języka Office naturalnego.
Oczekiwane dane wejściowe
Nazwa | Typ | Opis |
---|---|---|
Historia | Tabela danych | Wejściowy zestaw danych (DataTable) zawierający kolumnę tekstową, którą chcesz przeanalizować. |
CustomResources | Zip | (Opcjonalnie) Plik w formacie ZIP, który zawiera dodatkowe zasoby niestandardowe. Ta opcja nie jest obecnie dostępna i jest dostępna tylko w celu zapewnienia zgodności do przodu. |
Dane wyjściowe
Nazwa | Typ | Opis |
---|---|---|
Jednostki | Tabela danych | Lista przesunięć znaków i jednostek |
Zobacz też
Analiza tekstu
Tworzenie skrótów funkcji
Ocena modelu Vowpal Wabbit 7-4
Trenowanie modelu Vowpal Wabbit 7-4