Konfigurowanie projektu etykietowania tekstu i eksportowanie etykiet
W usłudze Azure Machine Learning dowiesz się, jak tworzyć i uruchamiać projekty etykietowania danych w celu etykietowania danych tekstowych. Określ pojedynczą etykietę lub wiele etykiet, które mają być stosowane do każdego elementu tekstowego.
Możesz również użyć narzędzia do etykietowania danych w usłudze Azure Machine Learning, aby utworzyć projekt etykietowania obrazów.
Możliwości etykietowania tekstu
Etykietowanie danych usługi Azure Machine Learning to narzędzie, za pomocą którego można tworzyć projekty etykietowania danych, zarządzać nimi i monitorować je. Jego zastosowania to:
- Koordynowanie danych, etykiet i członków zespołu w celu wydajnego zarządzania zadaniami etykietowania.
- Śledzenie postępu i utrzymywanie kolejki niekompletnych zadań etykietowania.
- Uruchom i zatrzymaj projekt i kontroluj postęp etykietowania.
- Przejrzyj i wyeksportuj oznaczone dane jako zestaw danych usługi Azure Machine Learning.
Ważne
Dane tekstowe, z których pracujesz w narzędziu do etykietowania danych usługi Azure Machine Learning, muszą być dostępne w magazynie danych usługi Azure Blob Storage. Jeśli nie masz istniejącego magazynu danych, możesz przekazać pliki danych do nowego magazynu danych podczas tworzenia projektu.
Te formaty danych są dostępne dla danych tekstowych:
- .txt: każdy plik reprezentuje jeden element, który ma być oznaczony etykietą.
- .csv lub .tsv: każdy wiersz reprezentuje jeden element przedstawiony w etykiecie. Decydujesz, które kolumny będą widoczne dla etykiet wiersza.
Wymagania wstępne
Te elementy służą do konfigurowania etykietowania tekstu w usłudze Azure Machine Learning:
- Dane, które chcesz oznaczyć, w plikach lokalnych lub w usłudze Azure Blob Storage.
- Zestaw etykiet, które chcesz zastosować.
- Instrukcje dotyczące etykietowania.
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
- Obszar roboczy usługi Azure Machine Learning. Zobacz Tworzenie obszaru roboczego usługi Azure Machine Learning.
Tworzenie projektu etykietowania tekstu
Projekty etykietowania są administrowane w usłudze Azure Machine Learning. Użyj strony Etykietowanie danych w usłudze Machine Learning, aby zarządzać projektami.
Jeśli dane są już w usłudze Azure Blob Storage, przed utworzeniem projektu etykietowania upewnij się, że są one dostępne jako magazyn danych.
Aby utworzyć projekt, wybierz pozycję Dodaj projekt.
W polu Nazwa projektu wprowadź nazwę projektu.
Nie można ponownie użyć nazwy projektu, nawet jeśli projekt zostanie usunięty.
Aby utworzyć projekt etykietowania tekstu, w polu Typ nośnika wybierz pozycję Tekst.
W polu Typ zadania Etykietowanie wybierz opcję dla danego scenariusza:
- Aby zastosować tylko jedną etykietę do każdego fragmentu tekstu z zestawu etykiet, wybierz wieloklasową klasyfikację tekstu.
- Aby zastosować co najmniej jedną etykietę do każdego fragmentu tekstu z zestawu etykiet, wybierz wieloetekstową klasyfikację tekstu.
- Aby zastosować etykiety do pojedynczych wyrazów tekstowych lub wielu wyrazów tekstowych w każdym wpisie, wybierz pozycję Rozpoznawanie jednostek nazwanych tekstem.
Wybierz przycisk Dalej, aby kontynuować.
Dodawanie pracowników (opcjonalnie)
Wybierz pozycję Użyj firmy etykietowania dostawcy z witryny Azure Marketplace tylko wtedy, gdy zaangażujesz firmę do etykietowania danych z witryny Azure Marketplace. Następnie wybierz dostawcę. Jeśli dostawca nie pojawi się na liście, wyczyść tę opcję.
Upewnij się, że najpierw skontaktujesz się z dostawcą i podpiszesz umowę. Aby uzyskać więcej informacji, zobacz Praca z firmą dostawcy etykiet danych (wersja zapoznawcza).
Wybierz przycisk Dalej, aby kontynuować.
Wybieranie lub tworzenie zestawu danych
Jeśli utworzono już zestaw danych zawierający dane, wybierz go z listy rozwijanej Wybierz istniejący zestaw danych . Możesz również wybrać pozycję Utwórz zestaw danych , aby użyć istniejącego magazynu danych platformy Azure lub przekazać pliki lokalne.
Uwaga
Projekt nie może zawierać więcej niż 500 000 plików. Jeśli zestaw danych przekracza tę liczbę plików, ładowane są tylko pierwsze 500 000 plików.
Tworzenie zestawu danych na podstawie magazynu danych platformy Azure
W wielu przypadkach można przekazać pliki lokalne. Jednak Eksplorator usługi Azure Storage zapewnia szybszy i bardziej niezawodny sposób transferu dużej ilości danych. Zalecamy Eksplorator usługi Storage jako domyślny sposób przenoszenia plików.
Aby utworzyć zestaw danych na podstawie danych, które są już przechowywane w usłudze Blob Storage:
- Wybierz pozycję Utwórz.
- W polu Nazwa wprowadź nazwę zestawu danych. Możesz również wprowadzić opis.
- Wybierz typ zestawu danych:
- Jeśli używasz pliku .csv lub tsv , a każdy wiersz zawiera odpowiedź, wybierz pozycję Tabelaryczna.
- Jeśli używasz oddzielnych plików .txt dla każdej odpowiedzi, wybierz pozycję Plik.
- Wybierz Dalej.
- Wybierz pozycję Z usługi Azure Storage, a następnie wybierz pozycję Dalej.
- Wybierz magazyn danych, a następnie wybierz pozycję Dalej.
- Jeśli dane są w podfolderze w usłudze Blob Storage, wybierz pozycję Przeglądaj , aby wybrać ścieżkę.
- Aby dołączyć wszystkie pliki do podfolderów wybranej ścieżki, dołącz
/**
do ścieżki. - Aby uwzględnić wszystkie dane w bieżącym kontenerze i jego podfolderach, dołącz
**/*.*
do ścieżki.
- Aby dołączyć wszystkie pliki do podfolderów wybranej ścieżki, dołącz
- Wybierz pozycję Utwórz.
- Wybierz utworzony zasób danych.
Tworzenie zestawu danych na podstawie przekazanych danych
Aby bezpośrednio przekazać dane:
- Wybierz pozycję Utwórz.
- W polu Nazwa wprowadź nazwę zestawu danych. Możesz również wprowadzić opis.
- Wybierz typ zestawu danych:
- Jeśli używasz pliku .csv lub tsv , a każdy wiersz zawiera odpowiedź, wybierz pozycję Tabelaryczna.
- Jeśli używasz oddzielnych plików .txt dla każdej odpowiedzi, wybierz pozycję Plik.
- Wybierz Dalej.
- Wybierz pozycję Z plików lokalnych, a następnie wybierz pozycję Dalej.
- (Opcjonalnie) Wybierz magazyn danych. Domyślne przekazywanie do domyślnego magazynu obiektów blob (workspaceblobstore) dla obszaru roboczego usługi Machine Learning.
- Wybierz Dalej.
- Wybierz pozycję Przekaż pliki lub Przekaż>>folder Przekaż, aby wybrać lokalne pliki lub foldery do przekazania.
- Znajdź pliki lub folder w oknie przeglądarki, a następnie wybierz pozycję Otwórz.
- Wybierz pozycję Przekaż , dopóki nie określisz wszystkich plików i folderów.
- Opcjonalnie zaznacz pole wyboru Zastąp , jeśli już istnieje . Sprawdź listę plików i folderów.
- Wybierz Dalej.
- Potwierdź szczegóły. Wybierz pozycję Wstecz , aby zmodyfikować ustawienia, lub wybierz pozycję Utwórz , aby utworzyć zestaw danych.
- Na koniec wybierz utworzony zasób danych.
Konfigurowanie odświeżania przyrostowego
Jeśli planujesz dodać nowe pliki danych do zestawu danych, użyj odświeżania przyrostowego, aby dodać pliki do projektu.
Po ustawieniu opcji Włącz odświeżanie przyrostowe w regularnych odstępach czasu zestaw danych jest okresowo sprawdzany pod kątem dodawania nowych plików do projektu na podstawie współczynnika uzupełniania etykiet. Sprawdzanie nowych danych zatrzymuje się, gdy projekt zawiera maksymalnie 500 000 plików.
Wybierz pozycję Włącz odświeżanie przyrostowe w regularnych odstępach czasu, gdy projekt ma stale monitorować nowe dane w magazynie danych.
Wyczyść zaznaczenie, jeśli nie chcesz, aby nowe pliki w magazynie danych zostały automatycznie dodane do projektu.
Ważne
Po włączeniu odświeżania przyrostowego nie twórz nowej wersji dla zestawu danych, który chcesz zaktualizować. W przeciwnym razie aktualizacje nie będą widoczne, ponieważ projekt etykietowania danych jest przypięty do wersji początkowej. Zamiast tego użyj Eksplorator usługi Azure Storage, aby zmodyfikować dane w odpowiednim folderze w usłudze Blob Storage.
Ponadto nie usuwaj danych. Usunięcie danych z zestawu danych używanego przez projekt powoduje błąd w projekcie.
Po utworzeniu projektu użyj karty Szczegóły , aby zmienić odświeżanie przyrostowe, wyświetlić sygnaturę czasową ostatniego odświeżenia i zażądać natychmiastowego odświeżenia danych.
Uwaga
Projekty korzystające z danych wejściowych zestawu danych tabelarycznych (.csv lub tsv) mogą używać odświeżania przyrostowego. Jednak odświeżanie przyrostowe dodaje tylko nowe pliki tabelaryczne. Odświeżanie nie rozpoznaje zmian istniejących plików tabelarycznych.
Określanie kategorii etykiet
Na stronie Kategorie etykiet określ zestaw klas do kategoryzowania danych.
Dokładność i szybkość etykiet mają wpływ na ich zdolność do wyboru między klasami. Na przykład, zamiast określać pełny rodzaj i gatunki roślin lub zwierząt, należy użyć kodu pola lub skrócić rodzaj.
Możesz użyć płaskiej listy lub utworzyć grupy etykiet.
Aby utworzyć płaską listę, wybierz pozycję Dodaj kategorię etykiet, aby utworzyć każdą etykietę.
Aby utworzyć etykiety w różnych grupach, wybierz pozycję Dodaj kategorię etykiet, aby utworzyć etykiety najwyższego poziomu. Następnie wybierz znak plus (+) poniżej każdego najwyższego poziomu, aby utworzyć następny poziom etykiet dla tej kategorii. Dla każdego grupowania można utworzyć maksymalnie sześć poziomów.
Etykiety można wybrać na dowolnym poziomie podczas procesu tagowania. Na przykład etykiety Animal
, , Animal/Cat
Animal/Dog
, Color
Color/Black
, , Color/White
i Color/Silver
są dostępne dla etykiety. W projekcie z wieloma etykietami nie ma potrzeby wybierania jednej z każdej kategorii. Jeśli jest to Twoja intencja, pamiętaj, aby uwzględnić te informacje w instrukcjach.
Opis zadania etykietowania tekstu
Ważne jest, aby jasno wyjaśnić zadanie etykietowania. Na stronie Instrukcje etykietowania możesz dodać link do witryny zewnętrznej zawierającej instrukcje etykietowania lub podać instrukcje w polu edycji na stronie. Zachowaj instrukcje zorientowane na zadania i odpowiednie dla odbiorców. Weź pod uwagę następujące pytania:
- Jakie etykiety będą widoczne i jak będą wybierane spośród nich? Czy istnieje tekst referencyjny do odwoływania się do?
- Co należy zrobić, jeśli etykieta nie wydaje się odpowiednia?
- Co należy zrobić, jeśli wiele etykiet wydaje się odpowiednie?
- Jaki próg ufności należy zastosować do etykiety? Czy chcesz, aby etykietka najlepiej odgadła, jeśli nie są pewne?
- Co należy zrobić z częściowo okludium lub nakładającymi się obiektami zainteresowania?
- Co należy zrobić, jeśli obiekt zainteresowania jest przycięty przez krawędź obrazu?
- Co powinni zrobić, jeśli uważają, że popełnili błąd po przesłaniu etykiety?
- Co należy zrobić, jeśli odkryją problemy z jakością obrazu, w tym słabe warunki oświetlenia, odbicia, utratę ostrości, niepożądane tło zawarte, nietypowe kąty aparatu itd.?
- Co należy zrobić, jeśli wielu recenzentów ma różne opinie dotyczące stosowania etykiety?
Uwaga
Etykiety mogą wybierać pierwsze dziewięć etykiet przy użyciu kluczy liczbowych od 1 do 9.
Kontrola jakości (wersja zapoznawcza)
Aby uzyskać dokładniejsze etykiety, użyj strony Kontrola jakości , aby wysłać każdy element do wielu etykiet.
Ważne
Etykietowanie konsensusu jest obecnie dostępne w publicznej wersji zapoznawczej.
Wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone.
Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.
Aby każdy element był wysyłany do wielu etykiet, wybierz pozycję Włącz etykietowanie konsensusu (wersja zapoznawcza). Następnie ustaw wartości dla elementów Minimum labelers i Maximum labelers , aby określić liczbę etykiet do użycia. Upewnij się, że masz dowolną liczbę etykiet dostępnych jako maksymalną liczbę. Nie można zmienić tych ustawień po rozpoczęciu projektu.
Jeśli osiągnięto konsensus z minimalnej liczby etykiet, element jest oznaczony etykietą. Jeśli porozumienie nie zostanie osiągnięte, element zostanie wysłany do większej liczby etykietek. Jeśli nie ma konsensusu po przejściu elementu do maksymalnej liczby etykiet, jego stan to Przegląd potrzeb, a właściciel projektu jest odpowiedzialny za etykietowanie elementu.
Używanie etykietowania danych wspomaganych przez uczenie maszynowe
Aby przyspieszyć zadania etykietowania, strona etykietowania wspomaganego uczenia maszynowego może wyzwalać automatyczne modele uczenia maszynowego. Etykietowanie wspomagane przez uczenie maszynowe (ML) może obsługiwać zarówno dane tekstowe (.txt) jak i tabelaryczne (.csv).
Aby użyć etykietowania wspomaganego przez uczenie maszynowe:
- Wybierz pozycję Włącz etykietowanie wspomagane przez uczenie maszynowe.
- Wybierz język zestawu danych dla projektu. Ta lista zawiera wszystkie języki obsługiwane przez klasę TextDNNLanguages.
- Określ docelowy obiekt obliczeniowy do użycia. Jeśli w obszarze roboczym nie masz docelowego obiektu obliczeniowego, ten krok tworzy klaster obliczeniowy i dodaje go do obszaru roboczego. Klaster jest tworzony z co najmniej zerowym węzłem i nie kosztuje nic, gdy nie jest używany.
Więcej informacji na temat etykietowania wspomaganego przez uczenie maszynowe
Na początku projektu etykietowania elementy są potasowane w losową kolejność w celu zmniejszenia potencjalnych stronniczości. Jednak wytrenowany model odzwierciedla wszelkie uprzedzenia obecne w zestawie danych. Jeśli na przykład 80 procent elementów jest jedną klasą, około 80 procent danych używanych do trenowania modelu ląduje w tej klasie.
Aby wytrenować model nazwy sieci rozproszonej tekstu używany przez etykietowanie wspomagane przez uczenie maszynowe, tekst wejściowy na przykład trenowania jest ograniczony do około pierwszych 128 słów w dokumencie. W przypadku danych wejściowych tabelarycznych wszystkie kolumny tekstowe są łączone przed zastosowaniem tego limitu. Ten praktyczny limit umożliwia trenowanie modelu w rozsądnym czasie. Rzeczywisty tekst w dokumencie (dla danych wejściowych pliku) lub zestaw kolumn tekstowych (dla danych wejściowych tabelarycznych) może przekraczać 128 wyrazów. Limit dotyczy tylko tego, co model wewnętrznie używa podczas procesu trenowania.
Liczba oznaczonych etykietami elementów wymaganych do rozpoczęcia etykietowania asystowanego nie jest stałą liczbą. Ta liczba może się znacznie różnić w zależności od jednego projektu etykietowania do innego. Wariancja zależy od wielu czynników, w tym liczby klas etykiet i rozkładu etykiet.
W przypadku używania etykietowania konsensusu etykieta konsensusu jest używana do trenowania.
Ponieważ etykiety końcowe nadal opierają się na danych wejściowych z labelera, ta technologia jest czasami nazywana etykietowaniem typu human-in-the-loop .
Uwaga
Etykietowanie danych wspomaganych przez uczenie maszynowe nie obsługuje domyślnych kont magazynu zabezpieczonych za siecią wirtualną. Do etykietowania danych wspomaganych przez uczenie maszynowe należy użyć konta magazynu innego niż domyślne. Konto magazynu innego niż domyślne można zabezpieczyć za siecią wirtualną.
Wstępne etykietowanie
Po przesłaniu wystarczającej ilości etykiet do trenowania wytrenowany model jest używany do przewidywania tagów. Program labeler widzi teraz strony pokazujące przewidywane etykiety już obecne w każdym elemencie. Następnie zadanie polega na przejrzeniu tych przewidywań i skorygowaniu wszelkich nieprawidłowo oznakowanych elementów przed przesłaniem strony.
Po wytrenaniu modelu uczenia maszynowego na ręcznie oznaczonych danymi model jest oceniany na zestawie testowym ręcznie oznaczonych elementami. Ocena pomaga określić dokładność modelu przy różnych progach ufności. Proces oceny określa próg ufności, po którym model jest wystarczająco dokładny, aby pokazać etykiety wstępne. Następnie model jest oceniany pod kątem danych bez etykiet. Elementy, które mają przewidywania, które są bardziej pewne niż próg, są używane do wstępnego etykietowania.
Inicjowanie projektu etykietowania tekstu
Po zainicjowaniu projektu etykietowania niektóre aspekty projektu są niezmienne. Nie można zmienić typu zadania ani zestawu danych. Można modyfikować etykiety i adres URL opisu zadania. Dokładnie przejrzyj ustawienia przed utworzeniem projektu. Po przesłaniu projektu wróć do strony przeglądu Etykietowanie danych, która pokazuje projekt jako Inicjowanie.
Uwaga
Strona przeglądu może nie zostać automatycznie odświeżona. Po wstrzymaniu ręcznie odśwież stronę, aby wyświetlić stan projektu jako Utworzono.
Rozwiązywanie problemów
Aby uzyskać informacje o problemach z tworzeniem projektu lub uzyskiwaniem dostępu do danych, zobacz Rozwiązywanie problemów z etykietowaniem danych.