Bài báo · arXiv 2201.11903
Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
Tóm tắt trong ba dòng
- 🎯 Prompting few-shot tiêu chuẩn thất bại khi thực hiện suy luận đa bước phức tạp (số học, commonsense, ký hiệu) và cho thấy đường cong scaling đi ngang.
- 🔧 Bổ sung vào các ví dụ few-shot một chuỗi suy nghĩ (chain of thought)—một chuỗi ngôn ngữ tự nhiên gồm các bước suy luận trung gian—trước khi dự đoán câu trả lời cuối cùng.
- 📈 PaLM 540B với 8 ví dụ chain-of-thought đạt độ chính xác 56,9% trên GSM8K (58,6% khi dùng máy tính ngoài), vượt trội hơn GPT-3 được fine-tune kèm verifier.
Tóm tắt
Chúng tôi khám phá cách việc tạo ra một chuỗi suy nghĩ (chain of thought) -- một chuỗi các bước suy luận trung gian -- giúp cải thiện đáng kể khả năng thực hiện suy luận phức tạp của các mô hình ngôn ngữ lớn. Cụ thể, chúng tôi chỉ ra rằng những khả năng suy luận như vậy xuất hiện một cách tự nhiên trong các mô hình ngôn ngữ đủ lớn thông qua một phương pháp đơn giản gọi là chain of thought prompting, trong đó một vài mẫu suy luận từng bước được cung cấp làm ví dụ mẫu trong prompt. Các thực nghiệm trên ba mô hình ngôn ngữ lớn cho thấy chain of thought prompting cải thiện hiệu năng trên nhiều tác vụ số học, suy luận thông thường (commonsense) và suy luận ký hiệu. Những bước tiến thực nghiệm này có thể rất đáng kinh ngạc. Chẳng hạn, việc prompt một mô hình ngôn ngữ 540B tham số chỉ với tám ví dụ chain of thought đã đạt được độ chính xác state-of-the-art trên benchmark bài toán đố số học GSM8K, vượt qua cả GPT-3 được fine-tune kèm bộ kiểm chứng (verifier).
Tóm tắt gốc (tiếng Anh)
We explore how generating a chain of thought -- a series of intermediate reasoning steps -- significantly improves the ability of large language models to perform complex reasoning. In particular, we show how such reasoning abilities emerge naturally in sufficiently large language models via a simple method called chain of thought prompting, where a few chain of thought demonstrations are provided as exemplars in prompting. Experiments on three large language models show that chain of thought prompting improves performance on a range of arithmetic, commonsense, and symbolic reasoning tasks. The empirical gains can be striking. For instance, prompting a 540B-parameter language model with just eight chain of thought exemplars achieves state of the art accuracy on the GSM8K benchmark of math word problems, surpassing even finetuned GPT-3 with a verifier.
Hướng dẫn đọc
Vấn đề và động lực
Prompting few-shot tiêu chuẩn cung cấp cho mô hình ngôn ngữ các ví dụ mẫu đầu vào–đầu ra, giúp đạt hiệu năng cao trên nhiều tác vụ hỏi đáp trực tiếp. Tuy nhiên, trên các tác vụ suy luận đa bước—chẳng hạn như toán số học cấp tiểu học, câu hỏi commonsense nhiều bước (multi-hop) và thao tác ký hiệu—việc chỉ tăng kích thước mô hình theo phương thức prompting tiêu chuẩn thường dẫn đến các đường cong scaling đi ngang và hiệu năng kém. Các phương pháp trước đây cố gắng giải quyết bài toán đa bước đều dựa vào việc huấn luyện/fine-tune các mô hình diễn giải chuyên biệt (đòi hỏi lượng lớn dữ liệu suy luận có giám sát đắt đỏ) hoặc các biểu diễn neuro-symbolic hình thức. Bài báo nghiên cứu xem liệu các mô hình ngôn ngữ đa năng có thể thực hiện suy luận đa bước hoàn toàn trong ngữ cảnh (in-context) mà không cần bất kỳ cập nhật tham số nào hay không.
Các ý tưởng cốt lõi
- Phân rã chuỗi suy nghĩ (Chain-of-Thought Decomposition): Con người phân rã các vấn đề phức tạp thành các bước suy luận tuần tự trước khi đưa ra câu trả lời. Mô hình ngôn ngữ có thể bắt chước hành vi này khi được định hướng bởi các ví dụ in-context có cấu trúc bộ ba: .
- Sự trỗi dậy theo quy mô (Emergence at Scale): Chain-of-thought (CoT) prompting không mang lại cải tiến đáng kể—và thường làm giảm hiệu năng—đối với các mô hình nhỏ ( tham số). Khả năng này chỉ thực sự trỗi dậy và đạt hiệu quả ở các mô hình có khoảng tham số trở lên.
- Lượng tính toán trung gian biến thiên (Variable Intermediate Computation): Việc tạo ra các token ngôn ngữ tự nhiên cho phép mô hình phân bổ động thêm lượng tính toán (thông qua quá trình sinh token tự hồi quy) cho các bài toán đa bước khó hơn, điều mà việc dự đoán câu trả lời trực tiếp không thể làm được.
Phương pháp (kèm các phương trình chính)
Phương pháp này điều chỉnh lại khuôn khổ few-shot prompting. Thay vì prompt bằng các cặp đầu vào–đầu ra :
trong đó mô hình tính toán trực tiếp , chain-of-thought prompting chèn một chuỗi suy luận bằng ngôn ngữ tự nhiên vào trước câu trả lời cuối cùng:
Tại thời điểm suy luận cho một đầu vào kiểm thử , mô hình tự hồi quy sinh ra cả chuỗi suy luận và câu trả lời:
Đối với các benchmark số học, các tác giả cũng đánh giá một phần mở rộng hậu xử lý bằng máy tính ngoài (external calculator): các phương trình toán học được sinh ra bên trong sẽ được tính toán bằng hàm eval của Python, sau đó truyền kết quả tiếp tục qua khớp chuỗi nhằm ngăn ngừa các lỗi sai tính toán số học.
Kết quả (với các số liệu quan trọng nhất)
- Suy luận số học (GSM8K): Trên GSM8K, prompting tiêu chuẩn trên PaLM 540B đạt 17,9%, trong khi 8-shot CoT prompting đạt 56,9% (và 58,6% với máy tính ngoài), vượt qua kết quả có giám sát tốt nhất trước đó là 55% từ GPT-3 175B được fine-tune kèm verifier. Codex đạt 63,1% (65,4% với máy tính ngoài).
- Các benchmark toán học khác: PaLM 540B đạt 79,0% trên SVAMP (so với 69,4% ở tiêu chuẩn), 73,9% trên ASDiv (so với 72,1% ở tiêu chuẩn), 35,8% trên AQuA (so với 25,2% ở tiêu chuẩn) và 93,3% trên MAWPS (so với 79,2% ở tiêu chuẩn).
- Suy luận commonsense: PaLM 540B CoT thiết lập state-of-the-art mới trên StrategyQA với 75,6% (so với 68,6% tiêu chuẩn và 69,4% tốt nhất trước đó có giám sát) và vượt qua những người đam mê thể thao trên Sports Understanding (95,4% so với 84,0%).
- Thao tác ký hiệu & Khả năng tổng quát hóa độ dài: Với tác vụ nối chữ cái cuối (last-letter concatenation), PaLM 540B tăng từ 7,6% (tiêu chuẩn) lên 99,4% (CoT) trong miền (in-domain, 2 từ). Khi kiểm thử ngoài miền (out-of-domain) trên 4 từ, prompting tiêu chuẩn giảm xuống 0,0%, trong khi CoT vẫn duy trì độ chính xác 63,0%.
- Thử nghiệm phân rã (Ablations): Các phân rã trên LaMDA 137B xác nhận rằng prompting "chỉ phương trình" (5,4% trên GSM8K), "chỉ tính toán biến thiên" qua dấu chấm (6,4%), và "suy luận sau câu trả lời" (6,1%) đều không thể sánh được với CoT prompting chuẩn (14,3%), chứng minh rằng các bước ngôn ngữ tự nhiên trung gian đặt trước câu trả lời là tối quan trọng.
Hạn chế và các câu hỏi mở
- Không đảm bảo suy luận đúng sự thật: Các chuỗi được sinh ra có thể không trung thực (unfaithful), lỗi ngữ nghĩa hoặc bị ảo giác (hallucinated), đôi khi đi đến câu trả lời đúng chỉ do ngẫu nhiên trùng hợp (đặc biệt trong các định dạng nhị phân hoặc trắc nghiệm).
- Ràng buộc về quy mô mô hình: Kỹ thuật này tốn kém chi phí để phục vụ trong môi trường production vì nó đòi hỏi các mô hình có quy mô từ tham số trở lên mới hoạt động đáng tin cậy.
- Câu hỏi mở về khả năng suy luận thực sự: Bài báo lưu ý rằng việc bắt chước các lập luận của con người không chứng minh được rằng các biểu diễn mạng nơ-ron bên dưới thực sự thực thi suy luận hình thức.
Thuật ngữ chính
- chain of thought (chuỗi suy nghĩ)
- Một chuỗi mạch lạc gồm các bước suy luận trung gian bằng ngôn ngữ tự nhiên được sinh ra trước khi dự đoán câu trả lời cuối cùng cho một bài toán.
- chain-of-thought prompting
- Một chiến lược prompting trong đó các ví dụ few-shot được định dạng dưới dạng các bộ ba gồm đầu vào, chuỗi suy luận trung gian và đầu ra mà không cần cập nhật trọng số mô hình.
- emergent ability (khả năng trỗi dậy)
- Một năng lực biến mất hoặc gây hại ở các mô hình ngôn ngữ nhỏ hơn và chỉ xuất hiện khi quy mô mô hình vượt qua một ngưỡng nhất định (khoảng 100B tham số).
- GSM8K
- Bộ benchmark gồm 1.319 bài toán đố số học cấp tiểu học chất lượng cao, đa bước, đòi hỏi từ 2 đến 8 bước số học để giải quyết.
- standard prompting (prompting tiêu chuẩn)
- Thiết lập in-context learning dạng few-shot tiêu chuẩn, trong đó các mẫu minh họa chỉ bao gồm các cặp đầu vào và đầu ra cuối cùng.
- length generalization (khả năng tổng quát hóa độ dài)
- Khả năng mô hình thành công tại thời điểm kiểm thử trên các chuỗi suy luận chứa nhiều bước hơn hoặc độ dài chuỗi lớn hơn so với những gì được minh họa trong các ví dụ few-shot.
- external calculator (máy tính ngoài)
- Cơ chế đánh giá hậu xử lý giúp trích xuất các phương trình từ chuỗi suy nghĩ được sinh ra, thực thi chúng bằng eval của Python và cập nhật văn bản phía sau.
- variable compute (tính toán biến thiên)
- Việc phân bổ số lượng token sinh trung gian biến thiên nhằm cho phép nhiều phép tính toán hơn đối với các bài toán khó hơn.
Câu hỏi thường gặp
Tại sao chain-of-thought prompting lại thất bại trên các mô hình ngôn ngữ nhỏ?
Các mô hình dưới ~10B tham số thường sinh ra các chuỗi suy nghĩ trôi chảy nhưng phi logic hoặc lặp lại, đồng thời gặp khó khăn với việc ánh xạ ký hiệu và số học cơ bản, dẫn đến hiệu năng thấp hơn so với việc trả lời trực tiếp.
Chain-of-thought prompting nhạy cảm như thế nào đối với cách diễn đạt của prompt và người chú giải?
Mặc dù độ chính xác cụ thể có sự dao động tùy theo người chú giải và phong cách viết prompt, các thực nghiệm trên ba người chú giải độc lập và các mẫu ngẫu nhiên từ GSM8K cho thấy tất cả các biến thể CoT đều vượt trội hơn đáng kể và nhất quán so với prompting tiêu chuẩn.
Việc sinh trực tiếp phương trình có mang lại lợi ích tương tự như suy luận bằng ngôn ngữ tự nhiên không?
Không. Trên các tập dữ liệu phức tạp như GSM8K, prompting chỉ dùng phương trình chỉ đạt 5,4% độ chính xác trên LaMDA 137B so với 14,3% của CoT, bởi việc chuyển đổi ngữ nghĩa thành một phương trình duy nhất là quá khó nếu không có các bước ngôn ngữ tự nhiên trung gian.
Chain of thought có thể giúp các mô hình ngôn ngữ tổng quát hóa cho các đầu vào dài hơn so với những gì thấy trong prompt không?
Có. Trên các tác vụ ký hiệu như nối chữ cái cuối và tung đồng xu, CoT cho phép các mô hình như PaLM 540B tổng quát hóa thành công cho các đầu vào ngoài miền gồm 3 bước và 4 bước, ngay cả khi prompt chỉ cung cấp các chuỗi mẫu 2 bước.
Phần giải thích trên trang này do AI viết dựa trên bài báo và có thể có sai sót. Hãy đọc bài báo gốc để biết chi tiết.