Trenowanie modelu interpretacji języka konwersacyjnego
Po zakończeniu etykietowania wypowiedzi możesz rozpocząć trenowanie modelu. Trenowanie to proces, w którym model uczy się na podstawie oznaczonych wypowiedzi.
Aby wytrenować model, uruchom zadanie szkoleniowe. Tylko pomyślnie ukończone zadania tworzą model. Zadania szkoleniowe wygasają po siedmiu dniach, po tym czasie nie będzie już można pobrać szczegółów zadania. Jeśli zadanie trenowania zostało ukończone pomyślnie i model został utworzony, nie będzie to miało wpływu na wygaśnięcie zadania. Jednocześnie można uruchomić tylko jedno zadanie szkoleniowe i nie można uruchomić innych zadań w tym samym projekcie.
Czasy trenowania mogą wynosić od kilku sekund w przypadku prostych projektów do kilku godzin, gdy osiągniesz maksymalny limit wypowiedzi.
Ocena modelu jest wyzwalana automatycznie po pomyślnym zakończeniu trenowania. Proces oceny rozpoczyna się przy użyciu wytrenowanego modelu do uruchamiania przewidywań na wypowiedziach w zestawie testów i porównuje przewidywane wyniki z podanymi etykietami (co ustanawia punkt odniesienia prawdy).
Wymagania wstępne
- Pomyślnie utworzono projekt przy użyciu skonfigurowanego konta usługi Azure Blob Storage
- Oznaczone wypowiedziami
Równoważenie danych treningowych
Jeśli chodzi o dane szkoleniowe, spróbuj zachować zrównoważony schemat. Uwzględnienie dużych ilości jednej intencji i bardzo niewielu innych wyników w modelu, który jest stronniczy wobec określonych intencji.
Aby rozwiązać ten scenariusz, może być konieczne wyłączenie zestawu trenowania. Może być też konieczne dodanie do niego. Do downsample można wykonać następujące czynności:
- Pozbądź się pewnej wartości procentowej danych treningowych losowo.
- Przeanalizuj zestaw danych i usuń nadmiernie reprezentowane zduplikowane wpisy, co jest bardziej systematyczne.
Aby dodać zestaw szkoleniowy, w narzędziu Language Studio na karcie Etykietowanie danych wybierz pozycję Sugerowanie wypowiedzi. Usługa Language Understanding do konwersacji wysyła połączenie do usługi Azure OpenAI w celu wygenerowania podobnych wypowiedzi.
Należy również wyszukać niezamierzone "wzorce" w zestawie treningowym. Na przykład sprawdź, czy zestaw trenowania dla określonej intencji to małe litery lub zaczyna się od określonej frazy. W takich przypadkach trenowany model może nauczyć się tych niezamierzonych uprzedzeń w zestawie treningowym zamiast uogólniać.
Zalecamy wprowadzenie różnorodności wielkości liter i interpunkcji w zestawie treningowym. Jeśli model ma obsługiwać odmiany, upewnij się, że masz zestaw szkoleniowy, który odzwierciedla również różnorodność. Na przykład uwzględnij niektóre wypowiedzi we właściwej wielkości liter, a niektóre we wszystkich małych literach.
Dzielenie danych
Przed rozpoczęciem procesu trenowania oznaczone etykietami wypowiedzi w projekcie są podzielone na zestaw szkoleniowy i zestaw testów. Każdy z nich pełni inną funkcję. Zestaw trenowania jest używany w trenowaniu modelu. Jest to zestaw , z którego model uczy się oznaczonych wypowiedziami. Zestaw testów to zestaw ślepy, który nie jest wprowadzany do modelu podczas trenowania, ale tylko podczas oceny.
Po pomyślnym wytrenowanym modelu można użyć modelu do przewidywania z wypowiedzi w zestawie testów. Te przewidywania są używane do obliczania metryk oceny. Zaleca się upewnienie się, że wszystkie intencje i jednostki są odpowiednio reprezentowane zarówno w zestawie treningowym, jak i testowym.
Obsługa języka konwersacyjnego obsługuje dwie metody dzielenia danych:
- Automatyczne dzielenie zestawu testów z danych treningowych: system podzieli dane oznakowane między zestawy treningowe i testowe, zgodnie z wybranymi wartościami procentowymi. Zalecany podział procentowy wynosi 80% na potrzeby trenowania i 20% na potrzeby testowania.
Uwaga
Jeśli wybierzesz opcję Automatycznie dzieląc zestaw testów z danych treningowych, tylko dane przypisane do zestawu treningowego zostaną podzielone zgodnie z podanymi wartościami procentowymi.
- Użyj ręcznego podziału danych treningowych i testowych: ta metoda umożliwia użytkownikom zdefiniowanie, które wypowiedzi powinny należeć do tego zestawu. Ten krok jest włączony tylko w przypadku dodania wypowiedzi do zestawu testów podczas etykietowania.
Tryby trenowania
Funkcja CLU obsługuje dwa tryby trenowania modeli
Trenowanie standardowe używa szybkich algorytmów uczenia maszynowego do stosunkowo szybkiego trenowania modeli. Jest to obecnie dostępne tylko dla języka angielskiego i jest wyłączone dla każdego projektu, który nie używa języka angielskiego (USA) lub angielskiego (Uk) jako języka podstawowego. Ta opcja szkoleniowa jest bezpłatna. Trenowanie standardowe umożliwia dodawanie wypowiedzi i testowanie ich szybko bez ponoszenia kosztów. Wyświetlone wyniki oceny powinny kierować się miejscem wprowadzania zmian w projekcie i dodawania kolejnych wypowiedzi. Po kilku iteracjach i wprowadzeniu ulepszeń przyrostowych można rozważyć użycie zaawansowanego szkolenia w celu wytrenowania innej wersji modelu.
Zaawansowane szkolenie wykorzystuje najnowszą technologię uczenia maszynowego do dostosowywania modeli przy użyciu danych. Oczekuje się, że pokaże to lepsze wyniki wydajności dla modeli i umożliwi korzystanie z wielojęzycznych możliwości clu. Szkolenie zaawansowane jest wyceniane inaczej. Aby uzyskać szczegółowe informacje, zobacz informacje o cenach.
Użyj wyników oceny, aby kierować decyzjami. Czasami określonego przykładu można przewidzieć niepoprawnie w zaawansowanym trenowaniu, a nie w przypadku korzystania ze standardowego trybu trenowania. Jeśli jednak ogólne wyniki oceny są lepsze przy użyciu zaawansowanych, zaleca się użycie ostatecznego modelu. Jeśli tak nie jest i nie chcesz używać żadnych funkcji wielojęzycznych, możesz nadal korzystać z modelu trenowanego w trybie standardowym.
Uwaga
Należy spodziewać się różnicy w zachowaniach w wynikach ufności intencji między trybami trenowania, ponieważ każdy algorytm kalibruje wyniki inaczej.
Trenowanie modelu
Aby rozpocząć trenowanie modelu z poziomu programu Language Studio:
Wybierz pozycję Train model (Trenowanie modelu ) z menu po lewej stronie.
Wybierz pozycję Start a training job (Rozpocznij zadanie szkoleniowe) z górnego menu.
Wybierz pozycję Train a new model (Trenowanie nowego modelu) i wprowadź nową nazwę modelu w polu tekstowym. W przeciwnym razie, aby zastąpić istniejący model modelem wytrenowanym na nowych danych, wybierz pozycję Zastąp istniejący model , a następnie wybierz istniejący model. Zastępowanie wytrenowanego modelu jest nieodwracalne, ale nie wpłynie to na wdrożone modele do momentu wdrożenia nowego modelu.
Wybierz tryb trenowania. Możesz wybrać standardowe szkolenie w celu szybszego szkolenia , ale jest dostępne tylko dla języka angielskiego. Możesz też wybrać opcję Zaawansowane szkolenie , które jest obsługiwane w przypadku innych języków i projektów wielojęzycznych, ale obejmuje dłuższe czasy trenowania. Dowiedz się więcej o trybach trenowania.
Wybierz metodę dzielenia danych. Możesz wybrać opcję Automatyczne dzielenie zestawu testów z danych treningowych, w których system podzieli wypowiedzi między zestawy treningowe i testowe, zgodnie z określonymi wartościami procentowymi. Możesz też użyć ręcznego podziału danych treningowych i testowych, ta opcja jest włączona tylko wtedy, gdy dodano wypowiedzi do zestawu testów po oznaczeniu wypowiedzi.
Wybierz przycisk Train (Trenuj).
Wybierz identyfikator zadania szkoleniowego z listy. Zostanie wyświetlony panel, w którym można sprawdzić postęp trenowania, stan zadania i inne szczegóły dotyczące tego zadania.
Uwaga
- Tylko pomyślnie ukończone zadania szkoleniowe będą generować modele.
- Trenowanie może potrwać od kilku minut do kilku godzin na podstawie liczby wypowiedzi.
- Jednocześnie może być uruchomione tylko jedno zadanie trenowania. Nie można uruchomić innych zadań szkoleniowych w tym samym projekcie, dopóki uruchomione zadanie nie zostanie ukończone.
- Uczenie maszynowe używane do trenowania modeli jest regularnie aktualizowane. Aby wytrenować poprzednią wersję konfiguracji, wybierz pozycję Wybierz tutaj, aby zmienić się na stronie Rozpocznij zadanie trenowania i wybierz poprzednią wersję.
Anulowanie zadania trenowania
Aby anulować zadanie szkoleniowe z poziomu programu Language Studio
- Na stronie Trenowanie modelu wybierz zadanie trenowania, które chcesz anulować, a następnie wybierz pozycję Anuluj z górnego menu.