LUẬN VĂN: TỰ ĐỘNG ĐÁNH GIÁ QUAN ĐIỂM NGƯỜI DÙNG doc - Pdf 15

ĐẠI HỌC CÔNG NGHỆ
ĐẠI HỌC QUỐC GIA HÀ NỘI
WX

Kiều Thanh Bình TỰ ĐỘNG ĐÁNH GIÁ
QUAN ĐIỂM NGƯỜI DÙNG KHÓA LUẬN TỐT NGHIỆP HỆ CHÍNH QUY

Ngành: Công Nghệ Thông Tin

Hà Nội – 2010
ĐẠI HỌC CÔNG NGHỆ
ĐẠI HỌC QUỐC GIA HÀ NỘI
WX
Kiều Thanh Bình

TỰ ĐỘNG ĐÁNH GIÁ

Ra đời như một thiết yếu, hệ thống đ
ánh giá quan điểm người dùng đã được nghiên
cứu mạnh mẽ trong mấy năm gần đây và cũng đưa ra được nhiều kết quả đáng mong
đợi. Trong đó có phương pháp đưa ra được kết quả khá khả quan như phương pháp sử
dụng kết hợp phân lớp dựa trên luật, học giám sát và học máy.
Tự động đánh giá ý kiến người dùng Kiều Thanh Bình ii Lời cảm ơn
Trước tiên, em xin gửi lời cảm ơn sâu sắc nhất đến thầy Phạm Bảo Sơn, người
đã không quản vất vả hướng dẫn em trong suốt thời gian làm khóa luận tốt nghiệp vừa
qua. Em cũng chân thành cảm ơn mọi người ở phòng HMI lab đặc biệt là anh Nguyễn
Bá Đạt đã luôn chỉ bảo mỗi khi em có những vấn đề vướng mắc.
Em xin bày tỏ lời cảm ơn sâu sắ
c đến các thầy cô giáo trong Trường Đại Học
Công Nghệ đã tận tình dạy dỗ em suốt bốn năm học qua.
Con xin cảm ơn bố, mẹ và gia đình đã luôn bên con, cho con động lực để làm
việc tốt hơn. Cảm ơn tất cả bạn bè đã luôn sát cánh cùng tôi.

Hà Nội, ngày 20 tháng 5 năm 2010
Kiều Thanh Bình Tự động đánh giá ý kiến người dùng Kiều Thanh Bình iii


3.1 Tổng quan về GATE 15
3.1.1 Mô hình kiến trúc của GATE 16
3.1.2 Những khái niệm cơ bản trong GATE 18
3.2 Xây dựng plugin trên GATE 18
3.3 Các thành phần quan trọng của GATE 21
3.3.1 Bộ từ điển (Gazetteers) 21
3.3.2 Bộ luật JAPE 22
3.4 Các công cụ quản lý chất lượng 27
3.4.1 Công cụ đánh giá độ tương đồng khi gán nhãn hai văn bản (Annotation
Diff) 27
3.4.2 Công cụ đánh giá chất lượng của hệ thống (Corpus Benchmark tool) 28
Chương 4 Hệ thống đánh giá quan điểm ng
ười dùng 30
4.1 Giới thiệu hệ thống 30
4.2 Thu thập dữ liệu và gán nhãn 31
4.2.1 Thu thập dữ liệu 32
4.2.2 Gán nhãn dữ liệu 33
4.3 Xây dựng hệ thống đánh giá quan điểm 34
4.3.1 Mô tả tổng quan hệ thống 35
4.3.2 Tiền xử lý 37
4.3.3 Xây dựng bộ từ điển 38
4.3.4 Xây dựng bộ luật 40
Chương 5 Kết quả thực nghiệm và phân tích lỗi 46
5.1 Tiến hành thực nghiệm 46
5.2 Kết quả thực nghiệm 47
Tự động đánh giá ý kiến người dùng Kiều Thanh Bình v

Hình 6 - Giao diện của Corpus Benchmark tool 28
Hình 7 - Minh họa giao diện hệ thống 31
Hình 8 - Những reviews do người dùng đánh giá ở trang tinvadung.vn 33
Hình 9 - Gán nhãn dữ liệu 34
Hình 10 - Mô tả chi tiết hệ thống đánh giá quan điểm người dùng trên GATE 36
Hình 11 - GATE sau khi POS Tag và Lookup 40
Hình 12 - Lỗi do POS Tag ảnh hưởng đến nhận dạng từ 55
Hình 13 - Lỗi do POS tag ảnh hưởng đến tách câu 56
Hình 14 - Lỗi do viết luật ảnh hưởng đến nhận dạng từ 57
Hình 15 – Lỗi do tách câu 58

Tự động đánh giá ý kiến người dùng Kiều Thanh Bình vii Danh sách bảng
Bảng 1 - Kết quả nhận dạng từ đánh giá trên tập huấn luyện 47
Bảng 2 - Kết quả nhận dạng từ đánh giá trên tập kiểm tra 47
Bảng 3 - Kết quả nhận dạng câu đánh giá trên tập huấn luyện 48
Bảng 4 - Kết quả nhận dạng câu đánh giá trên tập kiểm tra 48
Bảng 5 - Kết quả đánh giá Acer Aspire 3935 trên tập huấn luyện 50
Bảng 6 - Kết quả đánh giá Apple Macbook Air MB543ZPA trên tập huấn luyện 50
Bảng 7 - Kết quả đánh giá Acer Aspire AS4736 trên tập huấn luyện 51
Bảng 8 - Kết quả đánh giá Feature trên tập huấn luyện 51
Bảng 9 - Kết quả đánh giá Dell Inspiron 1210 trên tập kiểm tra 51
Bảng 10 - Kết quả đánh giá Compaq Presario CQ40 trên tập kiểm tra 52
Bảng 11 - Kết quả đánh giá HP Pavilion dv3 trên tập kiểm tra 52
Bảng 12 - Kết quả đánh giá Feature trên tập kiểm tra 53

nhất về sản phẩm. Với mỗi sản phẩm sẽ có những điểm tính năng riêng (Features) và
nhiệm vụ của chúng tôi là từ những review, comment, Feedback,… trên nguồn dữ liệu
khổng lồ Web để đánh giá xem tính năng của sản phẩm này được mọi người tiếp đón
thế nào.
Chương 1. Giới thiệu bài toán đánh giá quan điểm Kiều Thanh Bình

2 Hệ thống của chúng tôi sử dụng dữ liệu từ trên trang Web http//tinvadung.vn
làm dữ liệu chuẩn để phát triển và kiểm thử hệ thống. Chúng tôi giải quyết bài toán
dựa trên hướng tiếp cận về luật và phân lớp ở mức câu. Ở đây chúng tôi tạm thời chia
thành 2 loại đánh giá của người dùng là hướng tích cực (positive) và hướng tiêu cực
(negative). Hệ thống của chúng tôi được xây dựng trên nền GATE [3] – là một
framework giúp phát triển các thành phần xử lý ngôn ngữ tự nhiên, và được sử dụng
v
ới dữ liệu về máy tính (laptop & desktop). Trong tương lai chúng tôi sẽ phát triển hệ
thống để đưa ra một thước đo chính xác hơn về những đánh giá và mở rộng thêm với
các lĩnh vực khác.
Phần còn lại của khóa luận được chia thành 5 chương:
• Chương 2: Chúng tôi giới thiệu về những hướng tiếp cận cho bài toán tự động
đánh giá quan điểm người dùng, những công trình nghiên cứu hiện tại và nhữ
ng
thách thức sẽ giải quyết trong tương lai.
• Chương 3: Chúng tôi giới thiệu một cách tổng quan về khung làm việc GATE,
và cách xây dựng một hệ thống tích hợp trong GATE.
• Chương 4: Chúng tôi mô tả chi tiết hệ thống tự động đánh giá quan điểm người

iểm, những mức độ quan điểm khác nhau, sự
phức tạp của câu chữ, từ ngữ trong những văn cảnh khác nhau, việc phân loại quan
điểm trong bài viết phức tạp… Một số phương pháp đã được đề xuất để giải quyết
những vấn đề trên, tuy nhiên trong tương lai sẽ có nhiều nghiên cứu hơn nữa nhằm
giải quyết triệt để những thách thứ
c đó.
2.1 Xu hướng các cuộc nghiên cứu gần đây
Từ cách đây một vài năm, việc đánh giá quan điểm đã trở thành chủ đề nóng
giữa các nhà nghiên cứu xử lý ngôn ngữ tự nhiên và trích chọn thông tin. Nhiều nỗ lực
Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình 4 lớn dành cho việc nghiên cứu ở mảng này, có khá nhiều các bài báo được xuất bản và
những ứng dụng khác nhau có sử dụng hệ thống đánh giá quan điểm được phát triển và
đưa vào trong hoạt động thương mại. Mặc dù các ứng dụng dựa trên hệ thống đánh giá
quan điểm có mục đích, vấn đề trọng tâm, điểm nổi bật khác nhau; tuy nhiên chúng
thường được chia thành 3 phần chính: xác định từ
, cụm từ chỉ quan điểm; xác định xu
hướng quan điểm và phân loại câu hay văn bản chỉ quan điểm. Ba thành phần cơ bản
này cũng là 3 thành phần cơ bản xây dựng trên hệ thống của chúng tôi.
2.1.1 Xác định từ, cụm từ quan điểm
Những từ, cụm từ chỉ quan điểm là những từ ngữ được sử dụng để diễn tả cảm
xúc, ý kiến người viết; những quan điểm chủ quan đó dựa trên những vấn đề mà anh ta
hay cô ta đang tranh luận. Việc rút ra những từ, cụm từ chỉ quan điểm là giai đoạn đầu
tiên trong hệ thống đánh giá quan điểm, vì những từ
, cụm từ này là những chìa khóa
cho công việc nhận biết và phân loại tài liệu sau đó.

phương pháp của họ tập trung vào việc phân loại quan điểm dựa trên những dấu hiệu.
Họ định nghĩa một câu mà chứa một hay nhiều dấu hiệu sản phẩm và từ chỉ quan điểm
được xem là một câu chỉ quan điểm.
Sau
đó với mỗi một câu trong dữ liệu chỉ quan điểm, họ rút ra tất cả những tính
từ được coi là những từ chỉ quan điểm. Kết quả thực nghiệm việc rút ra những câu
đánh giá quan điểm có độ chính xác (precision) khoảng 64.2% và recall là 69.3%.
Họ sử dụng WordNet (Fellbaum, 1998 [10]) để xác định các tính từ được rút ra
mang chiều hướng tích cực (positive) hay tiêu cực (negative). Trong WordNet, các
tính từ được tổ chức thành các cụm từ
lưỡng cực; nửa cụm thứ hai phần đầu là từ trái
nghĩa của cụm thứ nhất. Mỗi nửa cụm là phần đầu của tập từ đồng nghĩa chính, tiếp
theo là tập từ đồng nghĩa kèm theo – nó đại diện cho ngữ nghĩa tương tự như những
tính từ quan trọng. Ngược với cách tiếp cận dựa trên từ điển, họ sử dụ
ng định hướng
quan điểm của những từ đồng nghĩa và từ trái nghĩa để dự đoán định hướng của các
tính từ. Họ bắt đầu với một danh sách khởi đầu gồm 30 tính từ thông dụng được chọn
thủ công (bằng tay). Sau đó sử dụng WordNet để dự đoán định hướng của tất cả các
tính từ trong danh sách từ quan điểm được rút ra b
ằng cách tìm kiếm qua cụm lưỡng
cực để tìm ra liệu các từ đồng nghĩa hay trái nghĩa có trong danh sách khởi đầu hay
không. Một khi định hướng của tính từ được dự đoán, nó sẽ được bổ sung vào danh
sách khởi đầu và có thể được sử dụng để xác định định hướng của các tính từ khác.
Trong phương pháp này, danh sách khởi đầu sẽ dần tăng lên khi sự định hướng của các
tính từ được nh
ận dạng; và khi nó ngừng gia tăng, tức qui mô của danh sách khởi đầu
trùng với qui mô của danh sách từ chỉ quan điểm, thì tất cả định hướng của các tính từ
đã được nhận biết và quá trình này kết thúc.
Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình


điểm cuối cùng của các bài phê bình.
Trong hệ thống của chúng tôi, tính từ và phó từ là hai từ loại rất hay được sử
dụng trong luật để nhận dạng từ quan điểm. Những từ quan điểm thường tập trung chủ
yếu vào hai loại từ này vì vậy càng nhận dạng chính xác được nhiều hai loại t
ừ này hệ
thống càng có độ chính xác cao.
2.1.2.2 Sử dụng các động từ
Các tính từ và phó từ đóng một vai trò quan trọng trong việc phân tích quan
điểm và là các loại từ có lợi thế trong việc nhận biết định hướng và rút ra các từ chỉ
Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình 7 quan điểm trong các nghiên cứu hiện nay. Tuy nhiên, các loại từ khác, ví dụ như động
từ cũng được sử dụng để diễn tả cảm xúc hay ý kiến trong các bài viết.
Nasukawa và Yi (2003) [15] xem xét rằng bên cạnh các tính từ và phó từ, thì
các động từ cũng có thể diễn tả quan điểm trong hệ thống đánh giá quan điểm của họ.
Họ phân loại các động từ có liên quan đến quan điểm thành 2 loại. Loại th
ứ nhất trực
tiếp thể hiện quan điểm tích cực hay tiêu cực, theo lý giải của họ thì “beat” trong “X
beats Y”. Loại thứ hai không thể hiện quan điểm trực tiếp nhưng dẫn đến những quan
điểm , giống như “is” trong “X is good”.
Họ sử dụng POS tagger dựa trên mô hình Markov (HMM) (Manning and
Schutze, 1999 [14]) và phân tích cú pháp nông dựa trên luật (Neff et al., 2003) [16]
cho bước tiền xử lý. Sau đó họ phân tích tính phụ thuộc về mặt cú pháp giữa các cụm
t
ừ và tìm kiếm các cụm từ có một từ chỉ quan điểm mà nó bổ nghĩa hoặc được bổ
nghĩa bởi một thuật ngữ chủ thể.

quan điểm sát nhất về đặc trưng sản phẩm hoặc xu hướng của câu chỉ quan điểm trước
đó được sử dụng để phân loại. Độ chính xác của họ là 84,2%.
Turney (2002) [22] đã sử dụng một thuật toán phi giám sát đơn giản để phân
loại quan điểm trong những l
ĩnh vực khác nhau thành “recommended” hoặc “not
recommended”. Và sau đó rút ra các từ / cụm từ chỉ quan điểm dựa trên phương pháp
tiếp cận của Hatzivassiloglou và McKeown (1997) [11] và nhận biết xu hướng dựa
trên phương pháp của Turney (2001) [21]. Sau đó họ tính toán hướng ngữ nghĩa học
trung bình của các từ và cụm từ được rút ra từ toàn bộ bài phê bình. Nếu xu hướng
bình quân đó là tích cực thì quan điểm được phân loại là “recommended”, trường hợp
ngược lại là “not recommended”. Độ chính xác c
ủa thuật toán này là 74,39%. Bước
cuối cùng giống như phương pháp tiếp cận của Hu và Liu (2004a) [12] ngoại trừ việc
họ phân loại theo toàn bộ tài liệu thay cho từng câu.
Trái lại phương pháp tiếp cận của Turney (2002) [22], Pang (2002) [17] sử
dụng học máy có giám sát để phân loại những nhận xét về phim ảnh. Không cần phải
phân lớp các từ hay cụm từ chỉ quan điểm, họ rút ra những đặc điểm khác nhau của
các quan
điểm và sử dụng thuật toán Naïve Bayes (NB), Maximum Entropy (ME) và
Support Vector Machine (SVM) để phân lớp quan điểm. Phương pháp này đạt độ
chính xác từ 78,7% đến 82,9%.
Hệ thống của chúng tôi với mục đích dựa trên nhận dạng từ quan điểm để phân
loại câu tuy nhiên khác với những câu thông thường. Chúng tôi còn tiến hành tách các
câu ghép phức tạp thành các câu đơn đơn giản phục vụ cho việc đánh giá Feature của
chúng tôi.
Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình 9


Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình 10 2.2.2 Thuật ngữ chỉ quan điểm
Nhiều công trình nghiên cứu như (Nasukawa và Yi, 2003 [15]; Bruce và Wiebe,
1999 [2]) định nghĩa các biểu hiện quan điểm trong thuật ngữ quan điểm của chính họ
dựa trên biểu thị tính đối lập, POS tagging, hình thái tiêu chuẩn và loại chủ đề (chủ thể
hay đối tượng) đối với các từ chỉ quan điểm tương ứng. Tuy nhiên, phương pháp này
kém hấp dẫn, thiếu hiệu quả và có lẽ là không chính xác. Cũng do một thực tế là các
thuậ
t ngữ quan điểm độc lập này không có giá trị công khai, các nhóm phân tích quan
điểm không thể cộng tác với nhau và như vậy thì không thể đưa ra một tài liệu tiêu
chuẩn cho việc sử dụng trong tương lai. Tình hình không được cải thiện mãi cho tới
gần đây khi xuất hiện một số nghiên cứu tập trung giải quyết vấn đề này. Esuli và
Sebastiani (2006) [9] xây dựng một hệ thống thuật ngữ có giá trị thông dụng trong việc
đánh giá quan đ
iểm – SentiWordNet, một WordNet (Fellbaum, 1998) [10] nhấn mạnh
vào xu hướng quan điểm của các từ. Họ liên kết mỗi synset trong WordNet với 3
điểm: Obj(s), Pos(s), và Neg(s) để chỉ ra các thuật ngữ bao hàm tính khách quan, tích
cực, tiêu cực như thế nào trong mỗi synset. Phương pháp của họ xây dựng
SentiWordNet dựa trên việc phân tích số lượng những lời nhận xét được kết nối với
các synset, và dựa trên kết quả về vectơ đại diện cho phân lớp synset bán giám sát.

Cách tiếp cận của họ đã mở rộng khối lượng các công việc hiện tại và cung cấp một
công cụ mới trong phân tích quan điểm; tuy nhiên, những thuật ngữ này chưa được
phát triển. Nhiều đặc điểm của các thuật ngữ trong nhận biết tính chủ quan và xu
hướng quan điểm chưa được bổ sung để giải quyết các vấn đề đang tồn tại trong l

thay đổi lớp cho những từ như vậy.
2.2.4 Cấp độ quan điểm
Như trong Esuli và Sebastiani (2006) [9], một vài nhiệm vụ liên quan đến cấp
độ quan điểm trong hệ thống đánh giá quan điểm. Nhiệm vụ thứ nhất được gọi là SO-
polarity, nhằm xác định ý kiến mang tính khách quan hay chủ quan (Pang và Lee,
2004 [18]; Yu và Hatzivassiloglou, 2003 [26]). Nhiệm vụ thứ hai được gọi là PN-
polarity, nhằm xác định ý kiến là tích cực hay tiêu cực; được diễn tả trong nhiều cách
tiếp cận hiện nay (Hatzivassiloglou và McKeown, 1997 [11]; Hu và Liu, 2004a [12];
Pang, 2002 [17]; Pang và Lee, 2004 [18]; Turney và Littman, 2003 [24]; Turney và
Littman, 2002 [23]). Tuy nhiên việc phân lớp xu hướng quan
điểm chỉ theo positive và
negative cũng nảy sinh một vài vấn đề, mức độ mạnh yếu, tính đối lập cũng cần được
phân tích kỹ lưỡng.
Bổ sung thêm việc phân lớp các từ thành các mức độ xu hướng quan điểm khác
nhau như đã được nhắc đến ở trên, một số từ bổ nghĩa (đặc biệt các phó từ như
“rất”,”một chút”,”hết sức”,”hơi”…) c
ũng có thể được dùng để xác định mức độ xu
hướng quan điểm của câu. Cụm từ “rất hài lòng” và “ hơi hài lòng” sẽ được phân lớp
Chương 2. Hướng tiếp cận cho bài toán đánh giá quan điểm Kiều Thanh Bình 12 thành rất tích cực và kém tích cực là thích hợp nếu “rất” và “hơi” được phân tích và sử
dụng để xác định mức độ đối lập.
Cấp độ quan điểm này làm cho việc xét mức độ đánh giá quan điểm được chính
xác hơn tuy nhiên trong hệ thống của chúng tôi bước đầu chỉ sử dụng 2 loại quan điểm
là positive và negative do vậy việc xét cấp độ quan điểm của chúng tôi chỉ dừng l
ại ở 2


13 pháp này để phân biệt các quan điểm đối với các đặc điểm khác nhau của cùng một
sản phẩm hay cùng một tài liệu.
2.2.6 Quan điểm theo ngữ cảnh
Các nghiên cứu hiện nay nhằm nhận biết xu hướng quan điểm của các từ không
xem xét nhiều đến ngữ cảnh. Một số từ trong các ngữ cảnh khác nhau có thể có POS
tags khác nhau và nghĩa khác nhau. Trong trường hợp này, POS tagging là một công
cụ tốt giúp nhận biết xu hướng quan điểm. Tuy nhiên, cùng các từ trong những ngữ
cảnh khác nhau có thể có cùng POS tag nhưng lại có nghĩa khác nhau và xu hướng
quan điểm khác nhau. Từ “poor” trong “ hiệu suất hệ thống kém (poor)” là mộ
t xu
hướng quan điểm tiêu cực, nhưng trong “ chúng ta nên giúp đỡ người nghèo(poor)” thì
“poor” là mang tính trung lập. Khi gặp phải những tình huống như vậy, ý nghĩa rõ ràng
của từ giúp cho giải quyết vấn đề. Một khi chúng ta biết nghĩa rõ ràng của từ “poor”
trong câu thứ nhất nghĩa là kém chất lượng, trong khi trong câu thứ hai có nghĩa là có
ít tiền, việc nhận biết xu hướng quan điểm đối với từ “poor” đã được giải quyết.
Tr
ường hợp tệ nhất vẫn có thể xảy ra khi cùng các từ trong các ngữ cảnh khác
nhau có cùng POS tag và cùng nghĩa nhưng lại có xu hướng quan điểm khác nhau. Ví
dụ, “old” trong “the man is old” là từ mang tính trung lập, trái lại trong “the technique
is old” thể hiện quan điểm tiêu cực. Trong trường hợp này, không may là cả POS
tagging và việc nhận biết rõ nghĩa của từ cũng không thể giải quyết. Cần nhiều thuật
toán và kĩ thuật hơn nữa được phát triển để có th
ể xử lí vấn đề này.
Trong phương pháp xây dựng hệ thống đánh giá quan điểm dựa trên luật chúng
tôi cũng sử dụng khá nhiều luật để mô tả cho từng ngữ cảnh. Ví dụ như khi nói đến giá
cả thì từ “cao” mang nghĩa negative còn khi nói đến hệ thống từ “cao” lại thể hiện ý
15 Chương 3

Giới thiệu GATE
GATE là framework giúp phát triển và triển khai các thành phần xử lý ngôn
ngữ tự nhiên. GATE giúp các nhà khoa học và phát triển theo 3 hướng:
+) Xác định một kiến trúc, hay một cơ cấu tổ chức cho phần mềm xử lý ngôn
ngữ.
+) Cung cấp một framework, hay một lớp thư viện thi hành kiến trúc và có thể
được dùng để nhúng khả năng xử lý ngôn ngữ vào các ứng dụng khác nhau.
+) Cung cấp một môi trường phát triển xây dựng trên framework tạo ra các
công cụ thuận tiện cho phát triển các thành ph
ần đồ họa.
GATE do nhóm giáo sư Cunningham thuộc trường đại học Sheffield – Anh
phát triển (H. Cunningham – 2002 [3]). Có thể download phiên bản mới nhất (version
5.0) của GATE miễn phí tại địa chỉ: />.
3.1 Tổng quan về GATE
Phần này chúng tôi sẽ trình bày những kiến trúc cơ bản và những khái niệm cơ bản của
GATE. Đây là một hình ảnh về GATE 5.0 [Hình 1]:
Chương 3. Giới thiệu GATE Kiều Thanh Bình 16


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status