English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

khách
1 / ?
trở lại bài học

Từ Ngữ Sang Số

Một Người Dịch Tại Biên Giới

Một mô hình ngôn ngữ không bao giờ thấy văn bản. Nó thấy các số nguyên. Một tokenizer nằm tại điểm kiểm soát biên giới: từ ngữ con người chảy vào, ID số nguyên chảy ra. Quá trình sinh ngược lại dòng chảy: ID số nguyên quay lại, tokenizer render văn bản.


Ba công việc:


1. Phân đoạn. Cắt một chuỗi thành các mảnh (token).

2. Ánh xạ. Gán cho mỗi mảnh một ID số nguyên duy nhất từ từ vựng cố định.

3. Đảo ngược. Tái tạo văn bản từ các ID tại thời điểm sinh.


Tại sao dùng mảnh, không phải từ nguyên vẹn

Từ vựng từ nguyên vẹn sẽ bùng nổ. Tiếng Anh thôi đã có hàng trăm nghìn dạng. Tệ hơn, mô hình huấn luyện trên từ nguyên vẹn không thể xử lý lỗi chính tả, tên mới, hay cụm từ ngoại ngữ: bất kỳ từ chưa thấy nào cũng ánh xạ vào một ô <UNK> duy nhất.


Phân mảnh subword khắc phục điều đó. Một từ vựng gồm các mảnh phổ biến có thể ghép thành bất kỳ từ nào, bao gồm cả những từ chưa từng thấy trong quá trình huấn luyện. Hai chiến lược thống trị: BPE (byte pair encoding) & phân đoạn phân phối. ANDREA chọn chiến lược thứ hai.


Harris vs BPE

Tại sao Subword

Một tokenizer từ nguyên vẹn thất bại với từ hiếm `proporian` (một từ do ANDREA-12M tạo ra ở bước 43,100). Nêu hai vấn đề khác biệt mà tokenizer subword (BPE hoặc Harris) tránh được mà tokenizer từ nguyên vẹn không thể.

Nơi Mà Một Từ Bị Ngắt

Zellig Harris, 1955

Một nhà ngôn ngữ học tên là Zellig Harris nhận thấy điều gì đó. Bên trong một từ, số lượng các chữ cái khác biệt theo sau một chuỗi chữ cái nhất định thay đổi mạnh mẽ. Sau un bạn có thể tìm thấy hàng chục chữ cái: a, b, c, d, e ... Sau unbel chỉ có một tập hợp nhỏ theo sau: i (rồi ievable).


Sự tăng đột biến trong sự đa dạng của các chữ cái kế tiếp đánh dấu một ranh giới morpheme có khả năng. Sau un (một tiền tố), sự đa dạng tăng vọt vì nhiều gốc từ có thể theo sau. Bên trong một gốc từ như believ, sự đa dạng giữ ở mức thấp vì các chữ cái dự đoán lẫn nhau. Tại sự chuyển tiếp giữa các morpheme, sự đa dạng lại tăng vọt.


Từ Các Đỉnh Đa Dạng Đến Các Phân Đoạn

Chạy bộ phát hiện đó trên một tập huấn luyện. Mỗi từ đóng góp bằng chứng thống kê. Một tokenizer thu thập các đoạn tần suất cao lặp lại tại các ranh giới hình dạng morpheme: un, re, pre, believ, know, ing, able, ly, tion, ed.


Không có nhãn. Không có nhà ngôn ngữ học gắn thẻ morpheme bằng tay. Một thống kê về sự đồng xuất hiện của chữ cái làm công việc đó.


Harris so với BPE


Thuộc tínhHarrisBPE
Tiêu chí biên giớiĐỉnh đa dạng người kế thừaTần suất cặp
Hình thái ngôn ngữCăn chỉnh với morpheme (tiền tố, gốc, hậu tố)Cặp byte thường xuyên
Ví dụ: unbelievablyun + believ + abl + yunb + eli + eva + bly
Tổng quát hóaMạnh (gốc + tiếp tố tái kết hợp)Yếu hơn (cặp không cần căn chỉnh)

Cả hai đều tạo ra các mảnh từ con. Các mảnh Harris có xu hướng căn chỉnh với những gì nhà ngôn ngữ học gọi là morpheme: đơn vị ý nghĩa nhỏ nhất. Các mảnh BPE tối ưu hóa nén: cặp byte thường xuyên nhất được hợp nhất, bất kể ý nghĩa.

Phân đoạn một từ

Áp dụng lý luận kiểu Harris cho từ `replayed`. Đề xuất ba phân đoạn morpheme & biện minh mỗi cái trong một cụm từ (vai trò của nó: tiền tố, gốc, hay hậu tố).

Ba Tấm Vocab

Cấu tạo của một Từ vựng ANDREA

Tokenization Harris tạo ra từ vựng với ba tấm:


Slab 1: 256 byte cơ bản. Mọi byte UTF-8 có thể (0x00 đến 0xFF) đều có ID token riêng. Lưới an toàn: bất kỳ ký tự nào trong corpus, tokenizer đều có thể biểu diễn dưới dạng chuỗi byte. Không bao giờ kích hoạt <UNK>.


Slab 2: N phân đoạn morpheme. Các mảnh phổ biến được phát hiện qua phân tích phân bố. ANDREA-12M huấn luyện N = 4096; ANDREA-120M huấn luyện N = 8192. Mỗi phân đoạn nén một chuỗi byte đa byte lặp lại thành một token duy nhất.


Slab 3: 1 token BOS. Một dấu hiệu đặc biệt đặt ở đầu mọi chuỗi huấn luyện. Cho phép mô hình học 'vị trí này không có quá khứ'. ANDREA-12M & ANDREA-120M đều dành chính xác một ID cho BOS.


Kích thước Từ vựng


Mô hìnhBytes cơ sởPhân đoạn morpheme (N)BOSKích thước từ vựng
ANDREA-12M256409614353
ANDREA-120M256819218449

256 + N + 1 = kích thước từ vựng. Đơn giản. Có thể tái tạo. Mở.


Tại sao Byte Slab lại quan trọng

Một phương án dự phòng byte đảm bảo độ bao phủ. Nếu một mô hình gặp 日本語 & tokenizer không có morpheme tiếng Nhật, các byte UTF-8 riêng lẻ sẽ truyền chuỗi qua. Mô hình được huấn luyện trên byte; chất lượng trên các kịch bản hiếm phụ thuộc vào dung lượng & tiếp xúc, nhưng không đầu vào nào làm tokenizer sập.

Tính toán một Từ vựng

ANDREA-480M (mô hình thứ ba trong một họ, hoạt động tương lai 24 sẽ đề cập) dự định huấn luyện tokenizer Harris với N = 16,384 segments trên một corpus lớn hơn. Tính kích thước từ vựng của nó. Hiển thị công thức. Sau đó giải thích trong một câu tại sao byte slab vẫn giữ ở 256 ngay cả khi N tăng.

Bắt đầu Chuỗi

Tại sao một chuỗi cần một dấu hiệu

Một transformer chỉ có bộ giải mã dự đoán token tiếp theo từ ngữ cảnh trước đó. Vị trí 0 không có ngữ cảnh trước. Không có dấu hiệu, vị trí 0 nằm trong một lỗ logic: mô hình không có gì để chú ý.


BOS giải quyết lỗ hổng. Một token đặc biệt duy nhất (ID = 256 + N) nằm ở đầu mọi chuỗi trong quá trình huấn luyện. Mô hình học:


- 'Khi bạn thấy BOS, dự đoán một token đầu tiên có khả năng của văn bản tự nhiên.'

- 'Khi bạn thấy BOS theo sau bởi một từ, từ đó là sự bắt đầu của chuỗi, không phải sự tiếp nối.'


Một Token, Nhiều Công Dụng


BOS xuất hiện ở:


- Thời gian huấn luyện: được thêm vào đầu mỗi đoạn văn bản đưa vào mô hình.

- Thời gian suy luận: được thêm vào đầu prompt để mô hình nhận tín hiệu 'bắt đầu mới' quen thuộc.

- Đánh dấu ranh giới: trong một số pipeline, là dấu phân cách giữa các tài liệu nối liền.


ANDREA dành chính xác một ID cho BOS. Không có EOS, không có PAD, không có token đặc biệt nào ngoài những gì mà từ vựng cần. Sự đơn giản vẫn là giá trị cốt lõi của permacomputer: mỗi token phải xứng đáng với vị trí của nó.


Hoạt động 3 Tiếp tục

Hoạt động 3 (grow_a_language_model_tokenizer_diet) đề cập đến những gì xảy ra khi N quá lớn hoặc corpus tokenizer khác biệt so với corpus huấn luyện. ANDREA-12M lãng phí 63.6% từ vựng của nó; ANDREA-120M đã sửa chữa điều đó. Hãy đọc tiếp.

Những Đánh đổi Chỉ BOS

Suy ngẫm về một lựa chọn thiết kế mà ANDREA thực hiện: chỉ một token đặc biệt (BOS), không có EOS, không có PAD. Nêu tên một đánh đổi mà điều này tạo ra. Đánh đổi có thể là lợi ích (engine đơn giản hơn, ít slot bị lãng phí) hoặc ràng buộc (một số thủ thuật huấn luyện cần token bổ sung). Một câu là đủ.