Chương 1 GIỚI THIỆU ĐỀ TÀI: Nêu lý do chọn đề tài Ứng dụng mạng nơ-ron đồ thị cho bài toán rút trích quan hệ giữa các thực thể trên tập dữ liệu tiếng Việt, mô tả bài toán rút trích quan hệ, tập dữ liệu được sử dụng, phương pháp đánh giá. − Chương 2 CƠ SỞ KIẾN THỨC: Trình bày cơ sở kiến thức cơ bản về deep learning, Artificial Neural Network, Recurrent Neural Network, Long Short-Term Memory, Attention. − Chương 3 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN: Giới thiệu các công trình nghiên cứu liên quan tới phương pháp Ứng dụng mạng nơ-ron đồ thị cho bài toán rút trích quan hệ giữa các thực thể trên tập dữ liệu tiếng Việt. − Chương 4 MÔ HÌNH ỨNG DỤNG: Trình bày cụ thể về mô hình GNN sẽ được ứng dụng cho bài toán Rút trích quan hệ cho tập dữ liệu tiếng Việt.
Đề xuất tiền xử lý dữ liệu, sử dụng BERT [11] trong embedding dữ liệu đầu vào và các kết quả thực nghiệm. − Chương 5 KẾT LUẬN: Tổng kết các kết quả, vấn đề còn tồn tại, đóng góp của luận văn. Đưa ra hướng mở rộng, phát triển đề tài trong tương lai. 7 Chương 2 CƠ SỞ KIẾN THỨC 2.
Mô hình Artificial Neural Network - ANN Artificial Neural Network - ANN (Mạng nơ-ron nhân tạo) [12] thường được gọi đơn giản là Neural Network - NN (Mạng nơ-ron), là hệ thống tính toán lấy cảm hứng từ mạng nơ-ron sinh học cấu thành của não người. ANN gồm một tập hợp các đơn vị hoặc gọi là nút được kết nối với nhau, gọi là các nơ-ron(tế bào thần kinh) nhân tạo. ANN mô phỏng một cách đơn giản các nơ-ron, mỗi kết nối của ANN, giống như kết nối thần kinh trong não sinh học. Các nơ-ron liên kết và truyền tín hiệu đến các nơ-ron khác và có đặc điểm là có nhiều đầu vào nhưng chỉ có một đầu ra.
Nơron thần kinh sinh học là đơn vị cơ bản của hệ thống thần kinh trong cơ thể người và động vật. Nó gồm một tế bào (soma), các nhánh dẫn truyền xung thần kinh (dendrites) để nhận tín hiệu, và một sợi dẫn truyền xung thần kinh (axon) để truyền tín hiệu đi (ngõ ra) như trong hình 2.1: Các thành phần cơ bản của một nơ-ron thần kinh sinh học [2] 8 Nơ-ron thần kinh hoạt động bằng cách tiếp nhận các thông tin đưa vào từ các đuôi gai (dendrites), tính toán và tổng hợp tại thân nơ-ron (cell body), sau đó lan truyền kết quả đến các nơ-ron khác thông qua sợi trục (axon). Một tế bào nơ-ron nhân tạo (perceptron) của mô hình học sâu (deep learning) cũng sẽ nhận nhiều tín hiệu, sau đó xử lý và truyền kết quả đi cho các nơ-ron liên kết với nó. − Tín hiệu tại một kết nối là một số thực và giá trị đầu ra của mỗi nơ-ron được tính bằng hàm phi tuyến tính có tham số, để tổng hợp các giá trị đầu vào của nó.
− Các kết nối được gọi là các cạnh. Các nơ-ron và các cạnh có trọng số để điều chỉnh tăng hoặc giảm cường độ của tín hiệu tại một kết nối trong quá trình huấn luyện. − Nơ-ron có thể có ngưỡng sao cho tín hiệu chỉ được gửi đi khi tín hiệu tổng hợp vượt qua ngưỡng đó. Trong ví dụ hình 2.2, đơn vị tế bào thần kinh sẽ thực hiện: − Nhận vào ba giá trị: x1 , x2 , x3 − Tính tổng có trọng số và nhân giá trị theo trọng số tương ứng w1, w2, w3 và thêm vào đó một số hạng b (bias).
− Cuối cùng, chuyển tổng kết quả qua một hàm sigmoid để có kết quả là một số giữa 0 và 1. Ví dụ trên đây sử dụng hàm sigmoid là hàm kích hoạt, trong trường hợp tổng quát có thể sử dụng hàm kích hoạt khác thay cho hàm sigmoid. Khi kết hợp nhiều perceptron với nhau sẽ tạo nên mô hình ANN gồm nhiều tầng (layer), tùy theo mục đích thiết kế mỗi tầng sẽ có nhiệm vụ riêng. 9 − Tầng đầu vào (input layer) là tầng đầu tiên nhận dữ liệu đầu vào.
− Tầng ẩn (hidden layer)nằm giữa, gồm các phép tính toán chuyển đổi dữ liệu đầu vào cho ra dữ liệu đầu ra trung gian. Số lượng tầng ẩn, không có giới hạn cụ thể, tùy theo mục đích thiết kế. Khi có nhiều hơn 1 tầng ẩn ANN sẽ được gọi là mô hình Deep learning (học sâu) [13] − Tầng kết quả (output layer) là tầng cuối cùng chứa dữ liệu đầu ra.2: Cấu trúc của một perceptron 10 2. Mô hình Recurrent Neural Network - RNN Văn bản là dữ liệu dạng chuỗi tuần tự, với ý nghĩa của từng từ phụ thuộc vào vị trí của nó trong câu.
Mỗi từ trong văn bản đều mang theo thông tin và sự liên kết giữa các từ đóng vai trò quan trọng trong việc hiểu và xử lý văn bản. Recurrent Neural Network - RNN (mạng nơ-ron hồi quy) [14] là một mạng nơ-ron được thiết kế đặc biệt để xử lý dữ liệu chuỗi, bao gồm ngôn ngữ tự nhiên, giúp mô hình "nhìn thấy" và hiểu được ý nghĩa của các từ trong ngữ cảnh bằng cách xử lý và khai thác thông tin hiệu quả từ chuỗi tuần tự. RNN có khả năng lưu lại trạng thái hiện tại và cho phép thông tin từ quá khứ truyền đi và tác động đến quá trình xử lý từ tiếp theo. Nhờ đó, giúp cho RNN có khả năng xử lý và hiểu được ý nghĩa của văn bản dựa trên sự phụ thuộc giữa các từ và vị trí của chúng trong câu.
Chính vì vậy, RNN trở thành một công cụ mạnh mẽ trong xử lý ngôn ngữ tự nhiên, dịch máy, nhận dạng giọng nói, và nhiều ứng dụng khác liên quan đến dữ liệu dạng chuỗi. Cấu trúc mô hình RNN: − Gồm một tầng xử lý dữ liệu với số lượng perceptron bằng độ dài chuỗi dữ liệu đầu vào. − Ngoài thông tin của dữ liệu đầu vào, perceptron có thêm dữ liệu đầu vào khác là đầu ra của perceptron ở ngay trước nó. Tham khảo mô hình được mô tả trong hình 2.3, để hiểu thêm Có thể hiểu thêm về cách thức hoạt động của RNN.3: Cấu trúc mô hình Recurrent Neural Network Một mô hình RNN cơ bản có thể được mô tả như sau: − Đầu vào: x1 , x2 ,.
xt là các vector đầu vào biểu diễn thành phần thứ t của chuỗi dữ liệu được đưa vào. − Trạng thái ẩn: h1 , h2 ,. ht là trạng thái ẩn tại thời điểm t, cũng là ngõ vào cho nơ-ron kế tiếp. yt ngõ ra tại thời điểm t.
Trong ví dụ hình 2.3, độ dài chuỗi dữ liệu đầu ra đúng bằng với độ dài chuỗi dữ liệu đầu vào. Nhưng đối với mô hình RNN, độ dài của chuỗi đầu vào và đầu ra có thể thay đổi tùy thuộc vào từng bài toán cụ thể. Chuỗi đầu vào thể có độ dài bất kỳ, điều này cho phép xử lý các dữ liệu có độ dài khác nhau. Tương tự, chuỗi đầu ra cũng có thể có độ dài linh hoạt, tùy thuộc vào yêu cầu của bài toán.1: Các trường hợp xảy ra với độ dài đầu vào và đầu ra của mô hình RNN Trường hợp Độ dài dữ liệu đầu vào Độ dài dữ liệu đầu ra 1 1 n>1 2 n>1 1 3 n>1 n>1 12 Quá trình biến đổi các vector đầu vào xt và ht−1 sang các vector đầu ra ht và yt tại bước xử lý dữ liệu thứ t là quá trình huấn luyện các bộ trọng số của các ma trận Wxh , Whh và Why được thực hiện bởi perceptron với các phép tính toán được sắp xếp theo các thứ tự sau Hình 2.4: Cơ chế hoạt động của perceptron trong mô hình Recurrent Neural Network 1.
Tính tích của xt và ma trận trọng số Wxh. Tính tích của ht−1 và ma trận trọng số Whh. Thực hiện phép tổng của hai tích trên với giá trị của bias, sau đó đưa kết quả qua hàm tanh sẽ thu được giá trị của hidden state ht ; ht = tanh(Wxh xt +Whh ht−1 + b) (2. Dữ liệu đầu vào là kết quả của hàm so f tmax có giá trị tham số là tích 13 của ma trận trọng số Why và hidden state ht.
yt = so f tmax(Why ht ) (2.2) Trong mạng RNN, quá trình biến đổi các vector đầu vào xt và ht−1 sang các vector đầu ra ht và yt được thực hiện bằng cách sử dụng các ma trận trọng số và hàm kích hoạt. Đầu tiên, vector đầu vào xt và vector trạng thái trước đó ht−1 được kết hợp để tạo ra vector zt : zt = Wxh xt +Whh ht−1 + bh (2.3) Trong đó: − Wh là ma trận trọng số cho phép ánh xạ từ vector đầu vào zt sang vector kết hợp zt. − Whh là ma trận trọng số cho phép ánh xạ từ vector trạng thái trước đó ht−1 sang vector kết hợp zt. − bh là vector điều chỉnh nếu có.
Sau đó, zt được truyền qua hàm kích hoạt phi tuyến tính để tạo ra vec- tor trạng thái hiện tại ht và tính toán vector đầu ra ytt. Thông thường, hàm kích hoạt được sử dụng trong RNN là hàm tanh hoặc hàm sig- moid. Cuối cùng, vector trạng thái hiện tại ht kết hợp ma trận trọng số Wy cho ra kết quả là ngõ ra yt 14 yt = so f tmax(Why ht + by ) (2.5) Trong đó: − Why là ma trận trọng số cho phép ánh xạ từ vector trạng thái hiện tại ht sang vector đầu ra yt. − by vector điều chỉnh nếu có.
Quá trình này được lặp lại cho để tạo ra các vector trạng thái và vector đầu ra tương ứng. Sau đó, quá trình lan truyền ngược (back propaga- tion) được sử dụng để điều chỉnh các ma trận trọng số và cập nhật mô hình RNN trong quá trình huấn luyện. Mô hình Long Short-Term Memory Mô hình Long Short-Term Memory (LSTM) là một loại mạng nơ-ron hồi quy (RNN) được thiết kế để giải quyết vấn đề "đạo hàm biến mất" (gra- dient vanishing) trong mạng RNN truyền thống. RNN được thiết kế để xử lý dữ liệu tuần tự, nhưng khi chuỗi đầu vào tương đối dài, RNN có thể sẽ không đáp ứng được yêu cầu dự đoán ngày càng cao của con người.
Đặc điểm của dữ liệu tuần tự là thông tin phía sau nó phụ thuộc vào thông tin phía trước nên cần một mô hình có thể nhớ các từ trước đó lâu hơn và dài hơn. Thêm vào đó, cần có sự chọn lọc thông tin cần lưu lại tại mỗi bước xử lý thay vì ghi nhớ tất cả thông tin trước đó, vì có thể thông tin phía sau chỉ liên quan đến một số thông tin phía trước. Để giải quyết vấn đề này, mô hình LSTM ra đời dựa trên kiến trúc của mô hình RNN.