Bắt đầu ngayBắt đầu miễn phí

Thiết lập bộ tối ưu hóa Adam 8-bit

Bạn nhận thấy việc huấn luyện mô hình Transformer cho dịch ngôn ngữ thời gian thực không học hiệu quả với Adafactor. Là một lựa chọn khác, bạn quyết định thử bộ tối ưu hóa Adam 8-bit để giảm khoảng 75% bộ nhớ so với Adam.

Thư viện bitsandbytes đã được import dưới tên bnb, TrainingArguments đã được khai báo là args, và optimizer_grouped_parameters đã được nạp sẵn. Lưu ý bài tập sẽ in ra cảnh báo về libbitsandbytes_cpu.so, nhưng bạn có thể bỏ qua cảnh báo này để hoàn thành bài tập.

Bài tập này là một phần của khóa học

Huấn luyện Mô hình AI Hiệu quả với PyTorch

Xem khóa học

Hướng dẫn bài tập

  • Khởi tạo bộ tối ưu hóa Adam 8-bit bằng lớp Adam8bit từ bnb.optim.
  • Truyền các tham số beta1 và beta2 vào bộ tối ưu hóa Adam 8-bit.
  • Truyền tham số epsilon vào bộ tối ưu hóa Adam 8-bit.
  • In ra các tham số đầu vào từ bộ tối ưu hóa Adam 8-bit.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# 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}")
Chỉnh sửa và Chạy Mã