Xem mẫu

  1. Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XIV về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR), TP HCM, ngày 23-24/12/2021 DOI: 10.15625/vap.2021.0096 SỬ DỤNG BERT VÀ META-PATH ĐỂ NÂNG CAO KHẢ NĂNG TRẢ LỜI CHO HỆ HỎI ĐÁP Phan Hồ Viết Trường1, 3, Phan Hồng Trung1, 2, Đỗ Phúc1 1 Đại học Công nghệ thông tin, Đại học Quốc gia Thành phố Hồ Chí Minh 2 Đại học Hoa Sen, Thành phố Hồ Chí Minh 3 Đại học Văn Lang, Thành phố Hồ Chí Minh phucdo@uit.edu.vn, trungphansg@gmail.com, truong.phv@vlu.edu.vn TÓM TẮT: Đọc hiểu tự động có sự hỗ trợ máy tính là một lĩnh vực nghiên cứu ngày càng phát triển trong những năm gần đây và đóng một vai trò quan trọng trong hệ thống hỏi đáp bằng ngôn ngữ tự nhiên. Các tiếp cận xây dựng hệ hỏi đáp hiện nay đã mang đến những kết quả tốt như tiếp cận dựa trên phân tích ngôn ngữ, mạng LSTM và BERT. Tuy nhiên, các tiếp cận này chỉ mới giải quyết vấn đề tìm câu trả lời có trong văn bản cho trước mà chưa giải quyết vấn đề suy luận những câu trả lời không nằm trong văn bản. Bài báo này sử dụng mô hình ngôn ngữ huấn luyện sẵn BERT và đồ thị tri thức (KG) để giải quyết những hạn chế nêu trên nhằm cải thiện khả năng trả lời của hệ thống hỏi đáp. Cụ thể, chúng tôi tập trung nghiên cứu về meta-path của một đồ thị tri thức để rút bộ ba mối quan hệ giữa các thực thể. Giải pháp này kết hợp thông tin dựa trên nội dung và liên kết của các bộ ba trong đồ thị tri thức để giải quyết vấn đề trên. Chúng tôi đã sử dụng meta path để tạo các path instance và mô hình BERT để phân loại các bộ ba theo các mô tả các thành phần trong bộ ba. Phương pháp của chúng tôi đạt độ chính xác trung bình là 93,34 %, trong khi đó, TEKE, DistMult có độ chính xác thấp hơn 86 %, TransSparse, AATE, DisMult-HRS có độ chính xác từ 86 % đến 90 % và KG-BERT có độ chính xác là 92,23 %. Từ khóa: học sâu, đồ thị tri thức, hệ hỏi đáp, meta path, BERT. I. GIỚI THIỆU Sử dụng đồ thị tri thức (KG) để cải thiện hệ thống trả lời câu hỏi là một nghiên cứu tiềm năng trong những năm gần đây và đóng một vai trò quan trọng trong hệ thống Hỏi và Đáp bằng ngôn ngữ tự nhiên (Galkin, 2020). Hơn nữa, sự xuất hiện của mô hình ngôn ngữ huấn luyện sẵn BERT đã cải tiến đáng kể cho hệ hỏi đáp. Việc dùng đồ thị giúp việc tìm mối quan hệ giữa các thực thể trong đồ thị, trong khi việc dùng BERT giúp việc xử lý nội dung văn bản đạt độ chính xác cao. Chúng tôi kết hợp BERT và đồ thị tri thức để sử dụng những ưu điểm của các tiếp cận này cho hệ hỏi đáp. Trước nghiên cứu của chúng tôi, Liang Yao. et al. (Liang Yao, 2019) đã kết hợp đồ thị tri thức và BERT để kiểm tra tính đầy đủ của đồ thị tri thức. Nghiên cứu của họ có hai đặc điểm: Thứ nhất, họ tạo bộ ba từ các thực thể đầu và cuối theo cách thủ công, trong khi chúng chúng tôi sử dụng meta-path và path instance để tạo các bộ ba dùng GraphFrames. Thứ hai, Liang Yao đã sử dụng mô hình BERT để kiểm tra xem các bộ ba mới có hợp lệ hay không. Trong khi đó, chúng tôi đã áp dụng BERT để phân loại các bộ ba theo các văn bản mô tả chúng. Chúng tôi dùng mô hình này để xây dựng mô hình phân loại bộ ba. Mỗi bộ ba được chuyển đổi thành văn bản dựa trên các mô tả h, p, t và chúng tôi sử dụng văn bản này và nhãn lớp làm đầu vào cho mô hình phân loại bộ ba dựa trên BERT. Mô hình này tương tự như mô hình phân loại văn bản dựa trên BERT (Chi Sun, 2020). Sau khi huấn luyện mô hình phân loại bộ ba, mô hình có thể phân loại bộ ba thành một trong 3 lớp. Chúng tôi kết hợp thông tin dựa trên meta- path và dựa trên nội dung (mô tả h, p, t) làm đặc trưng cho bộ ba để xây dựng mô hình phân loại bộ ba. Mô hình BERT được sử dụng để tạo vectơ nhúng theo mô tả bộ ba được tạo từ đồ thị tri thức. Những đóng góp chính của chúng tôi được tóm tắt như sau: • Tạo bộ ba từ tất cả các meta-path của HIN bằng cách quét lược đồ mạng và sử dụng Motif Finding của GraphFrames trên HIN lớn. • Xây dựng mô hình phân loại bộ ba dựa trên BERT để phân loại bộ ba bằng cách sử dụng tất cả bộ ba được tạo ra từ tất cả các path instance của meta path. • Xây dựng mô hình phân loại văn bản dựa trên BERT cho nội dung của các bộ ba bằng cách chuyển các bộ ba đã tạo thành văn bản để phân loại văn bản bằng BERT. II. NGHIÊN CỨU LIÊN QUAN Trong đồ thị tri thức (KG), tất cả các thực thể có nhiều kiểu khác nhau được coi là một hệ thông tin không đồng nhất (HIN) (Chuan Shi, 2017) (Do, 2019). Trong HIN, một meta path là một khái niệm quan trọng để truy xuất thông tin. Meta-path là một chuỗi các thực thể và liên kết giữa các thực thể. Ví dụ, trong VNTKG, (Beauti-ful_Sight)→ [location_at]→ (Province) là meta path có độ dài 1, (Beautiful_Sight) → [location_at] → (Province) → [Is_In] → (Region) là một meta path có độ dài 2. Mỗi meta-path xác định mối quan hệ giữa các thực thể. Ví dụ về quan hệ trực tiếp là liên kết "location_at" trong meta-path (Beautiful_Sight) → [location_at] → (Province) và quan hệ gián tiếp "location_at_is_in" trong meta-path (Beautiful_Sight) → [location_at] → (Province) → [is_in]→ (Region). Do đó, một quan hệ trực tiếp hoặc gián tiếp sẽ được xác định bởi một meta-path, trong đó quan hệ trực tiếp có cùng tên với tên của
  2. Đỗ Phúc, Phan Hồng Trung, Phan Hồ Viết Trường 507 liên kết trong meta-path và quan hệ gián tiếp có tên được tạo bằng cách nối các liên kết trong meta-path. Mỗi meta path có một tập hợp các path instance. Một path instance là đường đi qua các đỉnh trong đồ thị tri thức. BERT (Jacob Devlin, 2018) và XLNet (Zhilin Yang, 2019) có những kết quả tốt trong xử lý ngôn ngữ tự nhiên (NLP), những mô hình này có thể học cách nhúng từ theo ngữ cảnh với lượng lớn dữ liệu văn bản. Trong số đó, BERT nổi bật nhất bởi việc huấn luyện trước mô hình BERT thông qua mô hình ngôn ngữ mặt nạ và dự đoán câu tiếp theo. BERT đã được áp dụng trong nhiều lĩnh vực như phân loại văn bản (Chi Sun, 2020), phân loại ngữ nghĩa (Jianfei Yu, 2019) và hệ thống trả lời câu hỏi (Siva Reddy, 2019). Path instance của các meta–path trong HIN Meta-path là một khái niệm quan trọng của HIN. Khám phá meta-path, path instance và phân tích HIN là những chủ đề nghiên cứu thu hút nhiều nhà nghiên cứu (Phuc Do, 2018). Đã có một số nghiên cứu về việc tự động phát hiện ra các meta-path của HIN, Trong (Changping Meng, 2015), các tác giả đã đề xuất một thuật toán dựa trên Breadth-First Search để tìm tất cả các meta-path của HIN. Trong (Lijun Chang, 2015), các tác giả đã đề xuất các thuật toán để tính toán các đường đi ngắn nhất trên k. Trong các nghiên cứu trên, giải pháp tìm kiếm tất cả path instance của meta-path giữa hai đỉnh được thực hiện với các HIN đầu vào trong bộ nhớ của một máy tính. Các giải pháp này có thể bị hạn chế khi làm việc với HIN lớn với hàng triệu đỉnh và cạnh như DBLP, YAGO, FreeBase, VNTKG ... Phân lớp văn bản dựa trên đồ thị nhúng Wang và cộng sự (Zhigang Wang, 2016) đề xuất một phương pháp TEKE cho việc học biểu diễn đồ thị tri thức. Phương pháp này sử dụng đồ thị tri thức và tập văn bản làm đầu vào, sau đó gán nghĩa cho các thực thể trong nội dung văn bản. Cuối cùng, thủ tục tối ưu biên dịch được sử dụng cho việc học nhúng thực thể và quan hệ. Phân lớp văn bản dựa trên BERT Trong những năm gần đây, mô hình ngôn ngữ huấn luyện sẵn BERT đã cho những kết quả cao trong các bài toán phân lớp, đồ thị tri thức đầy đủ, phân tích cảm xúc,… (Manish Munikar, 2020). Với bài toán phân lớp, trong (Santiago Gonzalez-Carvajal, 2020), các tác giả so sánh vài mô hình với BERT. Họ thực nghiệm để chứng minh tính chính xác của mô hình BERT cho bài toán phân lớp văn bản. Họ kết luận mô hình BERT đạt độ chính xác cao. Trong (Chi Sun, 2020), tác giả trình bày cách tinh chỉnh mô hình BERT và thử nghiệm để tìm cách giải quyết tốt nhất cho bài toán phân lớp với 8 bộ dữ liệu khác nhau bằng cách thêm một tầng softmax để cấu hình BERT. III. CÁC ĐỊNH NGHĨA CƠ BẢN Mạng thông tin Một mạng thông tin là một đồ thị có hướng G = (V, E) kết hợp với hàm ánh xạ loại đối tượng ϕ: V −→ A và hàm ánh xạ loại liên kết ψ: E −→ R. Mỗi đối tượng v ∈ V thuộc một loại đối tượng cụ thể trong tập hợp A: ϕ(v) ∈ A và mỗi liên kết e ∈ E thuộc một loại quan hệ cụ thể trong tập hợp R : ψ(e) ∈ R . Mạng thông tin không đồng nhất HIN Một mạng thông tin được gọi là mạng thông tin không đồng nhất nếu số loại đối tượng |A| > 1 hoặc số loại quan hệ |R| > 1; ngược lại, nó là một mạng thông tin đồng nhất [27]. Lược đồ mạng (Network Schema) Cho trước HIN G = (V, E) cùng với ánh xạ kiểu đối tượng ϕ: V−→ A và ánh xạ kiểu liên kết ψ: E → R. Lược đồ mạng của HIN là một đồ thị có hướng được định nghĩa trên các loại đối tượng A và các loại quan hệ R, ký hiệu TG = (A, R) Chúng tôi đã xây dựng HIN về Du lịch Việt Nam. Lược đồ mạng của HIN này được hiển thị trong Hình 1. Trong HIN này, chúng tôi có một tập hợp các loại đối tượng A = {Beautiful_Sight, Ethnic_Group, Province, Dish, National_Hero, Folk_Song, Traditional_Music, Festival, Region...} và một tập hợp các loại quan hệ R = {Organized_At, Located_At, Folk_Song_Of, Born_In, Specialty_Dish...}. Meta-path Một meta-path P là một con đường được định nghĩa trên lược đồ mạng TG = (A, R) của một HIN cho trước, được ký hiệu bằng A1 −R→1 A2 −R→2 ... −R→l Al+1, định nghĩa một quan hệ kết hợp R = R1 ◦ R2 ◦ ... ◦ Rl giữa kiểu A1 và Al+1, trong đó ◦ là phép toán kết hợp trên quan hệ, l là chiều dài của meta-path. Như vậy, nếu l = 1 thì R là quan hệ trực tiếp, nếu l > 1 thì R là quan hệ gián tiếp. Bảng 1 trình bày một số meta- path được rút trích ra từ lược đồ mạng của HIN về Du lịch Việt Nam. Path-instance 𝑹𝟏 𝑹𝟐 𝑹𝒍 𝑹𝟏 𝑹𝟐 Một path-instance của một meta-path A1 �� A2 ��... →Al+1 là con đường p của HIN với p: a1 �� a2 ��... 𝑹𝒍 𝑹𝒋 →al+1 và ai là đỉnh của HIN, aj → aj+1 là cung có đỉnh nguồn là aj và đỉnh đích là aj+1 của HIN.
  3. 508 SỬ DỤNG BERT VÀ META-PATH ĐỂ NÂNG CAO KHẢ NĂNG TRẢ LỜI CHO HỆ HỎI ĐÁP Đồ thị tri thức Đồ thị tri thức G = (V, E) là một đồ thị có hướng với các đỉnh là thực thể và các cạnh là bộ ba có dạng . Mỗi bộ ba được ký hiệu là để biểu diễn mối quan hệ p từ thực thể h đến thực thể t. Có thể dùng đồ thị tri thức nhằm cung cấp tri thức cho hệ hỏi đáp (QAS). Khi kết hợp đồ thị tri thức với một tập luật, chúng ta có thể suy luận ra những tri thức mới từ những tri thức có sẵn. Chúng ta cũng có thể thu thập thông tin tự động từ những nguồn tin cậy, phân tích thành những bộ ba và bổ sung vào đồ thị tri thức để tạo QAS có khả năng tự học. Với cơ chế suy luận và khả năng tự học 24x7, QAS sẽ ngày càng thông minh hơn; chắc chắn một ngày không xa sẽ vượt qua khả năng của con người. IV. PHƯƠNG PHÁP Giải pháp của chúng tôi gồm bốn thành phần được mô tả sau đây. Trước tiên, chúng tôi tìm tất cả các meta-path tồn tại trong HIN. Sau đó, chúng tôi dùng Motif search của Apache Spark để tìm các path instance và sinh các bộ ba từ các meta-path đã tìm được. Tiếp theo, chúng tôi xây dựng mô hình phân lớp bộ ba dựa trên BERT. Mỗi bộ ba được chuyển thành văn bản. Cuối cùng, sử dụng mô hình BERT để phân lớp bộ ba vào trong 3 lớp chính là {base class, derived class, non-existed class}. Chi tiết các bước được trình bày cụ thể như sau. A. Xác định các meta-path trong mạng HIN Chúng tôi sử dụng thuật toán “Breadth-First Search” để tìm tất cả các meta-path giữa hai đỉnh của lược đồ mạng (Hình 1). Hai đỉnh này là hai kiểu thực thể trong đồ thị tri thức. Mỗi meta-path biểu diễn một loại quan hệ giữa hai kiểu thực thể. Bảng 1 liệt kê một số meta-path được rút ra từ VNTKG. LocatedAt Bảng 1. Minh họa các path instance của một meta-path Beautiful_Sight �⎯⎯⎯⎯⎯⎯�Province # Path instance 1 LocatedAt (Ngu Binh Mountain) �⎯⎯⎯⎯⎯⎯� (Hue) 2 LocatedAt (Ngu Hanh Mountain) �⎯⎯⎯⎯⎯⎯� (Da Nang) 3 LocatedAt (Hoan Kiem Lake) �⎯⎯⎯⎯⎯⎯� (Ha Noi) B. Dùng Motif Finding của Apache Spark để tìm tất cả path instances của một meta-path Để giải quyết tất cả các hạn chế nêu trên của đồ thị tri thức và BERT, chúng tôi đã sử dụng Apache Spark do Matei Zaharia phát triển vào năm 2009 tại Phòng thí nghiệm AMPLab thuộc Đại học Berkeley để xử lý dữ liệu khổng lồ (Tomasz Drabas, 2017). Apache Spark chạy trên Spark Cluster chứa một nút chính và một số nút công nhân. Chúng tôi tận dụng khả năng xử lý đồ thị lớn của Motif Finding trên Apache Spark để tìm tất cả các path instance của meta- path và bộ ba của một meta-path nhất định của một mạng HIN lớn. Do đồ thị tri thức là đồ thị lớn, chúng tôi dùng Motif Finding để tìm kiếm các mẫu cấu trúc trong một đồ thị. Motif Finding là một chức năng của GraphFrames. Motif Finding làm việc trong môi trường phân tán và có thể hoạt động với đồ thị tri thức lớn. Motif Finding sử dụng Ngôn ngữ đặc tả miền (DSL) để biểu diễn các truy vấn cấu trúc. Bảng 2 minh họa một số meta-path và chức năng Tìm kiếm của GraphFrames để tìm các path instance của meta-path theo tính toán phân tán. Trong Bảng 2, đồ thị g là cấu trúc GraphFrames để biểu diễn HIN. Bảng 2. Minh họa meta-path và Motif Finding của Apache Spark GraphFrames Meta-path Motif Finding Musical_Instrument → Ethnic_Group g.find("(a)-[e]->(b)").filter(“a.type=’Musical_Instrument’ and b.type=’Ethnic_Group’” Musical_Instrument → Ethnic Group → g.find("(a)-[e1]->(b); Province (b)-[e2]->(c)").filter(“a.type=’Musical_Instrument’ and b.type=’Ethnic_Group’ and c.type=’ Province’” Folk_Song → Province → Region g.find("(a)-[e1]->(b); (b)-[e2]->(c)").filter(“a.type=’Folk_Song’ and b.type=’Province’ and c.type=’ Region’” Gán nhãn cho các quan hệ Sau khi xác định các meta-path biểu diễn mối quan hệ giữa các kiểu thực thể, chúng tôi gán nhãn cho các quan hệ như trong Bảng 3 để chuẩn bị cho việc huấn luyện mô hình BERT. Bảng 3. Minh họa gán nhãn cho quan hệ # Meta-path Relation label Relation type 1 Beautiful_Sight→Province Located_At Directed 2 National_Hero→Province Born_In Directed 3 Dish→Province Specialty_Dish Directed
  4. Đỗ Phúc, Phan Hồng Trung, Phan Hồ Viết Trường 509 Những quan hệ gián tiếp được dùng để trả lời cho câu hỏi phức tạp. Ví dụ, để trả lời cho câu hỏi “Núi Ngũ Hành là cảnh đẹp của vùng nào?”, chúng tôi sẽ dùng quan hệ “Beautiful_Sight_of_Region” tương ứng với meta-path “Beautiful_Sight → Province → Region” để xác định câu trả lời. C. Tìm bộ ba của path instances R1 Path instance của meta-path A1 �� A2 là cung nối 2 đỉnh. Đỉnh gốc là thực thể đầu (head entity) của bộ ba (triple), đỉnh ngọn là thực thể cuối (tail entity) của triple. Liên kết R1 là vị từ của bộ ba. Bộ ba này được gọi là bộ ba cơ R1 R2 Rl sở (base triple). Path instance của meta-path A1 �� A2 ��.. . →Al+1 là con đường chứa (l+1) đỉnh. Đỉnh gốc A1 của con đường là thực thể đầu của triple, đỉnh ngọn Al+1 của con đường là thực thể cuối. Phép hợp R1_R2_..._Rl+1 là vị từ của bộ ba. Bộ ba này được gọi là bộ ba suy diễn (derived triple) Bảng 4. Bảng 4. Minh họa các bộ ba cơ sở và bộ ba suy diễn của các meta-paths Bộ ba cơ sở Bộ ba suy diễn Beautiful_Sight→Province Beautiful_Sight→Province→Region D. Mô hình phân loại bộ ba dựa trên BERT Mô hình này được huấn luyện dựa trên tất cả các bộ ba được tạo bằng cách sử dụng các path instance. Mỗi bộ ba được thay bằng văn bản mô tả của thực thể h, thực thể đuôi t và vị từ p. Đoạn văn này được gọi là nội dung của triple và được gán nhãn tùy thuộc vào một lớp được xác định trước là {bộ ba cơ sở, bộ ba dẫn xuất, bộ ba không tồn tại}. Sau đó, tập hợp các văn bản được tạo từ bộ ba và nhãn bộ ba sẽ được sử dụng để huấn luyện mô hình phân loại văn bản dựa trên BERT. Với bộ ba , chúng tôi chuyển bộ ba này sang văn bản là “Núi Ngự Bình là một ngọn núi ở Huế. Núi Ngự Bình nằm cách trung tâm Huế 30 km. Núi Ngự Bình tọa lạc tại Huế. Huế là thành phố cổ kính của Việt Nam. Có rất nhiều cảnh đẹp ở Huế “. Sau đó, chúng tôi gán nhãn “bộ ba cơ sở” cho văn bản này. Chúng tôi cũng tạo bộ ba không hợp lệ như sau đó chuyển bộ ba này sang văn bản ngôn ngữ tự nhiên là “Núi Ngự Bình là một ngọn núi ở Huế. Núi Ngự Bình nằm cách trung tâm Huế 30 km. Núi Ngự Bình tọa lạc tại Đà Nẵng. Đà Nẵng là một thành phố ven biển ở miền Trung Việt Nam. Đà Nẵng là trung tâm thương mại và giáo dục của miền Trung Việt Nam”. Chúng tôi gán nhãn "bộ ba không tồn tại" cho văn bản này. Bên cạnh nhãn “bộ ba không tồn tại”, chúng ta cũng cần biết liệu bộ ba này là bộ ba cơ sở hay bộ ba suy diễn. Chúng ta cần phân loại các bộ ba thành 3 lớp như Bảng 5. Bảng 5. Minh họa nhãn của bộ phân lớp bộ ba Triple Text Class , is located at Hue. Hue is the ancient city of Vietnam , is located at Hue. Hue is the ancient city of Vietnam. Hue is in the Central Region of Vietnam , is located at Hue. Hue is the ancient city of Vietnam. Hue is in the North Region of Vietnam E. Mô hình BERT để phân lớp văn bản Chúng tôi sử dụng mô hình phân loại bộ ba dựa trên BERT để phân loại bộ ba theo một trong ba lớp. Văn bản biểu diễn bộ ba được biểu diễn bằng vectơ nhúng theo ngữ cảnh của mô hình BERT. Chi Sun et al., 2020 các tác giả đã phát triển mô hình phân loại văn bản dựa trên BERT, bộ phân loại Softmax được thêm vào đầu kiến trúc BERT để dự đoán xác suất của nhãn Các tác giả đã sử dụng mô hình dựa trên BERT chứa 12 transformer blocks, 12 self-attention heads và kích thước ẩn là 768. Các tác giả đã tinh chỉnh tất cả các tham số của mô hình BERT bằng cách tối đa hóa xác suất log của nhãn chính xác. Chúng tôi tận dụng mô hình này cho mô hình phân loại bộ ba dựa trên BERT. Kết quả nhúng của mô tả triple và nhãn triple sau đó sẽ được đưa vào dropout và Softmax Classifier để phân loại bộ ba. Các mô tả văn bản của các thực thể được lựa chọn cẩn thận từ Wikipedia và kiến thức của chúng tôi về du lịch Việt Nam. F. Tăng cường khả năng của hệ thống trả lời câu hỏi bằng cách sử dụng phân loại bộ ba dựa trên BERT Để trả lời các câu hỏi trong Bảng 6, chúng ta cần phân loại bộ ba được tạo ra từ câu hỏi thích hợp. Ví dụ, với câu hỏi “Núi Ngự Bình có ở Huế không?”, Chúng tôi tìm meta-path có dạng Beautiful_SightProvince. Sau đó, chúng tôi sinh những path-instance có Beautiful_Sight = “Ngu Binh Mountain” và được kết quả bộ ba . Tiếp theo, chúng tôi phân loại bộ ba . Nếu bộ ba này là bộ ba không tồn tại,
  5. 510 SỬ DỤNG BERT VÀ META-PATH ĐỂ NÂNG CAO KHẢ NĂNG TRẢ LỜI CHO HỆ HỎI ĐÁP câu trả lời cho câu hỏi này sẽ là "không đúng". Nếu bộ ba này là bộ ba cơ sở hoặc bộ ba suy diễn, câu trả lời cho câu hỏi này sẽ là "đúng". Bảng 6. Minh họa câu hỏi tự nhiện và bộ ba tương ứng để kiểm tra hỏi đáp Câu hỏi ngôn ngữ tự nhiên Bộ ba tương ứng Is Ngu Binh Mountain located at Hue? Is Chau Van Song the Folk Song of Hue? Is Sesame the specialty food of Hue? Để trả lời câu hỏi tổng hợp như “Huế có những điểm tham quan đẹp nào?”. Câu hỏi này tạo ra một bộ ba trong đó p là “location_at”, t là “Hue”. Chúng ta cần tìm tất cả các thực thể đầu h trong một tập các thực thể của KG, sao cho bộ ba là bộ ba cơ sở. Có thể sử dụng Bộ phân loại bộ ba dựa trên BERT để phân loại bộ ba . Câu trả lời cho một câu hỏi tổng hợp là một tập hợp các yếu tố như {Núi Ngự Bình, Đồi Vọng Cảnh, Vịnh Lăng Cô, Bãi biển Thuận An} như trong Hình 1. Hình 1. trả lời câu hỏi tổng hợp Trong Hình 1, để trả lời câu hỏi “How many beautiful signs does Hue has?”, hệ thống xác định các bộ ba có chứa thực thể “Hue” và quan hệ “Beautiful_sign_of”. Sau đó, hệ thống sẽ trả về kết quả là các thắng cảnh của Hue. Chúng tôi dùng meta-path để sinh tập câu hỏi (bao gồm phần trả lời) dùng cho việc huấn luyện QAS. V. THỬ NGHIỆM Dataset Trong nghiên cứu này, chúng tôi đã tiến hành thử nghiệm trên tập dữ liệu 1.200.000 câu hỏi được tạo ra dựa vào tập thực thể và quan hệ (vị từ) mà chúng tôi đã thu thập. Chúng tôi chia nó thành hai phần: tập dữ liệu huấn luyện và tập dữ liệu kiểm thử để huấn luyện và đánh giá mô hình BERT. Tập dữ liệu kiểm thử bao gồm 200.000 câu hỏi được chọn ngẫu nhiên trong số 1.200.000 câu hỏi, nhưng nó phải bao gồm tất cả các biến thể của tất cả các loại quan hệ. Tập dữ liệu huấn luyện bao gồm 1.000.000 câu hỏi còn lại. Cấu hình hệ thống thực nghiệm Chúng tôi đã tiến hành thực nghiệm trong hai môi trường: cục bộ và Spark Cluster. Cấu hình chi tiết của hai môi trường này như sau. Cấu hình của hệ thống cục bộ Cấu hình của máy tính dùng để thực nghiệm: − Processor: Intel(R) Core i5-6500 CPU @ 3.20GHz 3.20GHz. − RAM: 8.0 GB Cấu hình của Spark Cluster Chúng tôi đã xây dựng cụm Spark bao gồm 5 máy tính. Trong đó một máy tính làm master node và bốn máy tính làm worker node. Cấu hình của các máy trong cụm: − Processor: Intel(R) Core i5-6500 CPU @ 3.20GHz 3.20GHz. − RAM: 8.0 GB − Master Node: là máy tính chạy chương trình chính, gửi mã đến các worker node để thực thi song song và thu thập kết quả.
  6. Đỗ Phúc, Phan Hồng Trung, Phan Hồ Viết Trường 511 − Worker Node: là máy tính tham gia xử lý các yêu cầu của master node. − Cluster Manager: là một thành phần quản lý cụm máy tính có nhiệm vụ cấp phát tài nguyên cho các ứng dụng. Tinh chỉnh mô hình BERT Chúng tôi chia tập dữ liệu huấn luyện (bao gồm 1.000.000 câu hỏi) thành 10 tập dữ liệu với kích thước từ 100.000 đến 1.000.000 câu hỏi. Sau đó, chúng tôi tiến hành huấn luyện mô hình bằng cách sử dụng 10 tập dữ liệu trên trong cả môi trường cục bộ và môi trường phân tán và đo thời gian huấn luyện. Bảng 1 trình bày kết quả thử nghiệm chi tiết. Hình 2 trình bày biểu đồ thể hiện mối quan hệ giữa kích thước của tập dữ liệu và thời gian huấn luyện mô hình. Biểu đồ cho thấy thời gian huấn luyện tỷ lệ thuận với kích thước của tập dữ liệu và thời gian huấn luyện khá chậm. Hình 2. Thời gian huấn luyện BERT trên môi trường cục bộ và phân tán Bảng 7. Training Time Number of Questions Local Mode Distributed Mode (thousands) seconds minutes hours seconds minutes hours 100 511 8,52 0,14 2.300 38,33 0,64 200 1.586 26,43 0,44 3.410 56,83 0,95 300 2.111 35,18 0,59 3.800 63,33 1,06 400 3.109 51,82 0,86 4.664 77,73 1,30 500 4.046 67,43 1,12 4.855 80,92 1,35 600 4.335 72,25 1,20 5.502 91,70 1,53 700 4.923 82,05 1,37 5.615 93,58 1,56 800 5.684 94,73 1,58 5.880 98,00 1,63 900 6.281 104,68 1,74 5.983 99,72 1,66 1000 7.043 117,38 1,96 6.234 103,90 1,73 Trong Hình 2 và Bảng 7, với tập 1.000.000 câu hỏi, thời gian huấn luyện trong môi trường cục bộ là 7.043 giây (khoảng 117,38 phút hay 1,96 giờ), trong môi trường phân tán là 6.234 giây (khoảng 103,90 phút hay 1,73 giờ). Lúc đầu, thời gian huấn luyện trong môi trường cục bộ nhanh hơn nhiều so với trong môi trường phân tán. Nhưng khi tập dữ liệu huấn luyện đủ lớn, từ 900.000 câu hỏi trở lên, thì môi trường phân tán tỏ ra hiệu quả hơn môi trường cục bộ. Điều này có thể được giải thích như sau: khi huấn luyện mô hình trong môi trường phân tán, ngoài chi phí xử lý hệ thống phải chịu thêm các chi phí như chi phí quản lý cụm, chi phí chuyển dữ liệu và mã giữa các máy tính trong cụm. Khi tập dữ liệu huấn luyện nhỏ, hiệu quả của quá trình xử lý song song trong môi trường phân tán không thể bù đắp cho các chi phí bổ sung ở trên, làm cho hệ thống kém hiệu quả hơn. Tuy nhiên, khi tập dữ liệu huấn luyện đủ lớn, hiệu quả của quá trình xử lý song song trong môi trường phân tán có thể bù đắp cho các chi phí bổ sung do đó hệ thống sẽ hiệu quả hơn. Nhìn vào biểu đồ, chúng ta cũng thấy rằng đường biểu diễn chế độ huấn luyện cục bộ có xu hướng tăng nhanh (hướng lên và gần như tuyến tính), trong khi đường biểu diễn chế độ huấn luyện phân tán có xu hướng tăng chậm (di chuyển theo chiều ngang gần như theo lôgarit). Qua đó, chúng ta có thể kết luận rằng: 1) Chỉ huấn luyện mô hình trong môi trường phân tán khi tập dữ liệu huấn luyện đủ lớn; 2) Tập dữ liệu huấn luyện càng lớn thì việc huấn luyện mô hình trong môi trường phân tán càng hiệu quả.
  7. 512 SỬ DỤNG BERT VÀ META-PATH ĐỂ NÂNG CAO KHẢ NĂNG TRẢ LỜI CHO HỆ HỎI ĐÁP Đánh giá mô hình Để đánh giá mô hình, chúng tôi sử dụng tập dữ liệu kiểm thử bao gồm 200.000 câu hỏi, thuộc 10 loại câu hỏi, tương ứng với 10 loại vị từ. Chúng tôi thực hiện hai cấp độ đánh giá, cấp độ loại câu hỏi và cấp độ tổng thể, bằng Classification Report, như trong Bảng 8, được tạo bằng công cụ “sklearn.metrics.classification_report” 1. Trong đó, 0F “Type” là loại câu hỏi (hoặc loại vị từ), “Support” là số lượng câu hỏi của mỗi loại và các cột còn lại tương ứng với Precision(P), Recall(R) và chỉ số F1−score được dùng để đánh giá mô hình cho từng loại câu hỏi từ 1 đến 10. Ba dòng cuối cùng của bảng hiển thị các chỉ số “accuracy”, “macro average” và “weighted average” được dùng để đánh giá mô hình ở cấp độ tổng thể. Trong bảng 8, các chỉ số đánh giá ở cấp độ loại câu hỏi hoặc cấp độ tổng thể đều cao. Ở cấp độ tổng thể, các chỉ số đều trên 80%. Điều này chứng tỏ rằng mô hình phân loại là hiệu quả. Bảng 8. Classification Report Type Precision Recall F1-score Support 1 0,860 0,850 0,855 20.000 2 0,950 0,800 0,869 25.000 3 0,960 0,870 0,913 10.000 4 0,930 0,780 0,779 15.000 5 0,970 0,815 0,793 25.000 6 0,840 0,860 0,850 20.000 7 0,940 0,760 0,840 20.000 8 0,890 0,750 0,814 20.000 9 0,910 0,750 0,822 20.000 10 0,920 0,800 0,856 25.000 Accuracy 0,801 200.000 Macro avg 0,917 0,804 0,839 Weighted avg 0,917 0,801 0,837 Khái niệm tập dữ liệu lớn ở đây là tương đối. Tập dữ liệu lớn hay nhỏ phụ thuộc vào hệ thống triển khai ứng dụng và hiệu suất xử lý. Cùng một tập dữ liệu có thể lớn trên hệ thống này nhưng nhỏ trên hệ thống khác. Ví dụ: tập dữ liệu với 900.000 câu hỏi ở trên là lớn cho hệ thống cục bộ nhưng là nhỏ đối với hệ thống phân tán ở trên. Để đánh giá một tập dữ liệu là lớn hay nhỏ đối với một hệ thống, ngoài kích thước vật lý của nó, chúng ta còn phải dựa vào hiệu suất xử lý. Nếu một hệ thống xử lý một tập dữ liệu không hiệu quả (mất quá nhiều thời gian) thì tập dữ liệu đó có thể được coi là quá lớn đối với hệ thống. Phát triển một bộ tiêu chuẩn để xác định xem một tập dữ liệu là lớn hay nhỏ và có phù hợp với một hệ thống hay không là một chủ đề nghiên cứu thú vị. VI. KẾT LUẬN Trong bài viết này, chúng tôi phát triển một hệ thống phân loại bộ ba để nâng cao khả năng trả lời câu hỏi. Đồ thị tri thức chứa các bộ ba có dạng trong đó h, t là các thực thể đầu và đuôi, p là vị từ chỉ mối quan hệ giữa các thực thể đầu và đuôi. Chúng tôi xây dựng một đồ thị tri thức về Du lịch Việt Nam. Chúng tôi xem đồ thị tri thức này như một HIN. Trong HIN, meta-path đóng một vai trò quan trọng. Chúng tôi sử dụng Breadth-First Search để khám phá tất cả các meta-path của HIN bằng cách sử dụng lược đồ mạng. Chúng tôi sử dụng Motif Finding của GraphFrames để tạo các path instance của meta-path trong một HIN có quy mô lớn. Từ các meta-path này, chúng tôi tạo ra các bộ ba cơ sở và các bộ ba suy diễn từ các path instance. Đây là thông tin liên kết của bộ ba. Mỗi bộ ba sẽ được chuyển đổi thành văn bản mô tả bộ ba. Văn bản này là mô tả của thực thể và vị từ của bộ ba. Đây là thông tin cơ sở nội dung của bộ ba. Chúng tôi sử dụng văn bản được tạo từ bộ ba để huấn luyện mô hình phân loại bộ ba dựa trên BERT. Chúng tôi sử dụng mô hình dựa trên BERT này để phân loại bộ ba nhằm cải thiện năng lực của hệ hỏi đáp. Chúng tôi đã thử nghiệm Motif Search của GraphFrames và mô hình phân loại bộ ba dựa trên BERT của chúng tôi với một số đồ thị tri thức như FB13, WN11 và VNTKG để chứng minh hiệu suất của thuật toán đề xuất của chúng tôi TÀI LIỆU THAM KHẢO [1] Changping Meng, R. C., Discovering Meta-paths in large heterogeneous information networks. WWW. Florence, Italy, 2015. [2] Chi Sun, X. Q,. How to fine-tune BERT for text classification. Retrieved 2 12, 2020, from arXiv:1905.05583v3 [cs.CL] 5 Feb 2020, 2020. [3] Chuan Shi, Y. L., A Survey of heterogeneous information network analysis. IEEE Transactions on Knowledge and Data Engineering, 29(1), 17-37, 2017. [4] Do, P., A System for Natural language interaction with the heterogeneous information network. In B. B. Gupta, Handbook of Research on Cloud Computing and Big Data Applications in IoT (pp. 271-301). IGI Global Publishing, 2019. 1 https://scikit-learn.org/stable/modules/model_evaluation.html#classification-metrics
  8. Đỗ Phúc, Phan Hồng Trung, Phan Hồ Viết Trường 513 [5] Galkin, M. Knowledge graphs in natural language processing @ ACL 2020. Retrieved June 30, 2020, from https://towardsdatascience.com/knowledge-graphs-in-natural-language-processing-acl-2020-ebb1f0a6e0b1, 2020. [6] Jacob Devlin, M. W. C., BERT: Pre-training of Deep bidirectional transformers for language understanding. arXiv:1810.04805, 2018. [7] Jianfei Yu, J. J., Adapting BERT for target-oriented multimodal sentiment classification. Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence, 2019. [8] Liang Yao, C. M., KG-BERT: BERT for knowledge graph completion. arXiv:1909.03193v2 [cs.CL] 11 Sep 2019, 2019. [9] Lijun Chang, X. L., Efficiently computing top-K shortest path join. 18th International Conference on Extending Database Technology (EDBT), Brussels, Belgium, 2015. [10] Manish Munikar, S. S. (2020, 3 15). Fine-grained sentiment classification using BERT. Retrieved from arXiv:1910.03474v1 [cs.CL] 4 Oct 2019. [11] Phuc Do, P. P., DW-PathSim: a distributed computing model for topic-driven weighted meta-path-based similarity measure in a large-scale content-based heterogeneous information network. Journal of Information and Telecommunication, 1-20, 2018. [12] Santiago Gonzalez-Carvajal, E. C. M. Comparing BERT against traditional machine. Retrieved 5 17, 2020, from arXiv:2005.13012v1 [cs.CL] 26 May 2020, 2020. [13] Siva Reddy, D. C., CoQA: A Conversational question answering challenge. arXiv:1808.07042v2, 2019. [14] Tomasz Drabas, D. L., Learning PySpark. Packt, 2017. [15] Zhigang Wang, a. J., Text-Enhanced representation learning for knowledge graph. Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence (IJCAI-16), 1293-1300, 2016. USING BERT AND META-PATH TO IMPROVE QUESTION ANSWERING Phan Ho Viet Truong, Phan Hong Trung, Do Phuc ABSTRACT: Machine reading comprehension is an emerging field in the past few years, and has an important role in natural language question answering. The current question answering systems have achieved state-of-the-art results such as rules, LSTM and BERT. However, these approaches only find the answer which appears in given passages but hasn’t find answers from external sources. This paper used a pre-trained language model named BERT and knowledge graph (KG) to solve the above drawbacks. Specifically, we focused on knowledge graph completion. This solution combined information based on content and links of triples to improve our question answering. We used meta-path to generate path instances, and BERT to classify triples with a description of each component. Our proposed method achieved an average accuracy of 93.34%, meanwhile, TEKE, DistMult have an accuracy of 86%, TransSparse, AATE, DisMult-HRS have the accuracy from 86% to 90% and KG-BERT has an accuracy of 92.23%.
nguon tai.lieu . vn