***** ใหม่ 20 พฤศจิกายน 2018: มีการสาธิตเว็บออนไลน์ *****
เราเปิดตัวตัวอย่างออนไลน์ (พร้อมกับน้ำหนักที่ได้รับการฝึกอบรมมาก่อน) เพื่อให้คุณสามารถเล่นกับโมเดลได้ รหัสสำหรับเว็บอินเตอร์เฟสยังมีอยู่ใน demo สาธิต
ในการดาวน์โหลดรุ่นที่ผ่านการฝึกอบรมมาก่อนโปรดติดตั้ง Git LFS และทำการ git lfs pull น้ำหนักของโมเดลจะถูกบันทึกไว้ในโฟลเดอร์ model_dumps
วิธีการหลายภารกิจแบบลำดับชั้นสำหรับการเรียนรู้การฝังตัวจากงานความหมาย
Victor Sanh, Thomas Wolf, Sebastian Ruder
ยอมรับที่ AAAI 2019

HMTL เป็นรูปแบบการเรียนรู้แบบหลายภารกิจแบบลำดับชั้นซึ่งรวมชุดของสี่งานความหมายที่เลือกอย่างระมัดระวัง (กล่าวคือ recoginition เอนทิตี, การตรวจจับเอนทิตีกล่าวถึงการสกัดความสัมพันธ์และความละเอียด coreference) แบบจำลองได้รับผลลัพธ์ที่ล้ำสมัยในการรับรู้เอนทิตีที่มีชื่อ เมื่อใช้ Senteval เราแสดงให้เห็นว่าเมื่อเราย้ายจากด้านล่างไปยังชั้นบนสุดของโมเดลโมเดลมักจะเรียนรู้การเป็นตัวแทนความหมายที่ซับซ้อนมากขึ้น
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับผลลัพธ์โปรดดูเอกสารของเรา
เราเปิดตัวรหัสสำหรับ การฝึกอบรม การปรับแต่ง และ ประเมิน HMTL เราหวังว่ารหัสนี้จะมีประโยชน์สำหรับการสร้างโมเดลหลายงานของคุณเอง (ลำดับชั้นหรือไม่) รหัสถูกเขียนใน Python และขับเคลื่อนโดย Pytorch
การพึ่งพาหลักคือ:
รหัสทำงานกับ Python 3.6 เวอร์ชันที่เสถียรของการพึ่งพาอยู่ในรายการ requirements.txt . txt
คุณสามารถตั้งค่าสภาพแวดล้อมการทำงานได้อย่างรวดเร็วโดยเรียกสคริปต์ ./script/machine_setup.sh มันติดตั้ง Python 3.6 สร้างสภาพแวดล้อมเสมือนจริงที่สะอาดและติดตั้งการพึ่งพาที่ต้องการทั้งหมด (แสดงไว้ใน requirements.txt ) โปรดปรับสคริปต์ขึ้นอยู่กับความต้องการของคุณ
เราใช้การใช้งานของเราในห้องสมุด Allennlp สำหรับการแนะนำห้องสมุดนี้คุณควรตรวจสอบบทเรียนเหล่านี้
การทดลองถูกกำหนดไว้ในไฟล์กำหนดค่า JSON (ดู configs/*.json สำหรับตัวอย่าง) ไฟล์การกำหนดค่าส่วนใหญ่จะอธิบายชุดข้อมูลเพื่อโหลดโมเดลเพื่อสร้างพร้อมกับพารามิเตอร์ไฮเปอร์ทั้งหมดของรุ่น
เมื่อคุณตั้งค่าไฟล์การกำหนดค่าของคุณ (และคลาสที่กำหนดเองที่กำหนดเอง DatasetReaders หากจำเป็น) คุณสามารถเปิดการฝึกอบรมด้วยคำสั่งและอาร์กิวเมนต์ต่อไปนี้:
python train.py --config_file_path configs/hmtl_coref_conll.json --serialization_dir my_first_trainingเมื่อการฝึกอบรมเริ่มขึ้นแล้วคุณสามารถติดตามการฝึกอบรมในเทอร์มินัลหรือเปิดบอร์ด (โปรดตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง tensorboard และ TensorFlow ขึ้นอยู่กับก่อน)::
tensorboard --logdir my_first_training/log เราใช้ Senteval เพื่อประเมินคุณสมบัติทางภาษาที่เรียนรู้โดยแบบจำลอง hmtl_senteval.py ให้ตัวอย่างของวิธีที่เราสามารถสร้างอินเทอร์เฟซระหว่าง SentEval และ HMTL มันประเมินคุณสมบัติทางภาษาที่เรียนรู้โดยทุกเลเยอร์ของ hiearchy (การฝังคำและการเข้ารหัสตามคำที่ใช้ร่วมกัน)
ในการดาวน์โหลด embeddings ที่ผ่านการฝึกอบรมมาก่อนที่เราใช้ใน HMTL คุณสามารถเรียกใช้สคริปต์ ./script/data_setup.sh
เราไม่ได้แนบชุดข้อมูลที่ใช้ในการฝึกอบรม HMTL ด้วยเหตุผลการออกใบอนุญาต แต่เราขอเชิญชวนให้คุณรวบรวมด้วยตัวเอง: Ontonotes 5.0, Conll2003 และ ACE2005 ไฟล์การกำหนดค่าคาดว่าชุดข้อมูลจะถูกวางไว้ใน data/ โฟลเดอร์
โปรดพิจารณาอ้างถึงบทความต่อไปนี้หากคุณพบว่าที่เก็บนี้มีประโยชน์
@article{sanh2018hmtl,
title={A Hierarchical Multi-task Approach for Learning Embeddings from Semantic Tasks},
author={Sanh, Victor and Wolf, Thomas and Ruder, Sebastian},
journal={arXiv preprint arXiv:1811.06031},
year={2018}
}