Cơ chế lọc Top-K và che mặt nạ Logits trong LLM (Top-K Sampling)
Trong quá trình sinh văn bản của LLM (như GPT, LLaMA), để ngăn mô hình chọn phải các từ vựng vô nghĩa ở đuôi phân phối (tail of distribution), kỹ thuật Top-K Sampling chỉ giữ lại K…
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: softmax-temperature-sampling.
Nội dung đề bài
Mô tả bài toán
Trong quá trình sinh văn bản của LLM (như GPT, LLaMA), để ngăn mô hình chọn phải các từ vựng vô nghĩa ở đuôi phân phối (tail of distribution), kỹ thuật Top-K Sampling chỉ giữ lại K token có logit cao nhất và gán toàn bộ các token còn lại bằng -∞: z'i = zi & nếu zi ≥ z(K)
-∞ & ngược lại Khi đó sau khi đi qua hàm Softmax, xác suất của các token bị loại sẽ bằng đúng 0 (e-∞ = 0).
Hãy viết hàm top_k_filtering(logits: np.ndarray, top_k: int, filter_value: float = -float('inf')) -> np.ndarray:
logits: mảng 1D hoặc 2D NumPy float64 (Batch, Vocab) chứa điểm số logit.top_k: số nguyên dương 1 ≤ K ≤ V. Nếu K ≥ V, giữ nguyên toàn bộ logits.filter_value: giá trị thay thế (mặc định -∞).- Trả về mảng NumPy cùng kích thước với các token ngoài top-k bị thay bằng
filter_value.
Input
- Hàm
top_k_filtering(logits,top_k,filter_value): Các tham số đầu vào chứa dữ liệu Tensor/mảng NumPy hoặc giá trị siêu tham số tương ứng.
Output
- Hàm
top_k_filtering: Trả về kết quả kiểunp.ndarraytheo đúng đặc tả kỹ thuật và kích thước quy định.
Ràng buộc
- Thời gian chạy tối đa: 6000ms.
- Giới hạn bộ nhớ: 512MB.
- 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
logits = np.array([2.0, 5.0, 1.0, 4.0, 3.0])
filtered = top_k_filtering(logits, top_k=2)Output
[-inf, 5., -inf, 4., -inf]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
logits = np.array([1.0, 2.0, 3.0])
filtered = top_k_filtering(logits, top_k=10)Output
[1., 2., 3.]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.
