BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU
TRANG MẠCH HOÀNG NGUYÊN
PHÂN TÍCH QUAN ĐIỂM CHO CÁC BÀI VIẾT
CHÍNH TRỊ TỪ MẠNG XÃ HỘI
LUẬN VĂN THẠC SỸ Bà Rịa-Vũng Tàu, tháng 4 năm 2021
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU
TRANG MẠCH HOÀNG NGUYÊN
PHÂN TÍCH QUAN ĐIỂM CHO CÁC BÀI VIẾT
CHÍNH TRỊ TỪ MẠNG XÃ HỘI
LUẬN VĂN THẠC SỸ
Chuyên ngành: Công nghệ thông tin.
Mã số: 8480201 CÁN BỘ HƯỚNG DẪN KHOA HỌC: Tiến sĩ. Huỳnh Ngọc Tín. Bà Rịa-Vũng Tàu, tháng 4 năm 2021
i
LỜI CAM ĐOAN
Tôi là Trang Mạch Hoàng Nguyên, MSHV 18110046 học viên lớp
MIT18K1, ngành Công nghệ thông tin. Tôi xin cam đoan luận văn Phân tích
quan điểm cho các bài viết chính trị từ mạng xã hội sau đây là công trình nghiên
cứu của riêng tôi dưới sự dẫn đắt, hướng dẫn của Tiến sĩ Huỳnh Ngọc Tín. Luận
văn không phải sự sao chép từ các tài liệu, công trình nghiên cứu của người
khác, 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ỳ công trình nào khác. Tôi xin chịu trách nhiệm về lời cam
đoan này.
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này
đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ
nguồn gốc.
Tác giả luận văn Trang Mạch Hoàng Nguyên
ii
LỜI CẢM ƠN
Tôi xin gửi lời cảm ơn chân thành đến Tiến sĩ Huỳnh Ngọc Tín là người đã
nhiệt tình giúp đỡ tôi trong quá trình làm Đề tài và hoàn thành luận văn này.
Thầy luôn quan tâm, chỉ bảo và giúp đỡ trong suốt thời xây dựng luận văn này.
Tôi cũng xin gửi lời cảm ơn chân thành đến Ban Giám hiệu trường Đại học
Bà Rịa – Vũng Tàu, Viện Đào tạo Quốc tế và sau Đại học và các Thầy, Cô của
trường đã giúp đỡ tôi cùng các học viên của lớp MIT18K1 đã hỗ trợ, truyền đạt
kiến thức giúp cho các học viên hoàn thành khóa học được tốt nhất.
Trang Mạch Hoàng Nguyên
iii
MỤC LỤC
LỜI CAM ĐOAN .............................................................................................. i
LỜI CẢM ƠN ................................................................................................... ii
MỤC LỤC ....................................................................................................... iii
DANH MỤC CÁC TỪ VIẾT TẮT .............................................................. vii
DANH MỤC CÁC HÌNH ............................................................................ viii
DANH MỤC CÁC BẢNG .............................................................................. x
TÓM TẮT ........................................................................................................ 1
Chương 1 . TỔNG QUAN ĐỀ TÀI ............................................................... 3
1.1. Dẫn nhập .................................................................................................... 3
1.2. Mục tiêu ...................................................................................................... 8
1.3. Nội dung thực hiện ..................................................................................... 8
1.4. Phạm vi thực hiện ....................................................................................... 9
1.5. Kết quả đạt được ........................................................................................ 9
1.6. Bố cục báo cáo ......................................................................................... 10
1.7. Kết chương ............................................................................................... 10
Chương 2 . CÁC NGHIÊN CỨU LIÊN QUAN ......................................... 11
2.1. Mở đầu ..................................................................................................... 11
2.2. Bài toán Phân tích Quan điểm chính trị từ mạng xã hội .......................... 11
2.2.1. Thực trạng ............................................................................................. 11
2.2.2. Phát biểu bài toán .................................................................................. 11
2.3. Một số phương pháp phân tích quan điểm ............................................... 13
2.3.1. Phương pháp sử dụng từ điển ............................................................... 14
iv
2.3.2. Phương pháp học máy giám sát ............................................................ 15
2.3.3. Phương pháp học máy kết hợp sử dụng từ điển .................................... 16
2.3.4. Một số nghiên cứu liên quan ................................................................. 17
2.3.4.1. Phân tích cảm xúc với dữ liệu từ mạng Twitter ................................. 17
2.3.4.2. Phân tích cảm xúc trong giáo dục đại học qua các thông tin tiếng Việt
trên Web .......................................................................................................... 17
2.3.4.3. Nghiên cứu kỹ thuật phân tích cảm xúc ứng dụng vào cải tiến chất
lượng đào tạo đại học ...................................................................................... 18
2.3.4.4. Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng tiếp
cận Deep Learning .......................................................................................... 18
2.3.4.5. Phân lớp chủ đề và đánh giá cảm xúc cho tiếng Việt ........................ 19
2.4. Nhận định về các nghiên cứu và phương pháp phân loại quan điểm ...... 19
2.5. Kết chương ............................................................................................... 20
Chương 3 . TIẾP CẬN DÙNG WORD EMBEDING ................................ 21
3.1. Mở đầu ..................................................................................................... 21
3.2. Thu thập dữ liệu ....................................................................................... 23
3.2.1. Tổng quan về dữ liệu ............................................................................. 23
3.2.2. Quá trình thu thập dữ liệu ..................................................................... 24
3.2.3. Giới thiệu về Selenium .......................................................................... 25
3.2.4. Sử dụng Selenium để thu thập dữ liệu .................................................. 26
3.3. Gán nhãn dữ liệu ...................................................................................... 26
3.3.1. Tổng quan về các khía cạnh của dữ liệu ............................................... 26
3.3.2. Các bước gán nhãn dữ liệu .................................................................... 27
3.3.3. Một số nguyên tắc để gán nhãn dữ liệu ................................................ 28
3.4. Tiền xử lý ................................................................................................. 29
v
3.4.1. Tổng quan về quá trình tiền xử lý ......................................................... 29
3.4.2. Giới thiệu về các bộ từ điển .................................................................. 31
3.5. Mã hóa dữ liệu .......................................................................................... 34
3.5.1. Tổng quan về quá trình mã hóa dữ liệu ................................................ 34
3.5.2. Tổng quan về Word2Vec ...................................................................... 34
3.5.3. Sử dụng Word2Vec để mã hóa dữ liệu ................................................. 37
3.6. Xây dựng mô hình áp dụng LSTM .......................................................... 37
3.6.1. Giới thiệu về RNN ................................................................................ 38
3.6.2. Giới thiệu về mô hình LSTM ................................................................ 39
3.6.3. Quá trình huấn luyện của mạng LSTM ................................................. 43
3.7. Sử dụng mô hình để huấn luyện phân tích quan điểm ............................. 46
3.8. Kết chương ............................................................................................... 48
Chương 4 . KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ ....................... 49
4.1. Mở đầu ..................................................................................................... 49
4.2. Dữ liệu thực nghiệm (Dataset) ................................................................. 49
4.2.1. Tập huấn luyện cho mô hình đánh giá quan điểm ................................ 50
4.2.2. Tập kiểm thử cho mô hình đánh giá quan điểm .................................... 51
4.3. Thiết lập thực nghiệm .............................................................................. 51
4.4. Phương pháp đánh giá .............................................................................. 52
4.4.1. Phương pháp đánh giá ........................................................................... 52
4.4.2. Các độ do sử dụng ................................................................................. 53
4.5. Kết quả thực nghiệm ................................................................................ 54
4.6. So sánh với một số phương pháp khác .................................................... 61
vi
4.7. Phân tích lỗi .............................................................................................. 63
4.8. Nhận định và bàn luận .............................................................................. 64
4.8.1. Nhận định .............................................................................................. 64
4.8.2. Bàn luận................................................................................................. 65
4.9. Kết chương ............................................................................................... 65
KẾT LUẬN VÀ KIẾN NGHỊ ...................................................................... 67
TÀI LIỆU THAM KHẢO ............................................................................ 68
QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN ............................................... 70
PHỤ LỤC 1. THƯ VIỆN XỬ LÝ NGÔN NGỮ TỰ NHIÊN
UNDERTHESEA .......................................................................................... 73
PHỤ LỤC 2. THƯ VIỆN VÀ MÔ HÌNH NGÔN NGỮ TIẾNG VIỆT
FASTTEX ...................................................................................................... 74
vii
DANH MỤC CÁC TỪ VIẾT TẮT
Natural Language Understanding - NLU
Natural Language Processing - NLP
Machine Learning - ML
Artificial Intelligence - AI
Deep Learning – DL
Recurrent Neural Network – RNN
Long Short Term Memory – LSTM
Word to Vector - Word2Vec
viii
DANH MỤC CÁC HÌNH
Hình 1-1 Các trang mạng xã hội ....................................................................... 5
Hình 2-1 Mô hình của bài toán phân tích quan điểm. ..................................... 12
Hình 2-2 Sơ đồ phân lớp quan điểm sử dụng từ điển ..................................... 14
Hình 2-3 Sơ đồ phân lớp quan điểm sử dụng Học máy .................................. 15
Hình 2-4 Sơ đồ phân lớp quan điểm sử dụng Học máy kết hợp từ điển ........ 16
Hình 3-1 Các bước thực hiện .......................................................................... 23
Hình 3-2 Các bước xử lý ngôn ngữ tự nhiên .................................................. 30
Hình 3-3 Một vài ví dụ Từ điển hư từ ............................................................. 33
Hình 3-4 Mô hình Word2Vec ......................................................................... 35
Hình 3-5 Mô hình sử dụng Word2Vec mã hóa dữ liệu .................................. 37
Hình 3-6 Một mạng RNN và mở ra thời gian tính toán liên quan chuyển tiếp –
(nguồn: Internet. sites.google.com/site/vncoder95/machine-learning/rnn-la-gi)
......................................................................................................................... 39
Hình 3-7 Mô hình LSTM – nguồn Internet..................................................... 40
Hình 3-8. Mô hình LSTM ............................................................................... 41
Hình 3-9 Mô hình xử lý vanishing gradient .................................................... 42
Hình 3-10 Cấu trúc để huấn luyện và kiểm thử mô hình phân tích quan điểm
......................................................................................................................... 47
Hình 4-1 Confusion Matrix của mô hình trên tập kiểm thử ........................... 54
Hình 4-2 Normalized Confusion Matrix của mô hình trên tập kiểm thử ....... 55
Hình 4-3 Giao diện của Chương trình ............................................................. 56
ix
Hình 4-4 Bài viết về liên quan phòng chống dịch bệnh Covid – 19. .............. 57
Hình 4-5 Một số bình luận liên quan đến bài viết ........................................... 58
Hình 4-6 Đầu vào của chương trình ................................................................ 59
Hình 4-7 Kết quả của đoạn bình luận được chương trình phân tích ............... 59
Hình 4-8 Đầu vào của chương trình với bình luần có hướng Tiêu cực .......... 60
Hình 4-9 Kết quả của chương trình sau khi phân tích mang quan điểm Tiêu
cực ................................................................................................................... 61
x
DANH MỤC CÁC BẢNG
Bảng 4-1 Bảng thống kê tập huấn luyện ......................................................... 50
Bảng 4-2 Bảng thống kê tập kiểm thử ............................................................ 51
Bảng 4-3 Thể hiện Confusion Matrix ............................................................. 53
Bảng 4-4 Bảng so sánh một số phương pháp .................................................. 62
1
TÓM TẮT
Khai thác thế mạnh của mạng xã hội các Chính phủ hay các tổ chức quản
lý nhà nước hiện nay cũng thường dùng các mạng xã hội như Facebook,
Switter, Weibo, Lotus… để đăng tải các thông tin nhằm cung cấp cho người
dân, các tổ chức, cá nhân những thông tin kịp thời, cũng như đưa ra các quyết
sách giải pháp hoặc các dự thảo chính sách để các tổ chức, cá nhân tham
khảo, đóng góp ý kiến.
Trong đó chính là sự tương tác của người đọc, những bình luận trong
một nội dung lĩnh vực cụ thể nào đó sẽ thể hiện được cách nhìn nhận, tiếp
cận, bày tỏ suy nghĩ của họ còn được gọi là thể hiện quan điểm. Trong cùng
một một nội dung về lĩnh vực nào đó những người tham gia bình luận sẽ thể
hiện nhiều quan điểm khác nhau trong đó sẽ có các bình luận mang quan điểm
Tích cực, có các bình luận mang quan điểm Tiêu cực, hoặc có những bình
luận không thể hiện quan điểm nào cụ thể (mang tính Trung lập hoặc Trung
hòa).
Nghiên cứu, phân tích được các loại quan điểm giúp chúng ta có được sự
nhìn nhận trực quan với vấn đề, lĩnh vực đó ảnh hướng đến người đọc, người
bình luận như thế nào. Một trong những lĩnh vực mang tầm quan trọng mà
chúng ta cần phải nghiên cứu và phân tích đó chính là quan điểm thể hiện qua
các bài viết trong lĩnh vực chính trị.
- Mục tiêu nghiên cứu: Như đã nói bên trên, phân tích được các quan
điểm bình luận mạng tính tích cực, tiêu cực và trung lập trong các lĩnh vực mà
trong phạm vi của Luận văn này là các bài viết trong lĩnh vực chính trị trên
mạng xã hội giúp chúng ta nhận thức được cảm xúc và tóm lược được ý kiến
liên quan đến bài viết, phục vụ cho công tác đánh giá quan điểm của các đối
tượng tác động từ đó đề ra các phương hướng, giải pháp, chính sách tốt hơn.
2
- Phương pháp nghiên cứu: Sử dụng hướng tiếp cận học máy sử dụng
RNN (Recurrent Neural Network) và mô hình LSTM (Long Short Term
Memory) bởi sự phù hợp đối với dữ liệu đầu vào dưới dạng văn bản/ chuỗi ký
tự (có thể là câu văn hoặc đoạn văn) và hứa hẹn độ chính xác cao (căn cứ trên
các nghiên cứu từ trước) để phân tích được các quan điểm tích cực, tiêu cực,
trung lập cho các bài viết thuộc lĩnh vực chính trị.
- Kết quả nghiên cứu: Xây dựng bộ dữ liệu lên đến hơn 21 nghìn đơn vị
về quan điểm chính trị từ nguồn mạng xã hội để phục vụ cho việc huấn luyện,
kiểm thử và đánh giá. Thiết kế, xây dựng và đánh giá mô hình phân tích quan
điểm sử dụng phương pháp học sâu, cụ thể là ứng dụng Word2Vec và mạng
LSTM. Chương trình phân tích quan điểm được đánh giá có kết quả tốt, độ
chính xác cao (75%) trong việc phân tích quan điểm theo các nhãn Tích cực
(0.71%), nhãn Tiêu cực (0,83%) và Trung lập (0,71%).
- Hàm ý quản trị: Phân tích quan điểm cho các bài viết chính trị từ mạng
xã hội phù hợp trong công tác quản lý, quản trị của một cơ quan, tổ chức Nhà
nước, qua phân tích được các quan điểm tích cực, tiêu cực, hoặc trung lập cho
một bài viết chính trị giúp người làm công tác quản lý nhà nước có thể xem xét,
hoàn thiện, hoặc điều chỉnh các chính sách quản lý phù hợp hơn đối với thực tế.
- Hạn chế & hướng nghiên cứu tiếp theo: Luận văn Phân tích quan điểm
cho các bài viết chính trị từ mạng xã hội về cơ bản đã đạt được những yêu cầu đề
ra trong khuôn khổ của khóa luận. Để đạt được tính ứng dụng cao hơn, mở rộng
ra cho các lĩnh vực khác không chỉ trong lĩnh vực chính trị và cho các loại hình
hệ thống mạng xã hội khác nhau thì cần có thời gian, cũng như quá trình thu thập
mở rộng hệ thống, trong đó chú trọng nhiều hơn cho nguồn cơ sở dữ liệu thu
thập đủ lớn để quá trình huấn luyện, kiểm thử sẽ đạt được độ chính xác cao hơn
nữa.
3
Chương 1 . TỔNG QUAN ĐỀ TÀI
1.1. Dẫn nhập
Cùng với sự phát triển của cuộc cách mạng công nghiệp lần thứ 4, sự
bùng nổ về công nghệ đặc biệt trong lĩnh vực công nghệ thông tin, sự phát
triển của Internet đã tạo ra một xã hội mới trên không gian mạng với đặc tính
không biên giới. Do vậy, việc tận dụng, khai thác, sử dụng môi trường mạng
xã hội này mang tính thời đại đối với mọi tổ chức, đặc biệt trong các tổ chức
nhà nước với sự khai thác trong nhiều lĩnh vực như: văn hóa - giáo dục, kinh
tế- xã hội, an ninh – chính trị v.v…
Hiện nay, trên mạng Internet thông qua các diễn đàn, mạng xã hội, báo
điện tử v.v…người dân, tổ chức bày tỏ các ý kiến về vấn đề như xã hội, giáo
dục, chính trị v.v… trên cơ sở các bài báo, tin tức mang tính chính thống thì
hiện nay các trang mạng xã hội như Facebook, Switter, Weibo, Lotus… cũng
là các nguồn cung cấp nhiều thông tin. Tuy nhiên, đa phần các nguồn thông
tin trên các trang mạng xã hội là chưa được kiểm chứng, hoặc thông tin mang
tính chủ quan của người đăng nhằm vào các mục đích khác nhau, nên người
dùng cũng cần phải biết lựa chọn tham gia những trang mạng xã hội, những
diễn đàn mang tính chính thống cho mình.
Một trong những tầm quan trọng trong quản lý, điều hành của một tổ chức,
đơn vị và rộng hơn là trong quản lý Nhà nước nói chung là nắm bắt được các
quan điểm của các đối tượng tham gia trong guồng máy đó. Trước đây, để có thể
nắm bắt được quan điểm của một lĩnh vực nào đó các tổ chức phải thông qua
việc lấy phiếu điều tra gửi đến các đối tượng cần thiết việc đó đồi hỏi phải có bộ
máy nhân lực, vật lực và thời gian khi đã có kết quả thì nhiều vấn đề đã không
còn “nóng”. Đặc biệt trong các vấn đề có liên quan đến lĩnh vực chính trị.
- Trước tiên ta cần phải hiểu chính trị là gì?
4
Theo định nghĩa của Từ điển Bách Khoa Việt Nam
(http://bachkhoatoanthu.vass.gov.vn/noidung/tudien/Lists/GiaiNghia/View_D
etail.aspx?TuKhoa=&ChuyenNganh=0&DiaLy=0&ItemID=31103), nguyên
văn: "CHÍNH TRỊ: toàn bộ những hoạt động có liên quan đến các mối quan
hệ giữa các giai cấp, giữa các dân tộc, các tầng lớp xã hội, mà cốt lõi của nó
là vấn đề giành chính quyền, duy trì và sử dụng quyền lực nhà nước, sự tham
gia vào công việc của nhà nước, sự xác định hình thức tổ chức, nhiệm vụ, nội
dung hoạt động của nhà nước".
Theo định nghĩa trên thì bài viết mang tính chính trị mang một ý nghĩ
phạm trụ rộng lớn. Vì vậy để giới hạn trong phạm vi đề tài xin định nghĩa các
bài viết mang tính chính trị là các bài viết mang nội dung có liên quan đến
“nhiệm vụ, nội dung hoạt động điều hành, quản lý của nhà nước Việt Nam”.
- Mạng xã hội:
Cùng với sự phát triển của cuộc cách mạng công nghiệp lần thứ 4, sự
bùng nổ về công nghệ đặc biệt trong lĩnh vực công nghệ thông tin, sự phát
triển của Internet đã tạo ra một xã hội mới trên không gian mạng với đặc tính
không biên giới. Mạng xã hội hay gọi là mạng xã hội ảo (Social Network) là
dịch vụ nối kết các thành viên cùng sở thích trên internet lại với nhau với
nhiều mục đích khác nhau không phân biệt không gian và thời gian. Mạng xã
hội có những tính năng như chat, e-mail, phim ảnh, voice chat, chia sẻ files,
blog, và xã luận. Mạng đổi mới hoàn toàn cách cư dân mạng liên kết với nhau
và trở thành một phần tất yếu của mỗi ngày cho hàng trăm triệu thành viên
khắp thế giới. Các dịch vụ này có nhiều phương cách để các thành viên tìm
kiếm bạn bè, đối tác: dựa theo Groups (ví dụ như tên trường hoặc tên thành
phố), dựa trên thông tin cá nhân (như địa chỉ e-mail hoặc screen name), hoặc
5
dựa trên sở thích cá nhân (như thể thao, phim ảnh, sách báo, hoặc ca nhạc),
lĩnh vực quan tâm: xã hội, giáo dục, chính trị, kinh doanh, mua bán...
Hình 1-1 Các trang mạng xã hội
Khai thác được thế mạnh của mạng xã hội, Chính phủ, các tổ chức quản
lý nhà nước hiện nay cũng đã thường dùng các mạng xã hội như Facebook,
Switter, Weibo, Lotus.v.v…để đăng tải các thông tin nhằm cung cấp cho
người dân, các tổ chức, cá nhân những thông tin kịp thời, cũng như đưa ra các
quyết sách giải pháp hoặc các dự thảo chính sách để các tổ chức, cá nhân
tham khảo, đóng góp ý kiến.
Trong Luận văn này tôi xin giới hạn phạm vi về những tin tức bài viết
trên mạng xã hội mang tính chính trị, từ đó phân tích đưa ra các quan điểm
của người viết, người tương tác, bình luận (comment).
- Bài viết chính trị trong mạng xã hội: là các bài viết trên các trang mạng
xã hội có các nội dung liên quan đến nhiệm vụ, nội dung hoạt động điều hành,
quản lý của nhà nước Việt Nam nói chung.
6
- Tại sao chúng ta lại phải phân tích quan điểm cho bài viết chính trị?
Sự tương tác của người đọc, người bình luận trong một nội dung lĩnh vực
chính trị cụ thể nào đó, đều đó sẽ thể hiện được cách nhìn nhận, tiếp cận, bày
tỏ suy nghĩ của họ gọi là quan điểm.
Trong cùng một một nội dung về lĩnh vực chính trị những người tham
gia bình luận có thể thể hiện nhiều quan điểm khác nhau trong đó sẽ có các
bình luận mang quan điểm Tích cực (Positive), có các bình luận mang quan
điểm Tiêu cực (Negative), hoặc có những bình luận không thể hiện quan điểm
nào cụ thể mang tính Trung lập hoặc Trung hòa (Neutral).
Vài ví dụ liên quan:
Ví dụ 1:
- Bài viết mang tính chính trị 1: “ Quốc hội đang thông qua dự thảo Luật
An ninh mạng”
Bình luận:
Bình luận 1: “- Tại sao phải có luật an ninh mạng, luật này để các ông
theo dỗi người dân ah ?!!”
Bình luận 2:“- Ủng hộ dự thảo Luật, cần sớm ban hành”
Bình luận 3: “- Phải có cơ sở để xử lý các thông tin sai lệt trên mạng xã
hội chứ, để các ông mạnh ai náy đưa thông tin không biết có chính thống hay
không thì có mà toang ah”
- Bài viết mang tính chính trị 2: “ Tình hình dịch bệnh Covid – 19 của
Việt Nam, Chính phủ đang triển khai các biện pháp phòng chống mạnh mẽ”
Bình luận:
Bình luận 1: “- Việt Nam toan rồi các ông ah!”
7
Bình luận 2:“- Tôi tin chắc chúng ta sẽ chống dịch thành công, mọi
người hãy cùng nhau thực hiện giãng cách xã hội”
Trên đây là một vài ví dụ, thực tế thì có vô số những tin tức, bài viết bình
luận với nhiều tâm thái, quan điểm khác nhau, trái chiều nhau.
Vậy, phân tích được các quan điểm tích cực, tiêu cực giúp chúng ta nhìn
nhận được, đánh giá được nhận thức, cảm xúc và tóm lược được ý kiến là các
thông điệp mang tính chính trị có ảnh hưởng đến đời sống của người dân.
Từ kết quả phân tích được, các nhà quản lý thông tin và đặc biệt trong
quản lý nhà nước sẽ có thể nắm được ý kiến của cộng đồng, của xã hội thể
hiện trạng thái đồng tình hay phê phán các chủ trương, đường lối, chính sách
hoạt động điều hành của Nhà nước qua đó đưa ra các giải pháp quản lý đất
nước linh hoạt, hiệu quả phù hợp với thực tiễn đời sống người dân.
- Vì sao phải xây dựng chương trình phân tích quan điểm cho lĩnh vực
chính trị?
Như đã đề cập ở trên, trong thời buổi công nghệ thông tin phát triển
mạnh mẽ thì xây dựng một chương trình để thay thế các biện pháp thủ công
trước đây phải là điều hiển nhiên là xu thế của thời đại.
Trước đây, để thu thập, lấy ý kiến hay quan điểm người ta thường sử
dụng các biện pháp truyền thống như: Sử dụng phiếu lấy ý kiến, thăm dò ý kiên
trên các trang thông tin, hội họp v.v...và nó đòi hỏi phải tốn nhiều thời gian,
nhân lực để hình thành các nội dung cần đề cập đến và sau khi lấy được dữ liệu
phải tốn nhiều thời gian, công sức phân loại, đánh giá và phạm vi hạn hẹp đều
này đã không còn phù hợp với xu thế hiện nay.
8
Vì vậy, việc xây dựng một phần mềm ứng dụng để Phân tích quan điểm
cho các bài viết Chính trị từ mạng xã hội là việc cần thiết, khắc phục các hạn chế
của phương pháp truyền thống.
1.2. Mục tiêu
Mục tiêu của đề tài này là tìm hiểu kiến thức trong xử lý văn bản, bài
toán phân loại văn bản, phân loại các quan điểm được truyền đạt trong văn
bản. Hiểu các bước xử lý, tiến hành thử nghiệm và sử dụng các thuật toán xây
dựng mô hình và phần mềm.
Hệ thống phần mềm được xây dựng có khả năng phân tích được quan
điểm chính trị theo các mức độ tích cực, tiêu cực của các bình luận tại các bài
viết về lĩnh vực chính trị từ mạng xã hội.
1.3. Nội dung thực hiện
- Tìm hiểu về bài toán Phân tích quan điểm và các nghiên cứu liên quan
trong và ngoài nước về Phân tích quan điểm.
- Tìm hiểu các kiến thức cần thiết và liên quan trong các lĩnh vực để
phục vụ quá trình nghiên cứu đề tài và xây dựng hệ thống.
- Xây dựng hệ thống phân tích quan điểm chính trị phục vụ cho nhu cầu
của các tổ chức chính trị:
+ Xây dựng kiến trúc hệ thống nền tảng qua các công cụ lập trình.
+ Tổng hợp các dữ liệu, thông tin, công trình cần thiết tạo nên danh sách
từ điển về Social Language và danh sách các hư từ trong ngôn ngữ tiếng Việt.
+ Thu thập các dữ liệu cần thiết cho quá trình huấn luyện, kiểm thử.
+ Xây dựng giao diện cho người dùng.
+ Triển khai và vận hành hệ thống.
9
+ So sánh đánh các thông số và kết quả của chương trình.
1.4. Phạm vi thực hiện
- Nguồn dữ liệu: Các bình luận, bài viết liên quan về chính trị trên mạng
xã hội Facebook.
- Đối tượng sử dụng: các tổ chức chính trị, nhà nước.
- Ngôn ngữ hỗ trợ: tiếng Việt.
1.5. Kết quả đạt được
- Nắm bắt được kiến thức xử lý văn bản tiếng Việt, các bước thực hiện
và triển khai của bài toán phân loại văn bản và phân tích được quan điểm
chính trị trong văn bản, tiến hành áp dụng các thuật toán phân loại vào mô
hình xây dựng.
- Nắm bắt kiến thức và hệ thống theo hướng tiếp cận về xử lý dữ liệu
khối lượng lớn.
- Thu thập dữ liệu huấn luyện với khoản 21 nghìn tài liệu, dữ liệu gồm
các câu đơn, câu phức, các đoạn văn đánh giá, phản hồi từ người dùng mạng
xã hội (Facebook), Internet được gán nhãn theo nội dung chính trị và các quan
điểm tích cự, tiêu cực, trung lập.
- Hệ thống sau khi xây dựng sẽ đáp ứng các yêu cầu Phân loại quan điểm
các bình luận của bài viết mang tính chính trị thuộc quan điểm tích cực, trung
lập hay tiêu cực. Hệ thống đáp ứng được các yêu cầu sau:
+ Hệ thống chương trình phân loại quan điểm của các bình luận hay bài
đăng được đề cập đó thuộc quan điểm Tích cực, Trung lập hay Tiêu cực.
+ Hệ thống chương trình phân loại quan điểm có chức năng báo biểu
theo quãng thời gian, cung cấp một cái nhìn trực quan cho người sử dụng.
10
1.6. Bố cục báo cáo
Bố cục gồm có 04 chương:
Chương 1: Tổng quan đề tài.
Chương 2: Các nghiên cứu liên quan.
Chương 3: Tiếp cận dùng Word Embeding.
Chương 4: Kết quả thực nghiệm và Đánh giá.
1.7. Kết chương
Trên đây là vài nét tổng quát về hệ thống phân tích quan điểm cho bài
viết chính trị từ mạng xã hội, nội dung chi tiết về hệ thống và quá trình thực
hiện cùng với kết quả đạt được sẽ được trình bày cụ thể ở các chương sau.
11
Chương 2 . CÁC NGHIÊN CỨU LIÊN QUAN
2.1. Mở đầu
Để thực hiện bài toán phân tích quan điểm chính trị này ta cần hiểu rõ
bài toán này là gì, các yêu cầu của bài toán đặt ra là gì, hướng tiếp cận giải
quyết bài toán thế nào, các phương pháp giải quyết của bài toán như thế
nào…
Ngoài ra, chương này còn trình bày tổng quan về một số công trình
nghiên cứu liên quan hiện có đến bài toán Phân tích quan điểm đã được công
bố trong và ngoài nước.
2.2. Bài toán Phân tích Quan điểm chính trị từ mạng xã hội
2.2.1. Thực trạng
Phân tích quan điểm là một vấn đề không phải mới trong giới công nghệ
thông tin. Tuy nhiên, để có thể ứng dụng nó vào thực tế trong lĩnh vực cụ thể
thì vẫn chưa có nhiều nghiên cứu liên quan, đặc biệt trong lĩnh vực chính trị.
Hiện nay, bên cạnh các kênh chính thống như các trang báo, đài thì các
trang mạng xã hội của của các cơ quan, tổ chức cũng trở thành một kênh để
giao tiếp trao đổi với người dân, các tổ chức doanh nghiệp trên môi trường
mạng. Nó đóng góp vai trò giúp cơ quan, tổ chức nhà nước thu thập được ý
kiến về các khía cạnh liên quan đến chính trị từ đó có những điều chỉnh chính
sách phù hợp phát huy tính dân chủ, cải thiện chính sách nhà nước.
2.2.2. Phát biểu bài toán
Bài toán Phân tích quan điểm là một bài toán liên quan đến phân tích
ngữ nghĩa để có thể xác định được đoạn văn thể hiện thế nào quan điểm người
viết, chúng ta cần xây dựng một mô hình để hiểu được ý của đoạn văn đó.
12
Theo định nghĩa trong lĩnh vực máy học, chúng ta có thể định nghĩa đây
là một bài toán phân lớp quan điểm dựa trên ngôn ngữ tự nhiên.
Trong luận văn này sẽ trọng tâm là xác định cảm xúc của văn bản là tích
cực, tiêu cực hay trung lập. Đầu vào của bài toán là một câu văn hay đoạn văn
bản, đầu ra là giá trị xác suất của lớp mà ta cần xác định, cụ thể là xác suất
của 3 lớp: Tích cực (positive), Trung tính/Trung lập (neutral) hay Tiêu cực
(negative).
Hình 2-1 Mô hình của bài toán phân tích quan điểm.
Có nhiều phương pháp để xử lý bài toán Phân tích quan. Mỗi phương
pháp đều có những ưu nhược điểm riêng.
- Học máy (Machine Learning)
+ Sử dụng công nghệ Học máy và một số công cụ liên quan để xây dựng
một mô hình phân loại và xác định câu văn hay đoạn văn bày tỏ quan điểm
nào.
+ Phương pháp này thích hợp cho việc xử lý dữ liệu đầu vào bất kỳ câu
văn hay đoạn văn.
13
+ Tuy nhiên, chúng ta cần xây dựng một bộ dữ liệu tốt nhất có thể để đạt
được kết quả cao trong phương pháp này, việc này cần nhiều thời gian và
nhân lực.
+ Hiện nay, việc ứng dụng các kĩ thuật Học sâu (Deep Learning) là một
phương thức phổ biến để hiện thực mô hình học máy này bởi nó phù hợp với
các dữ liệu học đặc trưng.
- Dựa trên từ vựng:
+ Trong cách này chung ta sẽ tiến hành tính điểm của các từ chỉ quan
điểm và dựa vào đó tính điểm tổng thể để đánh giá quan điểm chung của câu
văn hay đoạn văn.
+ Bằng cách này chúng ta không cần chuẩn bị dữ liệu để huấn luyện.
Tuy nhiên một số lượng lớn các từ của văn bản không nằm trong bộ từ vựng
quan điểm sẽ không được quan tâm và thứ tự của các từ cũng sẽ bị bỏ qua.
- Phương pháp lai:
+ Với phương pháp này ta sẽ kết hợp giữa Học máy và cách tiếp cận dự
trên từ vựng để phân lớp quan điểm của câu văn hay đoạn văn.
+ Phương pháp này sẽ sử dụng từ điển để rút trích các đặc trưng quan
trọng cho dữ liệu và sau đó đưa dữ liệu vừa rút trích được vào mô hình phân
tích. Tuy nhiên phương pháp này thường đạt kết quả cao với dữ liệu đầu vào
là một câu văn.
2.3. Một số phương pháp phân tích quan điểm
14
2.3.1. Phương pháp sử dụng từ điển
Hình 2-2 Sơ đồ phân lớp quan điểm sử dụng từ điển
Dữ liệu sau khi được tiền xử lý sẽ được phân lớp dự trên từ điển liên
quan đến khía cạnh nghiên cứu được xây dựng.
Trong mô hình này, dựa vào từ điển để tìm kiếm đặc trưng cho từng
quan điểm và xác định điểm số cho chúng. Sau đó, các điểm số này sẽ được
tổng hợp lại theo một độ đo, từ đó xác định văn bản đầu và thuộc quan điểm
nào.
Đối với phương pháp này sử dụng từ điển thì không cần phải chuẩn bị dữ
liệu để huấn luyện và kiểm tra, thay vào đó là phải chuẩn bị bộ từ điển cho
các quan điểm muốn xác định.
Ngoài ra, độ chính xác của phương pháp này còn phụ thuộc vào độ tốt
của từ điển.
15
Trong mô hình này, thứ tự các từ sẽ bị bỏ qua cũng như các từ chứa nội
dung quan trọng có thể không được quan tâm tới.
2.3.2. Phương pháp học máy giám sát
Hình 2-3 Sơ đồ phân lớp quan điểm sử dụng Học máy
Dữ liệu đầu vào là dữ liệu đã được xử lý ở các bước tiền xử lý.
Trong mô hình học máy, quá trình học sẽ lưu lại những tham số,
configure,... chúng ta có thể gọi nôm na là kiến thức mà học máy được.
Dựa vào những gì đã học được, khi có dữ liệu mới xuất hiện, máy sẽ dựa
vào đó phân tích và đánh giá xem dữ liệu thuộc quan điểm nào.
Kết quả đầu ra là xác suất của từng quan điểm mà chúng ta định nghĩa,
từ xác suất này chúng ta có thể xác định được dữ liệu đầu vào thuộc hoặc
thiên về quan điểm nào.
16
Ưu điểm của phương pháp này là dữ liệu đầu vào có thể là một câu đơn
hoặc là một đoạn văn, những nội dung quan trọng có thể được bảo toàn, độ
chính xác cao.
Tuy nhiên, để thực hiện phương pháp này phải chuẩn bị dữ liệu để huấn
luyện và nguồn dữ liệu càng dồi dào càng tốt.
2.3.3. Phương pháp học máy kết hợp sử dụng từ điển
Hình 2-4 Sơ đồ phân lớp quan điểm sử dụng Học máy kết hợp từ điển
Phương pháp này còn được gọi ngắn gọn là Phương pháp lai.
Trong phương pháp này chúng ta dựa vào bộ từ điển để rút trích những
từ quan trọng cần thiết cho quá trình xử lý và sau đó chuyển dữ liệu này thành
input cho quá trình học máy.
Nhược điểm của phương pháp này là thường chỉ thích hợp với dữ liệu
đầu vào là các câu đơn.
17
2.3.4. Một số nghiên cứu liên quan
2.3.4.1. Phân tích cảm xúc với dữ liệu từ mạng Twitter
Alexander Park và cộng sự (2015) [1] đã tự thu thập dữ liệu trên Twitter
sau đó xây dựng bộ phân lớp cảm xúc để xác định cảm xúc tích cực
(positive), tiêu cực (negative), hay trung lập (neutral). Nhận định:
- Ưu điểm:
+ Tác giả tự động thu thập dữ liệu cho việc phân tích cảm xúc và khai
thác ý kiến.
+ Trong đề tài này tác giả nghiên cứu hai mô hình: tree kernel và feature
based models.
- Nhược điểm:
+ Chưa có phân tích ngữ nghĩa và topic modeling.
+ Chỉ hỗ trợ ngôn ngữ tiếng Anh.
2.3.4.2. Phân tích cảm xúc trong giáo dục đại học qua các thông tin tiếng
Việt trên Web
Nguyễn Đăng Thành (2016) [2] đã phân tích cảm xúc của các đọc giả
thông qua các comment trên các trang báo điện tử cụ thể là VNExpress.
Nghiên cứu này tác giả sử dụng phương pháp kết hợp bộ từ điển cảm xúc và
phương pháp học máy giám sát để phân tích cảm xúc trong các comment của
đọc giả. Nhận định:
- Ưu điểm: Hệ thống tìm được chủ đề ẩn của dữ liệu.
- Nhược điểm: Hệ thống chỉ mới phân tích cảm xúc tổng quát, chưa phân
tích cảm xúc theo từng chủ đề cụ thể.
18
2.3.4.3. Nghiên cứu kỹ thuật phân tích cảm xúc ứng dụng vào cải tiến
chất lượng đào tạo đại học
Trần Văn Tiến, Nguyễn Minh Trường (2017) [3] đã tiến hành sử dụng
các phương pháp xử lý dữ liệu và rút trích đặc trưng từ những phản hồi của
sinh viên. Sau đó kết hợp với phương pháp học máy để phân tích cảm xúc cho
các phản hồi đó. Đầu vào là phản hồi của sinh viên, đầu ra là nhận định câu
đó mang sắc thái cảm xúc nào (tích cực, tiêu cực, trung tính). Nhận định:
- Ưu điểm:
+ Kết quả đầu ra chia thành ba lớp: tích cực, tiêu cực, trung tính.
+ Tập trung so sánh các phương pháp để giải quyết bài toán và từ đó đưa
ra lựa chọn phương pháp phù hợp nhất.
- Nhược điểm:
+ Chỉ xử lý tập trung trong một lĩnh vực là những phản hồi, đánh giá của
sinh viên UIT về quá trình giảng dạy của giảng viên.
+ Chỉ phân tích cảm xúc, chưa phân loại cụ thể những khía cạnh của lĩnh
vực nghiên cứu.
2.3.4.4. Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng
tiếp cận Deep Learning
Quản Thành Thơ (2017) [4] đã trình bày về tầm quan trọng của Big Data
đến từ truyền thông xã hội đối với các thương hiệu tại Việt Nam, cũng như là
tầm quan trọng của phân tích cảm xúc đối với Big Data. Bên cạnh đó, là
những chia sẻ về cách tiếp cận của học máy với phân tích cảm xúc.
Nhân định:
- Ưu điểm:
19
+ Trình bày cụ thể về cách tiếp cận và các bước để phân tích cảm xúc.
+ Giải thích chi tiết về các công nghệ và thuật toán để tiến hành phân
tích cảm xúc.
- Nhược điểm: Đây chỉ là một bài chia sẻ hơn là nghiên cứu để cho ra
một sản phẩm phần mềm.
2.3.4.5. Phân lớp chủ đề và đánh giá cảm xúc cho tiếng Việt
Hung T. Vo và cộng sự (2016) [5] đã thu thập những phản hồi và đánh
giá của các công ty về những sinh viên của trường thực tập tại đó để tiến hành
phân lớp chủ đề và đánh giá cảm xúc, từ đó giúp cải thiện chất lượng đào tạo
của trường. Nghiên cứu phân loại thành các chủ đề là lập trình, thiết kế, giao
tiếp, ngoại ngữ, thuyết trình, ... và phân thành hai lớp cảm xúc (tích cực, tiêu
cực). Nhận định:
- Tiến hành thực nghiệm các thuật toán Naive Bayes, IBk (K Nearest
Neighbors), SMO (Support Vector Machine) và so sánh kết quả thực nghiệm.
- Phương pháp đề xuất tập trung vào cụm tính từ và cụm động từ để trích
xuất cấu trúc của nhận xét.
2.4. Nhận định về các nghiên cứu và phương pháp phân loại quan
điểm
Việc giải quyết bài toàn phân tích quan điểm cho từng lĩnh vực cụ thể
theo những hướng tiếp cận khác nhau để đạt được kết quả tối ưu nhất là vấn
để được giới chuyên môn quan tâm. Các phương pháp nghiên cứu nhìn chung
là đang phân tích tổng quát ngôn ngữ tiếng Việt hoặc chỉ đang tập trung ở một
khía cạnh nhỏ như bình luận trong tin tức, bình luận thể thao, thương mại, văn
hóa – giáo dục, du lịch….
20
Trong các nghiên cứu liên quan nêu trên, dễ nhận thấy nghiên cứu tại
phần 2.3.4.3 là gần với các bài toán đặt ra cho luận văn này tuy nhiên nó đang
chỉ ứng dụng cho mô hình của trường đại học. Trước tình hình cũng như nhu
cầu quản lý trong nhiều lĩnh vực trong đó lĩnh vực mà được nhiều tầng lớp
người dân, cũng như của các nhà quản lý chính là tình hình chính trị. Vì vậy,
mô hình phân tích quan điểm trong lĩnh vực chính trị là cần thiết và luôn nhận
được sự quan tâm cùa cộng đồng chuyên môn cũng như các nhà quản lý chính
trị.
2.5. Kết chương
Mỗi nghiên cứu phương pháp phân tích đề có những ưu, nhược điểm
hoặc thế mạnh riêng. Các nghiên cứu phân tích với ngôn ngữ tiếng Anh mặc
dù phổ biến và có độ chính xác cao trong công đồng nghiên cứu quốc tế
nhưng kho phù hợp để triển khai với ngôn ngữ tiếng Việt. Các phương pháp
phân tích ngôn ngữ tiếng Việt có kết quả tốt nhưng chưa đi sâu vào khía cạnh
mà đề tài quan tâm là quan điểm chính trị. Phương pháp phân tích có sử dụng
từ điển có nhiều ưu điểm nổi bật, nhưng với những văn bản mang tính chính
quy, chính thống chưa phù hợp với dữ liệu từ mạng xã hội.
Ngoài ra việc xây dựng bộ từ điển này cần được chứng thực bởi các tổ
chức giám định về ngôn ngữ để đảm bảo tính khách quan của kết quả. Phương
pháp học máy giám sát được đánh giá cao và sẽ được ứng dụng trong đề tài vì
phù hợp với nhiều đặc tính của bài toán về khả năng ứng dụng, cải thiện độ
chính xác và tính mở rộng cao.
21
Chương 3 . TIẾP CẬN DÙNG WORD EMBEDING
3.1. Mở đầu
Việc lựa chọn một hướng tiếp cận xử lý bài toán Phân tích quan điểm để
đạt được kết quả tối ưu nhất là vấn đề cần cân nhắc đầu tiên của bất cứ nhà
nghiên cứu nào. Hướng tiếp cận đóng một vai trò quan trọng trong việc quyết
định thành bại của một nghiên cứu nhất định.
Chúng ta thấy có nhiều cách để tiếp cận bài toán Phân tích quan điểm.
Tuy nhiên trong phạm vi giới hạn của đề cương này, ta sẽ tập trung vào
hướng tiếp cận học máy sử dụng RNN (Recurrent Neural Network) và mô
hình LSTM (Long Short Term Memory) bởi sự phù hợp đối với dữ liệu đầu
vào dưới dạng văn bản/ chuỗi ký tự (có thể là câu văn hoặc đoạn văn) và hứa
hẹn độ chính xác cao (căn cứ trên các nghiên cứu từ trước).
Tổng quan về quá trình theo hướng tiếp cận sử dụng phương pháp học,
gồm các bước được mô tả theo thứ tự như sau:
- Thu thập dữ liệu: Kết hợp giữa thao tác thủ công và ứng dụng giữa
các framework tự động hóa (Selenium, Puppeteer, ...) để thực hiện thu thập
các bình luận từ các trang diễn đàn, trang mạng xã hội. Các đối tượng được
nhắm đến thu thập là các diễn đàn, chuyên trang đăng tải thông tin về chính
trị - xã hội, các trang thông tin về chính trị, từ đó dữ liệu được thu thập sẽ cô
đọng và được sử dụng tốt hơn.
- Gán nhãn dữ liệu: Sau khi có dữ liệu được thu thập, dữ liệu sẽ được
kiểm tra lại và tiến hành gán nhãn dựa trên phát biểu bài toán, gồm các nhãn
Tích cực, Tiêu cực và Trung lập.
22
- Tiền xử lý: Dữ liệu sau khi được gán nhãn, chia thành các tệp tin với
nhãn tương ứng, sẽ được đưa vào quá trình tiền xử lý dữ liệu. Đây là quá trình
gồm nhiều công đoạn nhỏ: tách từ, loại bỏ hư từ, chuẩn hóa,…
- Mã hóa dữ liệu: Tuy dữ liệu đã có, được tiền xử lý và gán nhãn đầy
đủ, nhưng những quá trình học máy vẫn chưa thể hiểu được dữ liệu dưới dạng
câu từ này. Chính vì vậy, ta phải mã hóa dữ liệu này để máy tính có thể hiểu
được thông qua quá trình mã hóa (vector hóa). Có nhiều phương pháp mã hóa
dữ liệu ngôn ngữ, nhưng phương pháp được đánh giá cao và hiệu quả, được
sử dụng để mã hóa là Word2Vec. Thông qua mô hình Word2Vec, từng từ
vựng được ánh xạ vào một không gian vector và qua đó có thể được biểu diễn
dưới dạng một vector số thực mà vẫn có khả năng giữ được ngữ nghĩa với các
từ khác.
- Xây dựng mô hình học sâu sử dụng LSTM: Ứng dụng mô hình học
sâu, mà cụ thể là mô hình mạng LSTM. Mạng LSTM là một mô hình cải tiến
từ mô hình mạng RNN đã cho thấy nhiều hiệu quả tốt trong việc cải thiện các
tác vụ ở các câu văn, đoạn văn dài trong xử lý ngôn ngữ. Đầu vào của mạng
LSTM này là các tập vector từ vựng (qua Word2Vec) và nhãn của chúng, mô
hình sẽ tiến hành huấn luyện, rút trích và phân tích đặc trưng của dữ liệu. Đầu
ra mạng LSTM này sẽ là một mô hình học sâu, đã được huấn luyện và có khả
năng dự đoán nhãn quan điểm từ một câu đầu vào được mã hóa.
23
Hình 3-1 Các bước thực hiện
Nội dung chính của chương sẽ trình bày cụ thể về các bước hiện thực bài
toán Phân tích quan điểm từ giai đoạn thu thập dữ liệu đến xử lý dữ liệu và
đánh giá kết quả. Chi tiết về cách thực hiện, triển khai của từng bước được
trình bày chi tiết ở các đề mục theo sau.
3.2. Thu thập dữ liệu
3.2.1. Tổng quan về dữ liệu
Dữ liệu huấn luyện giữ một vai trò quan trọng trong ảnh và chi phối đến
quá trình và kết quả của các bước chuẩn hóa dữ liệu hay xây dựng mô hình
học máy. Trong lĩnh vực học máy ta thường thấy khái niệm “Trash in – Trash
out” chỉ tầm quan trọng của dữ liệu trong xây dựng các mô hình. Dữ liệu đầu
24
vào tốt, bao quát, có giá trị cao và mật độ phân phối mẫu tốt sẽ cải thiện kết
quả đầu ra của mô hình.
Quá trình tìm hiểu để nghiên cứu ứng dụng cho luận văn, nhận thấy được
hiện nay chư có bộ dữ liệu tiếng Việt công khai nào mang tính đặc thù liên
quan đến phạm trù về quan điểm chính trị phù hợp để triển khai bài toán phân
tích quan điểm này. Vì vậy, việc thu thập dữ liệu thuộc phạm trù liên quan để
xây dựng nên bộ dữ liệu huấn luyện là rất cấp thiết.
Các dữ liệu cần được thu thập phải có ý nghĩa nội dung bao hàm phạm
trù ý nghĩa mà luận văn này quan tâm (Quan điểm chính trị), có nguồn gốc từ
các nguồn là các trang mạng xã hội phù hợp, đảm bảo với các tiêu chí mà bộ
dữ liệu yêu cầu.
Đối với những yêu cầu trên, dễ nhận thấy nguồn dữ liệu này có thể được
khoanh vùng thu thập tại các trang fanpage, các trang viết về chính trị tại các
nền tảng mạng xã hội và website. Nguồn các dữ liệu từ các diễn đàn nội bộ
liên quan và các diễn đàn công khai trên mạng Internet cũng có thể được cân
nhắc khai thác. Dữ liệu có thể được sử dụng bao gồm những bài viết, những
bài đăng trên các kênh mạng xã hội; là phản hồi của cộng đồng về các các bài
viết, bài đăng trên; là các bài đánh giá, phản hồi về các quan điểm chính trị
của các bài viết chia sẻ thông tin từ các diễn đàn, các mạng xã hội.
3.2.2. Quá trình thu thập dữ liệu
Quá trình thu thập dữ liệu là quá trình lấy dữ liệu (các bài đăng, bình
luận,...) từ các kênh, trang thông tin, mạng xã hội. Ví dụ như fanpage các
trang chính trị trên Facebook, Forum,... hay các trang website về viết về đề tài
chính trị hay các diễn đàn công khai trên Internet.
Các Crawler sẽ thu thập dữ liệu từ các nguồn trên và lưu vào cơ sở dữ
liệu phục vụ cho các bước tiếp theo.
25
Trong phạm vi của bài luận này, dữ liệu thu thập sẽ được giới hạn trong
phạm vi liên quan đến hai khía cạnh là Chính trị trong các bài viết liên quan
trên mạng xã hội.
3.2.3. Giới thiệu về Selenium
Selenium là một framework miễn phí và mã nguồn mở dành cho các ứng
dụng web trên các trình duyệt và nền tảng khác nhau, hỗ trợ cho việc tự động
hóa các thao tác trên trình duyệt. Selenium gồm 4 thành phần:
- Selenium Integrated Development Environment (IDE): là một phần mở
rộng của Firefox. Nó có thể tự động hóa trình duyệt bằng các tính năng ghi lại
và phát lại.
- Selenium Remote Control (RC): giống như một máy chủ sẽ hoạt động
như một proxy HTTP nhằm để trình duyệt tin rằng Selenium Core và ứng
dụng web được thử nghiệm đến từ cùng một tên miền.
- WebDriver: giúp việc thực thi các hành động lên trang web một cách tự
động và có thể điều khiển trình duyệt từ cấp hệ điều hành.
- Selenium Grid: Ra đời nhằm giảm thiểu thời gian thực hiện thử nghiệm
càng nhiều càng tốt. Nó có khả năng chụp ảnh màn hình của trình duyệt trong
các giai đoạn và cũng có thể gửi ra các lệnh Selenium cho các máy khác nhau
cùng một lúc.
Selenium hỗ trợ cho việc tự động hóa các thao tác trên trình duyệt, đặc
biệt là kiểm thử tự động. Bên cạnh đó, Selenium tương thích với nhiều
browser (ví dụ: Chrome, Firefox, IE, Safari, …) và nhiều platform (ví dụ: mac
OS, Windows, Linux, ...), ngoài ra Selenium còn hỗ trợ nhiều ngôn ngữ lập
trình (ví dụ: Java, C#, Ruby, …). Bằng cách sử dụng Selenium sẽ giúp chúng
26
ta tiết kiệm được thời gian, nhân lực khi thực hiện các bước lặp đi lặp lại có
quy tắc.
3.2.4. Sử dụng Selenium để thu thập dữ liệu
Để sử dụng Selenium IDE phục vụ cho việc thu thập dữ liệu trước hết
cần cài đặt Selenium trên trình duyệt Firefox. Sau đó, mở extension trên trình
duyệt Firefox và tiến hành tái hiện hành động phù hợp với mong muốn.
Với một số website yêu cầu đăng nhập, hoặc có kiến trúc HTML tương
đối phức tạp hơn (Ví dụ: Facebook.com - yêu cầu đăng nhập tài khoản, hay
Google Map Review on Location), việc áp dụng Selenium IDE đơn thuần
không đơn giản, nên đã sử dụng thư viện Selenium WebDriver kết hợp với
ngôn ngữ Java, tạo nên một ứng dụng đơn giản giúp thu thập dữ liệu từ các
website này về từ đường dẫn url. Ứng dụng này có thể tìm thấy trên Google.
Tuy nhiên, dữ liệu thu thập được ở bước này chỉ mới là dữ liệu thô và
còn lộn xộn. Để có được một tập dữ liệu hoàn chỉnh phục vụ cho việc huấn
luyện chúng ta cần phải tiến hành gán nhãn dữ liệu. Quá trình này sẽ được
trình bày chi tiết ở mục sau.
3.3. Gán nhãn dữ liệu
3.3.1. Tổng quan về các khía cạnh của dữ liệu
Dữ liệu được gán nhãn “Chính trị” khi nội dung có đề cập đến các từ ngữ
mang tính chính trị như: “Thông tin Chính phủ”, hoặc mặc định chúng ta tìm
kiếm trên các trang xã hội có liên quan.
Phân loại về khía cạnh dữ liệu chính trị trong phạm trù của luận văn này
sẽ được mặc định từ các trang, bài viết trên mạng xã hội có nguồn gốc từ các
cơ quan, tổ chức thuộc Nhà nước hoặc liên quan đến các chuyên mục chuyên
về chính trị.
27
Đều quan tâm ở đây chính là các phản hồi, bình luận từ người đọc qua
dó thể hiện các quan điểm cho các bài viết đó.
- Dữ liệu được gán nhẵn “Tích cực” khi nội dung thể hiện cách nhìn,
quan điểm mang tính đồng ý, tích cực, những cảm xúc mang tính tốt đẹp, hàm
ẩn sự khen thưởng, ngưỡng mộ…
Ví dụ: “đồng ý với dự Luật”; “Nội dung, chủ trương góp phần đẩy
mạnh phát triển xã hội, nhận thức người dân”….
- Dữ liệu gán nhãn “Tiêu cực” khi nội dung thể hiện cách nhìn, quan
điểm mang tính tiêu cực, bất đồng quan điểm, không ủng hộ, những cảm xúc
mang tính bóc đồng, hàm ý mang tính chê bai, chỉ trích…
Ví dụ: “Chưa đọc qua nhưng thấy không phù hợp”; “Không ủng hộ”;
“nhà nước chưa quan tâm đến người dân”…
- Dữ liệu gán nhãn “Trung lập” khi nội dung thể hiện cách nhìn, quan
điểm mang tính chung chung, không có ý nghĩa, nội dung không cụ thể rõ
ràng hoặc các ký tự biểu tượng không mang rõ cảm xúc về các vấn đề chính
trị.
3.3.2. Các bước gán nhãn dữ liệu
Đây là quá trình gán nhãn dữ liệu đã thu thập được thành các tập đặc
trưng theo từng khía cạnh, quan điểm
- Phân loại theo chủ đề: Ở bước này dữ liệu được phân loại thành các tập
theo từng khía cạnh, cụ thể trong phạm vi luận văn này dữ liệu sẽ được phân
loại tập dữ liệu là “Chính trị”. Dữ liệu được phân loại dựa trên mức độ liên
quan và nội dung - ngữ nghĩa của câu liên quan đến hai khía cạnh “Chính trị”
hoặc đã được chỉ định từ trước.
28
- Phân loại dữ liệu theo quan điểm: chủ đề về “Chính trị” ở trên sẽ được
chia nhỏ thành những tập chủ đề con gồm: Tích cực, Trung tính/Trung lập
hay Tiêu cực.
3.3.3. Một số nguyên tắc để gán nhãn dữ liệu
Với chủ đề chính trị đã được chỉ định ra, việc cần thực hiện là gán nhãn
dữ liệu cho quan điểm của chủ đề chính trị:
- Quan điểm được gán nhãn Tích cực khi:
+ Nội dung thể hiện cái nhìn, cảm xúc tích cực của người bình luận về
một vấn đề. Những cảm xúc, sắc thái tích cực bao gồm sự hàm ẩn về sự yêu
thương, tình cảm tốt đẹp, sự bổ ích, sự đồng thuận…
+ Nội dung thể hiện quan điểm của người bình luận khi so sánh với
nhiều đối tượng, phạm trù khác và kết quả cao hơn ở khía cạnh tích cực.
- Quan điểm được gán nhãn Tiêu cực khi:
+ Nội dung thể hiện cái nhìn, cảm xúc tiêu cực của người bình luận về
một vấn đề, những sắc thái tiêu cực thường bao gồm sự hàm ý về sự thù ghét,
thù địch, bất công bằng, bất mãn, sự giã dối, phủ định chê bai v.v…
+ Nội dung thường xuất hiện các từ mang sắc thái, cảm xúc tích cực
nhưng lại đi kèm với một từ phủ định như: không, chẳng, không có, không thể
v.v…thường để thể hiện sự đối lập.
- Quan điểm được gán nhãn Trung lập khi:
Nội dung không thể hiện cái nhìn, cảm xúc của người bình luận về một
nội dung, bình luận không thể hiện quan điểm hoặc không liên quan đến chủ
đề.
Các ví dụ liên quan:
29
Ví dụ 1: chủ đề chính trị về phát biểu của Thủ tướng về “Chống suy
thoái như chống giặc”
Bình luận Tích cực 1: “Chính xác. Giờ thấy suy thoái nhiều quá.”
Bình luận Tích cực 2: “Chống lợi ích nhóm triệt để.. hết suy thoái mọi
cái..”
Bình luận Tích cực 3: “Cả nước chung tay cùng chính phủ Việt Nam
phát triển kinh tế mở rộng quan hệ quốc tế”.
Bình luận Tiêu cực 1: “Việc này rất mâu thuẫn và nghiên cứu thực tế mà
nhanh nhẹn hơn”
Ví dụ 2: chủ đề chính trị về tình hình phòng chống dịch Covid 19: “tình
hình covid 19 đến ngày thứ 67 không còn cá mắc mới trong cộng đồng, Chính
phủ xem xét mở lại đường bay thương mại, nhưng không được chủ quan”
Bình luận Tích cực 1: “Chúng cháu rất mong chính phủ sớm mở đường
bay thương mại ạ!”
Bình luận Tích cực 2: “Chẳng kẻ thù nào ngăn nổi bước ta đi , chúng ta
đã chiến thắng covid”
Bình luận Tiêu cực 1: “Việc này rất mâu thuẫn”
Bình luận mang tính Trung lập: “Chúc bạn một ngày bình an”
3.4. Tiền xử lý
3.4.1. Tổng quan về quá trình tiền xử lý
Tiền xử lý sẽ thực hiện thu thập thông tin về bài viết, chuyên mục từ các
mạng xã hội trên môi trường Internet thông qua Crawler, sau quá trình biến
đối các dữ liệu được thống nhất theo một quy chuẩn cụ thể. Dữ liệu sau khi
được tiền xử lý sẽ đảm bảo một số ràng buộc nhất định như không tồn các ký
30
tự đặc biệt, dữ liệu rác, các thẻ html lẫn vào, đặc biệt là đã được tách thành
các cụm từ ghép,… việc này sẽ đảm bảo các bước tiếp theo diễn ra chính xác
hơn.
Hình 3-2 Các bước xử lý ngôn ngữ tự nhiên
Quá trình tiền xử lý đối với bài toán này, các công đoạn và các phương
pháp như sau:
- Loại bỏ các thẻ html. Ví dụ:
, , ... Phươngpháp thực hiện: sử dụng bộ từ điển Social Language.
- Loại bỏ các icon, sticker. Ví dụ: :v, :D, :), ... Phương pháp thực hiện: sử
dụng bộ từ điển hư từ.
- Tách từ: gom nhóm các từ đơn liền kề thành cụm từ có ý nghĩa, nhằm
khử sự nhập nhằng về ngữ nghĩa. Phương pháp thực hiện: sử dụng công cụ
Underthesea.
- Loại bỏ hư từ: nhằm loại bỏ stop word để tránh các thông tin nhiễu
trong quá trình phân tích, ví dụ: “bấy nhiêu”, “nhé”, … Phương pháp thực
hiện: sử dụng bộ từ điển hư từ.
31
- Chuẩn hóa dữ liệu: chuẩn hóa các từ viết tắt, sai chính tả, tiếng lóng,
v.v… Phương pháp thực hiện: sử dụng bộ từ điển Social Language.
Tại mỗi công đoạn của các bước tiền xử lý dữ liệu có nhiều phương pháp
được thực vận dụng như sử dụng từ điển, sử dụng công cụ lập trình, v.v… sẽ
được giới thiệu tổng quát qua các phần tiếp theo.
3.4.2. Giới thiệu về các bộ từ điển
Phương pháp sử dụng từ điển là một phương pháp tương đối đơn giản về
cách triển khai. Bằng cách này, chúng ta sử dụng một hay nhiều tập các từ
điển làm căn cứ để đối chiếu tham khảo với các đối tượng cần kiểm tra. Nếu
đối tượng cần kiểm tra có xuất hiện trong từ điển, hệ thống có thể triển khai
các hành động tiếp theo một cách phù hợp. Việc sử dụng từ điển cũng góp
phần giới hạn sự xuất hiện của các đối tượng đặc biệt hoặc xuất hiện quá ít,
đưa chúng về các trường hợp phổ biến và cụ thể hơn.
Trong giai đoạn xây dựng tiền xử lý dữ liệu, khía cạnh chính trị hiện nay
quan tâm xác định các từ từ môi trường mạng xã hội (Social Language) và hư
từ (Stopwords). Trong quá trình thực hiện bài luận văn đã tiến hành tổng hợp
các bộ từ điển này qua các dự án khác nhau có sử dụng và bổ sung thêm từ
vựng để tạo nên bộ từ điển phù hợp.
- Giới thiệu từ điển Social Language
Từ điển Social Language là danh sách bao gồm các từ teen code, tiếng
lóng, tiếng địa phương, từ viết tắt, v.v… Tương ứng với mỗi từ trong từ điển
là từ viết đúng chính tả, ngữ ngáp tiếng Việt.
Từ điển Vietnamese Social Language: được lưu dưới dạng tập tin .json,
mỗi dòng là một từ có dạng: {"incorrect":
32
- Giới thiệu từ điển hư từ:
Từ điển hư từ: được lưu dưới dạng tập tin .txt. Ngoài những hư từ dưới
dạng văn bản thuần, từ điển còn có cả các emoji với mục đích làm sạch dữ
liệu để quá trình xử lý ở các bước sau hiệu quả hơn. Mỗi dòng của từ điển
chứa một hư từ. Từ điển hư từ được nhóm sử dụng là một công trình mã
nguồn mở.
33
Hình 3-3 Một vài ví dụ Từ điển hư từ
34
3.5. Mã hóa dữ liệu
3.5.1. Tổng quan về quá trình mã hóa dữ liệu
Mã hóa dữ liệu là chuyển văn bản được biểu diễn dạng chuỗi các từ
thành dạng vector. Các tài liệu được sắp xếp theo mức độ liên quan đến câu
truy vấn. Mục đích của việc mã hóa thành vector này là có thể biểu diễn tập
tập từ của một ngôn ngữ tự nhiên vào một không gian vector. Sử dụng không
gian vector này ta có thể tìm hiểu được mối liên hệ của các từ vựng thông qua
độ tương đồng của chúng. Có nhiều cách để tính độ tương đồng của câu truy
vấn nhưng phổ biến là cách tính độ tương đồng cosin. Trong cách này chúng
ta tính cos của góc giữa vector câu truy vấn và vector văn bản. Việc mã hóa
dữ liệu là quan trọng bởi vì máy có thể dễ dàng xử lý dữ liệu dạng vector hơn
là dạng văn bản thô. Hệ thống lúc này sẽ không tiếp nhận dữ liệu là những dữ
liệu văn bản, mà là không gian vector và các quy chiếu vào không gian vectơ
đó sẽ thể hiện như một tham chiếu của từ vựng trong ngôn ngữ tự nhiên. Để
mã hóa dữ liệu văn bản sử dụng cho các bước tiếp theo, chương trình đã sử
dụng mô hình Word2Vec [6][7].
3.5.2. Tổng quan về Word2Vec
Trong xử lý ngôn ngữ tự nhiên, việc biểu diễn một từ thành một vector
đóng một vai trò cực kỳ quan trọng. Nó lợi ích rất nhiều trong việc thể hiện sự
tương đồng, đối lập về ngữ nghĩa giữa các từ, giúp mô hình hóa vector cho 1
câu hay đoạn văn, tìm các câu có nghĩa tương đồng, v.v...
Word2Vec học trực tiếp word vector có số chiều thấp trong quá trình dự
đoán các từ xung quanh mỗi từ. Đặc điểm của phương pháp này là nhanh hơn
và có thể dễ dàng kết hợp một câu một văn bản mới hoặc thêm vào từ vựng.
Word2vec là một mạng neural 2 lớp với duy nhất 1 tầng ẩn, lấy đầu vào là một
corpus lớn và sinh ra không gian vector (với số chiều khoảng vài trăm), với
35
mỗi từ duy nhất trong corpus được gắn với một vector tương ứng trong không
gian.
Các word vectors được xác định trong không gian vector sao cho những
từ có chung ngữ cảnh trong corpus được đặt gần nhau trong không gian. Dự
đoán chính xác cao về ý nghĩa của một từ dựa trên những lần xuất hiện trước
đây.
Có 2 cách xây dựng word2vec:
Hình 3-4 Mô hình Word2Vec
- Sử dụng CBOW model: Ý tưởng chính của CBOW là dựa vào các
context word (hay các từ xung quanh) để dự đoán center word (từ ở giữa) hay
nói cách khác là sử dụng ngữ cảnh để dự đoán mục tiêu. CBOW có điểm
thuận lợi là training mô hình nhanh hơn so với mô hình skip-gram, thường
36
cho kết quả tốt hơn với frequence words (hay các từ thường xuất hiện trong
văn cảnh).
- Sử dụng skip-gram thì ngược lại với CBOW, hay nói cách khác là sử
dụng mục tiêu để đoán ngữ cảnh. Dùng target word để dự đoán các từ xung
quanh. Skip-gram huấn luyện chậm hơn. Thường làm việc khá tốt với các tập
data nhỏ, đặc biệt do đặc trưng của mô hình nên khả năng vector hóa cho các
từ ít xuất hiện tốt hơn CBOW.
Cả hai kiến trúc trên đều với mục đích là đoán từ. Tuy nhiên, công dụng
của nó khác nhau nên tùy vào tình huống cụ thể mà chúng ta chọn kiến trúc
phù hợp nhất.
Một lợi thế của mô hình Word2Vec là tính độ tương đồng giữa các từ.
Để tính độ tương đồng chúng ta dựa vào độ đo mà trong mô hình Word2Vec
định nghĩa là cos với giá trị cos nằm trong đoạn [0,1].
Trên không gian vectơ biểu diễn các từ, các từ càng tương đồng với nhau
thì giá trị cos càng lớn và trong không gian biểu diễn càng gần nhau. Ngược
lại, các từ ít tương đồng thì giá trị cos càng nhỏ và trong không gian biểu diễn
càng xa nhau.
Có 3 cải tiến cơ bản cho mô hình Word2Vec truyền thống:
- Xử lý các cặp từ thông dụng hoặc cụm từ như là một từ đơn.
- Loại bỏ các từ thường xuyên lặp lại để giảm số lượng các ví dụ huấn
luyện.
- Sửa đổi mục tiêu tối ưu hóa bằng một kỹ thuật gọi là “Negative
Sampling”.
37
3.5.3. Sử dụng Word2Vec để mã hóa dữ liệu
Hình 3-5 Mô hình sử dụng Word2Vec mã hóa dữ liệu
Dữ liệu đầu vào là văn bản đã xử lý ở bước tách từ.
Dữ liệu đầu ra là mô hình Word2Vec.
Trong mô hình này chúng ta sử dụng một vài tham số sau:
- minWordFrequency = 5. Nghĩa là nếu từ đó xuất hiện ít hơn 5 lần thì từ
đó sẽ không được học.
- layerSize = 300. Nghĩa là số chiều của vector từ là 300.
- windowSize= 5. Nghĩa là số lượng token mỗi lần “trượt” sẽ gom nhóm
lại.
3.6. Xây dựng mô hình áp dụng LSTM
Phương pháp học máy giám sát nổi bật với nhiều ưu điểm, mà cụ thể hơn
chính là mô hình dùng RNN và LSTM.
Phương pháp mô hình dùng RNN và LSTM nổi bật với ưu điểm là đầu
vào có thể là một câu hoặc là cả một đoạn văn bản. Ưu điểm này vốn phù hợp
với bài toán vì những dữ liệu từ mạng xã hội tương đối không theo một quy
luật hay có cú pháp cụ thể. Đầu vào của mô hình này chính là dữ liệu đã được
biểu diễn trong không gian vector của mô hình Word2Vec. Ngoài ra RNN và
LSTM được sử dụng vì mô hình này rất phù hợp với xử lý ngôn ngữ giàu tính
ngữ cảnh như tiếng Việt vì khả năng “ghi nhớ” các thông tin trước đó và khả
38
năng truy xuất được các từ phụ thuộc hiệu quả, hay nói ngắn gọn RNN và
LSTM xử lý ngôn ngữ dạng chuỗi ( ở đây là chuỗi các từ trong câu/ đoạn
văn) rất tốt.
3.6.1. Giới thiệu về RNN
RNN (Recurrent Neural Network) được biết đến là mạng nơ-ron hồi quy.
- Nghĩa là nó sẽ thực hiện cùng một tác vụ cho tất cả các phần tử của một
chuỗi với đầu ra phụ thuộc vào cả các phép tính trước đó. Hay nói cách khác,
nó có khả năng nhớ các thông tin được tính toán trước đó, điều mà các mạng
nơ-ron truyền thống chưa làm được.
- Một mạng nơ-ron hồi quy có thể được coi là nhiều bản sao chép của
cùng một mạng, trong đó mỗi đầu ra của mạng này là đầu vào của một mạng
sao chép khác.
- Có nhiều loại bài toán RNN như: one-to-one, one-to-many, many-to-
one, many-to-many. Ví dụ:
+ one-to-one: xác định cảm xúc của câu nói, ...
+ one-to-many: tìm chủ đề cho một bức ảnh, ...
+ many-to-one: xác định hành động trong video, ...
+ many-to-many: bài toán dịch văn bản, ...
39
Hình 3-6 Một mạng RNN và mở ra thời gian tính toán liên quan chuyển tiếp – (nguồn: Internet. sites.google.com/site/vncoder95/machine-learning/rnn-la- gi)
Trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP - Natural Language
Processing), đã ghi nhận được nhiều thành công của RNN cho nhiều vấn đề khác
nhau. Theo lý thuyết chúng ta thất RNN có thể nhớ được những dữ liệu trước
đó. Tuy nhiên, trên thực tế RNN chỉ có thể nhớ được những gì ở gần do sự
mất mát đạo hàm. Để khắc phục nhược điểm này, LSTM ra đời dựa trên
RNN.
3.6.2. Giới thiệu về mô hình LSTM
Mô hình phổ biến nhất của RNN là LSTM.
- LSTM (Long Short Term Memory) ra đời nhằm khắc phục yếu điểm
của RNN là có thể nhớ xa hơn.
- Thành phần chính của LSTM là cell state.
40
Hình 3-7 Mô hình LSTM – nguồn Internet
LSTM có khả năng bỏ bớt hoặc thêm vào các thông tin vào cell state
thông qua cấu trúc cổng (gates). Mỗi gate là một tầng sigmoid. Có 3 gate
trong mỗi LSTM.
- Gate thứ nhất:
+ Xác định xem thông tin có được lưu vào cell state hay không.
+ Nếu kết quả tính toán là 0 thì thông tin đầu ra của state trước sẽ bị bỏ
qua không được lưu vào cell state.
+ Ngược lại, nếu là 1 thì thông tin đầu ra của state trước sẽ được lưu vào
cell state.
- Gate thứ hai:
+ Xác định xem thông tin mới nào sẽ được lưu vào cell state.
+ Trong gate này, ngoài tầng sigmoid còn có thêm một hàm tanh để hỗ
trợ tính toán.
41
- Gate thứ ba: Xác định xem thông tin nào sẽ tác động tới đầu ra của
state.
- Áp dụng mô hình LSTM:
Ở state thứ t của mô hình LSTM:
Output: ct,ht, ta gọi c là cell state, h là hidden state.
Input: ct−1, ht−1, xt. Trong đó xt là input ở state thứ t của model. ct−1,ht−1
là output của layer trước. h đóng vai trò khá giống như s ở RNN, trong
Hình 3-8. Mô hình LSTM
khi c là điểm mới của LSTM.
Kí hiệu σ, tanh ý là bước đấy dùng sigma, tanh activation function. Phép
nhân ở đây là element-wise multiplication, phép cộng là cộng ma trận
ft,it,ot tương ứng với forget gate, input gate và output gate.
42
Nhận xét: 0 trong RNN. bước này giống hệt như tính st trong RNN. forget gate quyết định xem cần lấy bao nhiêu từ cell state trước và input gate sẽ quyết định lấy bao nhiêu từ input của state và hidden layer của layer trước. output gate quyết định xem cần lấy bao nhiêu từ cell state để trở thành output của hidden state. Ngoài ra ht cũng được dùng để tính ra output yt cho state t. khá giống với RNN, nên model có short term memory. Trong khi đó ct giống như một băng chuyền ở trên mô hình RNN, thông tin nào cần quan trọng và dùng ở sau sẽ được gửi vào và dùng khi cần nên có thể mang thông tin từ đi xa long term memory. Do đó mô hình LSTM có cả short term memory và long term memory. Hình 3-9 Mô hình xử lý vanishing gradient - LSTM chống vanishing gradient 43 Ta cũng áp dụng thuật toán back propagation through time cho LSTM tương tự như RNN. Thành phần chính gây là vanishing gradient trong RNN là: Tương tự trong LSTM ta quan tâm đến nên về cơ bản thì LSTM vẫn bị vanishing gradient nhưng bị ít hơn so với RNN. Hơn thế nữa, khi mang thông tin trên cell state thì ít khi cần phải quên giá trị cell cũ, nên ft ≈1 dẫn đến tránh được vanishing gradient. Do đó, LSTM được dùng phổ biến hơn RNN cho các bài toán thông tin dạng chuỗi phù hợp với yêu cầu của luận văn. 3.6.3. Quá trình huấn luyện của mạng LSTM Qua mục 3.6.2 đã trình bày kiến trúc và lý do LSTM có khả năng tránh vanishing gradient, trong mục này, quá trình huấn luyện của mạng LSTM được mô tả như sau: - Hàm chi phí (cost function): Cost function được sử dụng là một hàm L2-norm có công thức như sau: Hàm L2-norm cost function là tổng bình phương của của giá trị dự đoán và giá trị nhãn. Đạo hàm của cost function là: - Quá trình Forward: 44 Quá trình forward trong mạng LSTM được biểu diễn qua hình ảnh sau, các thông tin về các gate: output, hidden, forget,.. đã được lược bỏ để dễ quan sát hơn. Vào mỗi thời điểm T, một cell state 𝑐𝑇nhận giá trị 𝑥𝑇và hidden state ℎ𝑇−1 và đảm nhận tính toán hidden state ℎ𝑇 và cell state tiếp theo 𝑐𝑇+1. Hidden state ℎ𝑇 lúc này được đưa qua một (activation) layers để tính toán giá trị cost function 𝐶𝑇. Các giá trị của các gate được tính toán dựa trên các công thức sau: - Quá trình Backpropagation: 45 Quá trình Backpropagation trong mạng LSTM được biểu diễn qua hình ảnh sau. Dễ dàng nhận thấy, toàn bộ qúa trình này tương tự với quá trình Forward, tuy nhiên toàn bộ các dấu mũi tên đã được đảo ngược. Tại mỗi thời điểm T, cell state 𝑐𝑇sẽ nhận giá trị tích luỹ của đạo hàm cost function của hidden state ở thời điểm T+1 với giá trị của output state T+1. Từ đó, các giá trị đạo hàm của các gate thuộc cell state T sẽ được tính toán lại, dựa theo các công thức như sau. Đầu ra của cell state 𝑐𝑇 sẽ là một giá trị 𝑇−1 và sẽ được lặp lại như giá trị đầu vào của cell state 𝑐𝑇−1 tiếp theo. Giá trị của các gate được cập nhập theo các công thức sau: 46 Sau tính toán, các trọng số W, U, b được tính toán bằng cách tính tổng 𝑇 𝛿𝑊 = ∑ 𝛿𝑔𝑎𝑡𝑒𝑠𝑡 ⨂ 𝑥𝑡 𝑡=0 𝑇−1 𝛿𝑈 = ∑ 𝛿𝑔𝑎𝑡𝑒𝑠𝑡+1⨂ 𝑜𝑢𝑡𝑡 𝑡=0 𝑇 𝛿𝑏 = ∑ 𝛿𝑔𝑎𝑡𝑒𝑠𝑡+1 𝑡=0 Sau cùng, các trọng số được cập nhật thông qua hàm Stochastic thay đổi: 𝑊𝑛𝑒𝑤 = 𝑊𝑜𝑙𝑑 − 𝛿𝑊𝑜𝑙𝑑 Gradient Descent (SGD) với trọng số learning rate : 3.7. Sử dụng mô hình để huấn luyện phân tích quan điểm Quá trình huấn luyện này là xác định dữ liệu đầu vào mang màu sắc quan điểm nào. Trong phạm vi bài luận này, có ba lớp quan điểm để xác định là: Tích cực, Trung lập và Tiêu cực. Mô hình học máy cũng sẽ được áp dụng cho quá trình phân tích quan điểm này. Trong khóa luận này sử dụng Deep learning như một phương pháp để tìm khía cạnh bởi vì hiện nay nó là phương pháp phổ biến và phù hợp với những dữ liệu học đặc trưng. - Để huấn luyện được mô hình, tập dữ liệu huấn luyện sẽ được chia thành các tập con gồm positive (Tích cực), neutral (Trung lập) và negative (Tiêu cực). Tập dữ liệu huấn luyện này sẽ được đưa vào mô hình để huấn luyện. 47 Từ kết quả học được ở trên, tập dữ liệu thử nghiệm sẽ được đưa vào mô hình để kiểm thử kết quả học của máy từ đó đánh giá được chính xác của mô hình. Hình 3-10 Cấu trúc để huấn luyện và kiểm thử mô hình phân tích quan điểm 48 3.8. Kết chương Trên đây là những cách tiếp cận cụ thể để xử lý bài toán Phân tích quan điểm cho cho hệ thống Phân tích quan điểm cho các bài viết chính trị từ mạng xã hội sử dụng phương pháp học máy giám sát: tiếp cận theo từng giai đoạn xử lý bài toán và cách sử dụng các công cụ cũng như thư viện để hiện thực từng giai đoạn đó. Bên cạnh đó là những kiến thức tổng quát về các công cụ và thư viện được sử dụng cũng được trình bày trong chương này. Vậy làm thế nào để áp dụng và hiện thực chúng thành một chương trình cụ thể - Phân tích quan điểm cho cho hệ thống Phân tích quan điểm cho các bài viết chính trị từ mạng xã hội, sẽ được trình bày chi tiết và cụ thể trong chương tiếp theo. 49 Chương 4 . KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ 4.1. Mở đầu Như tại chương trên ta đã đưa ra các phương pháp tiếp cận và thuật toán ứng dụng để thực hiện bài toán Phân tích quan điểm. Tại chương này ta sẽ tiến hành thực nghiệm để đánh giá được kết quả đạt được của chương trình. Những kết quả đạt được sẽ là bước tiến cho các nghiên cứu tiếp theo. 4.2. Dữ liệu thực nghiệm (Dataset) Sau khi thực hiện phân loại các bài viết chính trị trên mạng xã hội ta thực hiện thu thập dữ liệu sử lý dữ liệu đã nêu ở trên giờ tiếp theo ta tiến hành thực nghiệm phân loại mô hình đánh giá quan điểm theo hướng Tích cực (Positive) Trung lập (Neutral) và Tiêu cực (Negative). 50 9000 7872 8000 6788 7000 6330 6000 5000 4000 3000 2000 1000 0 Tập huấn luyện Quan điểm chính trị Tích cực Trung lập Tiêu cực 4.2.1. Tập huấn luyện cho mô hình đánh giá quan điểm Tổng cộng Tích cực Trung lập Tiêu cực 20.990 7.872 6.330 6.788 Tập huấn
luyện
Tập huấn
luyện Quan
điểm chính trị Bảng 4-1 Bảng thống kê tập huấn luyện 51 4.2.2. Tập kiểm thử cho mô hình đánh giá quan điểm Áp dụng vào nguồn dữ liệu đã thu thập được tra tiến hành kiểm thử cho 1000 900 800 700 600 500 400 300 200 100 0 Tập kiểm thử
Quan điểm
chính trị Tích cực Trung lập Tiêu cực Tập dữ liệu quan điểm chính trị. Tổng cộng Tích cực Trung lập Tiêu cực 2.333 888 670 775 Tập kiểm
thử
Tập kiểm thử
Quan điểm
chính trị Bảng 4-2 Bảng thống kê tập kiểm thử 4.3. Thiết lập thực nghiệm Chương trình được tiến hành thực nghiệm trên máy tính có cấu hình: CPUs: i5-7300HQ 2.50GHz; Ram: 8Gb GPU: GeForce GTX1050; Hệ điều hành: Ubuntu 18.04 LTS. Ngôn ngữ lập trình được sử dụng: Python; Jupyter Notebook. - Các thư viện xử lý ngôn ngữ tiếng Việt : 52 + Thư viện xử lý ngôn ngữ tự nhiên Underthesea sử dụng cho giai đoạn tiền xử lý. + Thư viện và mô hình ngôn ngữ tiếng Việt Fasttex sử dụng cho giai đoạn Embedd dữ liệu ngôn ngữ tự nhiên. + Thư viện Numpy, thư viện Pandas. + Thư viện tensorflow.keras. - Triển khai môi trường và hệ thống. + Cài đặt môi trường Python. + Cài đặt Preferred Installer Program (PIP). + Cài đặt Jupyter Notebook. + Cài đặt môi trường ảo (virtual environment). + Cài đặt mô hình Word2Vec fastText. + Cài đặt package Keras sử dụng Tensorflow Backend. + Cài đặt các required package còn lại bằng file requirements.txt. + Cài đặt Flask (để thực hiện UI demo). 4.4. Phương pháp đánh giá 4.4.1. Phương pháp đánh giá Khi xây dựng mô hình, ta cần đánh giá để xem mô hình sử dụng có hiệu quả và so sánh với các mô hình khác. Phương pháp đánh giá mô hình được sử 53 dụng với kiển mô hình và bài toán này thường là Accuracy score (độ chính xác), Confusion matrix, ROC curve, Prection và Recall, F1-Score… Trong những bài toán phân loại lớp, sau khi đã xử lý dữ liệu và đưa vào mô hình học máy, đầu ra của mô hình sẽ là một vector xác suất tương ứng của từng lớp. Ta có thể đánh giá mức độ chính xác của mô hình thông qua chỉ số về accuracy (độ chính xác): là phần trăm các lớp đã phân loại đúng / tổng số dự đoán, thế nhưng đối với các lớp đã phân loại sai thì độ chính xác chưa thể hiện tốt được mối liên hệ giữa các lớp đúng/ sai. Chính vì thế, ngoài accuracy (độ chính xác), chúng ta sẽ sử dụng thêm một độ đo là Confusion Matrix. Confusion Matrix là một phương pháp đánh giá kết quả của những bài toán phân loại với việc xem xét cả những chỉ số về độ chính xác và độ bao quát của các dự đoán cho từng lớp. Một confusion matrix gồm 4 chỉ số sau đối với mỗi lớp phân loại. 4.4.2. Các độ do sử dụng Predicted as Positive Predicted as Negative Actual Positive
Actual Negative FN
TN TP
FP
Bảng 4-3 Thể hiện Confusion Matrix Một số ký hiệu được sử dụng trong tính toán các độ đo: Accuracy: kết quả độ chính xác TP: số lượng mẫu tích cực đúng TN: số lượng mẫu tiêu cực đúng FP: số lượng mẫu tích cực sai FN: số lượng mẫu tiêu cực sai 54 4.5. Kết quả thực nghiệm Từ kết quả của mô hình trên tập kiểm thử, tập Confusion Matrix như sau: Chú thích: Lớp trung lập: nhãn 0 Lớp tích cực: nhãn 1 Hình 4-1 Confusion Matrix của mô hình trên tập kiểm thử Lớp tiêu cực: nhãn 2 55 Hình 4-2 Normalized Confusion Matrix của mô hình trên tập kiểm thử - Accuracy Score tính toán được dựa trên Confusion Matrix: 0.75010. - Công thức tính Accuracy: Dùng tổng đường chéo của confusion matrix (tổng các trường hợp phân lớp đúng) chia tổng tất cả các trường hợp kiểm thử. Dựa trên quan sát của bảng Normalized Confusion Matrix trên, ta có thể nhận thấy kết quả phân lớp của các lớp đều ở mức chấp nhận được (>0.7). - Những mẫu thuộc lớp Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là 0.13 và 0.16). - Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực. 56 - Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại. - Chương trình được xây dựng thực nghiệm tại hệ thống sau: http://35.213.175.182:5005/ (Qua năm 2021 hệ thống này có thể thay đổi). Hình 4-3 Giao diện của Chương trình 57 Ví dụ về bình luận Tích cực và Tiêu cực: Bài viết trên trang facebook: Thông tin Chính phủ với nội dung liên quan đến tình hình phòng, chống dịch bệnh Covid – 19 Hình 4-4 Bài viết về liên quan phòng chống dịch bệnh Covid – 19. 58 Các bình luận: Hình 4-5 Một số bình luận liên quan đến bài viết 59 Khi đưa vào chương trình phân tích quan điểm chính trị từ mạng xã hội Hình 4-6 Đầu vào của chương trình Ở đây đầu vào của chương trình có thể cho ta điền trực tiếp câu văn, hay đoạn văn cần phân tích, sau đó bấm nút phân tích, ta sẽ có kết quả sau: Hình 4-7 Kết quả của đoạn bình luận được chương trình phân tích 60 Trên giao diện của chương trình cho ta thấy được kết quả tiền xử lý đầu vào của đoạn văn, kết quả xử lý đầu vào khi xử lý qua bộ từ điển vnTokenize, và quan trọng là phân tích được quan điểm bình luận của trên đã cho kết quả POSITIVE tức là bình luận trên ở quan điểm Tích cực. Cũng ở ví dụ này nhưng dữ liệu đầu vào có chiều hướng Tiêu cực Hình 4-8 Đầu vào của chương trình với bình luần có hướng Tiêu cực Sau khi phân tích, ta sẽ có kết quả như sau: 61 Hình 4-9 Kết quả của chương trình sau khi phân tích mang quan điểm Tiêu
cực Ta thấy kết quả của chương trình phân tích được quan điểm bình luận đã cho kết quả NEGATIVE tức là bình luận ở quan điểm Tiêu cực. 4.6. So sánh với một số phương pháp khác Để có sự nhận định khách quan trong việc áp dụng phương pháp LSTM
kết hợp Word2Vec. Ta tiến hành thực nghiệm với một số các phương pháp,
cụ thể như: Tên phương pháp Accuracy Score SVM + TF-IDF 0.8302 62 RNN + TF-IDF 0.6920 RNN + W2V 0.7442 LSTM + TF-IDF 0.7101 LSTM + W2V 0.7501 Bảng 4-4 Bảng so sánh một số phương pháp Các tiếp cận khác đã được nghiên cứu và thực hiện để so sánh kết quả thực nghiệm, bao gồm Support Vector Machine (SVM), mạng RNN cùng với mạng LSTM. Các phương pháp tiếp cận trên được kết hợp với Word Embedding lần lượt là TF-IDF (Term-Frequency Inverse Document Frequency) và Word2Vec. Dễ dàng nhận thấy khi sử dụng mô hình Word2Vec trên cùng một phương pháp cho ra kết quả cao hơn so với mô hình dùng TF-IDF bởi khả năng biểu diễn ngữ cảnh phong phú của nó. Mặc dù cùng là về cơ bản LSTM không khác mô hình truyền thống RNN nhưng cải tiến lớn nhất của mạng LSTM so với RNN là LSTM giải quyết vấn đề Vanishing/Exploding của RNN, và kết quả cho ta cũng thấy rõ được sự cãi tiến của sử dụng phương pháp LSTM với RNN. Ngoài ra, phương pháp tiếp cận sử dụng SVM kết hợp với TF-IDF cho ra kết quả ấn tượng (0.83) và cao hơn các phương pháp sử dụng RNN và LSTM kết hợp với Word2Vec. Tuy nhiên, có thể lý giải kết quả trên vì mô hình SVM thường có xu hướng hoạt động tốt hơn trên các tập dataset nhỏ và đơn giản, dữ liệu huấn luyện còn ít, chưa đa dạng; Câu Input có nguồn gốc từ mạng xã hội nên thường ngắn gọn nên khả năng không tận dụng nhiều sức mạnh, khả năng 'Long-Term' của LSTM. Trong tương lai, khi được cung cấp 63 thêm dữ liệu phù hợp, quy mô hơn các mô hình học sâu như RNN hay LSTM sẽ chắc chắn cải thiện hiệu suất. 4.7. Phân tích lỗi - Dữ liệu được sử dụng trong huấn luyện và kiểm thử hoàn toàn là dữ liệu thu thập từ mạng xã hội: mặc dù đã qua quá trình tiền xử lý, nhưng vẫn có thể có những mẫu không theo một chuẩn mực cú pháp, từ đó tạo thành các điểm nhiễu khi mô hình học. (Ví dụ: những câu quá ngắn; những câu không có dấu; câu có sử dụng tiếng nước ngoài; v.v…). - Sự đa nghĩa của tiếng Việt: cũng là một thách thức lớn với nghiên cứu này, đặc biệt với mạng xã hội do các trào lưu sử dụng từ mới, từ lóng, (những từ không có trong từ điển; …), câu có hàm ý mỉa mai, … xuất hiện cùng với những từ bình thường khiến dữ liệu bị nhiễu. - Sự bao hàm của chủ đề chính trị: Vì chính trị là một chủ đề tương đối lớn, dữ liệu khi thu thập cũng sẽ thuộc phạm trù của nhiều chủ đề con: cách vận hành của nhà nước; đường lối ngoại giao của nhà nước; bổ nhiệm nhân sự của nhà nước; hoạt động, chính sách; … Dẫn đến tập từ vựng của dữ liệu tương đối dàn trải, chưa cô đọng, ảnh hưởng đến độ chính xác của mô hình trong quá trình học. - Một số hướng giải quyết với các lỗi trên: + Tiếp cận các nguồn dữ liệu khác: có định dạng cấu trúc, ngữ nghĩa, và đa dạng hơn về hình thức từ các đơn vị, ban ngành như viện dư luận xã hội, ban tuyên giáo trung ương, cổng dữ liệu quốc gia, …. Những dữ liệu này có thể có thêm trọng số (đánh giá, thang điểm, …) nên nếu thu thập được, sẽ mang lại giá trị cao cho nghiên cứu. 64 + Kết hợp với các phương pháp khác: như đã trình bày tại các đề mục trên, ở các mô hình phân tích quan điểm, một phương pháp mang lại nhiều hứa hẹn là các mô hình học lai: kết hợp nhiều phương pháp nhằm mang đến kết quả tốt hơn. Đây cũng là một xu hướng mà nhiều nghiên cứu đang theo đuổi, hứa hẹn mang kết quả đáng mong chờ. 4.8. Nhận định và bàn luận 4.8.1. Nhận định Mô hình phân tích quan điểm, cảm xúc (tích cực, trung lập, tiêu cực) các bài viết tiếng Việt có nội dung liên quan đến chính trị đã thực hiện được trong quá trình nghiên cứu đề tài này: - Tìm hiểu, nghiên cứu về thực trạng vấn đề hiện tại, từ đó đưa ra được phát biểu của bài toán và lộ trình nghiên cứu thực hiện. - Nghiên cứu, tìm hiểu một số công trình trong và ngoài nước có liên quan từ đó học hỏi được nhiều kiến thức, kinh nghiệm trong các lĩnh vực: học máy, xử lý ngôn ngữ tự nhiên, dữ liệu lớn, v.v… áp dụng vào chương trình. - Phát triển, xây dựng hai bộ từ điển là từ điển Social Language và từ điển hư từ phục vụ cho quá trình tiền xử lý dữ liệu. Tuy nhiên chủ yếu dựa vào những kiến thức chủ quan và quá trình tìm kiếm trên Internet nên vẫn còn nhiều hạn chế và thiếu sót về từ vựng. - Thu thập dữ liệu liên quan đến các khía cạnh đề tài sử dụng, lên đến khoản 21 nghìn tài liệu bằng các công cụ lập trình. - Thực hiện tiến trình tiền xử lý dữ liệu ứng dụng hai bộ từ điển nêu trên, thư viện xử lý để thực hiện theo các tiến trình: chuẩn hóa dữ liệu, tách từ, loại bỏ hư từ. - Thực hiện mã hóa dữ liệu vào không gian vector theo mô hình Word2Vec. 65 - Xây dựng, phát triển hai mô hình sử dụng mạng nơ-ron RNN và cụ thể là mô hình LSTM ứng dụng cho mô hình phân tích quan điểm để phân tích quan điểm Tích cực, Trung lập hay Tiêu cực. - Thực hiện đánh giá các kết quả đạt được dựa trên dữ liệu ta có kết quả: + Những mẫu thuộc lớp Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là 0.13 và 0.16). + Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực. + Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại. 4.8.2. Bàn luận Theo kết quả đạt được thì định hướng phát triển về sau sẽ tốt hơn về giải thuật, dữ liệu và ứng dụng. Bên cạnh đề tài cho lĩnh vực chính trị chương trình sẽ có thể mở rộng cho các lĩnh vực khác như: văn hóa, thể thao, xã hội hoặc kết hợp nhiều lĩnh vực. Khả năng thu thập dữ sẽ được nâng lên, tạo được nguồn dữ liệu lớn hơn cho các hệ thống dữ liệu từ điển phân tích tiếng việt giúp tạo nguồn dữ liệu lớn, phân tích sâu hơn cho các chương trình có liên quan về sau. Từ đó kết quả sẽ đạt độ chính xác cao hơn. 4.9. Kết chương Các số liệu thể hiện bên trên là kết quả của quá trình thực nghiệm mô hình huấn luyện đã được xây dựng. Có thể kết quả thu được thực sự chưa như mong muốn nhưng đây là quá trình xây dựng chương trình. 66 Với độ chính xác khoảng 75% về cơ bản hệ thống đã đáp ứng được yêu cầu về phân tích quan điểm trong lĩnh vực chính trị. Từ đó đạt được mục tiêu là xây dựng một hệ thống Phân tích Quan điểm chính trị từ mạng xã hội. Với những gì đã thực hiện, bản thân cũng tích lũy được một số kinh nghiệm trong lĩnh vực Machine Learning, Deep Learning trên cơ sở đó việc đề ra các hướng để hoàn thiện và vận dụng vào các lĩnh vực khác nhau ngoài lĩnh vực chính trị của chương trình. 67 KẾT LUẬN VÀ KIẾN NGHỊ Qua thời gian thực hiện đề tài và kết quả đạt được của đề tài, bản thân nhận thấy đã đem lại lượng kiến thức lớn và có tính ứng dụng cao trong công việc hiện tại. Mặc dù hạn chế thời gian thực hiện, cùng với số lượng dữ liệu thu thập để thực hiện còn chỉ gói gọn trong một lĩnh vực chính trị và chưa nhiều chỉ mới khoản 21 nghìn từ mạng xã hội Facebook, bên cạnh đó làm quen với nguyên tắc gán nhãn cho ba phân lớp cho dữ liệu dùng cho chính trị và việc các mẫu kết quả phân loại còn có chút ít nhằm lẫn: Những mẫu thuộc lớp Trung lập có thể bị mô hình nhầm lẫn thành nhãn tích cực và nhãn tiêu cực (là 0.13 và 0.16); Những mẫu lớp Tích cực vẫn có một tỉ lệ không nhỏ (0.25) bị phân lớp sai thành mẫu tiêu cực; Những mẫu lớp Tiêu cực có tỉ lệ phân lớp chính xác cao hơn (0.83) và hiệu quả hơn so với 02 lớp còn lại. Nhưng kết quả của chương trình cũng nằm trong ngưỡng mong muốn. Chương trình sẽ tiếp tục được bỗ sung cơ sở dữ liệu cung như nâng cấp hơn nữa các thuật toán tăng khả năng training để đạt được kết quả ngày càng tốt hơn. Về mặt học thuật đề tài cũng đã có đưa ra được các nghiên cứu có liên quan gần với nội dung đề tài, nhưng cũng có nhiều nét riêng mà đề tại mạng lại cho thực tiễn của chương trình cũng như ngôn ngữ tiếng Việt Nam. Với tính ứng dụng thực tiễn chương trình sẽ tiếp tục được nghiên cứu mở rộng quy mô của chương trình ra nhiều lĩnh vực hơn nữa, thu thập thêm nhiều nguồn dữ liệu không chỉ của Facebook mà còn nhiều trang mạng xã hội hoặc các trang thông tin có tính tương tác cao, cũng như từng bước hình thành một chương trình có tính ứng dụng cao hơn trong tương lai không xa. 68 TÀI LIỆU THAM KHẢO Các luận văn/Luận án [1] Alexander Park et al (2015). Twitter as a Corpus for Sentiment Analysis and Opinion Mining, European Language Resources Association [2] Nguyễn Đăng Thành (2016). Phân tích cảm xúc trong giáo dục đại học qua các hông tin tiếng Việt trên web. [3] Trần Văn Tiến, Nguyễn Minh Trường (2017). Nghiên cứu kỹ thuật phân tích Cảm xúc ứng dụng vào cải tiến chất lượng đào tạo đại học, http://thuvien.uit.edu.vn/DigitalDocument/Detail?treeId=660&fileId=9266 [4] Quản Thành Thơ (2017). Phân tích cảm xúc tiếng Việt trong viễn cảnh Big Data: Hướng tiếp cận Deep Learning, https://www.slideshare.net/GrokkingVN/grokking-techtalk-18a-vietnamese- sentime nt-analysis-in-a-big-data-scenario-the-deep-learning-approach. [5] Hung T. Vo et al (2016). Topic classification and sentiment analysis for Vietnamese Education survey system, 92 https://www.researchgate.net/publication/303786096_Topic_classification_a nd_sen timent_analysis_for_Vietnamese_education_survey_system [6] Thor Pham Blog, Published: April 24, 2018 by Categories: Deep-learning, Tags: machine learning, python from: Các tài liệu từ internet/website: [7] https://mc.ai/word2vec-bieu-dien-tu-ngu-thong-qua-vector/ 69 [8] https://viblo.asia/ Tiếng Anh [9] AHMAD, Shakeel, et al. Detection and classification of social media-based extremist affiliations using sentiment analysis techniques. Human-centric Computing and Information Sciences, 2019, 9.1: 24. [10] KHAI TRAN, Thien; THI PHAN, Tuoi. Deep Learning Application to Ensemble Learning—The Simple, but Effective, Approach to Sentiment Classifying. Applied Sciences, 2019, 9.13: 2760. [11] Bang, T. S., Haruechaiyasak, C., & Sornlertlamvanich, V. (2015, November). Vietnamese sentiment analysis based on term feature selection approach. In Proceedings of the tenth international conference on knowledge, information and creativity support systems (KICSS2015), Phuket. [12] DOHAIHA, Hai Ha, et al. Deep learning for aspect-based sentiment analysis: a comparative review. Expert Systems With Applications, 2018. [13] MAI, Long; LE, Bac. Aspect-Based Sentiment Analysis of Vietnamese Texts with Deep Learning. In: Asian Conference on Intelligent Information and Database Systems. Springer, Cham, 2018. p. 149-158. [14] Vo Q. H., Nguyen, H. T., Le, B., & Nguyen, M. L. (2017, October). Multi-channel LSTM-CNN model for Vietnamese sentiment analysis. In 2017 9th international conference on knowledge and systems engineering (KSE) (pp. 24-29). IEEE. 70 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN 71 72 PHỤ LỤC 1. THƯ VIỆN XỬ LÝ NGÔN NGỮ TỰ NHIÊN UNDERTHESEA Là bộ các module Python, tập dữ liệu và hướng dẫn mã nguồn mở hỗ trợ nghiên cứu và phát triển trong Xử lý ngôn ngữ tự nhiên tiếng Việt. – Nguồn: https://underthesea.readthedocs.io/en/latest/ PHỤ LỤC 2. THƯ VIỆN VÀ MÔ HÌNH NGÔN NGỮ TIẾNG VIỆT FASTTEX FastText là một thư viện để học hiệu quả các cách biểu diễn từ và phân loại câu. FastText là một thư viện mã nguồn mở, miễn phí, nhẹ, cho phép người dùng tìm hiểu các cách biểu diễn văn bản và phân loại văn bản. Nó hoạt động trên phần cứng thông thường, tiêu chuẩn. Các mô hình sau đó có thể được giảm kích thước để phù hợp với các thiết bị di động. - Nguồn: https://github.com/facebookresearch/fastText.𝐸(𝑥, 𝑥̂) =
(𝑥 − 𝑥̂)2
2
𝜕𝑥𝐸(𝑥, 𝑥̂) = 𝑥 − 𝑥̂