- Mở rộng, cải thiện phương pháp rút trích hiện có để tăng tính hiệu quả của phương pháp: mở rộng thêm từ điển cảm xúc; mở rộng tập luật rút trích nét đối với từ chỉ cảm xúc là danh từ,
GIỚI THIỆU
Lý do chọn đề tài
Ý kiến (opinion) luôn là thông tin tham khảo quan trọng đối với các quyết định của các cá nhân và tổ chức Trước khi có Internet, ý kiến được tham khảo thông qua bạn bè, gia đình hay các bảng khảo sát ý kiến người tiêu dùng của các doanh nghiệp Sau đó, sự phát triển bùng nổ của Internet và thông tin làm thay đổi mạnh mẽ cách người dùng hay doanh nghiệp tham khảo và chia sẻ ý kiến, thông tin tham khảo đến từ nhiều nguồn khác nhau như các trang thương mại điện tử, mạng xã hội, blog, mua bán trực tuyến,… giúp cho thông tin trở nên đầy đủ, khách quan, đa dạng hơn và không tốn quá nhiều chi phí và nhân lực cho quá trình khảo sát ý kiến như trước đây Ngoài ra, nó còn giúp cho người dùng có cái nhìn tổng quát hơn, giúp các quyết định chính xác hơn
Tuy nhiên, sự bùng nổ mạnh mẽ, đa dạng, phong phú của thông tin làm cho lượng thông tin cần đọc trở nên rất lớn, có những thông tin khá dài dòng nhưng chứa đựng rất ít thông tin hữu ích, gây ra những khó khăn cho cá nhân và doanh nghiệp trong việc tham khảo, tìm kiếm, tổng hợp đầy đủ thông tin cũng như việc đánh giá và theo dõi nhận xét của khách hàng đối với các sản phẩm và dịch vụ của doanh nghiệp Vì vậy, lĩnh vực khai phá ý kiến (opinion mining)/ phân tích cảm xúc (sentiment analysis) ra đời và đang phát triển rất nhanh, mạnh mẽ và thu hút được nhiều sự quan tâm và nghiên cứu
Các nghiên cứu được thực hiện ở nhiều mức khác nhau: mức từ (term level), cụm từ (phrase level), câu (sentence level) và văn bản (document level) Tuy nhiên, nếu đánh giá cảm xúc của một nhận xét (review) trên một sản phẩm thì chúng ta chỉ biết được cảm xúc chung của người dùng đối với sản phẩm, rất khó nhận biết người dùng thích hoặc không thích điểm nào trên sản phẩm vì một sản phẩm được nhận xét tích cực không có nghĩa tất cả các nét trong đối tượng 1 là tích cực và ngược lại Để giải quyết vấn đề nêu trên, lĩnh vực nghiên cứu khai phá ý kiến dựa trên nét
(feature-based opinion mining) ra đời, trong đó quan trọng nhất là rút trích nét của đối tượng (object feature extraction) Lĩnh vực nghiên cứu này có tính ứng
Khi đánh giá bất kỳ sản phẩm hoặc dịch vụ nào, việc xác định các đặc điểm của đối tượng là rất quan trọng Các đặc điểm này đại diện cho các bộ phận hoặc thuộc tính của đối tượng đang được đánh giá Bằng cách phân tích các đặc điểm của đối tượng, người dùng và doanh nghiệp có thể có được cái nhìn tổng quan, so sánh các ưu điểm và nhược điểm của từng thành phần của các đối tượng giữa các sản phẩm, dịch vụ của công ty với các đối thủ cạnh tranh Quá trình này giúp doanh nghiệp nâng cao chất lượng, giá thành và dịch vụ của sản phẩm.
Vì vậy, luận văn này sẽ tập trung nghiên cứu hiện thực đề tài: Rút trích nét của đối tượng.
Mục tiêu của đề tài
Tìm hiểu và đánh giá các phương pháp rút trích nét đối tượng hiện đang được quan tâm Tổng hợp các kết quả và đưa ra phương pháp cho đề tài của luận văn
Mở rộng, cải thiện phương pháp hiện có với các phương pháp khác để tăng tính hiệu quả của phương pháp
Mở rộng thêm từ điển cảm xúc
Mở rộng tập luật rút trích nét và cảm xúc đối với các từ chỉ cảm xúc là danh từ, động từ, tính từ và trạng từ
Kết hợp phương pháp hiện có với một số phương pháp khác nhằm tăng tính hiệu quả của phương pháp.
Phạm vi nghiên cứu
Phạm vi: Rút trích nét của đối tượng ở mức văn bản
Đối tượng: văn bản tiếng Anh của lĩnh vực sản phẩm công nghiệp
Phương pháp nghiên cứu của đề tài dựa trên hai yếu tố: (i) sự phụ thuộc cú pháp của các từ trong câu - mối quan hệ cú pháp giữa hai loại từ trong câu là các nét/mục tiêu (feature/target, sau này gọi chung là nét) và (ii) các từ chỉ cảm xúc (opinion/sentiment word) để rút trích các nét và các từ chỉ cảm xúc.
Đóng góp của đề tài
Mở rộng từ điển cảm xúc bằng cách tích hợp ba từ điển khác nhau
Mở rộng thêm các luật rút trích nét dựa trên mối quan hệ giữa nét với từ chỉ cảm xúc là danh từ, động từ, tính từ và trạng từ
Chỉnh sửa, cải tiến và tích hợp luật rút trích mới vào giải thuật Double Propagation (DP) [8]
Áp dụng các giải thuật để loại bỏ các nét không đúng trong quá trình rút trích bằng giải thuật DP (luận văn đã chỉnh sửa và cải tiến), so sánh tính hiệu quả của các phương pháp trên.
Cấu trúc đề tài
Chương 1: Giới thiệu đề tài gồm các nội dung sau: lý do chọn đề tài, mục tiêu, phạm vi nghiên cứu, đóng góp của đề tài và cấu trúc của đề tài
Chương 2: Trình bày tổng quan về các loại định dạng văn bản, các phương pháp rút trích nét đối tượng, các phương pháp xác định ngữ nghĩa của ý kiến
Chương 3: Trình bày chi tiết hướng tiếp cận và giải thuật đề xuất gồm có: lý thuyết về Văn phạm phụ thuộc (Dependency Grammar), cách chuyển đổi từ cấu trúc cụm (phrase structure) sang dạng cấu trúc phụ thuộc (dependencies), giải thuật Double Propagation (DP)
Chương 4: Trình bày giải pháp rút trích nét đối tượng, mở rộng các luật rút trích nét, chỉnh sửa lại giải thuật DP và tích hợp các luật rút trích mới vào giải thuật DP Sử dụng các phương pháp loại bỏ nét không đúng, phương pháp thứ nhất loại bỏ nét không đúng dựa trên danh sách các từ tổng quan (general word), phương pháp hai là xếp hạng nét theo độ liên quan nét (sử dụng giải thuật HITS) và tần suất xuất hiện
Chương 5: Trình bày cách hiện thực luận văn gồm có tập dữ liệu, các công cụ sử dụng, kết quả thực nghiệm và so sánh hiệu quả của các phương pháp loại bỏ nét không đúng khi kết hợp với giải thuật DP (luận văn đã chỉnh sửa và cải tiến)
Chương 6: Trình bày phần kết luận, ưu, khuyết điểm của luận văn và hướng phát triển trong tương lai
Cuối cùng là phần liệt kê các tài liệu tham khảo được sử dụng trong quá trình thực hiện luận văn.
TỔNG QUAN
Các loại định dạng văn bản
Có 2 dạng văn bản khác nhau, mỗi loại có các cách xử lý khác nhau
Văn bản định dạng 1 (Pros, Cons và Detailed review): người dùng mô tả nhận xét thành các phần riêng biệt Pros (các ưu điểm), Cons (các khuyết điểm) và Detailed review (phần nhận xét chi tiết), định dạng này phổ biến ở các trang như: Epinions 1 ,…
Hình 2.1: Văn bản định dạng 1 [1]
Định dạng tự do cho phép người dùng thoải mái viết đánh giá mà không cần phân chia thành các mục Ưu điểm và Nhược điểm riêng biệt Kiểu định dạng này phổ biến trên các trang thương mại điện tử như Amazon, nơi người dùng có thể tự do bày tỏ ý kiến, trải nghiệm và cả những lời khen chê về sản phẩm mà không bị giới hạn bởi bất kỳ định dạng nào.
Hình 2.2: Văn bản định dạng 2 [1]
Rút trích trên văn bản định dạng 1
Văn bản định dạng 1 là trường hợp đặc biệt, ý được thể hiện qua cụm từ ngắn hoặc từng đoạn ngắn trong câu.* Phương pháp học các mẫu có giám sát được áp dụng để xử lý trường hợp này.
Phần Pros trong hình 2.1 được chia làm 3 phân đoạn (segment) great photos easy to use very small
Phần Cons được chia làm 2 phân đoạn battery usage included memory is stingy
Nhìn vào ví dụ trên chúng ta thấy mỗi phân đoạn (segment) sẽ mô tả một nét (feature) được đặt trong dấu < > Quá trình xử lý được thực hiện thủ công gồm các bước sau:
1 Đầu tiên mỗi phân đoạn được chuyển đổi thành một chuỗi đã gắn thẻ part- of-speech (POS) và loại bỏ các con số (number)
“ included memory is stingy”
2 Thay thế các từ là nét thật sự trong câu bằng từ [feature]
“ included [feature] is stingy”
3 Sử dụng n-gram để sinh ra các phân đoạn ngắn hơn đối với các phân đoạn dài
4 Phân biệt các thẻ trùng lặp bằng cách thêm vào số thứ tự
5 Truy tìm các từ gốc của nét (word stemming)
Sau khi thực hiện tiền xử lý, kỹ thuật khai phá dựa trên luật kết hợp giúp trích xuất các nét Các nét đồng nghĩa được gom nhóm bằng cách sử dụng các tập từ đồng nghĩa (synsets) trong WordNet Ví dụ, các từ "photo", "picture" và "image" có nghĩa giống nhau trong máy quay kỹ thuật số.
Kỹ thuật rút trích nét dựa trên phương pháp xử lý ngôn ngữ tự nhiên và khám phá mẫu có giám sát, mang lại hiệu quả cao trong thực tế, đặc biệt đối với văn bản định dạng Tuy nhiên, phương pháp này tồn tại hạn chế là tốn nhiều công sức thủ công trong giai đoạn tiền xử lý dữ liệu.
Rút trích trên văn bản định dạng 2
Văn bản định dạng 2 sử dụng câu đầy đủ Để rút trích nét đối tượng trên định dạng này có các phương pháp sau:
Tìm các danh từ/cụm danh từ xuất hiện thường xuyên Đối với định dạng câu hoàn chỉnh ở văn bản loại 2 có thể áp dụng phương pháp trong [2], nhưng phương pháp này sẽ không hiệu quả vì các câu hoàn chỉnh thường phức tạp hơn và chứa nhiều thông tin bị nhiễu nhiều hơn, vì vậy phương pháp Feature-based summary (FBS) được đề xuất để rút trích cho loại văn bản nêu trên
FBS [4] là phương pháp không giám sát (unsupervised method) đòi hỏi phải có 1 lượng lớn dữ liệu các nhận xét và rút trích nét là các danh từ/cụm danh từ thường xuyên xuất hiện trong toàn bộ dữ liệu Các danh từ/cụm danh từ này được định nghĩa thông qua Part-of-speech (POST) Sự xuất hiện của các nét được đếm và giữ lại các nét xuất hiện thường xuyên Phương pháp này giả định các nét của sản phẩm là danh từ/cụm danh từ và mang tính chất hội tụ Phương pháp này sử dụng giải thuật CBA[3] để tìm các nét ứng viên xuất hiện thường xuyên trong văn bản
Nếu nét xuất hiện thường xuyên thì nét có thể là ứng viên quan trọng Sau đó, thực hiện các luật để lược bỏ (pruning) [4, 5] để loại bỏ các nhóm từ vô nghĩa do giải thuật trên tìm ra Các nét không được đề cập thường xuyên (infrequent feature) là các nét không quan trọng Phương pháp nêu trên khá đơn giản nhưng được đánh giá khá hiệu quả Độ chính xác của phương pháp FBS được cải thiện trong phương pháp do Popescu và Etzioni [6] đề xuất Giải thuật thực hiện rút trích các danh từ/cụm danh từ là nét của các lớp sản phẩm (product class) Giải thuật này có khuyết điểm là phải biết trước các lớp sản phẩm Giải thuật cố gắng loại bỏ các cụm danh từ không phải là nét của các thực thể (entity) bằng công thức PMI (Pointwise Mutual Information) để đánh giá độ liên quan giữa cụm từ và bộ phân biệt các thành phần (meronymy discriminators) Ví dụ về bộ phân biệt các thành phần của lớp scanner như sau: “of scanner”, “scanner has”, “scanner comes with”,…, các mẫu này sẽ được sử dụng để tìm các thành phần (component) hoặc các bộ phận (part) của máy scanner Công thức tính PMI như sau:
𝐇𝐢𝐭𝐬(𝒅) ∗ 𝐇𝐢𝐭𝐬(𝒇) Trong đó f là nét ứng viên và d chính là một bộ phân biệt (discriminator) Sử dụng việc tìm kiếm trên Web để tính số lần thành công (hits) của từng giá trị (individual) cũng như là sự đồng xuất hiện giữa chúng (co-occurrences) Ý tưởng chính của giải thuật là nếu giá trị PMI của nét ứng viên quá thấp có thể f và d không đồng thời xuất hiện thường xuyên
Ngoài ra giải thuật cũng sử dụng từ điển phân cấp is-a của WordNet
(WordNet is-a hierarchy), từ điển này sẽ liệt kê các loại đặc tính khác nhau của các đối tượng và sử dụng các dấu hiệu hình thái học của từ như các hậu tố “-iness” và “- ity” để phân biệt các thành phần/bộ phận và các thuộc tính/đặc tính của sản phẩm
Giải thuật này tuy cải thiện được độ chính xác trong công trình [5] bằng cách sử dụng các mẫu dạng quan hệ part-whole để khai phá các nét nhưng khi truy vấn trên Web lại có nhược điểm là tốn thời gian
Ngoài hai giải thuật được trình bày ở trên còn có một số nghiên cứu khác theo hướng tiếp cận này
Sử dụng mối quan hệ giữa từ chỉ cảm xúc với các nét/mục tiêu
Phương pháp theo hướng tiếp cận này cũng được áp dụng trong [2, 5], nó sử dụng mối quan hệ phụ thuộc giữa các từ chỉ cảm xúc với các nét/mục tiêu để rút trích các nét không xuất hiện thường xuyên (infrequent features) Nếu trong câu nét thường xuyên (frequent feature) không xuất hiện nhưng câu có chứa các từ chỉ cảm xúc thì sẽ rút trích các từ, cụm danh từ gần nhất đối với các từ chỉ cảm xúc Vd: câu
“The software is amazing” có “amazing” chính là từ chỉ cảm xúc và “software” chính là nét
Ngoài ra, phương pháp rút trích nét dựa trên mối quan hệ cũng hữu ích trong việc rút trích các nét quan trọng hay các nét chính trong văn bản khi các nét này không có từ chỉ cảm xúc hay ý kiến đi kèm với nó Ý tưởng về mối quan hệ phụ thuộc được tổng quát hóa thành giải thuật Double Propagation (DP) trong [7, 8]
▪ Sử dụng phương pháp học có giám sát
Phương pháp học có giám sát dựa vào việc học tuần tự (sequential learning) trong đó có các phương pháp tiêu biểu : Hidden Markov Models (HMM) [9] và Conditional Random Fields (CRF) [10] Ngoài ra, [11] còn áp dụng mô hình HMM học các mẫu để rút trích các nét và các cảm xúc Nhóm tác giả [12] sử dụng cây phụ thuộc để tìm cặp từ là nét và từ chỉ cảm xúc Phương pháp này sử dụng các mẫu cú pháp được học thông qua khai phá mẫu Nhóm nghiên cứu [2] rút trích các nét từ hai tập Pros và Cons sau đó gom cụm các nét đồng nghĩa và xếp hạng các từ dựa vào tần suất xuất hiện của chúng Công trình [14] sử dụng cả hai mô hình học có giám sát và bán giám sát để rút trích nét Trong khi đó [15] sử dụng phương pháp học có giám sát để rút trích các thông tin thích hợp từ Wikipedia
Ngoài các phương pháp được đề cập trên, còn có các phương pháp như [16] với ý tưởng chính là gom cụm các từ chỉ cảm xúc cho cùng một nét và xây dựng một bộ phân loại có khả năng xử lý khi có hai từ chỉ ý kiến mô tả cùng một nét.
Xác định ngữ nghĩa của ý kiến
Xác định ngữ nghĩa của ý kiến được thực hiện ở nhiều mức khác nhau: mức từ, mức câu và mức văn bản Ở mức từ để xác định ngữ nghĩa của ý kiến có hai cách: dựa trên các kho ngữ liệu và dựa trên từ điển
Dựa trên kho ngữ liệu (corpora based)
Phương pháp xác định ngữ nghĩa của cảm xúc dựa trên kho ngữ liệu được [17] thực hiện trên tính từ là tích cực (positive), tiêu cực (negative) hay trung tính
Trong thuật toán trích xuất cảm xúc, cách sử dụng các liên từ như “và” (“and”) và “hoặc” (“or”) ảnh hưởng đến kết quả phân loại cảm xúc Trong ví dụ "Chiếc xe này đẹp and rộng rãi", nếu từ "đẹp" mang nghĩa tích cực thì từ "rộng rãi" cũng mang nghĩa tích cực Điểm hạn chế của thuật toán là tính từ phụ thuộc vào liên từ và khó xác định loại cảm xúc nếu thiếu liên từ.
Nhóm tác giả [18] sử dụng PMI (Pointwise Mutual Information) để đo lường mối liên hệ ngữ nghĩa giữa các nét với các từ tích cực và tiêu cực gốc Tuy nhiên, phương pháp này có nhược điểm là khả năng truy hồi thấp khi các từ gốc hiếm xuất hiện trong dữ liệu hoặc không biết từ chỉ ý kiến hay không Bên cạnh đó, phương pháp này cũng không hiệu quả với các kho ngữ liệu có quy mô nhỏ.
Dựa trên từ điển (dictionary-based/lexicon based)
Phương pháp xác định ngữ nghĩa của ý kiến dựa trên từ điển, [19] sử dụng WordNet để xây dựng một mạng lưới (network) kết nối các cặp từ đồng nghĩa
Hướng ngữ nghĩa của một từ được quyết định bằng khoảng cách ngắn nhất của từ đến hai từ gốc (seed words) lần lượt đại diện cho hướng ngữ nghĩa tích cực và tiêu cực, hai từ được chọn là “good” và “bad” lần lượt đại diện cho hướng ngữ nghĩa tích cực và tiêu cực Trong [13] thực hiện các bước sau để xác định hướng ngữ nghĩa của ý kiến:
Xác định các từ hay cụm từ ý kiến: từ các câu có chứa các nét, xác định tất cả các từ hay cụm từ chỉ ý kiến Gán giá trị cho các từ chỉ cảm xúc, tích cực [+1], tiêu cực [-1] và các từ phụ thuộc vào ngữ cảnh câu là [0] Ví dụ, câu “The picture quality of this camera is not great, but the battery life is long”, sau khi thực hiện bước này câu trở thành “The picture quality of this camera is not great[+1], but the battery life is long[0]” vì “great” là từ chỉ cảm xúc tích cực, còn “long” là từ phụ thuộc vào ngữ cảnh
Xử lý các phủ định: các từ phủ định như: “not”, “never”, “none”,
“nobody”, “nowhere”, “neither” và “cannot” sẽ làm cho hướng ngữ nghĩa ban đầu của từ chỉ cảm xúc thay đổi, câu ví dụ trên trở thành
“The picture quality of this camera is not great[-1], but the battery life is long[0]” Tuy nhiên, cũng có ngoại lệ như cụm từ “not only … but also”, tuy cụm từ có chứa từ phủ định “not” nhưng không làm chuyển hướng ngữ nghĩa của từ Vì vậy phải có sự tách biệt giữa chúng khi xử lý
Xử lý các mệnh đề có chứa từ “ but ”: hướng ngữ nghĩa của các từ chỉ ý kiến phía trước từ “but” sẽ trái dấu với hướng ngữ nghĩa của các từ phía sau nó, câu ví dụ trên trở thành “The picture quality of this camera is not great[-1], but the battery life is long[+1], ngoài từ “but” còn có các từ trái ngược khác được xử lý tương tự như “except for”,
“except that”, Ngoại lệ xảy ra trong cụm từ “not only … but also”, tuy cụm từ có chứa từ “but” nhưng không làm chuyển hướng ngữ nghĩa của từ Vì vậy phải có sự tách biệt giữa chúng khi xử lý
Kết hợp các ý kiến: công thức được đưa ra để xác định hướng ngữ nghĩa sau cùng của các nét trong câu: score( f ) = ∑ 𝒘 𝒊 𝑺𝑶
𝒅𝒊𝒔(𝒘 𝒊 ,𝒇) 𝒘 𝒊 : 𝒘 𝒊 ∈𝒔∧𝒘 𝒊 ∈𝑽 trong đó w i là từ chỉ cảm xúc, V là tập các từ chỉ cảm xúc, s là câu có chứa nét f , và dis(w i , f) là khoảng cách giữa nét f và từ chỉ ý kiến/cảm xúc w i trong câu s, w i SO là hướng ngữ nghĩa của từ w i Nếu điểm cuối cùng tính được là tích cực thì cảm xúc của nét là tích cực, tiêu cực thì cảm xúc của nét là tiêu cực Nếu nó là trung tính (neutral) thì cảm xúc là trung tính
Ngoài phương pháp do [13] đề xuất nêu trên, còn có các phương pháp khác để xác định hướng ngữ nghĩa của ý kiến dựa trên từ điển.Tuy nhiên, các phương pháp dựa trên từ điển gặp khó khăn do không thể tìm các từ chỉ cảm xúc phụ thuộc miền (domain dependent), bởi vì hầu hết các mục từ (entries) trong các từ điển độc lập về miền (domain-independent).
Gom nhóm các từ đồng nghĩa
Các nét của đối tượng có ý nghĩa giống nhau có thể được diễn tả bằng các từ, cụm từ đồng nghĩa khác nhau và chúng cần được gom nhóm lại.
Kết luận
Nhiều nghiên cứu về việc khai phá ý kiến theo hướng tiếp cận rút trích nét đối tượng đang được quan tâm Trong đó nét được phân biệt thành hai loại: loại nét tường minh (explicit feature) và nét ẩn dụ (implicit feature) Hiện nay, khai thác chủ yếu là rút trích các nét tường minh, là danh từ hay cụm danh từ và các từ chỉ cảm xúc là các tính từ Các nghiên cứu khai phá ý kiến dựa trên nét ẩn dụ còn rất ít và hạn chế Các phương pháp khai thác nét ẩn dụ được trình bày trong [2, 13]
CƠ SỞ LÝ THUYẾT
Văn phạm phụ thuộc (Dependency Grammar)
Văn phạm phụ thuộc mô tả các quan hệ giữa các từ (word), định nghĩa sự phụ thuộc như là các quan hệ có hướng giữa con (ruled word) và cha (ruler word)
Quan hệ phụ thuộc giữa A và B được biểu diễn như sau:
A là head (cha) và B là con (dependent) của A và phụ thuộc vào A
B bị phụ thuộc (depedent) vào A
3.1.1 Quan hệ phụ thuộc (Dependency relation) a) Bất đối xứng (anti-symmetric)
Nếu w1 w2 thỡ ơ (w2 w1), cú nghĩa nếu A là cha, chi phối B thỡ B không thể là cha, chi phối A được
Ví dụ: student polictics ≠ politics student politics student ≠ student politics b) Không phản xạ (anti-reflexive)
Nếu w1 w2 thì w1 ≠ w2, có nghĩa không có từ nào là cha hay con của chính nó Đặc điểm trên chỉ thỏa điều kiện trong trường hợp đã thỏa đặc điểm bất đối xứng c) Không bắc cầu (anti-transitive)
Nếu w1 w2 và w2 w3 thỡ ơ (w1 w3), cú nghĩa A là cha của B, B là cha của C, nhưng A không gián tiếp là cha của C Các quan hệ phụ thuộc luôn là quan hệ trực tiếp
Ví dụ: very smart student student smart very, nhưng ơ (student very) d) Gán nhãn (labeled):
Các quan hệ phụ thuộc điều được gán nhãn riêng biệt
Ví dụ : “John loves Mary”, love John, love Mary Suy ra: love r1 John; love r2 Mary (r1 ≠ r2) e) Sự duy nhất của từ đóng vai trò là cha (governer): một dạng từ
(wordform) chỉ phụ thuộc vào một và chỉ một từ duy nhất, hoặc nó độc lập hoàn toàn nếu nó đóng vai trò nút gốc (root) trong cây phụ thuộc f) Quan hệ phụ thuộc hiện diện trong tất cả các ngôn ngữ, xuất hiện trong tất cả các câu của ngôn ngữ và nó bao hàm tất cả các dạng từ (wordform) trong một câu
3.1.2 Cây phụ thuộc (Dependency tree)
Tất cả các quan hệ phụ thuộc giữa các từ trong một câu được biểu diễn dưới dạng cây, gọi là cây phụ thuộc (dependency tree)
Cây phụ thuộc là một đồ thị liên thông có hướng được gán nhãn trong đó:
Các nút (node) hay các đỉnh được gán nhãn và các nhánh (branch) hay cung (arch) được gán nhãn tên các quan hệ cú pháp
Mỗi nút (node) chỉ phụ thuộc vào một và chỉ một nút khác nó
Có duy nhất một nút gốc (root hay top node)
Thứ tự tuyến tính giữa các từ trong câu không ảnh hưởng đến việc biểu diễn cây phụ thuộc
+ Mối liên quan giữa hai từ gồm có thứ tự các từ (word order) và cấu trúc cụm từ (phrase)
+ Chiều (direction) của quan hệ cú pháp giữa hai từ [20] xác định từ nào đóng vai trò là chính (head) và từ nào đóng vai trò là phụ thuộc (dependent) trong cụm từ
+ Nhãn (label) hay quan hệ (relation) giữa hai từ A và B
Ví dụ: trong đó PRP: đại từ (personal pronoun); VBZ: động từ đối với ngôi thứ ba số ít (verb, 3 rd person singular present); NNS: danh từ số nhiều; nsubj: chủ từ (nominal subject); dobj: túc từ trực tiếp (direct object)
3.1.3 Chuyển đổi từ cấu trúc cụm từ (Phrase Structure) thành các thành phần phụ thuộc (Dependencies)
Ví dụ: câu “Mary likes fresh strawberries with sugar” được chuyển đổi từ dạng cấu trúc cụm từ thành các thành phần phụ thuộc Đầu tiên, ta có cấu trúc cây được sinh ra dựa trên phần mềm Stanford CoreNLP 1 và các bước chuyển đổi dựa trên [21] như sau:
Bước 1: Gắn các quan hệ cú pháp giữa các mối quan hệ cha-con trong cây, kết quả như sau:
1 http://nlp.stanford.edu:8080/corenlp/process
Bước 2: Xác định head của câu là từ “likes” Gán nhãn cho các nút cha với head vừa xác định Cây cấu trúc trên trở thành:
Bước 3: Loại bỏ những nút bị dư thừa của từ “likes” và xác định các con của từ “likes”, cấu trúc câu trở thành như sau:
Bước 4: Thực hiện các bước giống với từ “likes” nêu trên, xác định head của cụm danh từ NP “fresh strawberries” là danh từ “strawberries” và head trong cụm từ PP “with sugar” là giới từ “with” và gán nhãn cho các nút cha tương ứng, kết quả sinh ra như sau:
Bước 5: Loại bỏ các nút dư thừa và gán nhãn cho các quan hệ cú pháp cha- con giữa các kết nối trong cây, kết quả có được như sau:
Bước 6: Gán nhãn cho ADJ là “fresh”, NP và N chính là “sugar”, thu gọn các nút dư thừa, kết quả như sau:
So sánh kết quả với phần sinh ra các thành phần phụ thuộc tự động của Stanford CoreNLP 1 đối với câu “Mary likes fresh strawberries with sugar” như sau:
Ta thấy việc chuyển đổi giữa cấu trúc cụm từ thành các thành phần phụ thuộc bằng phương pháp nêu trên và bằng phần mềm Stanford CoreNLP 1 cho kết quả giống nhau Tổng kết các bước cần làm khi chuyển đổi từ cấu trúc cụm từ thành các thành phần phụ thuộc như sau:
Bước 1: Gán nhãn các quan hệ ngữ pháp giữa các quan hệ cha-con trong cây
Bước 2: Xác định nút gốc của cây
Bước 3: Xác định head của cụm từ
Bước 4: Dịch chuyển (percolate) các head vừa tìm được lên phía trên bằng phương pháp chiếu (maximal projection)
Bước 5: Loại bỏ những nút dư thừa của cây
Bước 6: Lặp lại từ Bước 3 đến Bước 5 cho đến khi tìm được cây phụ thuộc sau cùng
1 http://nlp.stanford.edu:8080/corenlp/process
Ví dụ đã nêu cho thấy mối quan hệ phụ thuộc được bắt nguồn từ các cấu trúc cây dạng cụm từ Trong cấu trúc này, một cụm từ bao gồm một thành phần chính (“head”) và một hoặc nhiều thành phần phụ thuộc (“dependent”) Ngược lại, từ các mối quan hệ phụ thuộc, ta cũng có thể suy ra các cấu trúc cụm từ tương ứng.
Giải thuật Double Propagation (DP)
Giải thuật Double Propagation (DP) là một phương pháp bán giám sát (semi- supervised) Nó không cần đòi hỏi các nguồn tài nguyên bên ngoài mà đầu vào chỉ cần một từ điển ý kiến và mối quan hệ tự nhiên giữa các từ chỉ ý kiến/cảm xúc và nét/mục tiêu Ý tưởng chính của giải thuật là rút trích nét/mục tiêu hay từ chỉ ý kiến/cảm xúc dựa vào các từ nét/mục tiêu hoặc các từ chỉ ý kiến/cảm xúc đã biết hoặc đã được rút trích trước đó thông qua các mối quan hệ cú pháp Giải thuật lan truyền thông tin trước và sau giữa từ chỉ các ý kiến/cảm xúc và các nét/mục tiêu nên có tên gọi là Double Propagation (DP)
Hình 3.1: Mô hình rút trích nét và từ chỉ ý kiến bằng giải thuật Double Propagation
3.2.2 Định nghĩa về mối liên hệ giữa các từ Định nghĩa mối liên hệ giữa các từ chỉ ý kiến/cảm xúc, nét/mục tiêu là chìa khóa đối với phương pháp nêu trên Có ba mối liên hệ giữa các từ
(1) Mối liên hệ giữa từ chỉ ý kiến/cảm xúc và nét/mục tiêu (OT-Rel) (2) Mối liên hệ giữa các từ chỉ ý kiến/cảm xúc (OO-Rel)
(3) Mối liên hệ giữa các nét/mục tiêu (TT-Rel)
Phụ thuộc trực tiếp (Direct Dependency - DD)
Phụ thuộc trực tiếp xảy ra khi một từ phụ thuộc trực tiếp vào một từ khác hoặc cả hai từ cùng phụ thuộc trực tiếp vào một từ trung gian thứ ba
Trong hình 3.2 (a), từ A phụ thuộc trực tiếp vào từ B, còn ở (b) thì A và C phụ thuộc trực tiếp vào B
Phụ thuộc gián tiếp (Indirect Dependency Relation - IDR)
Quan hệ phụ thuộc gián tiếp định nghĩa khi một từ phụ thuộc vào từ khác thông qua các từ trung gian hay cả hai từ phụ thuộc gián tiếp vào từ thứ ba
Trong hình 3.2 (c) A phụ thuộc vào B thông qua H1, trong (d) A phụ thuộc vào H thông qua H1 và B phụ thuộc vào H thông qua H2
Hình 3.2: Các mối liên hệ phụ thuộc khác nhau giữa các từ [7]
3.2.4 Các luật rút trích dựa vào các mối liên hệ
Các mối liên hệ cú pháp được mô tả dựa vào văn phạm phụ thuộc, bằng các từ loại (thẻ) và cấu trúc cú pháp Việc gán thẻ sử dụng công cụ gán thẻ POST của Stanford 1 và sử dụng Minipar 2 để phân tích cú pháp câu
Các luật tương ứng được xây dựng để rút trích các từ chỉ cảm xúc là các tính từ và các nét là các danh từ / cụm danh từ
Trong bảng 3.1, cột thứ 2 là các quan hệ quan sát được giữa hai từ, cột 3 mô tả các ràng buộc của các quan hệ quan sát được, cột 4 là kết quả đầu ra và cột cuối cùng là ví dụ minh họa
Vì phân tích cú pháp khó hơn và dễ gây ra lỗi với những biểu diễn không chính thức (informal expressions) được dùng trong môi trường Web nên phương pháp này chỉ xây dựng luật cho các phụ thuộc trực tiếp Còn phụ thuộc gián tiếp chỉ phù hợp cho các văn bản hình thức [8]
Bảng 3.1: Các luật để rút trích từ chỉ cảm xúc và nét [7]
Các quan sát Các ràng buộc Đầu ra Ví dụ
“iPod” is the best mp3 player
POS(S) ∈ {JJ} s = S iPod is the “best” mp3 player
1 http://nlp.stanford.edu/software/tagger.shtml
2 http://webdocs.cs.ualberta.ca/lindek/minipar.htm
Does the player play dvd with audio and
The camera is amazing and “easy” to use
If you want to buy a good, “cool”, accessory-available mp3 player, you can choose iPod
Trong bảng, ký hiệu s hoặc f có nghĩa là từ chỉ cảm xúc hoặc nét được rút trích {S} (hoặc {F}) và S-Dep hoặc F-Dep có nghĩa là các từ cảm xúc đã biết (hoặc các nét đã biết) và quan hệ phụ thuộc của S hoặc F tương ứng H có nghĩa là bất kỳ từ nào POS(S) hoặc POS(F) là thông tin thẻ POS của S hoặc F {JJ} và {NN} là tập các thẻ POS của các từ chỉ cảm xúc và nét ứng viên trong đó {JJ} bao gồm JJ, JJR , JJS ; {NN} gồm NN, NNS {MR} bao gồm các quan hệ phụ thuộc giữa từ chỉ cảm xúc và nét (mod, pnmod, subj, s, obj, obj2 và desc) {CONJ} chỉ chứa liên từ conj
Các mũi tên biểu diễn quan hệ phụ thuộc và dấu “==” biểu diễn sự tương tự hay tương đương
Giải thuật 3.1: Giải thuật Double Propagation [8]
Giải thuật 3.1 là mã của giải thuật DP Đầu vào là từ điển cảm xúc O và tập dữ liệu đã qua quá trình tiền xử lý Đây là một giải thuật lặp với các bước được thực Đầu vào: Từ điển các từ chỉ ý kiến {O}, Dữ liệu R Đầu ra: Tất cả các nét {F}, Từ điển ý kiến đã được mở rộng {O-Expanded}
2 {F i } = ∅ , {O i } = ∅ 3 for each parsed sentence in R 4 if (Extracted features not in {F}) 5 Extract features {F i } using R1 1 và R1 2 based on opinion words in {O-Expanded}
6 endif 7 if (Extracted opinion words not in {O-Expanded})
8 Extracted new opinion words {O i } using R4 1 và R4 2 based on opinion words in {O-Expanded}
9 endif 10 endfor 11 Set {F} = {F} + {F i }, {O-Expanded} = {O-Expanded}+{O i } 12 for each parsed sentence in R
13 if (Extracted features not in {F}) 14 Extract features {F’} using R3 1 và R3 2 based on features in {F i } 15 endif
16 if (Extracted opinion words not in {O-Expanded}) 17 Extracted new opinion words {O’} using R2 1 và R2 2 based on features in {F i } 18 endif
22 Repeat 2 till size ({F i }) = 0, size {(O i )} = 0 hiện theo thứ tự nêu trên Giải thuật sẽ dừng khi không còn từ chỉ ý kiến hay nét mới nào được thêm vào
Ví dụ về giải thuật DP
+ Có tập đầu vào gồm 4 câu sau: { “Canon G3 takes great pictures”; “The picture is amazing”; “You may have to get more storage to store high quality pictures and recorded movies” và “The software is amazing” }
+ Từ chỉ cảm xúc đầu vào là “great”
- Vòng lặp đầu tiên của giải thuật sử dụng luật R1, R2, R3 để rút trích các nét: "picture" (nét đối tượng), "amazing" (nét cảm xúc) và "movies" (nét hành động).
+ Ở lần lặp thứ 2, từ “amazing” là từ chỉ cảm xúc đã được rút trích trước đó, sử dụng dòng 4-6, luật R1 2 để rút trích nét là “software” ở câu 4 Giải thuật dừng vì không còn nét hay từ chỉ cảm xúc trong câu nữa Như vậy giải thuật đã rút trích được 3 nét của sản phẩm và các từ chỉ cảm xúc mới mà chỉ cần sử dụng một từ chỉ cảm xúc là great
3.2.5 Gán cực trị (polarity) cho từ chỉ cảm xúc
Gán cực trị cho các từ chỉ cảm xúc là công việc quan trọng trong quá trình khai phá ý kiến Vì vậy các từ chỉ ý kiến/cảm xúc được gán cực trị trong quá trình thực hiện giải thuật DP, dựa vào ngữ cảnh của câu
Cực trị các nét (hoặc từ chỉ cảm xúc) vừa mới được rút trích trong câu được gán theo cực trị của các nét (hoặc từ chỉ cảm xúc) được sử dụng để rút trích nó Có hai quan sát quan trọng để xác định các luật dùng để gán cực trị các nét trong câu
Quan sát 1 – Các nét giống nhau trong cùng một nhận xét sẽ cùng cực trị
Một nhận xét (review) trong văn bản được viết bởi cùng một người Trong nhận xét đó người dùng luôn luôn có cùng cảm xúc hoặc cùng cực trị trên các nét giống nhau
Quan sát 2 – Các từ chỉ cảm xúc giống nhau thì cùng cực trị trong một miền của kho ngữ liệu
Từ chỉ ý kiến/cảm xúc giống nhau luôn luôn có cùng cực trị trong cùng một miền của kho ngữ liệu
Từ hai quan sát nêu trên, có các luật gán cực trị như sau:
Luật không đồng nhất (Heterogeneous rule)
GIẢI PHÁP
Mô hình tổng quan
Mô hình tổng quan gồm ba khối chức năng chính như sau:
Hình 4.1: Mô hình tổng quan
Xử lý dữ liệu: sử dụng các phần mềm Stanford POS Tagger và Stanford
Parser được tích hợp trong phần mềm Stanford CoreNLP 1 để gán nhãn
POS (Part-of-Speech) và phân tích cú pháp của từng câu
Rút trích nét của đối tượng: sử dụng từ điển dữ liệu do luận văn xây dựng, các luật rút trích trong [7] và các luật rút trích đã được luận văn mở rộng và giải thuật Double Propagation (DP) đã được luận văn chỉnh sửa để rút trích nét của đối tượng
Xử lý nét rút trích: trong quá trình rút trích bằng giải thuật DP sẽ có những nét rút trích chưa đúng (incorrect features), luận văn áp dụng giải thuật loại bỏ các nét không đúng bằng danh sách các từ tổng quan
1 http://nlp.stanford.edu/software/corenlp.shtml
(general word) và phương pháp xếp hạng nét dựa theo độ liên quan nét (giải thuật HITS [23]) và tần suất xuất hiện nhằm tăng độ chính xác cho quá trình rút trích nét.
Xử lý dữ liệu
Dữ liệu đầu vào bao gồm 3 tập tin, mỗi tập tin chứa các nhận xét tiếng Anh 1
Luận văn thực hiện các bước xử lý dữ liệu như sau:
Chỉnh sửa lỗi chính tả của nhận xét do nhận xét lấy từ web sẽ có những từ bị lỗi chính tả, luận văn sử dụng một danh sách các từ hay bị lỗi chính tả để chỉnh sửa lỗi chính tả của văn bản, việc chỉnh sửa lỗi chính tả giúp cho việc phân tích cú pháp chính xác hơn
Tách các tập tin nhận xét thành các nhận xét riêng biệt nhau
Gán thẻ POS cho từng câu bằng Stanford POS Tagger, công cụ này giúp cho việc phân tích cú pháp chính xác hơn
Sau cùng sử dụng Stanford Parser để phân tích cú pháp từng câu trong nhận xét
Ví dụ: câu “The phone has a good screen” có thẻ POS và được phân tích cú pháp như sau:
Rút trích nét của đối tượng
Từ điển cảm xúc là nguồn dữ liệu quan trọng, là đầu vào duy nhất hỗ trợ quá trình rút trích nét của đối tượng bằng phương pháp DP dựa trên các quan hệ ngữ pháp phụ thuộc Vì vậy, ban đầu luận văn sử dụng từ điển cảm xúc của Bing Liu 2 gồm 6800 từ (bao gồm danh từ , động từ, tính từ và trạng từ) chỉ cảm xúc, sau đó sử dụng các bộ từ điển khác như: General Inquirier 3 và Subjectivity Lexicon 4 để mở
1 http://www.cs.uic.edu/~liub/FBS/CustomerReviewData.zip
2 http://www.cs.uic.edu/~liub/FBS/opinion-lexicon-English.rar
3 http://www.wjh.harvard.edu/~inquirer/spreadsheet_guide.htm
4 http://mpqa.cs.pitt.edu/lexicons/subj_lexicon/ rộng bộ từ điển ban đầu Từ điển cảm xúc này được chia thành hai danh sách làm đầu vào (seed list) cho giải thuật DP gồm:
Từ điển mang cảm xúc tích cực (positive)
Từ điển mang cảm xúc tiêu cực (negative)
4.3.2 Tập luật rút trích nét
Các luật rút trích đóng vai trò quan trọng trong quá trình rút trích nét, dựa trên mối quan hệ phụ thuộc giữa các từ Luận văn sử dụng 14 luật trong giải thuật Double Propagation (DP), bao gồm:
8 luật được sử dụng lại từ [7, 8], các luật này rút trích nét (danh từ) và từ chỉ cảm xúc (tính từ) dựa trên mối quan hệ giữa nét và từ chỉ cảm xúc, trong đó có 4 luật sử dụng để rút trích nét và 4 luật để rút trích từ chỉ cảm xúc
6 luật do luận văn mở rộng để rút trích nét dựa trên mối quan hệ giữa nét
Trong ngôn ngữ học, phạm trù cảm xúc (danh từ) được thể hiện bằng các từ chỉ cảm xúc (danh từ, động từ, trạng từ, tính từ) Có 5 luật rút trích nét bằng từ chỉ cảm xúc, bao gồm: 1 luật bằng danh từ, 1 luật bằng động từ, 1 luật bằng tính từ, 1 luật bằng trạng từ và 1 luật rút trích trạng từ mới từ trạng từ đã biết.
Luận văn sử dụng lại 8 luật rút trích trong [7, 8] Tuy nhiên, các luật rút trích trong [7, 8] dựa trên các quan hệ cú pháp phân tích bằng phần mềm Minipar 5 trong khi luận văn sử dụng Stanford Parser tích hợp trong Stanford CoreNLP 6 để phân tích cú pháp nên tạo ra sự khác biệt giữa các mối quan hệ cú pháp nên luận văn phải thực hiện ánh xạ mối quan hệ cú pháp giữa hai bộ phân tích cú pháp với nhau như sau:
Bảng 4.1: Ánh xạ các quan hệ cú pháp giữa Minipar và Stanford Parser
STT Minipar Parser Stanford Parser
5 http://webdocs.cs.ualberta.ca/lindek/minipar.htm
6 http://nlp.stanford.edu/software/corenlp.shtml
6 conj conj_and, conj_or
Tuy việc ánh xạ chưa chính xác và đầy đủ một cách tuyệt đối, nhưng các quan hệ do luận văn ánh xạ rút trích khá hiệu quả vì luận văn dựa trên các định nghĩa về mối quan hệ giữa từ với từ để ánh xạ sang các quan hệ trong Stanford Parser Vì có sự ánh xạ này nên quan hệ {MR} và {CONJ} trong [7] thể hiện ở bảng 3.1 được ánh xạ sang các quan hệ và thêm vào các quan hệ khi sử dụng trong
{MR} bao gồm các quan hệ phụ thuộc giữa từ chỉ cảm xúc và nét bao gồm: (amod, nsubj, nsubjpass, dobj, iobj, prep, rcmod)
{CONJ} chỉ chứa liên từ conj_and và conj_or
Ngoài ra, luận văn còn đề xuất thêm 6 quy tắc trích xuất đặc điểm và từ ngữ chỉ cảm xúc bằng danh từ, trạng từ, tính từ và động từ chỉ cảm xúc.
Bảng 4.2 : Tập luật rút trích nét do luận văn đề xuất
Luật Các quan sát Các ràng buộc Đầu ra Ví dụ
S-Dep ∈ {prep, dobj, nsubj, nsubjpass, rcmod, agent}
1 I am really impressed by this dvd “player”
3 The “dvd” must be damaged
S ∈ {S}, F-Dep ∈ {nsubj}, S-Dep ∈ {acomp}, POS(F) ∈ {NN, NNS}
(playernsubjworked acomp perfect)
Trong bảng 4.2 các ký hiệu có ý nghĩa như sau:
s và f có nghĩa lần lượt là từ chỉ cảm xúc và nét được rút trích
{S} và S-Dep (hoặc F-Dep) có nghĩa là các từ cảm xúc đã biết và quan hệ phụ thuộc của S (hoặc F) tương ứng
H có nghĩa là bất kỳ từ nào
POS(S) hoặc POS(F) là thông tin thẻ POS của S hoặc F {JJ}, {RB},{VB} và {NN} là tập các thẻ POS của các từ chỉ cảm xúc và nét ứng viên trong đó: o {JJ} bao gồm JJ, JJR , JJS ; o {NN} gồm NN, NNS; o {VB} gồm có VB, VBD, VBG, VBN, VBP, VBZ; o {RB} gồm có RB, RBR, RBS
{CONJ} chỉ chứa liên từ conj_and và conj_or
I have only one complaint about the “noise”
S-Dep ∈ {dobj}, POS(F) ∈ {NN, NNS}
F-Dep ∈ {nsubj, nsubjpass, rcmod}, S-Dep ∈ {advmod}, POS(F) ∈ {NN, NNS}
The “player” has worked flawlessly
(playernsubjworkeda dvmodflawlessly)
“perfectly” and well perfectly conj well
4.3.3 Giải thuật Double Propagation (DP)
Giải thuật DP được đề xuất trong [8] để rút trích các nét (danh từ) và từ chỉ cảm xúc (tính từ) dựa trên các luật rút trích trong [7, 8] Ý tưởng của giải thuật DP là sử dụng mối quan hệ cú pháp giữa nét và từ chỉ cảm xúc, nét và nét, từ chỉ cảm xúc và từ chỉ cảm xúc từ đó rút trích ra những nét mới và những từ chỉ cảm xúc mới từ các nét và từ chỉ cảm xúc đã biết Giải thuật sẽ lặp cho đến khi không còn rút trích được nét mới hay từ chỉ cảm xúc mới nữa
Hình 4.2: Giải thuật Double Propagation (DP)
Luận văn áp dụng lại giải thuật DP trong [8] cùng với các luật rút trích trong [7, 8] để rút trích nét Ngoài ra luận văn đã chỉnh sửa và thêm vào 6 luật rút trích nét và từ chỉ cảm xúc được luận văn mở rộng vào trong giải thuật Giải thuật DP được chỉnh sửa lại như sau:
Giải thuật 4.1: Giải thuật Double Propagation luận văn đã chỉnh sửa Đầu vào : Từ điển các từ chỉ ý kiến {O-Adj}, {O-N}, {O-VB}, {O-RB}, danh sách các từ stopword{StopWordList}, Dữ liệu các nhận xét R Đầu ra : Tất cả các nét {F}
3 for each parsed sentence in R 4 Extract features using R1 1 và R1 2 based on opinion words in {O-Expanded}
5 Extract features using RV1, RV2 based on opinion words in {O-VB} and {O-Expanded}
6 Extract features using RN1, RN2 based on opinion words in {O-N}
7 Extract features using RADV1 based on opinion words in {O-RB}
8 if(Extracted features not in {F}, {O-N} and {StopWordList}) 9 Add extracted features to {F i }
10 endif 11 Extracted new opinion words using R4 1 và R4 2 based on opinion words in {O-Expanded}
11 if (Extracted opinion words not in {O-Expanded} and {StopWordList} ) 12 Add extracted opinion words to{O i }
14 Extracted new opinion words using RADV2 based on opinion words in {O-RB}
15 if (Extracted opinion words not in {O-RB} and {StopWordList}) 16 Add extracted opinion words to {O-RB}
18 endfor 19 Set {F} = {F} + {F i }, {O-Expanded} = {O-Expanded}+{O i } 20 for each parsed sentence in R
21 Extract features using R3 1 và R3 2 based on features in {F i } 22 if(Extracted features not in {F} and {StopWordList}) 23 Add extracted features to {F’}
24 endif 25 Extracted new opinion words using R2 1 và R2 2 based on features in {F i } 26 if (Extracted opinion words not in {O-Expanded} and {StopWordList}) 27 Add extracted opinion words to{ O’}
30 if size({F i }) = 0 and size({O i }) = 0 31 Extracted new opinion words using R2 1 and R2 2 based on extracted features from previous reviews in dataset
32 if (Extracted opinion words not in {O-Expanded} and {StopWordList}) 33 Add extracted opinion words to {O’}
Tập dữ liệu đầu vào gồm có:
{O-Adj} các từ điển cảm xúc tính từ;
{O-RB} từ điển cảm xúc trạng từ;
{O-N} từ điển cảm xúc danh từ;
{O-VB} là từ điển cảm xúc động từ;
Danh sách các từ stopword{StopWordList};
Dữ liệu các nhận xét đầu vào R
Trong giải thuật nêu trên, những phần được in đậm là phần mở rộng và chỉnh sửa thêm của luận văn Ngoài ra, trong dòng 2 {F i } = {F’}, {O i } = ∅ được luận văn chỉnh sửa lại so với giải thuật gốc trong [8] Vì trong quá trình hiện thực, luận văn nhận thấy các nét được rút trích trong luật R3 1 và R3 2 không được sử dụng để tiếp tục thực hiện rút trích nét tiếp theo Vì giải thuật DP của [8] thiết lập khi bắt đầu lại vòng lặp với {F i } = ∅, điều này đã gây ra việc rút trích nét bị thiếu hoặc bị sót, nên luận văn đã chỉnh sửa lại dòng 2
Ngoài ra, luận văn thêm vào dòng 5-7 để thực hiện rút trích nét dựa vào từ chỉ cảm xúc là động từ, tính từ, danh từ và trạng từ và dòng 14-17 dùng để rút trích từ chỉ cảm xúc là trạng từ từ một trạng từ khác thông qua liên từ “and” và “or”
Ngoài ra, luận văn còn thêm dòng 30 -35 trong trường hợp giải thuật không rút trích được từ chỉ cảm xúc bằng các nét có trong {Fi} nhưng trong câu có tồn tại một nét có quan hệ với từ chỉ cảm xúc theo luật rút trích và nét này đã được rút trích từ các nhận xét (reviews) trước đó của tập dữ liệu, nét đó sẽ được sử dụng để rút trích từ chỉ cảm xúc mới này Trong quá trình rút trích nét, giải thuật cũng loại bỏ các StopWord có trong quá trình rút trích nét bằng danh sách StopWord trong Stanford
CoreNLP 1 đề xuất và luận văn có thêm các từ chỉ về số lượng như:”few”,”most”,
“more”, … giúp cho việc rút trích thêm chính xác
Ví dụ về giải thuật DP đã được chỉnh sửa
Các giải pháp xử lý nét
Để khắc phục nhược điểm của thuật toán DP trong việc trích xuất các tụm từ và chuỗi, luận văn đề xuất một số phương pháp sau:
4.4.1 Cụm từ Để tạo ra cụm từ luận văn áp dụng các bước để tạo thành cụm từ từ những từ đơn được rút trích từ giải thuật DP như sau:
1 Ghép các nét đơn (từ đơn) được rút trích với danh từ trước và sau nét, tính từ phía trước nét theo mẫu cụm danh từ sau đây:
JJ NN NN trong đó NN là danh từ, JJ là tính từ
2 Sau khi tạo ra các cụm danh từ theo mẫu trên, luận văn lựa chọn cụm từ có độ xuất hiện thường xuyên nhất ( frequency-based pruning ) vì các nhận xét trên các nét sản phẩm giống nhau sẽ được khách hàng sử dụng các từ ngữ tương tự nhau
4.4.2 Lược bỏ các nét không đúng
Phương pháp 1 – Lược bỏ nét không đúng dựa trên danh sách từ tổng quan (General word list)
Phương pháp này áp dụng phương thức lược bỏ các từ không phải là nét dựa trên danh sách từ tổng quan sinh ra bằng từ điển WordNet Giải thuật kiểm tra từ có phải là nét hay không bằng cách tra cứu danh sách này.
Danh sách từ tổng quan là danh từ hay cụm danh từ (“situation”, “someone”,
“day”,…) được xây dựng bằng WordNet Các bước xây dựng danh sách các từ tổng quan như sau:
Bước 1: Ban đầu giải thuật cần tập “hạt giống” (seed list) gồm có 3 từ
Bước 2: Giải thuật mở rộng tự động tập các từ tổng quan dựa vào ý tưởng sau:
“Cho tập các từ tổng quan T gồm có {“thing”, “person”, “place”} thì các danh từ đồng nghĩa với từ của T trong nghĩa (sense) đầu tiên là từ tổng quan và các danh từ thuộc định nghĩa cho từ của T trong nghĩa (sense) đầu tiên là từ tổng quan”
Số từ tổng quan được luận văn sinh ra khoảng 7698 từ dựa trên từ điển WordNet 2.1 Các bước chi tiết của giải thuật “Sinh từ tổng quan” như sau: Đầu vào : Tập danh sách từ tổng quan ban đầu {F} = {“thing”, “place”, “person”} Đầu ra: Tập danh sách từ tổng quan{GeneralWordList} sau khi mở rộng Phương pháp:
1 { GeneralWordList } = {F}, i = 0 2 while (i< size of {GeneralWordList}) 3 Extract all synonyms of general word in { GeneralWordList } at first sense by WordNet
4 Extract all nouns in the definition of general word in { GeneralWordList } at first sense by WordNet
5 if (extracted synonyms not in { GeneralWordList }) 6 Add extracted synonyms to { GeneralWordList } 7 end if
8 if (extracted nouns not in { GeneralWordList }) 9 Add extracted nouns to { GeneralWordList } 10 end if
Giải thuật 4.2: Giải thuật Sinh từ tổng quan
+ Xác định nét không đúng (Incorrect feature)
Đặc điểm A không thích hợp khi là từ khái quát hoặc từ B là danh từ thuộc định nghĩa của từ A trong nghĩa đầu tiên trong WordNet và B là từ khái quát Ví dụ: từ "user" được định nghĩa trong nghĩa đầu tiên trong WordNet là "a person who makes use of a thing", "user" là một nét không thích hợp do định nghĩa chứa từ khái quát là "person" Để kiểm tra một từ có phải là nét không thích hợp hay không, luận văn thực hiện các bước như hình 4.3.
Sơ đồ kiểm tra một từ có phải là một nét không đúng dựa trên định nghĩa của WordNet Noun(t, w) thể hiện t là danh từ trong tập các danh từ xuất hiện trong định nghĩa WordNet của từ w trong nghĩa ban đầu Có hai ngoại lệ trong quá trình xác định nét không đúng.
Ngoại lệ 1: định nghĩa của từ có chứa các từ khóa như “aspect”,
“attribute”, “property”, “component” và “device” thì nét ứng viên đó không phải là một nét không đúng
Ví dụ: từ “quality” có định nghĩa “an essential and distinguishing attribute or something or someone”, nó là một nét vì có chứa từ khóa
“attribute” mặc dù nó chứa từ tổng quan là “someone”
Ngoại lệ thứ hai áp dụng khi nét ứng viên có tần suất xuất hiện cao hoặc một trong những danh từ thuộc định nghĩa của nét ứng viên trong nghĩa đầu tiên của WordNet cũng có tần suất xuất hiện cao Trong trường hợp này, nét ứng viên không phải là một nét không đúng.
+ Giải thuật kiểm tra một nét ứng viên có phải là một từ tổng quan
Giải thuật kiểm tra một nét ứng viên có phải là một từ tổng quan
IsGeneralWord(w) trong hình 4.3 được viết như sau: Đầu vào : Từ (word) w, Danh sách từ tổng quan (General word list) {GW} Đầu ra: đúng hoặc sai (true or false) Phương pháp: IsGeneralWord(w)
1 Get synonyms of w in first sense in WordNet 2 for each synonym t in synonyms
3 if (t in {GW}) 4 w is general word, return true 5 end if
6 end for 7 for each noun n in definition of w in first sense in WordNet 8 if (n in {GW})
9 w is general word, return true 10 end if
Giải thuật 4.3: Kiểm tra một từ có phải là từ tổng quan
+ Giải thuật kiểm tra nét ứng viên có thuộc trường hợp ngoại lệ
Giải thuật kiểm tra nét ứng viên có thuộc hai trường hợp ngoại lệ nêu trên hay không, nếu có thì nó không phải là một nét không đúng, ngược lại nó là nét không đúng
Giải thuật IsException(w) trong hình 4.3 được viết như sau: Đầu vào: Từ (word) w, Danh sách các từ khóa Indicator list {F} {“aspect”, “attribute”, “property”, “component”, “device”} Đầu ra: đúng hoặc sai (true or false) Phương pháp: IsException(w)
1 if (w has high frequency in dataset) 2 return true
3 end if 4 for each noun n in definition of w in first sense in WordNet 5 if (n has high frequency in dataset)
10 end if 11 end for 12 return false
Giải thuật 4.4: Giải thuật kiểm tra nét ứng viên có thuộc trường hợp ngoại lệ, hàm IsException(w)
Vậy phương pháp lược bỏ nét không đúng nêu trên sẽ có ba bước như sau:
Bước 1: Chạy giải thuật DP cho kết quả là tập các nét ứng viên A
Bước 2: Từ các nét ứng viên A, xác định tập nét không đúng B thông qua các giải thuật và danh sách các từ tổng quan GeneralWord như hình 4.3
Bước 3: Chạy lại giải thuật DP như bước 1 nhưng có bổ sung điều kiện kiểm tra nét có thuộc B hay không để tìm ra tập các nét cuối cùng
Phương pháp 2 – Xếp hạng nét dựa trên độ liên quan nét (feature relevance) và tần suất xuất hiện (feature frequency)
Hình 4.4: Các bước thực hiện trong phương pháp 2
Ngoài các nét được rút trích bằng giải thuật DP, còn có các nét quan trọng khác nhưng không có từ chỉ cảm xúc để xác định nó Vì vậy [22] đã đưa ra phương pháp như sau:
+ Khai thác nét dựa trên các mẫu dạng part-whole và các mẫu có chứa từ
“ no ” vì các mẫu này thường bị giải thuật DP [7, 8] bỏ qua Phương pháp này giúp tăng độ truy hồi của giải thuật
+ Sử dụng phương pháp xếp hạng các nét giúp tăng độ chính xác của giải thuật dựa trên cơ sở hai yếu tố:
Độ liên quan nét (feature relevance) dựa trên ý tưởng:
+ Một nét chính xác thì thường được xác định bởi nhiều từ chỉ ý kiến (tính từ)
+ Một nét chính xác được rút trích bằng nhiều mẫu part-whole
+ Một nét chính xác có thể cùng được rút trích bởi từ chỉ ý kiến, các mẫu part-whole và mẫu “no”
Tần suất nét xuất hiện đóng vai trò quan trọng trong kết quả xếp hạng của nét trong ngữ pháp tiếng Việt Những nét có tần suất xuất hiện cao hơn sẽ được coi là quan trọng hơn trong việc phân tích cấu trúc và ý nghĩa của các từ.
Luận văn áp dụng lại phương pháp xếp hạng nét được đề xuất trong [22] trong đó các từ chỉ ý kiến hiện nay ngoài tính từ còn có trạng từ, danh từ và động từ trong giải thuật DP (đã được chỉnh sửa và cải tiến) bao gồm các bước sau: a) Sử dụng các mẫu rút trích NP: danh từ/ cụm danh từ đóng vai trò là part trong mẫu rút trích
CP: đóng vai trò là whole trong mẫu rút trích (cụm từ khái niệm lớp - class concept phrase – CP) thường được định nghĩa trước
NP + Prep + CP: trong đó Prep {“of”, “on”, “in” - giới từ} Ví dụ:
“battery of the camera” trong đó battery (NP) + of (Prep) + camera (CP)
CP + with + NP : Vd: “mattress with a cover”
NP CP hoặc CP NP: Vd: “mattress pad”
CP Verb NP: trong đó Verb {“have”, “contain”, “include”, “consist”,
“comprise”, “carry”, “combine”, “comprehend”, “enclose”, “hold”,
"incorporate”, “inherit”, “integrate”, “receive”, “retain”, “subsume”}
THỬ NGHIỆM VÀ ĐÁNH GIÁ
Kết quả thực nghiệm và đánh giá
Chuơng trình được hiện thực bằng:
Ngôn ngữ Java trên NetBeans 7.4 và Java SE Development Kit 7;
Phần mềm gán thẻ POS (Stanford POS Tagger) và bộ phân tích cú pháp Stanford Parser được tích hợp trong phần mềm Stanford CoreNLP 3 ;
Thư viện Java MIT Java WordNet Interface 4 ;
Kết quả thực nghiệm của luận văn thu được trên máy tính xách tay có cấu hình như sau:
Bộ vi xử lý: Intel(R) Core(TM) 2 Duo T5900 2.20 GHz
Hệ điều hành: Window 7 Ultimate 32-bit
5.2.1 Rút trích nét đối tượng
Luận văn thực hiện rút trích nét đối tượng dựa trên 16 luật rút trích có:
+ 8 luật rút trích được sử dụng của [7, 8] (đã được ánh xạ các quan hệ từ Minipar sang Stanford Parser) trong đó có 4 luật là rút trích nét và 4 luật rút trích từ chỉ cảm xúc;
+ 6 luật rút trích do luận văn đề xuất thêm để rút trích nét dựa trên từ chỉ cảm xúc là động từ, danh từ, trạng từ và tính từ
Luận văn thực thi các luật rút trích nêu trên bằng giải thuật Double Propagation đã được tác giả luận văn chỉnh sửa và tích hợp thêm các luật rút trích mở rộng Dữ liệu đầu vào của giải thuật sẽ là từ điển chỉ cảm xúc do luận văn tạo ra và từng nhận xét (review) trong danh sách các nhận xét
3 http://nlp.stanford.edu/software/corenlp.shtml
4 http://projects.csail.mit.edu/jwi/
5 http://wordnetcode.princeton.edu/2.1/WordNet-2.1.exe
Ngoài ra, khi rút trích nét, do quan hệ từ với từ chỉ cho kết quả nét rút trích bằng giải thuật DP là từ đơn, nên luận văn đã khắc phục nhược điểm trên bằng việc sử dụng các mẫu cụm danh từ :
JJ NN NN để xuất ra các cụm từ (trong đó JJ là tính từ và NN là danh từ) Đối với các cụm từ được lấy ra từ từ đơn, thì ngưỡng frequency của nó phải >= 3, sau đó áp dụng phương pháp frequency-based method để lấy ra cụm từ có độ xuất hiện thường xuyên lớn nhất Cụm từ đó sẽ là cụm từ mà giải thuật cần tìm Ngoài ra, trường hợp cụm từ có dạng “remote-control” hay “dvd-player” cũng được xử lý bằng phương pháp frequency based method để tìm các cụm từ tương ứng Ví dụ: “remote control” tương ứng với “remote-control”, tìm tần suất xuất hiện của “remote-control” và
“remote control” và sau đó tiến hành cộng tần suất xuất hiện của hai cụm từ Nếu tổng số lần xuất hiện của “remote control” và “remote-control” lớn hơn bằng 4, chuyển “remote-control” thành “remote control”, nét được rút trích
* Kết quả thực nghiệm a) Thực nghiệm giải thuật DP đã cải tiến chỉnh sửa và phương pháp loại bỏ các nét không đúng dựa trên danh sách từ tổng quan (General words - GW)
Các bước thực hiện bao gồm:
+ Chạy giải thuật DP do luận văn đã cải tiến chỉnh sửa cùng 14 luật rút trích nét và từ chỉ cảm xúc
+ Tìm các cụm từ là nét dựa trên mẫu cụm từ và loại bỏ các cụm từ bằng phương pháp frequency based pruning dựa trên tần suất xuất hiện
+ Kiểm tra các nét vừa được rút trích có phải là nét đúng hay không bằng danh sách từ tổng quan (general word) do luận văn tạo ra (như hình
5.8) và dùng giải thuật loại bỏ nét không đúng như đã nêu trong phần Giải pháp Kết quả xuất ra của giải thuật là danh sách các nét không đúng {F}
+ Chạy lại giải thuật DP một lần nữa để kiểm tra nếu nét rút trích thuộc {F} thì loại khỏi danh sách nét được rút trích Ngược lại, từ được rút trích chính là nét của đối tượng
Hình 5.8: Danh sách từ tổng quan được tạo ra bằng WordNet
+ Kết quả rút trích nét trên các tập dữ liệu thử nghiệm Để hiển thị giao diện chức năng rút trích nét đối tượng, chọn Hệ thống / Rút trích nét đối tượng
Dựa trên giao diện màn hình, người dùng chọn tập dữ liệu đầu vào và phương thức "Double Propagation" hoặc "Phương pháp lược bỏ nét không đúng bằng danh sách từ tổng quan" để xử lý dữ liệu Tiếp theo, người dùng nhấn nút "Rút trích" để hệ thống trả về kết quả các nét đã được rút trích và xử lý Các kết quả này sẽ được hiển thị trực quan trên màn hình giao diện.
Tập dữ liệu thứ 1: Canon G3 (D1)
Hình 5.9: Hiện thực giải thuật DP đã cải tiến chỉnh sửa và giải thuật loại bỏ các nét không đúng dựa trên danh sách từ tổng quan GW trên tập dữ liệu D1
Luận văn hiện thực giải thuật DP rút trích nét đã được chỉnh sửa và mở rộng bằng các luật bổ sung và sử dụng phương pháp loại bỏ các nét không đúng dựa trên danh sách từ tổng quan GW có ngưỡng tần suất xuất hiện thường xuyên trên toàn bộ tập dữ liệu lớn hơn hoặc bằng 9 (tính và kiểm tra bằng hàm IsException(w) như phần Giải pháp đã nêu trong đó w là nét ứng viên được rút trích bằng giải thuật
DP) Trong hình 5.9 có các nét đúng và các nét không đúng, luận văn lấy ví dụ các nét đại diện cho nét đúng là “battery life”, “button” được tô màu xanh lá cây và các nét đại diện cho các nét không đúng là “everything” và “plastic” tô màu cam Kết quả cho thấy giải thuật rút trích các nét đúng chính xác Tuy nhiên cũng có những nét không đúng như “plastic” hay ”everything” được rút trích, hai từ này đều có trong danh sách từ tổng quan GW, tuy nhiên tần suất xuất hiện thường xuyên trên toàn bộ tập dữ liệu lớn hơn hoặc bằng 9 nên được xem là nét, đều này làm giảm độ chính xác của giải thuật Ngược lại, có những từ là nét nhưng tần suất xuất hiện khá thấp so với ngưỡng quy định và thuộc danh sách từ tổng quan (general word) nên bị loại bỏ khỏi danh sách nét khi rút trích, điều này làm giảm độ truy hồi (recall) của giải thuật Ví dụ: từ “design”, “memory” bị loại bỏ do tần suất xuất hiện < 9 và thuộc danh sách từ tổng quan GW nên bị loại bỏ dù hai từ này là nét
Tập dữ liệu thứ 2: Nikon Coolpix 4300 (D2)
Hình 5.10: Hiện thực giải thuật DP đã cải tiến chỉnh sửa và giải thuật loại bỏ các nét không đúng dựa trên danh sách từ tổng quan GW trên tập dữ liệu D2
Nhận xét
Bên cạnh các nhận xét trên trong phần 5.2 Phương pháp loại bỏ nét không đúng bằng danh sách từ tổng quan và phương pháp xếp hạng nét theo độ liên quan nét ( giải thuật HITS) và tần suất xuất hiện được luận văn kết hợp với giải thuật DP do luận văn mở rộng được thử nghiệm trên các tập dữ liệu khác nhau cho kết quả đánh giá khác nhau, do các phương pháp có ưu nhược điểm khác nhau Luận văn nhận thấy rằng độ chính xác và độ truy hồi phụ thuộc khá nhiều vào:
+ Nguồn dữ liệu đầu vào, do luận văn lấy nguồn dữ liệu từ 1 nhưng tất cả các nhận xét đã được chuyển đổi thành chữ thường làm cho giải thuật sẽ rút trích không chính xác đối với các từ là danh từ riêng như “Canon” bị chuyển thành “canon”, hay “Nikon” bị chuyển thành “nikon”,… làm cho quá trình gán thẻ POS cũng như phân tích cú pháp bị sai, vì nó đều được xác định từ loại là “NN” Khi giải thuật DP hiện thực, nếu thỏa điều kiện của luật rút trích thì các danh từ riêng (với từ loại được gán thẻ là “NN”) vẫn sẽ được xem là nét để rút trích, điều này làm giảm độ chính xác của giải thuật
Độ chính xác của giải thuật rút trích phụ thuộc rất nhiều vào chất lượng phân tích cú pháp, trong khi quá trình này lại dựa vào việc gán thẻ POS Tuy nhiên, đôi khi phần mềm có thể gán thẻ POS sai, dẫn đến phân tích cú pháp không chính xác Chẳng hạn, câu "The remote is good", từ "remote" lẽ ra là danh từ nhưng lại bị gán nhãn tính từ, làm ảnh hưởng đến kết quả phân tích cú pháp và làm giảm hiệu quả của thuật toán trích xuất Vấn đề ở đây là nếu phân tích cú pháp sai sẽ dẫn đến trích xuất sai, mà đây lại là yếu tố mà luận văn không thể can thiệp điều chỉnh trực tiếp.
+ Do lỗi chính tả trong các nhận xét, luận văn đã tiến hành xử lý lỗi chính tả trong quá trình Xử lý dữ liệu bằng tập tin 2 và từ điển đã tích hợp luôn các từ hay bị sai chính tả trên các nhận xét (dựa tập tin 2 ), trong tập tin 2 luận văn cũng có thêm một số từ bị sai chính tả khác và từ đúng (từ sửa lại cho từ sai chính tả) Ngoài ra, trong quá trình rút trích luận văn có kiểm tra thêm các từ rút trích có thuộc danh sách stop word hay không giúp tăng độ chính xác của hệ thống.
So sánh kết quả thực nghiệm các hệ thống của luận văn với kết quả thực nghiệm của [8]
Thuật toán DP ban đầu được đề xuất và triển khai trong các bài báo [7, 8] Trong [7], tác giả chỉ đưa ra các quy tắc chiết xuất nét mặt và từ biểu thị cảm xúc dựa trên các mối quan hệ
1 http://www.cs.uic.edu/~liub/FBS/CustomerReviewData.zip
2 http://introcs.cs.princeton.edu/java/44st/misspellings.txt phụ thuộc giữa nét và từ chỉ cảm xúc (tính từ) dựa trên phần mềm phân tích cú pháp Minipar 3 và kết quả thực nghiệm của giải thuật DP trong [7] chỉ có phần rút trích các từ chỉ cảm xúc (sentiment words) ở dạng tính từ và việc mở rộng từ điển chỉ cảm xúc
Trong [8] tác giả cũng sử dụng các luật rút trích được đề xuất trong [7], sử dụng bộ phân tích cú pháp Minipar và giải thuật DP mà tác giả đưa ra trong [8] Sau đó tác giả sử dụng các phương pháp lược bỏ (pruning) để lược bỏ các nét không đúng trong quá trình thực hiện giải thuật DP Trong [7, 8] đều sử dụng phần mềm gán nhãn Stanford POSTagger 4 và phần mềm Minipar để phân tích cú pháp câu trong nhận xét, các luật rút trích xây dựng dựa trên các quan hệ phụ thuộc của Minipar (được mô tả trong phần 3.2.4 của luận văn ) Vì vậy, luận văn sẽ so sánh kết quả hiện thực các hệ thống của luận văn với các kết quả thực nghiệm trong [8]
Bảng 5.5: So sánh kết quả thực nghiệm của hệ thống rút trích nét bằng giải thuật
DP đã cải tiến chỉnh sửa và giải thuật loại bỏ nét không đúng bằng danh sách từ tổng quan (HT1) và hệ thống rút trích nét bằng giải thuật DP đã cải tiến chỉnh sửa và giải thuật xếp hạng nét theo độ liên quan nét (giải thuật HITS) và tần suất xuất hiện (HT2) để nâng cao hiệu năng trích xuất Nghiên cứu thực nghiệm trong [8] đã chứng minh hiệu quả của phương pháp này (HT3).
Kết quả thực nghiệm của luận văn Kết quả thực nghiệm [8]
3 http://webdocs.cs.ualberta.ca/lindek/minipar.htm
4 http://nlp.stanford.edu/software/tagger.shtml trong đó, HT1: Hệ thống của luận văn chạy trên giải thuật DP đã được luận văn cải tiến, chỉnh sửa và giải thuật loại bỏ nét không đúng bằng danh sách từ tổng quan (general words)
HT2: Hệ thống của luận văn chạy trên giải thuật DP đã được luận văn cải tiến, chỉnh sửa, sử dụng các mẫu part-whole, mẫu “no” để rút trích nét và giải thuật xếp hạng nét theo độ liên quan nét (giải thuật HITS) và tần suất xuất hiện Trong đó, tập các bộ xác định nét (feature indicators) bao gồm tính từ, trạng từ, danh từ, động từ, “whole” trong mẫu part-whole, “no” trong mẫu “no” và nét xác định nét trong luật rút trích Rule31 và Rule32 Nét (features) bao gồm nét (danh từ/cụm danh từ ) rút trích bằng giải thuật DP, mẫu part-whole và mẫu “no”
HT3: Kết quả thực nghiệm được trích từ bài báo [8]
Trong HT1 và HT2, luận văn sử dụng phần mềm gán nhãn Stanford
POSTagger và phần mềm phân tích cú pháp Stanford Parser (thuộc phần mềm Stanford CoreNLP 1 ) để gán nhãn và phân tích cú pháp câu Luận văn hiện thực giải thuật DP bao gồm:
+ 14 luật rút trích nét và từ chỉ cảm xúc (8 luật rút trích từ [7, 8] với các quan hệ phụ thuộc đã được ánh xạ từ Minipar 2 sang Stanford Parser như trong bảng 4.1; 6 luật rút trích nét và từ chỉ cảm xúc do luận văn tự đề xuất dựa trên các quan hệ phụ thuộc của phần mềm Stanford Parser)
+ Ngoài ra, luận văn còn chỉnh sửa và tích hợp thêm các luật rút trích mới vào giải thuật DP trong [8], sau đó áp dụng các mẫu cụm danh từ để rút trích các cụm từ từ những nét đơn (từ đơn) vừa được rút trích bằng DP
Trong HT1, luận văn sử dụng thêm giải thuật loại bỏ nét không đúng bằng danh sách từ tổng quan Trong HT2, luận văn rút trích thêm nét (danh từ/cụm danh từ) bằng các mẫu part-whole và mẫu “no” Sau đó, sử dụng phương pháp xếp hạng nét theo độ liên quan nét (giải thuật HITS) và tần suất xuất hiện để chọn ra các nét đúng (các nét được xếp hạng cao) trong danh sách các nét được xếp hạng
Kết quả thực nghiệm của HT3 được trích từ bài báo [8], áp dụng trên 3 tập dữ liệu tương ứng với dữ liệu được sử dụng trong luận văn Trong bài báo này, tác giả sử dụng phần mềm Stanford POSTagger 3 để gán nhãn cho câu và phần mềm Minipar để gắn nhãn cho từng thành phần trong câu.
1 http://nlp.stanford.edu/software/corenlp.shtml
2 http://webdocs.cs.ualberta.ca/lindek/minipar.htm
3 http://nlp.stanford.edu/software/tagger.shtml phân tích cú pháp câu Giải thuật DP của [8] bao gồm 8 luật rút trích nét (danh từ) và từ chỉ cảm xúc (tính từ) với các quan hệ phụ thuộc dựa trên phần mềm Minipar
Ngoài ra, [8] còn sử dụng thêm 3 phương pháp lược bỏ các nét không đúng sinh ra khi rút trích bằng giải thuật DP của [8]
Quan sát bảng 5.5 cho thấy độ chính xác và độ truy hồi của HT1 và HT2 so với HT3 [8] có sự chênh lệch Độ chính xác và truy hồi của HT3 trong [8] cho kết quả rất tốt Tuy nhiên, sự chênh lệch về kết quả thực nghiệm giữa các hệ thống của luận văn với [8] (HT3) do các nguyên nhân sau:
Sự khác biệt trong bộ phân tích cú pháp là yếu tố đầu tiên dẫn đến sự chênh lệch về độ chính xác và độ truy hồi giữa các hệ thống Cụ thể, HT1 và HT2 sử dụng bộ phân tích cú pháp Stanford Parser, trong khi HT3 lại sử dụng Minipar Sự khác biệt này dẫn đến các kết quả phân tích cú pháp câu và mối quan hệ phụ thuộc khác nhau.
+ Tuy luận văn đã tiến hành ánh xạ các quan hệ phụ thuộc trong các luật rút trích do [7, 8] đề xuất từ Minipar sang Stanford Parser (thể hiện trong bảng 4.1) trong quá trình hiện thực HT1 và HT2, nhưng do việc ánh xạ chưa thật sự đầy đủ và chính xác tuyệt đối, vẫn còn quan hệ phụ thuộc trong Minipar (trong luật rút trích do [7, 8] đề xuất) chưa được ánh xạ sang Stanford Parser như “desc”, đây là nguyên nhân thứ hai ảnh hưởng đến độ chính xác và độ truy hồi của HT1 và HT2 khi so sánh với HT3
TỔNG KẾT
Kết luận
Luận văn đạt được những kết quả như sau:
Tìm hiểu các phương pháp rút trích nét đối tượng, khảo sát đánh giá các phương pháp liên quan
Tìm hiểu lý thuyết về giải thuật DP, ngữ pháp phụ thuộc và cách chuyển đổi từ cấu trúc cụm từ thành các thành phần phụ thuộc
Tích hợp ba bộ từ điển cảm xúc mở rộng luật rút trích dựa trên quan hệ nét với từ loại, tái hiện thuật toán DP chỉnh sửa bổ sung luật rút trích Sử dụng các phương pháp loại bỏ nét không chính xác trong quá trình rút trích bằng thuật toán DP và so sánh kết quả.
6.1.2 Ưu điểm và nhược điểm
Xây dựng mẫu rút trích cụm từ bằng từ đơn rút trích được từ giải thuật DP
Xây dựng các luật rút trích mới và tích hợp vào giải thuật DP được chỉnh sửa để rút trích thêm được các nét dựa trên quan hệ của nét với danh từ, động từ, trạng từ và tính từ Áp dụng các phương pháp loại bỏ các nét không đúng dựa trên các nét rút trích được từ giải thuật DP và đã cho kết quả khá tốt
Luận văn tồn tại những hạn chế sau:
+ Tốc độ xử lý còn khá chậm,
+ kết quả còn phụ thuộc nhiều vào bộ phân tích cú pháp và bộ gán thẻ POS phân tích trên bộ dữ liệu đầu vào,
+ chưa loại bỏ được hoàn toàn các nét không đúng, + hệ thống chỉ mới được thử nghiệm rút trích nét trên các sản phẩm công nghiệp, chưa thử nghiệm trên các tập dữ liệu của các lĩnh vực khác như phim ảnh, nhà hàng,…,
+ chưa xử lý được các sự phân giải của đại từ (pronoun resolution) xuất hiện trong văn bản,
+ mẫu rút trích cụm từ chưa hiệu quả đối với các nét cụm từ xuất hiện ít hay một lần trong văn bản,
+ chưa thực hiện phân loại cảm xúc cho nét.
Hướng phát triển trong tương lai
Hướng phát triển cụ thể của luận văn là khắc phục các nhược điểm nêu trên
+ Tối ưu thời gian thực thi
+ Nghiên cứu và tìm hiểu thêm về các bộ gán thẻ POS và các bộ phân tích cú pháp khác nhằm đạt được hiệu quả và độ chính xác cao nhất
+ Nghiên cứu và cải tiến kỹ thuật để kết quả loại bỏ các nét không đúng đạt hiệu quả cao nhất
+ Xử lý rút trích cụm từ để rút trích các cụm từ có độ xuất hiện thấp
+ Tìm hiểu và giải quyết vấn đề về độ phân giải của đại từ (pronoun resolution) trong văn bản giúp cho việc rút trích nét hiệu quả hơn
+ Tiếp tục thử nghiệm trên các tập dữ liệu nhận xét của các lĩnh vực khác nhau
+ Thực hiện phân loại cảm xúc dành cho nét được rút trích.