Chương 1: GIỚI THIỆU ĐỀ TÀI: Giới thiệu về bài toán, những vấn đề còn tồn đọng và mục tiêu, giới hạn, ý nghĩa của luận văn. • Chương 2: CƠ SỞ KIẾN THỨC: Nói về cơ sở kiến thức cơ bản đã được sử dụng trong luận văn như Transformer, XLM-RoBERTa, BM25, Llama Parse for extracting PDF, Machine Translation và các phương thức dùng để đánh giá hiệu suất của mô hình. • Chương 3: CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN: Phân tích, đánh giá các công trình nghiên cứu đã có của các tác giả liên quan mật thiết đến bài toán xác định câu trả lời từ văn bản tương ứng. • Chương 4: TRÌNH BÀY, ĐÁNH GIÁ, BÀN LUẬN KẾT QUẢ: Trình bày về thí nghiệm đã tiến hành với phương pháp BM25 dùng để tổng hợp và trích xuất đoạn văn phù hợp với câu hỏi đầu vào và đưa ra câu trả lời tương ứng với nó trong cả tiếng Anh và tiếng Việt với bài toán xác định câu trả lời từ văn bản.
• Chương 5: KẾT LUẬN VÀ HƯỚNG MỞ RỘNG ĐỀ TÀI: Tổng kết các đóng góp của luận văn, các vấn đề còn tồn tại và nói về hướng nghiên cứu trong tương lai. 6 Chương 2 Cơ sở kiến thức 2.1 Mô hình truy vấn đoạn văn bản liên quan 2.1 BM25 Với những việc xây dựng hệ thống trả lời câu hỏi sẽ dựa trên các văn bản học vụ liên quan được cung cấp. Hệ thống cần phải có bộ phận để truy xuất đoạn văn có nội dung liên quan nhất đến những từ khóa có trọng số cao trong câu hỏi đầu vào. Phương pháp có tên Best Match (BM25), tên gọi thông thường là "Okapi BM25", vì lí do ban đầu công thức được sử dụng trong hệ thống Okapi, được phát triển và sáng lập ở London vào những năm 1980 và 1990.
Đây là phương pháp xếp hạng được sử dụng rộng rãi và mang lại hiệu quả tìm kiếm cao cho đến hiện nay vẫn còn được sử dụng như là một công cụ tìm kiếm của các trang web. Những hàm xếp hạng này là các phương pháp tích hợp để dùng trong Machine Learning. Với sự kết hợp cùng với phương pháp Term Frequency - Inverse Document Frequency (TF/IDF) là phương pháp đánh trọng số của một từ trong văn bản thu được qua thống kê thể hiện mức độ quan trọng của từ này trong một văn bản, mà bản thân văn bản đang xét nằm trong một tập hợp các văn bản. Mô hình truy vấn đoạn văn bản liên quan với sự phát triển của BM25 dựa trên nền tảng của TF/IDF.
Trong đó với BM25 để tạo ra các vec tơ của câu hỏi và đoạn văn. Đối với các từ khóa cần đem đi truy vấn được đánh những trọng số đại diện cho mức độ quan trọng bằng phương pháp TF/IDF 7 Với, IDF ∗ ( f req ∗ (k1 + 1)) BM25 = f ieldLength (2.1) ( f req + k1 ∗ (1 − b + b ∗ ( avgFieldLength ))) Trong đó, • k: là hằng số và thường là 1 và 2. • freq: frequency của term trong document.75 là thông số mặc định. b mang ý nghĩa là càng về 0 thì độ ảnh hưởng của document length càng nhỏ, và ngược lại, b càng lớn thì độ ảnh hưởng của document Length càng lớn.5 – N là số lượng tài liệu trong tập dữ liệu.
– n(qi ) là số lượng tài liệu chứa từ qi (từ trong truy vấn) trong tập dữ liệu. Với phương pháp BM25 kết hợp với phương pháp TF/IDF thì chỉ tập trung vào tần suất xuất hiện của các từ khóa nào nhiều nhất để đưa ra kết quả mà bỏ qua ngữ nghĩa trong từ viễn cảnh cụ thể của các từ khóa đấy. Do vậy, phương pháp Sentence Embedding kết hợp với kĩ thuật tìm kiếm độ tương đồng (simi- larity search) được xem như là một kĩ thuật thay thế hiệu quả khi thay vì chỉ tính toán tần suất xuất hiện của chúng mà thay thế bằng các vector với nhiều không gian thể hiện tính ngữ nghĩa hơn. Từ đó làm cơ thể cho công việc tìm vector cho ngữ nghĩa gần nhau nhất áp dụng công thức tính khoảng cách của Cosine Distance để xem độ tương đồng giữa vector câu hỏi cho đến các vector nội dung đã được biến đổi và lưu trữ trong cơ sở dữ liệu.2 Truy vấn và tìm kiếm văn bản sử dụng công nghệ FAISS kết hợp với Sentence Embedding FAISS (Facebook AI Similarity Search) là một thư viện mã nguồn mở được phát triển bởi Facebook AI Research (FAIR) để thực hiện tìm kiếm tương tự 8 trên dữ liệu lớn.
Được giới thiệu lần đầu vào năm 2017, FAISS đã trở thành một công cụ phổ biến trong cộng đồng AI và ML cho các ứng dụng như tìm kiếm ảnh, dữ liệu văn bản, và xử lý ngôn ngữ tự nhiên. Với công nghệ được ứng dụng cho việc xử lí các loại tài liệu hoặc dữ liệu mà không chỉ bao gồm văn bản mà còn bao gồm nhiều loại phương tiện khác nhau, chẳng hạn như hình ảnh, âm thanh, video, hoặc các định dạng phương tiện khác. Điều này có thể bao gồm các tài liệu như trang web, bài báo trực tuyến, sách điện tử có chứa hình ảnh và video, bản ghi âm của các buổi diễn thuyết, và nhiều hơn nữa. Trong lĩnh vực truy xuất thông tin, việc xử lý dữ liệu nhiều loại phương tiện khác nhau thường phức tạp hơn so với truy xuất văn bản đơn thuần, vì nó đòi hỏi phải áp dụng những kĩ thuật chuyên biệt để xử lý các loại dữ liệu đa dạng và có cấu trúc khác nhau.
Đối với truy xuất các loại dữ liệu đa phương tiện này, các thuật toán và kỹ thuật phức tạp thường được sử dụng để trích xuất và phân tích thông tin từ các phương tiện không chỉ là văn bản. Một số tính năng chính và nổi trội của công trình nghiên cứu FAISS như sau: • Tìm kiếm tương tự nhanh chóng: FAISS cung cấp các thuật toán tìm kiếm hiệu quả và được tối ưu hóa để xử lý cả dữ liệu lớn. • Hỗ trợ các loại dữ liệu đa dạng: FAISS có thể được sử dụng cho nhiều loại dữ liệu khác nhau như vectơ, văn bản, âm thanh, và hình ảnh. • Tích hợp linh hoạt: FAISS được thiết kế để dễ dàng tích hợp vào các ứng dụng hiện có, bao gồm các ngôn ngữ lập trình phổ biến như Python và C++.
• Tối ưu hóa phần cứng: FAISS hỗ trợ tối ưu hóa để sử dụng hiệu quả các tài nguyên phần cứng như GPU để tăng tốc độ tính toán. Trong đề tài luận văn này, FAISS được ứng dụng như tìm gợi ý nội dung văn bản liên quan từ việc tính toán tìm kiếm gần như giống nhau. Mặc khác đối với các hệ thống có yêu cầu về tính toán và hiệu suất cao, FAISS đã chứng minh được tính linh hoạt và hiệu quả của nó.3 Tìm kiếm độ tương đồng (Similarity Search) Similarity search trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP) ám chỉ việc tìm kiếm các văn bản hoặc các phần của văn bản mà có sự tương đồng về nội dung hoặc ý nghĩa với một câu hoặc một tập hợp các câu được cung cấp. Các kỹ thuật similarity search trong NLP thường sử dụng các biểu diễn vector của văn bản để đo lường sự tương đồng.
Các phương pháp phổ biến bao gồm: • Word Embeddings: Sử dụng các biểu diễn vector như Word2Vec, GloVe hoặc FastText để biểu diễn từng từ trong câu dưới dạng vector. Sau đó, có thể tính toán sự tương đồng giữa hai câu bằng cách tính toán khoảng cách cosine hoặc khoảng cách Euclidean giữa các vector từ. • Sentence Embeddings: Biểu diễn các câu hoặc đoạn văn bản dưới dạng các vector. Các phương pháp như Universal Sentence Encoder, BERT, và các biến thể của Transformer cho phép biểu diễn các câu dưới dạng vector có chứa thông tin ngữ cảnh rất cao.
Các phương pháp này thường tạo ra các vector có chiều cao và độ chính xác cao hơn so với biểu diễn từ đơn giản. • Phương pháp dựa trên mô hình ngôn ngữ: Một số mô hình ngôn ngữ như Doc2Vec hoặc các mô hình nâng cao hơn có thể được sử dụng để biểu diễn toàn bộ văn bản dưới dạng một vector duy nhất, cũng được sử dụng trong quá trình similarity search. Khi có các biểu diễn vector cho các đoạn văn bản, similarity search được thực hiện bằng cách tính toán khoảng cách (cosine similarity, Euclidean distance, etc. Các kỹ thuật như index structures và hashing cũng có thể được áp dụng để tăng tốc độ tìm kiếm trong các bộ dữ liệu lớn.
Trong luận văn này, tôi sẽ triển khai công nghệ về sentence embedding - một khía cạnh cơ bản của học máy cho phép chúng ta biểu diễn dữ liệu văn bản dưới dạng mà máy tính có thể hiểu và thực thi tính toán được. Cơ bản, embeddings hoạt động dưới cơ chế là biểu diễn vector của văn bản, chuyển đổi các cấu trúc phức tạp của từ, câu và đoạn văn thành định dạng số các vecto mà máy tính có thể xử lý. 10 Embeddings là chuỗi các số biểu thị thông tin văn bản. Do đó, việc hiểu và làm việc với một vector embedding trong khi máy tính xử lý nó một cách dễ dàng.
Tồn tại một loạt các kỹ thuật để tạo ra embeddings từ văn bản. Các phương pháp đáng chú ý bao gồm các kỹ thuật biến đổi TF-IDF, Word2Vec, Glove và BERT, một số các phương pháp khác. Trong thế giới hiện đại của học máy và sự phát triển mạnh mẽ của các kỹ thuật trong học sâu, các sentence embedding đã trở nên phổ biến hơn so với embeddings từ. Các sentence embeddings này, đại diện cho bản chất của một đoạn văn, có thể được thu được từ các mô hình transformer được huấn luyện với bộ dữ liệu khổng lồ trước đó như cơ bản dùng cho tiếng anh đó là "all-MiniLM-L6-V2" và đối với luận văn này thì sử dụng sentence embeddings dành cho tiếng Việt từ mô hình đã được huấn luyện với bộ dữ liệu từ nhiều nguồn đa dạng khác nhau như: • MS Macro (đã được dịch sang tiếng Việt) khoảng 4GB • SQuAD v2 (đã được dịch sang tiếng Việt) khoảng 30 MB • the Legal Text Retrieval Zalo 2021 challenge trích xuất chỉ 80% tập huấn luyện + 20% cho tập kiểm chứng khoảng 200 MB Kết quả đạt được huấn luyện trên cấu trúc mô hình gốc là phobert-base-v2.
Dưới đây là kết quả được trích dẫn từ bài báo gốc của Sentence Embedding có tên là vietnamese-bi-encoder. Với thời gian huấn luyện tầm khoảng 1h / epoch Bảng 2.1: Kết quả thu được khi kiểm thử trên 20% còn lại của tập the Legal Text Retrieval Zalo 2021 challenge Pretrained Training Acc@1 Acc@10 Acc@100 Pre@10 MRR@10 Models Datasets Vietnamese- - 32.30 SBert PhoBERT- MS 47.37 base-v2 MACRO MS MACRO PhoBERT- + SQuAD 73.