LanguageModel using Attention
1.0.0
使用LSTM網絡中的關注的基本語言模型的Pytorch實現
該存儲庫包含一個基本語言模型的代碼,以預測給定上下文的下一個單詞。所使用的網絡架構是LSTM網絡引起的關注。句子長度可以是可變的,並且通過填充順序中的其他步驟來照顧。該模型是使用Capwell Wyckoff的《伍德克雷斯特的Mercer Boys 》中的文字進行培訓的,網址為http://www.gutenberg.org。來自其他來源的任何其他電子書或TXT也可以用於培訓網絡。
該存儲庫與Python 2兼容。
nltk 。在.txt格式中下載http://www.gutenberg.org的任何電子書。創建一個新的目錄data並將TXT文件存儲在其中。也可以使用任何其他文本源。
首先對TXT文件進行預處理,以刪除一些不需要的令牌,很少使用的單詞並轉換為字典格式。此外,還將加載手套的嵌入。
要創建字典,請使用腳本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
要創建手套字典,請下載原始手套文件並運行腳本preprocess_data/create_gloves.py
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
如果使用腳本下載存在問題,則可以從此處下載手套文件。
要訓練模型,請運行以下腳本
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
要使用的其他參數在main.py中指定。請參考以更好的理解。
保存的型號可在此處找到。