รหัสและโมเดลจากกระดาษ AAAI 2021 ของเรา
[2020/02/05] สนับสนุนการเรียกใช้โมเดลบนฐานข้อมูลและการสืบค้นของตัวเอง ตรวจสอบสมุดบันทึก
เมื่อเร็ว ๆ นี้มีความสนใจอย่างมากในการเรียนรู้บริบทการเรียนรู้สำหรับงาน NLP ต่างๆโดยใช้ประโยชน์จาก Corpora ข้อความขนาดใหญ่เพื่อฝึกอบรมแบบจำลองภาษาประสาทขนาดใหญ่ที่มีวัตถุประสงค์การเรียนรู้ที่เป็นผู้ดูแลตนเองเช่นโมเดลภาษาที่สวมหน้ากาก (MLM) อย่างไรก็ตามจากการศึกษานำร่องเราสังเกตสามประเด็นของแบบจำลองภาษาที่มีวัตถุประสงค์ทั่วไปที่มีอยู่เมื่อพวกเขาถูกนำไปใช้กับตัวแยกวิเคราะห์ความหมายแบบข้อความถึง SQL: ล้มเหลวในการตรวจจับคอลัมน์กล่าวถึงในคำพูดล้มเหลวในการอนุมานคอลัมน์กล่าวถึงค่าของเซลล์ เพื่อลดปัญหาเหล่านี้เรานำเสนอกรอบการฝึกอบรมก่อนการฝึกอบรมรุ่นก่อนการฝึกอบรมก่อนการผลิต (GAP) ซึ่งร่วมกันเรียนรู้การเป็นตัวแทนของคำพูดภาษาธรรมชาติและแผนการตารางโดยใช้ประโยชน์จากแบบจำลองการสร้างเพื่อสร้างข้อมูลก่อนการฝึกอบรม โมเดล GAP ได้รับการฝึกฝนเกี่ยวกับคู่คำพูด 2 เมตรและคำพูด 30K Soute-Schema-SQL Triples ซึ่งคำพูดที่ผลิตโดยแบบจำลองการกำเนิด จากผลการทดลองตัวแยกวิเคราะห์ความหมายของระบบประสาทที่ใช้ประโยชน์จากโมเดลช่องว่างเป็นตัวเข้ารหัสการเป็นตัวแทนได้รับผลลัพธ์ที่ทันสมัยทั้งในแมงมุมและเกณฑ์การวัดเกณฑ์มาตรฐาน
conda create --name gap-text2sql python=3.7
source activate gap-text2sql
conda install pytorch=1.5 cudatoolkit=10.2 -c pytorch
pip install -r requirements.txt
python -c " import nltk; nltk.download('stopwords'); nltk.download('punkt') "pip install gdown
cd rat-sql-gap
gdown --id 1_AckYkinAnhqmRQtGsQgUKAnTHxxX5J0
unzip spider.zip
bash data/spider/generate.sh ./spidermkdir data/spider-bart
cp ./spider/tables.json data/spider-bart/
cp ./spider/train_spider.json data/spider-bart/
cp ./spider/train_others.json data/spider-bart/
cp ./spider/dev.json data/spider-bart/
ln -s $( pwd ) /spider/database data/spider-bart/databasemkdir third_party
wget http://nlp.stanford.edu/software/stanford-corenlp-full-2018-10-05.zip
unzip stanford-corenlp-full-2018-10-05.zip -d third_party/ pushd third_party/stanford-corenlp-full-2018-10-05
nohup java -mx4g -cp " * " edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 8999 -timeout 15000 > server.log &
popdmkdir -p logdir/bart_run_1/bs = 12 , lr = 1.0e-04 , bert_lr = 1.0e-05 , end_lr = 0e0 , att = 1/
mkdir ie_dirs
aws s3 cp s3://gap-text2sql-public/checkpoint-artifacts/gap-finetuned-checkpoint logdir/bart_run_1/bs = 12 , lr = 1.0e-04 , bert_lr = 1.0e-05 , end_lr = 0e0 , att = 1/model_checkpoint-00041000
mkdir -p pretrained_checkpoint
aws s3 cp s3://gap-text2sql-public/checkpoint-artifacts/pretrained-checkpoint pretrained_checkpoint/pytorch_model.binหรือคุณสามารถดาวน์โหลดได้ที่นี่หากคุณไม่มี Awscli: Gap-Finetuned-Checkpoint และ Pretrained-Checkpoint
curl https://gap-text2sql-public.s3.amazonaws.com/checkpoint-artifacts/gap-finetuned-checkpoint -o logdir/bart_run_1/bs = 12 , lr = 1.0e-04 , bert_lr = 1.0e-05 , end_lr = 0e0 , att = 1/model_checkpoint-00041000
curl https://gap-text2sql-public.s3.amazonaws.com/checkpoint-artifacts/pretrained-checkpoint -o pretrained_checkpoint/pytorch_model.binpython run.py preprocess experiments/spider-configs/gap-run.jsonnetpython run.py eval experiments/spider-configs/gap-run.jsonnet จากนั้นคุณจะได้รับผลการอนุมานและผลการประเมินผลในเส้นทาง: ie_dirs/bart_run_1_true_1-step41000.infer และ ie_dirs/bart_run_1_true_1-step41000.eval
python run.py train experiments/spider-configs/gap-run.jsonnetดูข้อมูลเพิ่มเติม
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต Apache-2.0