HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYEN HUYEN TRANG
Chuyên ngành: Hệ thống thông tinMã số: 60.48.01.04
TOM TAT LUẬN VĂN THẠC SĨ
HÀ NỘI - 2015
Trang 2Luận văn được hoàn thành tại:
HỌC VIEN CÔNG NGHỆ BƯU CHÍNH VIÊN THONG
Người hướng dẫn khoa học: PGS TS Trần Đình Quế
văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễnthông
Vào lúc: gid
Có thê tìm hiéu luận van tại:
- Thu viện cua Học viện Công nghệ Bưu chính
Viễn Thông
Trang 3MỞ ĐẦU
Ngày nay với sự bùng nỗ của Internet và đặc biệt là các
trang mạng xã hội đã khiến việc bày tỏ quan điểm cá nhân
một cách công khai trở nên rất dễ dàng Bài toán phân loại
ý kiến khách hàng về sản phẩm hay dịch vụ dựa trên khai
phá dữ liệu đã nhận được sự quan tâm của nhiều nhà nghiên cứu gần đây cả trong nước là quốc tế Nhiều kỹ thuật đã được đề xuất, trong đó SVM đã được áp dụng
trên nhiều công trình nghiên cứu, ứng dụng và thu được
những kết quả khả quan
Ở Việt Nam, mạng xã hội Facebook đang ngày càng được
sử dụng rộng rãi, Theo báo cáo cua We are social, tính
đến tháng 1 năm 2014, Việt Nam có khoảng 20 triệu
người dùng Facebbook Ý kiến của người dùng Facebook ngày càng có sức ảnh hưởng lớn đến cộng đồng Vì vậy dé tài thực hiện khảo sát ý kiến đánh giá điểm du lịch Hạ
Long từ trang mạng xã hội Facebook nhằm thu thập những ý kiến khách quan về dịch vụ du lịch tại đây.
Với những lý do trên, dé tài “Khảo sát ý kiến đánh giá địa điểm du lịch Ha Long từ các mạng xã hột” tiễn hành
tìm hiểu các kỹ thuật phân loại ý kiến, thu thập dữ liệu từ
Facebook va sử dung kỹ thuật SVm dé thực nghiệm.
Trang 4Luận văn gôm 3 chương chính với nội dung như sau:
Chương 1: Tổng quan về khai phá dữ liệu và phân loại
văn bản Trình bày khái quát về khai phá dữ liệu; tập
trung vào khái niệm và các phương pháp tiếp cận cho bài
toán phân loại ý kiến; đưa ra một số đặc trưng cơ bản của
tiêng Việt và so sánh với tiêng Anh.
Chương 2: Ứng dụng phương pháp SVM vào phân loại
ý kiến Trình bày một số kỹ thuật máy học sử dụng trong
phân loại ý kiến; so sánh các kỹ thuật và tập trung vào
nghiên cứu phương pháp máy vectơ hỗ trợ (SupportVector Machine).
Chương 3: Thử nghiệm và đánh giá Xây dựng các pha
tiến hành phân lớp ý kiến; thử nghiệm nhiều lần với kích
thước tập huấn luyện và tập kiểm thử khác nhau; đánh giá
kết quả nhận được.
Trang 5Chương 1: TỎNG QUAN VỀ KHAI PHÁ DỮ
LIEU VÀ BÀI TOÁN PHAN LOẠI VAN BẢN
1.1 Khai phá dữ liệu và khai phá dữ liệu văn bản
1.1.1 Khai phá dit liệu (Data Mining)
Khai pha dữ liệu còn được gọi là khám pha tri thứctrong cơ sở dữ liệu (KDD) Nó thường được định nghĩa là
quá trình khám phá các mẫu (pattern) hữu ích hay tri thức
(knowledge) tiềm An từ các nguồn dữ liệu lớn, như cơ sở
dữ liệu, các văn bản, hình ảnh, Web, vv Các thông tin phảicó giá tri, hữu ích và dé hiêu.
Quá trình khai phá dữ liệu bao gồm 3 bước: Tiền xử
lý, khai phá đữ liệu và hậu xử lý.
1.1.2 Khai phá dit liệu van ban (Text Mining)
Khai pha dữ liệu van ban hay phát hiện tri thức từ
các cơ sở dit liệu văn bản (textual databases) đề cập đến tiễn trình tự động trích lọc các mẫu thông tin hay tri thức
mà người dùng quan tâm hoặc có giá tri từ các tài liệu văn
bản phi cấu trúc Quá trình này có thể được coi là quá trình mở rộng của khai phá dữ liệu truyền thống Quy
trình khai phá dữ liệu dạng văn bản cũng tuân theo quy
trình chung của khai phá dữ liệu.
Trang 61.2 Khai phá quan điểm và bài toán phân loại ý kiến
1.2.1 Khai phá quan điểm
Theo Dave và cộng sự, khai phá quan điểm là quá
trình tự động xử lý các kết quả tìm kiếm về một đối tượng
cụ thé, đưa ra danh sách các thuộc tính của đôi tượng (chất lượng, thuộc tính ) và các ý kiến tổng hợp liên quan (tốt,
đẹp, xấu ) tương ứng với đối tượng đó.
1.2.2 Bài toán phân loại ý kién
Phân loại ý kiến chính là việc phân tích tâm lý hoặc
khai phá quan điểm đề cập đến ứng dụng xử lý ngôn ngữ tự nhiên và phân tích văn bản nhằm mục đích xác định thái độ và quan điểm của một người đối với một chủ đề
nhất định (là Tích cực hay Tiêu cực).
Trang 71.2.3 Các hướng tiếp cận cho bài toán phân loại ý kiến
1.2.3.1 Phân loại dựa trên các cụm từ chỉ cảm xúc
1.2.3.2 Phân loại sử dụng các phương pháp phân loại văn
1.2.3.3 Phân loại sử dụng hàm tính điểm
1.3 Văn bản tiếng Việt và thuật toán tách từ Maximum
1.3.1 Một số đặc trưng của văn bản tiếng Việt
Tiếng Việt thuộc ngôn ngữ đơn lập (isolate), tức là
mỗi một tiếng (âm tiết) được phát âm tách rời nhau và
được thê hiện băng một chữ việt, có một sô đặc diém:
e Đặc điểm ngữ âm: Don vị nhỏ nhất tong tiếng Việt là “tiếng”, các âm tiếng Việt đều mang | trong 6
thanh điệu (ngang, sắc, huyền, hỏi, ngã, nặng).
e Đặc điểm từ vựng: Mỗi tiéng, nói chung, là một yêu tố có nghĩa “từ” trong tiếng Việt không chỉ giới hạn bởi các tiếng, ranh giới từ không xác định mặc
nhiên bằng khoảng trăng.
e Đặc điển ngữ pháp: Từ của tiéng Việt không biến
đối hình thái Khi kết hợp từ thành các kết cấu như
Trang 8ngữ, câu, phương thức ngữ pháp chủ yếu trong tiếng Việt là trật tự từ và hư từ Ngoài ra tiếng Việt
còn sử dụng phương thức ngữ điệu.
1.2.3 So sánh tiếng Việt với tiếng Anh
Tiếng Việt và tiếng Anh có nhiều điểm khác biệt:
1.3.3 Thuật toán tách từ Maximum Matching
Phương pháp so khớp cực đại (Maximum matching)
có ý tưởng chính là duyệt một câu từ trái sang phải và
chọn từ có nhiều âm tiết nhất trong từ điển và cứ thực hiện lặp lại như vậy cho đến hết câu.
1.4 Kết luận chương
Trang 9Chương 2: ỨNG DỤNG PHƯƠNG PHÁP SVM
VÀO PHAN LOẠI Ý KIÊN
2.1 Một số phương pháp phân loại văn bản
2.1.1 Máy học vectơ hỗ trợ (Support Vector Machine)
SVM là một phương pháp học có giám sat dựa trên
lý thuyết học thống kê Mục đích của SVM là sử dụng thuật toán học nhằm xây dựng một siêu phang làm cực tiêu hóa độ phân lớp sai của một đối tượng dit liệu mới.
2.1.2 K láng giéng gan nhất (K-Nearest Neighbor)
Phương châm của phương pháp này là “làm như lang
giềng làm” Tức là, khi cần phân loại một văn bản mới, thuật toán sẽ tính khoảng cách của tất cả các văn bản trong
tập huấn luyện đến văn bản này để tìm ra k văn bản gần nhất, sau đó đó dùng các khoảng cách này đánh trọng số cho tất cả chủ đề văn bản mới sẽ cùng chủ đề với chủ đề
có trọng số cao nhất.
2.1.3 Bayes đơn giản (Naive Bayes)
Naive Bayes là một phương pháp phân loại có giám
sát, sử dụng tri thức các xác suất đã qua huấn luyện Ý
tưởng của phương pháp là sử dụng xác suất có điều kiện
Trang 10giữa từ va chu đê dé dự đoán xác suât chủ dé của một văn
bản cân phân loại.
2.1.4 Mạng noron (Neural Network)
Neural Network được nghiên cứu mạnh trong hướng
trí tuệ nhân tạo NNet học cách ánh xạ phi tuyến tính những yếu tố đầu vào như từ, hay mô hình vectơ của một
văn bản vào một chủ đề cụ thể.
2.2 So sánh, đánh giá các phương pháp
Các thuật toán phân loại trên đều có điểm chung là yêu cau văn bản phải được biéu diễn dưới dang vector đặc
trưng Sau khi học hỏi từ các công trình nghiên cứu sẵn có
của các nhà nghiên cứu trong và ngoải nước trên cả tiếng
Anh và tiếng Việt, nhận thấy SVM là kỹ thuật có nhiều ưu điểm và nhận được nhiều quan tâm nghiên cứu nên đã tập trung và lựa chọn SVM làm hướng tiếp cận cho bài toán
phân loại ý kiến của mình.
2.3 Ứng dụng phương pháp SVM vào phân loại ý kiến
2.3.1 Biểu diễn các comment dưới dang vector đặc trưng
Trong khai phá văn bản môi tài liệu được biêu diễn
dưới dạng vector, gọi là vector đặc trưng Luận văn biêu
Trang 11diễn mỗi comment dưới dạng vector đặc trưng, trong đó,
mỗi thành phan của vector là các từ đặc trưng có trọng số
được tính băng công thức TFxIDE:
wi = TF, * IDF; = TF, * (log + 1) (2.2)DF;
2.3.2 Thuật toán SVM
Thuật toán SVM cơ bản được thiết kế cho bài toán
phân lớp nhị phần
Cho một tập dữ liệu huấn luyện D gồm n điểm: D =
{(x, yi) |i= 1, , n} với x; € RTM và y; € {-1, 1} Trong đó
giá tri cua y; xác định lớp ma điểm x; thuộc về Một siêu phang phân tách dữ liệu huấn luyện thành hai lớp phân
biệt như sau:
fx)=w.x+b=0 (2.3)Việc phân loại nhãn cho mot điêm dữ liệu mới chi làviệc kiêm tra hàm dâu:
h(x) = s¡ign(w x + b) (2.7)
Trang 122.3.3 SVM với bài toán phân loại ý kién
Mỗi ý kiến được biểu diễn dưới dạng vectơ đặc
trưng mà các thành phân của vectơ có trọng sô được tính
băng công thức (2.2) Tiến hành 2 lần phân lớp: Lần 1: Phân lớp cho lớp Tích cực
Lần 2: Phân lớp cho lớp Tiêu cực
Các ý kiến không thuộc một trong hai lớp hoặc thuộc cả hai lớp sẽ mang nhãn Không xác định
Luận văn sử dụng hàm nhân RBEF dé hỗ trợ phân lớp 2.5 Kết luận chương
Chương 3: THU NGHIỆM VÀ ĐÁNH GIÁ
3.1 Các pha xử lý của ứng dụng
Bài toán phân loại ý kiến đánh giá địa điểm du lịch vịnh Hạ Long mà luận văn đề cập được phát biéu như sau:
e Input: Tập dữ liệu đánh giá về địa điểm du lịch vịnh Hạ Long dưới dạng văn bản, được lay tu mang
xã hội Facebook
e Output: Xác định nhãn lớp cho từng ý kiến là Tích
cực, Tiêu cực hay Không xác định
Trang 13Hình 3.1: Các pha tiến hành phân lớp ý kiến
3.2 Chỉ tiết các pha thực hiện
3.2.1 Thu thập dữ liệu
Bước 1: Hỏi ý kiến du khách Bước 2: Lay di liệu về máy.
Trang 143.2.2 Tiên xứ lý dữ liệu
Tiên xử lý dữ liệu bao gôm các phân: Loại bỏ các ký
tự đặc biệt và các chữ sô, tách từ, loại bỏ từ dừng, từ
không có ý nghĩa trong phân loại.
Bước 1: Thay thể các icon bằng các cụm từ có ý
nghĩa tưong đương.Bước 2: Tách từ.
Bước 3: Xử lý một số trường hợp từ gây ngược
Bước 4: Loại bỏ từ dừng và kỹ tự đặc biỆt.
3.2.3 Biểu diễn TFxIDF
Ứng dụng tiến hành tính trong số từ khóa TFxIDE.
Môi ý kiên được biêu dién trên một dòng và dưới dạng
vectơ như sau:
<lable> <index1>:<valuel> <index2>:<value2> <indexn>:<value n>
Các vecto nay được lưu vào file txt dé làm đầu vào
cho quá trình huấn luyện va phân loại.
Trang 153.2.4 Huấn luyện bộ phân lop SVM
Sau hai lần phân lớp, một ý kiến Ci sẽ được xác định
e Các trường hợp còn lại, tức là C; không thuộc lớpnào trong hai lớp hoặc C; thuộc cả 2 lớp => nhãnKhông xác định
3.3 Cài dat thử nghiệm
3.3.1 Cấu hình máy và công cụ sử dụng
e Cấu hình máy: hệ điều hành Microsoft Windows 7;
Bộ xử lý: Intel(R) Core(TM) 15 — CPU M2450 @2.50GHz, RAM 4.0GB.
e Luận văn xây dựng ứng dụng bằng ngôn ngữ C#
e Gói Facebook SDK cho NET (facebooksdk.net),
được cung cấp trực tiếp qua nuget.org
e Thư viện JiBSVM.
Trang 163.3.2 Phương pháp đánh giá hiệu quả phân lớp
Hiệu quả (hay độ chính xác) của hệ thống phân lớp,
được đánh giá bởi các công thức sau:
e FP (False Positive): Tỷ lệ tích cực sai.
e FN (False Negative) : Ty lệ tiêu cực sai. 3.3.3 Két qua thuc nghiém
Tiến hành thực nghiệm với 1213 ý kiến đánh giá về địa điểm du lịch vịnh Hạ Long Chạy thử nghiệm 7 lần với kích thước tập huấn luyện và tập kiêm thử có ty lệ lần
lượt là: 90% - 10%, 80% - 20%, 65% - 35%, 50% - 50%,
35% - 65%, 20% - 80%, 10% - 90% Kết quả nhận được
như sau:
Trang 183.3.4 Đánh giá kết quả thực nghiệm
Sau 7 lần thực nghiệm với kích thước tập huấn luyện
và tập kiểm thử khác nhau, luận văn nhận được kết quả tốt
nhất là 76.88% tại lần thử nghiệm thứ 2, tập huấn luyện chiếm 80% dữ liệu và tập kiểm thử chiếm 20% dữ liệu.
Trường hợp thấp nhất là lần thử nghiệm thứ 7, trong đó
tập huấn luyện chỉ chiếm 10% tổng dữ liệu Độ phủ trung bình tốt nhất đạt được là 79.14% ở lần thử nghiệm thứ 4.
Độ chính xác trung bình cao nhất là 77.41%, nhận được ở
lần thử nghiệm thứ 2.
So sánh giữa ba nhãn lớp, tỷ lệ phân loại đúng cholớp Tích cực khá cao: >84% Ty lệ phân loại đúng cho lớp
Tiêu cực chấp nhận được: >73% Ty lệ phân loại ý kiến
Không xác định thấp: <64%.
Nhìn chung, tập dữ liệu càng lớn thì hiệu quả đạt được càng cao Khi lượng dữ liệu trong tập huấn luyện
giảm, độ chính xác và hiệu suất F-score cũng giảm ro tỆt.
Điều này có thé thấy rõ khi so sánh kết quả phân loại của
4 lần thực nghiệm đầu (F-score trung bình đạt >75%) và 3 lần thử nghiệm cuối (F-score trung bình đạt <70%).
3.4 Kết luận chương
Trang 19KET LUẬN
Luận văn tiến hành khảo sát và phân tích các kỹ thuật thường dùng cho phân loại ý kiến như SVM, k-NN, NB,
NNet Trên cở sở đó, luận văn lựa chọn SVM để thực
nghiệm với tập dữ liệu đầu vào là các ý kiến đánh giá về
phong cảnh và dịch vụ du lịch của vịnh Hạ Long thu thậptừ mạng xã hội Facebook Luận văn đã đạt được những
kêt quả sau:
e Khảo sát các kỹ thuật phân loại văn bản nói chung
và phân loại ý kiến nói riêng So sánh một số
phương pháp học máy thường dùng trong phân loại
ý kiến như SVM, k-NN, NB và NNet, luận văn nhận thấy SVM là kỹ thuật có nhiều ưu điểm và nhận được nhiều quan tâm nghiên cứu nên đã tập
trung vào kỹ thuật này.
e Thu thập các ý kiến đánh giá từ Facebook bằng
cách đăng các câu hỏi khảo sát trên các diễn đàn và lay dit liệu về thông qua GraphAPI của mang xã hội này Kết quả thu được bộ đữ liệu gồm 1213 ý
kiến đánh giá.
e Phát biểu bài toán thực tế, đưa ra các pha xử lý bài toán và thực hiện theo từng pha rất cụ thé.
Trang 20e Tu xây dựng modul tách từ theo thuật toán So khớp
cực đại.
e Chia tập dữ liệu thành hai tập huấn luyện và kiểm
thử với tỷ lệ khác nhau Tiến hành thực nghiệm 7
lần Độ chính xác phân loại tốt nhất thu được là
76.88% trong trường hợp tập huấn luyện chiếm
S0% dữ liệu, còn lại là tập thử nghiệm.
Một số vấn đề luận văn chưa giải quyết được:
e Xử lý các trường hợp phức tạp của ngôn ngữ.
e Việc phân loại ý kiến theo lớp Tích cực, Tiêu cực
và Không xác định một cách chung chung ở mức
tài liệu, chưa cụ thé được từng khía cạnh.
Trong tương lai, hướng phát triển của luận văn là:
e Mở rộng tập từ huấn luyện cho các phân lớp.
e Xu lý những trường hợp phức tạp của ngôn ngữ,
huấn luyện thêm nhiều tình huống khó.
e Tiếp tục nghiên cứu các phương pháp máy học
khác trong khai phá quan điểm để ứng dụng hiệu
quả hơn.