Mặc dù một số chương trình đã đáp ứng một phần nhu cầu khai phá quan điểm của khách hàng thông qua các đánh giá, song nâng cao chất lượng tổng kết đánh giá luôn là vấn đề cần được quan t
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Lưu Công Tố
MỞ RỘNG VIETSENTIWORDNET DỰA TRÊN
VÀO BÀI TOÁN KHAI PHÁ QUAN ĐIỂM
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY
Ngành: Công nghệ thông tin
Hà Nội – 2011
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Lưu Công Tố
MỞ RỘNG VIETSENTIWORDNET DỰA TRÊN
VÀO BÀI TOÁN KHAI PHÁ QUAN ĐIỂM
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: PGS.TS Hà Quang Thụy Cán bộ đồng hướng dẫn: ThS Trần Mai Vũ
Hà Nội – 2011
Trang 3Lời cảm ơn
Lời đầu tiên, tôi xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới Phó Giáo
sư, Tiến sĩ Hà Quang Thụy, Thạc sĩ Trần Mai Vũ đã tận tình chỉ bảo và hướng dẫn tôi trong suốt quá trình thực hiện khóa luận tốt nghiệp
Tôi cũng xin chân thành cảm ơn các thầy, cô đã tạo điều kiện thuật lợi nhất cho tôi trong thời gian tôi học tập và nghiên cứu tại trường Đại học Công nghệ
Tôi xin gửi lời cảm ơn tới các anh chị, các bạn và các em sinh viên trong nhóm
“Khai phá dữ liệu” đã giúp tôi rất nhiều trong việc hỗ trợ kiến thức chuyên môn cũng như thu thập và xử lý dữ liệu để hoàn thành tốt khóa luận Xin cảm ơn sự hỗ trợ từ đề tài QG 10.38 trong suốt quá trình tôi làm khóa luận
Tôi cũng xin gửi lời cảm ơn tới các bạn trong lớp K52CA và K52CHTTT đã ủng hộ, khuyến khích tôi trong suốt quá trình học tập tại trường
Con xin gửi lời cảm ơn tới ông bà, cha mẹ, những người thân yêu luôn động viên, khuyến khích và tạo điều kiện tốt nhất cho con trong suốt cuộc đời
Cuối cùng, tôi muốn gửi lời cảm ơn bạn bè luôn bên cạnh và động viên tôi trong suốt quá trình học tập và thực hiện khóa luận tốt nghiệp
Tôi xin chân thành cảm ơn!
Sinh viên Lưu Công Tố
Trang 4Tóm tắt
Ngày nay, thương mại điện tử đã trở nên phổ biến đối với mọi người Cùng với
nó là sự ra đời của các trang web bán hàng trực tuyến, cho phép khách hàng đánh giá
sản phẩm Số lượng đánh giá về một sản phẩm mà chúng ta nhận được ngày càng tăng
Điều này gây khó khăn cho khách hàng tiềm năng trong việc quyết định có nên mua
sản phẩm hay không, và cản trở nhà sản xuất trong việc theo dõi các ý kiến của khách
hàng Mặc dù một số chương trình đã đáp ứng một phần nhu cầu khai phá quan điểm
của khách hàng thông qua các đánh giá, song nâng cao chất lượng tổng kết đánh giá
luôn là vấn đề cần được quan tâm Kho ngữ liệu có trọng số SentiWordNet là nguồn
tài nguyên quan trọng góp phần vào việc giải quyết bài toán khai phá quan điểm này
Khóa luận khảo sát các phương pháp xây dựng SentiWordNet, đặc biệt là
phương pháp xây dựng SentiWordNet 3.0 [6] Từ đó, khóa luận đề xuất một mô hình
mở rộng VietSentiWordNet cho miền dữ liệu tiếng Việt [1], và áp dụng kho ngữ liệu
VietSentiWordNet mới vào bài toán khai phá quan điểm khách hàng dựa trên đánh giá
sản phẩm
Thực nghiệm do khóa luận tiến hành bước đầu đã thu được kết quả tương đối
khả quan, mở rộng kho ngữ liệu VietSentiWordNet từ gần 1,000 synset lên 9,000
synset, độ chính xác khi áp dụng kho ngữ liệu vào bài toán khai phá quan điểm đạt
66.60%, cao hơn mức trung bình 44.45% khi áp dụng VietSentiWordNet ban đầu
Trang 5Lời cam đoan
Tôi xin cam đoan khóa luận “Mở rộng VietSentiWordNet dựa trên mô hình học bán giám sát SVMlight và áp dụng vào bài toán khai phá quan điểm” là công trình nghiên cứu do tôi thực hiện dưới sự hướng dẫn của PGS TS Hà Quang Thụy và ThS Trần Mai Vũ
Các số liệu, kết quả được trình bày trong khóa luận là hoàn toàn trung thực và chưa từng được công bố trong bất kỳ một công trình nào khác Tất cả những tham khảo từ các nghiên cứu liên quan đều được nêu nguồn gốc một cách rõ ràng từ danh mục tài liệu tham khảo trong khóa luận Trong khóa luận, không có việc sao chép tài liệu, công trình nghiên cứu của người khác mà không chỉ rõ về tài liệu tham khảo
Trang 6Mục lục
Mục lục i
Danh sách các bảng iii
Danh sách các hình vẽ iv
Mở đầu 1
Khái quát về khai phá quan điểm 3
Chương 1: 1.1 Giới thiệu 3
1.2 Các khái niệm dùng trong khai phá quan điểm: 3
1.3 Các bài toán trong khai phá quan điểm 4
1.4 Bài toán khai phá quan điểm khách hàng từ các đánh giá tiếng Việt trên miền sản phẩm “điện thoại di động” 5
1.5 Tóm tắt chương 1 5
Các phương pháp xây dựng SentiWordNet 6
Chương 2: 2.1 Giới thiệu về kho ngữ liệu WordNet 6
2.2 Giới thiệu về kho ngữ liệu Sentiwordnet 6
2.2.1 Các khái niệm sử dụng trong SentiWordNet 6
2.2.2 Các phiên bản SentiWordNet 7
2.3 Phương pháp xây dựng SentiWordNet 3.0 8
2.3.1 Bước 1: Học bán giám sát 8
2.3.2 Bước 2: Bước biến đổi ngẫu nhiên 11
2.4 Xây dựng SentiWordNet cho tiếng Ấn Độ 12
2.4.1 Xây dựng tập từ điển nguồn 13
2.4.2 Tiếp cận theo hướng từ điển song ngữ 14
2.4.3 Tiếp cận trên cơ sở WordNet 14
2.4.4 Tiếp cận dựa trên tập văn bản 14
2.4.5 Đánh giá từ điển 15
2.5 Các nghiên cứu liên quan 15
2.6 Tóm tắt chương 2 15
Trang 7Mở rộng VietSentiWordNet và áp dụng vào bài toán khai phá quan Chương 3:
điểm 16
3.1 Mở rộng VietSentiWordNet sử dụng học máy bán giám sát SVMlight 16
3.1.1 Phương pháp 16
3.1.2 Bước 1: Khởi tạo và mở rộng tập nguồn 18
3.1.3 Bước 2: Đào tạo bộ phân lớp 20
3.1.4 Bước 3: phân lớp tập từ quan điểm và tính trọng số 21
3.2 Sử dụng VietSentiWordNet cho bài toán khai phá quan điểm khách hàng dựa trên đánh giá sản phẩm 23
3.2.1 Bước 1: Thu thập, tiền xử lý dữ liệu 25
3.2.2 Bước 2: Trích xuất từ quan điểm 25
3.2.3 Bước 3: Xác định hướng quan điểm của khác hàng trên từng sản phẩm dựa vào từ điển VietSentiWordNet 26
3.2.4 Bước 4: Tổng hợp kết quả 27
3.3 Tóm tắt chương 3 27
Thực nghiệm 28
Chương 4: 4.1 Môi trường và công cụ sử dụng cho thực nghiệm 28
4.1.1 Cấu hình máy thực nghiệm 28
4.2 Thực nghiệm xây dựng VietSentiWordNet 28
4.2.1 Công cụ và phần mềm sử dụng: 28
4.2.2 Xây dựng tập đào tạo và phân lớp 28
4.2.3 Kết quả 29
4.3 Thực nghiệm áp dụng VietSentiWordNet trong bài toán khai phá quan điểm 29 4.3.1 Thu thập dữ liệu và tiền xử lý 29
4.3.2 Tách từ và gán nhãn từ loại 30
4.3.3 Tính trọng số câu và đoạn 30
Kết luận 33
Tài liệu tham khảo 35
Trang 8Danh sách các bảng
Ví dụ về thành phần trong SentiWordNet 3.0 7 Bảng 1
Top 10 synset tích cực và 10 synset tiêu cực trong SentiWordNet 3.0 12 Bảng 2
SentiWordNet tiếng Anh và danh sách các từ chủ quan 14 Bảng 3
Phân loại chủ đề sử dụng Bengali SentiWordNet 15 Bảng 4
Kết quả phân lớp của bộ từ HM 17 Bảng 5
Một số phần mềm sử dụng 28 Bảng 6
Tổng số dữ liệu thực nghiệm 30 Bảng 8
Kết quả bước tính trọng số bộ từ quan điểm 31 Bảng 9
Kết quả trọng số tích cực/tiêu cực của từng sản phẩm 31 Bảng 10
Độ chính xác bước đánh giá tổng hợp 32 Bảng 11
Độ chính xác bước tổng hợp với VietSentiWordNet ban đầu 33 Bảng 12
Trang 9Danh sách các hình vẽ
Hình 1 Cấu trúc trong file SentiWordNet 3.0.txt 7
Hình 2 Mô hình phương pháp xây dựng SentiWordNet 3.0 8
Hình 3 Mô hình bước 1: học bán giám sát 8
Hình 4 Mô hình xây dựng tập từ điển nguồn 13
Hình 5 Mô hình phương pháp mở rộng VietSentiWordNet 18
Hình 6 Mô hình bước 1: khởi tạo và mở rộng tập mồi 19
Hình 7 Mô hình bước 2: đào tạo các bộ phân lớp 20
Hình 8 Mô hình bước 3: phân lớp tập từ quan điểm 22
Hình 9 Mô hình đề xuất khai phá quan điểm khách hàng 24
Hình 10 Biểu diễn trực quan kết quả tổng hợp với từng sản phẩm 32
Trang 10Mở đầu
Khai phá quan điểm là một lĩnh vực mới, nhận được quan tâm nhiều trong vài năm gần đây [10,11,12,15] Đây là một lĩnh vực đánh dấu một bước phát triển trong khai phá văn bản (text mining): công việc khai phá văn bản sẽ không chỉ dừng lại ở mặt phân tích câu chữ của văn bản, giúp máy tính thực sự “hiểu” nội dung văn bản nói
gì, mà còn cho biết người viết có quan điểm như thế nào (ví dụ: khen/chê) trong văn bản đó
Phân lớp quan điểm là bài toán quan trọng trong khai phá quan điểm, với các ứng dụng trên một số lĩnh vực như: trên các hệ thống tư vấn người dùng, hệ thống quảng cáo, hệ thống chăm sóc khách hàng thông minh, và trong các hệ thống tìm kiếm thông tin
SentiWordNet là kho ngữ liệu từ vựng được phát triển cho nhiệm vụ khai phá quan điểm, trong đó mỗi từ đều có trọng số Pos(s)/Neg(s) thể hiện xu hướng quan điểm của từ SentiWordNet là một kho ngữ liệu không thể thiếu cho bất kỳ công việc nào trong bài toán khai phá quan điểm.[6,7,8,9]
Khóa luận tốt nghiệp Mở rộng VietSentiWordNet dựa trên mô hình học bán
giám sát SVM light và áp dụng vào bài toán khai phá quan điểm nhằm khảo sát, phân
tích các phương pháp xây dựng SentiWordNet, đồng thời trình bày một mô hình mở rộng VietSentiWordNet và áp dụng kho ngữ liệu mới vào bài toán khai phá quan điểm khách hàng trên các đánh giá sản phẩm
Khóa luận gồm những nội dung chính cơ bản sau:
Chương 1: Khái quát về khai phá quan điểm trình bày các khái niệm cơ bản
trong lĩnh vực khai phá quan điểm Đồng thời, chương này cũng nêu lên một số nét cơ bản của bài toán khai phá quan điểm khách hàng dựa trên đánh giá sản phẩm
Chương 2: Các phương pháp xây dựng SentiWordNet tập trung trình bày
phương pháp xây dựng kho ngữ liệu SentiWordNet 3.0 Bên cạnh đó, chương này cũng trình bày phương pháp xây dựng SentiWordNet cho tiếng Ấn Độ Mỗi phương pháp đều yêu cầu nguồn tài nguyên khác nhau Đây là cơ sở để đưa ra mô hình phù hợp với việc mở rộng VietSentiWordNet trong chương 3
Chương 3: Mở rộng VietSentiWordNet và áp dụng vào bài toán khai phá quan điểm trình bày mô hình mở rộng VietSentiWordNet dựa trên phương pháp học
bán giám sát SVM Đồng thời, chương 3 đưa ra giải pháp áp dụng VietSentiWordNet
vào bài toán khai phá quan điểm khách hàng dựa trên đánh giá sản phẩm
Trang 11Chương 4: Thực nghiệm trình bày các kết quả trong quá trình thực nghiệm các
thành phần của mô hình do khóa luận đề xuất Từ các kết quả đạt được, tiến hành đánh giá hiệu quả của mô hình
Phần kết luận tóm lược các kết quả đạt được, và nêu rõ đóng góp của khóa
luận, đồng thời, một số nghiên cứu trong thời gian sắp tới cũng được định hướng
Trang 12Khái quát về khai phá quan điểm Chương 1:
Để hiểu và giải quyết được bài toán khai phá quan điểm, đòi hỏi chúng ta cần phải nắm vững được các khái niệm của bài toán khai phá quan điểm Vì thế, trong chương này, khóa luận giới thiệu các vấn đề liên quan tới khai phá quan điểm
1.1 Giới thiệu
Thông tin văn bản có thể được chia ra thành hai loại chính: sự kiện và quan điểm Sự kiện là những thể hiện khách quan về những đối tượng, sự kiện hay các thuộc
tính của chúng trong thế giới thực BingLiu và cộng sự, 2010 [12] quan niệm rằng
quan điểm là những thể hiện chủ quan, miêu tả tình cảm, ý kiến hay những cảm xúc
của con người hướng đến thực thể, sự kiện hay thuộc tính
Khai phá quan điểm hiện đang là một lĩnh vực mới, gần đây thu hút sự quan tâm không chỉ của các nhà khoa học mà còn của các nhà sản xuất, các công ty [10,11,12,15], và còn rất nhiều vấn đề trong khai phá quan điểm chưa được giải quyết Khai phá quan điểm có vai trò quan trọng, bởi khi cần quyết định một vấn đề gì chúng
ta thường đặt ra câu hỏi “người khác nghĩ về vấn đề đó như thế nào?” Chẳng hạn, khi muốn mua một chiếc laptop AsusVX248, chúng ta sẽ muốn hỏi bạn bè và người thân:
“Máy Asus có tốt không? Bảo hành trong bao lâu? Pin dùng có lâu không? v.v” Như
vậy, các quan điểm về sản phẩm giúp người dùng lựa chọn một cách đúng đắn, đồng thời, khai phá quan điểm cũng giúp các công ty, tổ chức biết được ý kiến, quan điểm
về vấn đề mà họ đang quan tâm
Khai phá quan điểm áp dụng nhiều kết quả của lĩnh vực xử lý ngôn ngữ tự nhiên, học máy và khai phá văn bản [12]
Khai phá quan điểm bắt đầu bằng việc xác định các từ thế hiện quan điểm như tốt (good) – xấu (bad), tuyệt vời (great) , từ đó xác định xu hướng quan điểm của một từ, một cụm từ, một câu, một đoạn văn bản hoặc một đặc trưng
1.2 Các khái niệm dùng trong khai phá quan điểm:
Đối tượng (object): Một đối tượng o là một thực thể (người, sản phẩm, sự
kiện, chủ đề….) được đánh giá[12]
Đặc trưng (feature): mỗi đối tượng có một tập các thành phần (components) hoặc thuộc tính (attributes) Mỗi thành phần lại bao gồm một tập các thành phần con và các thuộc tính con Các thành phần hoặc thuộc tính này được
gọi là đặc trưng [12]
o Ví dụ: Đối tượng o là điện thoại Nokia N72 Đối tượng này có một tập các thành phần: pin, màn hình, bàn phím… và một tập các thuộc tính: chất lượng âm thanh, kích cỡ… Thành phần “pin” có tập các
Trang 13thuộc tính: chất lượng pin, kích cỡ pin,…Thuộc tính “chất lượng âm thanh” có tập các thuộc tính con: chất lượng âm trầm, công suất loa
Phân loại đặc trưng: đặc trưng được phân làm 2 loại là đặc trưng hiện và đặc trưng ẩn Mỗi một đánh giá r với r = {s 1 , s 2 , …, s m } trong đó s i là câu thứ i trong đánh giá r Nếu đặc trưng f xuất hiện trong r, thì f là đặc trưng hiện Ngược lại, f không xuất hiện trong r thì f là đặc trưng ẩn [12]
o Ví dụ: s =”Pin điện thoại này dùng được lâu” thì f = ”pin” là đặc
trưng hiện
s=”Máy điện thoại này to quá” thì f =”kích cỡ” là đặc trưng ẩn
Đoạn đánh giá về một đặc trưng: là một tập các câu liên tiếp trong r diễn tả
quan điểm về đặc trưng f, bao gồm ít nhất một câu [12]
Từ quan điểm: Quan điểm trên một đặc trưng f bất kỳ là thái độ của khách hàng đối với đặc trưng f [12] Thái độ đó có thể theo hướng tích cực, tiêu
cực hay trung lập Từ thể hiện được quan điểm của khách hàng được gọi là
từ quan điểm
Ví dụ:
s = “Nội dung phim hay”
Quan điểm của người dùng trên đặc trưng nội dung là một quan điểm hướng tích cực, với từ quan điểm “hay”
Người đánh giá (opinion holder): Là người hay tổ chức cụ thể đưa ra lời đánh giá Với các đánh giá về sản phẩm trên diễn đàn, blogs: người đánh giá chính là các tác giả của đánh giá hay bài viết [12]
o Ví dụ: “Ông A rất hài lòng về sản phẩm điện thoại LG Optimus mới ra.”
Người đánh giá: ông A
1.3 Các bài toán trong khai phá quan điểm
Khai phá quan điểm hay còn gọi là phân lớp nhận định có ba bài toán điển hình nhất đó là:
Phân lớp quan điểm
Khai phá và tổng hợp quan điểm dựa trên đặc trưng
Khai phá quan hệ (so sánh)
Bing Liu [11] đã trình bày chi tiết về ba bài toán nói trên Ở đây, chúng tôi xin đề cập tới bài toán thứ nhất là bài toán phân lớp quan điểm: coi khai phá quan điểm như
là phân lớp văn bản, coi mỗi quan điểm là một văn bản và quá trình phân lớp quan điểm chính là phân lớp văn bản Các quan điểm sẽ được phân vào 2 lớp tích cực (tốt)
và tiêu cực (xấu), không quan tâm tới lớp trung lập (neutral) bởi những nhận định mang tính trung lập không ảnh hưởng tới kết quả tổng hợp quan điểm Ở bài toán, người ta này không quan tâm tới mức đặc trưng, tức là không quan tâm tới người đánh
Trang 14giá thích hay không thích đặc trưng cụ thể nào Mục tiêu chủ đạo là nhanh chóng xác định quan điểm đánh giá về một đối tượng là tốt hay xấu
1.4 Bài toán khai phá quan điểm khách hàng từ các đánh giá tiếng Việt trên miền sản phẩm “điện thoại di động”
Tại Việt Nam hiện nay, một số trang web bán hàng trực tuyến cho phép người dùng đưa ra những nhận xét về các sản phẩm như: http://thegioididong.com, …; nhiều diễn đàn thảo luận về các dòng sản phẩm điện thoại như http://tinhte.vn, http://sohoa.vnexpress.net,… Bên cạnh đó, một số trang Web tiến hành thống kê số lượng ý kiến người dùng như: http://mobile-phone.vn.diplotop.com
Bài toán khai phá quan điểm khách hàng từ các đánh giá sản phẩm đòi hỏi phải phân tích được trọng số tích cực – tiêu cực của từng quan điểm, do đó, cần phải sử dụng kho ngữ liệu quan điểm có trọng số Nhưng do hiện nay kho ngữ liệu VietSentiWordNet là chưa hoàn chỉnh, việc xây dựng kho ngữ liệu VietSentiWordNet
là cấp thiết không chỉ cho bài toán khai phá quan điểm mà còn cho các bài toán khác đòi hỏi kho ngữ liệu tiếng Việt
1.5 Tóm tắt chương 1
Bài toán khai phá quan điểm đang có được nhiều sự quan tâm của các nhà khoa học Các khai niệm tổng quan về bài toán khai phá quan điểm, các vấn đề trong bài toán khai phá quan điểm đã được giới thiệu ở chương này Kho ngữ liệu SentiWordNet trợ giúp rất lớn cho quá trình khai phá quan điểm
Chương tiếp theo sẽ trình bày về kho ngữ liệu SentiWordNet và các phương pháp xây dựng SentiWordNet
Trang 15Các phương pháp xây dựng Chương 2:
SentiWordNet
2.1 Giới thiệu về kho ngữ liệu WordNet
Bài toán khai phá quan điểm sử dụng nhiều kết quả của xử lý ngôn ngữ tự
nhiên, trong đó, một kho ngữ liệu chuẩn là cần thiết WordNet là một kho ngữ liệu
tiếng Anh, các từ tiếng Anh được nhóm thành các bộ từ đồng nghĩa được gọi là các
synset, cung cấp các định nghĩa chung và ngắn gọn, đồng thời, ghi lại giá trị quan hệ
ngữ nghĩa học giữa các bộ đồng nghĩa WordNet được Cognitive Science Laboratory
of Princeton University dưới sự chỉ đạo của Giáo sư George A.Miller tạo ra và duy trì Được phát triển từ năm 1985, đến nay phiên bản mới nhất là 3.0 chứa 155,287 từ được
tổ chức thành 117,659 synsets, kích cỡ khoảng 12MB Dữ liệu và bộ công cụ
WordNet có thể tải và sử dụng miễn phí tại trang WordNet tiếng Anh [17]
Theo Virach Sornlertlamvanich, 2010 [16], vào thời điểm 05/12/2010, VietWordNet chứa 4,960 từ, 12,270 nghĩa (synset) và 15,872 cặp từ - nghĩa, ước tính hoàn thành 10.44% [17]
2.2 Giới thiệu về kho ngữ liệu Sentiwordnet
SentiWordNet là một cơ sở dữ liệu từ vựng được phát triển bởi Andrea Esuli và cộng sự, 2006 [8] dựa trên WordNet, nhằm hỗ trợ khai phá quan điểm
2.2.1 Các khái niệm sử dụng trong SentiWordNet
Synset: là một bản ghi, cấu tạo bởi 6 cột, các cột phân cách bởi dấu <tab>:
o POS: từ loại của từ
o ID: mã đại diện cho synset
o PosScore: trọng số tích cực của từ
o NegScore: trọng số tiêu cực của từ
o SynsetTerms: là những từ nhận định trong synset
SynsetTerms:là những từ nhận định trong synset Một synset có thế chứa
nhiều từ, và các từ này là từ đồng nghĩa với nhau Một từ có thể có nhiều ngữ cảnh khác nhau và trọng số Pos(s)/Neg(s) sẽ khác, do đó các từ này sẽ được gán kèm theo số hiệu để phân biệt các từ
o Ví dụ: từ high#3 có trọng số Pos(s)/Neg(s) là 0.375/0.125 Term hope#1 có trọng số Pos(s)/Neg(s) là 0.125/0
Gloss: là cột giải nghĩa và ngữ cảnh sử dụng của từ
Ví dụ:
Trang 16Hình 1 Cấu trúc trong file SentiWordNet 3.0.txt
a 00004723 0 0 half-length#2 abridged to half its original length
Phiên bản đầu tiên SentiWordNet 1.0 được xây dựng từ WordNet 2.0, mỗi synset được gán trọng số Obj(s) – độ khách quan, Pos(s) – độ tích cực , Neg(s) – độ tiêu cực của từ được chứa trong synset đó Các nghĩa khác nhau của cùng một từ có thể có thuộc tính liên quan quan điểm (opinion-related) khác nhau [6]
Ví dụ: trong SentiWordNet 1.0, synset [estimable (J,3)] tương ứng với nghĩa “có thể
đã tính toán hoặc ước lượng” cho tính từ estimable , có điểm Obj(s) là 1.0, Pos(s)=Neg(s)=0, trong khi synset [estimable (J,1)] tương ứng với nghĩa “xứng đáng được tôn trọng hoặc khen thưởng nhiều” thì có Pos(s)=0.75, Neg(s)=0 và Obj(s)
Trang 172.3 Phương pháp xây dựng SentiWordNet 3.0
Stefano Baccianella và cộng sự, 2010 [6] đưa ra phiên bản SentiWordNet 3.0 cho tiếng Anh, xây dựng trên cơ sở phiên bản WordNet 3.0 Các tác giả xây dựng SentiWordNet 3.0 qua 2 bước: (1) học bán giám sát và (2) bước biến đổi ngẫu nhiên
Hình 2 Mô hình phương pháp xây dựng SentiWordNet 3.0
2.3.1 Bước 1: Học bán giám sát
Bước học bán giám sát này đồng nhất với quá trình đã được sử dụng xây dựng SentiWordNet 1.0 [8] trong đó bước này được chia thành 4 bước nhỏ: (1) mở rộng tập mồi (seed set), (2) đào tạo bộ phân lớp, (3) phân lớp synset và (4) phân lớp tổng hợp
Hình 3 Mô hình bước 1: học bán giám sát
Bước 1.1: 2 tập mồi nhỏ (một tập chứa các từ tích cực và một tập chứa các từ tiêu cực ) được tự động mở rộng bằng việc duyệt các mối quan hệ nhị phân trong WordNet theo quy tắc sau:
Học bán giám sát
Mở rộng tập mồi
Đào tạo
bộ phân lớp
Phân lớp tổng hợp
Phân lớp synset
Bước biến đổi ngẫu nhiên
Tập mồi tích cực Tập mồi tiêu cực
Đào tạo bộ phân lớp
Phân lớp WordNet
Phân lớp tổng hợp
Mở rộng 2 tập mồi dựa trên các mối quan hệ nhị phân
Trang 181 Thêm vào (tương tự với ) tất cả các synset có kết nối tới (tương tự với ) dựa vào mối quan hệ tương tự: ví dụ quan
hệ “also-see”, hay nói cách khác, 2 synset có cùng hướng quan hệ
2 Thêm vào (tương tự với ) tất cả các synset có kết nối tới (tương tự với ) dựa vào mối quan hệ đối lập: ví dụ quan hệ
“direct antonymy”, hay nói cách khác, 2 synset là đối lập trong phân cực
PN
Việc mở rộng này được biểu diễn bằng một bán kính K, sử dụng bán kính k có nghĩa là thêm tất cả các synset có khoảng cách k tới các thành viên
của tập mồi ban đầu trong đồ thị quan hệ nhị phân
Bước 1.2: 2 tập mồi cuối cùng của bước trên, và cùng với tập được sử dụng để đào tạo các bộ phân lớp được định nghĩa là bộ các synset không thuộc về cả và Các mô đun đào tạo và phân lớp sử dụng nghĩa của từ để đại diện cho từ đó Điều này có nghĩa là: kết quả của phân lớp liên quan trực tiếp tới một nghĩa hơn là một từ, ta có thể gọi đây là
bộ phân lớp nghĩa Trong SentiWordNet 3.0, bộ phân lớp nghĩa còn được gọi là mô hình “túi các synset” Các synset được gán một vector đặc trưng
thông qua phương thức đánh chỉ mục văn bản (tf*idf)
Bước 1.3: tất cả các synset của WordNet (bao gồm cả các synset được thêm
vào ở bước 2) thông qua các bộ phân lớp chia thành các lớp Pos, Neg, Obj
Bước 1.4: Các tác giả sử dụng tổng cộng 8 phương pháp phân lớp synset
độc lập tự động 1(s,p),…, 8(s,p) sau đó tổng hợp điểm của 8 phân lớp này Mỗi một phân lớp synset trả về kết quả là một số nhị phân hoặc số thực nằm trong khoảng [0,1], do đó, ta có một bộ phân lớp tổng hợp : S x P
cho một đối tượng synset s và một lớp trả về trọng số Các tác giả sử dụng 2 phương thức tổng hợp khác nhau: phương thức tổng hợp A và phương thức tổng hợp B để tính toán giá trị cho kết quả cuối cùng Phương thức A yêu cầu i trả về giá trị nhị phân, trong khi, phương thức B yêu cầu giá trị thực Từ đó, các tác giả sử dụng vector
đặc trưng theo 2 cách được 2 phương thức học khác nhau (gọi là phương thức học A và phương thức học B)
o Phương thức học A, i sử dụng các phương pháp học máy bán giám sát khởi tạo bằng bộ phân lớp nhị phân Với mỗi phương pháp phân
lớp i, tồn tại 2 bộ phân lớp và , trong đó, phải phân tách
được các từ thuộc về mục tích cực và các từ thuộc về phần còn lại không tích cực, còn phải phân tách được các từ thuộc về mục tiêu cực và các từ thuộc về phần còn lại không tiêu cực Trong pha đào
tạo, các từ trong được dùng để đào tạo các ví dụ thuộc
Trang 19mục tiêu cực, và các từ trong được dùng để đào tạo các ví
dụ thuộc mục tích cực
o Các từ được phân lớp tích cực bởi bộ phân lớp đồng thời được
phân lớp không tiêu cực bởi bộ phân lớp sẽ được coi là tích cực Các từ được phân lớp không tích cực bởi bộ phân lớp đồng thời
được phân lớp tiêu cực bởi bộ phân lớp sẽ được coi là tiêu cực Các từ còn lại, được phân lớp thuộc về không tích cực và (không tiêu cực ) hoặc thuộc về tích cực và tiêu cực được coi như là khách quan
o Phương thức học B, i được thu bằng các phương pháp học bán giám sát khởi tạo bởi các phân lớp n-ary, kết của được trả về là một số thực cho lớp Trong pha đào tạo, các từ trong được
sử dụng trực tiếp làm ví dụ cho các lớp tích cực, tiêu cực, khách quan
tương ứng
o Khác nhau cơ bản của phương thức học A và B là phương thức B phải xem xét đánh dấu theo mục, hoặc khái niệm, trong khi, phương thức A các đối tượng được xem xét như là trong một mục chưa đánh
dấu
o Để đạt độ chính xác cao hơn so với việc chỉ dùng một bộ phân lớp đơn lẻ , một tập các bộ phân lớp được tạo ra, mỗi bộ chứa là kết quả của một kết hợp 2 thành phần: bán kính và phương pháp học máy Các tác giả thiết lập tập các bộ phân lớp của họ gồm 8 phần tử, kết
quả của việc chọn bán kính k từ tập {0,2,4,6} và 2 phương pháp học
máy (Rocchio và SVMlight) Kết quả của bước này là, trọng số Pos ( cũng như Neg, Obj) của mỗi synset được tạo bởi việc lấy trung bình giá trị của 8 bộ phân lớp trong tập thông qua 2 phương pháp tổng hợp
A hoặc B:
Phương pháp tổng hợp A, Esuli và cộng sự sử dụng các bộ phân lớp được sinh bởi phương pháp học A, kết quả trả về là
ba giá trị nhị phân, i gán cho s chính xác một trong ba class
của P ( ví dụ i(s,p) = 1 với một lớp và i(s,p) = 0 cho
2 lớp còn lại) Kết của cuối của (s,p) được định nghĩa bằng trung bình cộng của tất cả các phân lớp riêng biệt mà được gán nhãn tương ứng cho s
∑⟦ ⟧
Trong đó ⟦ ⟧ là hàm đặc thù với (ví dụ hàm trả về 1 nếu đúng và 0 nếu ngược lại) Nếu tất cả i đều được gán cùng một
Trang 20thuộc P, cho từng synset s Giá trị trọng số cuối cùng của
được nhận bằng cách thêm giá trị thực tương ứng của sau đó lấy trung bình:
∑
∑ ∑
Phương pháp tổng hợp B cho kết quả mịn hơn phương pháp
A, vì phương pháp A chỉ cho kết quả trong tập còn phương pháp B cho kết quả là giá trị thực trong đoạn [0,1]
2.3.2 Bước 2: Bước biến đổi ngẫu nhiên
Bước biến đổi ngẫu nhiên này coi WordNet 3.0 như là một đồ thị, và chạy lặp
đi lặp lại “bước biến đổi ngẫu nhiên”, trong đó, các giá trị Pos(s) ,Neg(s) và Obj(s) ban đầu được xác định ở bước trước, và có thể thay đổi ở mỗi bước lặp Quá trình này dừng khi mà kết quả có sự hội tụ
Đồ thị được sử dụng ở bước này là một đồ thị được xác định hoàn toàn trên
WordNet bằng quan hệ nhị phân dạng từ dùng để định nghĩa – từ đang được định nghĩa, nói một cách khác, tồn tại một liên hệ trực tiếp từ synset s1 tới synset s2 khi và chỉ khi s1 (từ dùng để định nghĩa) xuất hiện ở trong nghĩa của s2 (từ đang được định nghĩa) Hiểu một cách trực quan là, nếu hầu hết các từ được sử dụng để định nghĩa một từ được đưa ra mang giá trị tích cực (hoặc tiêu cực), thì có một xác suất cao xác định được từ đang được định nghĩa là tích cực (tiêu cực) Tính tích cực và tiêu cực được xem như là đường đi thông qua đồ thị từ từ dùng để định nghĩa tới từ được định nghĩa Tuy nhiên điều này cần được kiểm tra bởi vì ở WordNet, từ được định nghĩa là một synset trong khi từ dùng để định nghĩa là từ chưa có định nghĩa rõ ràng, vì nghĩa của synset là một tập hợp các từ chưa rõ nghĩa Trong khi đó, bước này yêu cầu nghĩa phải bao gồm các từ nằm trong SynsetTerm của WordNet Do đó, SentiWordNet 3.0
sử dụng các nghĩa được nhóm bằng tay từ Princeton WordNet Gloss Corpus [6]
Trang 21Top 10 synset tích cực và 10 synset tiêu cực trong SentiWordNet
3 divine#a#6 elysian#a#2 inspired#a#1 bad#a#10 unfit#a#3 unsound#a#5
10 gainly#a#1
hapless#a#1 miserable#a#2 misfortunate#a#1 pathetic#a#1 piteous#a#1
pitiable#a#2 pitiful#a#3 poor#a#1 wretched#a#5
2.4 Xây dựng SentiWordNet cho tiếng Ấn Độ
Kho ngữ liệu SentiWordNet cho tiếng Ấn Độ đƣợc Amitava Das và cộng sự,
2010 [7] xây dựng và phát triển dựa trên WordNet, tập dữ liệu tiếng Ấn Độ theo mô hình xây dựng cho SentiWordNet tiếng Anh Vào năm 2010, SentiWordNet cho tiếng
Ấn Độ đƣợc phát triển cho ba bộ chữ: Bengali, Hindi và Telugu
Trang 222.4.1 Xây dựng tập từ điển nguồn
Tập từ điển nguồn được xây dựng từ SentiWordNet và danh sác các từ chủ quan thông qua việc ghép 2 từ điển này và loại bỏ trùng lặp, được một từ điển quan điểm chứa 14,135 token Một bộ nhỏ gồm 8,427 từ quan điểm được trích từ kho ngữ liệu SentiWordNet tiếng Anh thông qua việc lựa chọn theo độ mạnh của trọng số Pos/Negs trên ngưỡng 0.4, bởi vì các từ có độ mạnh trọng số dưới 0.4 là nhập nhằng
và có thể bị mất mức độ chủ quan khi dịch sang ngôn ngữ đích
Hình 4 Mô hình xây dựng tập từ điển nguồn Bước tiếp theo, các từ mà có nhãn trong danh sách các từ chủ quan là chưa định nghĩa và được gán nhãn “anypos” sẽ được kiểm tra Nếu có thể xác định lại bằng
SentiWordNet thì sẽ được cập nhật vào từ điển, nếu không sẽ được loại bỏ nhằm tránh nhập nhằng của bước phát hiện những từ chủ quan
Một vài từ trong danh sách các từ chủ quan có nhiều biến thể, ví dụ: memories
Nguyên nhân phát sinh từ quá trình dịch thuật, một vài từ không chứa tính chủ quan
sau khi dịch (ví dụ: memory không chứa tính chủ quan) Một danh sách các từ này
được tạo, đồng thời, các cụm độc lập của các từ này chia sẻ cùng một mẫu gốc chung Nếu như từ gốc là tồn tại trong SentiWordNet, thì các từ sau khi dịch sẽ mang tính chủ quan và được thêm vào danh sách mới, ngược lại sẽ bị loại bỏ
SentiWordNet Ghép Danh sách từ chủ quan
Từ điển sau khi ghép, loại bỏ trùng lặp và từ có
trọng số <0.4
Anypos Không xác định
được bằng
SentiWordNet
Xác định được bằng SentiWordNet
Loại bỏ Cập nhật vào từ điển