Mụ hỡnh BERT

Một phần của tài liệu Nghiên cứu, phát triển một số phương pháp tóm tắt văn bản sử dụng kĩ thuật học sâu (Trang 57 - 60)

2.2.3.1. Giới thiệu

Mụ hỡnh BERT [102] là mụ hỡnh biểu diễn mó húa hai chiều dựa trờn

Transformer, duợc thiết kế cho lớp bài toỏn biểu diễn ngụn ngữ trong NLP của Google. Mụ hỡnh BERT duợc phỏt triển dể huấn luyện cỏc vộc to biểu diễn van bản thụng qua ngữ cảnh 2 chiều. Vộc to biểu diễn sinh ra từ mụ hỡnh BERT duợc kết

hợp với cỏc lớp bổ sung dó tạo ra cỏc mụ hỡnh hiệu quả cho cỏc nhiệm vụ trong xử

lý ngụn ngữ tự nhiờn nhu: Đua diểm dỏnh giỏ hiểu ngụn ngữ chung (GLUE - General Language Understanding Evaluation) dạt 80,5% (tang 7,7%), bộ dữ liệu hỏi dỏp SQuAD v2.0 (SQuAD - Stanford Question Answering Dataset) với diểm F1 (F1 - score) dạt 83,1% (tang 5,1%),...v...v... Mụ hỡnh BERT khắc phục duợc cỏc nhuợc diểm của cỏc phuong phỏp truớc dõy bằng cỏch tạo cỏc biểu diễn theo ngữ

cảnh dựa trờn cỏc từ phớa truớc và phớa sau dể tạo ra một mụ hỡnh ngụn ngữ với ngữ nghia phong phỳ hon.

Mụ hỡnh BERT duợc huấn luyện truớc trờn một kho ngữ liệu van bản lớn khụng gỏn nhón là sự kết hợp của BooksCorpus (800 triệu từ) [103] và Wikipedia tiếng Anh (2.500 triệu từ), tổng cộng ~16GB van bản khụng nộn và duợc tinh chỉnh bằng cỏch sử dụng dữ liệu duợc gỏn nhón của cỏc nhiệm vụ phớa sau.

2.2.3.2. Kiến trỳc BERT

Hỡnh 2.17. Kiến trỳc mụ hỡnh BERT [102]

BERT sử dụng Transformer [97] duợc biểu diễn trong Hỡnh 2.17 (với: Ei là biểu diễn cỏc mó húa từ (word embedding), Trm là cỏc vộc to biểu diễn trung gian cho mỗi từ tại mỗi tầng Transformer tuong ứng, Ti là vộc to biểu diễn cho mỗi từ dầu ra cuối cựng). Trong kiến trỳc của BERT, L là số lớp Transformer, H là kớch thuớc của

[]CLS x x , , ,...,1 2 x SEP y y M ,[] , , ,..., ,1 2 x EOSN []

lớp ẩn và A là số dầu ở lớp chỳ ý (heads attention). Cú 2 kớch thuớc mụ hỡnh BERT là: - BERTBASE (L = 12, H = 768, A = 12, với 110 triệu tham số (110M)).

- BERTLARGE (L = 24, H = 1.024, A = 16, với 340 triệu tham số (340M)). Mỗi lớp thực hiện tớnh toỏn multi-head attention trờn biểu diễn từ của lớp truớc

dể tạo ra một biểu diễn trung gian mới. Tất cả cỏc biểu diễn trung gian này cú cựng kớch thuớc.

2.2.3.3. Biểu diễn dầu vào

Hỡnh 2.18. Biểu diễn dầu vào của mụ hỡnh BERT [102]

Đầu vào (Input): Cú thể là một cõu hoặc một cặp 2 cõu ghộp nối thành mộtchuỗi cỏc từ (token). Hai cõu này duợc biểu diễn là một chuỗi dầu vào duy nhất với cỏc token dặc biệt duợc thờm vào dể phõn biệt chỳng nhu sau:

trong dú: x1, x2,…, xN; y1, y2,..., yM là 2 cõu cú M từ và N từ tuong ứng; CLS, SEP

là cỏc token duợc thờm vào dầu cõu, cuối cõu thứ nhất tuong ứng; EOS là token thờm vào kết thỳc chuỗi và thỏa món diều kiện M + N < T (với T là dộ dài lớn nhất

của chuỗi (512 token)). Một vớ dụ minh họa biểu diễn dầu vào của BERT nhu trong Hỡnh 2.18 ở trờn.

Mó húa từ vựng (Token Embeddings): Vai trũ của lớp này là chuyển dổi cỏc từ thành vộc to biểu diễn cú kớch thuớc cố dịnh là 768 chiều.

Mó húa phõn doạn (Segment Embeddings): BERT cú thể lấy cỏc cặp cõu làmdầu vào cho cỏc tỏc vụ nờn nú học cỏc mó húa khỏc nhau cho cõu thứ nhất và cõu thứ hai dể mụ hỡnh phõn biệt chỳng. Vớ dụ: cỏc tokens dỏnh dấu “EA” thuộc về cõu A và tuong tự

“EB” thuộc về cõu B.

Mó húa vị trớ của từ (Position Embeddings): BERT học và sử dụng mó húa vị

trớ dể chỉ ra vị trớ của cỏc từ trong cõu. Mó húa vị trớ (position embedding) duợc thờm vào dể khắc phục hạn chế của Transformer.

Với mỗi từ, vộc to biểu diễn dầu vào duợc tớnh bằng tổng của 3 thành phần: mó húa từ, mó húa loại cõu và mó húa vị trớ của từ trong cõu tuong ứng.

BERT sử dụng cỏc mó húa từ WordPiece [104] với bộ từ vựng cú 30.000 từ và sử dụng ký hiệu “##” làm dấu phõn tỏch dể lấy từ gốc (vớ dụ: từ “playing” duợc

2.2.3.4. Biểu diễn dầu ra

Với mỗi từ thứ i ( i 1 N=) của chuỗi dầu vào, dầu ra là vộc to , Ti biểu diễn cho từ dầu vào tuong ứng.

2.2.3.5. BERT duợc huấn luyện truớc

BERT duợc huấn luyện truớc (pre-trained BERT) với 2 nhiệm vụ dự doỏn khụng giỏm sỏt là: Mụ hỡnh dự doỏn từ bị che (Masked LM - Masked Language Model) và dự doỏn cõu tiếp theo (NSP - Next Sentence Prediction). Khi huấn luyện mụ hỡnh BERT, Masked LM và NSP duợc huấn luyện cựng nhau dể giảm thiểu giỏ trị hàm lỗi.

Mụ hỡnh dự doỏn từ bị che (Masked LM): Một tập cỏc token ngẫu nhiờn trong chuỗi dầu vào duợc thay thế bằng token dặc biệt gọi là token bị che [MASK].

Nhiệm vụ của Masked LM là dự doỏn cỏc token bị che dựa trờn ngữ cảnh của cỏc từ khụng bị che trong chuỗi. BERT chọn 15% token trong mỗi chuỗi dầu vào dể thay thế bằng token [MASK], 80% cỏc tokens dó chọn này duợc thay thế bằng [MASK], 10% giữ nguyờn và 10% duợc thay thế bằng cỏc token trong từ vựng. Dự doỏn cỏc từ dầu ra yờu cầu:

- Thờm một lớp phõn loại trờn dầu ra của bộ mó húa.

- Nhõn cỏc vộc to dầu ra với ma trận mó húa, chuyển chỳng thành kớch thuớc từ vựng.

- Tớnh xỏc suất của mỗi từ trong từ vựng với hàm softmax.

Dự doỏn cõu tiếp theo (NSP): Nhiệm vụ này sẽ tạo ra hai nhón “Position” và

“Negative”. Mụ hỡnh nhận cỏc cặp cõu làm dầu vào và học cỏch dự doỏn nếu cõu thứ hai trong cặp là cõu tiếp theo trong van bản nguồn thỡ nhón “Position” duợc tạo ra. Nhón “Negative” duợc tạo ra nếu cõu thứ hai là một cõu ngẫu nhiờn từ kho ngữ liệu van bản.

Vớ dụ: Giả sử cần huấn luyện truớc mụ hỡnh BERT sử dụng kho ngữ liệu van bản cú 100.000 cõu. Nhu vậy, ta cú 50.000 mẫu huấn luyện (mỗi mẫu là cặp 2 cõu) làm dữ liệu huấn luyện.

- Với 50% cặp cõu này, cõu thứ 2 là cõu tiếp theo của cõu thứ nhất trong van bản, cỏc nhón duợc tạo ra là “Position”.

- Với 50% cặp cõu cũn lại, cõu thứ 2 là một cõu ngẫu nhiờn từ bộ dữ liệu, cỏc nhón này ký hiệu là “Negative”.

2.2.3.6. Tinh chỉnh BERT

Tựy thuộc vào hiệm vụ phớa sau của cỏc bài toỏn, BERT sẽ duợc tinh chỉnh

(fine-tuning) với cỏc bộ dữ liệu huấn luyện của cỏc nhiệm vụ phớa sau dể tạo ra mụ hỡnh ngữ nghia phự hợp hon cho cỏc nhiệm vụ dú. Mụ hỡnh sử dụng hai chiến luợc tinh chỉnh:

(i) Đúng bang một vài lớp truớc dú dể dúng bang cỏc trọng số dó học duợc từ mụ hỡnh duợc huấn luyện truớc (chỉ cập nhật trọng số ở một số lớp cao hon) dể tang tốc dộ huấn luyện của mụ hỡnh;

1 https:

//commoncrawl.org/2016/10/newsdataset-available 2 https://Skylion007.github.io/OpenWebTextCorpus

Một phần của tài liệu Nghiên cứu, phát triển một số phương pháp tóm tắt văn bản sử dụng kĩ thuật học sâu (Trang 57 - 60)