Oto, czego się ostatnio nauczyłem.
Oczywiście, mówiąc o RNN generujących tekst, mówimy o modelach językowych RNN. Kiedy pyta o słowo / char oparte RNNs generacji tekstu, prosimy o słowo / char oparte na modelach językowych RNN (LM).
LM oparte na słowie wykazują wyższą dokładność i niższe koszty obliczeniowe niż LM oparte na znakach.
Ten spadek wydajności jest mało prawdopodobny z powodu trudności w przechwytywaniu dłuższej pamięci krótkoterminowej przez model poziomu znaków, ponieważ również sieci rekurencyjne o dłuższej pamięci krótkoterminowej (LSTM) działają lepiej z wprowadzaniem słów.
Wynika to z faktu, że LM oparte na znakach wymagają znacznie większej warstwy ukrytej, aby skutecznie modelować długoterminowe zależności, co oznacza wyższe koszty obliczeniowe.
Dlatego możemy to powiedzieć
jedną z podstawowych różnic między modelami poziomu słowa i poziomu znaków jest liczba parametrów, do których RNN ma dostęp podczas szkolenia i testu. Im mniejsza jest warstwa wejściowa i wyjściowa RNN, tym większa musi być w pełni połączona warstwa ukryta, co powoduje, że szkolenie modelu jest drogie.
Jednak RNN LM oparte na znakach lepiej modelują języki o bogatej morfologii, takie jak Finish, Turkish, Russian itp. Używanie RNN LM opartych na słowach do modelowania takich języków jest trudne, o ile to możliwe, i nie jest zalecane.
Powyższa analiza ma sens szczególnie, gdy spojrzysz na tekst wyjściowy wygenerowany przez RNN oparte na znakach:
Zaskoczeni inwestorzy nie zamierzali zbierać pieniędzy. Nie jestem firmą z czasem, gdy wszystko jest szybko interesujące, nie muszę wysiadać z tych samych programistów.
Podczas gdy prosty LM Maximum Likelihood oparty na znakach z 13-znakowym oknem zapewnia:
A kiedy zrobiła wiele solidnych cegieł. Układał je w stosy i tupał nogami. Lekarz zdiagnozował go nietoperzem. Dziewczyna i jej chłopak zaprosili ją.
Oczywiście wybrałem przykład (tak naprawdę większość przykładów ML LM wyglądało lepiej niż jakikolwiek tekst wygenerowany przez RNN, który przeczytałem do tej pory) i ten malutki ML LM został przeszkolony na prostszym korpusie, ale masz pomysł: bezpośrednie prawdopodobieństwo warunkowe generuje lepsze teksty niż znacznie bardziej złożony RNN oparty na znakach.
Oparte na znakach RNN LM mogą naśladować poprawne gramatycznie sekwencje dla szerokiej gamy języków, wymagają większej ukrytej warstwy i są obliczeniowo droższe, podczas gdy oparte na słowach LM RNN trenują szybciej i generują bardziej spójne teksty, a jednak nawet te wygenerowane teksty są dalekie od rzeczywistego sensu .
Miło napisać o modelowaniu języka za pomocą miliarda słów . Poniżej kilka fragmentów:
Modele na poziomie słów mają istotną przewagę nad modelami na poziomie znaków.
Weźmy następującą sekwencję jako przykład (cytat z Roberta A. Heinleina):
Po tokenizacji model na poziomie słów może uznać tę sekwencję za zawierającą 22 tokeny. Z drugiej strony, poziom postaci będzie widział tę sekwencję jako zawierającą 102 żetony. Ta dłuższa sekwencja sprawia, że zadanie modelu znakowego jest trudniejsze niż model słowny, ponieważ musi on uwzględniać zależności między większą liczbą tokenów w większej liczbie kroków. Innym problemem związanym z modelami języka znaków jest to, że muszą oni uczyć się pisowni oprócz składni, semantyki itp. W każdym razie modele języka słowa zwykle mają mniejszy błąd niż modele znaków
Główną zaletą postaci w porównaniu do modeli słownych jest to, że mają bardzo małe słownictwo. Na przykład zestaw danych GBW będzie zawierał około 800 znaków w porównaniu do 800 000 słów (po przycięciu tokenów niskiej częstotliwości). W praktyce oznacza to, że modele postaci będą wymagały mniej pamięci i będą miały szybsze wnioskowanie niż ich odpowiedniki słów. Kolejną zaletą jest to, że nie wymagają tokenyzacji jako etapu wstępnego przetwarzania.
źródło
Moim zdaniem RNN oparte na znakach również będą działały lepiej, ale potrzebują znacznie więcej danych niż modele oparte na słowach i modele oparte na znakach muszą trenować przez znacznie dłuższy okres czasu. Powiedziałbym, że jest to raczej próba i błąd, a także kompromis między dostępnymi danymi a mocą obliczeniową.
źródło