Phân loại, hay phân lớp, ý kiến là một trường hợp riêng của học cĩ giám sát (supervised learning), trong đĩ các đoạn bình luận hoặc câu chứa ý kiến cĩ thể nhận một trong hai nhãn phân loại:“tích cực”, “tiêu cực” (một số phát biểu cho phép phân biệt thêm nhãn “trung tính”). Quá trình phân loại được thực hiện theo các bước được mơ tả sau đây.
Trước tiên là thu thập dữ liệu về nhận xét đánh giá từ các trang web. Dữ liệu đào tạo và dữ liệu kiểm tra được dùng trong nghiên cứu hiện cĩ hầu hết là các nhận xét sản phẩm. Vì mỗi nhận xét ở một trang thường cĩ đánh giá xếp hạng (như 1 – 5 sao…), dữ liệu đào tạo và kiểm thử luơn cĩ sẵn. Nếu dữ liệu thu được chưa được phân loại, chúng ta cần gán nhãn phân loại một cách thủ cơng cho chúng. Thường thì, một nhận xét với đánh giá 4-5 sao được xem như một nhận xét tích cực, và nhận xét 1-2 sao thì được xem là nhận xét tiêu cực.
Bước tiếp theo là đào tạo bộ phân loại dựa trên dữ liệu huấn luyện đã chuẩn bị sẵn. Sau khi kỹ thuật phân loại cĩ giám sát được lựa chọn, một quyết định quan trọng khác cần thực hiện là trích chọn đặc trưng. Trong phân loại văn bản, đặc trưng chỉ đặc tính của dữ liệu văn bản cĩ thể đo được để phân loại văn bản, như bag-of- words, n-gram (unigram, bigram, trigram…)…Sau khi các đặc trưng phù hợp được lựa chọn, bộ phân loại được đào tạo với tập dữ liệu huấn luyện. Quá trình huấn luyện thường được lặp đi lặp lại nhiều lần để cĩ được một mơ hình tốt nhất. Hiệu năng của mơ hình phân loại sau đĩ được đánh giá bởi tập dữ liệu kiểm tra đã chuẩn bị riêng.
2.1.1.1. Mơ hình ngơn ngữ n-gram
Nhiệm vụ của mơ hình ngơn ngữ là cho biết xác suất của một câu w 1w 2...wm là bao nhiêu. Theo cơng thức Bayes: P(AB) = P(B|A) * P(A), thì:
P(w 1w 2…wm) = P(w 1) * P(w 2|w 1) * P(w 3|w 1w 2) *…* P(wm|w 1w 2…wm-1) Theo cơng thức này, mơ hình ngơn ngữ cần phải cĩ một lượng bộ nhớ vơ cùng lớn để cĩ thể lưu hết xác suất của tất cả các chuỗi độ dài nhỏ hơn m. Rõ ràng, điều này là khơng thể khi m là độ dài của các văn bản ngơn ngữ tự nhiên (m cĩ thể
23
tiến tới vơ cùng). Để cĩ thể tính được xác suất của văn bản với lượng bộ nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n:
P(wm|w 1,w 2,…, wm-1) = P(wm|wm-n,wn-m+1, …,wm-1)
Nếu áp dụng xấp xỉ Markov, xác suất xuất hiện của một từ (wm) được coi như chỉ phụ thuộc vào n từ đứng liền trước nĩ (wm-nwm-n+1…wm-1) chứ khơng phải phụ thuộc vào tồn bộ dãy từ đứng trước (w 1w 2…wm-1). Như vậy, cơng thức tính xác suất văn bản được tính lại theo cơng thức:
P(w 1w 2…wm) = P(w 1) * P(w 2|w 1) * P(w 3|w 1w 2) *…* P(wm-1|wm-n-1wm-n …wm-2
)* P(wm|wm-nwm-n+1…wm-1)
Với cơng thức này, ta cĩ thể xây dựng mơ hình ngơn ngữ dựa trên việc thống kê các cụm cĩ ít hơn n+1 từ. Mơ hình ngơn ngữ này gọi là mơ hình ngơn ngữ N- gram.
Một cụm N-gram là một dãy con gồm n phần tử liên tiếp của 1 dãy các phần tử cho trước (trong bộ dữ liệu huấn luyện), và cụm ngram này khơng nhất thiết phải cĩ nghĩa.
Ví dụ: cụm 2-gram “hát của” thuộc câu “Giọng hát của cơ ấy thật điêu luyện”.
Các phần tử được xét ở đây thường là kí tự, từ hoặc cụm từ; tùy vào mục đích sử dụng. Dựa vào số phần tử của 1 cụm N-gram, ta cĩ các tên gọi cụ thể:
N = 1: Unigram N = 2: Bigram N = 3: Trigram
Phân loại ý kiến cĩ nét tương tự nhưng cũng khác với nhiệm vụ phân loại văn bản dựa trên chủ đề truyền thống – phân loại văn bản thành những loại cĩ chủ đề được xác định trước như chính trị, khoa học, thể thao…. Trong phân loại dựa trên chủ đề, các từ liên quan đến chủ đề là rất quan trọng. Tuy nhiên, trong phân loại tình cảm, các từ liên quan đến chủ đề là khơng quan trọng. Thay vì thế, các từ ý kiến hoặc tình cảm chỉ các ý kiến tích cực hay tiêu cực lại rất quan trọng như: tuyệt, tốt, kinh ngạc, khủng khiếp, xấu, tệ…
24
Như hầu hết các ứng dụng học máy, nhiệm vụ chính của phân loại văn bản là đưa ra một tập các đặc trưng phù hợp. Ngồi mơ hình ngơn ngữ ngram, một vài đặc trưng ví dụ khác được dùng trong nghiên cứu và cĩ thể trong thực tế được liệt kê dưới đây.
Các thuật ngữ và tần số của chúng: những đặc tính này là những từ riêng lẻ hoặc từ n-gram và số lần xuất hiện của chúng. Trong một vài trường hợp, vị trí của từ cĩ thể được xem xét. Lược đồ trọng số TF-IDF từ lĩnh vực truy suất thơng tin cĩ thể cũng được áp dụng. Những đặc trưng này được sử dụng chung trong việc phân loại văn bản dựa trên chủ đề truyền thống. Chúng cũng rất cĩ hiệu quả trong phân loại ý kiến.
Nhãn từ loại (Part of speech tags): trong rất nhiều nghiên cứu đã thực hiện chúng ta thấy rằng các tính từ là những từ chỉ báo rất quan trọng về các ý kiến hay tính chủ quan. Do đĩ, tính từ được xem như những đặc trưng đặc biệt. Việc gán nhãn từ loại sẽ giúp trích chọn ra được các tính từ này.
Các từ và cụm từ ý kiến: từ ý kiến là những từ thường được dùng để thể hiện tình cảm tích cực hay tiêu cực. Ví dụ, xinh đẹp, tuyệt vời, tốt, đáng kinh ngạc là những ý kiến tích cực, và xấu, tệ, kinh khủng là những từ ý kiến tiêu cực. Tuy vậy rất nhiều từ ý kiến là tính từ, trợ từ, danh từ, và động từ cũng cĩ thể chỉ báo ý kiến. Bên cạnh những từ riêng lẻ cũng cĩ các cụm từ hoặc thành ngữ ý kiến.
Sự phụ thuộc về mặt cú pháp: các từ phụ thuộc dựa trên các đặc tính sinh ra từ việc phân tích hoặc các cây phụ thuộc cũng đã được thử bởi một vài nhà nghiên cứu.
Sự phủ định: Rõ ràng các từ phủ định là quan trọng bởi sự xuất hiện của chúng thường làm thay đổi xu hướng ngữ nghĩa. Ví dụ, câu “Tơi khơng thích chiếc máy ảnh này” là phủ định. Tuy nghiên, từ phủ định phải được xử lý cẩn thận bởi vì khơng phải rất cả sự xuất hiện của chúng cĩ nghĩa phủ định. Ví dụ, trong “khơng” trong cấu trúc “khơng những …mà cịn…” khơng làm thay đổi xu hướng ngữ nghĩa. Các phương pháp học cĩ giám sát hiện cĩ cĩ thể được áp dụng cho phân loại ý kiến, như Nạve Bayesian, và support vector machine (SVM). Pang [22] đã sử
25
dụng phương pháp này để phân loại nhận xét phim thành hai loại, tích cực và tiêu cực. Phương pháp này đã chỉ ra rằng việc sử dụng unigram làm đặc trưng trong phân loại được thực hiện tốt với cả Nạve Bayes và SVM.
2.1.1.2. Phân loại Nạve Bayes
Phân loại Nạve Bayes sử dụng trong trường hợp mỗi ví dụ được cho bằng tập các thuộc tính <x1, x2, …, xn> và cần xác định nhãn phân loại y, y cĩ thể nhận giá trị từ một tập nhãn hữu hạn C.
Trong giai đoạn huấn luyện, dữ liệu huấn luyện được cung cấp dưới dạng các mẫu <xi,yi>. Sau khi huấn luyện xong, bộ phân loại cần dự đốn nhãn cho mẫu mới x.
Theo lý thuyết học Bayes, nhãn phân loại được xác định bằng cách tính xác suất điều kiện của nhãn khi quan sát thấy tổ hợp giá trị thuộc tính <x1, x2, …, xn>. Thuộc tính được chọn, ký hiệu cMAP là thuộc tính cĩ xác suất điều kiện cao nhất (MAP là viết tắt của maximum a posterior), tức là:
𝒚 = 𝒄𝑴𝑨𝑷 = 𝒂𝒓𝒈𝒎𝒂𝒙𝒄𝒋𝝐 𝑪𝑷 𝒄𝒋 𝒙𝟏, 𝒙𝟐, … , 𝒙𝒏)
Sử dụng quy tắc Bayes, biểu thức trên được viết lại như sau:
𝒄𝑴𝑨𝑷 = 𝒂𝒓𝒈𝒎𝒂𝒙𝒄𝒋∈𝑪𝑷 𝒙𝟏, 𝒙𝟐, … , 𝒙𝒏 𝒄𝒋 𝑷(𝒄𝒋) 𝑷(𝒙𝟏, 𝒙𝟐, … , 𝒙𝒏) = 𝒂𝒓𝒈𝒎𝒂𝒙𝒄𝒋∈𝑪 𝑷 𝒙𝟏, 𝒙𝟐, … , 𝒙𝒏 𝒄𝒋 𝑷(𝒄𝒋)
Hai thành phần trong biểu thức trên được tính từ dữ liệu huấn luyện. Giá trị P(cj) được tính bằng tần suất quan sát thấy nhãn cj trên tập huấn luyện, tức là bằng số mẫu cĩ nhãn là cj chia cho tổng số mẫu. Việc tính P(x1,x2,…,xn|cj) khĩ khăn hơn nhiều. Vấn đề là số tổ hợp giá trị của n thuộc tính cùng với nhãn phân loại là rất lớn khi n lớn. Để tính xác suất này được chính xác, mỗi tổ hợp giá trị thuộc tính phải xuất hiện cùng nhãn phân loại đủ nhiều, trong khi số mẫu huấn luyện thường khơng đủ lớn.
Để giải quyết vấn đề trên, ta giả sử các thuộc tính là độc lập về xác suất với nhau khi biết nhãn phân loại cj. Trên thực tế, các thuộc tính thường khơng độc lập
26
với nhau như vậy, chẳng hạn đối với ví dụ chơi tennis, khi trời nắng thì xác suất nhiệt độ cao cũng lớn hơn. Chính vì dựa trên giả thiết độc lập xác suất đơn giản như vậy nên phương pháp cĩ tên gọi “Bayes đơn giản”. Tuy nhiên, như ta thấy sau đây, giả thiết như vậy cho phép tính xác suất điều kiện đơn giản hơn nhiều và trên thực tế phân loại Bayes cĩ độ chính xác tốt trong rất nhiều ứng dụng.
Với giả thiết về tính độc lập xác suất cĩ điều kiện cĩ thể viết:
𝑷 𝒙𝟏, 𝒙𝟐, … , 𝒙𝒏|𝒄𝒋 = 𝑷 𝒙𝟏|𝒄𝒋 𝑷 𝒙𝟐|𝒄𝒋 … 𝑷(𝒙𝒏, 𝒄𝒋)
Tức là xác suất đồng thời quan sát thấy các thuộc tính bằng tích xác suất điều kiện của từng thuộc tính riêng lẻ. Thay vào biểu thức ở trên, ta được bộ phân loại Nạve Bayes (cĩ đầu ra ký hiệu là CNB như sau):
𝑪𝑵𝑩 = 𝒂𝒓𝒈𝒎𝒂𝒙𝒄𝒋𝝐 𝑪𝑷 𝒄𝒋 𝝅𝒊𝑷(𝒙𝒊|𝒄𝒋)
Trong đĩ P(xi|cj) được tính từ dữ liệu huấn luyện bằng số lần xi xuất hiện cùng với cj chia cho số lần xi xuất hiện. Việc tính xác suất này địi hỏi ít dữ liệu hơn nhiều so với tính P(x1, x2, …, xn | cj).
Quá trình học Bayes đơn giản là quá trình tính các xác suất P(cj) và các xác suất điều kiện P(xi|cj) bằng cách đếm trên tập dữ liệu.
2.1.1.3. Phương pháp phân loại máy vecto tựa ( Support Vector Machines)
Máy vec tơ tựa (SVM) là kỹ thuật học máy được xây dựng cho bài tốn phân loại nhị phân, tức là mỗi ví dụ cĩ thể nhận một trong hai nhãn. Các ví dụ phải được biểu diễn bằng thuộc tính liên tục, và do vậy mỗi ví dụ tương ứng với một vec tơ trong khơng gian. SVM dựa trên hai nguyên tắc chính sau:
- SVM tìm cách phân chia ví dụ cĩ nhãn khác nhau bằng một siêu phẳng sao cho khoảng cách từ siêu phẳng tới những ví dụ cĩ nhãn khác nhau là lớn nhất. Nguyên tắc này được gọi là nguyên tắc lề cực đại (max margin). Trong quá trình huấn luyện, thuật tốn SVM xác định siêu phẳng cĩ lề cực đại bằng cách giải bài tốn tối ưu cho một hàm mục tiêu bậc 2.
- Để giải quyết trường hợp các ví dụ khơng thể phân chia bằng một siêu phẳng, phương pháp SVM sẽ ánh xạ khơng gian ban đầu của các ví dụ sang một
27
khơng gian khác thường là cĩ số chiều cao hơn, sau đĩ tìm siêu phẳng với lề cực đại trong khơng gian này. Để tăng tính hiệu quả khi ánh xạ, một kỹ thuật được sử dụng là kỹ thuật dùng hàm nhân (kernel function) thay cho tích cĩ hướng của các vec tơ. Cĩ 4 hàm kernel phổ biến được đề cập trong thuật tốn SVM là:
Linear
Radial basis function (RBF) Polyminal
Sigmoid
Trong trường hợp phân loại với nhiều nhãn, cách thường dùng là kết hợp nhiều SVM nhị phân với nhau.
SVM cĩ nhiều ƣu điểm:
- Đây là phương pháp cĩ cơ sở lý thuyết tốt dựa trên lý thuyết về khả năng khái quát hĩa của bộ phân loại.
- Cĩ thể làm việc tốt với dữ liệu nhiều chiều (nhiều thuộc tính).
- Cho kết quả rất chính xác so với các phương pháp khác trong hầu hết ứng dụng.
Mơ hình ngơ ngữ ngram và kỹ thuật phân loại Nạve Bayes, SVM sẽ được sử dụng để kiểm nghiệm hiệu quả phân loại ý kiến ở chương 3.
Bên cạnh việc phân loại hay dự đốn tính cảm tích cực hay tiêu cực, nhiều nghiên cứu cũng đã thực hiện việc dự đốn điểm xếp hạng (1-5 sao) của người nhận xét. Trong trường hợp này, vấn đề được mơ hình hĩa như một vấn đề hồi quy vì điểm xếp hạng là số thứ tự. Một hướng nghiên cứu thú vị khác đã được tiến hành là học chuyển đổi (hay gọi là tương thích miền lĩnh vực) vì phân loại tình cảm là rất nhạy cảm với lĩnh vực mà dữ liệu đào tạo được trích chọn. Một bộ phân loại đào tạo sử dụng các văn bản ý kiến từ một lĩnh vực thường thực hiện kém khi nĩ được áp dụng hay kiểm thử trên các văn bản ý kiến ở miền lĩnh vực khác. Lý do là các từ và thậm chí cấu trúc ngơn ngữ được dùng trong các lĩnh vực khác nhau để biểu đạt ý kiến cĩ thể khác nhau về căn bản. Một từ ở lĩnh vực này là tích cực, nhưng sang lĩnh vực khác nĩ lại thành tiêu cực. Vì vậy, nhiệm vụ tương thích miền lĩnh vực là
28
cần thiết. Nghiên cứu hiện cĩ đã sử dụng dữ liệu được dán nhãn từ một lĩnh vực, và dữ liệu chưa được dán nhãn từ lĩnh vực đích và các từ ý kiến chung như những đặc tính cho việc tương thích.