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

Ứng dụng máy vectơ hỗ trợ phân loại ý kiến của người xem trên các trang web phim trực tuyến

31 152 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

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

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

Nội dung

5 Các nghiên cứu liên quan bài toán phân lớp cảm xúc bình luận người dùng hiện nay .... Hệ thống sẽ sử dụng mô hình Support Vector Machines để phân loại các bình luận phim bởi các đặc t

Trang 1

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA -

Trang 2

Công trình được hoàn thành tại TRƯỜNG ĐẠI HỌC BÁCH KHOA

Người hướng dẫn khoa học: TS Phạm Minh Tuấn

Phản biện 1: TS Đặng Hoài Phương

Phản biện 2: TS Nguyễn Thị Hoa Huệ

Luận văn sẽ được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ khoa học máy tính họp tại Trường Đại học Bách khoa vào ngày 13 tháng 10 năm 2018

Có thể tìm hiểu luận văn tại:

- Trung tâm Học liệu, Đại học Đà Nẵng tại Trường Đại học Bách khoa

- Thư viện Khoa Công nghệ thông tin Trường Đại học Bách khoa –ĐHĐ

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan:

Những nội dung trong luận văn này là do tôi thực hiện dưới sự hướng dẫn trực tiếp của TS Phạm Minh Tuấn

Những nội dung trình bày trong luận văn là những kiến thức của riêng cá nhân tôi tích lũy trong quá trình học tập, nghiên cứu, không sao chép lại một công trình nghiên cứu hay luận văn của bất cứ tác giả nào khác

Trong nội dung của luận văn, những phần tôi nghiên cứu, trích dẫn đều được nêu trong phần các tài liệu tham khảo, có nguồn gốc, xuất xứ, tên tuổi của các tác giả, nhà xuất bản rõ ràng

Những điều tôi cam kết hoàn toàn là sự thật, nếu sai, tôi xin chịu mọi hình thức xử lý kỷ luật theo quy định

TÁC GIẢ LUẬN VĂN PHÙNG VĂN HÒA

Trang 4

LỜI CẢM ƠN

Em xin bày tỏ lòng biết ơn chân thành và sâu sắc đến thầy Phạm Minh Tuấn, thầy đã dành nhiều thời gian tận tình chỉ bảo, hướng dẫn

em trong suốt quá trình tìm hiểu, triển khai và nghiên cứu đề tài Thầy

là người đã định hướng và đưa ra nhiều góp ý trong quá trình em thực hiện luận văn này

Em xin gửi lời cảm ơn chân thành tới toàn thể các thầy giáo, cô giáo trong khoa Công nghệ thông tin - Trường Đại học Bách Khoa Đà Nẵng đã dạy bảo tận tình, trang bị cho em những kiến thức bổ ích và tạo điều kiện thuận lợi trong suốt quá trình em học tập và nghiên cứu tại trường Các kiến thức, kinh nghiệm quý báu của các thầy cô giáo không chỉ giúp cá nhân em hoàn thiện hệ thống kiến thức trong học tập mà còn giúp em ứng dụng các kiến thức đó trong công việc hiện tại

Do có nhiều hạn chế về thời gian và kiến thức nên luận văn không tránh khỏi những thiếu sót, rất mong nhận được những ý kiến đóng góp của quý thầy cô và các bạn cùng quan tâm

Xin chân thành cảm ơn!

HỌC VIÊN PHÙNG VĂN HÒA

Trang 5

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 THUẬT NGỮ, CHỮ VIẾT TẮT v

DANH SÁCH BẢNG v

DANH SÁCH HÌNH v

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN VỀ BÀI TOÁN PHÂN LOẠI Ý KIẾN NGƯỜI DÙNG 5

Bài toán phân loại ý kiến bình luận người dùng xem phim trực tuyến 5

Các nghiên cứu liên quan bài toán phân lớp cảm xúc bình luận người dùng hiện nay 5

Các kỹ thuật liên quan đến bài toán phân loại cảm xúc bình luận 5

Các nghiên cứu liên quan đến bài toán phân loại ý kiến người dùng 6

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

Xử lý ngôn ngữ tự nhiên 6

Khái niệm 6

Các bước xử lý 7

Ứng dụng 7

Các bài toán và khái niệm cơ bản liên quan 7

Biểu thức chính quy (regular expressions) 7

Corpus 8

Trang 6

Tokenization (tách từ) 8

Ambiguous (nhập nhằng nghĩa) 9

Stopwords (từ dừng) 9

Named Entities Recognition (nhận dạng tên thực thể) 9 Lemmatization và Stemming 10

Part of Speech (gán nhãn từ loại) 10

Khó khăn trong xử lý ngôn ngữ tự nhiên tiếng Việt 10

Trích xuất đặc trưng 11

TF-IDF 11

Bag-of-Word (mô hình túi từ) 11

Word2Vec 11

CHƯƠNG 2: MÁY HỌC VECTƠ HỖ TRỢ 11

2.1 Tổng quan về bài toán phân lớp 11

Khái niệm 11

Một số thuật toán phân lớp phổ biến 12

2.1.2.1 Naive Bayes 12

2.1.2.2 K-Nearest Neighbors 12

2.1.2.3 Maximum Entropy 12

Đánh giá mô hình phân loại 12

Phân tích giá trị đơn 12

2.2 Support Vector Machine (SVM) 12

Giới thiệu 12

Cơ sở toán học 13

2.2.2.1 Ý tưởng 13

2.2.2.2 Xây dựng bài toán tối ưu cho SVM 13

Biên mềm (Soft Margin) 14

Các hàm thiệt hại cho SVM 14

2.3 Hàm hạt nhân SVM (Kernel) 14

Trang 7

Giới thiệu 14

Cơ sở toán học 15

Tính chất hàm hạt nhân 15

2.4 Phân lớp cảm xúc bình luận phim bằng SVM 15

Thu thập dữ liệu 15

Tiền xử lý 15

2.4.2.1 Làm sạch dữ liệu 15

2.4.2.2 Tách từ 15

Trích xuất đặc trưng bình luận 15

2.4.3.1 Trích xuất đặc trưng TF-IDF 15

2.4.3.2 Giảm chiều dữ liệu 15

Huấn luyện và đánh giá mô hình 15

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

3.1 Dữ liệu, công cụ và môi trường thực hiện 16

3.2 Tiền xử lý dữ liệu 16

3.3 Trích xuất đặc trưng bình luận 18

3.4 Huấn luyện mô hình SVM và đánh giá 19

KẾT LUẬN 22

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

PHỤ LỤC 24

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

DANH SÁCH BẢNG

DANH SÁCH HÌNH

Trang 8

MỞ ĐẦU

1 Lý do chọn đề tài

Ngày nay, ngành công nghiệp điện ảnh đang bùng nổ khiến cho người xem khó khăn trong việc chọn phim khó khăn hơn Đa phần người xem vẫn thường có xu hướng dựa vào những bình luận, nhận xét phim từ những người xem trước để quyết định việc xem phim vì

nó cung cấp một cái nhìn tổng quát về phim nhanh chóng và thực tế

Do đó, những lời bình luận về phim đóng vai trò rất quan trọng trong việc quyết định xem phim của người xem

Có nhiều lý do khiến cho việc đọc bình luận phim là không nên

và số lượng bình luận nhiều khi có số lượng lớn Do đó cần phải có một công cụ khai thác dữ liệu để khám phá thông tin từ các lời bình luận phim nhằm tiết kiệm thời gian và công sức cho người xem trong việc lựa chọn phim để xem

Hệ thống sẽ sử dụng mô hình Support Vector Machines để phân loại các bình luận phim bởi các đặc tính của thuật toán rất phù hợp cho việc phân loại dữ liệu có số lượng đặc trưng lớn như văn bản và bản chất của SVM cũng được dùng cho phân lớp nhị phân Ngoài ra, qua các thực tế đã được kiểm chứng thì hệ thống phân loại văn bản sử dụng thuật toán SVM có độ chính xác cao và tốc độ xử lý nhanh

2 Mục tiêu và nhiệm vụ nghiên cứu

a) Mục tiêu

Nghiên cứu và xây dựng một chương trình có khả năng phân loại ý kiến bình luận phim của người dùng theo cảm xúc tích cực và tiêu cực một cách tự động dựa trên việc phân tích nội dung của bình luận thành các từ hoặc cụm từ khóa và áp dụng bộ phân lớp nhị phân SVM

Trang 9

- Nghiên cứu đặc trưng của tiếng Việt

- Nghiên cứu các bài toán cơ bản của xử lý ngôn ngữ tự nhiên Trích xuất đặc trưng từ dữ liệu văn bản qua đó có thể biểu diễn văn bản dưới dạng vector nhằm phục vụ cho mục đích huấn luyện và phân loại

- Tìm hiểu các phương pháp đánh giá phân lớp

- Chuẩn bị dữ liệu bình luận đã được gán nhãn cảm xúc cho việc huấn luyện và đánh giá mô hình phân lớp

3 Đối tượng và phạm vi nghiên cứu

Trong khuôn khổ của luận văn thuộc loại nghiên cứu và ứng dụng, đề tải chỉ giới hạn nghiên cứu các vấn đề sau:

- Các mô hình, thuật toán phân lớp dữ liệu Đặc biệt là mô hình phân lớp dữ liệu SVM

- Đặc trưng của tiếng Việt

- Các thuật toán cơ bản của xử lý ngôn ngữ tự nhiên

- Các phương pháp đánh giá phân lớp

4 Phương pháp nghiên cứu

Trang 10

- Tìm hiểu các thuật toán xử lý văn bản cơ bản

- Tìm hiểu các phương pháp trích xuất đặc trưng văn bản b) Phương pháp thực nghiệm

- Xây dựng chương trình demo dựa trên giải pháp đề xuất

- Thực nghiệm trên dữ liệu đầu vào là các ý kiến thuộc dữ liệu kiểm thử đã được thu thập ban đầu

- Kiểm tra, nhận xét và đánh giá kết quả

5 Ý nghĩa khoa học và thực tiễn của đề tài

- Tạo được bộ dữ liệu phục vụ cho việc huấn luyện các mô hình phân loại văn bản tích cực và tiêu cực của tiếng Việt

- Kết quả có thể làm tài liệu tham khảo cho các học viên – sinh viên trong việc nghiên cứu xử lý ngôn ngữ tự nhiên b) Ý nghĩa thực tiễn

Ứng dụng cho các hệ thống phân tích người dùng của các trang phim trực tuyến hoặc cho chính những người xem phim trực tuyến Góp phần giúp ban quản trị có thể quan sát và lấy ý kiến người dùng tốt hơn và giảm sức lao động của con người Đồng thời cũng giúp người dùng giảm thiểu thời gian và công sức trong việc đọc bình luận

để quyết định xem phim Ngoài ra đề tài còn có ý nghĩa thúc đẩy phát

Trang 11

triển và ứng dụng trí tuệ nhân tạo trong xử lý ngôn tự nhiên Tiếng Việt

6 Cấu trúc luận văn

Luận văn được trình bày bao gồm 3 chương:

Chương 1 Tổng quan bài toán phân loại ý kiến người dùng: Nội dung của chương trình bày tổng quan về bài toán phân loại ý kiến bình luận phim của người dùng theo cảm xúc tích cực và tiêu cực trên các trang xem phim trực tuyến phổ biến ở Việt Nam Đồng thời cũng trình bày các nội dung chính về cơ sở lý thuyết của lĩnh vực xử lý ngôn ngữ tự nhiên

Chương 2 Phương pháp học máy SVM: Nội dung chương sẽ giới thiệu tổng quan về bài toán phân lớp dữ liệu trong lĩnh vực học máy, các mô hình phân lớp phổ biến và cách đánh giá hiệu quả của mô hình phân lớp Đồng thời trình bày các cơ sở lý thuyết chính để xây dựng mô hình phân lớp SVM cho bài toán phân loại ý kiến bình luận Chương 3 Thực nghiệm và đánh giá kết quả: Nội dung chương trình bày về sử dụng SVM để huấn luyện dữ liệu bình luận phim và tiến hành phân loại bình luận theo cảm xúc Xây dựng ứng dụng demo và đánh giá các kết quả từ các phương pháp trích xuất đặc trưng văn bản và thuật toán phân lớp khác nhau Từ đó rút ra những kết luận quan trọng trong bài toán phân loại ý kiến bình luận người dùng theo cảm xúc

Phần kết luận: Phần này sẽ trình bày những kết quả đạt được của luận văn, đồng thời cũng chỉ ra những hạn chế và hướng phát triển trong tương lai

Trang 12

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

có một quy trình xử lý tự động

Phân loại cảm xúc bình luận khác với bài toán phân lớp văn bản thông thường ở chỗ các bình luận thường ngắn, phi cấu trúc, nhiễu và chứa rất nhiều lỗi như lỗi chính tả, viết tắt, thiếu dấu câu, sử dụng các

từ ngữ không chính thống và thường chứa nhiều ký tự đặc biệt [11]

Hình 1.3: Mô hình phân lớp cảm xúc bình luận SVM Các nghiên cứu liên quan bài toán phân lớp cảm xúc bình luận người dùng hiện nay

Các kỹ thuật liên quan đến bài toán phân loại cảm xúc bình luận Bài toán phân loại ý kiến của người dùng sử dụng phương pháp phân lớp Các thuật toán phân lớp tiêu biểu cho bài toán phân lớp văn bản bao gồm [8]: Cây quyết định (Decision Tree), máy vector hỗ trợ (Support Vector Machine - SVM), K láng giềng gần nhất (KNN),

Trang 13

Maximum Entropy Model (MaxEnt), Naive Bayes Trong luận văn của mình, tác giả tiến hành thực nghiệm với cả bốn mơ hình phân lớp tiêu biểu trên để chứng minh hiệu quả của mơ hình phân lớp SVM cho bài tốn phân lớp cảm xúc bình luận

Các nghiên cứu liên quan đến bài tốn phân loại ý kiến người dùng

Cĩ nhiều nghiên cứu tiếng Việt về khai phá quan điểm, tuy nhiên những nghiên cứu trong chuyên về phân tích cảm xúc người dùng ở Việt Nam cịn ít Các nghiên cứu thường thiên về khai phá quan điểm nĩi chung, nhưng chuyên về miền cảm xúc người dùng thì hầu như chưa cĩ Đặc biệt với bài tốn phân lớp cảm xúc bình luận phim tiếng Việt thì chưa cĩ nghiên cứu nào được cơng bố trước đây Hướng tiếp cận giải quyết bài tốn phân loại cảm xúc dựa vào các kỹ thuật học máy

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

Cĩ hai giai đoạn chính trong việc phân lớp dữ liệu là giai đoạn huấn luyện và giai đoạn áp dụng [5]

Ở cả hai giai đoạn huấn luyện và áp dụng, dữ liệu đều phải qua hai pha chính là Tiền xử lý dữ liệu (Data preprocessing) và trích chọn vec-tơ đặc trưng (Feature selection)

Sau khi lựa chọn đặc trưng xong, ta cĩ thể áp dụng các giải thuật phân lớp khác nhau ví dụ như k-nearest neighbors, Nạve Bayes, Máy vec-tơ hỗ trợ (SVM)… để phân loại bình luận theo cảm xúc

Xử lý ngơn ngữ tự nhiên

Khái niệm

Trang 14

Xử lý ngôn ngữ tự nhiên (natural language processing - NLP)

là một nhánh của lĩnh vực trí tuệ nhân tạo tập trung vào các ứng dụng trên ngôn ngữ của con người Mục tiêu của lĩnh vực này là làm cho máy tính thực hiện hiệu quả những nhiệm vụ liên quan đến ngôn ngữ của con người như giao tiếp giữa người và máy, cải thiện hiệu quả giao tiếp giữa người với người, hoặc đơn giản là nâng cao hiệu quả xử

lý văn bản và lời nói

Các bước xử lý

Quá trình xử lý ngôn ngữ tự nhiên thường được thực hiện theo

mô hình như sau

Hình 1.4: Quy trình xử lý ngôn ngữ tự nhiên phổ biến Ứng dụng

Xử Lý Ngôn Ngữ Tự Nhiên có vai trò hết sức quan trọng trong ngành Khoa Học Máy Tính Nó có vô vàn ứng dụng hữu ích trong cuộc sống cũng như nghiên cứu Chúng ta có thể điểm qua một vài ứng dụng của xử lý ngôn ngữ tự nhiên như: Nhận dạng chữ viết, nhận dạng tiếng nói, tổng hợp tiếng nói, dịch tự động, tìm kiếm thông tin, tóm tắt văn bản, khai phá dữ liệu

Các bài toán và khái niệm cơ bản liên quan [6]

Biểu thức chính quy (regular expressions)

Regular Expression hay còn gọi là biểu thức chính quy là một chuỗi ký tự mô tả mẫu văn bản, được dùng để xử lý chuỗi nâng cao thông qua biểu thức riêng của nó, những biểu thức này sẽ có những

Trang 15

nguyên tắc riêng và ta phải tuân theo nguyên tắc đó thì biểu thức mới hoạt động được

Một mẫu biểu thức chính quy là một tập các kí tự thường Các

kí tự đặc biệt cho các mục đích tìm kiếm nâng cao mà tìm kiếm trực tiếp sẽ khó khăn

Corpus

Trong ngôn ngữ học, corpus là 1 dữ liệu tập hợp các văn bản, ngôn ngữ đã được số hoá Corpus là 1 tài nguyên quan trọng trong NLP Chúng được sử dụng để phân tích thống kê và kiểm tra giả thuyết, chiết suất 1 cách tự động các qui tắc ngữ pháp “văn mạch tự do”, kiểm tra các lần xuất hiện hoặc xác nhận các quy tắc ngôn ngữ trong một ngôn ngữ cụ thể

Corpus có thể bao gồm ngôn ngữ viết, ngôn ngữ nói hoặc cả hai Kho dữ liệu văn bản nói thường được lưu trữ ở dạng bản ghi âm Corpus có thể chứa các văn bản bằng một ngôn ngữ (monolingual corpus) hoặc dữ liệu văn bản bằng nhiều ngôn ngữ (multilingual corpus)

Morphological Analysis (phân tích hình thái)

Trong ngôn ngữ học, phân tích hình thái học là nghiên cứu các

từ, cách chúng được hình thành và mối quan hệ của chúng với các từ khác trong cùng một ngôn ngữ chẳng hạn như từ gốc, ranh giới từ, dấu, phần của lời nói, v.v Qua đó tìm ra cấu trúc và hình thành các từ Đơn vị quan trọng nhất của nó là morpheme Có ba bài toán điển hình trong lĩnh vực này, bao gồm việc phân đoạn từ (word segmentation), nhận diện tên riêng (named entity recognition) và gắn thẻ một phần lời nói (Part-of-speech tagging)

Tokenization (tách từ)

Trang 16

Tách từ là một quá trình xử lý nhằm mục đích xác định ranh giới của các từ trong câu văn, cũng có thể hiểu đơn giản rằng tách từ

là quá trình xác định các từ đơn, từ ghép… có trong câu Đối với xử

lý ngôn ngữ, để có thể xác định cấu trúc ngữ pháp của câu, xác định

từ loại của một từ trong câu, yêu cầu nhất thiết đặt ra là phải xác định được đâu là từ trong câu

Ambiguous (nhập nhằng nghĩa)

Nhập nhằng là hiện tượng mà khi nói, viết hoặc diễn tả những

từ ngữ, ý nghĩ mơ hồ, không rõ nghĩa hoặc có nhiều nghĩa làm cho người đọc hoặc người nghe không phân biệt rõ ràng, dẫn đến sự hiểu nhấm ý nghĩa

lý văn bản vad độ chính xác phân lớp văn bản được tăng lên

Có rất nhiều cách để loại bỏ StopWords trong đó có 2 cách phổ biến là: Dùng từ điển và dựa theo tần suất xuất hiện của từ

Named Entities Recognition (nhận dạng tên thực thể) Nhiệm vụ xác định tên riêng của người, tổ chức, địa điểm, hoặc các thực thể khác là một nhiệm vụ khai thác thông tin từ các tài liệu ngôn ngữ tự nhiên Đây là bài toán khá cơ bản trong nhóm các bài toán trích chọn thông tin

Có ba hướng tiếp cận chính cho bài toán nhận dạng thực thể trong văn bản là: hướng tiếp cận sử dụng hệ luật được xây dựng bởi

Ngày đăng: 21/12/2019, 23:05

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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

w