เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ตั้งค่า 8-bit Adam optimizer

คุณพบว่าการเทรนโมเดล Transformer สำหรับการแปลภาษาแบบเรียลไทม์ไม่ได้ผลดีเมื่อใช้ Adafactor จึงตัดสินใจลองใช้ 8-bit Adam optimizer แทน ซึ่งช่วยลดการใช้หน่วยความจำได้ประมาณ 75% เมื่อเทียบกับ Adam

ไลบรารี bitsandbytes ถูก import มาแล้วในชื่อ bnb, TrainingArguments ถูกกำหนดเป็น args และ optimizer_grouped_parameters ได้โหลดไว้ล่วงหน้าแล้ว โปรดทราบว่าแบบฝึกหัดนี้จะแสดงข้อความเตือนเกี่ยวกับ libbitsandbytes_cpu.so ซึ่งสามารถละเว้นได้

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การเทรน AI Model อย่างมีประสิทธิภาพด้วย PyTorch

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้าง 8-bit Adam optimizer โดยใช้คลาส Adam8bit จาก bnb.optim
  • ส่งพารามิเตอร์ beta1 และ beta2 เข้าไปใน 8-bit Adam optimizer
  • ส่งพารามิเตอร์ epsilon เข้าไปใน 8-bit Adam optimizer
  • พิมพ์พารามิเตอร์ input จาก 8-bit Adam optimizer

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Instantiate the 8-bit Adam optimizer
adam_bnb_optim = bnb.optim.____(optimizer_grouped_parameters,
                                # Pass in the beta1 and beta2 parameters
                                betas=(args.____, args.____),
                                # Pass in the epsilon parameter
                                eps=args.____,
                                lr=args.learning_rate)

# Print the input parameters
print(f"beta1 = {args.adam_beta1}")
print(f"beta2 = {args.____}")
print(f"epsilon = {args.____}")
print(f"learning_rate = {args.learning_rate}")
แก้ไขและรันโค้ด