Connect with us

Sự trỗi dậy của NLP với Mô hình Transformer | Phân tích toàn diện về T5, BERT và GPT

Trí tuệ nhân tạo

Sự trỗi dậy của NLP với Mô hình Transformer | Phân tích toàn diện về T5, BERT và GPT

mm
Guide on NLP

Xử lý Ngôn ngữ Tự nhiên (NLP) đã trải qua một số đột phá có tác động nhất trong những năm gần đây, chủ yếu nhờ vào kiến trúc transformer. Những đột phá này không chỉ nâng cao khả năng của máy móc để hiểu và tạo ra ngôn ngữ của con người mà còn định nghĩa lại phong cảnh của nhiều ứng dụng, từ công cụ tìm kiếm đến trí tuệ đối thoại.

Để đánh giá cao tầm quan trọng của transformer, chúng ta phải nhìn lại những người tiền nhiệm và những khối xây dựng đã đặt nền móng cho kiến trúc cách mạng này.

Các kỹ thuật NLP sớm: Những nền tảng trước Transformer

Đánh dấu từ: Từ One-Hot đến Word2Vec

Trong các phương pháp NLP truyền thống, việc đại diện cho từ thường là буквальное và thiếu bất kỳ hình thức nào của sự hiểu biết ngữ nghĩa hoặc ngữ pháp.

Đánh dấu một nóng là một quá trình mà các biến thể danh mục được chuyển đổi thành một vectơ nhị phân đại diện nơi chỉ một bit là “nóng” (đặt thành 1) trong khi tất cả các bit khác là “lạnh” (đặt thành 0). Trong ngữ cảnh của NLP, mỗi từ trong từ vựng được đại diện bởi vectơ một nóng nơi mỗi vectơ có kích thước của từ vựng, và mỗi từ được đại diện bởi một vectơ với tất cả 0 và một 1 tại chỉ mục tương ứng với từ đó trong danh sách từ vựng.

Ví dụ về Đánh dấu một nóng

Giả sử chúng ta có một từ vựng nhỏ với chỉ năm từ: [“king”, “queen”, “man”, “woman”, “child”]. Vectơ đánh dấu một nóng cho mỗi từ sẽ trông như thế này:

  • “king” -> [1, 0, 0, 0, 0]
  • “queen” -> [0, 1, 0, 0, 0]
  • “man” -> [0, 0, 1, 0, 0]
  • “woman” -> [0, 0, 0, 1, 0]
  • “child” -> [0, 0, 0, 0, 1]

Đại diện Toán học

Nếu chúng ta biểu thị V là kích thước của từ vựng và wi là vectơ đại diện một nóng của từ thứ i trong từ vựng, đại diện toán học của wi sẽ là:

wi=[0,0,,1,,0,0] where the i-th position is 1 and all other positions are 0.where the i-th position is 1 and all other positions are 0.

Hạn chế chính của đánh dấu một nóng là nó coi mỗi từ như một thực thể cô lập, không có quan hệ với các từ khác. Điều này dẫn đến vectơ thưa thớt và có chiều cao không gian không nắm bắt được bất kỳ thông tin ngữ nghĩa hoặc ngữ pháp nào về các từ.

Sự giới thiệu của các từ nhúng, đáng chú ý nhất là Word2Vec, là một khoảnh khắc quan trọng trong NLP. Phát triển bởi một nhóm tại Google do Tomas Mikolov dẫn đầu vào năm 2013, Word2Vec đại diện cho từ trong một không gian vectơ dày đặc, nắm bắt mối quan hệ từ ngữ nghĩa và ngữ pháp dựa trên ngữ cảnh trong các tập dữ liệu văn bản lớn.

Không giống như đánh dấu một nóng, Word2Vec tạo ra vectơ dày đặc, thường có hàng trăm chiều. Các từ xuất hiện trong các ngữ cảnh tương tự, chẳng hạn như “king” và “queen”, sẽ có vectơ đại diện gần nhau hơn trong không gian vectơ.

Để minh họa, hãy giả sử chúng ta đã đào tạo một mô hình Word2Vec và hiện đại diện cho từ trong một không gian giả định 3 chiều. Các từ nhúng (thường là hơn 3D nhưng giảm ở đây để đơn giản hóa) có thể trông như thế này:

  • “king” -> [0.2, 0.1, 0.9]
  • “queen” -> [0.21, 0.13, 0.85]
  • “man” -> [0.4, 0.3, 0.2]
  • “woman” -> [0.41, 0.33, 0.27]
  • “child” -> [0.5, 0.5, 0.1]

Mặc dù những con số này là hư cấu, nhưng chúng minh họa cách các từ tương tự có vectơ tương tự.

Đại diện Toán học

Nếu chúng ta biểu thị từ nhúng Word2Vec của một từ là vw, và không gian nhúng của chúng ta có d chiều, thì vw có thể được biểu thị là:

vw=[v1,v2,,vd] where each vi is a floating-point number representing a feature of the word in the embedding space.

Mối quan hệ Ngữ nghĩa

Word2Vec thậm chí có thể nắm bắt các mối quan hệ phức tạp, chẳng hạn như tương tự. Ví dụ, mối quan hệ nổi tiếng được Word2Vec nắm bắt là:

vector(“king”) – vector(“man”) + vector(“woman”)≈vector(“queen”)vector(“king”) – vector(“man”) + vector(“woman”)vector(“queen”)

Điều này có thể xảy ra vì Word2Vec điều chỉnh vectơ từ trong quá trình đào tạo để các từ có cùng ngữ cảnh trong tập dữ liệu được đặt gần nhau trong không gian vectơ.

Word2Vec sử dụng hai kiến trúc chính để tạo ra một đại diện phân tán của từ: Continuous Bag-of-Words (CBOW) và Skip-Gram. CBOW dự đoán từ mục tiêu từ các từ ngữ cảnh xung quanh, trong khi Skip-Gram làm ngược lại, dự đoán các từ ngữ cảnh từ một từ mục tiêu. Điều này cho phép máy móc bắt đầu hiểu cách sử dụng và ý nghĩa của từ một cách tinh tế hơn.

Mô hình chuỗi: RNNs và LSTMs

Khi lĩnh vực tiến bộ, sự chú ý đã chuyển sang việc hiểu các chuỗi văn bản, điều này rất quan trọng cho các nhiệm vụ như dịch máy, tóm tắt văn bản và phân tích cảm xúc. Mạng nơ-ron hồi quy (RNNs) đã trở thành nền tảng cho các ứng dụng này do khả năng xử lý dữ liệu tuần tự bằng cách duy trì một hình thức bộ nhớ.

Tuy nhiên, RNNs không phải là không có giới hạn. Chúng gặp khó khăn với các phụ thuộc dài hạn do vấn đề gradient biến mất, nơi thông tin bị mất qua các chuỗi dài, khiến việc học các mối quan hệ giữa các sự kiện xa trở nên khó khăn.

Mạng nơ-ron nhớ ngắn hạn dài (LSTMs), được giới thiệu bởi Sepp Hochreiter và Jürgen Schmidhuber vào năm 1997, đã giải quyết vấn đề này với một kiến trúc tinh vi hơn. LSTMs có các cổng kiểm soát dòng chảy của thông tin: cổng nhập, cổng quên và cổng xuất. Các cổng này quyết định thông tin nào được lưu trữ, cập nhật hoặc loại bỏ, cho phép mạng học các mối quan hệ dài hạn và cải thiện đáng kể hiệu suất trên nhiều nhiệm vụ NLP.

Kiến trúc Transformer

Phong cảnh của NLP đã trải qua một sự thay đổi đáng kể với sự giới thiệu của mô hình transformer trong bài báo nổi tiếng “Attention is All You Need” bởi Vaswani et al. vào năm 2017. Kiến trúc transformer rời khỏi quá trình xử lý tuần tự của RNNs và LSTMs và thay vào đó sử dụng một cơ chế gọi là ‘tự chú ý’ để đánh giá tầm quan trọng của các phần khác nhau của dữ liệu đầu vào.

Ý tưởng cốt lõi của transformer là nó có thể xử lý toàn bộ dữ liệu đầu vào cùng một lúc, thay vì tuần tự. Điều này cho phép nhiều song song hóa hơn và, như một kết quả, tăng đáng kể tốc độ đào tạo. Cơ chế tự chú ý cho phép mô hình tập trung vào các phần khác nhau của văn bản khi nó xử lý, điều này rất quan trọng để hiểu ngữ cảnh và mối quan hệ giữa các từ, bất kể vị trí của chúng trong văn bản.

Encoder và Decoder trong Transformers:

Trong mô hình Transformer ban đầu, như được mô tả trong bài báo “Attention is All You Need” bởi Vaswani et al., kiến trúc được chia thành hai phần chính: encoder và decoder. Cả hai phần đều được tạo thành từ các lớp có cấu trúc chung nhưng phục vụ các mục đích khác nhau.

Encoder:

  • Vai trò: Vai trò của encoder là xử lý dữ liệu đầu vào và tạo ra một đại diện nắm bắt mối quan hệ giữa các phần tử (như từ trong một câu). Phần này của transformer không tạo ra bất kỳ nội dung mới nào; nó chỉ biến đổi đầu vào thành một trạng thái mà decoder có thể sử dụng.
  • Chức năng: Mỗi lớp encoder có cơ chế tự chú ý và mạng nơ-ron cấp tiến. Cơ chế tự chú ý cho phép mỗi vị trí trong encoder chú ý đến tất cả các vị trí trong lớp trước của encoder—do đó, nó có thể học ngữ cảnh xung quanh mỗi từ.
  • Đại diện ngữ cảnh: Đầu ra của encoder là một loạt vectơ đại diện cho chuỗi đầu vào trong không gian chiều cao. Các vectơ này thường được gọi là đại diện ngữ cảnh vì chúng mã hóa không chỉ các từ riêng lẻ mà còn cả ngữ cảnh của chúng trong câu.

Decoder:

  • Vai trò: Vai trò của decoder là tạo ra dữ liệu đầu ra tuần tự, một phần tại một thời điểm, dựa trên dữ liệu đầu vào nó nhận từ encoder và những gì nó đã tạo ra cho đến nay. Nó được thiết kế cho các nhiệm vụ như tạo văn bản, nơi thứ tự tạo ra là rất quan trọng.
  • Chức năng: Các lớp decoder cũng chứa cơ chế tự chú ý, nhưng chúng được che để ngăn chặn các vị trí chú ý đến các vị trí sau. Điều này đảm bảo rằng dự đoán cho một vị trí cụ thể chỉ phụ thuộc vào đầu ra đã biết tại các vị trí trước đó. Ngoài ra, các lớp decoder bao gồm một cơ chế chú ý thứ hai để chú ý đến đầu ra của encoder, tích hợp ngữ cảnh từ đầu vào vào quá trình tạo.
  • Khả năng tạo tuần tự: Điều này đề cập đến khả năng của decoder tạo ra một chuỗi một phần tại một thời điểm, xây dựng trên những gì nó đã tạo ra. Ví dụ, khi tạo văn bản, decoder dự đoán từ tiếp theo dựa trên ngữ cảnh được cung cấp bởi encoder và chuỗi từ nó đã tạo ra.

Mỗi một trong các lớp con trong encoder và decoder đều rất quan trọng cho khả năng của mô hình để xử lý các nhiệm vụ NLP phức tạp. Cơ chế chú ý đa đầu, đặc biệt, cho phép mô hình tập trung chọn lọc vào các phần khác nhau của chuỗi, cung cấp một sự hiểu biết phong phú về ngữ cảnh.

Các mô hình phổ biến dựa trên Transformer

Sau thành công ban đầu của mô hình transformer, đã có một sự bùng nổ của các mô hình mới được xây dựng trên kiến trúc này, mỗi mô hình có những đổi mới và tối ưu hóa riêng cho các nhiệm vụ khác nhau:

BERT (Bidirectional Encoder Representations from Transformers): Được giới thiệu bởi Google vào năm 2018, BERT đã cách mạng hóa cách tích hợp thông tin ngữ cảnh vào các đại diện ngôn ngữ. Bằng cách đào tạo trước trên một tập dữ liệu văn bản lớn với mô hình ngôn ngữ bị che và dự đoán câu tiếp theo, BERT nắm bắt ngữ cảnh song hướng phong phú và đã đạt được kết quả tốt nhất trên nhiều nhiệm vụ NLP.

BERT

BERT

T5 (Text-to-Text Transfer Transformer): Được giới thiệu bởi Google vào năm 2020, T5 định hình lại tất cả các nhiệm vụ NLP như một vấn đề văn bản-sang-văn bản, sử dụng một định dạng văn bản thống nhất. Cách tiếp cận này đơn giản hóa quá trình áp dụng mô hình cho nhiều nhiệm vụ, bao gồm dịch, tóm tắt và trả lời câu hỏi.

t5 Architecture

T5 Architecture

GPT (Generative Pre-trained Transformer): Được phát triển bởi OpenAI, dòng mô hình GPT bắt đầu từ GPT-1 và đạt đến GPT-4 vào năm 2023. Những mô hình này được đào tạo trước bằng học không giám sát trên lượng lớn dữ liệu văn bản và tinh chỉnh cho các nhiệm vụ cụ thể. Khả năng tạo ra văn bản liên贯 và phù hợp ngữ cảnh của chúng đã khiến chúng trở nên rất có ảnh hưởng trong cả ứng dụng AI học thuật và thương mại.

GPT

GPT Architecture

Dưới đây là một so sánh chi tiết hơn về các mô hình T5, BERT và GPT trên nhiều khía cạnh:

1. Token hóa và Từ vựng

  • BERT: Sử dụng token hóa WordPiece với kích thước từ vựng khoảng 30.000 token.
  • GPT: Sử dụng mã hóa Byte Pair (BPE) với kích thước từ vựng lớn (ví dụ, GPT-3 có kích thước từ vựng 175.000).
  • T5: Sử dụng token hóa SentencePiece, coi văn bản như văn bản thô và không yêu cầu từ đã được phân đoạn.

2. Mục tiêu đào tạo trước

  • BERT: Mô hình ngôn ngữ bị che và dự đoán câu tiếp theo.
  • GPT: Mô hình ngôn ngữ nhân quả, nơi mỗi token dự đoán token tiếp theo trong chuỗi.
  • T5: Sử dụng mục tiêu làm mất mát, nơi các khoảng văn bản ngẫu nhiên được thay thế bằng một token sentinel và mô hình học cách tái tạo văn bản gốc.

3. Đại diện Đầu vào

  • BERT: Kết hợp nhúng token, phân đoạn và vị trí để đại diện cho đầu vào.
  • GPT: Kết hợp nhúng token và vị trí (không có nhúng phân đoạn vì nó không được thiết kế cho các nhiệm vụ cặp câu).
  • T5: Chỉ sử dụng nhúng token với mã hóa vị trí tương đối được thêm vào trong quá trình chú ý.

4. Cơ chế Chú ý

  • BERT: Sử dụng mã hóa vị trí tuyệt đối và cho phép mỗi vị trí chú ý đến tất cả các vị trí—do đó, nó có thể học ngữ cảnh xung quanh mỗi từ.
  • GPT: Cũng sử dụng mã hóa vị trí tuyệt đối nhưng hạn chế chú ý đến các token trước—chú ý đơn hướng.
  • T5: Thực hiện một biến thể của transformer sử dụng thiên vị vị trí tương đối thay vì mã hóa vị trí.

5. Kiến trúc Mô hình

  • BERT: Kiến trúc encoder-only với nhiều lớp khối transformer.
  • GPT: Kiến trúc decoder-only, cũng với nhiều lớp nhưng được thiết kế cho các nhiệm vụ tạo.
  • T5: Kiến trúc encoder-decoder, nơi cả encoder và decoder đều được tạo thành từ các lớp transformer.

6. Phương pháp Tinh chỉnh

  • BERT: Điều chỉnh các trạng thái ẩn cuối cùng của mô hình đã đào tạo trước cho các nhiệm vụ hạ nguồn với các lớp đầu ra bổ sung nếu cần.
  • GPT: Thêm một lớp tuyến tính trên đầu transformer và tinh chỉnh trên nhiệm vụ hạ nguồn sử dụng cùng mục tiêu mô hình ngôn ngữ nhân quả.
  • T5: Chuyển đổi tất cả các nhiệm vụ thành định dạng văn bản-sang-văn bản, nơi mô hình được tinh chỉnh để tạo ra chuỗi đầu ra từ chuỗi đầu vào.

7. Dữ liệu Đào tạo và Quy mô

  • BERT: Được đào tạo trên BooksCorpus và Wikipedia tiếng Anh.
  • GPT: GPT-2 và GPT-3 đã được đào tạo trên các tập dữ liệu đa dạng được trích xuất từ internet, với GPT-3 được đào tạo trên một tập dữ liệu thậm chí còn lớn hơn gọi là Common Crawl.
  • T5: Được đào tạo trên “Colossal Clean Crawled Corpus”, một phiên bản lớn và sạch của Common Crawl.

8. Xử lý Ngữ cảnh và Song hướng

  • BERT: Được thiết kế để hiểu ngữ cảnh trong cả hai hướng đồng thời.
  • GPT: Được đào tạo để hiểu ngữ cảnh theo hướng tiến (trái sang phải).
  • T5: Có thể mô hình hóa ngữ cảnh song hướng trong encoder và đơn hướng trong decoder, phù hợp cho các nhiệm vụ chuỗi-sang-chuỗi.

9. Khả năng Thích nghi với Nhiệm vụ Hạ nguồn

  • BERT: Yêu cầu các lớp đầu ra cụ thể cho nhiệm vụ và tinh chỉnh cho mỗi nhiệm vụ hạ nguồn.
  • GPT: Là mô hình tạo, nó có thể được yêu cầu để thực hiện các nhiệm vụ với sự thay đổi tối thiểu về cấu trúc.
  • T5: Xử lý mọi nhiệm vụ như một vấn đề văn bản-sang-văn bản, làm cho nó trở nên linh hoạt và dễ thích nghi với các nhiệm vụ mới.

10. Khả năng Diễn giải và Giải thích

  • BERT: Bản chất song hướng cung cấp các đại diện ngữ cảnh phong phú nhưng có thể khó giải thích hơn.
  • GPT: Chú ý đơn hướng có thể dễ theo dõi hơn nhưng thiếu độ sâu của ngữ cảnh song hướng.
  • T5: Khung encoder-decoder cung cấp sự tách biệt rõ ràng giữa các bước xử lý nhưng có thể phức tạp để phân tích do tính chất tạo của nó.

Tác động của Transformer lên NLP

Transformer đã cách mạng hóa lĩnh vực NLP bằng cách cho phép mô hình xử lý các chuỗi dữ liệu song song, điều này đã tăng tốc độ đào tạo và hiệu quả của các mạng nơ-ron lớn. Chúng giới thiệu cơ chế tự chú ý, cho phép mô hình đánh giá tầm quan trọng của mỗi phần của dữ liệu đầu vào, bất kể khoảng cách trong chuỗi. Điều này dẫn đến sự cải thiện chưa từng có trong nhiều nhiệm vụ NLP, bao gồm nhưng không giới hạn ở dịch, trả lời câu hỏi và tóm tắt văn bản.

Nghiên cứu tiếp tục đẩy ranh giới của những gì các mô hình dựa trên transformer có thể đạt được. GPT-4 và những người đồng thời của nó không chỉ lớn hơn về quy mô mà còn hiệu quả và có khả năng hơn nhờ vào các tiến bộ trong kiến trúc và phương pháp đào tạo. Các kỹ thuật như học ít mẫu, nơi mô hình thực hiện các nhiệm vụ với ít ví dụ, và phương pháp chuyển giao học hiệu quả hơn đang ở tiền tuyến của nghiên cứu hiện tại.

Các mô hình ngôn ngữ như những mô hình dựa trên transformer học từ dữ liệu có thể chứa thiên vị. Các nhà nghiên cứu và thực hành viên đang tích cực làm việc để xác định, hiểu và giảm thiểu những thiên vị này. Các kỹ thuật từ các tập dữ liệu đào tạo được kiểm duyệt đến các điều chỉnh sau đào tạo nhằm vào công bằng và trung lập.

Tôi đã dành 5 năm qua để đắm mình trong thế giới hấp dẫn của Máy học và Học sâu. Đam mê và chuyên môn của tôi đã dẫn tôi đến việc đóng góp vào hơn 50 dự án kỹ thuật phần mềm đa dạng, với trọng tâm đặc biệt là AI/ML. Sự tò mò liên tục của tôi cũng đã thu hút tôi đến Xử lý Ngôn ngữ Tự nhiên, một lĩnh vực tôi渴望 khám phá thêm.