ai-417Đọc toàn bộ đề miễn phí

Khoảng chỉ số lô (batch) cho tập dữ liệu

Khi huấn luyện, ta chia tập dữ liệu thành các lô. Mỗi lô là một khoảng chỉ số nửa mở

AICơ bản10 phút

Tiến độ của tôi ở bài này

Điểm và code bạn nộp đượ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ủ đề

batchingdata-loaderentry-ramp

Kiến thức tiên quyết: python-basics, python-lists.

Nội dung đề bài

Mô tả bài toán

Khi huấn luyện, ta chia tập dữ liệu thành các lô. Mỗi lô là một khoảng chỉ số nửa mở [start, end), và lô cuối có thể nhỏ hơn nếu n không chia hết cho kích thước lô.

Yêu cầu

Viết hàm batch_ranges(n, batch_size) trả về danh sách các khoảng chỉ số [start, end) bao phủ đủ n mẫu, theo thứ tự tăng dần.

Quy ước nộp bài

Nộp hàm batch_ranges trong solution.py. Hệ thống gọi hàm trực tiếp và so giá trị với sai số 1e-6; không đọc stdin và không in ra stdout.

Input

  • n: số mẫu trong tập dữ liệu, số nguyên dương.
  • batch_size: số mẫu mỗi lô, số nguyên dương.

Output

Danh sách các khoảng [start, end) với end không bao gồm, sao cho end - start <= batch_size và khoảng cuối kết thúc đúng tại n.

Ràng buộc

  • n > 0 và batch_size > 0; nếu không thì ném ValueError.
  • Trả về danh sách (không trả mảng NumPy) để hệ thống so trực tiếp.

Ví dụ 1

Input

batch_ranges(n=10, batch_size=4)

Output

[[0, 4], [4, 8], [8, 10]]

Ví dụ 2

Input

batch_ranges(n=5, batch_size=5)

Output

[[0, 5]]

Giải thích

Với n = 10 và batch_size = 4, kết quả là [[0, 4], [4, 8], [8, 10]]: hai lô đầy và một lô cuối chỉ có 2 mẫu.

3 cấp độ gợi ýMở dần khi bạn thật sự cần hỗ trợ.
Phân tích lời giảiGiải thích hướng tư duy và thuật toán.
Code tham khảoDùng để đối chiếu sau khi tự làm.

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.

Nhóm Zalo