Como baixar um projeto do GitHub e abrir em um Jupyter Notebook
Por instruções eu oriento o que está escrito no arquivo README.md desse repo do GitHub. Veja, os arquivos neste repo são arquivos .py e não arquivos .ipynb. A maneira correta de executá-los é executá-los em um prompt de comando se você estiver em uma máquina Windows ou em um terminal se você estiver no Linux/Mac.
>ul><Step 0:Clone o repo
Clone o repo que você ligou, ou seja, CommonSenseMultiHopQA. Para clonar o repo você deve ter o git instalado no seu sistema. Se você não tem'tê-lo obtê-lo a partir daqui. Ao trabalhar no Github é necessário saber como usar o git. Se você don't então siga este tutorial.
- Passo 1:
Primeiro, para configurar a estrutura de diretórios, execute http://setup.sh para criar os diretórios apropriados.
.sh arquivos são arquivos bash que contêm scripts bash. Execute-os usando o comando ./setup.sh. Aqui está um tutorial sobre como executá-los. Running this command will automatically create the necessary directory (folder structure).
- Step 2:
- cd raw_data
- git clone https://github.com/deepmind/narrativeqa.git
The first command changes your directory to raw_data. Estes comandos do Linux (cd também está disponível no windows) você pode aprender sobre eles aqui. O segundo comando clona a narrativaqa na pasta raw_data.
- Step 3:
Para este passo, você deve saber como executar arquivos .py a partir do cmd/terminal. Veja este vídeo para isso.
Precisamos construir conjuntos de dados processados com informações de senso comum extraídas. Para NarrativeQA, nós executamos:
python src/config.py
--mode build_dataset
--data_dir raw_data/narrativeqa
--load_commonsense
--commonsense_file data/cn_relations_orig.txt
--processed_dataset_dataet_data_train/narrative_qa_train.jsonl
--processed_dataet_valid data/narrative_qa_valid.jsonl
--processed_dataet_dataet_test data/narrative_qa_test.jsonl
Para construir conjuntos de dados processados com o senso comum extraído para o WikiHop, executamos:
python src/config.py
--mode build_wikihop_dataset
--data_dir raw_data/qangaroo_v1.1
--load_commonsense
--commonsense_file data/cn_relations_orig.txt
--processed_dataet_dataet_train data/wikihop_train.jsonl
--processed_dataet_valid data/wikihop_valid.jsonl
-ambos os comandos longos estão rodando o arquivo config.py dentro da pasta src. Os --something are aurguments passed to the python command. O primeiro :
python src/config.py
--mode build_dataset
--data_dir raw_data/narrativeqa
--load_commonsense
--commonsense_file data/cn_relations_orig.txt
--processed_dataset_train data/narrative_qa_train.jsonl
--processed_dataset_dataet_valid data/narrative_qa_valid.jsonl
--processed_dataset_dataet_test data/narrative_qa_test.jsonl
extracts commonsense for narrativeqa and the second:
python src/config.py
--mode build_wikihop_dataset
--data_dir raw_data/qangaroo_v1.1
--load_commonsense
--commonsense_file data/cn_relations_orig.txt
--processed_dataset_dataet_train data/wikihop_train.jsonl
--processed_dataset_valid data/wikihop_valid.jsonl
para treinar modelos para NarrativeQA, run:
p>python src/config.py--version {commonsense_nqa, baseline_nqa}
--model_name >>br>--processed_dataset_datain data/narrative_qa_train.jsonl
--processed_dataset_dataet_valid data/narrative_qa_valid.jsonl
--batch_size 24
--max_target_iterations 15
--dropout_rate 0.2
para treinar modelos para o WikiHop, run:
>p>python src/config.py--version {commonsense_wh, baseline_wh}
--model_name >br>--elmo_options_file lm_data/wh/elmo_2x4096_512_2048cnn_2xhighway_options.json
--elmo_ficheiro_de_peso lm_data/wh/elmo_2x4096_512_2048cnn_2xhighway_weights.hdf5
--elmo_token_embedding_file lm_data/wh/elmo_token_embeddings.hdf5
--elmo_vocab_file lm_data/wh/wikihop_vocab.txt
--processed_dataet_dataet_train data/wikihop_train.jsonl
--processed_dataet_valid data/wikihop_valid.jsonl
--multiple_choice
--max_target_iterations 4
--max_iterations 8
--batch_size 16
--max_target_iterations 4
--max_iterations 8
--max_context_iterations 1300
--dropout_rate 0.2
Evaluation
Para avaliar NarrativeQA, precisamos primeiro gerar respostas oficiais no conjunto de testes. Para isso, execute:
python src/config.py
--mode generate_answers
--processed_dataset_valid data/narrative_qa_valid.jsonl
--processed_dataset_test data/narrative_qa_test.jsonl
Alternativamente, se você realmente quer executar estes comandos no caderno jupyter então tudo o que você precisa fazer é adicionar um ! antes de todos eles e executá-los em células diferentes.