SlideShare a Scribd company logo
3
Most read
4
Most read
8
Most read
ĐẠI HỌC BÁCH KHOA HÀ NỘI
KHOA TOÁN TIN
ĐỒ ÁN I
PHÂN TÍCH CẢM XÚC NGƯỜI DÙNG
Chuyên ngành: Hệ thống thông tin quản lý
Giảng viên hướng dẫn: Ths. Lê Quang Hòa
Sinh viên thực hiện: Lê Đức Việt
MSSV: 20216968
Lớp: Hệ thống thông tin quản lý 01 - K66
Ha Noi - 2024
LỜI CẢM ƠN
Lời đầu tiên, em xin gửi lời cảm ơn tới Ths. Lê Quang Hòa, giảng viên Bộ môn
Toán tin, Khoa Toán Tin, Đại học Bách khoa Hà Nội đã tận tình hướng dẫn và chỉ
bảo trong quá trình thực hiện đồ án.
Bên cạnh đó, em xin chân thành cảm ơn các thầy cô Khoa Toán Tin đã luôn quan
tâm và có những chỉ đạo sát sao trong suốt quá trình thực hiện đồ án.
Do còn nhiều thiếu xót về kiến thức, kỹ năng cũng như kinh nghiệm thực tế, bài
báo cáo của em không thể tránh khỏi những sai sót. Em rất mong nhận được những
ý kiến đóng góp, phê bình của quý thầy cô để bài báo cáo này ngày càng hoàn thiện
hơn. Quá trình thực hiện Đồ án I lần này đã làm cho em nhận ra giá trị của sự tự giác
và chủ động trong công việc. Em hiểu rằng chúng ta cần tự tìm hiểu, nghiên cứu và
rèn luyện kỹ năng mình còn thiếu sót. Em rất hy vọng rằng trong các dự án nghiên
cứu tiếp theo, em sẽ vẫn được hướng dẫn và đồng hành cùng thầy. Một lần nữa, em
xin bày tỏ lòng biết ơn sâu sắc và cảm kích đến sự tận tâm và hỗ trợ đắc lực của thầy,
đã giúp em vượt qua khó khăn và tiến bộ trong quá trình học tập.
Em xin chân thành cảm ơn!
Hà Nội, Ngày 17 tháng 4 năm 2024
Lê Đức Việt
1
Mục lục
Danh sách hình vẽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1 GIỚI THIỆU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1 Đặt vấn đề . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2 Lý do chọn đề tài . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Phát biểu bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Cấu trúc đồ án . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 CƠ SỞ LÝ THUYẾT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1 Xử lí ngôn ngữ tự nhiên . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.1 Khái niệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.2 Các bước xử lý . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.1.3 Thuật ngữ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Tổng quan về phân tích cảm xúc . . . . . . . . . . . . . . . . . . . . 11
2.2.1 Phân tích cảm xúc là gì? . . . . . . . . . . . . . . . . . . . . 11
2.2.2 Phân tích cảm xúc hoạt động thế nào? . . . . . . . . . . . . . 12
2.3 Tình hình nghiên cứu . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3 PHƯƠNG PHÁP TIẾP CẬN . . . . . . . . . . . . . . . . . . . . . . . 15
3.1 Mô hình BERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Các biến thể của BERT dành cho tiếng Việt . . . . . . . . . . . . . . 15
3.3 Kỹ thuật làm giàu dữ liệu (Data augmentation) . . . . . . . . . . . . 15
3.4 Thu thập dữ liệu và tiền xử lí dữ liệu . . . . . . . . . . . . . . . . . . 15
3.5 Áp dụng mô hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4 KẾT QUẢ THỰC NGHIỆM . . . . . . . . . . . . . . . . . . . . . . . 15
4.1 Kết quả . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.1.1 Thực nghiệm trên bài toán SA . . . . . . . . . . . . . . . . . 15
4.1.2 Thực nghiệm khi sử dụng bổ trợ mô hình ngôn ngữ (Language
Model) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.1.3 Đánh giá tính hiệu quả của kỹ thuật làm giàu dữ liệu . . . . . 15
5 Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2
Danh sách hình vẽ
1 2.1.3.1. Ví dụ về sự nhập nhằng trong cú pháp [13] . . . . . . . . . . 9
2 2.1.3.2. Information Extraction [4] . . . . . . . . . . . . . . . . . . . 10
3 2.1.3.3. Latent Semantic Analysis [14] . . . . . . . . . . . . . . . . . 10
4 2.1.3.4. Named Entity Recognition [12] . . . . . . . . . . . . . . . . 11
5 2.2.1.1. Biểu đồ cấp độ ngôn ngữ học [15] . . . . . . . . . . . . . . . 12
6 2.2.2.1. Phân loại kỹ thuật phân tích cảm xúc . . . . . . . . . . . . . 13
3
TÓM TẮT
Phân tích cảm xúc của người dùng là một vấn đề phổ biến trong lĩnh vực xử lý
ngôn ngữ tự nhiên. Bài toán bắt đầu bằng dữ liệu văn bản, trong đó thông tin về cảm
xúc có thể là tích cực, tiêu cực hoặc trung tính được phản ánh. Đây là một trong
những bài toán quan trọng, phức tạp trong việc sử dụng xử lý ngôn ngữ tự nhiên
(NLP) [11] và phân tích văn bản để xác định, trích xuất và định lượng một cách có hệ
thống các trạng thái và thông tin chủ quan. Tansfer learning (TL) là một nghiên cứu
về học máy tập trung vào việc lưu trữ kiến thức thu được trong khi giải quyết một
vấn đề và áp dụng nó vào một vấn đề khác nhưng có liên quan. Trong NLP, các kết
quả gần đây cũng chứng minh tính hiệu quả của các mô hình sử dụng đào tạo trước
về nhiệm vụ mô hình hóa ngôn ngữ. Các mô hình dựa trên học tập chuyển giao giúp
tăng nhanh sự hiểu biết về sắp xếp các từ và câu, trong đó ngữ nghĩa và kết nối dễ
dàng nắm bắt.
Trong đồ án này, tôi sẽ trình bày về lý thuyết và các phương pháp để giải quyết
bài toán phân tích cảm xúc. Đồng thời tôi sẽ trình bày kết quả từ quá trình nghiên
cứu tập trung vào việc áp dụng các kỹ thuật làm giàu dữ liệu và mô hình PhoBERT
vào bài toán Phân tích cảm xúc của người dùng trên đa dạng bộ dữ liệu với các văn
cảnh khác nhau, từ giáo dục đến việc sử dụng dịch vụ nhà hàng/khách sạn và mua
sắm trên các sàn thương mại điện tử. Trong tiến trình thực nghiệm, chúng tôi cũng
đã tiến hành đánh giá, so sánh với những kết quả tốt nhất ứng với mỗi dữ liệu.
4
1 GIỚI THIỆU
Phân tích cảm xúc đã được áp dụng rộng rãi đối với các tài liệu tiếng nói của
khách hàng, các đánh giá và phản hồi từ khách hàng, phương tiện truyền thông trực
tuyến và mạng xã hội, được áp dụng cho các lĩnh vực từ tiếp thị đến chăm sóc khách
hàng. Một nhiệm vụ cơ bản trong phân tích cảm xúc là đánh giá tính phân cực của
một văn bản nhất định ở cấp độ tài liệu, câu hoặc tính năng/khía cạnh — xác định
xem ý kiến được thể hiện trong một văn bản, một câu hoặc một tính năng/khía cạnh
của một thực thể là tích cực, tiêu cực hay trung lập. Phân tích cảm xúc dựa trên khía
cạnh nhằm xác định ý kiến hoặc tình cảm được thể hiện trên các tính năng hoặc khía
cạnh khác nhau của các thực thể, như điện thoại di động, dịch vụ nhà hàng, hoặc chất
lượng hình ảnh của máy ảnh. Mỗi tính năng hoặc khía cạnh là một thuộc tính hoặc
thành phần của một thực thể, ví dụ: màn hình của điện thoại di động, dịch vụ nhà
hàng, hoặc chất lượng hình ảnh của máy ảnh.
Sự phát triển gần đây của các công nghệ học máy, đặc biệt là xử lý ngôn ngữ tự
nhiên (NLP), đã cung cấp nhiều kỹ thuật khác nhau giúp mô hình hóa thông tin phức
tạp của ngôn ngữ con người. Mặc dù việc thiếu dữ liệu được gắn nhãn đã gây khó
khăn cho việc đào tạo các mô hình NLP, học chuyển giao đã được chứng minh là
một giải pháp hiệu quả trong nhiều nhiệm vụ, trong đó có phân tích tình cảm. BERT
(Bidi rectional Encoder Representations from Transformers), một phương pháp học
chuyển giao mới gần đây, đã mang lại nhiều kết quả đầy hứa hẹn trong nhiều nhiệm
vụ NLP khác nhau của ngôn ngữ tiếng Anh. Trong nghiên cứu này, chúng tôi muốn
xác định hiệu suất của BERT trong tiếng Việt, một ngôn ngữ với tài nguyên dữ liệu
thấp.
1.1 Đặt vấn đề
Trong những năm gần đây, với sự phát triển mạnh mẽ và phổ biến của Internet
cũng như nhu cầu ngày càng tăng của người tiêu dùng trong việc tham khảo các đánh
giá trước đó khi mua sắm trực tuyến, các trang web ngày nay đã phát triển để cho
phép người dùng chia sẻ trải nghiệm, đánh giá và phản hồi về các loại dịch vụ và sản
phẩm của các doanh nghiệp và tổ chức. Người tiêu dùng thường quyết định lựa chọn
sản phẩm hoặc dịch vụ dựa trên việc tham khảo các thông tin về sản phẩm, dịch vụ
cũng như phản hồi từ những người dùng khác. Khi tham khảo các đánh giá, phản hồi
từ người dùng khác, khách hàng thường có xu hướng đưa ra các quyết định lựa chọn
dịch vụ hoặc sản phẩm một cách tỉ mỉ và đáng tin cậy hơn. Đồng thời, các doanh
nghiệp, dịch vụ và tổ chức cũng thu thập thông tin phản hồi từ người dùng để cải
thiện và phát triển sản phẩm, dịch vụ của họ. Tuy nhiên, với lượng lớn các phản hồi
từ người dùng, việc quản lý và phân tích các thông tin này trở nên khó khăn. Do đó,
cần có một hệ thống có khả năng tự động phân tích và tóm tắt tất cả các phản hồi
này để khách hàng và các doanh nghiệp có thể tham khảo và đưa ra quyết định nhanh
chóng.
Hiện nay, các hệ thống phân tích phản hồi của người dùng trên các trang mạng
thường chỉ quan tâm đến các điểm đánh giá về sản phẩm, dịch vụ. Tuy nhiên, các
điểm đánh giá này không thể hiện đầy đủ mức độ hài lòng của người dùng qua các
câu văn, bình luận.
5
Vì vậy, một số hệ thống đã được phát triển để phân tích các bình luận của người
dùng. Trước khi khách hàng đặt hàng hoặc chọn nhà hàng cho các sự kiện, họ thường
chú ý đến phản hồi của những khách hàng trước đó để đưa ra quyết định chính xác.
Ngoài ra, với lĩnh vực nhà hàng, người tiêu dùng cũng quan tâm đến từng khía cạnh
cụ thể của vấn đề để đưa ra quyết định, chẳng hạn như chất lượng thức ăn, dịch vụ,
không gian, giá cả,... Bằng cách phân tích chi tiết các khía cạnh, chúng ta có thể tận
dụng được nhiều thông tin từ đánh giá của người dùng. Nhận thấy tầm quan trọng
của việc này, tôi cần một hệ thống có thể phân tích ý kiến theo khía cạnh của bình
luận người dùng trong lĩnh vực nhà hàng.
Ở Việt Nam, XLNNTN là môn học không mới nhưng chưa được phổ biến rộng
rãi và các số lượng nghiên cứu chuyên về tiếng Việt là rất ít. Nguyên nhân ngoài việc
số lượng người tìm hiểu về XLNNTN ở Việt Nam còn thấp, việc chính bản thân tiếng
Việt là một ngôn ngữ khó với rất nhiều bài toán cần giải quyết là một trong những
vấn đề chính khiến cho các nghiên cứu sinh, các lập trình viên khó có thể tiếp cận và
duy trì đam mê tìm hiểu. Tuy nhiên, lợi ích của xử lý ngôn ngữ tiếng Việt mang lại
là rất lớn, nó có thể ứng dụng trong hầu hết các lĩnh vực và đặc biệt là trong thời đại
Cách mạng 4.0 đang diễn ra mạnh mẽ ở Việt Nam. Cụ thể, chúng ta đang sống trong
kỷ nguyên số, là thời đại mà thông tin được lan truyền nhanh chóng và các thiết bị
thông minh ngày càng phổ biến. Do đó, việc ứng dụng XLNNTN vào thực tế là một
nhu cầu cấp thiết nhằm khai thác tối đa tiềm năng của ngôn ngữ tiếng Việt và phục
vụ cho sự phát triển của đất nước.
Hiện nay, bài toán phân tích ý kiến theo người dùng được quan tâm trong nhiều
lĩnh vực khác nhau, từ giáo dục đến khảo sát ý kiến xã hội và đặc biệt là trong lĩnh
vực dịch vụ và kinh doanh. Tuy nhiên, đối với tiếng Việt, chưa có nhiều nguồn dữ
liệu được xây dựng để phục vụ cho cộng đồng nghiên cứu.
1.2 Lý do chọn đề tài
Do nhu cầu phát triển của xã hội ngày càng tăng, nhất là về lĩnh vực kinh tế cũng
như công nghệ. Việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng loạt
các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản trị
quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh
giá của khách hàng về một sản phẩm nào đó, .... Việc dự đoán là cực kì quan trọng
vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Thị hiếu, sự quan tâm của
cộng đồng là yếu tố ảnh hưởng chính đến các sản phẩm như phim, sách, thiết bị điện
tử, .... Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn
từ phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm
một cách tự động để nhanh chóng nắm bắt được cảm nhận và thị hiếu của người tiêu
dùng để nâng cao khả năng cạnh tranh với đối thủ cạnh và thích nghi với môi trường
kinh doanh thường xuyên có biển động. Những thông tin này không chỉ hữu dụng
trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề
để xây dựng và phát triển sản phẩm.
Còn trong nghiên cứu, việc xây dựng hệ thống phân tích cảm xúc người dùng là
một bước tiến lớn xong công động xử lý ngôn ngữ tự nhiên, giúp giải quyết được
nhiều vấn đề đang mắc phải. Xây dựng mô hình giải quyết bài toán phân tích cảm
xúc người dùng.
6
1.3 Phát biểu bài toán
Trong nghiên cứu này, mục tiêu chính là tìm hiểu và nghiên cứu về việc phân tích
bình luận/đánh giá từ người dùng trên bốn bộ dữ liệu khác nhau. Bài toán chính là
xác định trạng thái cảm xúc từ các câu bình luận, với các trạng thái cảm xúc được
quan tâm bao gồm tích cực (positive), trung tính (neutral) và tiêu cực (negative).
Đầu vào của bài toán là các câu bình luận từ người dùng về dịch vụ, sản phẩm
trong nhà hàng, quán ăn... Đầu ra mong muốn là xác định trạng thái cảm xúc tương
ứng được đề cập trong câu bình luận của người dùng.
Trong đồ án này, tôi đã thử nghiệm nhằm tạo tiền đề cho việc áp dụng kỹ thuật
làm giàu dữ liệu trong lĩnh vực Xử lý ngôn ngữ tự nhiên nói chung và bài toán Phân
tích cảm xúc nói riêng.
1.4 Cấu trúc đồ án
PHẦN 1: GIỚI THIỆU
Chỉ ra ngu cầu thực tế và lí do chọn đề tài, phát biểu bài toán.
PHẦN 2: TỔNG QUAN
Giới thiệu về các khái niệm liên quan, bài toán xử lí ngôn ngữ tự nhiên, bài toán
phân tích cảm xúc người dùng, tình hình nghiên cứu cả trong và ngoài nước.
PHẦN 3: PHƯƠNG PHÁP TIẾP CẬN
Trình bày về cơ sở lý thuyết mô hình và các phương pháp sẽ được sử dụng để thực
nghiệm, các bước tiếp cận đến bài toán phân tích cảm xúc người dùng.
PHẦN 4: KẾT QUẢ THỰC NGHIỆM
Thử nghiệm và trình bày kết quả, thống kê kết quả đạt được. Nhận xét và đánh
giá mô hình.
7
2 CƠ SỞ LÝ THUYẾT
2.1 Xử lí ngôn ngữ tự nhiên
2.1.1 Khái niệm
Xử lý ngôn ngữ [11] là một lĩnh vực quan trọng trong xử lý thông tin, nơi dữ liệu
đầu vào thường là dữ liệu ngôn ngữ, bao gồm văn bản và âm thanh. Loại dữ liệu này
đang trở thành loại dữ liệu chính của con người và được lưu trữ dưới dạng điện tử.
Đặc điểm chung của chúng là không có cấu trúc hoặc chỉ có cấu trúc bán chặt chẽ,
không thể được lưu trữ dưới dạng bảng dữ liệu. Do đó, chúng ta cần phải xử lý chúng
để chuyển từ dạng không có cấu trúc thành dạng có thể hiểu được.
Xử lý ngôn ngữ tự nhiên (Natural Language Processing = NLP) [11] là một lĩnh
vực của trí tuệ nhân tạo và ngôn ngữ học tính toán, mục tiêu là tập trung vào việc
xử lý tương tác giữa con người và máy tính để máy tính có thể hiểu hoặc mô phỏng
được ngôn ngữ của con người.
Xử lý ngôn ngữ tự nhiên hướng dẫn máy tính thực hiện và hỗ trợ con người trong
các công việc liên quan đến ngôn ngữ, như dịch thuật, phân tích dữ liệu văn bản,
nhận diện tiếng nói, tìm kiếm thông tin và tóm tắt văn bản.
Xử lý ngôn ngữ tự nhiên có thể được chia ra thành hai nhánh lớn, không hoàn
toàn độc lập, bao gồm xử lý tiếng nói (speech processing) và xử lý văn bản (text
processing). Xử lý tiếng nói tập trung nghiên cứu, phát triển các thuật toán, chương
trình máy tính xử lý ngôn ngữ của con người ở dạng tiếng nói (dữ liệu âm thanh).
Các ứng dụng quan trọng của xử lý tiếng nói bao gồm nhận dạng tiếng nói và tổng
hợp tiếng nói. Nếu như nhận dạng tiếng nói là chuyển ngôn ngữ từ dạng tiếng nói
sang dạng văn bản thì ngược lại, tổng hợp tiếng nói chuyển ngôn ngữ từ dạng văn
bản thành tiếng nói. Xử lý văn bản tập trung vào phân tích dữ liệu văn bản. Các ứng
dụng quan trọng của xử lý văn bản bao gồm tìm kiếm và truy xuất thông tin, dịch
máy, tóm tắt văn bản tự động, hay kiểm lỗi chính tả tự động. Xử lý văn bản đôi khi
được chia tiếp thành hai nhánh nhỏ hơn bao gồm hiểu văn bản và sinh văn bản. Nếu
như hiểu liên quan tới các bài toán phân tích văn bản thì sinh liên quan tới nhiệm
vụ tạo ra văn bản mới như trong các ứng dụng về dịch máy hoặc tóm tắt văn bản tự
động.
2.1.2 Các bước xử lý
- Phân tích hình thái: Trong bước này, mỗi từ sẽ được phân tích và các ký tự không
phải là chữ (như dấu câu) sẽ được tách ra khỏi các từ. Trong tiếng Anh và nhiều ngôn
ngữ khác, các từ được phân tách bằng dấu cách. Tuy nhiên, trong tiếng Việt, dấu cách
được sử dụng để phân tách các tiếng (âm tiết) chứ không phải là từ. Tương tự với các
ngôn ngữ như tiếng Trung, tiếng Hàn, tiếng Nhật, phân tách từ trong tiếng Việt là
một công việc không hề đơn giản.
- Phân tích cú pháp: Dãy các từ sẽ được biến đổi thành các cấu trúc thể hiện sự
liên kết giữa các từ với nhau. Có thể có những dãy từ bị loại bỏ vì không tuân theo
các quy tắc ngữ pháp.
- Phân tích ngữ nghĩa: Thêm ngữ nghĩa vào các cấu trúc được tạo ra bởi bước
phân tích cú pháp.
8
- Tích hợp văn bản: Ngữ nghĩa của một câu có thể phụ thuộc vào các câu trước
đó, đồng thời cũng có thể ảnh hưởng đến các câu sau đó.
- Phân tích thực nghĩa: Cấu trúc thể hiện ý nghĩa của ngôn từ sẽ được diễn dịch
lại để xác định ý nghĩa thực sự của nó.
Tuy nhiên, ranh giới giữa 5 bước xử lý này cũng rất mong manh. Chúng có thể
được thực hiện từng bước một hoặc cùng một lúc - tùy thuộc vào thuật toán và ngữ
cảnh cụ thể.
2.1.3 Thuật ngữ
Token [4]: Trước khi bất kỳ quá trình xử lý thực sự nào có thể được thực hiện trên
văn bản đầu vào, nó cần được phân chia thành các đơn vị ngôn ngữ như từ, dấu câu
và số hoặc chữ và số. Các đơn vị này được công nhận là tokens.
Sentence [4]: Điều này đề cập đến một chuỗi các tokens được sắp xếp theo thứ
tự.
Tokenization [4]: Hoạt động tách một câu thành các mã thông báo cấu thành của
nó.
Nhập nhằng - Ambiguity [12] (Ở nhiều cấp độ: lexical - từ vựng, morphological
- hình vị, syntactic - cú pháp, semantic - ngữ nghĩa, domain - lĩnh vực). Ví dụ nhập
nhằng từ "đậu" có thể đại diện cho một hành động hoặc một loài thực vật trong câu
"Con ruồi đậu mâm xôi đậu".
Hình 1: 2.1.3.1. Ví dụ về sự nhập nhằng trong cú pháp [13]
Khử nhập nhằng thế đại từ [12] - Anaphora (Sự sử dụng đại từ để thay thế cho
một danh từ hoặc một nhóm từ khác). Ví dụ: "Con khỉ ăn chuối vì nó đói." Đại từ
"nó" thay thế cho "khỉ" hoặc "chuối".
Túi từ - Bag of Words [12]: Một mô hình thường được sử dụng trong phân loại
văn bản (Text Classification), biểu diễn thông tin dưới dạng tập hợp các từ và tần suất
xuất hiện của mỗi từ trong văn bản. Bag of Words thường được sử dụng như một đặc
trưng để huấn luyện các mô hình phân loại.
Part-of-speech [4] (POS) Tag: Một từ có thể được phân loại thành một hoặc
nhiều lớp từ vựng hoặc một phần của lời nói như Danh từ, Động từ, Tính từ và Bài
viết, để đặt tên cho một số. Thẻ POS là một biểu tượng đại diện cho một phạm trù từ
vựng như vậy - NN (Danh từ), VB (Động từ), JJ (Tính từ), AT (Bài viết). Một trong
những bộ thẻ lâu đời nhất và được sử dụng phổ biến nhất là bộ thẻ Brown Corpus.
9
Ngữ liệu [4] - Corpus/Corpora (tập dữ liệu ngôn ngữ): Là tập hợp các dữ liệu
ngôn ngữ thực tế, được sử dụng để xây dựng và kiểm tra các mô hình và giải thuật
trong xử lý ngôn ngữ tự nhiên. Có nhiều loại Corpora như ngữ liệu song ngữ, ngữ
liệu song song...
Explicit Semantic Analysis (ESA) [12] là một phương pháp giúp máy tính hiểu
được ý nghĩa của văn bản. ESA sử dụng các khái niệm từ WordNet để biểu diễn văn
bản dưới dạng một tập hợp các vectơ ngữ nghĩa.
Information Extraction [12] - là tiến trình rút trích ra các thông tin có cấu trúc
một cách tự động từ các nguồn dữ liệu không cấu trúc hay bán cấu trúc như các tài
liệu văn bản, các trang web...
Hình 2: 2.1.3.2. Information Extraction [4]
Phân tích cấu trúc - Lexical Analysis [4]: Các tập hợp gồm các từ và cụm từ
trong một ngôn ngữ được gọi là một bộ từ vựng của một ngôn ngữ.
Latent Dirichlet Allocation (LDA) [12]: Một kỹ thuật thuộc lớp các mô hình
Topic Modeling, ý tưởng của LDA dựa trên nguyên lý mỗi topic là phân bố các từ,
mỗi văn bản là sự trộn lẫn giữa nhiều topic, và mỗi từ phân bố vào một trong những
topic này.
Latent Semantic Analysis (LSA) [12]: Một kỹ thuật phân tích ngữ nghĩa được
sử dụng để tìm ra mối quan hệ giữa các từ và văn bản trong các tập dữ liệu lớn. LSA
giả sử rằng các từ có ý nghĩa tương tự sẽ xuất hiện trong các văn bản tương tự.
Hình 3: 2.1.3.3. Latent Semantic Analysis [14]
Phân tích hình thái - Morphological analysis [4]: Ngôn ngữ tự nhiên bao gồm
một số lượng rất lớn các từ được xây dựng dựa trên các khối xây dựng cơ bản được
10
gọi là hình thái (hoặc thân), các đơn vị ngôn ngữ nhỏ nhất có ý nghĩa. Phân tích hình
thái quan tâm đến việc khám phá và phân tích cấu trúc bên trong của các từ bằng
máy tính.
Phân tích cú pháp - Parsing [4]: Trong nhiệm vụ phân tích cú pháp, một trình
phân tích cú pháp xây dựng cây phân tích cú pháp đã cho một câu. Có một số trình
phân tích cú pháp giả định sự tồn tại của một tập hợp các quy tắc ngữ pháp để phân
tích cú pháp nhưng 28 trình phân tích cú pháp gần đây đủ thông minh để suy ra các
cây phân tích cú pháp trực tiếp từ dữ liệu đã cho bằng cách sử dụng các mô hình
thống kê phức tạp. Hầu hết các trình phân tích cú pháp cũng hoạt động trong một cài
đặt được giám sát và yêu cầu câu phải được gắn thẻ POS trước khi nó có thể được
phân tích cú pháp. Phân tích cú pháp thống kê là một lĩnh vực nghiên cứu tích cực
trong NLP.
Named Entity Recognition (NER) [12] - là tiến trình xác định và phân lọai các
phần tử trong văn bản vào các danh mục được định nghĩa trước như tên người, tổ
chức, địa điểm ...
Hình 4: 2.1.3.4. Named Entity Recognition [12]
Phân tích ngữ dụng - Pragmaties [12]: từ ”“sentence” trong phân tích văn phạm
có nghĩa là câu, trong luật pháp có nghĩa là án tù. Do vậy, ta cần xem xét toản bộ văn
bản để đưa ra ý nghĩa chính xác.
Tiền xứ lý dữ liệu - Pre-processing [12], xử lý sơ bộ văn bản: xóa bỏ những
kí tự, những mã điều khiển, những vùng không cần thiết cho hệ thẳng gồm: tách
đoạn/câu tử (paragraph/sentence/word segmentation), làm sạch (cleaning). tích hợp
(integreation), chuyên đổi (transformation).
2.2 Tổng quan về phân tích cảm xúc
2.2.1 Phân tích cảm xúc là gì?
Trong những năm gần đây, Phân tích cảm xúc (SA) còn được gọi là khai thác ý
kiến đã thu hút sự quan tâm đặc biệt từ cộng đồng nghiên cứu trong lĩnh vực xử lý
ngôn ngữ tự nhiên (NLP), cả trong và ngoài cộng đồng nghiên cứu ở nhiều quốc gia.
Đây là quá trình xác định và phân loại các cảm xúc khác nhau - ví dụ như tích cực,
tiêu cực hoặc trung tính - hoặc các trạng thái cảm xúc như vui, buồn, tức giận - để
hiểu thái độ của con người đối với một chủ thể cụ thể hoặc một vấn đề nhất định.
Phân tích cảm xúc cũng là một phần quan trọng trong lĩnh vực NLP. Nó không
chỉ có ý nghĩa lớn trong học thuật và nghiên cứu, mà còn đóng vai trò cực kỳ quan
11
trọng trong các ngành công nghiệp - đặc biệt là trong lĩnh vực dịch vụ, nơi việc nhận
biết hành vi và thái độ của khách hàng đối với sản phẩm và dịch vụ mà họ sử dụng
là vô cùng quan trọng. Tuy nhiên, mọi người thể hiện các cảm nhận của mình thông
qua ngôn ngữ tự nhiên vốn thường có sự nhập nhằng về ngữ nghĩa đã gây không ít
khó khăn trong việc xử lý thông tin. Bên cạnh đó, người dùng còn sử dụng các từ viết
tắt, từ lóng hay các kí hiệu biểu cảm như ‘=))’, ’:(’, ’>,<’, ... để thể hiện trạng thái
cảm xúc của họ.
Hiện nay, bài toán phân tích cảm xúc thường được thực hiện ở ba cấp độ chính:
cấp độ câu văn (sentence-level), cấp độ văn bản (document-level), và cấp độ khía
cạnh (aspect-level). Ở cấp độ câu văn, mục tiêu của bài toán là phân loại một câu văn
thành các lớp tiêu cực (negative), tích cực (positive), hoặc trung tính (neutral). Cấp
độ văn bản được sử dụng để xác định mức độ cảm xúc của một đoạn văn (bao gồm
hai hay nhiều câu văn) là tiêu cực, tích cực, hoặc trung tính. Và cấp độ khía cạnh
được sử dụng để xác định mức độ cảm xúc cho mỗi khía cạnh của thực thể được đề
cập trong một văn bản. Trong phạm vi của đồ án này, nghiên cứu sẽ tập trung chỉ vào
cấp độ câu văn.
Hình 5: 2.2.1.1. Biểu đồ cấp độ ngôn ngữ học [15]
Trong lĩnh vực NLP, bài toán phân tích cảm xúc thuộc về cả ngữ dụng học (Prag-
matics) và ngữ nghĩa học (Semantics). Vị trí của bài toán này trong lĩnh vực NLP có
thể được xem như một ứng dụng cụ thể trong lĩnh vực này, đóng vai trò quan trọng
trong việc hiểu và xử lý ngôn ngữ tự nhiên.
2.2.2 Phân tích cảm xúc hoạt động thế nào?
Có một cách tiếp cận để sử dụng phân tích tình cảm là xây dựng một từ vựng với
thông tin về những từ và cụm từ nào là tích cực và tiêu cực. Từ vựng này có thể biên
dịch thủ công hoặc được mua tự động. Việc chú thích từ vựng hoặc corpora thường
được thực hiện bằng tay và các bộ phân loại sau đó được đào tạo với các bộ tính năng
lớn để phân loại một loạt các từ hoặc cụm từ mới. Có những cách tiếp cận khác để
12
phân tích tình cảm tập trung vào việc khai thác các câu hoặc toàn bộ tài liệu, thay
vì phụ thuộc vào tính chẵn lẻ của các từ. Cách tiếp cận này thường hoạt động với
corpora của các tài liệu văn bản. Vấn đề thiết yếu với phân loại tài liệu (phân loại
phân cực) là nó phải xác định các đặc điểm tình cảm tổng thể của toàn bộ tài liệu,
trong khi tình cảm được thể hiện có thể được bao gồm chỉ trong một câu hoặc từ.
Mặt khác, tôi tìm thấy một cách tiếp cận khác trong việc khai thác tình cảm là
trên web. Khai thác ý kiến web nhằm mục đích trích xuất, tóm tắt và theo dõi các
khía cạnh khác nhau của thông tin chủ quan trên Web . Điều này có thể hữu ích cho
các công ty quảng cáo hoặc người theo dõi xu hướng. Phân tích tình cảm được sử
dụng rộng rãi cho các đánh giá trực tuyến và phương tiện truyền thông xã hội cho
nhiều ứng dụng khác nhau, từ tiếp thị đến dịch vụ khách hàng.
Các kỹ thuật Machine Learning được áp dụng cho các vấn đề phân tích cảm xúc
chia thành hai loại: (1) các mô hình tiêu chuẩn và (2) các mô hình học sâu. Các mô
hình truyền thống liên quan đến các thuật toán học máy truyền thống, như bộ phân
loại Naive Bayes, bộ phân loại entropy tối đa, và máy vector hỗ trợ (SVM). Những
thuật toán này nhận các đặc điểm từ ngữ, các đặc điểm dựa trên từ điển cảm xúc, các
phần từ loại, cũng như các tính từ và trạng từ làm đầu vào. Độ chính xác của các hệ
thống này phụ thuộc vào các đặc điểm được chọn. Các mô hình học sâu có thể cung
cấp hiệu suất cao hơn so với các phương pháp truyền thống. CNN, DNN và RNN là
những mô hình học sâu có thể được sử dụng cho phân tích cảm xúc. Những phương
pháp này xử lý các vấn đề phân loại ở mức tài liệu, cụm từ và mức khía cạnh. Phần
tiếp theo sẽ đề cập đến các phương pháp này của học sâu.
Hình 6: 2.2.2.1. Phân loại kỹ thuật phân tích cảm xúc
2.3 Tình hình nghiên cứu
Từ những năm 2000 trở đi, phân tích ý kiến và phân tích cảm xúc đã trở thành
một lĩnh vực thu hút sự quan tâm và phát triển của các nhà nghiên cứu, cũng như
13
được áp dụng trong thực tế. Ý tưởng về phân tích cảm xúc (sentiment analysis) được
giới thiệu lần đầu tiên trong một nghiên cứu của Nasukawa và Yi . Trong khi đó,
khái niệm phân tích ý kiến (opinion mining) được đề xuất đầu tiên trong một nghiên
cứu của Dave, Lawrence và Pennock. Tuy nhiên, nghiên cứu của Pang và Lillian Lee
[6] được coi là nền tảng cho sự phát triển của phân tích ý kiến, đã đạt được kết quả
đáng ghi nhận và đóng góp cho sự phát triển của lĩnh vực này. Các chủ đề nghiên cứu
trong phân tích cảm xúc rất đa dạng, bao gồm phân tích đánh giá phim, sản phẩm,
nhà hàng, món ăn và nhiều hơn nữa. Để giải quyết bài toán phân tích cảm xúc, các
nghiên cứu đã sử dụng các phương pháp như máy học, thống kê và phương pháp dựa
trên luật kết hợp với dữ liệu ngôn ngữ. Nhờ vào những nỗ lực này, các nghiên cứu
đã đạt được những tiến bộ đáng kể trong việc hiểu và phân tích cảm xúc trong ngôn
ngữ.Kể từ đó, bài toán này đã trở nên ngày càng được quan tâm và tiếp tục phát triển.
Với ngôn ngữ tiếng Việt, các nghiên cứu về phân tích cảm xúc câu vẫn đang tiếp
tục phát triển. Ví dụ, Kieu và Pham [7] đã giới thiệu một phương pháp phân loại
cảm xúc dành cho tiếng Việt, dựa trên hệ thống luật và mô tả các thực nghiệm trên
bộ dữ liệu đánh giá sản phẩm máy tính. Duyen và đồng nghiệp [8] đã sử dụng các
thuật toán máy học như SVMI, MEM để phân loại đánh giá khách sạn từ Agoda.
Van và đồng nghiệp [9] đã sử dụng SVM để phân loại các bình luận trên Facebook.
Tran và Phan [10] đã đưa ngôn ngữ bối cảnh vào câu để cung cấp thêm thông tin cho
phân tích cảm xúc. Các nghiên cứu này đóng góp vào việc nghiên cứu và phát triển
phân tích cảm xúc trong tiếng Việt. Ngoài ra, nhóm Nghiên Cứu VLSP cũng đã có
những nghiên cứu quan trọng, bên cạnh đó còn có các nghiên cứu sinh Việt Nam
tại JAIST. Tuy nhiên, nghiên cứu vẫn chưa đi đến mức độ hệ thống và chưa có định
hướng rõ ràng, hạn chế chỉ dừng lại ở cấp độ tiến sĩ, thạc sĩ và các bài báo nghiên
cứu khoa học có tính chất tìm hiểu. Và, hiện nay, các bộ dữ liệu về phân tích cảm xúc
người dùng đã dần được tập trung và xây dựng nhằm phục vụ cộng đồng nghiên cứu.
Điển hình, năm 2016, cộng đồng xử lý ngôn ngữ tự nhiên (Vietnamese Language and
Speech Processing- VLSP) đã tiến hành tổ chức cuộc thi phân tích cảm xúc người
dùng trên các phản hồi mua hàng bởi Huyen và các cộng sự . Bên cạnh đó, gần đây
nhất, AIVIVN, một nền tảng giúp tổ chức các cuộc thi machine learning cho cộng
đồng, đã giới thiệu bộ dữ liệu phân loại sắc thái bình luận trên các trang thương mại
điện tử
14
3 PHƯƠNG PHÁP TIẾP CẬN
3.1 Mô hình BERT
3.2 Các biến thể của BERT dành cho tiếng Việt
3.3 Kỹ thuật làm giàu dữ liệu (Data augmentation)
3.4 Thu thập dữ liệu và tiền xử lí dữ liệu
3.5 Áp dụng mô hình
4 KẾT QUẢ THỰC NGHIỆM
4.1 Kết quả
4.1.1 Thực nghiệm trên bài toán SA
4.1.2 Thực nghiệm khi sử dụng bổ trợ mô hình ngôn ngữ (Language Model)
4.1.3 Đánh giá tính hiệu quả của kỹ thuật làm giàu dữ liệu
15
5 Tài liệu tham khảo
Tài liệu
[1] Lê Si Lắc, "A Research on Sentiment Analysis", 2021.
[2] Agustini, "Sentiment Analysis on Social Media using Machine Learning-Based
Approach", June 2021.
[3] Shashank Kalluri, "Deep Learning Based Sentiment Analysis", January 2023.
[4] Doaa Mohey El-Din Mohamed Hussein, "Analyzing Scientific Papers Based on
Sentiment Analysis", June 2016.
[5] Ngoc C. Lê, Nguyen The Lam, Son Hong Nguyen, Duc Thanh Nguyen, "On
Vietnamese Sentiment Analysis: A Transfer Learning Method", July 2020.
[6] Bo Pang and Lillian Lee, "Opinion mining and Sentiment analysis", 2007.
[7] Binh Thanh Kieu and Son Bao Pham, "Sentiment analysis for Vietnamese", 2010.
[8] Nguyen Thi Duyen, Ngo Xuan Bach and Tu Minh Phuong, "An Empirical Study
on Sentiment analysis for Vietnamese", 2014.
[9] Vi Ngo Van, Minh Hoang Van, Tam Nguyen Thanh, "Sentiment analysis for Viet-
namese using Support Vector Machines with application on Facebook comments",
Proc. VLSP 2016.
[10] Thien Khai Tran and Tuoi Thi Phan, "Computing Sentiment Scores of Verb
Phrases for Vietnamese", 2016.
[11] Lê Thanh Hương, Bài giảng xử lý ngôn ngữ tự nhiên, Đại học Bách Khoa Hà
Nội.
[12] Sinh viên nghiên cứu khoa học Eureka, Phân tích cảm xúc trong Tiếng Việt,
2018
[13] FPT Digital, Xử lý ngôn ngữ tự nhiên: Công nghệ giúp máy tính hiểu và giao
tiếp với con người, 2020
[14] Jashijim, Latent Semantic Analysis , 2021
[15] Upen, Difference Between Semantics and Pragmatics , 2018
16

More Related Content

PDF
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
PDF
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
PDF
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
PDF
Luan van
PPTX
Nhom 7_Applying Sentiment Product Reviews and Visualization for BI Systems in...
PDF
Đề tài: Phương pháp trích sắp xếp các đặc trưng thể hiện quan điểm
PPTX
HD Slide Bao Cao Luan Van Tot Nghiep CNTT
DOC
Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...
Khóa luận nghiên cứu bài toán phân tích cảm xúc của người hùng 9166421
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Phân tích cảm xúc trong tiếng việt bằng phương pháp máy học.pdf
Luan van
Nhom 7_Applying Sentiment Product Reviews and Visualization for BI Systems in...
Đề tài: Phương pháp trích sắp xếp các đặc trưng thể hiện quan điểm
HD Slide Bao Cao Luan Van Tot Nghiep CNTT
Nghiên Cứu Ứng Dụng Các Kỹ Thuật Của Big Data Trong Hệ Thống Phát Hiện Sao Ch...

Similar to sentiment analysis using bert hugging face (20)

PPTX
DeepLearning_AspectbasedSentimentAnalysis.pptx
PDF
Luận văn Nghiên cứu kỹ thuật phân tích và trích rút thuộc tính tài liệu phục ...
DOC
Đồ Án Tốt Nghiệp Về Ứng Dụng Som Trong Khai Phá Dữ Liệu Văn Bản Tiếng Việt.doc
PDF
Báo cáo đồ án tốt nghiệp "Ứng dụng trí tuệ nhân tạo nhận dạng chữ viết tay xâ...
DOCX
KHAITHACDULIEU WEKA.docx
PDF
Luận văn: Xây dựng bộ lọc phát hiện các Website có nội dung xấu
PDF
Phân loại giới tính người dùng mạng xã hội dựa vào tin nhắn văn bản
PDF
Nhận dạng cảm xúc cho tiếng Việt nói.pdf
DOC
Đồ Án Tốt Nghiệp Khai Phá Dữ Liệu Với R.doc
DOCX
Luận Văn Khai Thác Quan Điểm Của Các Bình Luận Tiếng Anh Trên Mạng Xã Hội Sử ...
DOCX
Luận Văn Khai Thác Quan Điểm Của Các Bình Luận Tiếng Anh Trên Mạng Xã Hội Sử ...
PDF
Cá nhân hóa ứng dụng và dịch vụ di động hướng ngữ cảnh người dùng.pdf
PDF
Đề tài: Tìm hiểu về Maximum Entropy cho bài toán phân lớp, HAY
DOC
Nghiên Cứu Các Giải Pháp Tạo Nguồn Tài Nguyên Dữ Liệu Lớn Phục Vụ Xử Lý Ngôn ...
PDF
Xác định từ khóa cho văn bản trong hệ thống thu thập tin tức, HAY
PDF
Ứng dụng và dịch vụ di động hướng ngữ cảnh người dùng, HAY
PDF
Phương pháp phân tích ngữ nghĩa tiềm ẩn trong đối sánh văn bản
PDF
Đề tài: Phương pháp phân tích ngữ nghĩa trong đối sánh văn bản
PDF
3. Phân tích định tính.pdf
DOCX
Nguyen dinhnghi do-an
DeepLearning_AspectbasedSentimentAnalysis.pptx
Luận văn Nghiên cứu kỹ thuật phân tích và trích rút thuộc tính tài liệu phục ...
Đồ Án Tốt Nghiệp Về Ứng Dụng Som Trong Khai Phá Dữ Liệu Văn Bản Tiếng Việt.doc
Báo cáo đồ án tốt nghiệp "Ứng dụng trí tuệ nhân tạo nhận dạng chữ viết tay xâ...
KHAITHACDULIEU WEKA.docx
Luận văn: Xây dựng bộ lọc phát hiện các Website có nội dung xấu
Phân loại giới tính người dùng mạng xã hội dựa vào tin nhắn văn bản
Nhận dạng cảm xúc cho tiếng Việt nói.pdf
Đồ Án Tốt Nghiệp Khai Phá Dữ Liệu Với R.doc
Luận Văn Khai Thác Quan Điểm Của Các Bình Luận Tiếng Anh Trên Mạng Xã Hội Sử ...
Luận Văn Khai Thác Quan Điểm Của Các Bình Luận Tiếng Anh Trên Mạng Xã Hội Sử ...
Cá nhân hóa ứng dụng và dịch vụ di động hướng ngữ cảnh người dùng.pdf
Đề tài: Tìm hiểu về Maximum Entropy cho bài toán phân lớp, HAY
Nghiên Cứu Các Giải Pháp Tạo Nguồn Tài Nguyên Dữ Liệu Lớn Phục Vụ Xử Lý Ngôn ...
Xác định từ khóa cho văn bản trong hệ thống thu thập tin tức, HAY
Ứng dụng và dịch vụ di động hướng ngữ cảnh người dùng, HAY
Phương pháp phân tích ngữ nghĩa tiềm ẩn trong đối sánh văn bản
Đề tài: Phương pháp phân tích ngữ nghĩa trong đối sánh văn bản
3. Phân tích định tính.pdf
Nguyen dinhnghi do-an
Ad

Recently uploaded (15)

PDF
HỒ SƠ NĂNG LỰC CÔNG TY TNHH DUY NGUYỄN EVENT
PDF
So-tay-tu-vung-CMKTQT-IFRS. Sổ tay từ vựng
PPTX
White and Purple Modern Artificial Intelligence Presentation (1).pptx
PPT
i dont know cdzmnnnnnnnnnnnnnnnnnnnnnnnnnn
DOC
Thủ tục cấp chứng nhận xuất xứ C/O mẫu D
PDF
The OCE Advertising, Media & Event Agency Profile Business
PPTX
MKTQT-slide-sv.pptxsdfsdfdfsdfsdfaesesse
PPTX
Bài giảng lý thuyết ung thư cổ tử cung 02.23.(SV).pptx
PPTX
dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
PPT
Bai 2 - Mô hình nhận thức thái độ hành vi .ppt
PPT
C2 Sứ mệnh lịch sử của GCCN.ppt
PDF
slide Quản trị Marketing TV.pdf sđfsdfsdfsd
PPTX
+10 ĐIỂM CÔ LOAN76565765676567565656756576.pptx
PPTX
Các bước ĐÁNH GIÁ BSC KPI, bước 2 gồm những gì
PDF
Báo Phú Thọ: FPT Cloud chia sẻ lợi ích của điện toán đám mây đem lại
HỒ SƠ NĂNG LỰC CÔNG TY TNHH DUY NGUYỄN EVENT
So-tay-tu-vung-CMKTQT-IFRS. Sổ tay từ vựng
White and Purple Modern Artificial Intelligence Presentation (1).pptx
i dont know cdzmnnnnnnnnnnnnnnnnnnnnnnnnnn
Thủ tục cấp chứng nhận xuất xứ C/O mẫu D
The OCE Advertising, Media & Event Agency Profile Business
MKTQT-slide-sv.pptxsdfsdfdfsdfsdfaesesse
Bài giảng lý thuyết ung thư cổ tử cung 02.23.(SV).pptx
dffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Bai 2 - Mô hình nhận thức thái độ hành vi .ppt
C2 Sứ mệnh lịch sử của GCCN.ppt
slide Quản trị Marketing TV.pdf sđfsdfsdfsd
+10 ĐIỂM CÔ LOAN76565765676567565656756576.pptx
Các bước ĐÁNH GIÁ BSC KPI, bước 2 gồm những gì
Báo Phú Thọ: FPT Cloud chia sẻ lợi ích của điện toán đám mây đem lại
Ad

sentiment analysis using bert hugging face

  • 1. ĐẠI HỌC BÁCH KHOA HÀ NỘI KHOA TOÁN TIN ĐỒ ÁN I PHÂN TÍCH CẢM XÚC NGƯỜI DÙNG Chuyên ngành: Hệ thống thông tin quản lý Giảng viên hướng dẫn: Ths. Lê Quang Hòa Sinh viên thực hiện: Lê Đức Việt MSSV: 20216968 Lớp: Hệ thống thông tin quản lý 01 - K66 Ha Noi - 2024
  • 2. LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời cảm ơn tới Ths. Lê Quang Hòa, giảng viên Bộ môn Toán tin, Khoa Toán Tin, Đại học Bách khoa Hà Nội đã tận tình hướng dẫn và chỉ bảo trong quá trình thực hiện đồ án. Bên cạnh đó, em xin chân thành cảm ơn các thầy cô Khoa Toán Tin đã luôn quan tâm và có những chỉ đạo sát sao trong suốt quá trình thực hiện đồ án. Do còn nhiều thiếu xót về kiến thức, kỹ năng cũng như kinh nghiệm thực tế, bài báo cáo của em không thể tránh khỏi những sai sót. Em rất mong nhận được những ý kiến đóng góp, phê bình của quý thầy cô để bài báo cáo này ngày càng hoàn thiện hơn. Quá trình thực hiện Đồ án I lần này đã làm cho em nhận ra giá trị của sự tự giác và chủ động trong công việc. Em hiểu rằng chúng ta cần tự tìm hiểu, nghiên cứu và rèn luyện kỹ năng mình còn thiếu sót. Em rất hy vọng rằng trong các dự án nghiên cứu tiếp theo, em sẽ vẫn được hướng dẫn và đồng hành cùng thầy. Một lần nữa, em xin bày tỏ lòng biết ơn sâu sắc và cảm kích đến sự tận tâm và hỗ trợ đắc lực của thầy, đã giúp em vượt qua khó khăn và tiến bộ trong quá trình học tập. Em xin chân thành cảm ơn! Hà Nội, Ngày 17 tháng 4 năm 2024 Lê Đức Việt 1
  • 3. Mục lục Danh sách hình vẽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1 GIỚI THIỆU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.1 Đặt vấn đề . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.2 Lý do chọn đề tài . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.3 Phát biểu bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.4 Cấu trúc đồ án . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2 CƠ SỞ LÝ THUYẾT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1 Xử lí ngôn ngữ tự nhiên . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.1 Khái niệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.2 Các bước xử lý . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.3 Thuật ngữ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Tổng quan về phân tích cảm xúc . . . . . . . . . . . . . . . . . . . . 11 2.2.1 Phân tích cảm xúc là gì? . . . . . . . . . . . . . . . . . . . . 11 2.2.2 Phân tích cảm xúc hoạt động thế nào? . . . . . . . . . . . . . 12 2.3 Tình hình nghiên cứu . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3 PHƯƠNG PHÁP TIẾP CẬN . . . . . . . . . . . . . . . . . . . . . . . 15 3.1 Mô hình BERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2 Các biến thể của BERT dành cho tiếng Việt . . . . . . . . . . . . . . 15 3.3 Kỹ thuật làm giàu dữ liệu (Data augmentation) . . . . . . . . . . . . 15 3.4 Thu thập dữ liệu và tiền xử lí dữ liệu . . . . . . . . . . . . . . . . . . 15 3.5 Áp dụng mô hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4 KẾT QUẢ THỰC NGHIỆM . . . . . . . . . . . . . . . . . . . . . . . 15 4.1 Kết quả . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.1.1 Thực nghiệm trên bài toán SA . . . . . . . . . . . . . . . . . 15 4.1.2 Thực nghiệm khi sử dụng bổ trợ mô hình ngôn ngữ (Language Model) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.1.3 Đánh giá tính hiệu quả của kỹ thuật làm giàu dữ liệu . . . . . 15 5 Tài liệu tham khảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2
  • 4. Danh sách hình vẽ 1 2.1.3.1. Ví dụ về sự nhập nhằng trong cú pháp [13] . . . . . . . . . . 9 2 2.1.3.2. Information Extraction [4] . . . . . . . . . . . . . . . . . . . 10 3 2.1.3.3. Latent Semantic Analysis [14] . . . . . . . . . . . . . . . . . 10 4 2.1.3.4. Named Entity Recognition [12] . . . . . . . . . . . . . . . . 11 5 2.2.1.1. Biểu đồ cấp độ ngôn ngữ học [15] . . . . . . . . . . . . . . . 12 6 2.2.2.1. Phân loại kỹ thuật phân tích cảm xúc . . . . . . . . . . . . . 13 3
  • 5. TÓM TẮT Phân tích cảm xúc của người dùng là một vấn đề phổ biến trong lĩnh vực xử lý ngôn ngữ tự nhiên. Bài toán bắt đầu bằng dữ liệu văn bản, trong đó thông tin về cảm xúc có thể là tích cực, tiêu cực hoặc trung tính được phản ánh. Đây là một trong những bài toán quan trọng, phức tạp trong việc sử dụng xử lý ngôn ngữ tự nhiên (NLP) [11] và phân tích văn bản để xác định, trích xuất và định lượng một cách có hệ thống các trạng thái và thông tin chủ quan. Tansfer learning (TL) là một nghiên cứu về học máy tập trung vào việc lưu trữ kiến thức thu được trong khi giải quyết một vấn đề và áp dụng nó vào một vấn đề khác nhưng có liên quan. Trong NLP, các kết quả gần đây cũng chứng minh tính hiệu quả của các mô hình sử dụng đào tạo trước về nhiệm vụ mô hình hóa ngôn ngữ. Các mô hình dựa trên học tập chuyển giao giúp tăng nhanh sự hiểu biết về sắp xếp các từ và câu, trong đó ngữ nghĩa và kết nối dễ dàng nắm bắt. Trong đồ án này, tôi sẽ trình bày về lý thuyết và các phương pháp để giải quyết bài toán phân tích cảm xúc. Đồng thời tôi sẽ trình bày kết quả từ quá trình nghiên cứu tập trung vào việc áp dụng các kỹ thuật làm giàu dữ liệu và mô hình PhoBERT vào bài toán Phân tích cảm xúc của người dùng trên đa dạng bộ dữ liệu với các văn cảnh khác nhau, từ giáo dục đến việc sử dụng dịch vụ nhà hàng/khách sạn và mua sắm trên các sàn thương mại điện tử. Trong tiến trình thực nghiệm, chúng tôi cũng đã tiến hành đánh giá, so sánh với những kết quả tốt nhất ứng với mỗi dữ liệu. 4
  • 6. 1 GIỚI THIỆU Phân tích cảm xúc đã được áp dụng rộng rãi đối với các tài liệu tiếng nói của khách hàng, các đánh giá và phản hồi từ khách hàng, phương tiện truyền thông trực tuyến và mạng xã hội, được áp dụng cho các lĩnh vực từ tiếp thị đến chăm sóc khách hàng. Một nhiệm vụ cơ bản trong phân tích cảm xúc là đánh giá tính phân cực của một văn bản nhất định ở cấp độ tài liệu, câu hoặc tính năng/khía cạnh — xác định xem ý kiến được thể hiện trong một văn bản, một câu hoặc một tính năng/khía cạnh của một thực thể là tích cực, tiêu cực hay trung lập. Phân tích cảm xúc dựa trên khía cạnh nhằm xác định ý kiến hoặc tình cảm được thể hiện trên các tính năng hoặc khía cạnh khác nhau của các thực thể, như điện thoại di động, dịch vụ nhà hàng, hoặc chất lượng hình ảnh của máy ảnh. Mỗi tính năng hoặc khía cạnh là một thuộc tính hoặc thành phần của một thực thể, ví dụ: màn hình của điện thoại di động, dịch vụ nhà hàng, hoặc chất lượng hình ảnh của máy ảnh. Sự phát triển gần đây của các công nghệ học máy, đặc biệt là xử lý ngôn ngữ tự nhiên (NLP), đã cung cấp nhiều kỹ thuật khác nhau giúp mô hình hóa thông tin phức tạp của ngôn ngữ con người. Mặc dù việc thiếu dữ liệu được gắn nhãn đã gây khó khăn cho việc đào tạo các mô hình NLP, học chuyển giao đã được chứng minh là một giải pháp hiệu quả trong nhiều nhiệm vụ, trong đó có phân tích tình cảm. BERT (Bidi rectional Encoder Representations from Transformers), một phương pháp học chuyển giao mới gần đây, đã mang lại nhiều kết quả đầy hứa hẹn trong nhiều nhiệm vụ NLP khác nhau của ngôn ngữ tiếng Anh. Trong nghiên cứu này, chúng tôi muốn xác định hiệu suất của BERT trong tiếng Việt, một ngôn ngữ với tài nguyên dữ liệu thấp. 1.1 Đặt vấn đề Trong những năm gần đây, với sự phát triển mạnh mẽ và phổ biến của Internet cũng như nhu cầu ngày càng tăng của người tiêu dùng trong việc tham khảo các đánh giá trước đó khi mua sắm trực tuyến, các trang web ngày nay đã phát triển để cho phép người dùng chia sẻ trải nghiệm, đánh giá và phản hồi về các loại dịch vụ và sản phẩm của các doanh nghiệp và tổ chức. Người tiêu dùng thường quyết định lựa chọn sản phẩm hoặc dịch vụ dựa trên việc tham khảo các thông tin về sản phẩm, dịch vụ cũng như phản hồi từ những người dùng khác. Khi tham khảo các đánh giá, phản hồi từ người dùng khác, khách hàng thường có xu hướng đưa ra các quyết định lựa chọn dịch vụ hoặc sản phẩm một cách tỉ mỉ và đáng tin cậy hơn. Đồng thời, các doanh nghiệp, dịch vụ và tổ chức cũng thu thập thông tin phản hồi từ người dùng để cải thiện và phát triển sản phẩm, dịch vụ của họ. Tuy nhiên, với lượng lớn các phản hồi từ người dùng, việc quản lý và phân tích các thông tin này trở nên khó khăn. Do đó, cần có một hệ thống có khả năng tự động phân tích và tóm tắt tất cả các phản hồi này để khách hàng và các doanh nghiệp có thể tham khảo và đưa ra quyết định nhanh chóng. Hiện nay, các hệ thống phân tích phản hồi của người dùng trên các trang mạng thường chỉ quan tâm đến các điểm đánh giá về sản phẩm, dịch vụ. Tuy nhiên, các điểm đánh giá này không thể hiện đầy đủ mức độ hài lòng của người dùng qua các câu văn, bình luận. 5
  • 7. Vì vậy, một số hệ thống đã được phát triển để phân tích các bình luận của người dùng. Trước khi khách hàng đặt hàng hoặc chọn nhà hàng cho các sự kiện, họ thường chú ý đến phản hồi của những khách hàng trước đó để đưa ra quyết định chính xác. Ngoài ra, với lĩnh vực nhà hàng, người tiêu dùng cũng quan tâm đến từng khía cạnh cụ thể của vấn đề để đưa ra quyết định, chẳng hạn như chất lượng thức ăn, dịch vụ, không gian, giá cả,... Bằng cách phân tích chi tiết các khía cạnh, chúng ta có thể tận dụng được nhiều thông tin từ đánh giá của người dùng. Nhận thấy tầm quan trọng của việc này, tôi cần một hệ thống có thể phân tích ý kiến theo khía cạnh của bình luận người dùng trong lĩnh vực nhà hàng. Ở Việt Nam, XLNNTN là môn học không mới nhưng chưa được phổ biến rộng rãi và các số lượng nghiên cứu chuyên về tiếng Việt là rất ít. Nguyên nhân ngoài việc số lượng người tìm hiểu về XLNNTN ở Việt Nam còn thấp, việc chính bản thân tiếng Việt là một ngôn ngữ khó với rất nhiều bài toán cần giải quyết là một trong những vấn đề chính khiến cho các nghiên cứu sinh, các lập trình viên khó có thể tiếp cận và duy trì đam mê tìm hiểu. Tuy nhiên, lợi ích của xử lý ngôn ngữ tiếng Việt mang lại là rất lớn, nó có thể ứng dụng trong hầu hết các lĩnh vực và đặc biệt là trong thời đại Cách mạng 4.0 đang diễn ra mạnh mẽ ở Việt Nam. Cụ thể, chúng ta đang sống trong kỷ nguyên số, là thời đại mà thông tin được lan truyền nhanh chóng và các thiết bị thông minh ngày càng phổ biến. Do đó, việc ứng dụng XLNNTN vào thực tế là một nhu cầu cấp thiết nhằm khai thác tối đa tiềm năng của ngôn ngữ tiếng Việt và phục vụ cho sự phát triển của đất nước. Hiện nay, bài toán phân tích ý kiến theo người dùng được quan tâm trong nhiều lĩnh vực khác nhau, từ giáo dục đến khảo sát ý kiến xã hội và đặc biệt là trong lĩnh vực dịch vụ và kinh doanh. Tuy nhiên, đối với tiếng Việt, chưa có nhiều nguồn dữ liệu được xây dựng để phục vụ cho cộng đồng nghiên cứu. 1.2 Lý do chọn đề tài Do nhu cầu phát triển của xã hội ngày càng tăng, nhất là về lĩnh vực kinh tế cũng như công nghệ. Việc phân tích cảm xúc trong văn bản được ứng dụng trong hàng loạt các vấn đề như: quản trị thương hiệu doanh nghiệp, thương hiệu sản phẩm, quản trị quan hệ khách hàng, khảo sát ý kiến xã hội học hay dễ hiểu hơn là phân tích đánh giá của khách hàng về một sản phẩm nào đó, .... Việc dự đoán là cực kì quan trọng vì ý kiến của người dùng ngày càng trở nên có giá trị hơn. Thị hiếu, sự quan tâm của cộng đồng là yếu tố ảnh hưởng chính đến các sản phẩm như phim, sách, thiết bị điện tử, .... Do đó, vấn đề này được sự quan tâm không chỉ từ các nhà nghiên cứu mà còn từ phía các công ty. Họ cần một hệ thống phân tích ý kiến khách hàng về sản phẩm một cách tự động để nhanh chóng nắm bắt được cảm nhận và thị hiếu của người tiêu dùng để nâng cao khả năng cạnh tranh với đối thủ cạnh và thích nghi với môi trường kinh doanh thường xuyên có biển động. Những thông tin này không chỉ hữu dụng trong tiếp thị, xếp hạng đánh giá sản phẩm mà còn hỗ trợ trong việc nhận biết vấn đề để xây dựng và phát triển sản phẩm. Còn trong nghiên cứu, việc xây dựng hệ thống phân tích cảm xúc người dùng là một bước tiến lớn xong công động xử lý ngôn ngữ tự nhiên, giúp giải quyết được nhiều vấn đề đang mắc phải. Xây dựng mô hình giải quyết bài toán phân tích cảm xúc người dùng. 6
  • 8. 1.3 Phát biểu bài toán Trong nghiên cứu này, mục tiêu chính là tìm hiểu và nghiên cứu về việc phân tích bình luận/đánh giá từ người dùng trên bốn bộ dữ liệu khác nhau. Bài toán chính là xác định trạng thái cảm xúc từ các câu bình luận, với các trạng thái cảm xúc được quan tâm bao gồm tích cực (positive), trung tính (neutral) và tiêu cực (negative). Đầu vào của bài toán là các câu bình luận từ người dùng về dịch vụ, sản phẩm trong nhà hàng, quán ăn... Đầu ra mong muốn là xác định trạng thái cảm xúc tương ứng được đề cập trong câu bình luận của người dùng. Trong đồ án này, tôi đã thử nghiệm nhằm tạo tiền đề cho việc áp dụng kỹ thuật làm giàu dữ liệu trong lĩnh vực Xử lý ngôn ngữ tự nhiên nói chung và bài toán Phân tích cảm xúc nói riêng. 1.4 Cấu trúc đồ án PHẦN 1: GIỚI THIỆU Chỉ ra ngu cầu thực tế và lí do chọn đề tài, phát biểu bài toán. PHẦN 2: TỔNG QUAN Giới thiệu về các khái niệm liên quan, bài toán xử lí ngôn ngữ tự nhiên, bài toán phân tích cảm xúc người dùng, tình hình nghiên cứu cả trong và ngoài nước. PHẦN 3: PHƯƠNG PHÁP TIẾP CẬN Trình bày về cơ sở lý thuyết mô hình và các phương pháp sẽ được sử dụng để thực nghiệm, các bước tiếp cận đến bài toán phân tích cảm xúc người dùng. PHẦN 4: KẾT QUẢ THỰC NGHIỆM Thử nghiệm và trình bày kết quả, thống kê kết quả đạt được. Nhận xét và đánh giá mô hình. 7
  • 9. 2 CƠ SỞ LÝ THUYẾT 2.1 Xử lí ngôn ngữ tự nhiên 2.1.1 Khái niệm Xử lý ngôn ngữ [11] là một lĩnh vực quan trọng trong xử lý thông tin, nơi dữ liệu đầu vào thường là dữ liệu ngôn ngữ, bao gồm văn bản và âm thanh. Loại dữ liệu này đang trở thành loại dữ liệu chính của con người và được lưu trữ dưới dạng điện tử. Đặc điểm chung của chúng là không có cấu trúc hoặc chỉ có cấu trúc bán chặt chẽ, không thể được lưu trữ dưới dạng bảng dữ liệu. Do đó, chúng ta cần phải xử lý chúng để chuyển từ dạng không có cấu trúc thành dạng có thể hiểu được. Xử lý ngôn ngữ tự nhiên (Natural Language Processing = NLP) [11] là một lĩnh vực của trí tuệ nhân tạo và ngôn ngữ học tính toán, mục tiêu là tập trung vào việc xử lý tương tác giữa con người và máy tính để máy tính có thể hiểu hoặc mô phỏng được ngôn ngữ của con người. Xử lý ngôn ngữ tự nhiên hướng dẫn máy tính thực hiện và hỗ trợ con người trong các công việc liên quan đến ngôn ngữ, như dịch thuật, phân tích dữ liệu văn bản, nhận diện tiếng nói, tìm kiếm thông tin và tóm tắt văn bản. Xử lý ngôn ngữ tự nhiên có thể được chia ra thành hai nhánh lớn, không hoàn toàn độc lập, bao gồm xử lý tiếng nói (speech processing) và xử lý văn bản (text processing). Xử lý tiếng nói tập trung nghiên cứu, phát triển các thuật toán, chương trình máy tính xử lý ngôn ngữ của con người ở dạng tiếng nói (dữ liệu âm thanh). Các ứng dụng quan trọng của xử lý tiếng nói bao gồm nhận dạng tiếng nói và tổng hợp tiếng nói. Nếu như nhận dạng tiếng nói là chuyển ngôn ngữ từ dạng tiếng nói sang dạng văn bản thì ngược lại, tổng hợp tiếng nói chuyển ngôn ngữ từ dạng văn bản thành tiếng nói. Xử lý văn bản tập trung vào phân tích dữ liệu văn bản. Các ứng dụng quan trọng của xử lý văn bản bao gồm tìm kiếm và truy xuất thông tin, dịch máy, tóm tắt văn bản tự động, hay kiểm lỗi chính tả tự động. Xử lý văn bản đôi khi được chia tiếp thành hai nhánh nhỏ hơn bao gồm hiểu văn bản và sinh văn bản. Nếu như hiểu liên quan tới các bài toán phân tích văn bản thì sinh liên quan tới nhiệm vụ tạo ra văn bản mới như trong các ứng dụng về dịch máy hoặc tóm tắt văn bản tự động. 2.1.2 Các bước xử lý - Phân tích hình thái: Trong bước này, mỗi từ sẽ được phân tích và các ký tự không phải là chữ (như dấu câu) sẽ được tách ra khỏi các từ. Trong tiếng Anh và nhiều ngôn ngữ khác, các từ được phân tách bằng dấu cách. Tuy nhiên, trong tiếng Việt, dấu cách được sử dụng để phân tách các tiếng (âm tiết) chứ không phải là từ. Tương tự với các ngôn ngữ như tiếng Trung, tiếng Hàn, tiếng Nhật, phân tách từ trong tiếng Việt là một công việc không hề đơn giản. - Phân tích cú pháp: Dãy các từ sẽ được biến đổi thành các cấu trúc thể hiện sự liên kết giữa các từ với nhau. Có thể có những dãy từ bị loại bỏ vì không tuân theo các quy tắc ngữ pháp. - Phân tích ngữ nghĩa: Thêm ngữ nghĩa vào các cấu trúc được tạo ra bởi bước phân tích cú pháp. 8
  • 10. - Tích hợp văn bản: Ngữ nghĩa của một câu có thể phụ thuộc vào các câu trước đó, đồng thời cũng có thể ảnh hưởng đến các câu sau đó. - Phân tích thực nghĩa: Cấu trúc thể hiện ý nghĩa của ngôn từ sẽ được diễn dịch lại để xác định ý nghĩa thực sự của nó. Tuy nhiên, ranh giới giữa 5 bước xử lý này cũng rất mong manh. Chúng có thể được thực hiện từng bước một hoặc cùng một lúc - tùy thuộc vào thuật toán và ngữ cảnh cụ thể. 2.1.3 Thuật ngữ Token [4]: Trước khi bất kỳ quá trình xử lý thực sự nào có thể được thực hiện trên văn bản đầu vào, nó cần được phân chia thành các đơn vị ngôn ngữ như từ, dấu câu và số hoặc chữ và số. Các đơn vị này được công nhận là tokens. Sentence [4]: Điều này đề cập đến một chuỗi các tokens được sắp xếp theo thứ tự. Tokenization [4]: Hoạt động tách một câu thành các mã thông báo cấu thành của nó. Nhập nhằng - Ambiguity [12] (Ở nhiều cấp độ: lexical - từ vựng, morphological - hình vị, syntactic - cú pháp, semantic - ngữ nghĩa, domain - lĩnh vực). Ví dụ nhập nhằng từ "đậu" có thể đại diện cho một hành động hoặc một loài thực vật trong câu "Con ruồi đậu mâm xôi đậu". Hình 1: 2.1.3.1. Ví dụ về sự nhập nhằng trong cú pháp [13] Khử nhập nhằng thế đại từ [12] - Anaphora (Sự sử dụng đại từ để thay thế cho một danh từ hoặc một nhóm từ khác). Ví dụ: "Con khỉ ăn chuối vì nó đói." Đại từ "nó" thay thế cho "khỉ" hoặc "chuối". Túi từ - Bag of Words [12]: Một mô hình thường được sử dụng trong phân loại văn bản (Text Classification), biểu diễn thông tin dưới dạng tập hợp các từ và tần suất xuất hiện của mỗi từ trong văn bản. Bag of Words thường được sử dụng như một đặc trưng để huấn luyện các mô hình phân loại. Part-of-speech [4] (POS) Tag: Một từ có thể được phân loại thành một hoặc nhiều lớp từ vựng hoặc một phần của lời nói như Danh từ, Động từ, Tính từ và Bài viết, để đặt tên cho một số. Thẻ POS là một biểu tượng đại diện cho một phạm trù từ vựng như vậy - NN (Danh từ), VB (Động từ), JJ (Tính từ), AT (Bài viết). Một trong những bộ thẻ lâu đời nhất và được sử dụng phổ biến nhất là bộ thẻ Brown Corpus. 9
  • 11. Ngữ liệu [4] - Corpus/Corpora (tập dữ liệu ngôn ngữ): Là tập hợp các dữ liệu ngôn ngữ thực tế, được sử dụng để xây dựng và kiểm tra các mô hình và giải thuật trong xử lý ngôn ngữ tự nhiên. Có nhiều loại Corpora như ngữ liệu song ngữ, ngữ liệu song song... Explicit Semantic Analysis (ESA) [12] là một phương pháp giúp máy tính hiểu được ý nghĩa của văn bản. ESA sử dụng các khái niệm từ WordNet để biểu diễn văn bản dưới dạng một tập hợp các vectơ ngữ nghĩa. Information Extraction [12] - là tiến trình rút trích ra các thông tin có cấu trúc một cách tự động từ các nguồn dữ liệu không cấu trúc hay bán cấu trúc như các tài liệu văn bản, các trang web... Hình 2: 2.1.3.2. Information Extraction [4] Phân tích cấu trúc - Lexical Analysis [4]: Các tập hợp gồm các từ và cụm từ trong một ngôn ngữ được gọi là một bộ từ vựng của một ngôn ngữ. Latent Dirichlet Allocation (LDA) [12]: Một kỹ thuật thuộc lớp các mô hình Topic Modeling, ý tưởng của LDA dựa trên nguyên lý mỗi topic là phân bố các từ, mỗi văn bản là sự trộn lẫn giữa nhiều topic, và mỗi từ phân bố vào một trong những topic này. Latent Semantic Analysis (LSA) [12]: Một kỹ thuật phân tích ngữ nghĩa được sử dụng để tìm ra mối quan hệ giữa các từ và văn bản trong các tập dữ liệu lớn. LSA giả sử rằng các từ có ý nghĩa tương tự sẽ xuất hiện trong các văn bản tương tự. Hình 3: 2.1.3.3. Latent Semantic Analysis [14] Phân tích hình thái - Morphological analysis [4]: Ngôn ngữ tự nhiên bao gồm một số lượng rất lớn các từ được xây dựng dựa trên các khối xây dựng cơ bản được 10
  • 12. gọi là hình thái (hoặc thân), các đơn vị ngôn ngữ nhỏ nhất có ý nghĩa. Phân tích hình thái quan tâm đến việc khám phá và phân tích cấu trúc bên trong của các từ bằng máy tính. Phân tích cú pháp - Parsing [4]: Trong nhiệm vụ phân tích cú pháp, một trình phân tích cú pháp xây dựng cây phân tích cú pháp đã cho một câu. Có một số trình phân tích cú pháp giả định sự tồn tại của một tập hợp các quy tắc ngữ pháp để phân tích cú pháp nhưng 28 trình phân tích cú pháp gần đây đủ thông minh để suy ra các cây phân tích cú pháp trực tiếp từ dữ liệu đã cho bằng cách sử dụng các mô hình thống kê phức tạp. Hầu hết các trình phân tích cú pháp cũng hoạt động trong một cài đặt được giám sát và yêu cầu câu phải được gắn thẻ POS trước khi nó có thể được phân tích cú pháp. Phân tích cú pháp thống kê là một lĩnh vực nghiên cứu tích cực trong NLP. Named Entity Recognition (NER) [12] - là tiến trình xác định và phân lọai các phần tử trong văn bản vào các danh mục được định nghĩa trước như tên người, tổ chức, địa điểm ... Hình 4: 2.1.3.4. Named Entity Recognition [12] Phân tích ngữ dụng - Pragmaties [12]: từ ”“sentence” trong phân tích văn phạm có nghĩa là câu, trong luật pháp có nghĩa là án tù. Do vậy, ta cần xem xét toản bộ văn bản để đưa ra ý nghĩa chính xác. Tiền xứ lý dữ liệu - Pre-processing [12], xử lý sơ bộ văn bản: xóa bỏ những kí tự, những mã điều khiển, những vùng không cần thiết cho hệ thẳng gồm: tách đoạn/câu tử (paragraph/sentence/word segmentation), làm sạch (cleaning). tích hợp (integreation), chuyên đổi (transformation). 2.2 Tổng quan về phân tích cảm xúc 2.2.1 Phân tích cảm xúc là gì? Trong những năm gần đây, Phân tích cảm xúc (SA) còn được gọi là khai thác ý kiến đã thu hút sự quan tâm đặc biệt từ cộng đồng nghiên cứu trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP), cả trong và ngoài cộng đồng nghiên cứu ở nhiều quốc gia. Đây là quá trình xác định và phân loại các cảm xúc khác nhau - ví dụ như tích cực, tiêu cực hoặc trung tính - hoặc các trạng thái cảm xúc như vui, buồn, tức giận - để hiểu thái độ của con người đối với một chủ thể cụ thể hoặc một vấn đề nhất định. Phân tích cảm xúc cũng là một phần quan trọng trong lĩnh vực NLP. Nó không chỉ có ý nghĩa lớn trong học thuật và nghiên cứu, mà còn đóng vai trò cực kỳ quan 11
  • 13. trọng trong các ngành công nghiệp - đặc biệt là trong lĩnh vực dịch vụ, nơi việc nhận biết hành vi và thái độ của khách hàng đối với sản phẩm và dịch vụ mà họ sử dụng là vô cùng quan trọng. Tuy nhiên, mọi người thể hiện các cảm nhận của mình thông qua ngôn ngữ tự nhiên vốn thường có sự nhập nhằng về ngữ nghĩa đã gây không ít khó khăn trong việc xử lý thông tin. Bên cạnh đó, người dùng còn sử dụng các từ viết tắt, từ lóng hay các kí hiệu biểu cảm như ‘=))’, ’:(’, ’>,<’, ... để thể hiện trạng thái cảm xúc của họ. Hiện nay, bài toán phân tích cảm xúc thường được thực hiện ở ba cấp độ chính: cấp độ câu văn (sentence-level), cấp độ văn bản (document-level), và cấp độ khía cạnh (aspect-level). Ở cấp độ câu văn, mục tiêu của bài toán là phân loại một câu văn thành các lớp tiêu cực (negative), tích cực (positive), hoặc trung tính (neutral). Cấp độ văn bản được sử dụng để xác định mức độ cảm xúc của một đoạn văn (bao gồm hai hay nhiều câu văn) là tiêu cực, tích cực, hoặc trung tính. Và cấp độ khía cạnh được sử dụng để xác định mức độ cảm xúc cho mỗi khía cạnh của thực thể được đề cập trong một văn bản. Trong phạm vi của đồ án này, nghiên cứu sẽ tập trung chỉ vào cấp độ câu văn. Hình 5: 2.2.1.1. Biểu đồ cấp độ ngôn ngữ học [15] Trong lĩnh vực NLP, bài toán phân tích cảm xúc thuộc về cả ngữ dụng học (Prag- matics) và ngữ nghĩa học (Semantics). Vị trí của bài toán này trong lĩnh vực NLP có thể được xem như một ứng dụng cụ thể trong lĩnh vực này, đóng vai trò quan trọng trong việc hiểu và xử lý ngôn ngữ tự nhiên. 2.2.2 Phân tích cảm xúc hoạt động thế nào? Có một cách tiếp cận để sử dụng phân tích tình cảm là xây dựng một từ vựng với thông tin về những từ và cụm từ nào là tích cực và tiêu cực. Từ vựng này có thể biên dịch thủ công hoặc được mua tự động. Việc chú thích từ vựng hoặc corpora thường được thực hiện bằng tay và các bộ phân loại sau đó được đào tạo với các bộ tính năng lớn để phân loại một loạt các từ hoặc cụm từ mới. Có những cách tiếp cận khác để 12
  • 14. phân tích tình cảm tập trung vào việc khai thác các câu hoặc toàn bộ tài liệu, thay vì phụ thuộc vào tính chẵn lẻ của các từ. Cách tiếp cận này thường hoạt động với corpora của các tài liệu văn bản. Vấn đề thiết yếu với phân loại tài liệu (phân loại phân cực) là nó phải xác định các đặc điểm tình cảm tổng thể của toàn bộ tài liệu, trong khi tình cảm được thể hiện có thể được bao gồm chỉ trong một câu hoặc từ. Mặt khác, tôi tìm thấy một cách tiếp cận khác trong việc khai thác tình cảm là trên web. Khai thác ý kiến web nhằm mục đích trích xuất, tóm tắt và theo dõi các khía cạnh khác nhau của thông tin chủ quan trên Web . Điều này có thể hữu ích cho các công ty quảng cáo hoặc người theo dõi xu hướng. Phân tích tình cảm được sử dụng rộng rãi cho các đánh giá trực tuyến và phương tiện truyền thông xã hội cho nhiều ứng dụng khác nhau, từ tiếp thị đến dịch vụ khách hàng. Các kỹ thuật Machine Learning được áp dụng cho các vấn đề phân tích cảm xúc chia thành hai loại: (1) các mô hình tiêu chuẩn và (2) các mô hình học sâu. Các mô hình truyền thống liên quan đến các thuật toán học máy truyền thống, như bộ phân loại Naive Bayes, bộ phân loại entropy tối đa, và máy vector hỗ trợ (SVM). Những thuật toán này nhận các đặc điểm từ ngữ, các đặc điểm dựa trên từ điển cảm xúc, các phần từ loại, cũng như các tính từ và trạng từ làm đầu vào. Độ chính xác của các hệ thống này phụ thuộc vào các đặc điểm được chọn. Các mô hình học sâu có thể cung cấp hiệu suất cao hơn so với các phương pháp truyền thống. CNN, DNN và RNN là những mô hình học sâu có thể được sử dụng cho phân tích cảm xúc. Những phương pháp này xử lý các vấn đề phân loại ở mức tài liệu, cụm từ và mức khía cạnh. Phần tiếp theo sẽ đề cập đến các phương pháp này của học sâu. Hình 6: 2.2.2.1. Phân loại kỹ thuật phân tích cảm xúc 2.3 Tình hình nghiên cứu Từ những năm 2000 trở đi, phân tích ý kiến và phân tích cảm xúc đã trở thành một lĩnh vực thu hút sự quan tâm và phát triển của các nhà nghiên cứu, cũng như 13
  • 15. được áp dụng trong thực tế. Ý tưởng về phân tích cảm xúc (sentiment analysis) được giới thiệu lần đầu tiên trong một nghiên cứu của Nasukawa và Yi . Trong khi đó, khái niệm phân tích ý kiến (opinion mining) được đề xuất đầu tiên trong một nghiên cứu của Dave, Lawrence và Pennock. Tuy nhiên, nghiên cứu của Pang và Lillian Lee [6] được coi là nền tảng cho sự phát triển của phân tích ý kiến, đã đạt được kết quả đáng ghi nhận và đóng góp cho sự phát triển của lĩnh vực này. Các chủ đề nghiên cứu trong phân tích cảm xúc rất đa dạng, bao gồm phân tích đánh giá phim, sản phẩm, nhà hàng, món ăn và nhiều hơn nữa. Để giải quyết bài toán phân tích cảm xúc, các nghiên cứu đã sử dụng các phương pháp như máy học, thống kê và phương pháp dựa trên luật kết hợp với dữ liệu ngôn ngữ. Nhờ vào những nỗ lực này, các nghiên cứu đã đạt được những tiến bộ đáng kể trong việc hiểu và phân tích cảm xúc trong ngôn ngữ.Kể từ đó, bài toán này đã trở nên ngày càng được quan tâm và tiếp tục phát triển. Với ngôn ngữ tiếng Việt, các nghiên cứu về phân tích cảm xúc câu vẫn đang tiếp tục phát triển. Ví dụ, Kieu và Pham [7] đã giới thiệu một phương pháp phân loại cảm xúc dành cho tiếng Việt, dựa trên hệ thống luật và mô tả các thực nghiệm trên bộ dữ liệu đánh giá sản phẩm máy tính. Duyen và đồng nghiệp [8] đã sử dụng các thuật toán máy học như SVMI, MEM để phân loại đánh giá khách sạn từ Agoda. Van và đồng nghiệp [9] đã sử dụng SVM để phân loại các bình luận trên Facebook. Tran và Phan [10] đã đưa ngôn ngữ bối cảnh vào câu để cung cấp thêm thông tin cho phân tích cảm xúc. Các nghiên cứu này đóng góp vào việc nghiên cứu và phát triển phân tích cảm xúc trong tiếng Việt. Ngoài ra, nhóm Nghiên Cứu VLSP cũng đã có những nghiên cứu quan trọng, bên cạnh đó còn có các nghiên cứu sinh Việt Nam tại JAIST. Tuy nhiên, nghiên cứu vẫn chưa đi đến mức độ hệ thống và chưa có định hướng rõ ràng, hạn chế chỉ dừng lại ở cấp độ tiến sĩ, thạc sĩ và các bài báo nghiên cứu khoa học có tính chất tìm hiểu. Và, hiện nay, các bộ dữ liệu về phân tích cảm xúc người dùng đã dần được tập trung và xây dựng nhằm phục vụ cộng đồng nghiên cứu. Điển hình, năm 2016, cộng đồng xử lý ngôn ngữ tự nhiên (Vietnamese Language and Speech Processing- VLSP) đã tiến hành tổ chức cuộc thi phân tích cảm xúc người dùng trên các phản hồi mua hàng bởi Huyen và các cộng sự . Bên cạnh đó, gần đây nhất, AIVIVN, một nền tảng giúp tổ chức các cuộc thi machine learning cho cộng đồng, đã giới thiệu bộ dữ liệu phân loại sắc thái bình luận trên các trang thương mại điện tử 14
  • 16. 3 PHƯƠNG PHÁP TIẾP CẬN 3.1 Mô hình BERT 3.2 Các biến thể của BERT dành cho tiếng Việt 3.3 Kỹ thuật làm giàu dữ liệu (Data augmentation) 3.4 Thu thập dữ liệu và tiền xử lí dữ liệu 3.5 Áp dụng mô hình 4 KẾT QUẢ THỰC NGHIỆM 4.1 Kết quả 4.1.1 Thực nghiệm trên bài toán SA 4.1.2 Thực nghiệm khi sử dụng bổ trợ mô hình ngôn ngữ (Language Model) 4.1.3 Đánh giá tính hiệu quả của kỹ thuật làm giàu dữ liệu 15
  • 17. 5 Tài liệu tham khảo Tài liệu [1] Lê Si Lắc, "A Research on Sentiment Analysis", 2021. [2] Agustini, "Sentiment Analysis on Social Media using Machine Learning-Based Approach", June 2021. [3] Shashank Kalluri, "Deep Learning Based Sentiment Analysis", January 2023. [4] Doaa Mohey El-Din Mohamed Hussein, "Analyzing Scientific Papers Based on Sentiment Analysis", June 2016. [5] Ngoc C. Lê, Nguyen The Lam, Son Hong Nguyen, Duc Thanh Nguyen, "On Vietnamese Sentiment Analysis: A Transfer Learning Method", July 2020. [6] Bo Pang and Lillian Lee, "Opinion mining and Sentiment analysis", 2007. [7] Binh Thanh Kieu and Son Bao Pham, "Sentiment analysis for Vietnamese", 2010. [8] Nguyen Thi Duyen, Ngo Xuan Bach and Tu Minh Phuong, "An Empirical Study on Sentiment analysis for Vietnamese", 2014. [9] Vi Ngo Van, Minh Hoang Van, Tam Nguyen Thanh, "Sentiment analysis for Viet- namese using Support Vector Machines with application on Facebook comments", Proc. VLSP 2016. [10] Thien Khai Tran and Tuoi Thi Phan, "Computing Sentiment Scores of Verb Phrases for Vietnamese", 2016. [11] Lê Thanh Hương, Bài giảng xử lý ngôn ngữ tự nhiên, Đại học Bách Khoa Hà Nội. [12] Sinh viên nghiên cứu khoa học Eureka, Phân tích cảm xúc trong Tiếng Việt, 2018 [13] FPT Digital, Xử lý ngôn ngữ tự nhiên: Công nghệ giúp máy tính hiểu và giao tiếp với con người, 2020 [14] Jashijim, Latent Semantic Analysis , 2021 [15] Upen, Difference Between Semantics and Pragmatics , 2018 16