Этот репо содержит код Pytorch для внимания к позиции бумаги, а контролируемые данные улучшают заполнение слотов.
Набор данных завещанный : подробности о наборе данных о извлечении отношений TAC можно найти на этом веб -сайте набора данных.
Во -первых, загрузите и раскачиваются векторы перчаток с сайта Стэнфорда, с:
chmod +x download.sh; ./download.sh
Затем подготовьте словарный запас и начальные векторы слов с:
python prepare_vocab.py dataset/tacred dataset/vocab --glove_dir dataset/glove
Это будет писать словарь и векторы слов как матрицу Numpy в DIR dataset/vocab .
Обучить модель внимания к позиции RNN с:
python train.py --data_dir dataset/tacred --vocab_dir dataset/vocab --id 00 --info "Position-aware attention model"
Используйте --topn N чтобы только фиксировать только верховые векторы и слова. Сценарий будет автоматически выполнять предварительную обработку (выброс слова, маскировка сущности и т. Д.).
Обучить модель LSTM с:
python train.py --data_dir dataset/tacred --vocab_dir dataset/vocab --no-attn --id 01 --info "LSTM model"
Контрольные точки модели и журналы будут сохранены на ./saved_models/00 .
Запустите оценку на наборе тестирования с:
python eval.py saved_models/00 --dataset test
Это будет использовать best_model.pt по умолчанию. Использовать --model checkpoint_epoch_10.pt , чтобы указать файл контрольной точки модели. Добавить --out saved_models/out/test1.pkl , чтобы написать вероятность модели в файлы (для ансамбля и т. Д.).
Пожалуйста, смотрите пример Script ensemble.sh .
Вся работа, содержащаяся в этом пакете, лицензирована по лицензии Apache, версия 2.0. См. Включенный файл лицензии.