Perplexity từ danh sách log-xác suất
Perplexity là thước đo chất lượng mô hình ngôn ngữ: nó là hàm mũ của entropy trung bình
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ủ đề
Kiến thức tiên quyết: python-basics, python-math.
Nội dung đề bài
Mô tả bài toán
Perplexity là thước đo chất lượng mô hình ngôn ngữ: nó là hàm mũ của entropy trung bình mỗi token. Mô hình càng gán xác suất cao cho token đúng thì perplexity càng nhỏ, càng tốt.
Yêu cầu
Viết hàm perplexity(log_probs) nhận danh sách log-xác suất của các token dự đoán và trả về perplexity.
Quy ước nộp bài
Nộp hàm perplexity trong solution.py. Hệ thống gọi hàm trực tiếp, so giá trị với sai số 1e-6; không đọc stdin và không in ra stdout.
Input
- log_probs: danh sách logarit tự nhiên của xác suất từng token (giá trị <= 0).
Output
Một số thực bằng exp(-mean(log_probs)).
Ràng buộc
- Danh sách phải khác rỗng; ném ValueError nếu rỗng.
- Dùng logarit tự nhiên và lấy trung bình trước khi lấy hàm mũ.
Ví dụ 1
Input
perplexity(log_probs=[0.0, 0.0])
Output
1.0
Ví dụ 2
Input
perplexity(log_probs=[-1.0, -1.0])
Output
2.718281828459045
Giải thích
Với log_probs = [-1.0, -1.0], trung bình là -1.0, nên perplexity là exp(1) = 2.718281828459045.
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.
