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中指定。请参考以更好的理解。
保存的型号可在此处找到。