WordPiece Tokenization – Phong Cách BERT
BERT dùng WordPiece khác BPE: prefix ## đánh dấu subword tiếp theo (không phải đầu 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ủ đề
Kiến thức tiên quyết: bpe-tokenization-from-scratch.
Nội dung đề bài
Mục tiêu kiến thức
BERT dùng WordPiece khác BPE: prefix ## đánh dấu subword tiếp theo (không phải đầu từ).
WordPiece Encoding (greedy longest-match):
- Với mỗi từ, thử ghép ký tự dài nhất match với vocab
- Phần còn lại: prefix ## + tiếp tục greedy match
- Nếu có ký tự không match: trả về [UNK]
Yêu cầu
def wordpiece_encode(word: str, vocab: set) -> list[str]:
# Returns list of subword tokens with ## prefix
# Returns ['[UNK]'] if any character not in vocab
pass
def wordpiece_decode(tokens: list[str]) -> str:
# Reverse: remove ## prefixes to reconstruct text
passInput
- Hàm wordpiece_encode(word, vocab): 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.
- Hàm wordpiece_decode(tokens): 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 wordpiece_encode: Trả về kết quả kiểu list theo đúng đặc tả kỹ thuật và kích thước quy định.
- Hàm wordpiece_decode: Trả về kết quả kiểu str theo đú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: 5000ms.
- 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
vocab = {'un', '##want', '##ed', 'run', 'want', '##ing', 'running'}
tokens = wordpiece_encode('unwanted', vocab)
Output
['un', '##want', '##ed']
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
vocab = {'hello', '##world'}
tokens = wordpiece_encode('xyz123', vocab)
Output
['[UNK]']
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.
