Chăm sóc khách hàng là một khâu quan trọng trong các doanh nghiệp, bởi nó không những thu thập thông tin để cải thiện sản phẩm, dịch vụ mà còn thấu hiểu nhu cầu khách hàng để hoạch định chiến lược phù hợp hơn. Thời gian gần đây, hoạt động chăm sóc khách hàng dần được tự động hóa nhờ sự phát triển mạnh mẽ của chatbot, hay các thuật toán hỗ trợ hồi đáp tự động dựa trên trí tuệ nhân tạo (AI). Các cuộc hội thoại tự nhiên và thông tin phản hồi chính xác là yếu tố quyết định sự hài lòng của khách hàng. Để đạt được điều đó, việc thấu hiểu ý định người dùng là vô cùng quan trọng. Khác với các kỹ thuật thường thấy, bài viết này cung cấp một phương thức tiếp cận mới, tự động phân cụm dữ liệu từ các tin nhắn văn bản ngắn để xác định và trích xuất ý định của người dùng.

Lập mô hình chủ đề 

Có một số cách để tiếp cận các vấn đề học không giám sát, trong đó kỹ thuật thường xuyên được sử dụng nhất là sử dụng mô hình chủ đề (topic modeling).

Nhiều thuật toán có thể được ứng dụng để thực hiện mô hình hóa chủ đề, nhưng một thuật toán rất phổ biến là Phân bổ Dirichlet tiềm ẩn (tiếng Anh: Latent Dirichlet allocation, hay viết tắt là LDA). LDA là một mô hình sinh mẫu giả định rằng mỗi tài liệu được tạo thành từ sự phân bố của một số chủ đề cố định và mỗi chủ đề được tạo thành từ sự phân bố các từ. Một số khó khăn khi sử dụng LDA (và nhiều thuật toán mô hình hóa chủ đề khác) nằm ở khâu quyết định có bao nhiêu chủ đề thực sự sử dụng, được coi là một siêu tham số mô hình cần thiết. Đồng thời, tính mạch lạc cũng là phương pháp để đánh giá chất lượng của các chủ đề, được tính toán bằng cách đo lường mức độ tương tự của các từ trong mỗi chủ đề. Điểm mạch lạc càng cao thì kết quả càng chính xác.  

Tính nhất quán của LDA được coi là một hàm với các biến số lượng chủ đề được áp dụng cho một mẫu của bộ dữ liệu ngân hàng 77. Nguồn: Toward Data Science

Một hạn chế khác của LDA và các phương pháp tiếp cận mô hình chủ đề tương tự nằm ở việc coi toàn bộ từ vựng trong tài liệu như một “túi từ”, trong đó thứ tự sắp xếp từ không quan trọng. Phương thức này hoạt động tốt đối với các tài liệu dài hơn (với một kho ngữ liệu lớn hơn), trong đó việc xác định các từ cùng xuất hiện có thể cung cấp một bức tranh tốt về các chủ đề. Ngoài ra, thường có một số lượng tương đối nhỏ các chủ đề và các chủ đề khá khác biệt. Tuy nhiên, nội dung văn bản ngắn thường có những thách thức cụ thể, chẳng hạn như xuất hiện hai cụm từ chứa các từ gần giống nhau nhưng ý nghĩa rất khác nhau hoặc hai cụm từ bao hàm cùng một ý định nhưng hầu như không có từ nào chung. Điều này đặc biệt hạn chế tính hữu ích của các phương pháp tiếp cận mô hình chủ đề tiêu chuẩn nhằm xác định ý định trong văn bản ngắn.

Phân cụm embeddings

Ngoài mô hình chủ đề, phân cụm là một cách tiếp cận rất phổ biến khác đối với các vấn đề tự học không giám sát. Để có thể phân cụm dữ liệu văn bản cần đưa ra nhiều quyết định, bao gồm cách xử lý dữ liệu và thuật toán được sử dụng.

Lựa chọn embeddings

Bước đầu tiên cần phải biểu diễn dữ liệu văn bản dưới dạng số, với các phương thức tiếp cận phổ biến bao gồm tạo embeddings, hoặc vector biểu diễn của từng từ để sử dụng cho việc phân cụm. Vì mỗi tin nhắn thường chứa một số lượng từ nhất định, nên có thể chỉ cần lấy trung bình từ việc biểu diễn các từ riêng lẻ trong toàn bộ tin nhắn. Kỹ thuật này hiệu quả trong một số trường hợp, tuy nhiên, giải pháp được đánh giá cao hơn đó là trực tiếp tính toán để tạo embedding một lần cho một câu đầy đủ, như vậy, ý nghĩa và ý định trong câu sẽ rõ ràng hơn. Đặc biệt với các đoạn văn bản ngắn, giải pháp này xử lý những vấn đề về nội dung hay hình thức trùng lặp đã được nêu ra phía trên.

Bộ mã hóa câu toàn cầu của Google (Google’s Universal Sentence Encoder – USE) xuất bản năm 2018 là một mô hình nhúng câu phổ biến, được đào tạo dựa trên nhiều loại dữ liệu, bao gồm Wikipedia, tin tức trên website, và các thảo luận trên diễn đàn. Mô hình này được đánh giá là hiệu quả trong việc xác định ý nghĩa câu. 

Universal Sentence Encoder model. Nguồn: TensorFlow Hub

Năm 2019, Reimers và Gurevych lần đầu giới thiệu một kỹ thuật có tên gọi là Sentence-BERT, một biến thể khác của kiến trúc BERT. Mô hình này sử dụng kiến trúc mạng siamese để tạo ra biểu diễn của câu.

Giảm chiều dữ liệu

Hầu hết các câu sau khi nhúng đều có kích thước lớn (> 500 thuộc tính mỗi câu). Việc giảm kích thước trước khi phân cụm góp phần cải thiện đáng kể đến kết quả.

Kỹ thuật giảm kích thước phổ biến năm 2020 là Phép chiếu xấp xỉ và phép chiếu thống nhất cho phép giảm kích thước (UMAP), nhanh hơn và có khả năng mở rộng cao hơn nhiều so với t-SNE, đồng thời bảo toàn cấu trúc tổng thể của dữ liệu tốt hơn nhiều. 

Lựa chọn thuật toán phân cụm

Lựa chọn tốt nhất là các thuật toán dựa trên mật độ vì chúng không yêu cầu chỉ định số lượng cụm và không quan tâm đến hình dạng cụm. Phân cụm không gian dựa trên mật độ phân cấp (HDBSCAN) đã trở nên phổ biến vì nó có ít siêu tham số hơn và trực quan hơn DBSCAN, đồng thời có hiệu quả mạnh mẽ đối với các cụm có mật độ thay đổi. 

Tạo cụm từ UMAP + HDBSCAN

Hiện tại đã có sẵn 2 thư viện để xâu chuỗi UMAP và HDBSCAN với nhau cho mục đích mô hình hóa chủ đề: Top2Vec (github và paper) và BERTopic (github và article). Tuy nhiên, các siêu tham số mặc định được sử dụng trong cả 2 thư viện đều không xử lý hiệu quả các vấn đề với văn bản ngắn và một kho dữ liệu nhỏ (hầu hết dữ liệu cuối cùng được phân loại bị nhiễu và chỉ tìm thấy tổng số ba cụm). Bài viết này sử dụng trực tiếp UMAP và HDBSCAN để điều chỉnh siêu tham số phù hợp. 

UMAP có một số siêu tham số kiểm soát chu trình giảm kích thước, và 2 trọng số quan trọng nhất là n_neighbors và n_components. Tham số n_neighbors kiểm soát cách UMAP cân bằng cấu trúc cục bộ và tổng thể của dữ liệu. Tham số này kiểm soát kích thước của vùng lân cận liên đới tới UMAP để tìm hiểu cấu trúc đa tạp, vì thế các giá trị thấp hơn của n_neighbors sẽ tập trung nhiều hơn vào cấu trúc cục bộ. Tham số n_components kiểm soát kích thước nhúng cuối cùng sau khi thực hiện giảm kích thước trên dữ liệu đầu vào. HDBSCAN cũng có một số siêu tham số quan trọng, nhưng tham số quan trọng nhất cần xem xét là min_cluster_size. Tham số min_samples mặc định bằng min_cluster_size nếu không có chỉ định khác và khi min_samples càng lớn thì càng có nhiều điểm bị loại bỏ dưới dạng nhiễu/ ngoại lệ. Trong trường hợp tham số min_samples nhỏ hơn min_cluster_size cho thấy các điểm đã được dán nhãn là ngoại lệ và hợp nhất chúng với các cụm lân cận tương tự nhất của chúng. 

Một chú ý rằng UMAP là thuật toán ngẫu nhiên và nó sử dụng tính ngẫu nhiên để tăng tốc các bước gần đúng để sau đó tối ưu hóa. 

Xác định chức năng cho điểm

Mặc dù thường được sử dụng với các thuật toán phân nhóm khác nhau, Điểm số hình bóng (Silhouette Score) không phải là chỉ số xác thực tốt nhất cho các thuật toán dựa trên mật độ như DBSCAN và HDBSCAN vì kỹ thuật này giả định rằng tất cả các điểm đều được gán cho một nhóm và không thể xử lý nhiễu hay các ngoại lệ một cách thích hợp. Xác thực cụm dựa trên mật độ (DBCV) đã được một số người đề xuất và sử dụng để điều chỉnh siêu tham số HDBSCAN. Bài viết này tận dụng thuộc tính probabilities HDBSCAN hữu ích, với độ mạnh mà mỗi mẫu là một phần của cụm được chỉ định. Điểm nhiễu có xác suất bằng không; các điểm trong cụm có các giá trị được chỉ định tỷ lệ với mức độ tồn tại trong cụm.

Tìm kiếm siêu tham số ngẫu nhiên

Với kích thước tập dữ liệu chỉ là 1.000 mẫu, vẫn mất khoảng 3 giây để tạo các cụm và tính điểm cho một tập hợp đầu vào nhất định. Kích thước tập dữ liệu càng lớn sẽ càng mất nhiều thời gian. Thực hiện tìm kiếm ngẫu nhiên thay vì tìm kiếm toàn bộ lưới là một chiến lược thay thế khá hiệu quả.

Tối ưu hóa Bayes với Hyperopt

Tìm kiếm ngẫu nhiên không gian siêu tham số hoạt động khá tốt, nhưng có một lựa chọn tốt hơn chính là Tối ưu hóa Bayes với 3 bước chính:

Bước 1: xác định hàm mục tiêu muốn tối ưu hóa. Các ràng buộc tối ưu hóa được bao gồm trong hàm mục tiêu bằng cách thêm một thuật ngữ phạt nếu số lượng cụm nằm ngoài phạm vi mong muốn

Bước 2: thu nhỏ hàm mục tiêu trên không gian tìm kiếm siêu tham số bằng cách sử dụng thuật toán Công cụ ước tính Parzen có cấu trúc cây (TPE):

Bước 3: Chạy tìm kiếm Bayes với 100 đánh giá tối đa trên không gian tham số 

Đồng  thời, giai đoạn này có thể hình dung các cụm hoặc kiểm tra thủ công một số trong số chúng để đảm bảo chúng có ý nghĩa. 

Đánh giá hiệu suất, biết các nhãn sự thật cơ bản

Thay vì kiểm tra tất cả các nhóm theo cách thủ công nên đánh giá định lượng các hoạt động của mô hình. Hai số liệu thường được sử dụng để đánh giá phân cụm văn bản là Thông tin tương hỗ được chuẩn hóa và Chỉ số ngẫu nhiên được điều chỉnh. Cả hai chỉ số đều có giá trị từ 0 đến 1, và giá trị càng lớn thì độ hiệu quả càng cao.

Ghi nhãn cụm tự động

Cách tiếp cận để thực hiện ghi nhãn cụm tự động là trích xuất cặp hành động-đối tượng phổ biến nhất trong các cụm từ đang xử lý để quy ước làm nhãn cụm. Kỹ thuật được áp dụng thường xuyên: nối động từ phổ biến nhất, tân ngữ trực tiếp và hai danh từ đứng đầu từ mỗi cụm. Gói spaCy với thuật toán phân tích cú pháp có thể bổ trợ trong chu trình này. 

Trong bài viết này đã phác thảo một khuôn khổ nhằm tận dụng kiến thức miền, dễ dàng phân cụm các tài liệu văn bản ngắn và áp dụng các nhãn mô tả để hiểu ý định người dùng trong các câu thoại ngắn. Mục đích của bài viết này hướng tới tiếp cận các tập dữ liệu nhỏ, nhưng phương thức tiếp cận vẫn sẽ hoạt động hiệu quả với các tập dữ liệu lớn hơn. 

Tính năng am hiểu ý định người dùng là một tính năng vượt trội được áp dụng trong hệ thống Chatbot phát triển bởi VinBigData – Vinbot. Đặc biệt, Vinbot còn có khả năng nhận biết ngữ điệu và cường độ để tìm hiểu sắc thái cảm xúc của khách hàng, và đối thoại tự nhiên như con người. 
Tìm hiểu thêm về Vinbot và hệ sinh thái sản phẩm của VinBigData: Tại đây 

Việc triển khai các hệ thống chatbot, đặc biệt là chatbot sử dụng trí tuệ nhân tạo (AI chatbot), mang lại nhiều lợi ích đáng kể cho doanh nghiệp như: nâng cao trải nghiệm khách hàng với các phản hồi 24/7, giảm thiểu chi phí và gia tăng doanh số. Vì vậy, sử dụng chatbot cho các kênh truyền thông là phương pháp được các doanh nghiệp trên thế giới ưa chuộng sử dụng trong thời gian gần đây. 

Tuy nhiên, không phải bất kì doanh nghiệp nào triển khai chatbot cũng thực sự mang lại hiệu quả và thành công như mong đợi. Đôi khi chatbot vẫn gặp một số lỗi như nhầm lẫn các lệnh đơn giản, cung cấp các phản hồi không hữu ích hoặc không liên quan đến vấn đề khách hàng hỏi. 

Những lợi ích nổi bật mà chatbot mang lại 

Với khả năng phản hồi và giải đáp thông tin trong thời gian thực, hỗ trợ liên tục 24/7, chatbot cải thiện các dịch vụ chăm sóc khách hàng cho mỗi doanh nghiệp. Xử lý khối lượng yêu cầu lớn với độ chính xác cao, chatbot giúp gia tăng trải nghiệm khách hàng và giảm thiểu chi phí đáng kể.  

Xem thêm về Chatbot và những lợi ích Chatbot mang lại: Tại đây 

Ba loại rào cản chính khi triển khai chatbot các doanh nghiệp thường xuyên gặp phải

1. Xác định trường hợp sử dụng chatbot chưa phù hợp

Các doanh nghiệp có thể dễ dàng đưa ra danh sách những vấn đề phổ biến mà khách hàng gặp phải, tuy nhiên, không phải vấn đề nào cũng phù hợp với chatbot. Họ thường không chắc chắn khi xác định chủ đề nào phù hợp nhất với chatbot và chủ đề nào nên được xử lý bởi các nhân viên chăm sóc khách hàng. Chatbot dễ gặp khó khăn khi phải xử lý các chủ đề mang tính cảm xúc cao hoặc yêu cầu các tương tác qua lại phức tạp, lâu dài. 

2. Không thiết kế và huấn luyện chatbot theo kịch bản riêng của doanh nghiệp

Một số doanh nghiệp thường triển khai chatbot theo một mô hình chung, hoặc dựa theo các nguyên mẫu có sẵn từ các doanh nghiệp khác. Họ chưa thực sự quan tâm đến mức độ phù hợp khi triển khai. Chatbot phải phù hợp với sản phẩm, dịch vụ mà doanh nghiệp cung cấp, đồng thời phải có kịch bản làm hài lòng khách hàng. Khi tích hợp chatbot với các kênh truyền thông, các công ty nên ưu tiên nhu cầu của khách hàng và chú ý đến các đặc tính của sản phẩm, để chatbot hoạt động hiệu quả hơn. 

Trò chuyện với khách hàng cũng tùy thuộc vào trường hợp sử dụng và đặc điểm nhận dạng thương hiệu. Một công ty bán sản phẩm giải trí cho thế hệ millennial sẽ muốn cuộc trò chuyện trở nên vui vẻ và hiện đại trong khi một chatbot chăm sóc sức khỏe không nên hồi đáp với ngữ điệu và câu từ mang tính vui đùa, hoặc pha trò. 

3. Không xây dựng đủ dữ liệu để huấn luyện chatbot thông minh

Giống như các công cụ ứng dụng trí tuệ nhân tạo khác, chatbot cần sử dụng nhiều dữ liệu đầu vào để học cách xử lý các yêu cầu một cách hiệu quả. Đào tạo chatbot thông minh có nghĩa là tạo cơ hội cho chatbot tiếp xúc với vô số cuộc trò chuyện mẫu về các chủ đề doanh nghiệp muốn giải quyết, sau đó học hỏi từ các trường hợp thực tế đó để câu trả lời linh hoạt hơn. Đặc biệt, chatbot còn có thể học để trở nên cá nhân hóa, hiểu phong cách và ngữ điệu nói chuyện của khách hàng, sau đó đối thoại sao cho phù hợp với từng người. 

Doanh nghiệp nên làm gì để triển khai chatbot thực sự hiệu quả

triển khai chatbot hiệu quả
Triển khai chatbot hiệu quả là một trong những điều mà doanh nghiệp quan tâm thời gian gần đây.

Kết hợp triển khai chatbot với hệ thống chăm sóc khách hàng đúng cách 

Với khả năng trực tuyến 24/7, chatbot luôn sẵn sàng giải đáp thắc mắc cho khách hàng ở bất kì thời điểm nào trong ngày. Tuy nhiên, chatbot không phải công cụ toàn năng, và có hiểu biết trong phạm vi nhất định. Trong quá trình triển khai Chatbot, đôi khi sẽ có một số vấn đề xảy ra nằm ngoài giới hạn hiểu biết của chatbot. Trường hợp này các doanh nghiệp nên chuẩn bị phương án linh hoạt bằng việc tự động chuyển giao một số câu hỏi cho nhân viên tư vấn để tiếp tục cuộc trò chuyện với khách hàng. 

Doanh nghiệp phải khéo léo triển khai Chatbot kết hợp với các yếu tố khác để hoàn thiện khâu chăm sóc khách hàng hiệu quả nhất. Chatbot có thể nhanh chóng trả lời các câu hỏi phổ biến và chuyển tiếp lại cho các nhân viên hỗ trợ với các cuộc đối thoại có tính chất phức tạp và mang nhiều sắc thái cảm xúc. Chatbot có khả năng thu thập thông tin, xuất báo cáo nhưng việc xử lý thông tin vẫn cần các nhà quản trị hay các nhân viên chuyên môn dành thời gian phân tích. 

Xây dựng kịch bản trả lời phù hợp với doanh nghiệp và đúng trọng tâm

Chatbot nên được coi như các tác nhân trong một trung tâm chăm sóc khách hàng: phải huấn luyện và đào tạo chatbot với những nghiệp vụ khách hàng mà doanh nghiệp đang triển khai, nắm bắt đầy đủ thông tin và định vị thương hiệu và học cách đối thoại khéo léo để mang lại cho khách hàng những trải nghiệm tốt. 

Với vai trò chính là giải đáp thắc mắc và cung cấp thông tin, tin nhắn của bot nên là các câu ngắn và rõ ràng. Khách hàng cần những lời đáp đúng trọng tâm và nhu cầu họ mong muốn. Khách hàng dễ cảm thấy không hài lòng nếu bot trả lời quá dài, lan man, không đúng ý. 

Đặt mình vào vị trí của khách hàng để đào tạo chatbot thông minh 

Doanh nghiệp nên đặt mình vào vị trí của khách hàng để nghiên cứu xem vấn đề nào đang được quan tâm, những thắc mắc khi sử dụng sản phẩm là gì, những câu hỏi nào khách hàng thường đặt ra… Trước khi triển khai, doanh nghiệp phải xây dựng kịch bản đầy đủ thông tin nhất có thể. Sau khi hoàn thành việc thiết lập kịch bản, các nhà quản trị nên trải nghiệm thử với bot, xem xét xem câu trả lời của bot đã đáp ứng được hết nhu cầu và mong đợi của khách hàng hay chưa. Đồng thời khi thử nghiệm cũng giúp doanh nghiệp phát hiện lỗi để điều chỉnh kịp thời trước khi tới tay khách hàng. 

Ngoài ra, sau thời gian vận hành, doanh nghiệp cũng cần thường xuyên theo dõi và điều chỉnh kịch bản để phù hợp với văn phong giao tiếp của khách hàng. Việc theo dõi và học hỏi giúp chatbot trở nên linh hoạt và thông minh hơn, gần gũi và cá nhân hóa vời từng người dùng. Cách diễn đạt, ngữ điệu, cách dùng từ phù hợp sẽ khiến khách hàng thoải mái, và mong muốn chia sẻ thông tin nhiều hơn. Những thông tin này sẽ dễ dàng có được nếu quan sát hành và nắm bắt hành vi của khách hàng trong một khoảng thời gian nhất định.

Chatbot đã và đang là xu thế tất yếu và một nhân tố không thể thiếu giúp doanh nghiệp tối ưu trải nghiệm khách hàng, tiết kiệm nhân lực và chi phí. Tuy nhiên, doanh nghiệp cần cân nhắc kỹ lưỡng quy trình tạo lập và thiết kể để khai thác chatbot hiệu quả nhất. Với chatbot điều nên quan tâm hàng đầu là chất lượng của chatbot, tránh trường hợp tác dụng ngược khi chatbot hoạt động thiếu chuyên nghiệp.

VinBot cung cấp nền tảng tạo lập, cấu hình, huấn luyện chatbot theo kịch bản nghiệp vụ của khách hàng, hỗ trợ tích hợp đa dạng kênh truyền thông để tương tác với người dùng cuối. Với VinBot, đội ngũ sẽ tiến hành tìm hiểu và phân tích kịch bản thật sự phù hợp cho mỗi doanh nghiệp, xây dựng hệ thống chatbot phản hồi mang tính cá nhân hóa tới từng khách hàng, cung cấp trải nghiệm ưu việt nhất. Thành tạo nhiều ngôn ngữ như Việt, Anh, Nhật, Trung,.. tốc độ phản hồi chưa tới 0,1s và khả năng xử lý 10.000 yêu cầu cùng lúc, VinBot hứa hẹn là công cụ nâng tầm dịch vụ khách hàng cho các doanh nghiệp. 
Tìm hiểu thêm về VinBot: Tại đây

Tư liệu tham khảo: Topbots

Tạo lập chatbot là một trong những vấn đề đang được nhiều doanh nghiệp quan tâm thời gian gần đây. Bởi chatbot là một trong những cách gia tăng trải nghiệm khách hàng hiệu quả, với các tính năng đột phá: phản hồi linh hoạt trong thời gian thực, cung cấp thông tin chính xác, giải quyết nhiều yêu cầu cùng lúc,.. Bài viết dưới đây sẽ cung cấp một số phương pháp và quy trình gợi ý để tạo lập hệ thống chatbot thông minh.

Chatbot là gì?

Khi truy cập vào một fanpage trên Facebook, bạn gửi tin nhắn tìm hiểu thông tin và nhận được lời hồi đáp ngay sau đó. Những tin nhắn như vậy có thể không đến từ người quản lý fanpage mà đến từ chatbot. Chatbot là một hình thức trò chuyện được các fanpage ưa chuộng sử dụng bởi tốc độ hồi đáp nhanh, với những thông tin chính xác được lập trình từ trước. Điều này mang đến trải nghiệm tuyệt vời hơn cho người truy cập fanpage khi không phải chờ đợi quá lâu để nhận được câu trả lời mong muốn.

Chatbot, hay còn được gọi là talkbot, chatterbot, bot, bot IM, hay thực thể trò chuyện tự động, là một chương trình máy tính thực hiện một cuộc trò chuyện thông qua việc tiếp nhận thông tin bằng văn bản và giọng nói. Chatbot được thiết kế để mô phỏng các cuộc hội thoại của con người, diễn giải, xử lý yêu cầu của người dùng và cuối cùng đưa ra câu trả lời một cách nhanh chóng. Chatbot được sử dụng trong các hệ thống hội thoại của các fanpage cho nhiều mục đích cụ thể, phổ biến nhất là dịch vụ khách hàng và thu thập thông tin. 

️Phân loại chatbot

Tùy thuộc vào cách lập trình của bot, có 2 loại chat bot

Chatbot dựa trên quy tắc (Rule-Based Chatbot): Với loại chatbot này, quy tắc là đi theo các đường dẫn được định sẵn trong cuộc trò chuyện. Người dùng chọn các tùy chọn sẵn mà bot đưa ra để thực hiện yêu cầu với bot theo từng bước. Bot loại này thường đơn giản và dễ tạo lập hơn.

Chatbots trò chuyện tự động (Self-Learning Chatbot), hay còn gọi là AI chatbot: Sử dụng Trí tuệ nhân tạo (AI) & Học máy (ML) để đưa ra phân tích và dự đoán dựa trên yêu cầu sau đó trò chuyện với người dùng. Mức độ tương tác và cá nhân hóa của chúng cao hơn so với Chatbot dựa trên quy tắc.

Tìm hiểu thêm: AI chatbot là gì và những đột phá so với chatbot thông thường.

Các phương pháp tạo lập chatbot gợi ý

Để đáp ứng và nâng cao trải nghiệm người dùng, AI chatbot là một lựa chọn tuyệt vời của các doanh nghiệp, tổ chức. Trong bài viết này giới thiệu một số định hướng xây dựng AI chatbot phổ biến, được đề xuất sử dụng rộng rãi bởi các nhà nghiên cứu. 

Những nghiên cứu gần đây về chatbot thường phân theo 2 hướng lớn: (1) phương pháp pipeline và (2) phương pháp end-to-end.

Trong phương pháp pipeline, toàn bộ hệ thống chatbot được chia thành nhiều công đoạn, và thành phần khác nhau, chẳng hạn như đọc hiểu ngôn ngữ tự nhiên (Natural Language Understanding – NLU), quản lý hội thoại (Dialog Management) bao gồm theo dõi trạng thái hội thoại (Dialog State Tracking – DST) học các nguyên lý hội thoại (Policy Learning); sinh ngôn ngữ tự nhiên (Natural Language Generation – NLG). Ngược lại với các phương pháp tiếp cận theo pipeline, các phương pháp end-to-end xây dựng một hệ thống hội thoại bằng cách sử dụng một mô hình duy nhất, trong đó ngữ cảnh ngôn ngữ tự nhiên được lấy làm đầu vào và phản hồi ngôn ngữ tự nhiên được tạo ra làm đầu ra.

Rõ ràng, các hệ thống pipeline với cấu trúc mô-đun dễ hiểu và ổn định hơn, do đó được ứng dụng trong thương mại hóa nhiều hơn. Tuy nhiên, với việc yêu cầu ít chú thích hơn, các hệ thống end-to-end có thể trở thành một giải pháp thay thế đầy hứa hẹn trong tương lai. 

Tạo lập chatbot bằng phương pháp Pipeline
Có nhiều đề xuất về phương pháp tạo lập chatbot, nhưng một trong những phương pháp hiện đại và tối ưu nhất hiện nay là pipelines 

Chi tiết quy trình nghiên cứu theo cả 2 phương pháp pipeline và end-to-end như sau: 

Tạo lập chatbot bằng phương pháp Pipeline

Quy trình trong phương pháp Pipelines như sau: 

Ở công đoạn này, NLU có nhiệm vụ phân tích cú pháp của người dùng và đưa chúng thành một biểu diễn ngữ nghĩa có cấu trúc, thường bao gồm các cặp ý định (intent) và các cặp  thuộc tính – giá trị (slot: value). Ý định (intent) ở đây chỉ ra chức năng của lời nói, ví dụ: truy vấn hoặc cung cấp thông tin. Các cặp thuộc tính – giá trị là các yếu tố ngữ nghĩa được đề cập trong câu nói.

Ví dụ: trong câu nói “Bạn có thể giới thiệu một nhà hàng Trung Quốc ở Manhattan không?”, Các cặp thuộc tính – giá trị có thể là (“ẩm thực” : “Trung Quốc”) và (“địa điểm” : “Manhattan”). Ý định ở đây là “cung cấp thông tin”.

Phát hiện ý định (intent detection) và trích xuất thuộc tính – giá trị (slot-value extraction) có thể được giải quyết bằng cách sử dụng Mạng nơ-ron hồi quy (RNN), Mạng nơ-ron tích chập (CNN), Mạng nơ-ron đệ quy, CRF (conditional random fields) hoặc mô hình BERT bên cạnh việc kết hợp cơ chế attention.. 

Ở bước này của quy trình, trình theo dõi trạng thái hộp thoại ước tính mục tiêu của người dùng bằng cách lấy toàn bộ ngữ cảnh hộp thoại làm đầu vào. Trong hầu hết các nghiên cứu gần đây, mục tiêu của người dùng được thể hiện bằng các cặp  thuộc tính – giá trị.

Năm 2013, Henderson từ Đại học Cambridge đã giới thiệu phương pháp học sâu để theo dõi trạng thái hộp thoại, trong đó sử dụng cửa sổ trượt để xuất ra một chuỗi phân phối xác suất trên một số giá trị tùy ý. Tại một số vị trí cố định cho phép áp dụng phân loại để dự đoán giá trị. Đối với các vị trí tự do có thể tạo ra giá trị trực tiếp hoặc dự đoán khoảng giá trị trong lời thoại.

Theo dõi trạng thái hộp thoại cũng có thể được thực hiện bằng cách sử dụng Mạng nơ-ron hồi quy (RNN) và Neural Belief Tracker (NBT), kết hợp một số các phương pháp tiếp cận khác.

Sau khi xác định trạng thái hội thoại, bước tiếp theo là tiến hành đưa ra quyết định hành động tiếp theo của hệ thống. DPL sẽ học các nguyên lý hội thoại của con người bằng các phương thức như học có giám sát hoặc học tăng cường. Ngoài ra, phương pháp tiếp cận dựa trên quy tắc (rule-based) được sử dụng đầu tiên để khởi động hệ thống.

Hiện nay, để học nguyên lý hội thoại hầu như đều dựa vào học tăng cường (RL). Tuy nhiên, việc đào tạo một chính sách học tăng cường đòi hỏi nhiều tương tác với người dùng, điều này tốn nhiều thời gian và chi phí. Do đó, nhiều phương thức tiếp cận khác nhau đã được đề xuất để giải quyết vấn đề này, bao gồm cả việc sử dụng trình mô phỏng người dùng. 

Ở công đoạn này; chúng ta sẽ dùng hành động được quyết định từ nguyên lý đối thoại tạo thành câu nói tự nhiên để phản hồi lại người dùng. Phản hồi tương ứng với một lời thoại của máy tính phải đảm bảo độ chính xác về mặt thông tin, cụ thể và tự nhiên.

Công đoạn này có thể được tiếp cận như một nhiệm vụ xử lý ngôn ngữ có điều kiện, bắt đầu bằng cách đào tạo trước một GPT với kho ngữ liệu quy mô lớn, và sau đó tinh chỉnh (fine-tune) mô hình về các nhiệm vụ sản sinh ngôn ngữ tự nhiên mục tiêu với một số lượng nhỏ các mẫu đã đào tạo.

Tạo lập chatbot bằng phương pháp End-to-end

Phương pháp End-to-end được đề xuất khi người ta nhận thấy một số hạn chế của phương pháp Pipeline. Đầu tiên, liên quan tới vấn đề chỉ định, với phương pháp pipeline thường khó có thể chỉ định các phản hồi của người dùng với mô-đun cụ thể tương ứng. Ngoài ra, các công đoạn có sự phụ thuộc và tương quan lẫn nhau, trong đó bất kỳ thay đổi về dữ liệu hoặc huấn luyện lại một thành phần nào của hệ thống pipeline cũng yêu cầu tất cả các thành phần khác phải được điều chỉnh cho phù hợp.

Những vấn đề này có thể được giải quyết bằng cách xây dựng một mô hình sinh (generative models) mạng nơ-ron cho các hệ thống hội thoại. Hầu hết các phương pháp end-to-end này sử dụng mô hình seq2seq (sequence to sequence).

Tuy nhiên, cách tiếp cận truyền thống của end-to-end yêu cầu  dữ liệu hội thoại rất nhiều và đa dạng  để học các hành vi đối thoại cơ bản của con người.

Trên đây, là một số phương pháp gợi ý được sử dụng rộng rãi để tạo lập Chatbot. Chatbot được dự đoán là sẽ càng ngày càng phổ biến bởi bất kỳ doanh nghiệp nào cũng muốn tối ưu trải nghiệm người dùng. Trong tương lai, Chatbot được kỳ vọng sẽ cải tiến nhiều hơn để phù hợp với tâm lý của người dùng, và sự phong phú của ngôn ngữ. Bạn có quan tâm đến chatbot và muốn phát triển chúng hay không, để lại comment thảo luận với VinBigdata nhé!

Chatbot hiện nay đang là một sản phẩm công nghệ nổi bật, được VinBigdata đầu tư phát triển với những tính năng vượt trội: Xử lý đa ngôn ngữ; tích hợp đa kênh, dễ dàng kết nối với các nền tảng hội thoại có sẵn chỉ bằng vài thao tác; nền tảng điện toán đám mây cho phép mở rộng quy mô không giới hạn, với khả năng xử lý hơn 10,000 yêu cầu cùng lúc; kinh nghiệm đa ngành đã được ứng dụng với hệ sinh thái Vingroup; giao diện thân thiện, đơn giản và dễ sử dụng.Tìm hiểu thêm về Chatbot VinBigdata: Tại đây 

Tư liệu tham khảo: TopBots