简体中文
บทช่วยสอน中文教程วิดีโอสาธิต
NeuronBlocks เป็น ชุดเครื่องมือสร้างแบบจำลองการเรียนรู้อย่างลึกซึ้ง NLP ที่ช่วยให้วิศวกร/นักวิจัยสามารถสร้างท่อส่งข้อมูลแบบ end-to-end สำหรับการฝึกอบรมแบบจำลองเครือข่ายประสาทสำหรับงาน NLP เป้าหมายหลักของชุดเครื่องมือนี้คือการลดต้นทุนการพัฒนาสำหรับการสร้างโมเดลเครือข่ายประสาทลึก NLP รวมถึงขั้นตอนการฝึกอบรมและขั้นตอนการอนุมาน
Neuronblocks ประกอบด้วยสององค์ประกอบหลัก: Block Zoo และ Model Zoo
ผู้ใช้สามารถเลือกรุ่นที่มีอยู่ (ไฟล์กำหนดค่า) ใน Model Zoo เพื่อเริ่มการฝึกอบรมแบบจำลองหรือสร้างโมเดลใหม่โดยใช้ประโยชน์จากบล็อกเครือข่ายประสาทใน Block Zoo เช่นเดียวกับการเล่นกับ LEGO
หมายเหตุ: เซลล์ประสาทต้องการ Python 3.6 ขึ้นไป
โคลนโครงการนี้
git clone https://github.com/Microsoft/NeuronBlocksติดตั้งแพ็คเกจ Python ในข้อกำหนด. txt โดยคำสั่งต่อไปนี้
pip install -r requirements.txtติดตั้ง pytorch ( Neuronblocks รองรับ pytorch 0.4.1 ขึ้นไป )
สำหรับ Linux ให้เรียกใช้คำสั่งต่อไปนี้:
pip install " torch>=0.4.1 "สำหรับ Windows เราขอแนะนำให้คุณติดตั้ง pytorch ผ่าน conda โดยทำตามคำแนะนำของ Pytorch
เริ่มต้นด้วยการลองตัวอย่างที่กำหนด รองรับทั้ง Linux/Windows, GPU/CPU ได้รับการสนับสนุน สำหรับ Windows เราขอแนะนำให้คุณใช้ PowerShell แทน CMD
เคล็ดลับ: ในคำแนะนำต่อไปนี้ projectroot หมายถึงไดเรกทอรีรากของโครงการนี้
# train
cd PROJECT_ROOT
python train.py --conf_path=model_zoo/demo/conf.json
# test
python test.py --conf_path=model_zoo/demo/conf.json
# predict
python predict.py --conf_path=model_zoo/demo/conf.jsonสำหรับการทำนายเซลล์ประสาทมีสองโหมด: อินเทอร์แอคทีฟ และ แบทช์
# use the above example
# interactive prediction
python predict.py --conf_path=model_zoo/demo/conf.json --predict_mode= ' interactive ' # use the above example
# batch prediction
python predict.py --conf_path=model_zoo/demo/conf.json --predict_mode= ' batch ' --predict_data_path=dataset/demo/predict.tsvสำหรับรายละเอียดเพิ่มเติมโปรดดูที่ Dutorial.md และเอกสารรหัส
วิศวกรหรือนักวิจัยที่เผชิญกับความท้าทายดังต่อไปนี้เมื่อใช้โมเดลเครือข่ายประสาทเพื่อแก้ไขปัญหา NLP:
ข้อดีของการใช้ประโยชน์จากเซลล์ประสาทสำหรับการฝึกอบรมแบบจำลองเครือข่ายประสาท NLP รวมถึง:
การสร้างแบบจำลอง : สำหรับการสร้างแบบจำลองการสร้างและการปรับพารามิเตอร์ผู้ใช้จะต้องเขียนไฟล์กำหนดค่า JSON อย่างง่ายซึ่งจะช่วยลดความพยายามในการใช้แนวคิดใหม่ได้อย่างมาก
การแชร์โมเดล มันง่ายมากที่จะแบ่งปันรุ่นผ่านไฟล์ JSON แทนที่จะเป็นรหัสที่น่ารังเกียจ สำหรับรุ่นหรืองานที่แตกต่างกันผู้ใช้ของเราจะต้องรักษาฐานซอร์สซอร์สโค้ดส่วนกลางเดียวเท่านั้น
Code Reusability : บล็อกทั่วไปสามารถใช้ร่วมกันได้อย่างง่ายดายในรุ่นหรืองานต่างๆลดงานการเข้ารหัสซ้ำ
ความยืดหยุ่นของแพลตฟอร์ม : เซลล์ประสาทสามารถทำงานได้ทั้งบนเครื่อง Linux และ Windows โดยใช้ CPU และ GPU นอกจากนี้ยังสนับสนุนการฝึกอบรมบนแพลตฟอร์ม GPU เช่น Philly และ Pai
| การอนุมานของ CPU | การอนุมาน GPU เดียว | การอนุมานหลาย GPU | |
| รถไฟ CPU | |||
| รถไฟ GPU เดี่ยว | |||
| รถไฟหลาย GPU |
การสร้างภาพแบบจำลอง : Model Visualizer มีไว้สำหรับการสร้างภาพและกำหนดค่าการตรวจสอบความถูกต้องซึ่งช่วยให้ผู้ใช้สามารถมองเห็นสถาปัตยกรรมแบบจำลองได้อย่างง่ายดายในระหว่างการดีบัก
Extensibility : เซลล์ประสาทสามารถขยายได้ช่วยให้ผู้ใช้สามารถมีส่วนร่วมบล็อกใหม่หรือสนับสนุนโมเดลนวนิยาย (ไฟล์ JSON)
เซลล์ประสาททำงานในรูปแบบเปิด มันถูกออกแบบและพัฒนาโดย กลุ่ม STCA NLP, Microsoft การมีส่วนร่วมจากสถาบันการศึกษาและอุตสาหกรรมก็ยินดีอย่างยิ่ง สำหรับรายละเอียดเพิ่มเติมโปรดดูที่การสนับสนุน
ทุกคนที่คุ้นเคยได้รับการสนับสนุนอย่างสูงให้มีส่วนร่วมในรหัส
Neuronblocks - การสร้างรุ่น NLP DNN ของคุณเช่นเล่นเลโก้ EMNLP 2019 ที่ https://arxiv.org/abs/1904.09535
@article{gong2019neuronblocks,
title={NeuronBlocks--Building Your NLP DNN Models Like Playing Lego},
author={Gong, Ming and Shou, Linjun and Lin, Wutao and Sang, Zhijie and Yan, Quanjia and Yang, Ze, Cheng, Feixiang and Jiang, Daxin},
journal={arXiv preprint arXiv:1904.09535},
year={2019}
}
ลิขสิทธิ์ (c) Microsoft Corporation สงวนลิขสิทธิ์
ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT
หากคุณมีคำถามใด ๆ โปรดติดต่อ [email protected]
หากคุณมี WeChat คุณสามารถเพิ่มบัญชีต่อไปนี้: