Trong đề tài này tiếp cận đến vấn đề của việc đọc hiểu toàn diệntừ các nguồn văn bản về các nội dung liên quan cập nhật về học vụcủa trường đại học Bách Khoa Thành phố Hồ Chí Minh qua hằ
Giới thiệu đề tài
Tổng quan đề tài: Đọc và hiểu tự động (Machine Reading Comprehension - MRC) là một trong những chủ đề nghiên cứu phổ biến và quan tâm bậc nhất trong lĩnh vực xử lý ngôn ngữ tự nhiên Trong đó máy móc cần phải giải quyết một tác vụ đó là hiểu nội dung của đoạn văn bản và sau đó đưa ra các câu trả lời phù hợp với những câu hỏi cần giải đáp tương ứng.
Trong những năm trở lại đây, MRC đang dần trở thành công nghệ vô cùng quan trọng trong những ứng dụng về xử lý ngôn ngữ tự nhiên như là các công cụ tìm kiếm và thiết bị hỗ trợ thông minh (Alexa, Google Assitant, Siri, và ChatGPT) Tuy nhiên, việc ứng dụng hệ thống đọc hiểu tự động trong lĩnh vực học vụ gồm nhiều văn bản, công văn chính quy từ nhà trường đưa ra cũng là một trong số chủ đề tương đối quan trọng trong lĩnh vực này, nhưng số lượng nghiên cứu tập trung vào lĩnh vực này bị hạn chế vì thường chỉ vài văn bản được công bố qua các năm và chỉ thay đổi hoặc cập nhật thêm thông tin.
Thay thế bằng một thuật ngữ tổng quan hơn trong đề tài MRC là hỏi đáp (Question Answering), cũng thuộc về nhiệm vụ xử lý ngôn ngữ tự nhiên Trong
5 năm trở lại đây, lĩnh vực trí tuệ nhân tạo đã có nhiều thành tựu to lớn khi đã áp dụng thành công nhiều kỹ thuật hiện đại bậc nhất (state of the art) để tăng độ chính xác cũng như là tính tự nhiên trong những câu trả lời trong hệ thống hỏi đáp tự động Ví dụ nổi bật nhất có thể đề cập đến là ChatGPT của Google Thực trạng hiện nay, hầu hết các công trình nghiên cứu thường phân bổ và ứng dụng rộng rãi bằng ngôn ngữ là tiếng Anh Do vậy, nghiên cứu này sẽ tập trung vào cải thiện hệ thống đọc hiểu tự dộng (MRC) cho bộ ngôn ngữ tiếng Việt song song đấy vẫn có thể phản hồi tốt hơn trên ngôn ngữ tiếng Anh và đặc biệt là được ứng dụng trong hệ thống hỗ trợ giải đáp thắc mắc về các văn bản học vụ của nhà trường ban hành Đặc biệt là có thể giải đáp 24/7, bất kì khi nào học viên, sinh viên cần.
Một hệ thống hỏi đáp cơ bản là tìm câu trả lời trong đoạn văn bản với trọng trách thuộc về bộ phần tìm kiếm (còn gọi là retriver) Đầu ra của MRC là đưa ra thông tin của vị trí bắt đầu và kết thúc của câu trả lời đúng nhất có trong đoạn văn.
Hình 1.1: Ví dụ về bài toán hỏi đáp tự động
Mặc dù các hệ thống hỏi đáp tự động đã đạt được thành tựu đáng kể và nổi trội về những tính năng trong cuộc sống thường ngày, tuy nhiên tác vụ MRC vẫn còn tồn tại nhiều thách thức khi đưa vào ứng dụng thực tế nói chung và cụ thể trong học vụ nói riêng như:
• Mô hình huấn luyện: đa phần các công trình nghiên cứu thành công với các mô hình đạt được hiệu suất cao được huấn luyện trên tập dữ liệu tiếng Anh là chủ yếu, việc kế thừa ứng dụng vào ngôn ngữ khác, cụ thể là tiếng Việt yêu cầu việc chuẩn bị tập dữ liệu và huấn luyện mô hình này trên một tập dữ liệu mới và đặc biệt là với nguồn tài nguyên về dữ liệu còn hạn chế trong lĩnh vực học vụ bằng tiếng Việt là chính.
• Phạm vi: tương tự như những thách thức về mặt dữ liệu, các mô hình phần lớn đều được triển khai để xác định các thực thể trong một lĩnh vực cụ thể và nhất định, khi ứng dụng sang một lĩnh vực khác, mô hình cần được học những kiến thức trên lĩnh vực cụ thể.
Khi ứng dụng các mô hình MRC vào các bài toán thực tế với ngôn ngữ tiếng Việt đa phần đều gặp phải các thách thức như trên, điều này khiến cho các hệ thống xử lý ngôn ngữ tự nhiên với tiếng Việt có hiệu suất kém hơn hoặc tốn kém nguồn lực cho việc chuẩn bị dữ liệu trong quá trình huấn luyện đặc biệt là trong lĩnh vực về học vụ cho tiếng Việt Bên cạnh đó dữ liệu bằng tiếng Anh trong lĩnh vực này hoàn toàn không có sẵn.
Bài toán về đọc hiểu tự độngđược biết đến như là công nghệ tổng hợp các nguồn dữ liệu đầu vào từ các văn bản hoặc có thể là hình ảnh, audio để tạo nên một hệ cơ sở dữ liệu Khi câu hỏi của người dùng được xem như là câu truy vấn cần đi tìm kiếm trong hệ cơ sở này Tiếp theo đó sẽ trích xuất câu trả lời phù hợp từ những đoạn văn vừa tìm kiếm được dựa vào nội dung câu hỏi đầu vào.
Từ những khó khăn, thách thức trong thực tế và tính khả dụng của hệ thống đọc hiểu tự động từ đó luận văn quyết định tiến hành nghiên cứu đề tài "Xây dựng hệ thống hỗ trợ giải đáp học vụ đa ngôn ngữ (tiếng Việt và tiếngAnh)"ứng dụng công nghệ động hiểu tự động.
Mục tiêu của đề tài
Đề tài này hướng đến mục tiêu xây dựng thành công hệ thống bằng việc ứng dụng phương pháp đọc hiểu tự động (Machine Reading Comprehension) để giải đáp các vấn đề liên quan đến học vụ bằng cả tiếng Việt và tiếng Anh nhằm giải quyết những thắc mắc đối với những văn bản ban hành từ nhà trường cho học viên sinh viên mọi lúc mọi nơi mỗi khi cần Từ những mục tiêu yêu cầu ban đầu đề tài sẽ tiến hành triển khai như sau:
• Tìm kiếm, tổng hợp và thu thập dữ liệu phù hợp với mục đích của đề tài Dữ liệu sẽ phải đáp ứng các tiêu chí: đa ngôn ngữ cho tiếng Việt và tiếng Anh,bao quát nội dung trong văn bản liên quan đến học vụ và đủ số lượng cần thiết để xây dựng, đánh giá và ứng dụng.
• Tìm hiểu các phương pháp hiện có theo hướng tiếp cận các thành phần bên trong của một hệ thống hoàn chỉnh trong MRC.
• Lập kế hoạch để tạo ra các bộ câu hỏivàtrả lờitương ứng cho từng đoạn văn trong học vụ bằng cả hai ngôn ngữ nghiên cứu.
• Xây dựng kế hoạch hiện thực, mô hình, huấn luyện, kiểm thử và giao diện trải nghiệm.
• Đánh giá và so sánh các hướng thực nghiệm tiếp cận được.
Ý nghĩa của đề tài
Thời gian gần đây, các hệ thống về bài toán xác định câu trả lời từ văn bản ngày càng đạt được hiệu suất vượt bật trong các tác vụ nhờ vào sự phát triển của học sâu Tuy nhiên khi ứng dụng vào các lĩnh vực đặc thù, đặc biệt là trong xử lý các văn bản học vụ trong trường đại học, thì hiệu suất của mô hình bị suy giảm do không có nhiều văn bản học vụ, thậm chí còn được cập nhật thay đổi qua các năm và khó khăn trong việc tổng hợp và trích xuất để tìm ra được câu trả lời thích ứng với những thắc mắc dành cho sinh viên cũng như cán bộ công nhân viên trong nhà trường Vì vậy, đề tài chọn đề tài này với mong muốn:
• Đóng góp vào lĩnh vực nghiên cứu: Luận văn cung cấp được bộ dữ liệu học vụ chuyên biệt, các phương pháp, mô hình và công nghệ mới trong việc phát triển phương pháp có khả năng đọc hiểu và phân tích văn bản một cách tự động và toàn diện Điều này giúp mở rộng kiến thức và hiểu biết trong lĩnh vực xử lý ngôn ngữ tự nhiên và trí tuệ nhân tạo.
• Cải thiện hiệu quả công việc: Bằng cách tạo ra các hệ thống và công nghệ mới để máy tính có khả năng đọc hiểu và tổng hợp thông tin từ văn bản, luận văn giúp cải thiện hiệu quả và hiệu suất trong việc xử lý và sử dụng thông tin từ các nguồn văn bản học vụ đa dạng.
• Ứng dụng thực tiễn: Kết quả từ luận văn có thể được áp dụng vào nhiều lĩnh vực thực tiễn như trích xuất thông tin từ các tài liệu học tập, tự động tóm tắt nội dung tin tức mới phổ biến từ nhà trường, và nhiều ứng dụng khác trong tự động hóa các quy trình về học tập.
• Tiềm năng phát triển: Nghiên cứu về MRC không chỉ tạo ra các kết quả cụ thể mà còn mở ra tiềm năng phát triển cho các công nghệ và ứng dụng trong tương lai, khi mà máy tính có khả năng hiểu và tương tác với văn bản một cách tự động và thông minh.
Trong đề tài này sẽ được phát triển theo hướng xây dựng hệ thống trả lời câu hỏi dựa trên các tài liệu văn bản được cung cấp Hệ thống hỏi đáp tự động sẽ phân tích câu hỏi, trích chọn các từ khoá có trọng số cao hoặc biết đổi thành các vector đa chiều mang ngữ nghĩa và vị trí cú pháp của các từ ở trong câu hỏi, dựa vào kỹ thuật này để truy vấn đoạn văn bản có độ liên quan cao nhất trong tập dữ liệu thu thập được Áp dụng các mô hình deep learning để trích xuất ra câu trả lời tương ứng trong đoạn văn bản Tóm lại, luận văn về MRC không chỉ đóng góp vào lĩnh vực nghiên cứu mà còn mang lại những ứng dụng thực tiễn và tiềm năng phát triển lớn có thể tích hợp với một số công nghệ tự động và số hóa trong những công trình nghiên cứu tương lai.
Mô hình truy vấn đoạn văn bản liên quan
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
(f req+k 1 ∗(1−b+b∗( f ieldLength avgFieldLength))) (2.1) Trong đó,
• k: là hằng số và thường là 1 và 2.
• freq: frequency của term trong document.
• b: 0.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.
– 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.
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
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ự 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ó.
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.) giữa các vector 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ý.
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
Datasets Acc@1 Acc@10 Acc@100 Pre@10 MRR@10
Các mô hình này tạo ra các embeddings với kích thước cố định, thường là
768 chiều, cho một đoạn văn cụ thể.
Từ những nghiên cứu cơ sở, đề tài tiếp tục tìm hiểu và phát triển thêm về các kỹ thuật làm sao để lưu trữ các vector đã được embeddings này trong một kho lưu trữ vector cho các nhiệm vụ tìm kiếm đoạn văn với nội dung tương tự cần đi truy vấn.
Vector stores
Một cơ sở lưu trữ dữ liệu vector (vector stores) là một cơ sở dữ liệu chuyên biệt được thiết kế để lưu trữ các đại diện đa chiều (high-dimensional) sau khi đã chuyển đổi bằng sentence embedding của các loại dữ liệu đa dạng, bao gồm âm thanh, video, hình ảnh, văn bản và nhiều hơn nữa.
Một trong những chức năng cốt lõi và khai thác trong luận văn này là khả năng tìm kiếm hiệu quả các vector trong kho lưu trữ mà gần giống với một vector truy vấn cụ thể.
Kho lưu trữ vector tối ưu hóa quy trình lưu trữ các embeddings và thực hiện tìm kiếm tương tự giữa các vector này với nhau, giúp đơn giản hóa quản lý và truy xuất các biểu diễn dữ liệu high-dimensional.
Trong phần vector embeddings, tìm kiếm tương tự liên quan đến việc định lượng sự tương quan giữa hai hoặc nhiều embeddings Thông thường, điều này được thực hiện bằng tính toán sự tương đồng sử dụng các phép đo khoảng cách khác nhau Một số phép đo khoảng cách phổ biến và được áp dụng rộng rãi bao gồm khoảng cách Euclidean, khoảng cách Manhattan và khoảng cách cosine, trong số các phương pháp khác Những phương pháp này giúp chúng ta đánh giá mức độ tương đồng hoặc khác biệt giữa các vector, tạo điều kiện cho việc tìm kiếm tương tự hiệu quả trong dữ liệu.
Như một ví dụ, khi xác định sự tương đồng giữa hai điểm trên đồ thị, khoảng cách Cosine thường được sử dụng Công thức tính như sau: cosine distance(a,b) =1− aãb
• a.b là tích vô hướng của a và b
• |a| và |b| lần lượt là độ lớn (chuẩn) của a và b
Kết quả của phép tính biểu diễn khoảng cách có thể được hiểu như đo sự khác biệt giữa các vector như phần bù của độ tương đồng cosine Giá trị càng cao thì sự khác biệt càng lớn.
Trong tìm kiếm tương tự, các embeddings được miêu tả trong một không gian đa chiều, với mỗi bản ghi đóng vai trò là một điểm dữ liệu.
Mô hình Transformer
Mô hìnhTransformer[5] được xây dựng để trích xuất đặc trưng của đối tượng (của câu hoặc đoạn văn, ) dựa vào cơ chế Self-Attention từ đó mã hóa các thông tin và ngữ cảnh có trong đối tượng Kiến trúc của mô hình Transformer gồm có 2 bộ phận mã hóa đó là Encoder - Decoder Nhiệm vụ của Encoder là thực hiện đọc dữ liệu đầu vào và Decoder thì đưa ra câu trả lời hoặc dự đoán.
• Encoder: là sự sắp xếp chồng lên nhau từ 6 tầng xác định Mỗi tầng bao gồm
2 tầng con (sub-layer) ở bên trong Tầng con đầu tiên gọi là multi-head self- attention Lớp con thứ 2 là lớp fully-connected feed-forward Điểm đặc trưng của encoder là các tầng con có sự kết nối phần dư ngay sau tầng chuẩn hóa. Kiến trúc này thường hưởng những điểm mạnh từ mạng Resnet trong mạng tích chập.
• Decoder: cũng tương tự như Encoder Decoder có 6 tầng sắp xếp chồng lên nhau Kiến trúc tương tự như các tầng con ở Encoder nhưng có thêm 1 tầng con thể hiện phân phối attention ở vị trí đầu tiên Tầng này không gì khác so với tầng multi-head self-attention ngoại trừ được điều chỉnh để không đưa các từ trong tương lai vào attention Tại bước thứ i của decoder chúng ta chỉ biết được các từ ở vị trí nhỏ hơn i nên việc điều chỉnh đảm bảo attention chỉ áp dụng cho những từ nhỏ hơn vị trí thứ i Cơ chế residual cũng được áp dụng tương tự như trong Encoder.
• Positional Encoding: được kết hợp cộng vào các đầu vào của encoder và de- coder nhằm đưa thêm yếu tố về mặt thời gian điều này cực kì quan trong khi xử lý về ngôn ngữ tự nhiên các ngữ nghĩa của các từ trong câu đều bổ trợ lẫn nhau Chúng làm tăng độ chuẩn xác Ở đây thực hiện các phép toán vecto để mã hóa vị trí của từ trong câu với vecto biểu diễn từ.
Hình 2.1: Mô hình căn bản của Transformer[5]
Khi ứng dụng multi-head attention, cho phép cơ chế attention được kích hoạt tính toán một cách độc lập, song song và từ đó có những kết nối với nhau để lưu trữ thông tin attention của từng thành phần khác nhau ở trong chuỗi Cơ bản với mỗi attention có 3 thành phần: bộ truy vấn (Q), khóa (K), giá trị (V) Với multi-head chúng có H bộ QKV phụ và thực hiện phép tính scale dot-product của khác vector này lại với nhau rồi kết hợp các head với một ma trận trọng số cuối cùng làW 0
Chi tiết hơn, công thức tính toán của Multihead-attention:
MultiHead(Q,K,V) =concatenate(head 1 ,head 2 , ,head h )W 0 (2.3) Trong đó, head i (Q,K,V) =Attention(Q i ,K i ,V i ) (2.4) Để đầu ra có cùng kích thước với ma trận đầu vào chúng ta chỉ cần nhân với ma trậnW 0 chiều rộng bằng với chiều rộng của ma trận đầu vào. Ở tầng Fully-connected feed-forward là một mạng nơ-ron tuyến tính với hàm kích hoạt là ReLU Có công thức như sau:
Trong đóW i+1 , W i là các ma trận trọng số Nhiệm vụ của Positional encod- ing là lưu trữ và ghi nhớ các thông tin có tính nối tiếp nhau như là vị trí các từ trong câu hoặc nếu trong hình ảnh thì là vị trí của khung hình trong chuỗi hình ảnh hay video Công thức tính toán của Positional encoding như sau:
PE(pos,2i) =sin(pos/10000 2i/d model ) (2.6)
PE(pos,2i+1) =cos(pos/10000 2i/d model ) (2.7) Với:
• pos: là vị trí của từ trong câu hoặc khung hình trong chuỗi hình ảnh hay video.
• i: là kích thước của vector embedding
Tóm lại, Transformer hỗ trợ trong việc tính toán song song giữa các từ trong câu thay vì như trước đây phải xử lý tuần tự từng phần như cấu trúc mạng truyền thống như LSTM Giúp cho cải thiện đề hiệu quả tính toán của hệ thống lên đáng kể.
Các phương thức để đánh giá độ chính xác và hiệu suất từ các mô hình
F1 score
F1 score [13] được tính bằng mean của cả precision và recall Chỉ số F1 có khoảng giá trị (0, 1], điểm càng cao cho thấy model có độ chính xác cao.
Exact Match
Exact Match (EM) cũng được dùng để đánh giá độ chính xác của đầu ra từ mô hình đọc hiểu tự động Được tính bằng câu trả lời mẫu và câu trả lời dự đoán sẽ được so sánh xem giống hệt nhau hay không EM có 2 giá trị là 0 có nghĩa là không giống hệt nhau còn 1 là giống hệt nhau Giá trị EM cuối cùng là trung bình cộng của tất cả các giá trị EM của từng cặp câu hỏi và trả lời.
Bilingual Evaluation Understudy (BLEU)
Bilingual Evaluation Understudy (BLEU)là phương pháp đánh giá một bản dịch dựa trên các bản dịch tham khảo [14] Với nhiều tác vụ khác nhau, BLEU được thiết kế để sử dụng làm phép đo đánh giá trong dịch máy (Machine Trans- lation), nhưng thực tế, phép đo này cũng được sử dụng trong các tác vụ khác như tóm tắt văn bản, nhận dạng giọng nói, sinh nhãn ảnh v v Bên cạnh đó phép đo này hoàn toàn có thể sử dụng để đánh giá chất lượng bản dịch Điều kiện tiên quyết để có thể sử dụng BLEU là bạn phải có một (hoặc nhiều) câu mẫu Đối với bài toán dịch máy, câu mẫu chính là câu đầu ra của cặp câu trong tập dữ liệu. BLEU đánh giá một câu thông qua việc so khớp câu đó với các câu mẫu và cho thang điểm từ 0 (sai lệch tuyệt đối) đến 1 (khớp tuyệt đối) Công thức tính điểm BLEU được mô tả có 2 thành phần chính:
• Precision (P): Đây là tỉ lệ số lượng các cụm từ (n-grams) trong bản dịch máy mà cũng xuất hiện trong bản dịch tham chiếu, chia cho tổng số lượng các cụm từ trong bản dịch máy Precision (P): Đây là tỉ lệ số lượng các cụm từ (n-grams) trong bản dịch máy mà cũng xuất hiện trong bản dịch tham chiếu, chia cho tổng số lượng các cụm từ trong bản dịch máy Việc chọn n phụ thuộc vào ngôn ngữ, nhiệm vụ và mục tiêu cụ thể.
– clipping(count ngram ) đại diện cho số lượng tối đa của các cụm từ n-gram trong bản dịch máy.
– count ngram đại diện cho số lượng các n-gramtrong bản dịch máy.
• Brevity Penalty (BP): Điều này áp dụng khi độ dài của bản dịch máy ngắn hơn so với độ dài trung bình của các bản dịch tham chiếu Nó được tính như sau:
– clà số lượng các từ trong bản dịch máy.
– r là số lượng các từ trong bản dịch tham chiếu mà có độ dài gần nhất với bản dịch máy.
• Cuối cùng, BLEU score được tính bằng cách nhân Precision với Brevity Penalty, và sử dụng giá trị logarithm cơ sở 10 của kết quả:
– Nlà độ dài tối đa của cácn-grams.
– W n là trọng số cho mỗi n-grams.
– P n là Precision cho mỗin-grams.
Công trình nghiên cứu liên quan
Hỏi đáp tự động là một tác vụ đã được phát triển và xuất hiện từ lâu, mặt khác cũng đã và đang đạt được rất nhiều thành tựu trong những công trình nghiên cứu đến từ nhiều hướng tiếp cận khác nhau:
Hướng tiếp cận của mô hình BERT
Hệ thống hỏi đáp tự động xây dựng trên cấu trúc của mô hình Bidirectional Encoder Representations from Transformers (BERT) [6] được huấn luyện trên các nguồn dữ liệu tiếng Anh như English Wiki và Book Corpus Không giống như các mô hình đại diện ngôn ngữ trước khi BERT được công bố, BERT được ra đời với tác vụ là cải thiện thêm về hiệu suất của mô hình, học ra các vector đại diện theo ngữ cảnh hai chiều của những từ ngữ không được gắn nhãn (từ trái qua phải và từ phải qua trái) trong tất cả các tầng cấu trúc Từ đó, mô hình state- of-the-art BERT được huấn luyện sẵn được sử dụng để chuyển giao sang các bài toán khác trong lĩnh vực xử lý ngôn ngữ tự nhiên như là Question Answering and Language Inference mà không cần những điều chỉnh đáng kể về cấu trúc cho những tác vụ cụ thể khác nhau.
Trong bài báo nghiên cứu về BERT, một kỹ thuật huấn luyện mới có tên là Masked Language Model (MLM) [6] cho phép huấn luyện hai chiều trong các mô hình mà trước đây không thể Một mô hình ngôn ngữ được huấn luyện trước không thể hiểu được mối quan hệ giữa các câu hoặc các từ, điều này rất quan trọng đối với các nhiệm vụ ngôn ngữ như trả lời câu hỏi và suy luận ngôn ngữ tự nhiên Do đó, các nhà nghiên cứu đã huấn luyện Next Sentence Prediction (NSP) [6] được tạo ra từ bất cứ tập huấn luyện riêng rẽ Theo các nhà nghiên cứu thường sẽ chọn 15% các từ đã được tokenize trong suốt quá trình huấn luyện và công việc của BERT là dự đoán những từ đã bị ẩn đi trước đó.
Hình 3.1: Ví dụ Masked Language Model (MLM) [6]
Ví dụ cấu trúc dữ liệu cho phương pháp MLM trong huấn luyện BERT như sau:
• Đầu vào (inputs): the man went to the [MASK1] he bought a [MASK2] of milk.
• Nhãn(labels): [MASK1] = store; [MASK2] = gallon.
Và cấu trúc dữ liệu cho phương pháp NSP trong huấn luyện BERT như sau:
• Câu A (Sentence A): the man went to the store.
• Câu B (Sentence B): he bought a gallon of milk.
BERT đã thu được kết quả tối ưu mới nhất cho 11 nhiệm vụ xử lý ngôn ngữ tự nhiên, bao gồm việc đẩy kết quả của nhiệm vụ GLUE benchmark lên 80.4 %(cải tiến thêm 7.6%) và SQuAD v.1.1 với F1 score trên tập test đạt 93.2%(cải tiến thêm 1.5%), tốt hơn con người 2%
Những hệ thống này sẽ có f1 score thấp do từ vựng thường giới hạn trong lĩnh vực giải đáp học vụ tự động hay chỉ phục vụ cho tiếng Anh Trong khi đó đề tài muốn hỗ trợ cho đa ngôn ngữ là cả tiếng Anh lẫn tiếng Việt
Hình 3.2: Kiến trúc cơ bản của mô hình BERT [6]
Hướng tiếp cận mô hình PhoBERT
Hướng tiếp cận PhoBERT[4] là một hướng tiếp cận BERT dùng cho tiếng Việt nhắm tới việc cung cấp một mô hình cơ sở cho các nghiên cứu về tiếng Việt Vì được phát triển trên nền tảng của BERT, hay nói cách khác là dùng mô hình đã được xây dựng BERT và huấn luyện trên tập dữ liệu 20 GB bằng tiếng Việt: 1GB Vietnamese Wiki và 19GB News chúng ta có thể quy đổi ra thành
145 triệu câu Cũng có hai phiên bản như BERT làbasevàlargeđược phân loại dựa trên kích thước của cấu trúc và trọng số của mô hình Tuy nhiên, vì ngữ nghĩa của từ điển tiếng Việt khác biệt so với tiếng Anh nên các nhà phát triển đã sử dụng một bộ tokenizer khác chuyên dụng hơn đó là VNCoreNLP. Đây cũng là một trong số điểm yếu của mô hình này Đó là sẽ làm tăng thêm thời gian xử lý khi ứng dụng trong tiếng Việt.
Và một nhược điểm chung nữa của các mô hình đơn ngôn ngữ đó là out-of- vocabulary (bộ tokenizer khó có thể nhận diện hết từ vựng chứa trong câu hỏi cũng như đoạn văn bản học vụ có khá nhiều từ ngữ chuyên môn thuộc về văn bản chính quy).
Tuy nhiên, mô hình PhoBERT dùng 2 kĩ thuật MLM và NSP khác biệt so với BERT trong quá trình huấn luyện Đó là mỗi một epoch sẽ che ngẫu nhiên khác nhau các từ đã được tokenize ở mỗi câu trong tập dữ liệu Mặc khác không ứng dụng kỹ thuật NSP vì có những nghiên cứu chỉ ra phương pháp này đã không có đạt hiệu quả trong quá trình ứng dụng vào huấn luyện BERT.
Hướng tiếp mô hình RoBERTa
Mô hình A Robustly Optimized BERT Approach (RoBERTa) [3] được xem như là một bước cải tiến mạnh mẽ so với BERT Nhờ vào việc loại bỏ NSP trong quá trình huấn luyện và đưa ra MLM thay đổi theo thời gian huấn luyện (dy- namic masking), thời gian huấn luyện lâu hơn với các kích thước mỗi batch size trong từng epoch lớn hơn Mô hình RoBERTa được đề xuất để cải tiến độ chính xác của mô hình BERT Tập dữ liệu dành cho huấn luyện là 160 GB trong đó 16GB BookCorpus, (sau khi chọn lọc lại thì còn được 76GB) CommonCrawl- News (CC) bao gồm 63 triệu các bài báo và tin tức bằng tiếng Anh được thu thập từ tháng 9 năm 2016 cho đến tháng 2 năm 2019, 38GB từ OpenWebText và cuối cùng 31GB Stories là một tập con của CC Vì được xây dựng dựa trên cơ sở của BERT nên cũng có 2 loại cấu trúc như hình 2.2
Bên cạnh những điểm cải thiện về mặt kỹ thuật huấn luyện cho RoBERTa nhưng vẫn chỉ sử dụng cho đơn ngữ đó là tiếng Anh Và chúng ta vẫn phải thu thập và bổ sung thêm kiến thức từ các văn bản câu hỏi đáp về học vụ để mô hình này có thể đáp ứng với mục tiêu ban đầu của đề tài.
Hướng tiếp cận mô hình XLM-RoBERTa
Cross-Ligual Language Model - RoBERTa (XLM-RoBERTa) [1] là một mô hình đa ngôn ngữ được sử dụng rộng rãi Nó được huấn luyện trên 2.5TB dữ liệu bằng 100 ngôn ngữ được lọc từ bộ dữ liệu CommonCrawl Kiến trúc mô hình này được phát triển dựa trên mô hình RoBERTa của Facebook được công bố năm 2019 Mô hình này được xem là hiệu suất hơn BERT về mặt đa ngôn ngữ Một trong nhiều lí do nổi trội là được huấn luyện trên 100 loại ngôn ngữ khác nhau Tương tự như những kỹ thuật xây dựng cho quá trình huấn luyện của RoBERTa, dựa vào quá trình loại bỏ NSP và đưa ra MLM thay đổi trong suốt quá trình huấn luyện một cách cơ động hơn.
Cơ sở của mô hình này cũng được phát triển từ nguồn gốc của BERT nên cũng có 2 loại cấu trúc như hình 2.2 Vì là mô hình đã được huấn luyện trên đa ngôn ngữ hay nói cách khác là mô hình đã có những đặc trưng của đa ngôn ngữ đây cũng là cơ sở để đề tài có thể phát triển Bên cạnh đó nguồn dữ liệu của tiếng Việt, đặc biệt là trong lĩnh vực học vụ gần như chưa có trong mô hình đã được huấn luyện Mô hình sẽ được phát triển và bổ sung thêm các đặc trưng về câu hỏi và đoạn văn liên quan đến các vấn đề về học vụ trong tiếng Việt và tiếng Anh.
Bảng 3.1: Bảng tổng hợp thông tin sơ bộ của các mô hình
Wiki + BookCor- pus + Common- Crawl
Một số hướng tiếp cận khác
Với thách thức về việc đa ngôn ngữ, mô hình đa ngôn ngữ XLM-RoBERTa có thể đầu vào là câu hỏi cho cả tiếng Anh và Việt, nhưng mặt khác các văn bản học vụ thì chỉ là tiếng Việt đối với đề tài này Vì vậy, thách thức đặt ra cho đề tài là câu trả lời phải tương ứng với ngôn ngữ của câu hỏi Ví dụ phải nhận diện được câu hỏi là tiếng Anh hay là tiếng Việt ở đây có thể dùng tác vụ khác của XLM-RoBERTa là nhận diện ngôn ngữ vì mô hình này đã học được những đặc trưng của từ 100 ngôn ngữ khác nhau và có độ chính xác cũng khá ấn tượng trong nhiệm vụ này Tuy nhiên, để cải thiện nội dung câu trả lời đưa ra dựa vào cặp câu hỏi và đoạn văn tìm được từ phương pháp FAISS thì cần phải huấn luyện tiếp tục đối với dữ liệu chuyên biệt học vụ kết hợp với khối lượng dữ liệu lớn trước đó để tăng thêm độ chính xác và tự tin cho mỗi thành phần ở câu trả lời.
Từ thách thức là hỗ trợ đa ngôn ngữ và các văn bản học vụ chỉ là tiếng Việt.
Do vậy, một nhiệm vụ cũng vô cùng quan trọng là cần phải nhận diện được ngôn ngữ của câu hỏi đầu vào đang là gì để hỗ trợ cho quyết định có cần dịch thuật nội dung câu trả lời hay không, để phù hợp với nội dung câu hỏi mà người dùng cần giải đáp Một bài toán với tác vụ phân loại các đoạn văn (text classification), quá trình phân loại các đoạn văn bản vào các danh mục hoặc nhóm tương ứng dựa trên nội dung của chúng Điều này thường được thực hiện tự động bằng cách sử dụng các thuật toán máy học và học sâu để phân tích và hiểu văn bản, sau đó gán chúng vào các danh mục đã được xác định trước Các ứng dụng của text classification rất đa dạng, từ phân loại thư rác và tổ chức tài liệu đến phân loại tin tức, phân tích cảm xúc trong các bài đánh giá và cụ thể được triển khai trong nội dung của luận văn này là phân loại câu hỏi đầu vào là tiếng Anh hay tiếng Việt Mô hình được triển khai ở phần này với phần cốt lõi là mô hình transformer XLM-RoBERTa làm cơ sở với gắn thêm một tầng phân loại ở trên (tức là một lớp tuyến tính ở trên đầu ra).
Sau khi nhận diện được ngôn ngữ xong, nếu câu hỏi đầu vào là tiếng Anh thì sẽ dùng thêm một mô hình phụ để dịch thuật câu trả lời được trích xuất từ đoạn văn bản sau khi mô hình XLM-RoBERTa tìm được sao cho phù hợp với ngôn ngữ đầu vào đã nhận diện được đó là mô hình Opus-Machine Translation
(Opus-MT) phát triển trên mô hình của Marina - Neural Machine Translation bằng ngôn ngữ lập trình C++ (Marina-NMT) [10] Đây là một dự án tập trung vào sự phát triển cho máy dịch thuật, có cung cấp mã nguồn mở để điều chỉ tham số của mô hình theo tập dữ liệu nghèo tương ứng với từng lĩnh vực cụ thể. Tuy nhiên, với sự thành công của mô hình EnViT5 được điều chỉnh và finetuned trên hai bộ dữ liệu MTet + phoMT [2], vượt trội hơn so với các kết quả trước đó một cách đáng kể về độ đánh giá BLEU Do vậy, cần phải có một mô hình để dịch thuật từ tiếng Việt sang tiếng Anh tương đương với câu hỏi đầu vào, nhưng sao cho ngữ nghĩa và cấu trúc ngữ pháp chính xác nhất có thể để trách gây khó hiểu và không đem lại được giải đáp dành cho những thắc mắc của người dùng. Tóm lại, tuy với các kết quả vượt bậc và ấn tượng từ những mô hình có sẵn của các công nghiên cứu hiện tại trong bài toán hỏi đáp tự động đa ngôn ngữ trong học vụ, các thách thức vẫn còn tồn tại trong việc ứng dụng những mô hình với các tác vụ về xử lý ngôn ngữ tự nhiên với tiếng Việt và tiếng Anh, khi số lượng đặc trưng trong các tập dữ liệu về học vụ còn hạn chế và rất ít, thì phương pháp bổ sung thêm kiến thức về lĩnh vực học vụ cho những mô hình đã được huấn luyện XLM-RoBERTa và Opus-NMT là một trong những phương pháp phù hợp với thách thức này Bằng những kiến thức tìm hiểu sơ bộ như trên đề tài luận văn tốt nghiệp thạc sĩ này tiến đến triển khai mục tiêu xây dựng hệ thống hỗ trợ giải đáp học vụ đa ngôn ngữ trong văn bản học vụ về tiếng Việt và tiếngAnh.
Trình bày, đánh giá, bàn luận kết quả
Dựa trên cơ sở kiến thức và các công trình đã đạt được kết quả đáng kể, để tài tham khảo và triển khai vào hệ thống hỗ trợ học vụ đa ngôn ngữ trong tiếng Anh và tiếng Việt, mô hình đề xuất bao gồm ba giai đoạn:
• Giai đoạn tổng hợp và xây dựng bộ dữ liệu học vụ chuyên biệt dành cho công tác huấn luyện: gồm tổng hợp các tệp dữ liệu dạng pdf, trích xuất nội dung liên quan đến học vụ, tạo ra cặp các câu hỏi và vị trí trả lời tương ứng với nội dung cần giải đáp, tiền xử lý dữ liệu.
• Giai đoạn huấn luyện các mô hình với các tác vụ như: xây dựng bộ cơ sở dữ liệu lưu trữ các nội dung học vụ đã được biểu diễn nhờ vào phương pháp sentence embedding; kiểm thử từ tập huấn luyện có được ở giai đoạn trước đối với tác dụng: phân loại ngôn ngữ là tiếng Anh hoặc tiếng Việt, mô hình dịch thuật từ tiếng Việt sang tiếng Anh và ngược lại; mô hình XLM-RoBERTa được tiếp tục huấn luyện để bổ sung thêm ngữ nghĩa, từ vựng và trọng số cho ngôn ngữ tiếng Việt ở lĩnh vực học vụ được phát triển từ khối lượng dữ liệu đáng kể ở tiếng Việt vì nếu chỉ xét riêng cho dữ liệu học vụ thì không đủ để cải thiện về tính ngữ nghĩa của nội dung cũng như là số lượng từ vựng tiếng Việt.
• Kết nối từng module riêng lẻ lại thành một hệ thống hoàn chỉnh.
Hình 4.1: Hệ thống hỗ trợ giải đáp học vụ đa ngôn ngữ trong tiếng Anh và tiếng Việt
Tổng hợp và xây dựng bộ dữ liệu học vụ
Xây dựng bộ dữ liệu huấn luyện cho truy vấn đoạn văn bản liên quan 27
• Tổng hợp và thu thập những văn bản chứa các thông tin về học vụ đa số được lưu trữ tệp thuần với định dạng pdf Trích xuất nội dung bên trong tệp pdf thành dạng các đoạn văn bản, từ hoặc chuỗi ký tự một cách tự động mà vẫn đảm bảo được từ ngữ, cú pháp, và cấu trúc các thành phần tiêu đề Từ đó phân tích cú pháp, chia nhỏ và hiểu cú pháp của một câu hoặc văn bản thành các thành phần cú pháp, từ đó có thể hiểu được cấu trúc và ý nghĩa của câu hoặc văn bản đó bằng thư viện parse pdf của langchain.
• Phân tách đoạn văn: Ở dạng đoạn văn dài, áp dụng phương pháp text chunker chia đoạn văn dài thành các đoạn văn nhỏ hơn để việc tìm kiếm nội dung một cách nhanh chóng được gọi là mỗi chunks Với mỗi chunk thường bao gồm một tập hợp các từ hoặc cụm từ liên quan chức năng hoặc ý nghĩa Các chunk có thể được tạo ra dựa trên cú pháp hoặc các quy tắc ngữ cảnh.
• Xử lý dữ liệu: Các chunks đã được phân tách thành từng đoạn thông qua các bước tiền xử lý trước khi đưa vào cho mô hình Gồm bước Hồ Chí Minh khi đứng riêng lẻ làm các từ sẽ không mang lại ý nghĩa nên chúng được tokenize thành Hồ_Chí_Minh công cụ hỗ trợ chuyên biệt để tokenize cho ngôn ngữ tiếng Việt làpyvi ViTokenizer Sau đó, tổng hợp thành một chuỗi danh sách các chunks đã được qua bước tokenizer lại để chuẩn bị cho bước kế tiếp Ở tại công đoạn này đề tài không xét tới việc làm sạch các chunks vì với tính chất là các đoạn văn bản về học vụ cho nên việc đã được kiểm duyệt một cách kỹ càng thông qua nhiều phòng ban chức năng hạn chế tối đa phần sai xót tồn tại.
• Vector Stores: Để chuẩn bị cho công tác lưu trữ, các chunks cần được biểu diễn và chuyển đổi dưới dạng các vector đa chiều trong không gian sử dụng phương pháp Sentence Embedding Các chunks biểu diễn ở 768 chiều không gian được lưu trữ trong cơ sở dữ liệu thuật tiện cho việc truy vấn sau này bằng thư viện của langchain FAISS Các chunks đã được embedding và nén vào 2 tệp dưới định dạng là faiss và pkl, đây là các tệp được dùng để tính toán tìm kiếm độ tương đồng với các câu hỏi đầu vào trong quá trình suy luận(inference)
Xây dựng bộ dữ liệu để huấn luyện cho nhận diện ngôn ngữ
Đề tài dựa vào một tập dữ liệu có sẵn chuyên dùng cho phân loại ngôn ngữ, bao gồm 20 loại ngôn ngữ khác nhau được đánh nhãn thứ tự tương ứng từ 0 đến
19 dùng để đem đi huấn luyện Dữ liệu dùng cho huấn luyện bao gồm 90.000 dòng được phân chia 70.000 dòng cho tập huấn luyện, 10.000 dòng dành cho mỗi tập kiểm thử và tập đánh giá Với độ phân bố đều 5% dữ liệu cho từng loại ngôn ngữ ở mỗi tập training, validation, testing set.
Các loại ngôn ngữ có sẵn trong bộ dữ liệu huấn luyện như arabic (ar), bul- garian (bg), german (de), modern greek (el), english (en), spanish (es), french(fr), hindi (hi), italian (it), japanese (ja), dutch (nl), polish (pl), portuguese (pt),russian (ru), swahili (sw), thai (th), turkish (tr), urdu (ur), vietnamese (vi), and chinese (zh).
Hình 4.2: Mẫu dữ liệu huấn luyện mô hình phân loại ngôn ngữ
Xây dựng bộ dữ liệu huấn luyện cho Question Answering
Với tính đặc thù về số lượng văn bản học vụ ban hành qua các năm và chỉ có thay đổi về một số nội dung cụ thể nên do vậy số lượng từ vựng, ngữ nghĩa sẽ bị hạn chế Từ đó để xây dựng một bộ dữ liệu giàu từ vựng và các cú pháp trong đoạn văn thì luận văn này sẽ kết hợp với một bộ dữ liệu bên ngoài có khối lượng lớn hơn và đa dạng phong phú hơn về ngữ nghĩa của cú pháp cũng như đoạn văn.
Hình 4.3: Cấu trúc của một mẫu dữ liệu danh cho huấn luyện bằng tiếng Việt
Xây dựng thành phần truy vấn văn bản liên quan
BM25
Dụa trên kiến thức đã tìm hiểu, thuật toán BM25 (Best Matching 25) là một trong những phương pháp phổ biến trong tìm kiếm thông tin để xác định độ phù hợp của một đoạn văn với một truy vấn là câu hỏi đầu vào Dưới đây là các bước tiến hành cơ bản của thuật toán BM25:
• Tính toán IDF (Inverse Document Frequency): IDF đo lường tần suất xuất hiện của một từ trong toàn bộ tập các tài liệu Với công thức IDF 2.1
• Tính toán TF (Term Frequency): TF đo lường tần suất xuất hiện của một từ trong một đoạn văn cụ thể Công thức tính TF thường sử dụng 2.1
• Tính toán điểm BM25: Điểm BM25 cho mỗi tài liệu được tính bằng tổng hợp bằng cách tích của hai thành phần TF và IDF vừa tính được.
• Sắp xếp các tài liệu theo điểm BM25: Sau khi tính toán điểm BM25 cho mỗi đoạn văn có nội dung được cho là liên quan trong tập dữ liệu, các đoạn văn này được sắp xếp theo thứ tự giảm dần của điểm BM25 Điều này giúp đoạn văn có điểm cao hơn được xếp trên đầu để hiển thị cho người dùng trước tùy thuộc vào sự lựa chọn hiển thị bao nhiêu đoạn văn liên quan và trả kết quả.
Vector stores
Sau đâu là các bước để khởi tạo cho phần lưu trữ các vector đa chiều biểu diễn nội dung của những đoạn văn nhỏ với những nội dung cần thiết cho dữ liệu học vụ
• Chuẩn bị đoạn văn: Trích xuất thông tin về nội dụng từng phần tương ứng trong tệp pdf thành từng đoạn văn mang nội dung tách biệt rõ ràng giữa các phân mục đã liệt kê sẵn trong dữ liệu học vụ Công đoạn này cực kì quan trọng vì cũng làm cơ sở cho đầu vào của phần mô hình question answering.
• Khởi tạo sentence embedding: Dựa vào mô hình được phát triển từ cấu trúc phobert-base-v2 của trường đại học Bách Khoa Thành phố Hồ Chí Minh là bkai-foundation-models/vietnamese-bi-encoder [15].
• Phương pháp FAISS: Dùng thư viện FAISS được phát triển bởi Langchain để embedding những đoạn văn đã được chuẩn bị.
• Lưu trữ các vector đã được embedding thành các tệp vật lý ở 2 dạng faiss và index để cho quá trình sử dụng suy luận.
• Nạp lại cơ sở dữ liệu là các vector đã được embedding và tiến hành tính toán Similarity Search với top-k là 1 Kết quả trả về cho đoạn văn có cosine distance nhỏ nhất (ngắn nhất) đối với câu hỏi.
Source code 4.1: Đọc dữ liệu
Source code 4.2: Khởi tạo sentence embedding
Source code 4.3: Sử dụng FAISS để embedding các đoạn văn
Source code 4.4: Lưu trữ dưới các tệp vật lý
Source code 4.5: Nạp mô hình và tính toán Similarity Search
Nhận xét và đánh giá
Với phương pháp BM25 chỉ tính toán tần suất xuất hiện của các từ có trong câu Tuy nhiên, thực tế mỗi từ ngữ mang một ý nghĩa khác nhau trong mỗi hoàn cảnh cụ thể Do vậy, ở phương pháp lưu trữ vector kết hợp cùng với phương pháp sentence embedding đã được huấn luyện thì các từ ngữ được biểu diễn thành các vector đa chiều chứa thông tin ngữ nghĩa, cú pháp phù hợp hơn Điều này mang độ hiệu quả cao hơn nếu chỉ phụ thuộc vào tần số mà không chú trọng vào ngữ nghĩa trong xử lý ngôn ngữ tự nhiên.
Luận văn chọn phương pháp Vector stores làm cở sở của quá trình tìm kiếm đoạn văn liên quan đến câu hỏi truy vấn.
Mô hình nhận diện ngôn ngữ
Quá trình huấn luyện
Sau khi đã xây dựng được một bộ dữ liệu cho thành phần nhận diện ngôn ngữ, mô hình được lựa chọn để đảm nhiệm tác vụ này sẽ là XLM-RoBERTa [1] vì đây là mô hình deep learning có những cấu trúc phù hợp cho bài toán nhận diện ngôn ngữ trong văn bản tiếng Việt XLM-RoBERTa là một mô hình được huấn luyện trên một bộ dữ liệu với khối lượng 2.5TB dữ liệu CommonCrawl đã được lọc, chứa thông tin từ 100 ngôn ngữ khác nhau, vì vậy mô hình này có khả năng tổng quát hóa tốt cho đa ngôn ngữ và được huấn luyện lại để phục vụ cho các tác vụ cuối (downstream task) phù hợp với mỗi bài toán khác nhau bằng việc thay thế tầng cuối cùng và chỉ giữ lại thành phần trích xuất đặc trưng. Quy trình huấn luyện lại mô hình XLM-RoBERTa dành cho tác vụ nhận diện ngôn ngữ bao gồm các bước sau:
Hình 4.4: Quy trình huấn luyện pre-trained mô hình XLM-RoBERTa với tác vụ nhận diện ngôn ngữ
• Tiền xử lý (preprocessing): Dữ liệu huấn luyện ở dưới dạng thuần văn bản, để cho máy có thể tính toán được, cần phải mã hóa các văn bản thành các dạng số (index) Khi đó mỗi một từ hoặc ký tự sẽ được đại diện bởi một index.
Sau đó, tương ứng với mỗi một câu sẽ một chuỗi các index, để tăng tốc độ huấn luyện, cần phải gom nhiều câu lại thành từng batch để huấn luyện cùng lúc Vì vậy cần biến đổi các chuỗi index thành các tensor nên cần áp dụng kỹ thuật padding để đưa các chuỗi index về cùng chiều dài Nếu chuỗi dài hơn
128 token, các token dư ra sẽ bị cắt bỏ, nếu chuỗi có kích thước ngắn hơn, ta sẽ thêm vào token đặc biệt để bù vào cho đủ 128 token Kể cả nhãn cũng cần phải mã hóa từ dạng chữ thành dạng index để phục vụ cho phần tính toán phân loại.
• Embedding: Sau đó các token được mã hóa thành các vector Các vector này chứa các tính chất ẩn cho từng token và thể hiện các đặc trưng ngữ nghĩa, ngữ cảnh và mối quan hệ giữa các token Ngoài embedding các token, mô hình còn positional embedding giữa các token nhằm ghi nhớ vị trí của các từ ngữ cũng như là mối liên hệ giữa các token trong câu hoặc đoạn văn phục vụ cho tầng encoder ở phía sau.
• Encoder: Kiến trúc XLM-RoBERTa theo mô hình encoder và decoder, với encoder đóng vai trò mã hóa đoạn văn bản đầu vào thành vector embedding chứa thông tin ngữ cảnh của văn bản và decoder dựa vào vector embedding này để giải mã thông tin thành một dạng đầu ra khác, chẳng hạn dịch văn bản giữa các ngôn ngữ Khi huấn luyện lại mô hình, phần decoder được thay thế bằng tầng linear dành cho tác vụ phân loại, chỉ giữ lại phần encoder để lấy được vector embedding để tính toán, xử lý cho các nhiệm vụ khác Ở luận văn này, tầng encoder của mô hình XLM-RoBERTa bao gồm 12 lớp self-attention xếp chổng lên nhau dựa vào mô hình Bert-base, và kết quả cuối cùng sẽ cho ra vector embedding 768 chiều Đây cũng được gọi là bước trích xuất đặc trưng từ văn bản.
• Classifier: Cuối cùng để dự đoán, tầng classifier được đưa vào với 3 tầng con là 2 tầng linear một tầng dropout ở giữa để xác định loại ngôn ngữ của token.
Trong quá trình huấn luyện, chúng ta thường áp dụng kỹ thuật huấn luyện freezing tầng embedding và encoder và chỉ huấn luyện cho tầng classifier Bởi vì các tầng embedding và encoder đã được huấn luyện trên một tập dữ liệu rất lớn, nên các tầng này đã học những đặc trưng tổng quát về ngữ nghĩa và cấu trúc nghĩa pháp của nhiều ngôn ngữ khác nhau Điều này vừa mang lại hiệu quả cho mô hình mục tiêu mà còn tiết kiệm thời gian và chi phí huấn luyện.
Cấu trúc và bảng thông số của thành phần nhận diện ngôn ngữ
Hình 4.5: Kiến trúc và thông số các layer trong mô hình XLM-RoBERTa dùng trong nhận diện ngôn ngữ
Bảng 4.1: Bảng tham số và siêu tham số của XLM-RoBERTa trong nhận diện ngôn ngữ
Tham số Giá trị train batch size 64 validation batch size 128 epoch 2 learning rate 2e-05 vocab size 250002 num attention heads 12 num hidden layers 12 hidden dropout prob 0.1 hidden size 768 max position embeddings 514
Kết quả thực nghiệm từ mô hình nhận diện ngôn ngữ
Mô hình đã được huấn luyện thêm phần phân loại trên tập dữ liệu chuyên dụng đối với tác vụ nhân diện ngôn ngữ, bao gồm các chuỗi văn bản trong 20 ngôn ngữ khác nhau Tập huấn luyện chứa 70,000 mẫu, trong khi các tập kiểm tra và xác thực mỗi tập đều chứa 10,000 mẫu Độ chính xác trung bình trên tập kiểm tra là 99.6% (điều này tương ứng với điểm số F1 trung bình trên tập kiểm tra là hoàn toàn cân bằng) Kết quả tốt nhất đạt được của mô hình nhận diện ngôn ngữ, luận văn đối với training, validation trong quá trình huấn luyện qua 2 epoch là Training Loss: 0.0101, Accuracy: 99.77% và F1: 99.77%
Bảng 4.2: Bảng kết quả của quá trình huấn luyện XLM-RoBERTa trong nhận diện ngôn ngữ
Training Loss Epoch Step Validation Loss Accuracy F1
Đánh giá và nhận xét
Mô hình đã huấn luyện bên trên có khả năng dự đoán chính xác 20 ngôn ngữ với độ chính xác tương đối cân bằng (precision và recall) Cụ thể, mô hình có xu hướng nhận diện chính xác lên đến 100% đối với en, fr, nl, pl, sw, ur và zh.Mặc dù mô hình đạt được độ chính xác khá cao, nhưng vẫn còn một số hạn chế:
Bảng 4.3: Bảng kết quả chi tiết precision, recall và F1 của mô hình XLM-RoBERTa kiểm thử với test set
Language Precision Recall F1 ar 99.8 99.6 99.7 bg 99.8 96.4 98.1 de 99.8 99.6 99.7 el 99.6 100.0 99.8 en 100.0 100.0 100.0 es 96.7 100.0 98.3 fr 100.0 100.0 100.0 hi 99.4 99.2 99.3 it 100.0 99.2 99.6 ja 99.6 99.6 99.6 nl 100.0 100.0 100.0 pl 100.0 100.0 100.0 ru 100.0 99.4 99.7 sw 100.0 100.0 100.0 th 100.0 99.8 99.9 tr 99.4 99.2 99.3 ur 100.0 100.0 100.0 vi 99.2 100.0 99.6 zh 100.0 100.0 100.0
• Dữ liệu thu thập được có thể chứa nhiều biến thể của ngôn ngữ và ngữ cảnh khác nhau, gây khó khăn trong việc phân loại chính xác.
Mô hình dịch thuật
Phương pháp ứng dụng của 2 mô hình
Với mô hình Opus thì chỉ ứng dụng cấu trúc thuần của transformer cơ bản (12 layers) với tập huấn luyện là phoMT [2].
Còn mô hình EnViT5 [2], với T5 được viết tắt là Text-to-Text Transfer Trans- former tuân theo cấu trúc encoder - decoder của Transformer cơ bản và có sự kết hợp với T5 Điểm đặc biệt của T5 là nó không chỉ được huấn luyện để thực hiện một loạt các nhiệm vụ NLP cụ thể, mà còn có thể xử lý các tác vụ khác nhau thông qua một bộ khung chung, trong đó cả đầu vào và đầu ra đều là văn bản T5 chuyển đổi tất cả các tác vụ NLP thành một dạng chung duy nhất, được gọi là "text-to-text", nghĩa là mỗi tác vụ được biểu diễn như một cặp văn bản đầu vào và đầu ra Rất hiệu quả đối với các tác vụ như dịch máy, tóm tắt văn bản, phát hiện ngôn ngữ, trả lời câu hỏi, và nhiều hơn nữa T5 đã đạt được nhiều thành tựu ấn tượng trong cả việc nghiên cứu và ứng dụng thực tiễn, đặc biệt là trong việc tạo ra các mô hình tổng quát và hiệu quả cho tác vụ dịch máy.
Kết quả thực nghiệm của 2 mô hình đã huấn luyện
BLEU là thang đo để kiểm chứng và chọn lọc mô hình đạt kết quả tối ưu nhất dành cho tác vụ dịch máy.
Hình 4.6: Kết quả huấn luyện pre-trained mô hình Opus (transformer-base) và EnViT5 với tác vụ dịch máy [2]
Với kết quả đạt được với mô hình EnViT5 vượt trội đáng kể so với các kết quả từ mô hình state-of-the-art trước đó lên đến 2 điểm trong điểm BLEU cho dịch máy, đồng thời kích thước của mô hình nhỏ hơn 1,6 lần so với một mô hình đang cho kết quả tốt nhất gần nhất khác làmBART.
Đánh giá và nhận xét
Với kết quả như trên mô hình sẽ được ứng dụng trong luận văn này làEnViT5 vớiBLEUđạt40.57 Hiện đang là mô hình có kết quả cao nhất và thích hợp với việc dịch từ Vi - En và ngược lại En - Vi là45.47 với các văn bản học vụ không chứa quá nhiều từ ngữ chuyên với từng ngành nghề của luận văn.
Tuy nhiên, dữ liệu phoMT và MTet có thể có ít từ vựng và cú pháp liên quan đến vấn đề về học vụ, gây khó khăn với dịch thuật một số đoạn văn mang ngữ pháp chuyên biệt chỉ sử dụng trong học vụ.
Mô hình Question Answering
Quá trình huấn luyện
• Với việc thu tập từ nhiều nguồn dữ liệu khác nhau nên cần tái cấu trúc lại để thống nhất theo cấu trúc hình 4.3 Sau đó tiến hành thực hiện các bước tiền xử lý như:
– Loại bỏ các khoảng trắng dư thừa có trong câu hoi ở bên trái, vì những khoảng trắng đấy là dư thừa, không hữu ích và sẽ là nguyên nhân chính ảnh hưởng đến việc cắt ngắn nội dung Khi tokenize câu hỏi nếu không loại bỏ những khoảng trắng vô ích này sẽ chiếm nhiều không gian Do đó đây là việc làm đầu tiên.
– Tiến hành tokenize cho nội dung đoạn văn và câu hỏi cùng một lúc Đối với những đoạn văn có độ dài quá lớn (cụ thể là độ dài tối đa của các đặc trưng từ đoạn văn và câu hỏi là 384), luận văn áp dụng phương pháp cắt giảm độ dài của đoạn văn xuống Việc này sẽ làm ảnh hưởng nếu việc cắt giảm sẽ loại bỏ ngay phần mang câu trả lời tương ứng với câu hỏi đầu vào đang cần giải đáp Luận văn sẽ kết hợp thêm phương pháp overlap các đoạn văn được phân chia một khoảng 128 đặc trưng Tuy nhiên, sẽ không áp dụng độ dài tối đa với câu hỏi Vì cần phải xác định vị trí của phần trả lời tương ứng trong đoạn văn nên cần phải áp dụng thêm phương pháp offset mapping có nghĩa là trả về lại vị trí chính xác của đoạn văn gốc từ những đoạn văn được chia nhỏ để tính toán Với đầu vào chỉ có answer_start nên sẽ cần phải trả thêm giá trị cho answer_end bằng cách tính từ answer_start cộng với độ dài của answer việc này để kết hợp trong phần huấn luyện mô hình Tầng tokenize này sử dụng từ mô hình đã được pre-trained XLM-RoBERTa gốc đã được học đặc trưng của 100 loại ngôn ngữ khác nhau.
• Quy trình huấn luyện cũng giống như quy trình của thành phần nhận diện ngôn ngữ Mô hình sẽ giữ lại phần lõi của cấu trúc XLM-RoBERTa đã được pre- trained với khối lượng dữ liệu lớn tương ứng là lượng kiến thức về ngữ nghĩa và cú pháp của cả tiếng Anh và tiếng Việt Tiếp đó thay thế tầng decoder bằng tầng tuyến tính để cho ra đầu ra là answer_start và answer_end Luận văn sẽ tiến hành quá trình cập nhật trọng số cho tầng qa_outputs hình 4.7 và đồng thời đóng băng các trọng số của tầng encoder trước đó.
Cấu trúc và bảng thông số của thành phần Question Answering
Hình 4.7: Kiến trúc và thông số các layer trong mô hình XLM-RoBERTa dùng trong QuestionAnswering
Kết quả thực nghiệm từ mô hình Question Answering
Kết quả được sau huấn luyện tiếp tục từ mô hình pre-trained với 100 ngôn ngữ khác nhau ở một tập dữ liệu chuyên dùng trong tác vụ Question Answering. Với 36000 bộ 3 câu hỏi - đoạn văn - câu trả, lời thu được validation loss (với validation set là 10% của toàn bộ dữ liệu) là 0.8315, với các metric khác như
Extract Match (EM) là 76.43% và f1 là 84.16%
Bảng 4.5: Bảng tham số và siêu tham số của XLM-RoBERTa trong Question Answering
Tham số Giá trị train batch size 12 validation batch size 12 epoch 3 learning rate 2e-05 vocab size 250002 num attention heads 12 num hidden layers 12 hidden dropout prob 0.1 hidden size 768 max position embeddings 514
Bảng 4.6: Bảng kết quả của quá trình huấn luyện XLM-RoBERTa trong tác vụ Question An- swering
Training Loss Epoch Step Validation Loss
Bảng 4.7: Bảng đánh giá trên F1 Score và Exact Match sau khi được huấn luyện thêm dữ liệu học vụ trong tác vụ Question Answering
Bảng 4.8: Bảng đánh giá F1 Score và Exact Match của mô hình XLM RoBERTa gốc dữ liệu học vụ trong tác vụ Question Answering
Đánh giá và nhận xét
Trong quá trình nghiên cứu và phân tích đề tài trong luận văn này, luận văn tiến hành những bức thử nghiệm ban đầu với tìm hiểu sâu hơn về các phương pháp và công nghệ trong lĩnh vực xử lý ngôn ngữ tự nhiên như Transformer, Bert và phoBERT Tuy nhiên đối với phoBERT là mô hình được pre-trained dựa trên cơ sở của BERT trên toàn bộ dữ liệu là tiếng Việt Trong đó XLM-RoBERTa được pre-trained trên hơn 2.5 TB của 100 ngôn ngữ khác nhau bảo gồm tiếng
Việt và tiếng Anh Luận văn đã fine-tuned thêm mô hình XLM-RoBERTa này với việc bổ sung thêm ngữ pháp, cú pháp và những nội dung thường đề cập trong những văn bản học vụ ban hành qua các năm Điều này phù hợp với mục tiêu đặt ra ban đầu mà luận văn cần phải đạt được Với kết quả như 4.6 4.7 4.8 cho thấy được mô hình mới có thể sử dụng được trong đề tài luận văn này. Tuy nhiên, còn nhiều thách thức cần phải đối phó trong tương lai, bao gồm việc cải thiện độ chính xác và hiệu suất của các mô hình, cũng như việc áp dụng công nghệ vào các ngôn ngữ và văn bản đa dạng có độ phức tạp hơn khi bao gồm những nội dung của các bảng Vì phần đại đa số bộ dữ liệu được bao phủ bởi nhiều kiến thức bao hàm và rộng hơn, trong khi lượng dữ liệu về học vụ còn chiếm phần khá nhỏ trong toàn bộ quá trình Sự tiếp tục nghiên cứu và phát triển trong lĩnh vực này sẽ đóng vai trò quan trọng trong việc cải thiện, tối ưu hóa và kết hợp ứng dụng hỗ trợ học vụ này với nhiều công nghệ khác trong tương lai. Mặt khác, khi tiến hành chạy suy luận (inference) mô hình Question Answer- ing với những câu hỏi thực tế, hiệu suất của mô hình mới có sự khác biệt ở việc khi câu hỏi có phần câu trả lời có nội dung dài với những phần đoạn văn tương ứng Mô hình chỉ trả ra với phần câu trả lời thuộc một phần ngắn hơn Cùng với độ confidence score còn chưa thấp Do vậy thì mô hình bị suy giảm hiệu năng do tập dữ liệu trong quá trình huấn luyện chưa tổng quát hóa và đang thiếu dữ liệu huấn luyện chuyên biệt cho học vụ.
Giao diện hoàn thiện của hệ thống hỗ trợ học vụ
Với mục tiêu ban đầu của luận văn là xây dựng được ứng dụng cơ bản cho phép người dùng nhập câu hỏi liên quan đến những điều khoản và nội dung của văn bản học vụ mà đang cần giải đáp Đầu ra từ hệ thống là câu trả lời với nội dung được trích xuất từ đoạn văn học vụ tương ứng nhất với ngữ nghĩa và thông tin cần được truy vấn trong hệ thống đã được thiết lập.
Hình 4.8: Giao diện để hỏi và đáp của hệ thống hỗ trợ học vụ
• Câu hỏi: Vị trí để điền câu hỏi đầu vào cần sự hỗ trợ giải đáp từ hệ thống.
• Phần giải đáp: Ô trả về kết quả phần thông tin sau khi truy vấn câu hỏi trong hệ thống đã được huấn luyện và xây dựng nhưng trong phần tiến hành thực nghiệm.
Kiểm thử sau khi hoàn thiện hệ thống hỗ trợ học vụ
Đề tài thử nghiệm, đánh giá hiệu suất toàn bộ hệ thống hỗ trợ học vụ Với tổng cộng 694 câu hỏi được tạo ra bằng chatGPT dựa vào các nội dung học vụ bằng tiếng Việt đã được tổng hợp.
Với kết quả như sau:
Bảng 4.9: Bảng kết quả kiểm thử toàn bộ quá trình hỗ trợ học vụ đa ngôn ngữ
Tiếng Việt Tiếng Anh Độ chính xác 62.15 % 62.15 % Thời gian phản hồi 5.0 - 7.0 s 15.0 - 21.0 s
Kết luận và hướng mở rộng đề tài Đề tài Xây dựng hệ thống hỗ trợ học vụ đa ngôn ngữ trong tiếng Anh và tiếng Việt với mục tiêu đề ra là tìm hiểu và ứng dụng Machine Reading Comprehensive nhằm cải thiện hiệu suất và tính tự động giải đáp thắc mắc bằng cả tiếng Anh và tiếng Việt một các nhanh chóng dành cho các văn bản học vụ. Nội dung luận văn tập trung vào các bài toán như cần phải chủ động xác định ngôn ngữ người dùng đang là tiếng Anh hay tiếng Việt, đặc biệt các văn bản học vụ chỉ là tiếng Việt nên nếu người sử dụng tiếng Anh để hỏi thì câu trả lời cần phải được dịch thuật sang tiếng Anh từ đoạn văn tiếng Việt tương ứng trong văn bản và bài toàn lớn cần giải quyết là Question Answering của hệ thống; giới thiệu sơ lược về đề tài nghiên cứu, các công trình liên quan đã đạt được thành công đến hiện nay Đồng thời thực nghiệm để tiến hành từng bước ban đầu xây dựng hệ thống hỗ trợ học vụ này. Đề tài về Machine Reading Comprehensive (MRC) là một bài toán đã có một quá trình dài được rất nhiều nhà nghiên cứu công bố các công trình đạt thành tích và hiệu suất đáng kể, đặc biệt với sự phát triển vượt bậc của các phương pháp như Retrieval-Augmented Generation (RAG) kết hợp với LLM như GPT trong khoảng vài năm gần đây, các mô hình được phát triển mạnh mẽ hơn nữa.Tuy nhiên, với phương pháp này các mô hình thường không tập trung vào một lĩnh vực nào đó, đặc biệt khi các ứng dụng chuyên biệt về một lĩnh vực cụ thể hoặc tập trung hơn so với mô hình pre-trained gốc là các văn bản học vụ ban hành, một số nguyên nhân chính như số lượng ban hành văn bản hạn chế qua các năm và phạm vi ban hành chỉ trong nhà trường đến các cán bộ, học sinh – sinh viên trong nhà trường Đây cũng là thách thức và mục tiêu cần giải quyết và tìm được giải pháp sao cho phù hợp để có được hệ thống hỗ trợ học vụ đa ngôn ngữ Bằng việc tiến hành thực nghiệm kết hợp các module nhận diện ngôn ngữ và question answering từ mô hình pre-trained XLM-RoBERTa được dùng làm cơ sở rút trích đặc trưng và tinh chỉnh lại tầng phân loại được kết nối cùng với việc huấn luyện các module này trong bối cảnh tổng hợp dữ liệu về học vụ từ các nội dung liên quan đến văn bản học vụ trong luận văn, luận văn đã triển khai, thử nghiệm và phân tích hiệu năng của các mô hình theo từng thước đo liên quan.
Mô hình trong luận văn này đã cho thấy phương pháp hiện đã được thực hiện một các hiệu quả trong việc đọc hiểu câu hỏi và trả lời với độ chính xác trên các tập dữ liệu trong lĩnh vực cụ thể là các nội dung đoạn văn liên quan đến học vụ. Nghiên cứu này không chỉ là một bước tiến quan trọng trong việc nâng cao hiệu suất của đọc hiểu máy trong việc hỗ trợ học vụ mà còn mở ra cơ hội cho việc ứng dụng mô hình trong các ứng dụng thực tế khác.
Tuy nhiên với giới hạn về kiến thức và thời gian gấp rút cần phải thực hiện của bản thân, đề tài vẫn còn nhiều hạn chế và khuyết điểm Vì vậy, đề tài này có thể mở rộng để nghiên cứu:
• Tìm hiểu các nghiên cứu tiếp theo để cải thiện khả năng xử lý các vấn đề phức tạp hơn trong đọc hiểu máy, như với các câu hỏi có phần trả lời dài hơn, đối mặt với các văn bản chứa thông tin mâu thuẫn hoặc không đồng nhất và tự động hóa trong bước tạo ra dữ liệu từ các tệp dữ liệu học vụ bằng PDF Để tạo nên cơ sở tự động cập nhật kiến thức mới theo những thay đổi qua mỗi năm mỗi văn bản phát hành mới.
• Cải thiện thêm tốc độ xử lý của hệ thống từ hiện tại là khoảng 5s đến 9s đối với các đoạn văn dài.
• Đề xuất phát triển các ứng dụng cụ thể dựa trên mô hình của luận văn này,như trợ lý ảo hoặc công cụ hỗ trợ đọc hiểu văn bản tự động cho người dùng hay xa hơn có thể tự động gợi ý biểu mẫu phù hợp khi có vấn đề liên quan như nộp học phí muộn hoặc gia hạn thời gian học,
[1] A Conneau, K Khandelwal, N Goyal, V Chaudhary, G Wenzek, F. Guzmán, E Grave, M Ott, L Zettlemoyer, and V Stoyanov "Unsuper- vised Cross-lingual Representation Learning at Scale" In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics.
Association for Computational Linguistics, 2020, pp 8440–8451.
[2] L Doan, L T Nguyen, N L Tran, T Hoang, and D Q Nguyen "PhoMT:
A High-Quality and Large-Scale Benchmark Dataset for Vietnamese- English Machine Translation" In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing Association for Com- putational Linguistics, 2021, pp 4495–4503.
[3] Y Liu, M Ott, N Goyal, J Du, M Joshi, D Chen, O Levy, M Lewis, L. Zettlemoyer, and V Stoyanov "RoBERTa: A Robustly Optimized BERT Pretraining Approach" in Proc of the 8th International Conference on Learning Representations (ICLR), Addis Ababa, Ethiopia, 2019.
[4] D Q Nguyen and A T Nguyen 2020 "PhoBERT: Pre-trained language models for Vietnamese" In Findings of the Association for Computa- tional Linguistics: EMNLP 2020 Association for Computational Linguis- tics, 2020, pp 1037–1042.
[5] A Vaswani, N Shazeer, N Parmar, J Uszkoreit, L Jones, A Kaiser,
M Polosukhin, and others, "Attention Is All You Need," in Proc of the31st International Conference on Neural Information Processing Systems(NeurIPS), Long Beach, United States, 2017, pp 5998-6008.
[6] J Devlin, M W Chang, K Lee and K Toutanova "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding" inProc of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics, 2019.
[7] D A Navastara, Ihdiannaja and A Z Arifin, "Bilingual Question Answer- ing System Using Bidirectional Encoder Representations from Transform- ers and Best Matching Method" in 13th International Conference on In- formation and Communication Technology and System (ICTS), Surabaya,
[8] L -Q Cai, M Wei, S -T Zhou and X Yan, "Intelligent Question An- swering in Restricted Domains Using Deep Learning and Question Pair Matching" IEEE Access, vol 8, 2020, pp 32922-32934.
[9] P Rajpurkar, J Zhang, K Lopyrev and P Lian, "SQuAD: 100000+ ques- tions for machine comprehension of text" inProceedings of the 2016 Con- ference on Empirical Methods in Natural Language Processing (EMNLP),
[10] M J Domunt, R Grundkiewicz, T Dwojak, H Hoang, K Heafield, T. Neckermann, F Seide, U Germann, A F Aji, N Bogoychev, A F T Mar- tins, and A Birch "Marian: Fast Neural Machine Translation in C++." In
Proceedings of ACL 2018, System Demonstrations, pages 116–121, Mel- bourne, Australia Association for Computational Linguistics, 2018.
[11] K M Hermann, T Kocisky, E Grefenstette, L Espeholt, W Kay, M Su- leyman, and P Blunsom "Teaching machines to read and comprehend" In
Advances in neural information processing systems, MIT Press, 2015, pp.
[12] K Sun, D Yu, J Chen, D Yu, Y Choi, and C Cardie "DREAM: A Chal- lenge Data Set and Models for Dialogue-Based Reading Comprehension" in Proceedings of the 2019 Conference on Empirical Methods in Natu- ral Language Processing and the 9th International Joint Conference on
Natural Language Processing (EMNLP-IJCNLP), Hong Kong, 2019, pp.
[13] Y Sasaki, “The truth of the F-measure” Research Fellow, School of Com- puter Science, University of Manchester, Manchester, UK, 2007, pp 1-5.
[14] K Papineni, S Roukos, T Ward, and W J Zhu "BLEU: a Method for Automatic Evaluation of Machine Translation" the Association for Computational Linguistics (ACL), IBM T J Watson Research Cen- ter Yorktown Heights, Philadelphia, USA, pp 311-318, July 2002. https://aclanthology.org/P02-1040.pdf
[15] N Q Duc, L H Son, N D Nhan, N D N Minh, L T Huong and D V. Sang "Towards Comprehensive Vietnamese Retrieval-Augmented Gener- ation and Large Language Models" in Proceedings of the 2024 Interna- tional Conference on Computational Linguistics, Torino, Italy, 2024, pp.