Facebook AI đã xây dựng và mở mã nguồn cho BlenderBot, chatbot nguồn mở lớn nhất tính tới thời điểm hiện tại. Tài liệu cô đọng thành quả nghiên cứu suốt nhiều năm về AI hội thoại, chia sẻ toàn bộ mô hình, code, và cài đặt đánh giá, nhằm giúp các nhà nghiên cứu AI khác có thể tái tạo lại công trình này, từ đó cống hiến cho việc phát triển nghiên cứu AI hội thoại.

Hội thoại là một thứ ta luyện tập mỗi ngày, thông qua từ những tác vụ đơn giản như suy nghĩ xem chọn ăn món gì, quyết định xem phim gì, cho tới những thứ phức tạp hơn như thảo luận về tình hình thời sự nhằm nâng cao quan điểm về thế giới. Suốt nhiều thập kỷ, các nhà nghiên cứu AI đã tìm cách xây dựng mô hệ thống AI với khả năng giao tiếp như con người, bao gồm: hỏi và trả lời được nhiều câu hỏi trên nhiều lĩnh vực, chia sẻ tri thức, có khả năng đồng cảm, giao tiếp cá nhân hóa, thậm chí là tương tác gần gũi hoặc nghiêm túc tùy theo yêu cầu của bối cảnh.

Tính tới nay, các hệ thống AI chủ yếu chuyên về các tác vụ chuyên biệt, đã được lập trình từ trước như đặt vé máy bay. Tuy nhiên, các hệ thống AI thật sự thông minh giống con người cần phải có khả năng hiểu được bối cảnh rộng của một cuộc trò chuyện, cũng như liên kết các chủ đề cụ thể lại với nhau.

Công thức chatbot: Xác định quy mô, Phối hợp kỹ năng và Chiến thuật tổng hợp

Xác định quy mô

Tương tự như các nghiên cứu xử lý ngôn ngữ tự nhiên khác, ở bước đầu, các nhà nghiên cứu thực hiện huấn luyện trên quy mô lớn. Trước hết, thực hiện tiền huấn luyện một lượng lớn mạng nơ-ron Transformer (lên tới 9,4 tỷ) bằng rất nhiều dữ liệu hội thoại. Các hội thoại được sử dụng đều công khai và có sẵn, bao gồm 1,5 tỷ ví dụ huấn luyện trích từ các cuộc hội thoại. Do các mạng nơ-ron quá lớn để sử dụng trên một thiết bị duy nhất, ác nhà nghiên cứu đã sử dụng cấu trúc song song theo cột cho mô hình, từ đó chia mạng nơ-ron thành nhiều phần nhỏ hơn và dễ quản lý hơn, trong khi vẫn đảm bảo hiệu suất tối ưu. Việc tổ chức cẩn thận các mạng nơ-ron đã giúp xử lý được các mạng lớn hơn bất cứ lần thử nghiệm nào trước đây, trong khi vẫn đảm bảo hiệu suất đủ cao để xử lý các bộ dữ liệu ở quy mô terabyte.

Phối hợp kỹ năng (Blending Skills)

Học quy mô là một yếu tố quan trọng, song vẫn cần các nguyên liệu khác để tạo ra những tương tác hội thoại tốt nhất. Việc sao chép các cuộc hội thoại thông thường từ những bộ dữ liệu huấn luyện công khai trên quy mô lớn, không có nghĩa là máy sẽ học được các đặc tính giao tiếp tốt nhất. Thậm chí, nếu việc học không được thực hiện kỹ càng, thì mô hình có thể học cả các hành vi giao tiếp kém hiệu quả hay mang tính xúc phạm. Vì vậy, tác vụ mới với tên gọi là Blended Skill Talk (BST) đã được giới thiệu, giúp huấn luyện và đánh giá các kỹ năng, hành vi cần thiết. BST đã vận dụng thành quả của các nghiên cứu trước đây để thực hiện các kỹ năng:

  • Cá tính hòa hợp (Nghiên cứu PersonaChat)
  • Tri thức hợp lý (Nghiên cứu Wizard of Wikipedia)
  • Khả năng đồng cảm (Nghiên cứu Empathetic Dialogues – Hội thoại Đồng cảm)
  • Khả năng phối hợp nhuần nhuyễn cả 3 kỹ năng trên (BST)

Việc phối hợp các kỹ năng này là một thử thách tương đối khó khăn, bởi lẽ các hệ thống phải chuyển đổi được giữa các tác vụ khác nhau khi cần thiết, tương tự khi cách con người chuyển tông giọng từ đùa giỡn sang nghiêm túc theo các bối cảnh khác nhau. Và với bộ dữ liệu BST, ta đã có thể xây dựng các hệ thống với khả năng phối hợp và thể hiện những hành vi này. Ngoài ra, các nhà nghiên cứu cũng phát hiện ra rằng, thực hiện tinh chỉnh mô hình với BST có thể ảnh hưởng mạnh mẽ lên đánh giá của con người về khả năng hội thoại của bot.

Chiến thuật tổng hợp

Mô hình nơ-ron thường được huấn luyện bằng cách tối thiểu hóa độ phức tạp (perplexity) – thông số thể hiện khả năng dự đoán và tổng hợp từ ngữ tiếp theo của mô hình đó. Tuy nhiên, để đảm bảo rằng các nhân tố hội thoại không lặp lại những câu đã nói, hoặc cho thấy các điểm yếu khác, các nhà nghiên cứu thường sử dụng nhiều chiến thuật tổng hợp khác nhau sau huấn luyện, điển hình là tìm kiếm beam (beam search), next token sampling, và n-gram blocking.

Qua đó phát hiện rằng, độ dài các câu nói của nhân tố có ảnh hưởng tới hiệu quả của mô hình, theo đánh giá của con người. Cụ thể, nếu câu quá gắn, thì phản hồi được đánh giá là nhạt nhẽo, thể hiện sự thiếu quan tâm; còn nếu quá dài, thì chatbot sẽ được cho là quá lan man và không biết lắng nghe. Ngoài ra, trái với một nghiên cứu gần đây, trong đó cho thấy kỹ thuật sampling thường có hiệu quả tốt hơn beam search, thì các nhà nghiên cứu lại phát hiện rằng, nếu sử dụng các siêu thông số tìm kiếm một cách hiệu quả, thì beam search cũng có hiệu quả không hề kém cạnh. Cụ thể, khi được tinh chỉnh từ những thành phần nhỏ nhất, ta sẽ điều chỉnh được sắc thái của các phản hồi một cách hiệu quả.

Kiểm thử công thức

Để đánh giá mô hình, các nhà nghiên cứu đã so sánh hiệu quả của nó với chatbot Meena mới nhất của Google, bằng hình thức đánh giá theo đôi, sử dụng người đánh giá. Do mô hình của chatbot này vẫn chưa được công khai, nên khoảng 100 logs công khai ngẫu nhiên của nó đã được sử dụng cho phép đánh giá này. Đánh giá được thực hiện bằng phương thức ACUTE-Eval, trong đó người đánh giá được xem một loạt các hội thoại của con người bên cạnh các hội thoại khác được thực hiện bởi chatbot. Sau đó, họ sẽ trả lời các câu hỏi dưới đây:

  • Bạn muốn trò chuyện với ai hơn lâu hơn?” (Tính gắn kết)
  • Bạn thấy cuộc trò chuyện nào tự nhiên hơn?” (Tính con người)

Kết quả cho thấy, khi được xem các hội thoại được thực hiện bởi Meena và BlenderBot, 67% số người đánh giá đều nhận định rằng, BlenderBot giống con người hơn, còn 75% thì muốn trò chuyện lâu với BlenderBot hơn.

Các phân tích chuyên sâu hơn sử dụng đánh giá con người cũng đã chỉ ra tầm quan trọng của việc phối hợp các kỹ năng và lựa chọn một chiến thuật tổng hợp, giúp tạo ra những phản hồi ít trùng lặp và chi tiết hơn. Trong phép so sánh A/B giữa người-với-người và người-với-BlenderBot để đo mức độ gắn kết, các mô hình được tinh chỉnh bằng BST đã được đánh giá cao hơn 49% thời gian, trong khi các mô hình chỉ sử dụng các hội thoại công khai lại chỉ đạt được điều này 36% thời gian.

Ngoài ra, ta cũng phải kể tới tầm quan trọng của các chiến thuật giải mã như beam blocking và kiểm soát độ dài beam tối thiểu lên các kết quả này. Cụ thể, khi loại bỏ kiểm soát độ dài beam tối thiểu, các phản hồi của mô hình đã ngăn và chỉ còn khoảng một nửa, các mô hình BST cho hiệu quả giảm rõ rệt từ 49% xuống chỉ còn 21%. Như vậy, quy mô của mô hình là quan trọng, song ta không được phép bỏ qua các thành phần khác trong công thức chatbot.

Đồ thị phía trên biểu diễn sự thay đổi của số lần người đánh giá chọn chatbot thay vì hội thoại giữa người với người theo thời gian. Có thể thấy, hiệu quả mô hình đã tăng rõ rệt, từ mức 23% của năm 2018, tới mức 49% ở hiện tại.

Trải qua nhiều năm nghiên cứu và cải thiện các yếu tố như Specificity ControlPoly-Encoders, và công thức chatbot nêu ở trên, hiệu quả mô hình chatbot này đã tăng gấp đôi. Trong điều kiện thử nghiệm cụ thể, mô hình đã cho hiểu quả gần tương đương với con người. Điều này có nghĩa là, với phép đánh giá đang được sử dụng, chatbot đã cho hiệu quả gần tương đương con người; tuy nhiên, nó vẫn còn nhiều điểm yếu, và ta cần phải tìm kiếm một phương thức đánh giá khác, giúp phô bày các điểm yếu này, và lấy đó làm trọng cho các nghiên cứu trong tương lai.

Nhận định

Tuy nhiên, các hệ thống hội thoại vẫn còn phải đi rất xa để đạt được trí tuệ tương đương với con người. Việc mô hình xảy ra các lỗi như tự bác bỏ hay trùng lặp tuy hiếm, nhưng không phải là không thể. Ngoài ra, nó cũng có thể tự tạo ra tri thức mới – một điều thường gặp trong các hệ thống tổng hợp. Thông thường, các phép đánh giá với con người thường chỉ sử dụng các hội thoại ngắn, trong khi nhiều lỗi lại chỉ rõ ràng khi có hội thoại đủ dài.

Hiện tại, các nhà nghiên cứu  đang tìm cách tiếp tục cải thiện chất lượng hội thoại của các mô hình, đặc biệt là trong hội thoại dài, thông qua việc sử dụng các kiến trúc mới, cũng như nhiều hàm loss khác nhau. Ngoài ra, xây dựng các bộ phân loại mạnh hơn cũng đang được tập trung, nhằm sàng lọc các ngôn ngữ xúc phạm trong hội thoại. Các nghiên cứu về việc giảm định kiến về giới trong chatbot cũng đang cho thấy các tiến triển tích cực.

Điều quan trọng nhất của sự phát triển trong lĩnh vực này phụ thuộc chủ yếu vào khả năng tái thực hiện nghiên cứu – tức cơ hội để xây dựng và phát triển dựa trên những công nghệ tốt nhất.

Xem chi tiết Nghiên tại ĐÂY.
Code cụ thể tại ĐÂY.

Theo Facebook Artificial Intelligence

Tin liên quan: