Udostępnij za pośrednictwem


Najlepsze rozwiązania dotyczące trenowania modelu mowy

Uwaga

Dostosowywanie modelu mowy, w tym trenowanie wymowy, jest obsługiwane tylko w przypadku kont wersji próbnej platformy Azure usługi Video Indexer i kont usługi Resource Manager. Nie jest obsługiwany w przypadku kont klasycznych. Aby uzyskać wskazówki dotyczące aktualizowania typu konta bez ponoszenia kosztów, zobacz Aktualizowanie konta usługi Azure AI Video Indexer. Aby uzyskać wskazówki dotyczące korzystania z niestandardowego środowiska językowego, zobacz Dostosowywanie modelu językowego.

Dzięki integracji usługi Azure AI Video Indexer z usługami Azure AI Speech model uniwersalny jest używany jako model podstawowy, który jest trenowany z danymi należącymi do firmy Microsoft i odzwierciedla powszechnie używany język mówiony. Model podstawowy jest wstępnie wytrenowany dialektami i fonetykami reprezentującymi różne typowe domeny. Model podstawowy działa dobrze w większości scenariuszy rozpoznawania mowy.

Jednak czasami transkrypcja modelu podstawowego nie obsługuje dokładnie niektórych treści. W takich sytuacjach dostosowany model mowy może służyć do ulepszania rozpoznawania słownictwa specyficznego dla domeny lub wymowy specyficznej dla zawartości, dostarczając dane tekstowe do trenowania modelu. Dzięki procesowi tworzenia i dostosowywania modeli dostosowywania mowy zawartość może być prawidłowo transkrypowana. Za korzystanie z dostosowywania mowy usługi Video Indexers nie są naliczane dodatkowe opłaty.

Kiedy używać dostosowanego modelu mowy?

Jeśli zawartość zawiera terminologię specyficzną dla branży lub podczas przeglądania wyników transkrypcji usługi Video Indexer zauważysz niedokładności, możesz utworzyć i wytrenować niestandardowy model mowy, aby rozpoznać terminy i poprawić jakość transkrypcji. Warto utworzyć model niestandardowy tylko wtedy, gdy odpowiednie słowa i nazwy będą wyświetlane wielokrotnie w zawartości, którą planujesz indeksować. Trenowanie modelu jest czasami procesem iteracyjnym i może się okazać, że po początkowym szkoleniu wyniki mogą nadal korzystać z ulepszeń i korzystać z dodatkowych szkoleń, zobacz sekcję Ulepszanie niestandardowego modelu , aby uzyskać wskazówki.

Jeśli jednak zauważysz, że w transkrypcji niepoprawnie zanotujesz kilka słów lub nazw, niestandardowy model mowy może nie być potrzebny, zwłaszcza jeśli wyrazy lub nazwy nie będą często używane w zawartości, którą planujesz indeksować w przyszłości. Możesz po prostu edytować i poprawiać transkrypcję w witrynie internetowej usługi Video Indexer (zobacz Wyświetlanie i aktualizowanie transkrypcji w witrynie internetowej usługi Azure AI Video Indexer) i nie trzeba go rozwiązywać za pomocą niestandardowego modelu mowy.

Aby uzyskać listę języków, które obsługują modele niestandardowe i wymowę, zobacz kolumny Dostosowywanie i wymowa tabeli obsługi języka w obsłudze języka w usłudze Azure AI Video Indexer.

Trenowanie zestawów danych

Podczas indeksowania wideo można użyć dostosowanego modelu mowy, aby ulepszyć transkrypcję. Modele są trenowane przez załadowanie ich za pomocą zestawów danych, które mogą zawierać dane zwykłego tekstu i dane wymowy.

Tekst używany do testowania i trenowania modelu niestandardowego powinien zawierać przykłady z zróżnicowanego zestawu zawartości i scenariuszy, które mają być rozpoznawane przez model. Podczas tworzenia i trenowania zestawów danych należy wziąć pod uwagę następujące czynniki:

  • Dołącz tekst, który obejmuje rodzaje wypowiedzi słownych, które użytkownicy tworzą podczas interakcji z modelem. Jeśli na przykład zawartość jest przede wszystkim powiązana ze sportem, wytrenuj model z zawartością zawierającą terminologię i temat związany ze sportem.
  • Uwzględnij wszystkie wariancji mowy, które mają być rozpoznawane przez model. Wiele czynników może różnić się mową, w tym akcentami, dialektami i mieszaniem języka.
  • Uwzględnij tylko dane istotne dla zawartości, którą planujesz transkrybować. Uwzględnienie innych danych może zaszkodzić ogólnej jakości rozpoznawania.

Typy zestawów danych

Istnieją dwa typy zestawów danych, których można użyć do dostosowywania. Aby ułatwić określenie, którego zestawu danych użyć do rozwiązywania problemów, zapoznaj się z następującą tabelą:

Przypadek użycia Typ danych
Zwiększ dokładność rozpoznawania słownictwa i gramatyki specyficznego dla branży, takiego jak terminologia medyczna lub żargon IT. Zwykły tekst
Zdefiniuj fonetyczną i wyświetlaną formę słowa lub terminu, który ma niestandardową wymowę, taką jak nazwy produktów lub akronimy. Dane wymowy

Dane zwykłego tekstu na potrzeby trenowania

Zestaw danych zawierający zdania w postaci zwykłego tekstu może służyć do ulepszania rozpoznawania wyrazów i fraz specyficznych dla domeny. Powiązane zdania tekstowe mogą ograniczać błędy podstawiania związane z błędną poznawaniem typowych słów i wyrazów specyficznych dla domeny, pokazując je w kontekście. Słowa specyficzne dla domeny mogą być nietypowe lub zmyślone, ale ich wymowa musi być prosta do rozpoznania.

Najlepsze rozwiązania dotyczące zestawów danych w postaci zwykłego tekstu

  • Podaj zdania związane z domeną w jednym pliku tekstowym. Zamiast używać pełnych zdań, możesz przekazać listę wyrazów. Jednak chociaż dodaje je do słownictwa, nie uczy systemu, w jaki sposób słowa są zwykle używane. Podając pełne lub częściowe wypowiedzi (zdania lub frazy rzeczy, które użytkownicy mogą powiedzieć), model językowy może nauczyć się nowych słów i sposobu ich użycia. Niestandardowy model językowy jest dobry nie tylko do dodawania nowych wyrazów do systemu, ale także do dostosowywania prawdopodobieństwa znanych słów dla aplikacji. Zapewnienie pełnych wypowiedzi pomaga systemowi lepiej uczyć się.
  • Użyj danych tekstowych, które są zbliżone do oczekiwanych wypowiedzi mówionych. Wypowiedzi nie muszą być kompletne ani poprawne gramatyczne, ale muszą dokładnie odzwierciedlać mówione dane wejściowe, których oczekujesz, że model zostanie rozpoznany.
  • Spróbuj mieć każde zdanie lub słowo kluczowe w osobnym wierszu.
  • Aby zwiększyć wagę terminu, takiego jak nazwy produktów, dodaj kilka zdań, które zawierają termin.
  • W przypadku typowych fraz, które są używane w zawartości, podanie wielu przykładów jest przydatne, ponieważ nakazuje systemowi nasłuchiwanie tych terminów. 
  • Unikaj dołączania nietypowych symboli (~, # @ % &) podczas odrzucania. Zdania, w których się pojawiają, również są odrzucane.
  • Unikaj umieszczania zbyt dużych danych wejściowych, takich jak setki tysięcy zdań, ponieważ w ten sposób osłabia efekt zwiększania.

Użyj tej tabeli, aby upewnić się, że plik zestawu danych w postaci zwykłego tekstu jest poprawnie sformatowany:

Właściwości Wartość
Kodowanie tekstu UTF-8 BOM
Liczba wypowiedzi na wiersz 1
Maksymalna wielkość pliku 200 MB

Spróbuj postępować zgodnie z poniższymi wytycznymi w plikach zwykłego tekstu:

  • Unikaj powtarzania znaków, wyrazów lub grup wyrazów więcej niż trzy razy, takich jak "tak tak", ponieważ usługa może usuwać wiersze z zbyt wieloma powtórzeniami.
  • Nie używaj znaków specjalnych ani znaków UTF-8 powyżej U+00A1.
  • Identyfikatory URI są odrzucane.
  • W przypadku niektórych języków, takich jak japoński lub koreański, importowanie dużych ilości danych tekstowych może zająć dużo czasu lub może upłynąć dłużej. Rozważ podzielenie zestawu danych na wiele plików tekstowych z maksymalnie 20 000 wierszy w każdym z nich.

Dane wymowy na potrzeby trenowania

Możesz dodać do niestandardowego modelu mowy niestandardowy zestaw danych wymowy, aby poprawić rozpoznawanie błędnie wygenerowanych wyrazów, fraz lub nazw.

Zestawy danych wymowy muszą zawierać mówiony formularz słowa lub frazy, a także rozpoznany wyświetlany formularz. Forma mówiona jest sekwencją fonetyczną, taką jak "Triple A". Może składać się z liter, wyrazów, sylab lub kombinacji wszystkich trzech. Rozpoznany wyświetlony formularz to sposób wyświetlania wyrazu lub frazy w transkrypcji. Ta tabela zawiera kilka przykładów:

Rozpoznany wyświetlony formularz Formularz mówiony
3CPO trzy c p o
CNTK c n t k
AAA Triple A

Udostępniasz zestawy danych wymowy w jednym pliku tekstowym. Uwzględnij wypowiedzi mówione i niestandardową wymowę dla każdej z nich. Każdy wiersz w pliku powinien rozpoczynać się od rozpoznanego formularza, a następnie znaku tabulatora, a następnie sekwencji fonetycznej rozdzielanej spacją.

3CPO    three c p o 
CNTK    c n t k 
IEEE    i triple e 

Podczas tworzenia i trenowania zestawów danych wymowy należy wziąć pod uwagę następujące kwestie:

Nie zaleca się używania niestandardowych plików wymowy w celu zmiany wymowy typowych słów.

Jeśli istnieje kilka odmian nieprawidłowego transkrypcji wyrazu lub nazwy, rozważ użycie niektórych lub wszystkich z nich podczas trenowania zestawu danych wymowy. Jeśli na przykład Robert jest wymieniony pięć razy w filmie i transkrypcji jako Robort, Ropert i robbers. Możesz spróbować wpisać wszystkie odmiany w pliku, jak w poniższym przykładzie, ale zachować ostrożność podczas trenowania z rzeczywistymi słowami, takimi jak rabudzi, jakby robbers został wymieniony w filmie, jest on transkrypowany jako Robert.

Robert Roport
Robert Ropert
Robert Robbers

Model wymowy nie jest przeznaczony do adresowania akronimów. Jeśli na przykład chcesz, aby doktor został przetranskrybowany jako dr, nie można go osiągnąć za pomocą modelu wymowy.

Zapoznaj się z poniższą tabelą, aby upewnić się, że pliki zestawu danych wymowy są prawidłowe i poprawnie sformatowane.

Właściwości Wartość
Kodowanie tekstu UtF-8 BOM (ANSI jest również obsługiwany w języku angielskim)
Liczba wymowy na wiersz 1
Maksymalna wielkość pliku 1 MB (1 KB dla warstwy Bezpłatna)

Ulepszanie modeli niestandardowych

Trenowanie modelu wymowy może być procesem iteracyjnym, ponieważ możesz uzyskać większą wiedzę na temat wymowy tematu po początkowym szkoleniu i ocenie wyników modelu. Ponieważ istniejących modeli nie można edytować ani modyfikować, trenowanie modelu iteracyjnie wymaga utworzenia i przekazania zestawów danych z dodatkowymi informacjami, a także trenowania nowych modeli niestandardowych na podstawie nowych zestawów danych. Następnie zindeksuj ponownie pliki multimedialne przy użyciu nowego niestandardowego modelu mowy.

Przykład:

Załóżmy, że planujesz indeksowanie zawartości sportowej i przewidujesz problemy z dokładnością transkrypcji w określonej terminologii sportowej, a także w nazwach zawodników i trenerów. Przed indeksowaniem utworzono model mowy z zestawem danych w postaci zwykłego tekstu zawierającym zawartość zawierającą odpowiednią terminologię sportową i zestaw danych wymowy z niektórymi nazwami zawodników i trenerów. Indeksujesz kilka filmów wideo przy użyciu niestandardowego modelu mowy, a podczas przeglądania wygenerowanej transkrypcji okaże się, że podczas gdy terminologia jest poprawnie transkrypowana, wiele nazw nie jest. Aby zwiększyć wydajność w przyszłości, możesz wykonać następujące czynności:

  1. Przejrzyj transkrypcję i zanotuj wszystkie niepoprawnie transkrypcyjne nazwy. Mogą one należeć do dwóch grup:

    • Nazwy nie są w pliku wymowy.
    • Nazwy w pliku wymowy, ale nadal są niepoprawnie transkrypowane.
  2. Utwórz nowy plik zestawu danych. Pobierz plik zestawu danych wymowy lub zmodyfikuj lokalnie zapisany oryginalny plik. W przypadku grupy A dodaj nowe nazwy do pliku z niepoprawną transkrypcją (Michael Mikel). W przypadku grupy B dodaj dodatkowe wiersze z każdą linią o poprawnej nazwie i unikatowym przykładem nieprawidłowego transkrypcji. Na przykład:

    Stephen Steven
    Stephen Steafan
    Stephen Steevan

  3. Przekaż ten plik jako nowy plik zestawu danych.

  4. Utwórz nowy model mowy i dodaj oryginalny zestaw danych w postaci zwykłego tekstu oraz nowy plik zestawu danych wymowy.

  5. Zainseksuj ponownie film wideo przy użyciu nowego modelu mowy.

  6. W razie potrzeby powtórz kroki od 1 do 5, aż wyniki będą zadowalające.