CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG TRỢ LÝ ẢO 1. Giới thiệu về hệ thống trợ lý ảo Siri của Apple [1], Google Now của Google [2] và Cortana của Microsoft [3] đại diện cho một lớp dịch vụ web mới nổi gọi là các Ứng dụng Hỗ trợ Cá nhân Thông minh (Intelligent Personal Assistants - IPA). IPA là một ứng dụng sử dụng các yếu tố đầu vào như tiếng nói, hình ảnh và thông tin theo ngữ cảnh của người dùng để hỗ trợ bằng cách trả lời các câu hỏi bằng ngôn ngữ tự nhiên, đưa ra khuyến nghị và hành động. Các IPA đang nổi lên là một trong những dịch vụ Internet phát triển nhanh nhất vì gần đây họ đã triển khai trên các nền tảng nổi tiếng như iOS, Android và Windows Phone, làm cho chúng phổ biến trên các thiết bị di động trên toàn thế giới.
Sử dụng IPAs đang gia tăng nhanh chóng với các sản phẩm mới nhất trong các công nghệ có thể đeo như đồng hồ thông minh và kính thông minh. Sự tăng trưởng thị phần này, cùng với việc thiết kế các sản phẩm đeo có thể phụ thuộc nhiều vào đầu vào hình ảnh và giọng nói, cho thấy nhu cầu sử dụng dịch vụ IPA đang tăng lên nhanh chóng. IPA khác với nhiều khối lượng công việc dịch vụ web hiện có trong các máy tính có quy mô lớn (WSCs). Ngược lại với các truy vấn của các dịch vụ trung tâm duyệt web, luồng truy vấn IPA thông qua các thành phần phần mềm thúc đẩy những tiến bộ gần đây trong nhận dạng giọng nói, xử lý ngôn ngữ tự nhiên và tầm nhìn máy tính để cung cấp cho người dùng một câu hỏi dựa trên câu hỏi và hệ thống trả lời.
Do cường độ tính toán của các thành phần này và các mô hình dữ liệu dựa trên mô hình mà họ sử dụng, các nhà cung cấp dịch vụ yêu cầu tính toán trong các nền tảng trung tâm dữ liệu lớn thay cho việc tính toán trên các thiết bị di động. Cách tiếp cận giảm tải này được sử dụng bởi cả Siri của Apple lẫn Google Now của Google khi họ gửi các bản ghi nén lệnh truy vấn bằng giọng nói tới các trung tâm dữ liệu để nhận dạng tiếng nói và khai thác ngữ nghĩa. Sự tương tác giữa thiết bị thông minh với con người không còn nằm ở việc gõ văn bản mà giờ là cả hình ảnh lẫn giọng nói, để đáp ứng được nhu cầu ngày càng cao của trải nghiệm người dùng, các hãng công nghệ thông tin lớn đang ngày càng đầu tư mạnh vào hệ thống trợ lý thông minh ảo. Cấu trúc hệ thống trợ lý ảo Để hiểu một hệ thống trợ lý ảo hoạt động như thế nào, cần phải hiểu được cấu trúc và cấu tạo của một hệ thống trợ lý ảo.
Sơ đồ của một hệ thống trợ lý ảo: Hình 1.1: Sơ đồ hệ thống trợ lý ảo Dựa trên hình 1.1 [7], có thể thấy cấu tạo của một hệ thống trợ lý ảo bao gồm 2 khối: khối người dung (user) có đầu vào là ảnh, giọng nói, văn bản và khối xử lý dữ liệu (server) gồm các khối xử lý hình ảnh, âm thanh, văn bản, khối quản lý hội thoại. Truy vấn bắt đầu bằng giọng nói, văn bản, hình ảnh của người dung thiết bị thông minh như điện thoại, thiết bị đeo, kính thông minh. Các file nén hình ảnh, âm thanh hoặc văn bản được gửi tới máy chủ để xử lý. Với giọng nói được xử lý bằng giao diện ASR (Automatic Speech Recognition) chuyển câu hỏi nói của người dùng sang văn bản tương đương bằng mô hình thống kê.
Sau đó văn bản đi qua trình phân loại truy vấn (Query Classifier - QC) quyết định xem bài phát biểu có phải là hành động hay câu hỏi không. Nếu đó là hành động, lệnh sẽ được gửi lại cho thiết bị di động để thực hiện. Nếu không, thì hệ thống sẽ hiểu là câu hỏi bằng văn bản thuần tuý. Sử dụng các kỹ thuật xử lý ngôn ngữ tự nhiên NLP (Natural Language Processing), dịch vụ câu hỏi trả lời QA (Question-Answering) sẽ trích xuất thông tin từ đầu vào, tìm kiếm cơ sở dữ liệu của nó và chọn câu trả lời tốt nhất để trả lại cho người dùng.
Nếu là một hình ảnh đi kèm với đầu vào giọng nói, hệ thống sẽ sử dụng kỹ thuật thị giác máy tính để cố gắng phù hợp với hình ảnh đầu vào cơ sở dữ liệu hình ảnh của mình và trả về thông tin có liên quan với hình ảnh đó. Nhận dạng giọng nói tự động (ASR - Automatic Speech Recognition) Khối nhận dạng giọng nói tự động là khối đầu vào giúp người dùng tương tác với trợ lý ảo bằng giọng nói. Các đầu vào cho ASR [9] là các vector đặc trưng đại diện cho đoạn nói, được tạo ra bời quá trình tiền xử lý nhanh và trích xuất đặc tính của bài phát 3 biểu. Thành phần của ASR dựa vào sự kết hợp của mô hình Hidden Markov (HMM) và một mô hình hỗ hợp Gaussian (GMM) hoặc một mạng nơ-ron sâu (DNN).
HMM xây dựng một cây các trạng thái cho khung lời nói hiện tại sử dụng vector tính năng đầu vào. GMM hoặc DNN đánh giá xác suất của sự chuyển đổi trạng thái trong cây, và thuật toán Viterbi sau đó tìm kiếm con đường có nhiều khả năng nhất dựa trên các điểm này. Đường dẫn có xác suất cao nhất thể hiện kết xuất văn bản cuối cùng. Điểm GMM đánh giá HMM trạng thái chuyển tiếp bằng cách ánh xạ một vector đối tượng đầu vào vào một hệ toạ độ đa chiều và lặp lại điểm số các đặc tính chống lại mô hình âm thanh được đào tạo.
DNN điểm số sử dụng xác suất từ một mạng thần kinh. Độ sâu của DNN được xác định bởi số lớp ẩn mà số điểm cho một chuyển tiếp đi qua mạng. Trong luận văn sẽ nghiên cứu chủ yếu về DNN vì nó có độ chính xác cao hơn.2: Sơ đồ xử lý âm thanh 1. Xử lý hình ảnh IMM (Image Matching) Khối xử lý hình ảnh IMM là khối giúp người dùng tương tác với hệ thống trợ lý ảo thông qua hình ảnh.
Khi người dùng muốn hỏi trợ lý ảo về một hình nào đó chẳng hạn bông hoa hồng thì hệ thống trợ lý ảo sẽ xử lý dữ liệu hình ảnh đầu vào và cung cấp đầu ra là thông tin về hình ảnh đó. Từ dữ liệu hình ảnh đưa vào hệ thống sẽ cố gắng tìm kiếm hình ảnh trong cơ sở dữ liệu trước khi chế biến và trả về thông tinh về kết hợp hình ảnh. Cơ sở dữ liệu được sử dụng trong hệ thống là cơ sở dữ liệu Mobile Visual Search. Các điểm chính của hình ảnh được rút ra lần đầu tiên từ hình ảnh đầu vào sử dụng thuật toán SURF [7].
Trong tính năng chiết xuất (FE), hình ảnh được lấy mẫu và xáo lộn nhiều lần để tìm các điểm thú vị ở các quy mô khác nhau. Khi ngưỡng đáp ứng lưu trữ các điểm chính của hình ảnh, các điểm then chốt được chuyển tới bộ phận mô tả tính năng (FD), nơi chúng được chỉ định một vector định hướng và các điểm chính được định hướng tương tự được nhóm thành các bộ mô tả tính năng. Quá trình này làm giảm sự biến đổi 4 giữa các hình ảnh đầu vào, tăng cơ hội tìm kiếm sự kết hợp chính xác. Bộ mô tả từ hình ảnh đầu vào được đối sánh với bộ mô tả nhóm trước đại diện cho các hình ảnh cơ sở dữ liệu bằng cách sử dụng tìm kiếm gần nhất (ANN), hình ảnh cơ sở dữ liệu với số lượng lớn nhất của cơ sở được trả lại.3: Sơ đồ xử lý hình ảnh 1.
Quản lý câu hỏi trả lời QA (Question-Answering) 1. Cấu tạo của quản lý câu hỏi Khối quản lý câu hỏi trả lời là khối xử lý dữ liệu tương tác ở trong hệ thống trợ lý ảo. khi người dùng hỏi hệ thống trợ lý ảo thì nó sẽ lấy dữ liệu từ khối QA để đưa ra câu trả lời phù hợp. Văn bản được xuất ra từ ASR hoặc nhập trực tiếp được chuyển đến OpenEphyra (OE) sử dụng ba quy trình cốt lõi đẻ trích xuất thông tin văn bản, bắt nguồn từ, kết hợp cụm từ thông dụng, và gắn thẻ theo từng thành phần của văn bản [7].
Hình dưới mô tả sơ đồ OE kết hợp thành phần này, tạo ra các truy vấn tìm kiếm web và lọc các kết quả trả về. Thuật toán Porter (stemmer) phơi bày gốc của một từ bằng cách kết hợp và cắt ngắn các từ thông dụng. OE cũng sử dụng một bộ mẫu biểu thức chính quy để đối sánh các từ truy vấn chung (như cái gì, ở đâu …) và lọc bất kỳ ký tự đặc biệt nào trong đầu vào. Trình phân loại ngẫu nhiên (CRF) lấy một câu, vị trí của mỗi từ trong câu và nhãn các từ hiện tại và trước đó làm đầu vào để đưa ra các dự đoán về phần nói của từng từ của một truy vấn đầu vào.
Mỗi truy vấn đầu vào được phân tích cú pháp bằng cách sử dụng các thành phần nói trên để tạo truy vấn cho công cụ tìm kiếm. Tiếp theo, các bộ lọc sử dụng các kỹ thuật tương tự được sử dụng để lấy thông tin từ các tài liệu trả về; tài liệu với điểm tổng thể cao nhất sau khi tổng hợp số điểm được trả về là câu trả lời hay nhất.4: Quản lý câu hỏi trả lời 1. Xử lý ngôn ngữ tự nhiên trong Quản lý câu hỏi trả lời Theo Wikipedia, NLP (Natural Language Processing) là một nhánh của trí tuệ nhân tạo tập trung vào các ứng dụng trên ngôn ngữ của con người. Trong trí tuệ nhân tạo thì xử lý ngôn ngữ tự nhiên là một trong những phần khó nhất vì nó liên quan đến việc phải hiểu ý nghĩa ngôn ngữ - công cụ hoàn hảo nhất của tư duy và giao tiếp.
Theo cách hiểu thì có thể hiểu xử lý ngôn ngữ tự nhiên [6] là một phạm vi lý thuyết các kỹ thuật tính toán để phân tích và mô tả các văn bản xảy ra tự nhiên ở một hoặc nhiều mức độ phân tích ngôn ngữ theo yêu cầu của con người mong muốn. Mục tiêu của NLP là nhằm thể hiện ý nghĩa thực sự và ý định của người dùng khi thao tác dữ liệu. Điển hình ứng dụng NLP: - Giải thích văn bản đầu vào - Dịch văn bản sang một ngôn ngữ khác - Trả lời các câu hỏi về nội dung của một văn bản - Thu thập các suy luận từ văn bản 1. Các mức của NLP - Ngữ âm học: mức này liên quan tới việc giải thích các âm thanh nói trong và giữa các từ.