Xử lý ngôn ngữ tự nhiên Tìm hiểu về trích rút mối quan hệ giữa các thực thể trong tiếng Việt. Mô tả chi tiết dataset trong VLSP 2020 RE, cách xử lí dữ liệu và về cách áp dụng mô hình dựa trên BERT. Tìm hiểu về trích rút thông tin. Các phương pháp giải quyết bài toán.
TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO CUỐI KÌ XỬ LÝ NGƠN TỰ NHIÊN Đề tài: TÌM HIỂU VỀ TRÍCH RÚT MỐI QUAN HỆ GIỮA CÁC THỰC THỂ TRONG TIẾNG VIỆT Hà Nội, tháng năm 2022 TRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN o0o BÁO CÁO CUỐI KÌ XỬ LÝ NGƠN TỰ NHIÊN Đề tài: Thành viên nhóm: Nguyễn Thị Lan Anh Đào Việt Cường Vũ Duy Đan Phạm Huy Hưng Trần Duy Khánh 10264 28264 44764 94464 1655864 Hà Nội, tháng năm 2022 LỜI CẢM ƠN Nhóm em cảm ơn thầy Phạm Hồng Phong nhiều giảng dạy tận tình, truyền đạt kiến thức quý báu cho tụi em suốt thời gian học tập vừa qua Do chưa có nhiều kinh nghiệm hạn chế kiến thức, báo cáo khơng tránh khỏi thiếu sót Rất mong nhận lời nhận xét, đóng góp ý kiến, phê bình từ thầy để báo cáo hồn thiện Nhóm em kính chúc thầy nhiều sức khỏe, hạnh phúc thành công công việc sống TÓM TẮT Hiện với phát triển bùng nổ ngành Công nghệ thông tin, Intenet chứa lượng liệu khổng lồ, vai trị hệ thống khai thác thơng tin trở nên quan trọng Relation Extraction nhiệm vụ Information Extraction, tập trung vào việc phân loại mối quan hệ cặp Named Entities (NE) đề cập văn Có nhiều phương pháp chiết xuất nay, nhận nhiều quan tâm từ nhà nghiên cứu ngơn ngữ nói chung tiếng Việt nói riêng Theo thống kê mơ hình dựa tên BERT (Bidirectional Encoder Representations from Transformers) đạt nhiều thành công trở thành xu hướng sử dụng rộng rãi biệt BERT ứng dụng cho Tiếng Việt Trong báo cáo này, chúng tơi trình bày cách tiếp cận cách áp dụng mơ hình dựa BERT để trích xuất mối quan hệ nhiệm vụ chung chiến dịch VLSP 2020 Về chi tiết, chúng tơi trình bày: (1) ý tưởng giải nhiệm vụ này; (2) cách xử lý trước liệu phù hợp cho mang lại kết tốt có thể; (3) cách sử dụng mơ hình dựa BERT cho nhiệm vụ trích xuất quan hệ; (4) kết thu dựa liệu tổ chức VLSP 2020 Nội dungi dung DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC HÌNH VẼ DANH MỤC CÁC BẢNG CHƯƠNG I: GIỚI THIỆU VỀ XỬ LÝ NGÔN NGỮ TỰ NHIÊN CHƯƠNG II: CƠ SỞ LÝ THUYẾT Các lý thuyết liên quan 1.1 Bài tốn trích rút thơng tin 1.2 Bài tốn trích rút thực thể .5 1.3 Bài tốn trích rút mối quan hệ thực thể .6 CHƯƠNG III: CÁC PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN Phân tích yêu cầu toán .7 1.1 Yêu cầu toán liệu .7 Các phương pháp giải toán 2.1 Phương phápBERT 2.2 Phương pháp PhoBert 2.3 Phương pháp XLM-RoBERTa 2.4 Phương pháp PhoBert kết hợp với XLM-RoBERTa .9 Phương pháp đề xuất giải toán .12 Phương pháp giải toán 12 4.1 Mơ hình tổng quát 12 4.2 Đặc trưng mô hình đề xuất 13 CHƯƠNG IV: THỰC NGHIỆM .15 Dữ liệu 15 Xử lí liệu 15 Công nghệ sử dụng 15 Các đánh giá 15 CHƯƠNG V : KẾT QUẢ 17 Kết đạt 17 1.1.Tham số thực nghiệm 17 1.2 Kết đạt 18 Kết luận 19 2.1 Kết đạt 19 2.2 Hạn chế 20 2.3 Hướng phát triển 20 TÀI LIỆU THAM KHẢO .21 DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT CÁC CHỮ VIẾT TẮT NLP : Natural Language Processing IE : Information Extraction RE : Relation Extraction NE : Named Entities SVC : Support Vector Classification KNN : K-nearest neighbors DANH MỤC CÁC HÌNH VẼ Hình 1.2.1 Các thao tác tốn trích rút thơng tin Hình 1.3.1 Sơ đồ tổng quát PhoBERT đề xuất 13 Y Hình 1.5 Chỉ số accuracy tập train dev trình huấn luyện .17 Hình 1.5 Chỉ số loss trình huấn luyện .18 Hình 1.5 Độ xác model dựa theo độ đo accuracy tập dev .18 Hình 1.5 Độ xác model dựa theo độ đo F1-score với average macro tập dev 19 DANH MỤC CÁC BẢN Bảng 1.2.1 Bảng mô tả liệu .7 Bảng 1.2.2 Hiệu suất mơ hình tập phát triển 10 Y Bảng 1.4 Thư viện môi trường 15 Bảng 1.5 Độ xác model dựa theo độ đo accuracy tập dev 18 Bảng 1.5 Độ xác model dựa theo độ đo F1-score với average macro tập dev 19 CHƯƠNG I: GIỚI THIỆU VỀ XỬ LÝ NGÔN NGỮ TỰ NHIÊN Ngày nay, xử lý ngôn ngữ tự nhiên (NLP) lĩnh vực nghiên cứu thú vị cần thiết Kết lĩnh vực xử lý ngơn ngữ tự nhiên mang lại nhiều lợi ích cho người, giúp người nhiều việc tự động hóa tác vụ xử lý văn Tuy nhiên, so với ngôn ngữ phổ biến khác tiếng Anh, tiếng Trung…, kết thu trích xuất hệ Tiếng Việt nhiều hạn chế Trong hội thảo quốc tế xử lí giọng nói, đặc biệt ngơn ngữ Tiếng Việt, lần có nhiệm vụ chung chiết tách quan hệ Tiếng Việt Điều thực tuyệt vời có nghĩa khai thác mối quan hệ tiếng Việt cộng đồng nghiên cứu ngành công nghiệp quan tâm nhiều Khai thác mối quan hệ chiến dịch VLSP 2020, nhà tổ chức phát hành Trainning, Development Test liệu Dữ liệu Trainning and Development bao gồm tờ báo điện tử Việt Nam gắn nhãn theo loại Named Entities - NE (Locations, Organizations, and Persons) đề cập báo mối quan hệ gắn nhãn loại NE phải thuộc câu Dữ liệu Test chứa thông tin tương tự Training Development Dữ liệu Test dự đoán nhãn mối quan hệ NE câu Tiếp theo, mô tả chi tiết dataset VLSP 2020 RE, cách xử lí liệu cách áp dụng mơ hình dựa BERT CHƯƠNG II: CƠ SỞ LÝ THUYẾT Các lý thuyết liên quan 1.1 Bài tốn trích rút thơng tin Trích rút thông tin (Information Extraction - IE) việc nhận biết đoạn văn ứng với lớp thực thể mối quan hệ thực thể từ liệu dạng văn chuyển chúng sang dạng biểu diễn có cấu trúc (ví dụ, sở liệu) Có nhiều mức độ trích rút thơng tin từ văn sau: trích rút thực thể (Named Entity Recognition - NER) , trích rút quan hệ thực thể (Relation Extraction – RE), phân giải đồng tham chiếu (Co-Reference Resolution)… Các kỹ thuật sử dụng trích rút thơng tin gồm có: phân đoạn, phân lớp, kết hợp phân cụm Hình 1.2.1 Các thao tác tốn trích rút thơng tin 1.2 Bài tốn trích rút thực thể Trích rút thực thể (Entity Extraction), cịn gọi nhận dạng thực thể có tên (Named Entity Reconition – NER) xác định thực thể (Entity Identification) việc xác định từ, cụm từ văn đóng vai trị thực thể thuọc lớp định nghĩa trước CHƯƠNG III: CÁC PHƯƠNG PHÁP GIẢI QUYẾT BÀI TỐN Phân tích u cầu toán 1.1 Yêu cầu toán liệu Bài tốn trích xuất mối quan hệ đề xuất để làm tảng cho việc xử lý tài liệu cách thông minh việc giải tốn trích xuất thơng tin Trích xuất mối quan hệ Bài tốn tập trung vào việc phân loại cặp thực thể (NE) văn tin tức tiếng Việt thành bốn loại khác không trùng lặp với quan hệ ngữ nghĩa xác định trước Bài toán tập trung vào việc trích xuất quan hệ câu, tức giới hạn quan hệ với quan hệ thể câu Mối quan hệ lần đề cập đến thực thể thích mà mối quan hệ tham chiếu cách rõ ràng câu phải chứa hai lượt đề cập Ngay có mối quan hệ thực tế, bắt buộc phải có chứng chứng minh cho mối quan hệ ngữ cảnh cục nơi mà gắn thẻ Dữ liệu : Bộ liệu (training, development and test) tái sử dụng phát triển từ nhiệm vụ VLSP-2018 (VNER 2018), thu thập từ báo điện tử đăng web Nó thích với ba loại thực thể (NE): Locations (LOC), Organizations (ORG) Persons (PER), bốn loại mối quan hệ NE Các kiểu quan hệ mô tả bảng 1.2.1 bên N o Relation PERSONAL–SOCIAL ORGANIZATION– AFFILIATION LOCATED PART–WHOLE Arguments Directionalit y PER – LOC, ORG – LOC Directed LOC – LOC, ORG – ORG, ORG- Directed LOC PER – PER Undirected PER–ORG, PER-LOC, ORG–ORG, Directed LOC-ORG Bảng 1.2.1 Bảng mô tả liệu Các phương pháp giải toán 2.1 Phương pháp BERT BERT viết tắt Bidirectional Encoder Representations from Transformers hiểu mơ hình học sẵn hay gọi pre-train model, học vector đại diện theo ngữ cảnh chiều từ, sử dụng để transfer sang toán khác lĩnh vực xử lý ngôn ngữ tự nhiên BERT thành công việc cải thiện công việc gần việc tìm đại diện từ khơng gian số (khơng gian mà máy tính hiểu được) thơng qua ngữ cảnh Kiến trúc mơ hình BERT kiến trúc đa tầng gồm nhiều lớp Bidirectional Transformer encoder dựa mô tả Vaswani et al (2017) phát hành thư viện tensor2tensor Việc sử dụng Transformers trở nên phổ biến thời gian gần Trong báo cáo này, gọi L số lớp Transformer(blocks) sử dụng với kích thước lớp ẩn H số heads lớp attention A Trong trường hợp, kích thước lọc(filter size) đặt 4H Điều có nghĩa H = 768 filter size = 3072 H = 1024 filter size = 4096 Báo cáo chủ yếu lấy kết kích thước mơ hình: BERT BASE : L=12, H=768, A=12, Total Parameters=110M BERT LARGE : L=24, H=1024, A=16, Total Parameters=340M BERT ngày phát triển với phiên cải tiến, biến thể RoBERTa, ALBERT, DistilBERT, 2.2 Phương pháp PhoBert Đây pre-trained huấn luyện monolingual language, tức huấn luyện dành riêng cho tiếng Việt Tương tự BERT, PhoBERT có phiên : PhoBERT BASE với 12transformers block PhoBERT LARGE với 24 transformers block PhoBERT train khoảng 20GB liệu bao gồm khoảng 1GB Vietnamese Wikipedia corpus 19GB lại lấy từ Vietnamese news corpus Đây lượng liệu ổn để train mơ BERT PhoBERT sử dụng RDRSegmenter VnCoreNLP để tách từ cho liệu đầu vào trước qua BPE encoder 2.3 Phương pháp XLM-RoBERTa RoBERTa phiên huấn luyện lại BERT với phương pháp huấn luyện tốt với liệu tang gấp 10 lần Để tăng cường q trình huấn luyện, RoBERTa khơng sử dụng chế dự đoán câu (NSP) từ BERT mà sử dụng kỹ thuật mặt nạ động (dynamic masking), theo token mặt nạ bị thay đổi trình huấn luyện Sử dụng kích thước Batch lớn cho thấy hiệu tốt huấn luyện RoBERTa sử dụng 160GB văn để huấn luyện Trong đó, 16GB sách Wikipedia tiếng Anh sử dụng huấn luyện BERT Phần lại bao gồm CommonCrawl News dataset (63 triệu tin, 76 GB), ngữ liệu văn Web (38 GB) Common Crawl Stories (31GB) Mơ hình huấn luyện với GPU Tesla V100 ngày XLM-RoBERTa phiên đa ngôn ngữ RoBERTa Nó pre-trained 2.5 TB liệu Common Crawl lọc chứa 100 ngôn ngữ 2.4 Phương pháp PhoBert kết hợp với XLM-RoBERTa Các nghiên cứu tốn tập trung vào mơ hình BERT-based Các mơ hình đạt thành tựu cao nghiên cứu NLP Vì trở thành xu hướng sử dụng rộng rãi cho nhiều nghiên cứu NLP Về ý tưởng : - Trước tiên cần chia tài liệu thô ban đầu theo câu tập liệu chứa mối quan hệ gắn nhãn trước thực thể (NE) thuộc câu với Giả sử có tổng n NE câu, tạo n ( n−1 ) câu tương ứng n ( n−1 ) cặp NE Mỗi câu điểm liệu chuyển tới mơ hình BERT2 based sau Nhãn cho điểm liệu nhãn quan hệ cặp NE câu - Có bốn loại quan hệ Ba số chúng có hướng (directed), cần tạo hai quan hệ vơ hướng (undirected) cho quan hệ có hướng, cịn tùy thuộc vào việc nhãn quan hệ có hướng đứng trước hay sau cặp NE câu - Để nắm rõ hơn, vài ví dụ Các ví dụ trích từ báo “KINH TẾ” thuộc liệu VLSP2018 o Ví dụ 1: Trong câu: “Hà Nội thủ đô Việt Nam”, dựa vào bảng 1.2.1 hai thực thể (“Hà Nội” “Việt Nam”) nhãn Locations (LOC) suy mối quan hệ cặp NE “PART-WHOLE” o Ví dụ 2: Trong câu: “Đào Minh Tú – Phó Thống đốc Ngân hàng Nhà nước”, dựa vào bảng 1.2.1 thực thể “Đào Minh Tú” có nhãn Persons (PER) “Ngân hàng Nhà nước” có nhãn Organizations (ORG) suy mối quan hệ cặp NE “ORGANIZATION–AFFILIATION” Các bước Tiền xử lí liệu : - Trước tiên xóa ký tự chữ số đầu cuối thực thể (NE) - Tiếp đến sử dụng thư viện Underthesea để chia tài liệu thô thành câu tạo phân đoạn từ cho câu - Đôi khi, Undethesea không chia tài liệu thô số ký tự cuối câu dấu chấm, dấu ba chấm, Vì vậy, chúng tơi tìm thấy câu bị lỗi sửa lại cách sử dụng số quy tắc - Khắc phục cố với phân đoạn từ bị lỗi Underthesea để khớp với NE… - Bên cạnh đó, thực số bước tiền xử lý khác như: Kiểm tra sửa có mối liên hệ thực thể thuộc câu khác nhau,… để đảm bảo liệu trích xuất từ liệu thơ xác Model Micro-averaged F-score Model 0.9323 Model 0.9310 Model 0.9309 Bảng 1.2.2 Hiệu suất mơ hình tập phát triển 10 Fully connected Fully connected first entity second entity first entity second entity XLM-RoBERTa PhoBERT first entity Hình second entity Hình 1.2.2 Sơ đồ tổng quát PhoBERT XLM-RoBERTa Như hình 1.2.1 trên, chúng tơi sử dụng hai mơ hình BERT-based hỗ trợ tiếng Việt: PhoBERT (PB) XLM-RoBERTa (XLMR) Về chi tiết, làm theo bước sau để xử lý câu: - Chuyển câu vào mơ hình BERT-based để tạo vectơ nhúng cho cặp NE câu Sử dụng hai mẫu BERT-base PB XLMR; sử dụng PB XLMR - Đặc biệt, NE có nhiều mảnh ghép từ Vì vậy, sử dụng kết hợp phép nhúng từ lớp BERT khác thành vectơ nhúng cho đoạn từ 11 - Sau đó, với NE, thực quy trình tương tự để tạo vectơ nhúng từ vectơ nhúng mảnh từ - Mỗi câu có hai thực thể, có hai vectơ nhúng Đặt vectơ h1; vectơ nhúng thứ hai h2 Từ hai vectơ này, tạo vectơ nhúng cho câu tại: [h1, h2] Kết đạt : - Khi sử dụng hai models (PB XLMR) hai models (PB XLMR) nhận thấy kết việc sử dụng hai models tốt nhiều Chi tiết kết trình bày Bảng 1.2 Phương pháp đề xuất giải toán Trước tiên xây dựng liệu, liệu gồm tập train, dev test Mỗi liệu bao gồm: đoạn văn, vị trí thực thể loại quan hệ thực Sử dụng mơ hình PhoBERT hỗ trợ tiếng Việt để tạo vectơ nhúng Sử dụng mơ hình dự đoán như: Multil-layers neural network để dự đoán mối quan hệ cặp thực thể Nhóm lựa chọn phương pháp vì: o BERT coi bước đột phá thực Google lĩnh vực xử lý ngôn ngữ tự nhiên Và PhoBERT – pre-trained huấn luyện sẵn dành cho tiếng Việt PhoBERT train sẵn khoảng 20GB liệu o Hiện PhoBERT mơ hình hỗ trợ tiếng Việt đánh giá đem lại kết tốt Phương pháp giải tốn 4.1 Mơ hình tổng qt Mơ hình tổng qt phương pháp trình bày theo sơ đồ Trong mơ hình gồm phần chính: - Phần 1: Tạo đầu vào cho mơ hình PhoBERT việc tạo word tokenize việc sử dụng Underthesea - Phần 2: Sử dụng PhoBERT để tạo vectơ nhúng - Phần 3: Huấn luyện mơ hình multi-layer neural network 12 Fully connected Fully connected first entity second entity PhoBERT first entity second entity Hình 1.3.1 Sơ đồ tổng quát PhoBERT đề xuất 4.2 Đặc trưng mơ hình đề xuất 4.2.1 Tạo word tokenize Underthesea Đầu vào mơ hình PhoBERT cần liệu word tokenize sẵn Trong tiếng việt, cần phải tiến hành phân tách từ, số từ cấu thành bới nhiều từ trở lên Ví dụ “đất nước” phải tạo word tokenize phân tách từ Vì sử dụng Underthesea để tạo word tokenize 4.2.2 Tạo vectơ nhúng mơ hình PhoBERT Bước thứ tạo vectơ nhúng hay gọi xây dựng ma trận thông tin đặc trưng Bước quan trọng để huấn luyện mơ hình Tạo vectơ nhúng gồm bước chính: 13 o Ánh xạ word tokenize vào từ điển PhoBERT để encode o Tạo embedding Dựa vào kết BertForSequenceClassification gồm 25 tầng layer Chúng ta lấy embedding mảnh từ thực thể sau cộng chúng lại với để tạo thành embedding hoàn chỉnh cho thực thể 4.2.3 Phương pháp huấn luyện Sử dụng mơ hình Multi-layer Neural Network gồm tầng Linear Classification tầng Dropout Đầu tầng Linear Classification thứ ma trận 1024 cột Đầu tầng Linear Classification thứ hai ma trận gồm cột 14 CHƯƠNG IV: THỰC NGHIỆM Dữ liệu Dữ liệu lấy từ VLSP-2018 bao gồm ba liệu: Trainning, Development Test, file chứa liệu thô (các báo điện tử) xử lí tách thành câu Với câu bao gồm cặp thực thể (NE), căp thực thể phải dựa ba thực thể cho từ liệu lấy từ VLSP-2018: Locations , Organizations , Persons Sau dựa vào cặp thực thể suy mối quan hệ Chúng câu, mối quan hệ bao gồm: LOCATED, PART-WHOLE, PERSONAL SOCIAL ORGANIZATION–AFFILIATION Và cặp thực thể khơng có mối quan hệ kiểu quan hệ OTHERS Xử lí liệu Vì đầu vào mơ hình PhoBERT cần liệu word tokenize sẵn sử dụng Underthsea cho bước tiền xử lý liệu Underthesea thư viện hỗ trợ tiếng Việt giúp phân tách từ Một số từ bao gồm nhiều từ trở lên tạo thành nghĩa hoàn chỉnh Underthesea cung cấp hàm word_tokenize hỗ trợ làm điều Sau tạo word tokenize cho đoạn văn bản, ta phải tiến hành xác định lại vị trí thực thể đoạn văn gốc có khoảng cách cịn word tokenize khơng Cơng nghệ sử dụng Ngơn ngữ Thư viện Môi trường Python 3.6 Pytorch, Underthesea, tranformers, PhoBERT, Sklearn, numpy Google Colab với GPU Bảng 1.4 Thư viện mơi trường Các đánh giá Nhóm sử dụng độ đo Accuracy F1-score Accuracy o Độ đo đơn giản dựa tỉ lệ số điểm dự đoán tổng số điểm tập kiểm o Công thức: n_correct / total_data F1-score macro o F1 Score trung bình điều hịa precision recall Với tham 15 ... trích rút mối quan hệ thực thể Trích rút mối quan hệ thực thể (Relation Extraction - RE) việc xác định mối quan hệ thực thể văn Bài tốn trích rút mối quan hệ thực thể khác với tốn trích rút thực. .. việc trích xuất quan hệ câu, tức giới hạn quan hệ với quan hệ thể câu Mối quan hệ lần đề cập đến thực thể thích mà mối quan hệ tham chiếu cách rõ ràng câu phải chứa hai lượt đề cập Ngay có mối quan. .. tốn trích rút thực thể chỗ trích rút thực thể tốn quan tâm đến dãy từ, tức tìm phân lớp dãy từ, hay nói cách khác, gán nhãn cho dãy từ Trong tốn trích rút mối quan hệ thực thể lại không gán nhãn