Implementação de Pytorch de um modelo de linguagem básica usando atenção na rede LSTM
Este repositório contém código para um modelo de idioma básico para prever a próxima palavra, dada o contexto. A arquitetura de rede usada é a rede LSTM com atenção. O comprimento da frase pode ser variável e isso é atendido preenchendo as etapas adicionais na sequência. O modelo é treinado usando o texto do livro The Mercer Boys at Woodcrest por Capwell Wyckoff disponível em http://www.gutenberg.org. Qualquer outro e -book ou txt de outras fontes também pode ser usado para treinar a rede.
Este repositório é compatível com o Python 2.
nltk , que podem ser instalados usando o PIP. Faça o download de qualquer ebook disponível em http://www.gutenberg.org no formato .txt . Crie um novo data do diretório e armazene o arquivo TXT nele. Qualquer outra fonte de texto também pode ser usada.
O arquivo txt é primeiro pré -processado para remover alguns tokens indesejados, o filtro raramente usou palavras e convertido em formato de dicionário. Além disso, as incorporações da luva também devem ser carregadas.
Para criar o dicionário, use o script 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
Para criar o dicionário de luvas, faça o download do arquivo de luva original e execute o script 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
Se houver um problema no download usando o script, o arquivo da luva poderá ser baixado aqui.
Para treinar o modelo, execute o seguinte script
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
Os outros parâmetros a serem usados são especificados em main.py Consulte -o para obter uma melhor compreensão.
Os modelos salvos estão disponíveis aqui.