Các ứng dụng trợ lý ảo nổi bật
Các ứng dụng trợ lý ảo phổ biến nhất hiện nay có Alexa của Amazon, Siri của Apple, Cortana của Microsoft, Google Assistant của Google và Bixby của Samsung... Alexa là ứng dụng điều khiển bằng giọng nói của Amazon, được công bố vào tháng 11 năm 2014, được cài đặt trên khoảng 100 triệu thiết bị thông minh, bao gồm cả thiết bị của Amazon và các thiết bị dùng hệ điều hành IOS và Android. Siri là một trong những ứng dụng trợ lý ảo được ra mắt sớm nhất, từ năm 2011, và tương đối quen thuộc với các tín đồ của trái táo cắn dở, được cài đặt trên các thiết bị Iphone, Ipad, Ipod, máy tính Mac, đồng hồ Apple, Apple TV...
Cortana của Miscrosoft ra mắt năm 2015, được thiết kế để “học” từ khẩu lệnh của người dùng, nhằm tăng cường trải nghiệm cá nhân, chủ yếu trên các thiết bị dùng hệ điều hành Windows. Google Assistant được công bố trong hội nghị các nhà phát triển của Google năm 2016, tập trung vào hội thoại hai chiều, ban đầu chỉ có trên hệ điều hành Android, được phát triển thêm trên IOS vào cuối năm 2017, và hiện có mặt trên hơn 400 triệu thiết bị toàn cầu. Bixby của Samsung được giới thiệu tháng 3 năm 2017, trong sự kiện ra mắt các mẫu điện thoại S8, S8+ và máy tính bảng Tab A, nổi bật với chức năng nhận diện hình ảnh, cho người dùng biết họ đang đứng trước thấy danh lam thắng cảnh nào, báo giá cho một món đồ muốn mua, hoặc khả năng phiên dịch vượt trội.
Vậy đã bao giờ chúng ta thắc mắc, đằng sau những ứng dụng trợ lý ảo đó là công nghệ gì và chúng phức tạp đến mức nào?
Công nghệ nhận dạng giọng nói
Nói một cách đơn giản, nhận dạng giọng nói giúp chuyển đổi từ tín hiệu âm thanh sang văn bản, ví dụ như khi chúng ta nói “Này Siri”, thì ngay lập tức, một hệ thống nhận dạng giọng nói của Apple sẽ được kích hoạt và chuyển âm thanh này sang văn bản tương ứng “Này, Siri”. Đây là một công việc rất thách thức, bởi lẽ con người có âm vực và giọng nói rất khác nhau, không chỉ giữa các nước, các châu lục, mà còn khác nhau theo cả vùng miền nữa. Người nói nhanh, người nói chậm, giọng nam khác giọng nữ, người già khác với thanh niên và trẻ nhỏ...
Để các ứng dụng trợ lý ảo có thể nhận dạng chính xác giọng nói, các kỹ sư đã phải xây dựng mô hình học máy (machine learning) với lượng dữ liệu khổng lồ, phong phú về âm vực để “huấn luyện” cho hệ thống có thể phân tích được nhiều giọng nói khác nhau. Trong những năm gần đây, kỹ thuật học sâu (deep learning) với mạng nơ-ron nhân tạo đã đem lại những tiến bộ đáng kể cho nhận dạng giọng nói, làm tỷ lệ nhận dạng từ nhầm giảm xuống chỉ còn dưới 10%, thông qua hệ thống phần cứng mạnh cho phép thực hiện rất nhiều thuật toán song song trên lượng lớn dữ liệu.
Sau khi chuyển từ giọng nói sang dạng văn bản, việc tiếp theo sẽ cần hiểu xem nội dung của văn bản đó là gì, với công nghệ xử lý ngôn ngữ tự nhiên (NLP). Một câu văn bản khi đó sẽ được tách ra từng từ riêng rẽ, sau đó lại ghép theo nhóm 2 từ liên tiếp, 3 từ liên tiếp… để hệ thống hiểu được câu nói theo đúng ngữ cảnh. Khi chủ nhân yêu cầu “Mai gọi tôi dậy lúc 7 giờ nhé”, trợ lý ảo sẽ nhận dạng các từ khóa như “gọi” và “dậy” đi cùng với nhau để hiểu rằng, nó sẽ phải đặt chuông báo thức chứ không phải tự động gọi điện vào lúc 7 giờ ngày hôm sau. Để trợ lý ảo hiểu được mong muốn trên của con người một cách chính xác, hệ thống cũng phải nhận được rất nhiều dạng câu nói với cùng mục đích để “học”.
Ngoài ra, một công nghệ tối tân ít được biết đến hơn là tạo ra ngôn ngữ tự nhiên (NLG), với trí tuệ nhân tạo, cho phép tạo ra văn bản hoặc giọng nói sử dụng các dữ liệu được định nghĩa sẵn. Các ứng dụng như Google Home và Alexa của Amazon sử dụng NLG để đặt câu hỏi. Chẳng hạn khi trợ lý ảo nhận được yêu cầu “mai gọi tôi dậy sớm nhé”, sau khi phân tích, nó sẽ nhận ra bị thiếu thông tin, “sớm” là mấy giờ, và có thể hỏi lại “sớm là mấy giờ? 6 giờ nhé” chẳng hạn.
Kỹ thuật học máy và học sâu cũng được sử dụng để giúp cho trợ lý ảo có khả năng phán đoán, bổ sung thông tin nếu như yêu cầu của người dùng chưa đầy đủ, ví dụ, khi được ra lệnh “gọi tôi dậy lúc 7 giờ sáng” vào buổi tối, Google Assistant có thể hiểu được là nó sẽ phải đặt chuông báo thức vào 7 giờ sáng ngày hôm sau, dù trong yêu cầu không hề nhắc đến.
Để làm cho trợ lý ảo gần gũi, thân thiện hơn, các nhà phát triển cũng ứng dụng mô hình suy luận cảm xúc (HEIM), với kỹ thuật phân bổ Dirichlet tiềm ẩn (LDA) và bộ nhớ ngắn hạn - dài hạn (LSTM) để mô hình hóa các đặc tính âm thanh kết hợp với đặc tính văn bản, nhằm nhận dạng được cảm xúc của con người khi nói. Điều này lý giải tại sao, trợ lý ảo biết cách an ủi hay đùa cợt với con người khi họ có sự thay đổi trong giọng nói.
Hệ thống hỏi đáp (QA)
Không chỉ đơn thuần hiểu và đáp ứng mệnh lệnh của con người, trợ lý ảo còn được xây dựng nhằm trả lời các câu hỏi mang tính mở nhiều hơn, với các kỹ thuật tìm kiếm thông tin, trình bày thông tin, giải thích tự động và học máy.
Điểm khác biệt lớn nhất giữa một cỗ máy hỏi đáp và tìm kiếm thông tin là ở chỗ, hệ thống tìm kiếm thông tin nhận dạng được từ khóa yêu cầu và trả lại danh sách các văn bản tương ứng, sắp xếp theo thứ tự từ cao đến thấp về độ phù hợp của văn bản đó.
Còn hệ thống hỏi đáp nhận dạng câu hỏi theo ngôn ngữ tự nhiên, cố gắng hiểu câu hỏi càng nhiều càng tốt và đem lại câu trả lời chính xác và duy nhất.
Các kỹ sư IBM khi tạo ra Watson đã sử dụng hơn 100 kỹ thuật khác nhau để phân tích yêu cầu, xác định nguồn thông tin, tìm kiếm và tạo ra các giả thiết, tìm kiếm và đánh giá chứng cứ, để tổng hợp, xếp hạng các giả định đó. Đó là phần mềm DeepQA, được các chuyên gia đánh giá là một trong những hệ thống hỏi đáp mạnh nhất hiện nay.
Hệ thống máy tính xử lý song song và hiệu ứng đám mây
Mặc dù các ứng dụng trợ lý ảo được cài đặt trên thiết bị cầm tay, nhưng toàn bộ công nghệ lõi lại nằm ở các trung tâm dữ liệu của Apple, Google, Amazon, Microsoft… Không tin ư, bạn hãy thử ra lệnh cho Siri khi không kết nối Internet mà xem, chắc chắn, nó sẽ “ngơ ngác” không hiểu gì ngay. Để xử lý hàng chục triệu, hàng trăm triệu yêu cầu song song, tại trung tâm dữ liệu cần có cụm hàng trăm máy tính cấu hình cực mạnh, với vài nghìn tiến trình điều khiển và khoảng vài chục terabyte RAM.