Bộ Điều Chỉnh Tốc Độ Học Cosine Annealing Kèm Linear Warmup
1. Giai đoạn Warmup (t ≤ Twarmup): Tăng tuyến tính từ 0 lên lrmax để tránh gradient khổng lồ ở các epoch đầu phá hủy các trọng số khởi tạo ngẫu nhiên.
Tiến độ của tôi ở bài này
Điểm được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: optimizer-sgd-momentum-from-scratch.
Nội dung đề bài
Mục tiêu kiến thức
- Hiểu tại sao chiến lược Cosine Annealing kèm Linear Warmup là lựa chọn mặc định của GPT, LLaMA, Chinchilla:
- Giai đoạn Warmup (t ≤ Twarmup): Tăng tuyến tính từ 0 lên lrmax để tránh gradient khổng lồ ở các epoch đầu phá hủy các trọng số khởi tạo ngẫu nhiên.
lr(t) = lrmax · tTwarmup
- Giai đoạn Cosine Decay (Twarmup < t ≤ Tmax): Giảm dần theo đường cong hàm cosin từ lrmax về lrmin:
lr(t) = lrmin + 12 (lrmax - lrmin) ( 1 + cos( π t - TwarmupTmax - Twarmup ) )
- Sau Tmax (t > Tmax): Giữ nguyên lrmin.
Yêu cầu
Xây dựng lớp CosineWarmupLRScheduler:
class CosineWarmupLRScheduler:
def __init__(self, max_lr: float, min_lr: float, warmup_steps: int, total_steps: int):
pass
def get_lr(self, step: int) -> float:
passstep: Bước huấn luyện hiện tại (nguyên ≥ 0).
Input
- Lớp
CosineWarmupLRScheduler(max_lr,min_lr,warmup_steps,total_steps): Khởi tạo đối tượng với các tham số, trọng số hoặc cấu hình tương ứng.
Output
- Các phương thức của
CosineWarmupLRScheduler: Trả về kết quả tính toán hoặc cập nhật trạng thái nội bộ của đối tượng.
Ràng buộc
- Thời gian chạy tối đa: 2000ms.
- Giới hạn bộ nhớ: 256MB.
- Dữ liệu đầu vào hợp lệ theo đúng kiểu dữ liệu và miền giá trị được mô tả.
Ví dụ 1
Input
sched = CosineWarmupLRScheduler(max_lr=1.0, min_lr=0.0, warmup_steps=100, total_steps=1000)Output
<solution.CosineWarmupLRScheduler object at 0x0000021F657B08D0>Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Ví dụ 2
Input
sched = CosineWarmupLRScheduler(max_lr=10.0, min_lr=2.0, warmup_steps=0, total_steps=100)Output
<solution.CosineWarmupLRScheduler object at 0x0000021F6C5EFC50>Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
