repo นี้มีรหัส pytorch สำหรับกราฟกราฟกระดาษมากกว่าต้นไม้พึ่งพาการตัดแต่งกิ่งช่วยปรับปรุงการสกัดความสัมพันธ์
บทความ/รหัสนี้แนะนำเครือข่าย Neural Neural กราฟ (GCN) ผ่านต้นไม้พึ่งพาการตัดแต่งสำหรับงานสกัดความสัมพันธ์ เทคนิคการตัดแต่งกิ่งต้นไม้พิเศษที่เรียกว่าการตัดแต่งกิ่งเป็นศูนย์กลางนั้นได้รับการแนะนำเพื่อกำจัดข้อมูลที่ไม่เกี่ยวข้องออกจากต้นไม้ในขณะที่ยังคงรักษาข้อมูลที่เกี่ยวข้องไว้มากที่สุด เมื่อเปรียบเทียบกับแบบจำลองลำดับเช่นโมเดลที่ใช้ LSTM ต่างๆรุ่น GCN นี้ใช้ประโยชน์จากโครงสร้างการพึ่งพาเพื่อเชื่อมคำระยะไกลดังนั้นจึงปรับปรุงประสิทธิภาพสำหรับความสัมพันธ์ระยะยาว เมื่อเปรียบเทียบกับโมเดลแบบเรียกซ้ำก่อนหน้าเช่น Treelstm โมเดล GCN นี้จะได้ประสิทธิภาพที่ดีขึ้น
ดูภาพรวมด้านล่างของสถาปัตยกรรมโมเดล:

รหัสกำหนดให้คุณสามารถเข้าถึงชุดข้อมูล TACRED (ต้องการใบอนุญาต LDC) ชุดข้อมูล TACRED มีกำหนดการเปิดตัวสาธารณะผ่าน LDC ในเดือนธันวาคม 2018 สำหรับการเข้าถึงข้อมูลนี้ก่อนกำหนดโปรดติดต่อเราที่ yuhao.zhang ~at~ stanford.edu เมื่อคุณมีข้อมูล tacred โปรดใส่ไฟล์ JSON ภายใต้ dataset/tacred เพื่อความสมบูรณ์เราจะรวมไฟล์ข้อมูลตัวอย่างจากชุดข้อมูล tacred ใน repo นี้
ก่อนอื่นให้ดาวน์โหลดและคลายตัวเวกเตอร์ถุงมือจากเว็บไซต์ Stanford NLP Group ด้วย:
chmod +x download.sh; ./download.sh
จากนั้นเตรียมคำศัพท์และเวกเตอร์คำเริ่มต้นด้วย:
python prepare_vocab.py dataset/tacred dataset/vocab --glove_dir dataset/glove
สิ่งนี้จะเขียนคำศัพท์และเวกเตอร์คำเป็นเมทริกซ์ Numpy ลงใน dataset/vocab DIR
ในการฝึกอบรมกราฟ Neural Network (GCN) Run: Run:
bash train_gcn.sh 0
จุดตรวจและบันทึกของรุ่นจะถูกบันทึกไปยัง ./saved_models/00 saved_models/00
ในการฝึกอบรมโมเดล GCN (C-GCN) ตามบริบทให้เรียกใช้:
bash train_cgcn.sh 1
จุดตรวจสอบและบันทึกจะถูกบันทึกไปยัง ./saved_models/01 saved_models/01
สำหรับรายละเอียดเกี่ยวกับการใช้พารามิเตอร์อื่น ๆ เช่นระยะการตัดแต่งกิ่ง K โปรดดูที่ train.py
ในการเรียกใช้การประเมินผลในชุดทดสอบ Run:
python eval.py saved_models/00 --dataset test
สิ่งนี้จะใช้ไฟล์ best_model.pt โดยค่าเริ่มต้น ใช้ --model checkpoint_epoch_10.pt เพื่อระบุไฟล์จุดตรวจสอบรุ่น
โหลดโมเดลที่ผ่านการฝึกฝนใหม่แล้วใช้งานได้: Run:
python train.py --load --model_file saved_models/01/best_model.pt --optim sgd --lr 0.001
กระดาษยังรวมถึงการเปรียบเทียบกับโมเดล LSTM (PA-LSTM) ที่รับความสนใจจากตำแหน่งสำหรับการสกัดด้านความสัมพันธ์ ในการทำซ้ำผลลัพธ์ที่สอดคล้องกันโปรดดูที่ repo นี้
@inproceedings{zhang2018graph,
author = {Zhang, Yuhao and Qi, Peng and Manning, Christopher D.},
booktitle = {Empirical Methods in Natural Language Processing (EMNLP)},
title = {Graph Convolution over Pruned Dependency Trees Improves Relation Extraction},
url = {https://nlp.stanford.edu/pubs/zhang2018graph.pdf},
year = {2018}
}
งานทั้งหมดที่มีอยู่ในแพ็คเกจนี้ได้รับอนุญาตภายใต้ใบอนุญาต Apache เวอร์ชัน 2.0 ดูไฟล์ใบอนุญาตที่รวมอยู่