Một training sample đi qua một training step

Một training sample đi qua một training step A sequence diagram generated by Archify. cắt 8.192 token từ token stream, gắn EOS ở biên input_ids — chỉ là chỉ mục vào embedding table vector đầu vào cho từng vị trí logits trên toàn bộ vocabulary tại mỗi vị trí so với labels đã dịch một bước gradient cập nhật weights Chuẩn bị sample Forward Loss và backward Data loader · đọc theo index, không đọc cả file · Sequence participant Data loader đọc theo index, không đọc cả file Training sample · input_ids · labels · mask · Sequence participant Training sample input_ids · labels · mask Embedding · E[id] → vector d chiều · Sequence participant Embedding E[id] → vector d chiều Transformer · causal mask + biên document · Sequence participant Transformer causal mask + biên document Cross-entropy · có loss mask theo vị trí · Sequence participant Cross-entropy có loss mask theo vị trí Legend request return default message

Supervision đến từ chính văn bản

  • • Không ai gán nhãn cho pretraining corpus
  • • Input là x[0 : T-1], target là x[1 : T] — lệch nhau đúng một bước
  • • Vì vậy mỗi token vừa là đầu vào vừa là đáp án cho vị trí trước nó

labels = input_ids không có nghĩa là không shift

  • • Nhiều framework truyền labels gần như trùng input_ids
  • • Việc dịch logits và labels xảy ra bên trong hàm tính loss
  • • Model không học dự đoán chính token đang đứng ở vị trí đó

Ba loại mask khác nhau trong cùng một sample

  • • Causal mask: vị trí t chỉ được nhìn các vị trí ≤ t
  • • Document-boundary mask: chặn attention đi qua ranh giới document
  • • Loss mask: chọn vị trí nào được tính vào loss, ví dụ bỏ PAD