Cùng một chuỗi, ba cơ chế chọn segmentation

Cùng một chuỗi, ba cơ chế chọn segmentation A data-flow diagram generated by Archify. 01 / Chuỗi cần cắt 02 / Cơ chế quyết định 03 / Kết quả điển hình tokenizer · một chuỗi, nhiều cách cắt · 01 / Chuỗi cần cắt · chưa có đáp án đúng tokenizer một chuỗi, nhiều cách cắt chưa có đáp án đúng BPE · replay merge theo thứ hạng · 02 / Cơ chế quyết định BPE replay merge theo thứ hạng WordPiece · longest match từ trái sang · 02 / Cơ chế quyết định WordPiece longest match từ trái sang Unigram · Viterbi trên lattice · 02 / Cơ chế quyết định Unigram Viterbi trên lattice token + izer · thứ tự merge quyết định · 03 / Kết quả điển hình token + izer thứ tự merge quyết định token + ##izer · ## là mảnh nối trong từ · 03 / Kết quả điển hình token + ##izer ## là mảnh nối trong từ đường xác suất cao nhất · còn sample được cách khác · 03 / Kết quả điển hình đường xác suất cao nhất còn sample được cách khác từ byte trong từ cả lattice cố định cố định sample Legend primary data data store data flow

Hai câu hỏi tách biệt

  • • Tokenizer học vocabulary như thế nào?
  • • Gặp chuỗi mới thì chọn cách cắt nào trong số các cách hợp lệ?
  • • Ba cột trên trả lời câu hỏi thứ hai, không phải câu hỏi thứ nhất

SentencePiece không phải thuật toán thứ tư

  • • Nó là framework, bên trong chạy BPE hoặc Unigram
  • • Điểm riêng là train thẳng từ raw sentence, không cần tách từ trước
  • • Khoảng trắng được giữ lại thành ký hiệu ▁ thay vì bị vứt đi

Vì sao Unigram sample được

  • • Mỗi đường đi qua lattice là một cách tokenize hợp lệ
  • • Model gán xác suất cho từng token nên so sánh được các đường
  • • Sample nhiều cách cắt lúc train chính là subword regularization