chương 1 Trong chương này, luận văn giới thiệu khái quát về một số khái niệm, nội dung của đa nhãn và phân lớp đa nhãn văn bản. Ngoài ra, luận văn cũng nêu ra thách thức của bài toán đa nhãn văn bản và mục tiêu của luận văn để giải quyết thách thức về việc tận dụng mối quan hệ các nhãn trong phân lớp đa nhãn. Chương tiếp theo, luận văn sẽ giới thiệu về phương pháp xác định độ gần nhau giữa các nhãn, một số phương pháp phân lớp đa và đề xuất cho việc tích hợp độ gần nhau giữa các nhãn vào các phương pháp phân lớp đa nhãn đã trình bày. 9 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com CHƯƠNG 2.
CÁC PHƯƠNG PHÁP PHÂN LỚP ĐA NHÃN SỬ DỤNG ĐỘ GẦN NHAU GIỮA CÁC NHÃN 2.1 Mối quan hệ giữ các nhãn (từ) Mối quan hệ giữa các nhãn (từ) được xem xét dựa trên ý tưởng các nhãn (từ) mà thường xuất hiện với nhau trong cùng một tài liệu hay trong cùng một ngữ cảnh nào đó sẽ được xem là có mối quan hệ gần với nhau hơn là so với các nhãn mà ít hoặc không xuất hiện cùng nhau trong cùng một tài liệu hay cùng một ngữ cảnh. Phần tiếp theo sẽ trình bày về công cụ cho việc xác định mối quan hệ giữa các nhãn sử dụng một công cụ có sẵn và được xem là mang lại hiệu quả cao.2 Xác định độ gần nhau giữa các nhãn sử dụng Word2vec 2.1 Giới thiệu về công cụ word2vec Word2vec [16] là công cụ cung cấp cho việc tính toán vector biểu diễn của các từ. Vector biểu diễn của các từ này có thể được dùng trong rất nhiều ứng dụng xử lý ngôn ngữ tự nhiên cũng như phân loại văn bản. Word2vec lấy đầu vào là tập các văn bản và đưa ra các vector từ.
Đầu tiên nó sẽ xây dựng một tập các từ từ tập văn bản huấn luyện đầu vào sau đó nó sẽ học và đưa ra vector biểu diễn của các từ đó. Word2vec sử dụng 2 kiến trúc mô hình để học vector biểu diễn của các từ (1) continuous bag of words – CBOW và (2) continuous skip – gram. Ứng dụng dựa trên hai mô hình này được đánh giá là có hiệu năng cao với việc huấn luyện trên tập từ vựng lớn so với các ứng dụng sử dụng mô hình ngôn ngữ mạng nơ ron (neural network language) trước đó [11]. Ngoài việc học các vector biểu diễn của các từ, word2vec cũng cung cấp công cụ cho biểu diễn của cụm từ bằng việc tiền xử lý tập dữ liệu huấn luyện để thành lập các cụm từ và sau đó tập các cụm từ này được xem như các từ để học vector biểu diễn cho các từ đó.
Bảng sau đây mô tả một số tệp nguồn chính trong word2vec, theo đó mỗi tệp sẽ ứng với một chức năng mà word2vec hỗ trợ: Bảng 2.1: Các tệp nguồn chính trong Word2Vec STT Tên tệp Hỗ trợ 1.c Học mô hình vector biểu diễn của tất cả các từ từ tập dữ liệu đầu vào.c Tiền xử lý dữ liệu huấn luyện để xây dựng tập các cụm từ cho tập dữ liệu đầu vào.c Tính độ gần nhau của từ do người dùng nhập vào 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com với các từ trong tập huấn luyện.2 Một số kỹ thuật sử dụng trong Word2Vec 2.1 continuous bag of words – CBOW Ý tưởng của mô hình CBOW là mô hình dự đoán từ hiện tại dựa trên các từ xung quanh hay các từ trong cùng ngữ cảnh. Ngữ cảnh ở đây có thể là một câu hay một tập các từ đứng cạnh nhau. Đầu vào của CBOW sẽ là tập các ngữ cảnh và đầu ra là từ hiện tại cần dự đoán. CBOW sử dụng tầng Chiếu chung cho tất cả các từ, do vậy tất cả các từ sẽ được chiếu vào vị trí giống nhau.
Ngoài việc sử dụng các từ đứng trước từ hiện tại, CBOW còn sử dụng các từ đứng sau từ hiện tại để phân loại chính xác từ hiện tại dựa trên việc xây dựng bộ phân loại log-linear cho các từ đứng trước và từ đứng sau. Trong mô hình này, thứ tự của các từ trong lịch sử không ảnh hưởng đến việc dự đoán. Lưu ý rằng ma trận trọng số giữa đầu vào và tầng dự đoán được chia sẻ cho tất cả các vị trí từ theo cùng một cách như trong mô hình ngôn ngữ mạng nơ-ron truyền tới.1: Mô hình CBOW 11 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.2 continuous skip – gram Kiến trúc của skip-gram là giống với CBOW, tuy nhiên thay vì dự đoán từ hiện tại dựa trên ngữ cảnh, mô hình này tập trung vào việc tối ưu phân loại của một từ dựa trên từ khác trong cùng một câu. Cụ thể, phương pháp này sử dụng đầu vào là từ hiện tại cho bộ phân loại log- linear với tầng Chiếu liên tục và dự đoán các từ theo một dải nào đó phía trước và sau từ hiện tại.
Việc tăng kích thước dải sẽ cải thiện chất lượng của vector từ đầu ra, tuy nhiên nó cũng làm tăng độ phức tạp tính toán. Vì những từ càng xa thì thường ít liên quan đến từ hiện tại hơn là những từ gần nó, do vậy ta có thể đánh trọng số cho những từ ở xa nhỏ đi để khắc phục vấn đề này. Không giống với các kiến trúc mạng nơ-ron được sử dụng trước đó để học vector từ, việc đào tạo mô hình Skip-gram không sử dụng đến các phép nhân ma trận dày đặc. Điều này khiến cho việc đào tạo trở nên cực kỳ hiệu quả: một máy đơn đã được tối ưu có thể đào tạo hơn 100 tỉ từ một ngày.
Và các đại diện từ được tính toán ra bằng cách sử dụng mạng nơ-ron, tức các vector đã học được thì mã hóa một cách rõ ràng nhiều quy tắc ngôn ngữ và mô hình. Một mở rộng đáng ngạc nhiên của phương pháp này đó là việc áp dụng các phép cộng/trừ đại số cho các vector có thể thu được các kết quả bất ngờ về ngữ nghĩa. Ví dụ: phép tính vec(“Russia”) + vec(“river”) ta sẽ thu được kết quả là vec(“Volga River”) hay vec(“king”) - vec(“man”) + vec(“woman”) ta sẽ thu được kết quả là vec(“queen”). Điều này cho thấy một gợi ý mơ hồ về việc hiểu biết ngôn ngữ có thể thu được bằng cách sử dụng các phép toán cơ bản với các đại diện vector từ.2: Mô hình Skip-gram liên tục 12 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.3 Sử dụng word2vec để đo độ gần nhau giữa các từ Một trong các chức năng được hỗ trợ từ word2vec đó là tính toán độ gần nhau giữa các từ được thể hiện bằng giá trị thực của khoảng cách giữa các từ; cụ thể là, từ mô hình biểu diễn của các vector từ ta có thể có được độ gần nhau của hai từ bất kỳ hay giữa các từ trong một tập con từ nào đó.
Ví dụ sau đây mô tả về kết quả các từ gần nhất với từ “index” khi sử dụng word2vec cho tập dữ liệu đầu vào là 2694 bài báo trên trang “vnexpress.net” đã qua tiền xử lý [3] sử dụng độ đo cosine: Hình 2.3: Ví dụ về xác định độ gần nhau giữa các từ sử dụng Word2Vec Như vậy, sử dụng mô hình vector biểu diễn từ huấn luyện được từ công cụ, Word2Vec có thể tính được khoảng cách (độ gần nhau) các từ bất kỳ cũng như các nhãn với nhau. Kết quả này sẽ được luận văn sử dụng để tích hợp vào một số phương pháp phân lớp đa nhãn sẽ được trình bày trong các phần tiếp theo. 13 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.3 Các phương pháp phân lớp đa nhãn sử dụng độ gần nhau giữa các nhãn Phần này sẽ trình bày về một số phương thức đa nhãn điển hình cho các cách tiếp cận về mối quan hệ đa nhãn. Sau đó, trong một số phương pháp luận văn cũng đưa ra đề xuất cho việc tích hợp độ gần nhau của các nhãn vào phương pháp đó để nâng cao hiệu quả của việc học.
Binary Relevance được xem là phương pháp cơ sở của nhiều giải thuật học đa nhãn. Ý tưởng của cơ bản của phương pháp này là chuyển bài toán phân lớp đa nhãn thành nhiều bài toán phân lớp đơn nhãn, ở đó mỗi bài toán phân lớp đơn nhãn sẽ ứng với một nhãn trong không gian nhãn. Phương pháp này đầu tiên sẽ tạo q tập dữ liệu huấn luyện bằng việc xem xét sự phù hợp của mỗi ví dụ trong tập ví dụ ban đầu với mỗi nhãn 𝑦𝑖 trong tập nhãn – q là tổng số nhãn: 𝐷𝑗 = {(𝑥𝑖 , 𝜙(𝑌𝑖 , 𝑦𝑗 ))| 1 ≤ 𝑖 ≤ 𝑚} (1) +1, 𝑛ế𝑢 𝑦𝑗 ∈ 𝑌𝑖 Với 𝜙(𝑌𝑖 , 𝑦𝑗 ) = { −1, 𝑛𝑔ượ𝑐 𝑙ạ𝑖 Ví dụ, với tập dữ liệu ví dụ 𝐷 gồm 4 thể hiện đã được gán nhãn trong tập gồm 4 nhãn: Bảng 2.2: Tập dữ liệu ví dụ Thể hiện Tập nhãn 𝑥1 {𝑦2 , 𝑦3 } 𝑥2 {𝑦1 } 𝑥3 {𝑦1 , 𝑦2 , 𝑦3 } 𝑥4 {𝑦2 , 𝑦4 } Khi đó ta sẽ xây dựng 4 tập dữ liệu huấn luyện cho 4 nhãn như sau: 𝐷1 = {(𝑥1 , −1), (𝑥2 , 1), (𝑥3 , 1), (𝑥4 , −1)} 𝐷2 = {(𝑥1 , 1), (𝑥2 , −1), (𝑥3 , −1), (𝑥4 , −1)} 14 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 𝐷3 = {(𝑥1 , 1), (𝑥2 , 1), (𝑥3 , 1), (𝑥4 , −1)} 𝐷4 = {(𝑥1 , −1), (𝑥2 , 1), (𝑥3 , −1), (𝑥4 , 1)} Sau khi xây được q tập huấn luyện từ tập dữ liệu ví dụ ban đầu, Binary Relevance sẽ sử dụng giải thuật học nhị phân ℬ bất kỳ để học bộ phân lớp nhị phân 𝑔𝑗 : 𝒳 → ℝ; 𝑣í 𝑑ụ 𝑔𝑗 ← ℬ (𝐷𝑗 ); tức là sẽ có q bộ phân lớp nhị phân cho mỗi nhãn. Cho thể hiện mới 𝒙, Binary Relevance dự đoán tập nhãn 𝑌 liên quan tới 𝑥 bằng việc sử dụng mỗi bộ phân lớp nhị phân để gán nhãn cho 𝑥, sau đó kết hợp kết quả với những nhãn phù hợp trên các bộ phân lớp đó: 𝑌 = {𝑦𝑗 | 𝑔𝑗 (𝑥) > 0, 1 ≤ 𝑗 ≤ 𝑞} (2) Khi tất cả các bộ phân lớp cho ra kết quả âm thì tập nhãn của 𝑥 sẽ là rỗng.
Để tránh việc tạo ra dự đoán tập nhãn rỗng, có thể sử dụng quy tắc T-Criterion sau: 𝑌 = {𝑦𝑗 | 𝑔𝑗 (𝑥) > 0, 1 ≤ 𝑗 ≤ 𝑞 } ∪ {𝑦𝑗 ∗ | 𝑗 ∗ = 𝑎𝑟𝑔𝑚𝑎𝑥1≤𝑗≤𝑞 𝑔𝑗 (𝑥)} (3) 𝑌 = 𝐵𝑖𝑛𝑎𝑟𝑦𝑅𝑒𝑙𝑒𝑣𝑎𝑛𝑐𝑒(𝐷, ℬ, 𝑥) 1. for j = 1 to q do 2. Khởi tạo tập dữ liệu huấn luyện 𝐃𝐣 theo công thức (1); 3. Trả về 𝐘 theo công thức (3) Hình 2.