Các bài tốn phân lớp quan điểm đều thực hiện theo hai giai đoạn cơ bản là giai đoạn huấn luyện và giai đoạn phân lớp.
Pha huấn luyện sẽ sử dụng một tập dữ liệu ban đầu đã đƣợc xác định nhãn trƣớc. Sau đĩ tập dữ liệu này sẽ đƣợc biểu diễn dƣới dạng các văn bản cần phân lớp là (c, ⃑) trong đĩ c là nhãn của văn bản, ⃑ là vector biểu diễn cho văn bản. Sau đĩ, dữ liệu sẽ đƣợc biến đổi thành một mơ hình dữ liệu phân lớp thơng qua các thuật tốn học máy.
Đầu vào: dữ liệu để học đã đƣợc gán nhãn quan điểm phân cực
Đầu ra: bộ phân lớp quan điểm phân cực tích cực, tiêu cực.
20
Hình 2.1 Sơ đồ giai đoạn huấn luyện
Pha phân lớp là giai đoạn sử dụng mơ hình phân lớp để phân lớp cho các văn bản mới chƣa cĩ nhãn. Trong luận văn này bƣớc phân lớp đƣợc thực hiện trên một tập thử nghiệm cĩ gán nhãn và so sánh kết quả gán nhãn với nhãn gốc để xác định độ chính xác.
Nhiệm vụ của bƣớc này là sử dụng bộ phân lớp quan để đánh giá quan điểm của dữ liệu mới.
Đầu vào: một câu tweet mới
Đầu ra: quan điểm của tweet đĩ.
Các bƣớc thực hiện giống với pha huấn luyện ở bốn bƣớc đầu chỉ khác ở 2 bƣớc cuối cùng:
• Thu thập dữ liệu
• Tiền xử lí
• Trích chọn đặc trƣng • Vector hĩa dữ liệu • Thuật tốn huấn luyện • Mơ hình phân lớp
21
Hình 2.2 Sơ đồ giai đoạn phân lớp
Dữ liệu mới cần phân lớp sẽ qua quá trình tiền xử lý, trích chọn đặc trƣng, đƣợc biểu diễn dƣới dạng vector đặc trƣng, cuối cùng sẽ đi qua bộ phân loại sử dụng mơ hình phân lớp ở trên. Đầu ra của giai đoạn này chính là dữ liệu mới đã đƣợc gán nhãn phân lớp.
Thu thập dữ liệu 2.1.1
Trong giai đoạn huấn luyện, việc thu thập dữ liệu đĩng vai trị quan trọng. Bộ dữ liệu ban đầu phải cĩ một số yêu cầu nhƣ: đƣợc gán nhãn sẵn và cĩ số lƣợng đủ lớn. Dữ liệu này phải đƣợc gán nhãn một cách chính xác, loại bỏ đi những dữ liệu giống hoặc tƣơng tự nhau. Số lƣợng dữ liệu cũng phải đủ lớn để tăng tính chính xác của mơ hình sau huấn luyện. Việc thu thập dữ liệu cĩ thể từ nhiều nguồn khác nhau nhƣ crawler, nguồn cung cấp sẵn, v.v...
Dữ liệu thơ/gốc ban đầu thƣờng cĩ các đặc điểm: - Cĩ cấu trúc, bán cấu trúc hoặc phi cấu trúc.
• Thu thập dữ liệu
• Tiền xử lí
• Trích chọn đặc trƣng • Vector hĩa dữ liệu
• Phân loại bằng mơ hình phân loại • Dữ liệu đã gán nhãn
22
- Đƣợc đƣa vào từ các nguồn dữ liệu trong các hệ thống xử lý tập tin hoặc các hệ thống cơ sở dữ liệu.
Trong giai đoạn phân loại, dữ liệu đầu vào là dữ liệu chƣa đƣợc gán nhãn. Đối với thực nghiệm trong luận văn, chúng tơi sử dụng bộ dữ liệu đƣợc cung cấp tại http://sentiment140.com/for-students. Sentiment140 đƣợc tạo bởi Alec Go, Richa Bhayani, và Lei Huang, là những sinh viên đã tốt nghiệp ngành khoa học máy tính tạo trƣờng đại học Stanford. Đây là bộ dữ liệu đƣợc cung cấp cho mục đích nghiên cứu về phân loại quan điểm trên mạng xã hội Twitter. Bộ dữ liệu gồm 1.600.00 câu đã đƣợc gán nhãn sẵn vào 2 lớp tích cực và tiêu cực. Nguồn dữ liệu gốc đƣợc lấy thơng qua Twitter API, nên tuân theo một cấu trúc chung và định dạng trong tập tin CSV.
Tiền xử lý dữ liệu 2.1.2
Trong qui trình khai phá dữ liệu, cơng việc xử lý dữ liệu trƣớc khi đƣa vào các mơ hình là rất cần thiết, bƣớc này làm cho dữ liệu cĩ đƣợc ban đầu qua thu thập dữ liệu cĩ thể áp dụng đƣợc với các mơ hình khai phá dữ liệu cụ thể. Quá trình này xử lý dữ liệu thơ/gốc nhằm cải thiện chất lƣợng dữ liệu và do đĩ, cải thiện chất lƣợng của kết quả phân loại. Khơng cĩ dữ liệu tốt thì khơng thể cĩ kết quả khai phá tốt. Phần lớn cơng việc xây dựng một kho dữ liệu là trích chọn, làm sạch và chuyển đổi dữ liệu.
Dữ liệu thơ ban đầu chứa nhiều thơng tin khơng liên quan đến quá trình cũng nhƣ kết quả đầu ra của hệ thống nhƣ: ID của tweet, Thời gian, Query, Ngƣời dùng v.v... Trong bƣớc này loại bỏ những thơng tin dƣ thừa khơng cần thiết, chỉ giữ lại các thơng tin cĩ ích. Phần cịn lại là phần văn bản và phần mang quan điểm tƣơng ứng của phần văn bản đĩ.
Vì dữ liệu tweet là tự do, nhiễu và sai chính tả do đĩ việc chuẩn hĩa và tiền xử lí là quan trọng.
23
Trong một số tweet thƣờng chứa các biểu tƣợng cảm xúc. Biểu tƣợng cảm xúc cũng thể hiện quan điểm tích cực hay tiêu cực. Do đĩ, trong luận văn chúng tơi khơng loại bỏ các biểu tƣợng cảm xúc. Thay vào đĩ, chúng tơi sử dụng bộ từ điển biểu tƣợng cảm xúc [1] để phát hiện và đƣợc thay thế bằng các thẻ ||P|| nếu biểu tƣợng cảm xúc là tích cực, ||EP|| nếu biểu tƣợng là tích cực mạnh, ||N|| nếu biểu tƣợng cảm xúc là tiêu cực, ||NU|| nếu biểu tƣợng cảm xúc là trung lập.
Bảng 2.1 Ví dụ về biểu tƣợng cảm xúc trong từ điển
Biểu tƣợng cảm xúc Tính quan điểm
:-) :) :o) :] :3 :c) Tích cực
:D C: Tích cực mạnh
:-( :( :c :[ Tiêu cực
D8 D; D= DX Tiêu cực mạnh
: | Trung lập
Trong một tweet ngƣời ta thƣờng sử dụng “@” trƣớc tên ngƣời dùng để trả lời ngƣời dùng khác. Nội dung của tweet này cĩ nhiều khả năng là “nội dung cá nhân” (personal content). Các nghiên cứu trƣớc cho thấy “nội dung cá nhân” trên tồn bộ chứa quan điểm nhiều hơn “nội dung chính thức” (personal content) [2]. Vì thế dùng đặc trƣng “@username” là một đặc trƣng nhị phân (cĩ hoặc khơng).
Chia sẻ link trong tweet là rất phổ biến trên twitter. Hầu hết các tweet chứa link thƣờng cĩ mục đích giới thiệu đến các liên kết (ví dụ tweet của quý vị đƣợc đăng bởi BBC News). Ngồi ra, spam trong twitter thƣờng chứa link. Do đĩ sử dụng đặc trƣng chứa link là một đặc trƣng để xây dựng mơ hình.
Hashtag là ngƣời dùng đánh dấu các chủ đề và bắt đầu bằng ký tự “#”. Sử dụng đặc trƣng chứa hashtag là một đặc trƣng để xây dựng mơ hình.
Từ những nhận xét trên, áp dụng vào quá trình tiền xử lý trong luận văn, chúng tơi sử dụng những đặc trƣng về tên ngƣời dùng, hashtag, link. Từ đĩ, thay thế những tag tên ngƣời dùng “@” thành ||T||, những hashtag thành ||H||, link thành ||U||.
24
Trong dữ liệu tweet thu đƣợc chứa nhiều những từ phổ biến, chung chung, khơng mang ý nghĩa về quan điểm của câu nhƣ “the”, “and”, “too” v.v... Những từ thế này đƣợc gọi là “stop word”. Ví dụ câu sau đây:
“The way to the school is long and hard when walking in the rain.”
Từ “the” xuất hiện 3 lần nhƣng khơng cĩ liên quan gì đến quan điểm của câu. Các “stop word” này khơng cĩ ảnh hƣởng đến quan điểm của tài liệu. Khơng những thế, chúng cịn làm tăng khơng gian lƣu trữ và giảm tốc độ xử lý. Do đĩ, việc loại bỏ các “stop word” là một phần trong quá trình tiền xử lý.
Bằng cách sử dụng phân loại Stanford và phân loại SVM cơ sở, theo Alec Go và cộng sự [1,2] quan sát thấy rằng việc xác định lớp tiêu cực dƣờng nhƣ khĩ khăn hơn so với lớp tích cực, chỉ bằng cách nhìn vào độ chính xác, độ hồi tƣởng cho lớp này. Đây là lý do tại sao chúng tơi quyết định thêm phủ nhận nhƣ một đặc trƣng cụ thể đƣợc thêm vào khi “no” hoặc “not” đƣợc quan sát thấy trong các bộ dữ liệu. Đối với những từ mang ý nghĩa phủ định, chúng tơi thay thế bằng ký tự ||NOT||.
Tiếp theo, trong tập dữ liệu xuất hiện các từ kéo dài do ngƣời dùng viết khơng đúng ngữ pháp, chẳng hạn nhƣ “Cooooool”. Chúng tơi cũng chuẩn hĩa các từ này về dạng từ gần chuẩn nhƣ “Coool”.
Do đặc điểm số lƣợng ký tự tối đa là 140 trong mỗi tweet, nên ngƣời dùng cũng thƣờng sử dụng các từ viết tắt, các biến thể của một từ để rút ngắn tweet. Trong quá trình tiền xử lý cĩ sử dụng một từ điển chuẩn hĩa [3], từ điển này bao gồm các biến thể của một từ và từ gốc của nĩ. Các từ trong tập dữ liệu nếu khớp với các biến thể sẽ đƣợc thay thế bằng các từ gốc. Ví dụ:
Bảng 2.2 Ví dụ từ điển chuẩn hĩa
Biến thể Từ gốc
Wooda Would
Luv Love
hold‟n Holding
25
Chúng tơi cũng sử dụng một bộ từ điển viết tắt2 [1]. Ví dụ:
Bảng 2.3 Ví dụ về từ điển viết tắt
Từ viết tắt Từ gốc
gr8, gr8t Great
Lol laughing out loud
Rotf rolling on the floor
Bff best friend forever
Bởi vì ý nghĩa của các từ viết hoa và viết thƣờng là giống nhau, hơn nữa, nếu khơng xử lý các từ viết hoa thành từ viết thƣờng, bộ từ điển sẽ tăng nhiều, khơng gian xử lý cũng tăng lên đáng kể. Điều này sẽ làm tăng yêu cầu tài nguyên xử lý, chất lƣợng của hệ thống thấp hơn. Chính vì vậy, chúng tơi đã chuyển tất cả các từ trong bộ dữ liệu thành từ viết thƣờng để đạt đƣợc mục đích trên.
Trích chọn đặc trưng và vector hĩa dữ liệu 2.1.3
Trích chọn đặc trƣng (Feature Selection, Feature Extraction) là một nhiệm vụ chính trong triển khai các mơ hình khai phá dữ liệu. Một vấn đề gặp phải là các tập dữ liệu sử dụng để xây dựng mơ hình học máy chứa nhiều thơng tin khơng cần thiết (thậm chí gây nhiều) cho việc xây dựng mơ hình. Nếu ta sử dụng tất cả các thuộc tính để xây dựng mơ hình thì ta cần rất nhiều tài nguyên về CPU, bộ nhớ trong quá trình huấn luyện mơ hình, hơn nữa điều đĩ cĩ thể làm giảm độ chính xác của mơ hình và gây khĩ khăn trong phát hiện tri thức.
Trích chọn đặc trƣng đƣợc dùng để:
- Đơn giản hĩa các mơ hình, giúp chúng dễ dàng diễn tả bởi các nhà nghiên cứu.
- Thời gian huấn luyện ngắn hơn
26
- Giảm phƣơng sai.
Những tiền đề chính khi sử dụng một kỹ thuật trích chọn đặc trƣng là các dữ liệu cĩ chứa nhiều đặc trƣng dƣ thừa hoặc khơng liên quan, do đĩ cĩ thể loại bỏ mà khơng mất mát nhiều thơng tin.
Sau khi đã trích chọn đƣợc tập đặc trƣng đƣợc sử dụng, việc tiếp theo là chuyển các văn bản hay dữ liệu ban đầu thành các vector đặc trƣng. Việc này nhằm mục đích tạo nên dữ liệu đầu vào đƣợc sử dụng trong các thuật tốn huấn luyện, chẳng hạn nhƣ SVM.
Ở bƣớc huấn luyện ta sẽ sử dụng thuật tốn SVM, trong khi đĩ dữ liệu nhƣ trên chỉ thích hợp cho con ngƣời đọc, muốn đƣa vào máy học SVM để tạo ra mơ hình phân loại và kiểm tra mơ hình trên bộ kiểm thử thì phải chuyển đổi các văn bản ở trên thành các vector vì máy học SVM chỉ nhận dữ liệu ở dạng này.
Tại bƣớc này ta phải quyết định lựa chọn các đặc trƣng nào trong câu để biểu diễn tweet thành vector, việc này gọi chính là trích chọn đặc trƣng. Thực nghiệm này đƣợc thực hiện trên các tập đặc trƣng nhƣ sau:
Bảng 2.4 Các đặc trƣng sử dụng trong bộ phân lớp quan điểm
Đặc trƣng Mơ tả
Unigram Đặc trƣng từng từ riêng lẻ trong câu
Bigram Đặc trƣng chuỗi chuỗi 2 từ liên tiếp trong câu Trigram Đặc trƣng chuỗi gồm 3 từ liên tiếp trong câu Đặc trƣng tweet Bao gồm các đặc trƣng Tag, Hashtag, Link
Biểu tƣợng cảm xúc Các đặc trƣng biểu tƣợng cảm xúc: tích cực, tiêu cực, trung lập, tích cực mạnh, tiêu cực mạnh Từ phủ định Đặc trƣng chứa các từ phủ định nhƣ “no”, “not”... Độ tƣơng đồng dựa trên
tâm (CBS) Đặc trƣng độ tƣơng đồng dựa trên tâm Đặc trƣng Log-count ratio Đặc trƣng theo Log-count ratio
27
- Biểu diễn các đặc trƣng tweet nhƣ tag thành ||T||, hashtag thành ||H||, link thành ||U||.
- Biểu diễn các từ phủ định thành ||NOT||
- Biểu diễn các biểu tƣợng cảm xúc tùy theo mức độ quan điểm thành ||EP|| nếu là tích cực mạnh, ||P|| nếu là tích cực, ||EN|| nếu là tiêu cực mạnh, ||N|| nếu là tiêu cực và ||NU|| nếu là trung lập. Ba bƣớc trên đây đã đƣợc xử lý ngay trong quá trình tiền xử lý.
- Tiếp theo, xây dựng bộ từ điển dựa theo unigram, bigram và trigram. - Vector hĩa dữ liệu theo unigram, bigram và trigram.
- Chuyển đổi các vector ở trên sang khơng gian CBS, xây dựng tập đặc trƣng theo CBS-L.
- Xây dựng đặc trƣng theo Log-count ratio.
Sau các bƣớc trên, ta thu đƣợc tập các vector đặc trƣng đƣợc sử dụng cho bƣớc sau.
Sử dụng thuật tốn huấn luyện tạo mơ hình phân lớp 2.1.4
Các vector đặc trƣng sau khi thu đƣợc từ bƣớc trên đƣợc sử dụng để xây dựng mơ hình phân lớp qua thuật tốn học máy. Mơ hình phân lớp sau đĩ đƣợc dùng cho việc phân loại dữ liệu mới.