1. Trang chủ
  2. » Luận Văn - Báo Cáo

LUẬN VĂN PHÂN LOẠI CẢM XÚC CON NGƯỜI TRONG XÃ HỘI

60 55 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 60
Dung lượng 2,1 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục đích của luận văn “Phân loại cảm xúc người dùng trong mạng xã hội” làtìm hiểu tổng quan về bài toán phân loại cảm xúc người dùng, tập trung và phân tíchcác phương pháp tiếp cận, các

Trang 1

ĐỖ HOÀNG ĐẠT PHÂN LOẠI CẢM XÚC NGƯỜI DÙNG

TRONG MẠNG XÃ HỘI

LUẬN VĂN THẠC SĨ KỸ THUẬT

Trang 2

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

-ĐỖ HOÀNG ĐẠT

PHÂN LOẠI CẢM XÚC NGƯỜI DÙNG

TRONG MẠNG XÃ HỘICHUYÊN NGÀNH : HỆ THỐNG THÔNG TIN

Trang 3

LUẬN VĂN THẠC SĨ KỸ THUẬT

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS TRẦN ĐÌNH QUẾ

HÀ NỘI - 2015

Trang 4

LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kì tài liệu nào khác

TÁC GIẢ LUẬN VĂN

ĐỖ HOÀNG ĐẠT

Trang 5

LỜI CẢM ƠN

Được sự đồng ý của Khoa Quốc tế và Sau Đại học của Học Viện Công NghệBưu Chính Viễn Thông và giảng viên hướng dẫn khoa học: PGS.TS Trần Đình Quế,tôi đã thực hiện luận văn: “Phân loại cảm xúc người dùng trong mạng xã hội”

Để hoàn thành luận văn này, tôi xin chân thành cảm ơn các thầy cô giảngviên trong khoa Quốc Tế và Sau Đại Học của Học Viện Công Nghệ Bưu ChínhViễn Thông đã tận tình giảng dạy, hướng dẫn tôi trong suốt quá trình học tập vànghiên cứu ở Học Viện

Xin chân thành cảm ơn thầy giáo Trần Đình Quế, người đã trực tiếp hướng dẫn nghiên cứu khoa học cho tôi Trong quá trình thực hiện luận văn, thầy đã chỉ bảo và truyền đạt những kiến thức khoa học quý báu, đồng thời cũng đưa những góp ý thiết thực giúp tôi hoàn thành luận văn này

HỌC VIÊN

ĐỖ HOÀNG ĐẠT

Trang 6

MỤC LỤC

LỜI CAM ĐOAN 1

LỜI CẢM ƠN 2

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT 5

DANH SÁCH BẢNG 6

DANH SÁCH HÌNH VẼ 7

MỞ ĐẦU 7

CHƯƠNG 1: TỔNG QUAN VỀ BÀI TỐN PHÂN LOẠI CẢM XÚC NGƯỜI DÙNG 10

1.1 Bài tốn phân loại cảm xúc người dùng trong mạng xã hội 10

1.1.1 Lý do phân loại cảm xúc người dùng 10

1.1.2 Giới thiệu bài tốn và một số nghiên cứu liên quan 10

1.1.3 Mơ hình xử lý dữ liệu cho bài tốn phân loại cảm xúc 12

1.1.4 Những thách thức trong bài tốn phân loại cảm xúc 13

1.2 Hướng tiếp cận giải quyết bài tồn phân loại cảm xúc dựa vào các kỹ thuật học máy 14

1.2.1 Phân loại dựa trên Nạve Bayes 15

1.2.2 Phân loại dựa trên máy vec-tơ hỗ trợ (Support Vector Machine) 17

1.3 Kết luận chương 19

CHƯƠNG 2: MƠ HÌNH BÀI TỐN VÀ CÁC BƯỚC TRONG PHÂN LOẠI CẢM XÚC NGƯỜI DÙNG 20

2.1 Mơ hình tổng quát bài tốn 20

2.2 Pha thu thập dữ liệu 22

2.3 Pha tiền xử lý dữ liệu 24

2.4 Pha trích chọn đặc trưng và vec-tơ hĩa văn bản 25

2.4.1 N-grams 25

2.4.2 Mơ hình khơng gian vec-tơ (Vector Space Model) 29

2.5 Phân loại sử dụng SVM & Nạve Bayes với Weka 38

2.5.1 Giới thiệu về file arff 38

2.5.2 Sử dụng Weka để phân loại SVM và Nạve bayes 39

2.6 Kết luận chương 41

Trang 7

CHƯƠNG 3: THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ 42

3.1 Thơng tin dữ liệu và mơi trường thực nghiệm 42

3.2 Phát biểu bài tốn thực nghiệm 43

3.3 Kết quả thử nghiệm 44

3.3.1 Bài tốn 1: So sánh mơ hình Unigram và VSM trong bộ phân loại Support Vector Machine 45

3.3.2 Bài tốn 2: So sánh mơ hình Unigram và VSM trong bộ phân loại Nạve Bayes 46

3.3.3 Bài tốn 3: So sánh tính hiệu quả của 2 bộ phân loại SVM và Nạve Bayes với phương pháp xây dựng vec-tơ đặc trưng Unigram 48

3.3.4 Bài tốn 4: So sánh tính hiệu quả của 2 bộ phân loại SVM và Nạve Bayes với phương pháp xây dựng vec-tơ đặc trưng Vector Space Model 50

3.4 Thảo luận, đánh giá, so sánh 51

3.5 Kết luận chương 52

KẾT LUẬN 53

DANH MỤC CÁC TÀI LIỆU THAM KHẢO 56

PHỤ LỤC 58

Trang 8

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT

NLP Natural Language Processing Xử lý ngôn ngữ tự nhiênHCI Human Computer Interaction Tương tác người – máy

TF-IDF Term Frequency–Inverse Document

Frequency Tần suất từ - tuần suất ngược trong văn bản

Trang 9

DANH SÁCH BẢNG

Hình 1.1: Mơ hình xử lý dữ liệu cho bài tốn phân loại cảm xúc 12

Hình 1.2: Mơ tả về siêu phẳng trong SVM 17

Hình 1.3: Mơ tả về đường biên trong SVM 18

Hình 1.4: Mơ tả về đường biên trong SVM 19

Hình 2.1 Mơ hình tổng quát của bài tốn 20

Hình 2.2: Dữ liệu thơ trên trang mp3.zing.vn 23

Hình 2.3: Dữ liệu sau khi crawl về lưu trữ vào cơ sở dữ liệu 23

Hình 2.4 Túi từ vựng được tạo bởi mơ hình n-grams 28

Hình 2.5 Nhĩm 3 vec-tơ khảo sát với mơ hình n-grams 29

Hình 2.6: Minh họa của Christian S Perone 30

Hình 2.7 Kết quả tính tốn TF, IDF với mơ hình VSM 37

Hình 2.8 Kết quả trích chọn đặc trưng với mơ hình VSM 37

Hình 2.9 Nhĩm 3 vec-tơ khảo sát với mơ hình VSM 38

Hình 2.10: Mẫu file arff chuẩn 39

Hình 2.11: Các bước sử dụng Weka để phân loại dữ liệu 40

Hình 2.12: Kết quả đánh giá mơ hình bài tốn 41

Hình 3.1: Biểu đồ so sánh mơ hình unigram và VSM trong SVM với k-folds=5 45

Hình 3.2: Biểu đồ so sánh mơ hình unigram và VSM trong SVM với k-folds=10 46

Hình 3.4: Biểu đồ so sánh mơ hình Unigram và VSM trong Nạve Bayes với k-folds=5 47

Hình 3.5: Biểu đồ so sánh mơ hình Unigram và VSM trong Nạve Bayes với k-folds=10.47 Hình 3.6: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với Unigram với k-folds=5 49

Hình 3.7: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với Unigram với k-folds=10 49

Hình 3.8: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với VSM với k-folds=5 & k-folds=10 50

Trang 10

DANH SÁCH HÌNH VẼ

Hình 1.1: Mơ hình xử lý dữ liệu cho bài tốn phân loại cảm xúc 12

Hình 1.2: Mơ tả về siêu phẳng trong SVM 17

Hình 1.3: Mơ tả về đường biên trong SVM 18

Hình 1.4: Mơ tả về đường biên trong SVM 19

Hình 2.1 Mơ hình tổng quát của bài tốn 20

Hình 2.2: Dữ liệu thơ trên trang mp3.zing.vn 23

Hình 2.3: Dữ liệu sau khi crawl về lưu trữ vào cơ sở dữ liệu 23

Hình 2.4 Túi từ vựng được tạo bởi mơ hình n-grams 28

Hình 2.5 Nhĩm 3 vec-tơ khảo sát với mơ hình n-grams 29

Hình 2.6: Minh họa của Christian S Perone 30

Hình 2.7 Kết quả tính tốn TF, IDF với mơ hình VSM 37

Hình 2.8 Kết quả trích chọn đặc trưng với mơ hình VSM 37

Hình 2.9 Nhĩm 3 vec-tơ khảo sát với mơ hình VSM 38

Hình 2.10: Mẫu file arff chuẩn 39

Hình 2.11: Các bước sử dụng Weka để phân loại dữ liệu 40

Hình 2.12: Kết quả đánh giá mơ hình bài tốn 41

Hình 3.1: Biểu đồ so sánh mơ hình unigram và VSM trong SVM với k-folds=5 45

Hình 3.2: Biểu đồ so sánh mơ hình unigram và VSM trong SVM với k-folds=10 46

Hình 3.4: Biểu đồ so sánh mơ hình Unigram và VSM trong Nạve Bayes với k-folds=5 47

Hình 3.5: Biểu đồ so sánh mơ hình Unigram và VSM trong Nạve Bayes với k-folds=10.47 Hình 3.6: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với Unigram với k-folds=5 49

Hình 3.7: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với Unigram với k-folds=10 49

Hình 3.8: Kết quả so sánh hai bộ phân lớp SVM và Nạve Bayes với VSM với k-folds=5 & k-folds=10 50

Trang 11

MỞ ĐẦU

Ngày nay, với sự gia tăng về số lượng và nội dung các trang thông tin điện tửnhư mp3.zing.vn, keeng.vn và các mạng xã hội như Facebook, Twitter,… Internetkhông chỉ còn là nơi cung cấp thông tin ở dạng sự kiện mà còn là nơi người dùngbày tỏ cảm xúc, trao đổi cảm nhận, kinh nghiệm về các vấn đề đời sống hoặc về cácvấn đề mà chính người dùng đó đang đọc Có rất nhiều các nghiên cứu trong việckhai phá nội dung văn bản để tìm ra những điều mới mẻ phục vụ kinh doanh Chẳnghạn như nhu cầu tổng hợp những phản hồi hay bình luận của người dùng trênInternet để đưa ra kết luận một sản phẩm có tốt hay không? Phản ứng của kháchhàng đối với một sự kiện nào đó như thế nào?…

Đối với lĩnh vực khai phá dữ liệu truyền thống, thay vì tập trung vào lịch sửngười dùng như lịch sử mua bán, thời gian truy cập…, lĩnh vực khai phá cảm xúcngười dùng lại tập trung vào việc phân tích ý nghĩa của các bình luận trên các trangthông tin hay mạng xã hội Do đó, có thể hiểu bài toán phân loại cảm xúc ngườidùng là sự kết hợp của lĩnh vực Khai phá dữ liệu và Xử lý ngôn ngữ tự nhiên Tínhđến hiện nay, việc xử lý bài toán phân loại cảm xúc người dùng có nhiều hướng tiếpcận khác nhau và nhiều mức xử lý khác nhau, tuy nhiên các tài liệu liên quan đếnviệc xử lý đa phần là áp dụng cho tiếng Anh Việc phân loại cảm xúc người dùngcho Tiếng việt còn nhiều hạn chế

Mục đích của luận văn “Phân loại cảm xúc người dùng trong mạng xã hội” làtìm hiểu tổng quan về bài toán phân loại cảm xúc người dùng, tập trung và phân tíchcác phương pháp tiếp cận, các phương thức hoạt động và xử lý dữ liệu chung củabài toán này Đánh giá những thành phần và những yếu tố quan trọng trong việckhai phá ngữ nghĩa Tìm hiểu về các thuật toán học máy, tập trung vào phương thức

và cách trích chọn đặc trưng Đặc biệt với hai phương pháp phân loại dựa trênSupport Vectors Machine và Naive Bayes Đánh giá, so sánh hai phương pháp nàyvới các phương pháp trích chọn đặc trưng khác nhau

Đối tượng nghiên cứu của luận văn là tập trung khai phá phân loại cảm xúccủa người dùng khi đang nghe nhạc dựa trên các bình luận vào bài hát củamp3.zing.vn Dữ liệu thu thập trên ba miền nhạc trẻ, nhạc cách mạng và tổng hợp

Trang 12

Luận văn tập trung vào cách trích chọn đặc trưng n-grams, mơ hình khơng gian

vec-tơ (Vector Space Model) và xử lý dữ liệu của các thuật tốn học máy, đi sâu hơn vàonghiên cứu thuật tốn SVM & Nạve Bayes Luận văn sẽ thực hiện phân loại cảm

xúc dựa vào tính chất của cảm xúc là: cảm xúc tích cực và cảm xúc tiêu cực.

Cụ thể những nội dung này sẽ được bố cục theo từng chương như sau:

Chương 1 Tổng quan về bài tốn phân loại cảm xúc: Nội dung chương

này sẽ trình bày về lý do và cơ sở lý thuyết cho việc phân loại cảm xúc Các hướngtiếp cận, các hướng nghiên cứu trước đĩ của một số tác giả, đồng thời cũng giớithiệu mơ hình xử lý tổng quát và các khĩ khăn phức tạp khi giải quyết bài tốn.Phần cuối của chương 1 luận văn sẽ giới thiệu về các thuật tốn học máy

Chương 2 Mơ hình bài tốn và các bước trong phân loại cảm xúc người dùng: Nội dung chương này sẽ trình bày mơ hình tiến trình xử lý của ứng dụng mà

luận văn đã xây dựng, bắt đầu bằng tiến trình thu thập dữ liệu, chuẩn hĩa dữ liệu, sửdụng các phương pháp trích chọn đặc trưng khác nhau để vec-tơ hĩa văn bản Bướccuối cùng là sử dụng Weka để áp dụng các bộ phân loại Nạve Bayes và Máy vec-tơ

hỗ trợ (SVM) vào mơ hình bài tốn để đưa ra các kết quả đánh giá sau này

Chương 3 Thử nghiệm và đánh giá kết quả: Sau khi xây dựng ứng dụng,

chương này sẽ tiến hành cài đặt và thử nghiệm hiệu quả của các đặc trưng sử dụng,

từ đĩ chọn ra những đặc trưng cho kết quả cao nhất theo thơng số độ đo Fscore Từ

đĩ rút ra những kết luận quan trọng trong bài tốn phân loại cảm xúc người dùng

Kết luận Phần này sẽ trình bày những kết quả đạt được của luận văn, đồng

thời cũng chỉ ra những hạn chế và hướng phát triển trong tương lai

Trang 13

CHƯƠNG 1: TỔNG QUAN VỀ BÀI TOÁN PHÂN LOẠI CẢM

XÚC NGƯỜI DÙNG

1.1. Bài toán phân loại cảm xúc người dùng trong mạng xã hội

1.1.1. Lý do phân loại cảm xúc người dùng

Ngày nay, với sự phát triển mạnh mẽ của internet… người ta có thể ngồihàng giờ mỗi ngày để đọc báo, nghe nhạc và chia sẻ cảm xúc, viết các ghi chú, bìnhluận… Ẩn trong những bình luận đó là những cảm xúc vui, buồn, yêu, ghét… củangười dùng Những thứ mang hướng “cảm tính” như thế nếu không phải là conngười tự đọc, tự hiểu được thì nó thực sự là một thách thức lớn đối với máy tính

Đứng trên quan điểm thương mại điện tử, thì việc phát hiện ra cảm xúc ngườidùng đúng sẽ giúp ta hiển thị những nội dung quảng cáo tốt hơn Chẳng hạn, pháthiện một người có tâm trạng mệt mỏi, có thể gợi ý một số đồ uống tăng lực, địađiểm giải trí, hay đơn giản là phát một bản nhạc nhẹ nhàng để phục vụ khách hàng

Với những vấn đề đặt ra như thế, luận văn xin chọn đề tài nghiên cứu về

“Phân loại cảm xúc người dùng trong mạng xã hội”.

1.1.2. Giới thiệu bài toán và một số nghiên cứu liên quan

Phân tích tâm lý và khai phá quan điểm người dùng là một trong những vấn

đề được nghiên cứu sôi động nhất trong lĩnh vực xử lý ngôn ngữ tự nhiên (Liu2012) [11]

Cảm xúc được định nghĩa là phản ứng của con người đối với các sự kiện,hiện tượng (kể cả bên trong hoặc bên ngoài cơ thể) cái mà có một ý nghĩa nào đóđối với con người [5]

Cảm xúc, tình cảm là vấn đề được nhiều nhà khoa học quan tâm, nghiên cứu

Vì thế có nhiều quan điểm khác nhau về số lượng các loại cảm xúc Căn cứ vào tính

chất của cảm xúc có thể chia cảm xúc thành 2 loại: cảm xúc tích cực và cảm xúc

tiêu cực Căn cứ vào biểu hiện và nội dung, chúng ta có thể chia cảm xúc thành 6

loại cơ bản: vui, buồn, giận dữ, ngạc nhiên, ghét, sợ hãi Theo nghiên cứu của W.

Gerrod Parrot [1] Từ những cảm xúc cơ bản nhưng dưới sự tác động của các kích

Trang 14

thích khác nhau trong những điều kiện, hồn cảnh khác nhau mà cảm xúc của conngười cũng cĩ lúc đan xen, pha lẫn nhiều cảm xúc khác loại nhưng cùng tồn tạitrong một thời điểm Và chính điều này đã tạo ra hàng loạt các cảm xúc khác.

Trong những năm gần đây, với sự bùng nổ của internet, facebook, twiter…

cĩ rất nhiều những nghiên này cứu tập trung vào miền mạng xã hội Do một số đặcđiểm của của ngơn ngữ trên mạng xã hội, ví dụ hạn chế về số ký tự hoặc cảm xúcphụ thuộc nhiều vào nội dung người dùng đang đọc, nghe nên việc phân loại cảmxúc người dung trong mạng xã hội là một vấn đề đầy thử thách

Các nghiên cứu trước đây chủ yếu tập trưng dựa trên từ vựng – LexiconBased (Hu and Liu 2004) và dựa trên phương pháp học máy - Machine LearningBased Methods (Pang et al 2002) Đối với phương pháp dựa trên từ vựng, kết quảphụ thuộc nhiều vào chất lượng của các từ miêu tả cảm xúc Đối với phương phápdựa trên học máy, ví dụ: SVM, Nạve Bayes, kết quả phụ thuộc nhiều vào cách tríchchọn đặc trưng, mà ở đây sử dụng phổ biến là n-gram hoặc đặc trưng từ vựng(Lexicon-based features) Một số nghiên cứu khác sử dụng mơ hình vec-tơ khơnggian - Vector Space Model (Taner Danisman & Adil Alpkocak 2008) [10] cũng chothấy sự những ưu điểm của mình

Đối với các nghiên cứu Tiếng Việt trong phạm vi khai phá quan điểm nàycịn ít, chẳng hạn như “A featủe-based opinion mining model on product reviews inVietnames” của Vũ Tiến Thành [4] nghiên cứu về khai phá quan điểm nĩi chung,nhưng chuyên về miền cảm xúc người dùng thì hầu như chưa cĩ

Trong phạm vi luận văn, chúng ta sẽ nghiên cứu phân loại cảm xúc dựa trênphương pháp học máy với hai mơ hình xây dựng vec-tơ đặc trưng N-Grams và mơhình khơng gian vec-tơ (Vector Space Model), và hai bộ phân lớp Nạve Bayes vàmáy vec-tơ hỗ trợ (Support Vector Machine)

Trang 15

1.1.3. Mô hình xử lý dữ liệu cho bài toán phân loại cảm xúc

Mặc dù có những hướng tiếp cận để giải quyết bài toán khác nhau, tuy nhiênnhóm nghiên cứu của Pravesh đã đưa ra mô hình chung cho bài toán này trong hộinghị quốc tế về công nghệ tính toán mềm năm 2014 (International Journal on SoftComputing-IJSC) [18]

Hình 1.1: Mô hình xử lý dữ liệu cho bài toán phân loại cảm xúc

Ý nghĩa và nhiệm vụ từng tiến trình cụ thể như sau:

1.1.3.1 Thu thập dữ liệu

Bước này sẽ thu thập các trang web chứa bình luận người dùng Để thực hiệnbước này có thể sử dụng cơ sở dữ liệu của trang web hoặc sử dụng Crawler hoặcAgent để thực hiện tự động Kết quả bước này sẽ thu thập được toàn bộ các địnhdạng dữ liệu của website đối tượng ở dạng HTML hay TXT, dữ liệu này sẽ được điqua xử lý ở các bước sau

1.1.3.2 Chuẩn hóa dữ liệu

Về mặt cấu trúc, dữ liệu thu được ở bước thứ nhất ở định dạng HTML hoặcPHP, do đó bước Chuẩn hóa dữ liệu sẽ lọc lấy những thông tin cần thiết như thờigian, tiêu đề bài viết cùng với bình luận người dùng Ngoài ra, những bình luậnngười dùng thu thập được có thể không thỏa mãn những yêu cầu về ngữ pháp hoặcngữ nghĩa Bước này cũng sẽ loại bỏ những mẫu bình luận không phù hợp hoặc sửađổi (như thêm dấu với Tiếng Việt) để đảm bảo dữ liệu thu thập được phù hợp vớiviệc Gán nhãn hay Trích chọn đặc trưng ở bước sau

1.1.3.3 Gán nhãn dữ liệu

Trang 16

Với cách tiếp cận bằng bộ từ vựng, bước này sẽ sử dụng dữ liệu từ bộ từvựng đó để so khớp hay gán nhãn những từ trong văn bản tương ứng trong từ điển.Với phương pháp tiếp cận bằng thuật toán học máy, dữ liệu sẽ được gán nhãn dựavào đặc trưng ngôn ngữ của văn bản Cụ thể như gán nhãn câu, gán nhãn từ và từloại hay các biểu tượng cảm xúc trong bình luận.

1.1.3.4 Trích chọn đặc trưng

Dựa trên dữ liệu được gán nhãn, đặc trưng để phân lớp là trọng số hướng ngữnghĩa của bình luận với cách sử dụng bộ từ vựng Các thuật toán học máy sẽ sửdụng đặc trưng ngôn ngữ như n-grams sau khi tách từ hay gán nhãn từ loại để huấnluyện và kiểm thử với bộ dữ liệu chuẩn được chọn ra từ các bước trước đó

1.1.3.5 Phân lớp dữ liệu

Dữ liệu đầu vào đã qua các bước tiền xử lý sẽ qua bộ phân lớp sử dụng cácthuật toán học máy Với cách tiếp cận bằng bộ từ vựng, bước này sẽ áp dụng cácluật ngữ pháp hay các quy tắc thay đổi ngữ nghĩa để tính ra trọng số cuối cùng sau

đó quyết định hướng ngữ nghĩa của bình luận

1.1.4. Những thách thức trong bài toán phân loại cảm xúc

 Có nhiều nghiên cứu tiếng việt về khai phá quan điểm, tuy nhiên nhữngnghiên cứu trong chuyên về phân tích cảm xúc người dùng ở Việt Nam cònít

 Do một số đặc điểm của của ngôn ngữ trên mạng xã hội, ví dụ nội dung bìnhluận, tán gẫu trên mạng của người dùng có số ký tự khá ngắn, thường chỉmột đến hai câu Cảm xúc của người dùng phụ thuộc nhiều vào nội dungngười dùng đang đọc, nghe hoặc tâm trạng của họ trước đó Nên việc phânloại cảm xúc người dung trong mạng xã hội là một vấn đề đầy thử thách

 Các ký tự cảm xúc (emoticons) trên mạng xã hội khá đa dạng, có nhiều loại

ký tự được thay đổi liên tục Nắm bắt được những biểu tượng cảm xúc đó thểhiện cho tâm trạng nào cũng là một thử thách khác biệt

 Trong mạng xã hội, do nội dung do người dùng viết ra không phải là văn bảnchính thống nên ngôn ngữ bị viết tắt hoặc biến tướng đi rất nhiều, thậm chí làsai chính tả Chẳng hạn từ “Không” có thể viết tắt thành “ko”, “o”, hoặc “k”.Việc xử lý những ngoại lệ này cũng là một thử thách không nhỏ

Trang 17

 Đối với bài toán phân tích quan điểm nói chung, ý kiến của người dùng là vềmột sự vật hiện tượng được nói đến trong chính nội dung câu đó Ví dụ:

“Chiếc điện thoại này đẹp đấy”, thì quan điểm lúc này là tốt, và đối tượngđược nói tới là “chiếc điện thoại” Nhưng trong miền khai phá cảm xúc, thìđối tượng nói tới không phải là hẳn có sẵn Ví dụ: “Bài hát này rất hay, mỗilần nghe nó tôi lại cảm thấy buồn” thì đối tượng nói tới ở đây là “tôi” chứkhông phải là bài hát Đây là một thách thức lớn dành cho những nghiên cứusâu trong lĩnh vực này

1.2. Hướng tiếp cận giải quyết bài toàn phân loại cảm xúc dựa vào các

kỹ thuật học máy

Mục tiêu của học máy (Machine Learning) là xây dựng một giải thuật đểnhận biết được dữ liệu đầu vào mới từ những dữ liệu đã được huấn luyện trước đó

Có hai giai đoạn chính trong việc phân lớp dữ liệu, cụ thể:

- Giai đoạn huấn luyện: Từ tập dữ liệu huấn luyện đưa ra được mô hình chotừng lớp

- Giai đoạn áp dụng: Phân lớp văn bản mới dựa vào mô hình đã được xâydựng từ giai đoạn huấn luyện

Ở cả hai giai đoạn huấn luyện và áp dụng, dữ liệu đều phải qua hai pha chính

là Tiền xử lý dữ liệu (Data preprocessing) và trích chọn vec-tơ đặc trưng (Featureselection) Cụ thể các bước này như sau:

- Tiền xử lý dữ liệu (Data preprocessing): Ở bước này, dữ liệu sẽ được xử lý

để loại bỏ hay chỉnh sửa cho phù hợp với mục tiêu của bộ phân loại Với việc xử lýngôn ngữ tự nhiên, dữ liệu thu thập được sẽ chứa những thông tin dư thừa ( thẻHTML, PHP…) hoặc gặp những sai sót về ngữ pháp chính tả Tập dữ liệu thô sẽđược loại bỏ những thông tin dư thừa này hay chỉnh sửa lại những sai sót để đảmbảo cho dữ liệu đạt chuẩn yêu cầu về ngôn ngữ Ở pha tiếp theo, dữ liệu sẽ đượcphân tích thành các đơn vị nhỏ về cú pháp như tách câu, tách từ, gán nhãn hoặcnhận diện từ loại Những thông tin về các đơn vị ngôn ngữ này sẽ ảnh hưởng đếnngữ nghĩa của câu hay văn bản và sẽ được sử dụng trong việc lựa chọn đặc trưng đểxây dựng mô hình phân lớp

Trang 18

- Lựa chọn đặc trưng (Feature selection): Ở bước này, các thành phần ngơnngữ sẽ được lựa chọn hợp lý sao cho một văn bản cĩ thể được vec-tơ hĩa Cụ thể,một văn bản sẽ được biểu diễn như sau:

Trong đĩ

v1, v2 vn là tập các vec-tơ đặc trưngSau khi lựa chọn đặc trưng xong, ta cĩ thể áp dụng một trong nhiều bộ phân loại khác nhau ví dụ như Nạve Bayes hoặc Máy vec-tơ hỗ trợ (SVM)

1.2.1. Phân loại dựa trên Nạve Bayes

Nạve Bayes là kỹ thuật phân loại phổ biến trong học máy cĩ giám sát Ýtưởng chính của kỹ thuật này dựa vào xác suất cĩ điều kiện giữa từ hay cụm từ vànhãn phân loại để dự đốn văn bản mới cần phần loại thuộc lớp nào Nạve Bayesđược ứng dụng nhiều trong giải quyết các bài tốn phân loại văn bản [12]; xây dựng

bộ lọc thư rác tự động [13],[14]; hay trong bài tốn khai phá quan điểm [15],[16]bởi tính dễ hiểu, đễ triển khai cũng như độ chính xác tốt

Ý tưởng cơ bản của cách tiếp cận Nạve Bayes là sử dụng xác suất cĩ điềukiện giữa các đặc trưng và nhãn để dự đốn xác suất nhãn của một văn bản cần phânloại Điểm quan trọng của phương pháp này chính là ở chỗ giả định rằng sự xuấthiện của tất cả các đặc trưng trong văn bản đều độc lập với nhau Giả định đĩ làmcho việc tính tốn Nạve Bayes hiệu quả và nhanh chĩng hơn các phương pháp khác

vì khơng sử dụng việc kết hợp các đặc trưng để đưa ra phán đốn nhãn Kết quả dựđốn bị ảnh hưởng bởi kích thước tập dữ liệu, chất lượng của khơng gian đặctrưng…

Thuật tốn Nạve Bayes dựa trên định lý Bayes được phát biểu như sau:

Áp dụng trong bài tốn phân loại, các dữ kiện gồm cĩ:

D: tập dữ liệu huấn luyện đã được vec-tơ hĩa dưới dạng

Các thuộc tính độc lập điều kiện đơi một với nhau

Theo định lý Bayes:

Trang 19

Theo tính chất độc lập điều kiện:

Trong đĩ:

là xác suất thuộc phân loại i khi biết trước mẫu X

xác suất là phân loại i

loại i

Các bước thực hiện thuật tốn Nạve Bayes:

thức

Trang 20

1.2.2. Phân loại dựa trên máy vec-tơ hỗ trợ (Support Vector Machine)

Máy vec-tơ hỗ trợ (Support Vector Machine - SVM) là một phuơng pháp

tìm một siêu phẳng (Hyper Plane) hay tập các siêu phẳng trong không gian hữu hạnchiều của các vec-tơ biểu diễn văn bản, phân chia các vec-tơ này thành 2 phần là hailớp của bộ phân loại Khoảng cách từ siêu phẳng tới điểm gần nhất được gọi là biêncủa bộ phân loại Khi có một vec-tơ mới, khoảng cách từ vec-tơ này đến đến siêuphẳng được tính toán, sau đó sẽ được xếp vào phân loại phù hợp với nó

Để đơn giản ta sẽ xét bài toán phân loại nhị phân, sau đó sẽ mở rộng vấn đề

ra cho bài toán phân nhiều lớp

Xét một ví dụ của bài toán phân loại hình 1.2 ở đó ta phải tìm một đườngthẳng sao cho bên trái nó toàn là các điểm đỏ, bên phải nó toàn là các điểm xanh.Bài toán mà dùng đường thẳng để phân chia này được gọi là phân loại tuyến tính(linear classification)

Hình 1.2: Mô tả về siêu phẳng trong SVM

Hàm tuyến tính phân biệt hai lớp như sau:

(1)Trong đó:

là vec-tơ trọng số hay vec-tơ chuẩn của siêu phẳng phân cách, T là kíhiệu chuyển vị

là độ lệch

là véc tơ đặc trưng, làm hàm ánh xạ từ không gian đầu vào sang

không gian đặc trưng

Trang 21

Lưu ý cách dùng từ ở đây: điểm dữ liệu, mẫu… đều được hiểu là input vec-tơ

không gian đa chiều thì gọi đó là siêu phẳng

Giả sử tập dữ liệu của ta có thể phân tách tuyến tính hoàn toàn (các mẫu đềuđược phân đúng lớp) trong không gian đặc trưng (feature space), do đó sẽ tồn tại giá

huấn luyện

SVM tiếp cận giải quyết vấn đề này thông qua khái niệm gọi là lề, đườngbiên… (margin) Lề được chọn là khoảng cách nhỏ nhất từ đường phân cách đếnmọi điểm dữ liệu hay là khoảng cách từ đường phân cách đến những điểm gần nhất

Hình 1.3: Mô tả về đường biên trong SVM

Trong SVM, đường phân loại tốt nhất chính là đường có khoảng cách marginlớn nhất (tức là sẽ tồn tại rất nhiều đường phân cách xoay theo các phương khácnhau, và ta chọn ra đường phân cách mà có khoảng cách margin là lớn nhất)

Hình 1.4: Mô tả về đường biên trong SVM

Trang 22

Ta có công thức tính khoảng cách từ điểm dữ liệu đến mặt phân cách nhưsau:

1.3. Kết luận chương

Đây là chương mở đầu của luận văn nhằm giới thiệu và tập trung xem xétmột cách tổng quan về bài toán phân loại cảm xúc người dùng trong mạng xã hội.Điều này giúp chúng ta có một cái nhìn sơ lược về bài toán, những thách thức cũngnhư khó khăn khi nghiên cứu lĩnh vực này Luận văn cũng nêu ra hướng nghiên cứu

sẽ được sử dụng trong mà luận văn sẽ áp dụng trong chương 2, chương 3

Trang 23

CHƯƠNG 2: MÔ HÌNH BÀI TOÁN VÀ CÁC BƯỚC TRONG

PHÂN LOẠI CẢM XÚC NGƯỜI DÙNG

Trong chương này, luận văn trình bày chi tiết các bước xây dựng mô hình bàitoán từ thu thập dữ liệu, trích chọn đặc trưng đến sử dụng công cụ để ra được kếtquả khảo sát Nắm vững được phần này thì hoàn toàn có thể xây dựng lại bài toánvới các mô hình trích chọn đặc trưng khác nhau, các kỹ thuật phân loại khác nhauphục vụ cho việc phát triển các hướng nghiên cứu khác sau này

2.1. Mô hình tổng quát bài toán

Hình 2.1 Mô hình tổng quát của bài toán

Trang 24

Đầu vào của mơ hình là tập các dữ liệu bình luận trên các website âm nhạcnhư ZingMp3, Keeng Các bình luận trên các website này cĩ dạng html hoặcjson Bộ Crawler sẽ tiến hành thu thập dữ liệu, loại bỏ các tag khơng cần thiết vàlưu trữ vào database (dưới dạng text).

Các dữ liệu bình luận thơ sẽ được tách từ, loại bỏ các từ dừng (các từ khơng

cĩ ý nghĩa trong việc biểu diễn cảm xúc), các ký tự đặc biệt, ký tự trắng, sửanhững lỗi sai chính tả Dữ liệu bình luận thơ lúc này cĩ thể gọi là dữ liệu đã làmmịn

Cơng việc tiếp theo là xây dựng vec-tơ đặc trưng cho tập bình luận đã làmmịn Mục đích của việc này là biểu diễn dữ liệu bình luận dưới dạng vec-tơ đặctrưng Vec-tơ là kiểu biểu diễn chuẩn để bước tiếp theo ta sử dụng các kỹ thuậtphân loại như Nạve Bayes, SVM Cĩ một số cách để xây dựng vec-tơ đặctrưng, phổ biến là N-Grams và Vector Space Model Kết quả của phần này là file

cĩ đuơi arff

Sau khi cĩ vec-tơ đặc trưng, ta tiến hành phân loại dựa vào kỹ thuật NạveBayes và SVM bằng cơng cụ Weka Trong phạm vi của luận văn, dữ liệu bìnhluận sẽ được phân loại thành một trong hai lớp “Cảm xúc tích cực” và “Cảm xúctiêu cực”

Cảm xúc tích cực là những cảm xúc miêu tả niềm hạnh phúc, vui vẻ, thíchthú, yêu thương Cảm xúc tiêu cực là những cảm xúc miêu tả về sự buồn bã, đauđớn, nhớ thương, chán nản v.v.v Việc phân loại cảm xúc này được phân loại nhưhình 2.2

Trang 25

Bảng 2.1: Bảng phân loại cảm xúc tích cực, tiêu cực

Cuối cùng ta sẽ tiến hành tổng hợp, đánh giá, so sánh về kết quả đạt được.Các pha cụ thể sẽ được trình bày chi tiết ở các mục tiếp theo của luận văngồm thu thập dữ liệu, tiền xử lý dữ liệu, trích chọn đặc trưng sử dụng mơ hình n-grams và mơ hình vec-tơ khơng gian (Vector Space Model), phân loại sử dụnghai bộ phân loại Nạve Bayes và SVM

1.4. Pha thu thập dữ liệu

Luận văn thực hiện thu thập dữ liệu trên 2 website nhạc hàng đầu Việt nam làZingMp3 và Keeng

 Đối với Keeng, nội dung bình luận khá ngắn, thiên về chát chít, bànchuyện phiếm nhiều hơn là bày tỏ cảm xúc / cảm nhận về bài hát Do đĩ,luận văn sẽ tạm thời khơng sử dụng bình luận từ website này

 Đối với ZingMp3, dữ liệu bình luận vừa đủ Tiến trình Crawler sẽ thuthập dữ liệu bình luận theo 2 chủ đề là “Top 100 bài nhạc cách mạng haynhất”[19] và “Top 100 bài nhạc trẻ hay nhất”[20]

Trang 26

Hình 2.2: Dữ liệu thô trên trang mp3.zing.vn

Để lấy được nội dung dưới dạng json của bình luận, luận văn sử dụng thưviện Gson[21] của Google Dữ liệu sau khi được crawl về sẽ được lưu trực tiếp vào

cơ sở dữ liệu như hình 2.3 để tiện xử lý sau này

Luận văn thu thập các bình luận từ 01/02/2015 đến 01/05/2015

Tổng số bình luận thu thập được là 13645 bình luận

Code chi tiết phần thu thập dữ liệu tại project EmotionClassifications đínhkèm trong phụ lục 01, file CrawlingZing.java

Hình 2.3: Dữ liệu sau khi crawl về lưu trữ vào cơ sở dữ liệu 1.5. Pha tiền xử lý dữ liệu

Trang 27

Trong lĩnh vực xử lý ngôn ngữ tự nhiên, pha tiền xử lý dữ liệu vô cùng quantrọng giúp hiệu chỉnh lại nội dung bình luận, bỏ những phần thừa Điều này sẽ gópphần tăng độ chính xác cho bộ phân loại.

Pha tiền xử lý dữ liệu gồm 2 phần chính:

 Gán nhãn Phần này luận văn loại bỏ các bình luận mang tính khách quanhoặc không liên quan gì đến tâm trạng người dùng hoặc dễ gây hiểu lầm.Đồng thời, lúc này mỗi bình luận cũng được chia vào một trong hai lớp

“Cảm xúc tích cực” và “Cảm xúc tiêu cực” luôn Công việc này đượcthực hiện bởi phương pháp thủ công Sau khi thực hiện phần này, ta được

1034 bình luận Bao gồm 512 bình luận có cảm xúc tích cực, và 522 bìnhluận có cảm xúc tiêu cực

 Chuẩn hóa dữ liệu Phần này luận văn tiến hành sửa các lỗi chính tả, làmchuẩn các từ viết tắt các thao tác chuẩn hóa được thực hiện như ví dụbảng 2.2 Tại đây, các khoảng cách trắng đã được loại bỏ Các từ viết tắthoặc ngôn ngữ không chính thống đã được làm chuẩn Tại phần này, toàn

bộ câu sẽ được chuyển về dạng ký tự chữ thường để tiện xử lý sau này.Các dấu câu cũng bị loại bỏ

Bảng 2.2: Ví dụ về chuẩn hóa dữ liệu trong pha tiền xử lý

Ví dụ về bình luận

trước chuẩn hóa

Bài này hay wá nghe hoài ko chán

sau khi đã chuẩn hóa

bài này hay quá nghe hoài không

chánCode chi tiết phần tiền xử lý dữ liệu tại project EmotionClassifications đínhkèm trong phụ lục 01, file ReadDataAfterHandle.java

1.6. Pha trích chọn đặc trưng và vec-tơ hóa văn bản

Trang 28

Để áp dụng được hai bộ phân lớp Nạve Bayes hay SVM, ta phải chuẩn hĩađược dữ liệu đầu vào của hai bộ phân lớp này Cụ thể là từ các tập dữ liệu thu thậpđược, đối với mỗi bình luận, ta phải tìm ra được những đặc trưng của bình luận đĩ,

và chuẩn hĩ nĩ thành vec-tơ Mơ hình tổng thể của bài tốn phân loại cảm xúc sửdụng hai mơ hình trích chọn đặc trưng là n-grams và mơ hình khơng gian vec-tơ(Vector Space Model)

1.6.1. N-grams

Đây là mơ hình phổ biến nhất và dễ áp dụng vì tính đơn giản của nĩ Mơhình cĩ thể áp dụng với hầu hết bài tốn phân loại nĩi chung để xây dựng vec-tơđặc trưng

Với mơ hình N-grams, ta định nghĩa một mẫu các từ cĩ độ dài n Giá trị n cĩthể thay đổi với n =1,2,3, Ta cĩ thể thay đổi nhiều giá trị n khác nhau để tìm ra kếtquả tối ưu nhất Với n = 1 cịn được gọi là Unigram hay Bag Of Words, n = 2bigram, n = 3 trigram Mơ hình này rất tốt trong việc trích chọn đặc trưng ‘phủ định’trong văn bản Chẳng hạn “khơng vui”, “khơng thích” là những mẫu phủ định làmthay đổi hồn tồn cảm xúc của người dùng trong văn bản

Để hiểu hơn về cách trích chọn đặc trưng này ta xét một ví dụ xây dựng

vec-tơ cụ thể dưới đây

Chẳng hạn ta cĩ 2 bình luận:

Bảng 2.3 Các nội dung bình luận ví dụ cho n – gram

 Với n = 1 (unigram) Ta cĩ túi từ vựng được xây dựng từ 2 bình luận trênnhư sau:

Trang 29

6 Tôi

9 NàyVec-tơ đặc trưng được định nghĩa là giá trị có xuất hiện từ vựng đó trong câubình luận hay không (0 hoặc 1)? Như vậy vec-tơ đặc trưng Unigram trong trườnghợp này được biểu diễn dưới dạng

Bảng 2.5 Vec-tơ đặc trưng của unigram

Vậy ta được 02 vec-tơ đặc trưng trong mô hình trích chọn đặc trưng unigram

Hátrất

Rấtbuồn

Tôikhông

Khôngthích

Thíchbài

Hátnày

Trang 30

Bình

Vậy ta được 02 vec-tơ đặc trưng trong mô hình trích chọn đặc trưng bigrams

Ngày đăng: 19/07/2021, 21:37

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] H. Yujin, Z. Xiaoling, L. L. Wang, and Xuelin. “A bayes text classification method based on vec-tơspace model”. Computer and Digital Engineering, 32:28–30, feb 2004 Sách, tạp chí
Tiêu đề: A bayes textclassification method based on vec-tơspace model
[3] Pham Huyen-Trang, et al (2011) "A solution for grouping Vietnamese synonym feature words in product reviews." Services Computing Conference (APSCC), 2011 IEEE Asia-Pacific. IEEE Sách, tạp chí
Tiêu đề: A solution for grouping Vietnamesesynonym feature words in product reviews
[4] Vu, Tien-Thanh, et al. "A feature-based opinion mining model on product reviews in Vietnamese." Semantic Methods for Knowledge Management and Communication. Springer Berlin Heidelberg, 2011. 23-33 Sách, tạp chí
Tiêu đề: A feature-based opinion mining model onproduct reviews in Vietnamese
[16] Yustinus Eko Soelistio and Martinus Raditia Sigit Surendra, “Simple text mining for sentiment analysis of political figure using Nạve Bayes classifier”, The Proceedings of The 7th ICTS, Bali, pp. 99-104, (2013) Sách, tạp chí
Tiêu đề: Simpletext mining for sentiment analysis of political figure using Nạve Bayes classifier
[17] CORTES, C. and V. VAPNIK, 1995. Support-vec-tơ networks.Machine Learning. [Cited by 2683] (213.94/year) Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w