Chương 1 – Tổng quan về lĩnh vực nghiên cứu Sơ lược tổng quan về vấn đề nghiên cứu trên phương diện tổng quan nhất, nêu ra mục tiêu, phương pháp nghiên cứu và bố cục luận văn. Chương 2 – Cơ sở lý thuyết và các nghiên cứu liên quan Giới thiệu tổng quan về xử lí ngôn ngữ tự nhiên, về Word2Vector; giới thiệu về mạng nơ-ron nhân tạo, các mô hình mạng nơ-ron cải tiến là cơ sở của mạng học sâu. Nghiên cứu các mô hình phát sinh văn bản trong hệ thống đối 2 thoại, giới thiệu về mô hình đối thoại seq2seq, kĩ thuật attention và các vấn đề chung có thể gặp phải khi xây dựng mô hình đối thoại; Trình bày cơ bản về hệ thống trả lời tự động, cùng với tình hình nghiên cứu trong nước và ngoài nước Chương 3 – Mô hình đề xuất Chương 4 – Thực nghiệm Giới thiệu bộ dữ liệu, quá trình xử lí dữ liệu, phần thực nghiệm và đánh giá thực nghiệm theo hai hướng dựa trên bộ dữ liệu có sẵn và bộ dữ liệu thu thập được. Chương 5 – Kết luận và hướng phát triển 3 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN 2.
Xử lý ngôn ngữ tự nhiên Xử lý ngôn ngữ tự nhiên (gọi tắt NLP - Natural Language Processing) là các kĩ thuật, phương pháp nhằm hỗ trợ cho các hệ thống máy tính hiểu và xử lý, nhận dạng ngôn ngữ tự nhiên như tiếng Việt, tiếng Anh. Dịch máy, rút trích thông tin và truy hồi thông tin là một trong những nghiên cứu của xử lý ngôn ngữ tự nhiên.1: Mô hình xử lý ngôn ngữ tự nhiên Dịch máy tự động là một trong những nghiên cứu đã được phát triển nhiều năm qua và đã đạt được những kết quả tốt trong thời gian gần đây nhờ áp dụng các phương pháp học sâu thông minh. Có nhiều phương pháp tiếp cận giải quyết bài toán này như: dịch máy trên cơ sở luật, dịch máy thống kê và dịch máy trên cơ sở ví dụ,…. + Phương pháp dịch máy trên cơ sở luật được xây dựng dựa trên hệ thống luật cú pháp, ngữ nghĩa và phải có một từ điển khá đầy đủ thông tin cho các mục từ như ngữ nghĩa, ngữ dụng,….
+ Dịch máy bằng phương pháp thống kê (SMT - Statistical Machine Translation – SMT) được xây dựng dựa trên các kết quả thống kê từ kho ngữ liệu song ngữ. Kết quả trung gian của phương pháp dịch máy này là các bảng thống kê về các từ, ngữ và các qui luật chuyển đổi mà không cần đến tri thức ngôn ngữ. Với 4 phương pháp này, ngữ liệu càng lớn và có chất lượng tốt thì hệ dịch sẽ càng hiệu quả. Phương pháp dịch thống kê hiện tại đang cải thiện được chất lượng dịch bằng các mô hình huấn luyện không chỉ dựa trên cơ sở các từ đơn mà còn dựa trên các cụm từ.
+ Phương pháp dịch máy trên cơ sở ví dụ truyền thống sử dụng các câu mẫu hay còn gọi là câu ví dụ. Các câu này được lưu trữ trên cơ sở dữ liệu với đầy đủ các thông tin như câu chú giải, các liên kết giữa các thành phần của hai câu thuộc hai ngôn ngữ. Phương pháp này cũng cần tập luật cú pháp của các câu ngôn ngữ nguồn để xây dựng cơ sở dữ liệu cho mẫu câu ví dụ. Sự khác biệt từ sẽ được xác định thông qua từ điển phân lớp, câu nhập sẽ được phân tích bằng tập luật cú pháp và xác định cặp câu cú pháp của câu nguồn và câu đích.
Một tiếp cận khác với phương pháp dịch máy trên cơ sở ví dụ là xây dựng ngân hàng mẫu câu ví dụ. Câu nguồn chỉ cần so trùng từng phần với mẫu câu ví dụ bằng các giải thuật phù hợp (có sử dụng từ đồng nghĩa trong từ điển phân lớp). + Dịch máy dựa trên ngữ liệu hiện nay cũng đang được áp dụng vào nhiều hệ thống dịch tự động, việc lấy đúng được cặp ánh xạ đích và nguồn một cách tự động là một yêu cầu thiết yếu cho các phương pháp dịch dựa trên ngữ liệu. Rút trích thông tin (IE - Information extraction) là một nhánh nghiên cứu khác thiên về rút trích thông tin ngữ nghĩa có cấu trúc một cách tự động từ các nguồn dữ liệu không có cấu trúc hay bán cấu trúc (unstructured/semi-structure) ví dụ như các tài liệu văn bản hay các trang web.
Có nhiều hướng tiếp cận cơ bản trong việc rút trích thông tin như sau: + Hướng tiếp cận dựa trên Rule-based: sử dụng các pattern khớp nối các thông tin trong văn bản, trong một vài lĩnh vực cụ thể thì cách tiếp cận này cho hiệu quả tương đối cao nhưng cần phải mất nhiều thời gian và quan trọng là phải có kiến thức nghiệp vụ, chuyên gia mới xây dựng được. + Hướng tiếp cận dựa trên máy học thống kê (statistical machine learning): sử dụng phương pháp tách nhỏ các bài toán thành các bài toán nhỏ hơn để xử lý. + Hướng tiếp cận đang sử dụng hiện nay đó là việc cố gắng rút trích tất cả các quan hệ thực thể được cho là hữu ích đã được thu thập. Khi đó đầu ra của hệ thống sẽ bao gồm tên của quan hệ và mô tả chi tiết của quan hệ thực thể đó.
Truy hồi thông tin (Information Retrieval - IR) là cách tổ chức trình bày, lưu trữ và truy cập các mục thông tin. Truy hồi thông tin là hoạt động thu thập tài nguyên 5 hệ thống thông tin có liên quan đến nhu cầu thông tin từ tập hợp các nguồn thông tin tin cậy. Các tìm kiếm có thể dựa trên tìm kiếm toàn văn bản hoặc các chỉ mục. Truy hồi thông tin là nhánh nghiên cứu nhằm tìm kiếm thông tin trong các tài liệu, siêu dữ liệu mô tả dữ liệu và cơ sở dữ liệu văn bản, hình ảnh hoặc âm thanh.
Một tính năng khác của truy xuất thông tin là nó không thực sự nạp tài liệu, mà có thể chỉ thông báo cho người dùng về sự tồn tại và nơi lưu trữ các tài liệu liên quan đến câu truy vấn. Có hai hướng tiếp cận cơ bản trong truy hồi thông tin: + Hướng tiếp cận dựa trên chỉ mục theo cặp từ: Trong hướng tiếp cận này, xem mỗi cặp từ liên tiếp nhau trong nhóm tài liệu, văn bản là một cặp từ. Khi đó, mỗi cặp từ được xem là một chỉ mục. Hướng tiếp cận này không phải là một giải pháp chuẩn, tuy nhiên hướng tiếp cận này có thể kết hợp với các hướng tiếp cận khác.
+ Hướng tiếp cận dựa trên chỉ mục theo vị trí: Ứng với mỗi từ chỉ mục, lưu lại vị trí mà nó lưu trữ theo cách thức sau: <từ chỉ mục: số tài liệu chứa từ chỉ mục; văn bản 1: vị trí 1, vị trí 2, ……; văn bản 2: vị trí 1’, vị trí 2’, ……; ……> Quá trình xử lý truy vấn được thực hiện bằng cách trộn tất cả các danh sách <Văn bản: vị trí> để liệt kê tất cả các vị trí chứa nhóm từ. Các ứng dụng cơ bản của NLP: Chế tạo các hệ thống Máy dịch (Google translation, xử lý văn bản và ngôn ngữ, tìm kiếm thông tin, chiết suất thông tin, tóm tắt văn bản, phân loại văn bản, data mining, web mining. Word2vector Thông thường, cách truyền thống để biểu diễn một từ là dùng one-hot vector, khi đó độ lớn véc-tơ sẽ đúng bằng số lượng từ vựng có trong văn bản.2: Biểu diễn véc-tơ one-hot Vấn đề ở đây là làm thế nào để thể hiện mối quan hệ giữa các từ và tính tương đồng giữa chúng trong văn bản. Do đó, Word2Vector là giải pháp để giải quyết vấn đề này.
Word2Vector là cách chúng ta biểu diễn 1 từ trong từ điển thành một vector trọng số, có số chiều cụ thể. Word2Vector được giới thiệu bởi một nhóm các nhà nghiên cứu tại Google vào năm 2013. Word2Vector sử dụng các kỹ thuật dựa trên mạng thần kinh và học tập sâu để chuyển đổi các từ thành các vectơ tương ứng theo về mặt ngữ nghĩa gần nhau trong không gian N chiều.3: Mô hình Word2vector Hai trong số mô hình word2vector được áp dụng để biểu diễn các từ là Skip- gram và Continuous Bag of Words (CBOW): + Mô hình Skip-gram[16]: Đầu vào (input) là từ cần tìm mối quan hệ, đầu ra (output) là các từ có quan hệ gần nhất với từ được đưa ở đầu vào.4: Mô hình Skip-gram + Mô hình Continuous Bag of Words (CBOW)[15]: Mô hình này ngược lại với mô hình Skip-gram, có nghĩa đầu ra (output) là từ gần với nội dung đầu vào Hình 2.5: Mô hình Continuous Bag of Words Mô hình huấn luyện dựa trên word2vector được thực hiện với 2 cách tính toán cơ bản là: sigmoid probability hoặc dự đoán probability của từ.6: Mô hình huấn luyện dựa trên word2vector 2. Học sâu - Deep Learning Học máy (Machine Learning) là một lĩnh vực của trí tuệ nhân tạo (Artificial Intelligence - AI).
Các thuật toán học máy cho phép máy tính đào tạo đầu vào dữ liệu và sử dụng phân tích thống kê để đưa ra các giá trị nằm trong một phạm vi cụ thể. Ngày nay, những người sử dụng công nghệ đều được hưởng lợi từ việc học máy. Công nghệ nhận diện khuôn mặt giúp người dùng gắn thẻ và chia sẻ ảnh của bạn bè. Công nghệ nhận dạng ký tự quang học (OCR) chuyển đổi hình ảnh văn bản sang dạng di chuyển.
Khi mà khả năng tính toán của máy tính được nâng lên một tầm cao mới cùng với lượng dữ liệu khổng lồ được thu thập, Machine Learning đã tiến thêm một bước dài và Deep Learning (DL) một lĩnh vực mới được ra đời. Deep Learning được lấy cảm hứng từ mạng nơ-ron sinh học và bao gồm nhiều lớp trong mạng nơ-ron nhân tạo được tạo thành từ phần cứng và GPU. Deep Learning sử dụng một tầng các lớp đơn vị xử lý phi tuyến để trích xuất hoặc chuyển đổi các tính năng (hoặc biểu diễn) của dữ liệu. Đầu ra của một lớp phục vụ như là đầu vào của lớp kế tiếp.
Deep learning tập trung giải quyết các vấn đề liên quan đến mạng thần kinh nhân tạo nhằm nâng cấp các công nghệ như nhận diện giọng nói, dịch tự động (machine translation), xử lý ngôn ngữ tự nhiên… 9 Hình 2.7: Mô hình Deep Learning1 Trong số các thuật toán học máy hiện đang được sử dụng và phát triển, học sâu thu hút được nhiều dữ liệu nhất và có thể đánh bại con người trong một số nhiệm vụ nhận thức. Do những thuộc tính này, học tập sâu đã trở thành phương pháp tiếp cận có tiềm năng đáng kể trong lĩnh vực trí tuệ nhân tạo.