Pytorch -Implementierung eines grundlegenden Sprachmodells unter Verwendung der Aufmerksamkeit im LSTM -Netzwerk
Dieses Repository enthält Code für ein grundlegendes Sprachmodell, um das nächste Wort mit dem Kontext vorherzusagen. Die verwendete Netzwerkarchitektur ist LSTM -Netzwerk mit Aufmerksamkeit. Die Satzlänge kann variabel sein, und dies wird durch Auffüllung der zusätzlichen Schritte in der Sequenz vorsichtig sein. Das Modell wird mit Text aus dem Buch The Mercer Boys in Woodcrest von Capwell Wyckoff unter http://www.gutenberg.org ausgebildet. Jedes andere eBook oder TXT aus anderen Quellen kann auch zum Training des Netzwerks verwendet werden.
Dieses Repository ist mit Python 2 kompatibel.
nltk , die mit PIP installiert werden können. Laden Sie ein beliebiges eBook unter http://www.gutenberg.org im .txt -Format herunter. Erstellen Sie neue data und speichern Sie die TXT -Datei darin. Jede andere Textquelle kann auch verwendet werden.
Die TXT -Datei ist zunächst vorverarbeitet, um einige unerwünschte Token zu entfernen, filtern selten verwendete Wörter und in Wörterbuchformat umgewandelt. Zusätzlich sollen die Einbettungen des Handschuhs geladen werden.
Verwenden Sie zum Erstellen des Wörterbuchs die Skript preprocess_data/create_dictionary.py
python create_dictionary.py --data_path path_to_txt_file --dict_file dict_file_name.json --min_occ minimum_occurance_required
Laden Sie die Originalhandschuhdatei herunter und führen Sie das Skript preprocess_data/create_gloves.py aus, um das Handschuhwörterbuch zu erstellen.
wget http://nlp.stanford.edu/data/glove.42B.300d.zip -P data/
unzip data/glove.42B.300d.zip -d data/
python preprocess_data/create_gloves.py --data_path path_to_txt_file --glove_in data/glove.42B.300d.txt --glove_out data/glove_dict.pkl
Wenn es ein Problem beim Herunterladen mit dem Skript gibt, kann die Handschuhdatei hier heruntergeladen werden.
Führen Sie das folgende Skript aus, um das Modell zu trainieren
python main.py --gpu gpu_id_to_use --use_cuda True --data_path path_to_txt_file --glove_path data/glove_dict.pkl --dict_path path_to_dict_file
Die anderen zu verwendenden Parameter sind in main.py angegeben. Verweisen Sie darauf, um ein besseres Verständnis zu erhalten.
Die gespeicherten Modelle sind hier verfügbar.