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.0093 XÂY DỰNG WORDNET TIẾNG VIỆT TỰ ĐỘNG BẰNG NGỮ LIỆU SONG NGỮ Trương Hoàng Bảo, Nguyễn Ngọc Bình, Lê Thành Nguyên, Lê Thị Nhàn, Đinh Điền Khoa Công nghệ Thông tin, Trường Đại học Khoa học Tự nhiên, ĐHQG TP.HCM 1712290@student.hcmus.edu.vn, 1712293@student.hcmus.edu.vn, lethanhnguyen.vn@gmail.com, ltnhan@fit.hcmus.edu.vn, ddien@fit.hcmus.edu.vn TÓM TẮT: Tác giả Farid Haziyev trong nghiên cứu “Automatic WordNet construction using Wikipedia data” đã đề xuất phương pháp xây dựng WordNet sử dụng đồ thị để xử lý nhập nhằng (graph methods), kết hợp 14 WordNet của 14 ngôn ngữ khác nhau để xây dựng WordNet mới. Dựa trên phương pháp của nghiên cứu này, chúng tôi đề xuất phương pháp xây dựng WordNet tiếng Việt chỉ dựa trên WordNet của 4 ngôn ngữ nguồn là Anh, Tây Ban Nha, Pháp, Nhật Bản. Chúng tôi cũng đã thực hiện một số cải tiến như sử dụng kho ngữ liệu TEDTalk, cải tiến phương pháp chọn lọc các tập từ đồng nghĩa (synset). Kết quả khi so sánh WordNet tiếng Trung Quốc được xây dựng bằng phương pháp do chúng tôi đề xuất với WordNet tiếng Trung Quốc (Chinese Open WordNet) có sẵn cho thấy kết quả của chúng tôi tốt hơn về các thông số đánh giá như độ chính xác Precision và độ bao phủ Recall hơn so với dữ liệu mô hình của tác giả xây dựng từ dữ liệu 4 ngôn ngữ. Chúng tôi sử dụng phương pháp đề xuất ở trên để xây dựng WordNet tiếng Việt, kết quả xây dựng được WordNet với 16,143 từ và 17,756 synset. Phương pháp này hoàn toàn có thể được áp dụng để xây dựng WordNet của các ngôn ngữ khác, cũng như thêm vào WordNet của các ngôn ngữ nguồn để tăng số lượng từ và synset được xây dựng. Từ khóa: WordNet, tiếng Việt, TEDTalk, đồ thị, xử lý ngôn ngữ tự nhiên. I. GIỚI THIỆU Ngày nay, các bài toán xử lý ngôn ngữ tự nhiên như: trích xuất thông tin, dịch máy, phân loại văn bản,… được ứng dụng trong nhiều lĩnh vực khác nhau, và WordNet là một trong những nguồn ngữ liệu quan trọng để xây dựng các phương pháp giải quyết những bài toán này. Do đó, chất lượng của WordNet đóng vai trò rất quan trọng đến độ chính xác của các bài toán liên quan. WordNet là một hệ thống dữ liệu về ngữ nghĩa mà ở đó mỗi tập đồng nghĩa (synset) là một lớp đóng vai trò như một nhóm ngữ nghĩa. Mỗi synset chứa các từ đồng nghĩa, kèm với định nghĩa cách dùng, ví dụ và mối quan hệ với các synset khác. Một số mối quan hệ giữa các synset có thể kể đến như quan hệ thượng danh/hạ danh (hypernymy/ hyponymy) và quan hệ bộ phận (meronymy/ holonymy) [1]. Ví dụ synset chứa từ maple (cây gỗ thích) là hạ danh của synset chứa từ tree (cây); synset chứa từ bone (xương) là bộ phận của synset chứa từ arm (tay). Tuy nhiên, thực tế hiện nay cho thấy, những WordNet có chất lượng tốt là của những ngôn ngữ giàu tài nguyên như Anh và Nhật Bản. Đối với ngôn ngữ nghèo tài nguyên như tiếng Việt, mặc dù đã có một số nghiên cứu xây dựng một WordNet tiếng Việt, tuy nhiên chất lượng của các WordNet được xây dựng vẫn chưa cao. Có hai phương pháp xây dựng WordNet là thủ công và tự động. Phương pháp tự động gồm hai hướng là tổng hợp và mở rộng. Trong đó, phương pháp tự động theo hướng mở rộng rất phù hợp với việc xây dựng WordNet cho các ngôn ngữ nghèo tài nguyên như tiếng Việt. Phương pháp này sử dụng WordNet tiếng Anh [2] làm nhân và sau đó ánh xạ đến ngôn ngữ đích thông qua nhiều cách tiếp cận khác nhau. Trong phần II, chúng tôi sẽ giới thiệu các nghiên cứu liên quan trong xây dựng Wordnet tiếng Việt, đồng thời phân tích những ưu nhược điểm của những phương pháp này. Phần III, chúng tôi sẽ giới thiệu mô hình đề xuất của chúng tôi dựa trên mô hình của tác giả Farid Haziyev [3] đồng thời đề xuất một số sự cải tiến để xây dựng Wordnet cho tiếng Việt. Chúng tôi cũng sẽ tiến hành phân tích các kết quả thực nghiệm ở phần IV và nêu một số kết luận tại phần V. II. NHỮNG NGHIÊN CỨU LIÊN QUAN Trong thời gian vừa qua, đã có nhiều nhóm tác giả đề xuất những phương pháp nhằm xây dựng WordNet dành cho tiếng Việt. Những phương pháp có thể được phân thành ba nhóm: thủ công, bán tự động và tự động. Ở hướng tiếp cận thủ công, nhóm tác giả Dương Trọng Hải, Trần Minh Quang và Nguyễn Thị Phương Trang [4] đã đề xuất phương pháp Delphi. Ý tưởng chính của phương pháp là thông qua các cuộc họp có sự tham dự và phân tích của các chuyên gia. WordNet sẽ được xây dựng dựa trên các ý kiến đồng thuận tập thể. Ưu điểm của phương pháp này chính là tận dụng được nguồn tri thức lớn của nhiều chuyên gia, tuy nhiên hạn chế là sẽ mất rất nhiều thời gian và công sức để phân tích vấn đề cho đến khi những vấn đề đều đã được đồng thuận. Hướng tiếp cận thứ hai tiết kiệm được nhiều thời gian hơn cho việc xây dựng WordNet đó là hướng tiếp cận bán tự động. Trong nghiên cứu của Nguyễn Hoàng An và cộng sự [5], một phương pháp bán tự động với hai giai đoạn đã được đề xuất nhằm xây dựng WordNet tiếng Việt. Giai đoạn một là giai đoạn tự động, nhóm tác giả dịch một phần của WordNet tiếng Anh [2] sang tiếng Việt sử dụng từ điển song ngữ và những công cụ dịch máy. Ở giai đoạn này, dữ liệu sẽ là những từ có định nghĩa chung xuất hiện trong cả tiếng Việt và tiếng Anh. Trong giai đoạn
  2. 484 XÂY DỰNG WORDNET TIẾNG VIỆT TỰ ĐỘNG BẰNG DỮ LIỆU SONG NGỮ hai, nhóm tác giả sẽ tiến hành theo phương thức thủ công. Với những từ đặc trưng chỉ có ở tiếng Việt như từ láy, từ ghép, những từ thể hiện văn hóa Việt Nam như “bánh chưng”, “bánh giầy”, nhóm tác giả tiến hành tìm synset thích hợp bằng tay để thêm từ vào. Cuối cùng, nhóm tác giả tạo ra một hướng dẫn chi tiết để chỉnh sửa điều chỉnh lại WordNet và thêm vào những mối quan hệ giữa các synet qua đó giúp WordNet trở nên hoàn chỉnh và nhất quán. Phương pháp này có ưu điểm là tận dụng được WordNet tiếng Anh [2] sẵn có và đội ngũ chuyên gia để bổ sung các từ tiếng Việt chưa có trong Wordnet, tuy nhiên cũng có nhược điểm là việc sử dụng các công cụ dịch máy sẽ làm ảnh hưởng đến chất lượng của các synset trong WordNet tiếng Việt. Trong một nghiên cứu khác theo hướng bán tự động, hai tác giả Hồ Ngọc Đức và Nguyễn Thị Thảo [6] đã giới thiệu phương pháp xây dựng VietWordNet. Đầu tiên, hai tác giả sẽ lấy toàn bộ danh từ tiếng Việt có trong những từ điển Việt - Việt, Việt - Anh và cả Anh - Việt. Tiếp đến, những danh từ này sẽ được phân vào những synset của WordNet tiếng Anh [2] theo hai cách: (1) Cách đầu tiên là sẽ dịch những định nghĩa của từ tiếng Việt sang tiếng Anh và tìm những synset tiếng Anh có định nghĩa tương đồng để thêm những từ tiếng Việt này vào; (2) Cách thứ hai là dịch những từ tiếng Anh trong những synset sang tiếng Việt và tìm những bản dịch tiếng Việt hợp lý để thêm vào synset. Cuối cùng tác giả thay những định nghĩa Việt vào những synset đã thêm từ tiếng Việt trên. Những bước trên xử lý tự động chỉ hiệu quả khi synset chỉ chứa một từ, hay chỉ chứa những từ có một nghĩa duy nhất. Khi gặp những từ đa nghĩa, nhóm tác giả sẽ xử lý thủ công, sử dụng một số luật ngôn ngữ, quy tắc ngôn ngữ và công cụ do chính tác giả xây dựng để phân loại đúng những từ đa nghĩa vào những synset đúng. Nhìn chung, những phương pháp theo hướng bán tự động đã phần nào giải quyết được bài toán về thời gian, tuy nhiên vẫn còn cần có sự giám sát của những người có chuyên môn để đảm bảo WordNet xây dựng ra có hiệu quả. Do đó hướng tiếp cận tự động trở nên phổ biến hơn trong những năm gần đây. Ở nghiên cứu của Khang Nhut Lam và Jugal Kalita [7], hai tác giả đã đề xuất xây dựng WordNet tiếng Việt theo ba bước. Bước đầu tiên hai tác giả đã sử dụng phương pháp từ một nghiên cứu trước đó của mình [8] để dịch những synset từ WordNet tiếng Anh [2] cũng như những WordNet trung gian khác sang tiếng Việt rồi dùng những thuật toán xếp hạng để tạo synset cho WordNet tiếng Việt. Bước thứ hai, tác giả thêm những liên kết giữa những synset tiếng Việt thông qua liên kết của những synset tương ứng trong tiếng Anh. Bước thứ ba là thêm những định nghĩa tiếng Việt bằng cách dịch những định nghĩa của những synset trong dự án Viet WNMS sang tiếng Việt sau đó tính độ tương đồng cosine với những định nghĩa tiếng Việt của những từ trong synet đã tạo ở hai bước trên, nếu thỏa ngưỡng chọn trước định nghĩa sẽ đượcc thêm vào synset tiếng Việt. Trong một nghiên cứu khác cũng của tác giả Khang Nhut Lam, Jugal Kalita và những cộng sự [9], nhóm tác giả đề xuất phương pháp sử dụng Word Embedding để cải thiện việc chọn từ và synset cho WordNet tiếng Việt. Cũng bắt đầu xây dựng WordNet bằng cách tạo những synset tiếng Việt thông qua dịch WordNet tiếng Anh [2] và những WordNet trung gian. Ở bước chọn synset đúng, nhóm tác giả thay vì sử dụng thuật toán xếp hạng đã sử dụng những công thức tính độ tương đồng như giữa các từ đã được vector hóa và giữa những câu định nghĩa được vector hóa (Doc2Vec) để chọn synset và từ ứng viên chính xác đồng thời cũng để thêm những quan hệ giữa những synset và loại bỏ những từ không thích hợp khỏi synset được dịch. Qua hai nghiên cứu trên, có thể thấy, hướng tiếp cận theo phương pháp tự động đã giảm thiểu nhiều về vấn đề thời gian và con người, qua đó cũng có thể thấy việc dùng ngữ liệu đa ngữ/song ngữ cũng được quan tâm hơn (WordNet trung gian ở hai ví dụ trên). Nghiên cứu của Farid Haziyev [3] và cộng sự đã đề xuất phương pháp xây dựng Wordnet dựa trên đồ thị với dữ liệu đầu vào là những trang Wikipedia của 14 ngôn ngữ. Tác giả tìm các tập hợp chính xác được truyền qua mỗi Wikipage và sau đó ánh xạ các tập hợp đó với các từ trong ngôn ngữ đích bằng cách sử dụng vectơ hóa. Hình 1. Sơ đồ phương pháp của tác giả Farid Haziyev [3] Tác giả cũng đã thử nghiệm phương pháp trên đồ thị đa ngôn ngữ và đồ thị đơn ngôn ngữ [10], kết quả cho thấy khi xây dựng Wordnet tiếng Đức, phương pháp trên đồ thị đơn ngôn ngữ đạt kết quả tốt hơn các phương pháp trên đồ thị đa ngôn ngữ, cũng như độ chính xác F1 đạt được cũng tương đương với những phương pháp khác.
  3. Trương Hoàng Bảo, Nguyễn Ngọc Bình, Lê Thành Nguyên, Lê Thị Nhàn, Đinh Điền 485 Hình 2. So sánh phương pháp của tác giả Farid Haziyev với các phương pháp khác [1] III. MÔ HÌNH ĐỀ XUẤT A. Áp dụng phương pháp của tác giả Farid Haziyev Thực tế cho thấy để có thể thu thập đầy đủ WordNet của 14 ngôn ngữ theo đề xuất của tác giả Farid Haziyev là rất khó khăn do liên quan đến vấn đề bản quyền của các WordNet, bên cạnh đó việc sử dụng các WordNet kém chất lượng để làm cơ sở xây dựng WordNet chắc chắn cũng sẽ làm giảm chất lượng của WordNet được xây dựng mới. Do đó, chúng tôi đề xuất mô hình xây dựng WordNet tự động sử dụng dữ liệu đa ngữ dựa trên mô hình do tác giả Farid Haziyev đề xuất [3] với chỉ 4 ngôn ngữ giàu tài nguyên là: Anh, Pháp, Tây Ban Nha và Nhật Bản. Và đặc biệt WordNet của các ngôn ngữ này có chất lượng tốt và không bị hạn chế bởi vấn đề bản quyền khi sử dụng. Ở bước áp dụng phương thức xử lý nhập nhằng ngữ nghĩa (ô WSD method trong Hình 1), chúng tôi tiến hành cài đặt lại mô hình với hai phương pháp Multilingual Graph và Monolingual Graph [10] để xử lý nhập nhằng ngữ nghĩa. 1. Phương pháp Multilingual Graph Wiktionary Graph là một dữ liệu đóng vai trò rất quan trọng và ảnh hưởng đến chất lượng của phương pháp. Wiktionary Graph là một đồ thị được xây dựng từ dữ liệu Wiktionary với đỉnh là những từ trong dữ liệu Wiktionary thuộc bốn ngôn ngữ đầu vào và cạnh được thêm vào giữa hai đỉnh khi hai từ là bản dịch của nhau. Mỗi trang WikiPage sẽ xây dựng được một Multilingual Graph. Bên cạnh đó, WordNet và Wiktionary Graph cũng được dùng để cài đặt Multilingual Graph. Trong đồ thị này, đỉnh là những từ trong một trang WikiPage và synset của những từ đó được lấy từ WordNet của mỗi ngôn ngữ [11] đã được kết nối đến WordNet tiếng Anh [2]. Cạnh của đồ thị này được chia ra làm ba loại: • Cạnh giữa từ với từ: cạnh vô hướng nối giữa hai đỉnh từ trong đồ thị Multilingual. Cạnh này được thêm dựa vào thông tin từ Wiktionary Graph, nếu hai đỉnh có độ dài đường đi ngắn nhất trong Wiktionary Graph không vượt quá ngưỡng chọn trước (ngưỡng được chọn là 3) thì sẽ thêm cạnh giữa hai đỉnh từ, trọng số là nghịch đảo đường đi nói trên. • Cạnh giữa từ với synset loại cạnh một chiều nối từ một đỉnh từ đến những đỉnh synset của từ được tra trong WordNet. Cạnh này luôn có trọng số là 1. • Cạnh giữa synset với synset: loại cạnh vô hướng, nối giữa hai đỉnh synset dựa vào thông tin từ WordNet. Nếu hai synset có độ dài đường đi ngắn nhất trong WordNet [2] không vượt quá một ngưỡng chọn trước (ngưỡng được chọn là 3) sẽ thêm cạnh giữa hai synset. Cạnh có trọng số là nghịch đảo đường đi trên. Hình 3. Ví dụ về mô hình Multilingual Graph (trích nghiên cứu của Haziyev [3])
  4. 486 XÂY DỰNG WORDNET TIẾNG VIỆT TỰ ĐỘNG BẰNG DỮ LIỆU SONG NGỮ Sau khi đã xây dựng đồ thị như ở Hình 3, công thức PageRank [12] cho biểu đồ có hướng có trọng số được áp dụng để tính độ trung tâm của của các đỉnh. Sau đó, đối với mỗi đỉnh từ tiếng Anh, những đỉnh synset kết nối với nó có điểm PageRank cao nhất sẽ được chọn làm những synset ứng viên và những synset này sẽ được thêm vào một ma trận gọi là WikiPage Synset Matrix. 2. Phương pháp Monolingual Graph Khác với phương pháp Multilingual Graph, ở trường hợp này, mỗi trang WikiPage dữ liệu tách từ của từng ngôn ngữ được dùng để xây dựng một đồ thị riêng lẻ. Trong đồ thị monolingual đỉnh là một cặp từ-synset. Để tạo đỉnh, đầu tiên những từ trong một ngôn ngữ của trang WikiPage sẽ được lấy ra, sau đó sẽ tra những từ này vào WordNet [2], [11] để lấy những synset của chúng mỗi từ với synset của từ sẽ được kết hợp lại tạo thành những cặp từ-synset. Để dễ hình dung, ví dụ một ngôn ngữ trong WikiPage có danh sách từ là W = [w1,w2,w3,w4] ta sẽ tra từng từ qua WordNet để có được danh sách sysnet của từ như S(w1) = [s1,s2,s3], S(w2) = [s2,s4],… tiếp đến mỗi từ được ghép cặp với synset của từ để tạo thành một danh sách đỉnh: V = [(w1,s1),(w1,s2),..]. Cạnh của đồ thị Monolingual là mối quan hệ giữa các synset. Để thêm cạnh giữa hai đỉnh, ta xem xét hai synset thuộc hai đỉnh, nếu đường đi ngắn nhất giữa chúng trên WordNet [2] không vượt quá 3 ta sẽ thêm cạnh giữa hai đỉnh. Trọng số của cạnh này sẽ được tính theo công thức: 1 𝑑𝑖,𝑗 𝑤𝑖,𝑗 = 1 1 ∑𝑠∈𝑊𝑁 ∗ ∑𝑠∈𝑊𝑁 𝑑𝑗,𝑠 𝑑𝑖,𝑠 trong đó, 𝑤𝑖,𝑗 là trọng số của cạnh giữa hai đỉnh có chứa synset i và synset j, WN là một tập chứa tất cả synset của Princeton WordNet [2] và 𝑑𝑖,𝑗 là độ dài đường đi ngắn nhất giữa synset i và synset j. Hình 4. Ví dụ về đồ thị Monolingual (trích nghiên cứu của Haziyev [3]) Đồ thị sau khi xây xong sẽ có dạng giống với Hình 4. Sau đó, áp dụng công thức PageRank [12] cho đồ thị có trọng số để tính độ trung tâm của các đỉnh trong đồ thị. Với mỗi một từ w, những đỉnh có chứa từ w có điểm PageRank cao nhất sẽ được chọn làm ứng viên và synset thuộc đỉnh ứng viên này sẽ được thêm vào một bảng thống kê tần suất được chọn của synset nếu như được chọn lần đầu, còn nếu đã có trong bảng thống kê thì tần suất của synset đó được cộng 1. Sau khi áp dụng phương pháp cho toàn bộ những ngôn ngữ trong một WikiPage, bước cuối cùng được áp dụng để chọn ra những synset ứng viên cho toàn bộ WikiPage. Lúc này, bản tiếng Anh trong trang WikiPage được dùng, với mỗi từ tiếng Anh những synset của từ đó có tần suất được chọn cao nhất sẽ được chọn làm synset ứng viên cho trang WikiPage đó và được thêm vào ma trận WikiPage Synset. 3. WikiPage Synset Matrix (WS) Sau khi áp dụng phương pháp đồ thị (Multilingual Graph hoặc Monolingual Graph) [10], WikiPage Synset Matrix là ma trận có các dòng là các trang WikiPage, cột là toàn bộ những synset ứng viên được thêm vào sau bước áp dụng Multilingual Graph hoặc Monolingual Graph. Giá trị ở một ô aij là 1 nếu synset ở cột j có xuất hiện trong WikiPage thứ i và 0 thể hiện điều ngược lại. 4. Ma trận từ ngô ngữ đích - WikiPage (TD) Xây dựng ma trận từ của ngôn ngữ đích sử dụng dữ liệu những trang Wikipedia đã được tách lấy từ quan trọng của ngôn ngữ đích. Ma trận có dòng là những từ quan trọng trong những trang Wikipedia của ngôn ngữ đích, cột là những chủ đề Wikipedia hay còn gọi là những trang WikiPage. Ô 𝑎𝑖,𝑗 có giá trị trong khoảng [0, 1] tuân theo công thức tf-idf như sau:
  5. Trương Hoàng Bảo, Nguyễn Ngọc Bình, Lê Thành Nguyên, Lê Thị Nhàn, Đinh Điền 487 𝑁 𝑎𝑖,𝑗 = log(1 + 𝑡𝑓𝑖,𝑗 ) ∗ log( ) 𝑑𝑓𝑖,𝑗 trong đó, 𝑎𝑖,𝑗 là giá trị của ô của ma trận, 𝑡𝑓𝑖,𝑗 là số lần một từ i xuất hiện trong một trang WikiPage j, 𝑑𝑓𝑖,𝑗 là số trang WikiPage có chứa từ i và N là tổng số WikiPage hay số chủ đề. 5. Tiến hành phương pháp ánh xạ Để ánh xạ từ của ngôn ngữ đích đến những synset ứng viên, thực hiện cosine similarity với hai ma trận TD và WS. Kết quả là một ma trận như Bảng 1 với dòng là danh sách các từ của ngôn ngữ đích, cột đại diện cho những synset ứng viên. Mỗi ô là giá trị cosine similarity giữa từ với synset. Bảng 1. Ví dụ về ma trận kết quả của phép tính cosine similarity Synset 1 Synset 2 Synset 3 Word 1 0,27 0 0,92 Word 2 0,27 1 0,72 Sau đó, với mỗi từ, những synset được sắp xếp theo điểm giảm dần độ tương đồng (similarity) và k synset đầu tiên được chọn. Sau đó, lấy những bản dịch tiếng Anh của từ thông qua một từ điển song ngữ và giao với những lemma của mỗi synset trong k synset được chọn. Nếu có từ chung giữa bản dịch tiếng Anh của từ và những lemma của synset, synset đó được ánh xạ đến từ. B. Mô hình cải tiến Trong phần này, chúng tôi sẽ đưa ra những đề xuất nhằm cải thiện kết quả của phương pháp gốc. Hình 5. Sơ đồ tổng quan mô hình cải tiến phương pháp Multilingual Graph Chúng tôi sẽ tiến hành ba cải tiến khác so với mô hình gốc của tác giả Farid Haziyev (Hình 5) như sau: 1. Dữ liệu TED talk và Translation Graph a) Dữ liệu TEDTalk Đầu tiên, chúng tôi sử dụng dữ liệu TEDTalk thay cho Wikipedia. Dữ liệu TEDTalk là dữ liệu song song khi một chủ đề có 6 bài là bản dịch của nhau trong các ngôn ngữ: Anh, Pháp, Tây Ban Nha, Nhật Bản, Trung Quốc và Việt Nam. Cấu trúc của TEDTalk không có những từ quan trọng như Wikipedia nên toàn bộ văn bản sẽ được tách từ và từ nào nằm trong Wiktionary sẽ được giữ lại trong dữ liệu đã tách từ của mỗi trang TEDTalk. b) Translation Graph Wiktionary là một dự án mã nguồn mở nên bất kể người dùng nào cũng có thể chỉnh sửa nên sẽ có xuất hiện thiếu sót giữa những bản dịch. Vì vậy, bên cạnh dữ liệu Wiktionary chúng tôi tạo ra đồ thị bản dịch từ thông tin ở các nguồn như: từ điển online Glosbe [9], WordNet của những ngôn ngữ nguồn và công cụ dịch máy của Google. c) Áp dụng dữ liệu TEDTalk Sau khi chỉ áp dụng hai sự thay đổi này và vẫn giữ nguyên việc chọn k = 50 thì kết quả thu được thấp hơn phương pháp gốc đã cài đặt. Tuy nhiên, ở bước tiếp theo khi chúng tôi thay đổi k thì kết quả đã đạt cao hơn so với của phương pháp gốc. 2. Thay đổi top k synset được chọn ở bước ánh xạ Nhận thấy do cấu trúc và tính chất dữ liệu của TED talk và Wikipedia khác nhau nên việc chọn top 50 synset sẽ không có hiệu quả với dữ liệu TED talk. Chúng tôi tiến hành cho k thay đổi và chọn k cho kết quả tốt nhất, lúc này chúng tôi nhận thấy khi k = 2143 kết quả đạt được là tốt nhất với dữ liệu TED talk.
  6. 488 XÂY DỰNG WORDNET TIẾNG VIỆT TỰ ĐỘNG BẰNG DỮ LIỆU SONG NGỮ Ở phần tiếp theo, thay vì chọn top 2143 để kết quả tốt thì sẽ tiến hành chọn hết các synset có thể tạo ra. 3. Cải tiến phương pháp ánh xạ a) Phương pháp lọc synset qua synset ảo Dữ liệu tạo synset ảo lấy từ từ điển Glosbe [9]: lấy những từ và bản dịch có nguồn từ tác giả có tên en.wiktionary và Open Multilingual WordNet. Một từ bao gồm nhiều bản dịch, mỗi bản dịch đi cùng POS của nó. Synset ảo của một từ được tạo ra từ bản dịch của từ đó cộng với POS của bản dịch đó. Sau khi tạo được danh sách synset ảo của mỗi từ, lấy danh sách này đem giao với danh sách synset ứng viên của từ, nếu có điểm chung thì lấy còn không sẽ bỏ. Ví dụ từ “am_tường” có ba synset là “intimate.s.06”, “knowing.s.04”, “knowledgeable.s.02” và có một bản dịch là “knowledgeable” có hai POS là a và s. Từ bản dịch tạo ra synset ảo là “knowledgeable.a” và “knowledgeable.s”. Xét ba synset của từ “am tường” thì chỉ có “knowledgeable.s.02” là có phần chung với synset ảo nên sẽ được giữ lại. b) Lọc synset qua lemma Vì dữ liệu rất ít nên việc sinh ra nhiều synset sai là có thể, nên việc cần làm là làm giảm số synset sai. Chúng tôi để ý là một synset nếu mà có nhiều lemma giống với bản dịch của từ mà synset đó được ánh xạ đến thì synset đó khả năng đúng là khá cao. Do vậy, chúng tôi tiến hành lọc synset theo lemma: • Đầu tiên, chúng tôi sẽ lấy danh sách các synset mà từ A có thể tạo được. • Tiếp theo chúng tôi lấy danh sách bản dịch mà từ A có thể có. 𝐿 • Sau đó giao hai tập trên lại và gọi L là độ dài phần giao và d = . Tạo cấu trúc dictionary 𝑠ố 𝑙𝑒𝑚𝑚𝑎 𝑐ủ𝑎 𝑚ộ𝑡 𝑠𝑦𝑛𝑠𝑒𝑡 để xử lý khi ở các trường hợp sau: 𝐿 ≥ 2 𝑣à 𝑑 ≥ 0.5 𝐿 = 1 𝑣à 𝑠ố 𝑙𝑒𝑚𝑚𝑎 = 1 𝑣à 𝑠ố 𝑠𝑦𝑛𝑠𝑒𝑡 = 1 𝐿 = 1 𝑏ả𝑛 𝑑ị𝑐ℎ 𝑣à 𝑠ố 𝑙𝑒𝑚𝑚𝑎 đề𝑢 𝑏ằ𝑛𝑔 2 𝐿 = 1 𝑣à 𝑠ố 𝑙𝑒𝑚𝑚𝑎 ≤ 2 𝑣à 𝑠ố 𝑠𝑦𝑛𝑠𝑒𝑡 ≤ 4 • Cấu trúc dictionary bao gồm key là synset name của synset còn value chính là danh sách synset - độ dài phần giao hai tập. Với mỗi key nếu mà value có hơn hai phần từ thì lấy duy nhất synset có giá trị L lớn nhất, còn lại thì lấy hết các synset có thể có. Ví dụ từ “an_bài” có ba bản dịch là “preordain”, “foreordain” và “predestine” và có các synset là “predestine.v.01”, “predestine.v.03”. Với “predestine.v.01” có các lemma là predestine  L = 1, có 1 lemma, có 2 synset nên nhận. Xét tiếp “predestine.v.03” có các lemma là “predestine”, “foreordain” và “preordain”  L=3 và d=1  chọn. Ta có cấu trúc dictionary: predestine có predestine.v.01 có L=2 và predestine.v.03 có L=3, vì chỉ có hai synset nên nhận hết. IV. KẾT QUẢ THỰC NGHIỆM A. Chuẩn bị dữ liệu đánh giá Việc đầu tiên là chọn một WordNet làm mẫu đánh giá. WordNet mà chúng tôi lựa chọn để làm dữ liệu mẫu đánh giá là Chinese Open WordNet [2]. WordNet tiếng Trung đã được kết nối với Princeton WordNet trong dự án Open Multilingual WordNet [10] với khoảng 42.312 synset. Dữ liệu TEDTalk thuộc những ngôn ngữ Anh, Pháp, Tây Ban Nha và Nhật Bản có tổng cộng 2.301 chủ đề chung, đồng nghĩa mỗi ngôn ngữ có 2.301 bài ứng với 2.301 chủ đề và những bài cùng chủ đề trong 6 ngôn ngữ là bản dịch của nhau. B. Phương thức đánh giá Xem bài toán xây dựng WordNet như là bài toán phân lớp từ-synset. Ba thước đo cơ bản cho một bài toán phân lớp là precision, recall và F1-score được áp dụng để đánh giá những mô hình chúng tôi đã cài đặt. Trước tiên, ta lần lượt gọi A là tập hợp chứa các cặp từ-synset của WordNet làm mẫu – Chinese Open WordNet, B là tập hợp chứa các cặp từ-synset do phương pháp chúng tôi cài đặt tạo ra. Công thức tính ba thước đo trên đối với bài toàn này như sau: 𝑁𝐴∩𝐵 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑁𝐵 𝑁𝐴∩𝐵 𝑅𝑒𝑐𝑎𝑙𝑙 = 𝑁𝐴 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗ 𝑅𝑒𝑐𝑎𝑙𝑙 𝐹1 − 𝑠𝑐𝑜𝑟𝑒 = 2 ∗ 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙
  7. Trương Hoàng Bảo, Nguyễn Ngọc Bình, Lê Thành Nguyên, Lê Thị Nhàn, Đinh Điền 489 trong đó, 𝑁𝐴∩𝐵 là số cặp từ-synset có ở cả hai tập A và B, 𝑁𝐴 là số cặp từ-synset trong WordNet làm mẫu, 𝑁𝐵 là số cặp từ-synset do phương pháp chúng tôi cài đặt tạo ra. C. Kết quả Kết quả thu được tại Bảng 2 cho thấy ban đầu khi chúng tôi cài đặt mô hình Baseline theo mô hình của Farid Haziyev kết quả đạt được thấp hơn rất nhiều ở cả hai phương pháp Monolingual Graph và Multilingual Graph bởi vì lúc này chúng tôi chỉ sử dụng dữ liệu từ 4 ngôn ngữ do đó tổng số lượng synset ứng viên có được sau bước xử lý nhập nhằng không nhiều. Nhưng khi chúng tôi thay đổi dữ liệu đầu vào từ Wikipedia sang TEDTalk và chọn một top k synset khác so với 50 thì điểm F1 của mô hình chúng tôi đã được cải thiện khi chọn top 2143 synset cho phương pháp Monolingual Graph và top 5800 cho phương pháp Multilingual Graph, điều này có thể hiểu là do tính chất của dữ liệu TEDTalk không giống với Wikipedia, cũng như chúng tôi đã áp dụng nhiều nguồn dữ liệu hơn để lấy đồ thị bản dịch thay vì chỉ dùng Wiktionary để tạo đồ thị này. Cuối cùng, khi chúng tôi đưa POS của từ và những từ điển tốt vào và tiến hành lọc synset theo hai bước những synset bị phân lớp sai đã được loại bỏ và qua đó điểm precision, recall và F1 đều được tăng lên. Bảng 2. So sánh kết quả mô hình Baseline xây dựng dựa trên mô hình của Farid Haziyev với 4 ngôn ngữ và các mô hình cải tiến Monolingual Graph Precision Recall F1 Multilingual Graph Precision Recall F1(%) (%) (%) (%) (%) (%) Mô hình Baseline 43,5 5,34 9,51 Mô hình Baseline 50,49 4,97 9,05 Mô hình với dữ liệu 37,33 5,06 8,92 Mô hình với dữ liệu 40,69 4,58 8,32 TEDTalk và chọn top TEDTalk và chọn top 50 50 synset synset Mô hình với dữ liệu 15,54 11,68 13,34 Mô hình với dữ liệu 16,74 11,19 13,41 TEDTalk và chọn top TEDTalk và chọn top 2143 synset 2143 synset Mô hình qua bước lọc 16,28 20,28 18,06 Mô hình qua bước lọc 23,7 16,9 19,8 synset ảo synset ảo Mô hình cải tiến hoàn 61,42 14,27 23,16 Mô hình cải tiến hoàn 57,98 13,84 22,34 chỉnh chỉnh Qua kết quả ở bảng 3, ta có thể thấy ở hai phương pháp đầu tiên khi có sự tiếp cận thủ công để xây dựng WordNet tiếng Việt số lượng WordNet sẽ được sinh ra nhiều hơn nữa, vì lúc này có sự can thiệp kiến thức của những chuyên gia. Còn đối với phương pháp sử dụng Word Embedding [9] tác giả đã phải dịch synset từ hơn 6 WordNet khác nhau sang tiếng Việt để đạt được số lơn synset, những chúng tôi chỉ sử dụng dữ liệu TEDTalk, thông tin từ 4 WordNet và không phải dịch WordNet đã có thể sinh ra gần 20.000 synset. Tuy nhiên, qua đó cũng có thể thấy phương pháp của chúng tôi vẫn còn có nhiều yếu điểm có thể khắc phục được mà chúng tôi sẽ đễ xuất ngay sau đây, Bảng 3. So sánh kết quả Wordnet tiếng Việt xây dựng được với các Wordnet tiếng Việt khác Bảng 4. Kết quả mô hình cải thiện cho tiếng Việt Nhìn chung, mô hình của chúng tôi đã cải thiện được một trong những hạn chế ban đầu trong mô hình của Farid Haziyev [3] là phương pháp ánh xạ còn thô sơ bằng cách đưa POS của từ và những từ điển có chất lượng tốt
  8. 490 XÂY DỰNG WORDNET TIẾNG VIỆT TỰ ĐỘNG BẰNG DỮ LIỆU SONG NGỮ hơn vào để lọc và loại bỏ những synset được phân lớp sai. Tuy nhiên, chúng tôi vấn chưa giải quyết được vấn đề tạo mối quan hệ giữa những synset sau khi đã tạo ra được những lớp từ-synset cũng như chưa có nhiều đề xuất cải tiến đối với mô hình xử lý nhập nhằng ban đầu của tác giả. Do đó, trong tương lai nếu như áp dụng những mô hình xử lý nhập nhằng có kết hợp học máy hoặc sâu có thể kết quả sẽ càng được cải thiện hơn. Ngoài ra, một WordNet chỉ hoàn chỉnh nhất khi được thêm những mối quan hệ giữa những synset thế nên trong tương lai nếu có thể áp dụng những phương pháp để tạo những mối quan hệ giữa những synset, WordNet tạo ra sẽ hoàn chỉnh hơn. Mặc dù, với phương pháp ánh xạ cải tiến chúng tôi đã đạt được kết quả khả quan với chỉ 4 ngôn ngữ, chúng tôi vẫn đề xuất nếu có thể hãy sử dụng dữ liệu từ nhiều ngôn ngữ có WordNet sẵn hơn vì mô hình của chúng tôi khi có được nhiều dữ liệu hơn sẽ càng cải thiện kết quả hơn. V. KẾT LUẬN WordNet là ngữ liệu đóng vai trò quan trọng và ảnh hưởng đến độ chính xác của nhiều bài toán xử lý ngôn ngữ tự nhiên. Thực tế hiện nay cho thấy, đã có một số công trình nghiên cứu xây dựng WordNet tiếng Việt trong thời gian qua, tuy nhiên các phương pháp đề xuất chủ yếu là các phương pháp sử dụng chuyên gia hoặc sử dụng công cụ dịch tự động từ WordNet tiếng Anh. Trong nghiên cứu này chúng tôi đã đề xuất phương pháp cải tiến mô hình xây dựng WordNet của tác giả Farid Haziyev và cộng sự bằng cách sử dụng TEDTalk và áp dụng phương pháp cải tiến với hai bước chọn lọc để loại bỏ synset bị phân lớp sai và đặc biệt là chỉ sử dụng bốn Wordnet của bốn ngôn ngữ Anh, Pháp, Tây Ban Nha và Nhật thay vì phải sử dụng WordNet của 14 ngôn ngữ khác nhau. Kết quả, phương pháp của chúng tôi xây dựng có độ chính xác Precision là 61,42% và WordNet tiếng Việt xây dựng được với 16,143 từ và 17,756 synset. Phương pháp này hoàn toàn có thể được áp dụng để triển khai xây dựng WordNet của các ngôn ngữ khác. Trong tương lai, chúng tôi sẽ cải tiến phương pháp này bằng cách xây dựng mối quan hệ giữa các synset trong WordNet ở ngôn ngữ đích, cải tiến phương pháp xử lý nhập nhằng ngữ nghĩa. VI. LỜI CẢM ƠN Nghiên cứu được tài trợ bởi Trường Đại học Khoa học Tự nhiên, Đại học Quốc gia Thành phố Hồ Chí Minh trong khuôn khổ Đề tài mã số CNTT 2020-07 TÀI LIỆU THAM KHẢO [1] Đinh Điền, “Wordnet: Một cơ sở tri thức về ngữ nghĩa từ vựng của nhân loại” [2] C. F. D. G George A Miller, Richard Beck with and K. J. Miller, “Introduction to wordnet: An on-line lexical database”, International journal of lexicography, 3(4), p. 235-244, 1900. [3] Farid Haziyev, “Automatic Wordnet Construction Using Wikipedia”, Graduate School of Science and Engineering of Hacetteoe University, 2019. [4] Trong Hai Duong, Minh Quang Tran, Thi Phuong Trang Nguyen, “Collaborative Vietnamese WordNet building using consensus quality”, Vietnam Journal of Computer Science 4, pp. 85-86, 2017. [5] Hoang An Nguyen, Ngoc Anh Tran, Thi Thu Ha Truong, Huy Hien Vu, Van Lam Pham, Phuong Thai Nguyen “A Two-Phase Approach for Building Vietnamese WordNet”, The 8th Global WordNet Conference, pp. 259-264, 2016. [6] Ho Ngoc Duc, Nguyen Thi Thao, Towards Building a WordNet for Vietnamese, Ha Noi, 2008. [7] Khang Nhut Lam, Jugal Kalita, Contructing Vietnamese WordNet: A case study, Can Tho, 2018. [8] Khang Nhut Lam, Feras Al Tarouti, and Jugal Kalita, “Automatically constructing wordnet synsets”, Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics ,2 (2), pp. 106-114, 2014. [9] Khang Nhut Lam, Tuan Huynh To, Thong Tri Tran, Jugal Kalita, “Improving Vietnamese WordNet using word embedding”, NLPIR 2019: Proceedings of the 2019 3rd International Conference on Natural Language Processing and Information Retrieval, pp.110-114, 2019. [10] Farid Haziyev, “Automatic Wordnet Construction Using Wikipedia”, Graduate School of Science and Engineering of Hacetteoe University, Graph Method, pp. 36-42, 2019. [11] Francis Bond and Kyonghee Paik, “A survey of wordnets and their licenses”, Proceedings of the 6th Global WordNet Conference (GWC 2012), pp. 64-71, 2012. [12] Lawrence Page, Sergey Brin, Rajeew Motwani and Terry Winograd. The paperank citation ranking: Bringing order to the web. Technical report, Stanford InforLab, 1999. AUTOMATIC CONSTRUCTION OF VIETNAMESE WORDNET BY USING BILINGUAL DATA Truong Hoang Bao, Nguyen Ngoc Binh, Le Thanh Nguyen, Le Thi Nhan, Dinh Dien ABSTRACT: Farid Haziyev - author of the study “Automatic Wordnet construction using Wikipedia” proposed a method to build WordNet using graphs as Word Sense Disambugation method (graph methods), combining 14 WordNets from 14 different languages to build a new WordNet. Based on the methodology of this study, we propose several lexicographic improvements, using TED Talk data instead of Wikipedia data, and improving the method of selecting synsets based on available WordNets of 4 source languages: English, Spanish, French, Japanese. The results when comparing the Chinese WordNet built by our proposed method with the available Chinese WordNet (Chinese Open WordNet) show that our results are better in terms of evaluation parameters such as Precision and Recall, higher than the model based on the author’s method built from data in just 4 languages. We have also used the proposed method above to build Vietnamse WordNet, the result WordNet contains 16,143 words and 17,756 synsets. Our proposed method can be completely applied to construct WordNet for other languages.
nguon tai.lieu . vn