ดำเนินการครั้งแรกใน TensorFlow 1.14 โดย Oapenai:- "OpenAI/GPT-2" Openai GPT-2 Paper:-"โมเดลภาษาเป็นผู้เรียนมัลติทาสก์ที่ไม่ได้รับการดูแล"
** ที่เก็บนี้มีการใช้งานการฝึกอบรมก่อนการฝึกอบรมและการสร้างลำดับใน TensorFlow 2.0, **
ความต้องการ
การตั้งค่า
$ git clone https://github.com/akanyaani/gpt-2-tensorflow2.0
$ cd gpt-2-tensorflow2.0
$ pip install -r requirements.txt
คุณสามารถฝึกอบรมรุ่นก่อนโดยใช้ข้อมูลตัวอย่างที่มีอยู่ในที่เก็บหรือคุณสามารถดาวน์โหลดข้อมูลโดยใช้ gitHub repo https://github.com/eukaryote31/openwebtext
รูปแบบการฝึกอบรมล่วงหน้าเกี่ยวกับข้อมูลตัวอย่างที่มีอยู่ในที่เก็บข้อมูล
$ python pre_process.py --help
Options:
--data-dir TEXT training data path [default: /data/scraped]
--vocab-size INTEGER byte pair vocab size [default: 24512]
--min-seq-len INTEGER minimum sequence length [default: 15]
--max-seq-len INTEGER maximum sequence length [default: 512]
--help Show this message and exit.
>> python pre_process.py
รูปแบบการฝึกอบรมล่วงหน้าบน OpenWebText หรือข้อมูลอื่น ๆ
>> python pre_process.py --data-dir=data_directory --vocab-size=32000
$ python train_gpt2.py --help
Options:
--num-layers INTEGER No. of decoder layers [default: 8]
--embedding-size INTEGER Embedding size [default: 768]
--num-heads INTEGER Number of heads [default: 8]
--dff INTEGER Filter Size [default: 3072]
--max-seq-len INTEGER Seq length [default: 515]
--vocab-size INTEGER Vocab size [default: 24512]
--optimizer TEXT optimizer type [default: adam]
--batch-size INTEGER batch size [default: 8]
--learning-rate FLOAT learning rate [default: 0.001]
--graph-mode BOOLEAN TF run mode [default: False]
--distributed BOOLEAN distributed training [default: False]
--help Show this message and exit.
>> python train_gpt2.py
--num-layers=8
--num-heads=8
--dff=3072
--embedding-size=768
--batch-size=32
--learning-rate=5e-5
--graph-mode=True
การฝึกอบรมแบบกระจายใน GPU หลายตัว
>> python train_gpt2.py
--num-layers=8
--num-heads=8
--dff=3072
--embedding-size=768
--batch-size=32
--learning-rate=5e-5
--distributed=True
--graph-mode=True
เริ่ม Tensorboard ผ่านบรรทัดคำสั่ง
$ tensorboard --logdir /log
หลังจากเตรียมโมเดลของคุณแล้วคุณสามารถสร้างลำดับโดยให้บริบทบางอย่างกับโมเดล เปิดสมุดบันทึกนี้และโหลดโมเดลที่ผ่านการฝึกอบรมและผ่านบริบทเพื่อสร้างแบบจำลองมันจะส่งคืนลำดับที่สร้างขึ้น
$ sequence_generator.ipynb
สิ่งที่ต้องทำ
1. Parallel Preprocessing.
2. Shared weights across layers.
3. Factorized embedding.
4. Fine-Tuning wrapper.
ข้อมูลอ้างอิง:
ผลงาน
ผู้เขียน
ใบอนุญาต
กราฟการคำนวณของรุ่น GPT-2