Folgendes habe ich kürzlich gelernt.
Wenn wir über RNNs zur Textgenerierung sprechen, sprechen wir natürlich über RNN-Sprachmodelle. Bei Fragen zu wort- / zeichenbasierten RNNs für die Texterzeugung fragen wir nach wort- / zeichenbasierten RNN-Sprachmodellen (LM).
Wortbasierte LMs zeigen eine höhere Genauigkeit und geringeren Rechenaufwand als char-basierte LMs.
Dieser Leistungsabfall ist unwahrscheinlich, da das Modell auf Zeichenebene nur schwer längeres Kurzzeitgedächtnis erfassen kann, da auch die wiederkehrenden Netzwerke mit längerem Kurzzeitgedächtnis (Longer Short Term Memory, LSTM) besser mit wortbasierter Eingabe funktionieren.
Dies liegt daran, dass char-basierte RNN-LMs eine viel größere verborgene Schicht benötigen, um langfristige Abhängigkeiten erfolgreich zu modellieren. Dies bedeutet höhere Rechenkosten.
Deshalb können wir das sagen
Einer der grundlegenden Unterschiede zwischen den Modellen auf Wort- und Zeichenebene besteht in der Anzahl der Parameter, auf die das RNN während des Trainings und Tests zugreifen muss. Je kleiner die Eingabe- und Ausgabeschicht von RNN ist, desto größer muss die vollständig verbundene verborgene Schicht sein, was das Training des Modells teuer macht.
Allerdings char-basierte RNN LMs bessere Modell Sprachen mit einer reichen Morphologie wie Fertig stellen , Türkisch, Russisch usw. Mit wortbasierten RNN LMs solchen Sprachen zu modellieren sind schwierig , wenn überhaupt und wird nicht empfohlen.
Die obige Analyse ist besonders dann sinnvoll, wenn Sie sich den Ausgabetext ansehen, der von char-basierten RNNs generiert wird :
Die überraschten Anleger wollten kein Geld sammeln. Ich bin nicht die Firma mit der Zeit, da sind alle schnell interessant, müssen nicht gleich Programmierer aussteigen.
Während einfaches char-basiertes Maximum Likelihood LM mit einem 13-stelligen Fenster Folgendes liefert:
Und als sie viele feste Steine machte. Er stapelte sie in Stapeln und stampfte mit den Füßen auf. Der Arzt diagnostizierte eine Fledermaus. Das Mädchen und ihr Freund fragten sie aus.
Natürlich habe ich das Beispiel ausgewählt (tatsächlich sahen die meisten ML-LM-Beispiele besser aus als alle bisher von RNN generierten Texte), und dieses kleine ML-LM wurde auf einem einfacheren Korpus trainiert, aber man kommt auf die Idee: Eine einfache bedingte Wahrscheinlichkeit wird besser generiert Texte als weitaus komplexere char-basierte RNN.
Char-basierte RNN LMs kann grammatisch korrekte Sequenzen für eine Vielzahl von Sprachen imitieren, erfordern größere verborgene Schicht und rechnerisch teurer , während wortbasierte RNN LMs schneller trainieren und erzeugt mehr zusammenhängende Texte und doch auch diese generierten Texte sind weit von den tatsächlichen Sinn machen .
Es gibt einen schönen Artikel über die Sprachmodellierung von einer Milliarde Wörtern . Nachfolgend einige Auszüge:
Modelle auf Wortebene haben einen wichtigen Vorteil gegenüber Modellen auf Zeichenebene.
Nehmen Sie die folgende Sequenz als Beispiel (ein Zitat von Robert A. Heinlein):
Nach der Tokenisierung sieht das Wortmodell diese Sequenz möglicherweise als 22 Token enthaltend an. Auf der Zeichenebene wird diese Sequenz dagegen als 102 Token enthaltend angezeigt. Diese längere Sequenz macht die Aufgabe des Zeichenmodells schwieriger als das Wortmodell, da Abhängigkeiten zwischen mehr Token über mehr Zeitschritte berücksichtigt werden müssen. Ein weiteres Problem bei Zeichensprachenmodellen besteht darin, dass sie zusätzlich zu Syntax, Semantik usw. Rechtschreibung lernen müssen. In jedem Fall weisen Wortsprachenmodelle in der Regel einen geringeren Fehler auf als Zeichenmodelle
Der Hauptvorteil von Charakteren gegenüber wörtlichen Sprachmodellen besteht darin, dass sie ein sehr kleines Vokabular haben. Beispielsweise enthält der GBW-Datensatz ungefähr 800 Zeichen im Vergleich zu 800.000 Wörtern (nach dem Beschneiden von Token mit niedriger Frequenz). In der Praxis bedeutet dies, dass Zeichenmodelle weniger Speicher benötigen und eine schnellere Inferenz haben als ihre Wort-Gegenstücke. Ein weiterer Vorteil ist, dass sie keine Tokenisierung als Vorverarbeitungsschritt erfordern.
quelle
Meiner Meinung nach werden die zeichenbasierten RNNs auch eine bessere Leistung erbringen, benötigen jedoch viel mehr Daten als die wortbasierten Modelle und zeichenbasierten Modelle, die für einen viel längeren Zeitraum trainiert werden müssen. Ich würde sagen, es ist eher ein Versuch und Irrtum sowie ein Kompromiss zwischen verfügbaren Daten und Rechenleistung.
quelle