Tải bản đầy đủ (.docx) (16 trang)

Phân loại văn bản bằng thuật toán Naïve Bayes

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (152.07 KB, 16 trang )

MC LC
MC LC...................................................................................................................... i
LI NểI U............................................................................................................... ii
CHNG 1: GII THIU CHUNG V PHN LOI VN BN..............................1
1.1. Gii thiu.......................................................................................................1
1.2. nh ngha......................................................................................................1
1.3. Quy trỡnh phõn loi vn bn...........................................................................2
1.4. Khỏi nim c bn trong phõn loi vn bn.....................................................3
1.4.1. Tp vn bn hun luyn (Training documents set)..................................3
1.4.2. T khúa...................................................................................................3
1.4.3. Thut ng................................................................................................3
1.4.4. T dng...................................................................................................3
1.4.5. Trng s..................................................................................................3
1.4.6. Tin x lý (Preprocessing)......................................................................3
1.4.7. ỏnh ch s (Indexing)............................................................................4
1.4.8. Trớch chn c trng (Feature selection).................................................4
CHNG 2: THUT TON NAẽVE BAYES.............................................................5
2.1. nh lý Bayes.................................................................................................5
2.2. Mụ hỡnh Naùve Bayes.....................................................................................7
2.2.1. Gii thiu................................................................................................7
2.2.2. C ch hot ng....................................................................................7
2.2.3. u im..................................................................................................9
2.2.4. Nhc im..........................................................................................10
CHNG 3: V D P DNG..................................................................................11
3.1. Bi toỏn........................................................................................................11
3.2. Bc hun luyn...........................................................................................11
3.3. Bc phõn lp..............................................................................................11
3.4. Kt qu.........................................................................................................12
KT LUN.................................................................................................................13
TI LIU THAM KHO...........................................................................................14



Lời nói đầu

LỜI NÓI ĐẦU
Nhiều năm trở lại đây, các loại thông tin đã phát triển không ngừng về cả số lượng
và chất lượng . Do đó số lượng văn bản số hóa ngày nay đang tăng dần theo cấp số
nhân, cùng với sự gia tăng của số lượng văn bản, nhu cầu tìm kiếm văn bản cũng tăng
theo, khi đó phân loại văn bản tự động là một yêu cầu cấp thiết được đặt ra. Phân loại
văn bản là một vấn đề quan trọng trong lĩnh vực xử lý ngôn ngữ. Nhiệm vụ của bài
toán này là gán các tài liệu văn bản vào nhóm các chủ đề cho trước. Đây là một bài
toán rất thường gặp trong thực tế điển hình như : một nhà chuyên phân tích thị thường
chứng khoán, anh ta cần phải tổng hợp rất nhiều tài liệu, bài viết về thị trường chứng
khoán để đọc và đưa ra phán đoán của mình. Tuy nhiên, anh ta không thể đọc tất cả
các bài viết, bài báo hay các tài liệu để rồi phân loại chúng đâu là tài liệu chứng khoán
sau đó anh ta mới đọc kỹ chúng cho mục đích của anh ta. Lý do của vấn đề này là bởi
vì số lượng bài viết, bài báo hiện nay rất nhiều, đặc biệt là trên Internet, nếu để đọc hết
được tất cả tài liệu đó thì sẽ mất rất nhiều thời gian.
Để giải bài toán này đã có rất nhiều phương pháp được đưa ra như : thuật toán
Naïve Bayes, K-NN (K-Nearest-Neighbor), Cây quyết định (Decision Tree), Mạng
Neuron nhân tạo (Artificial Neural Network) và SVM (Support Vector Machine). Mỗi
phương pháp đều cho kết quả khá tốt cho bài toán này, tuy nhiên phương pháp phân
loại văn bản bằng thuật toán Bayes được sử dụng phổ biến hơn cả và dễ dàng cài đặt.
Trong bài tiểu luận này em xin trình bày về phương pháp “Phân loại văn bản bằng
thuật toán Naïve Bayes” . Nội dung bài tiểu luận gồm có ba phần:
Chương 1: Giới thiệu chung về phân loại văn bản
Chương 2: Trình bảy về thuật toán Naïve Bayes
Chương 3: Ví dụ áp dụng

Thái Thị Mỹ Hạnh



Chương 1: Giới thiệu chung về phân loại văn bản

CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PHÂN LOẠI VĂN BẢN
1.1. Giới thiệu
Nhiều năm trở lại đây, các loại thông tin đã phát triển không ngừng về cả số
lượng và chất lượng. Các nghiên cứu về khai phá dữ liệu dạng văn bản đang được
quan tâm hơn trong thời gian gần đây vì số lượng các tài liệu điện tử tăng nhanh chóng
từ nhiều nguồn khác nhau. Không kể tới những văn bản có cấu trúc, số lượng các văn
bản không cấu trúc và cấu trúc cũng tăng lên quá lớn. Phân loại văn bản giúp sẽ giúp
chúng ta tìm kiếm thông tin một cách nhanh chóng hơn thay vì phải tìm lần lượt trong
từng văn bản, hơn nữa khi mà số lượng văn bản đang gia tăng một cách nhanh chóng
thì thao tác tìm lần lượt trong từng văn bản sẽ mất rất nhiều thời gian, công sức và là
một công việc nhàm chán và không khả thi. Chính vì thế nhu cầu phân loại văn bản tự
động là thực sự cần thiết. Mục đích chính của việc khai phá dữ liệu văn bản là cho
phép người dùng trích xuất thông tin của các nguồn văn bản và sử dụng chúng thông
qua các công cụ như: tra cứu, hỏi đáp, phân loại và tóm tắt sử dụng ngôn ngữ tự nhiên.
Có rất nhiều công trình nghiên cứu về phân loại văn bản như: Support Vector
Machine, K–Nearest Neighbor, Linear Least Squares Fit, Neural Network, Naïve
Bayes, Centroid Base… Điểm chung của các phương pháp này đều dựa vào xác suất
thống kê hoặc dựa vào trọng số của các từ, cụm từ trong văn bản. Trong mỗi phương
pháp đều có cách tính toán khác nhau, tuy nhiên các phương pháp này đều phải thực
hiện một số bước chung như: đầu tiên mỗi phương pháp sẽ dựa vào thông tin về sự
xuất hiện của các từ trong văn bản (tần số xuất hiện trong tập văn bản,…) để biểu diễn
thành dạng vector, sau đó tùy từng bài toán cụ thể mà chúng ta sẽ quyết định chọn áp
dụng phương pháp nào, công thức tính toán nào cho phù hợp để phân loại tập văn bản
dựa trên tập các vector đã xây dựng được ở bước trên, nhằm mục đích đạt được kết
quả phân loại tốt nhất.
1.2. Định nghĩa
Bài toán phân loại văn bản (text classification) là bài toán cơ bản của lĩnh vực

khai phá văn bản (text mining). Phân loại văn bản là sự phân loại không cấu trúc các
tài liệu văn bản dựa trên một tập hợp của một hay nhiều loại văn bản đã được định
nghĩa trước. Quá trình này thường được thực thi bằng một hệ thống tự động gán cho
các tài liệu văn bản một loại nào đó.
Phân loại văn bản tức là gán văn bản vào một hoặc một số nhóm văn bản đã
được biết trước. Phân loại văn bản chính là gán nhãn (lớp/chủ đề) một cách tự động
dựa vào nội dung của văn bản. Phân loại văn bản được ứng dụng trong nhiều lĩnh vực
như tìm kiếm thông tin, lọc văn bản, tổng hợp tin tức tự động, thư viện điện tử.
Bài toán phân loại văn bản có thể được định nghĩa như sau. Từ một tập các văn
Thái Thị Mỹ Hạnh


Chương 1: Giới thiệu chung về phân loại văn bản

bản D = {d1, d2, …, dn}, được gọi là tập huấn luyện, trong đó các tài liệu d i được gán
nhãn chủ đề ci với ci thuộc tập các chủ đề C = {c 1, c2, …, cn} để xây dựng bộ phân lớp.
Nhiệm vụ của bộ phân lớp là gán đúng nhãn chủ đề c k cho một tài liệu mới dk bất kỳ,
trong đó ck thuộc vào tập chủ đề C.
Minh họa trực quan nhất cho việc phân loại văn bản này đó chính là việc sắp
xếp các tin tức trên báo vào các danh mục tương ứng như thể thao, giải trí, xã hội...
như các tờ báo điện tử thường làm. Việc này có thể được thực hiện thủ công bởi các
biên tập viên tuy nhiên nó rất là mất thời gian và công sức. Thay vào đó chúng ta sẽ sử
dụng một số kĩ thuật học máy để tiến hành phân loại tự động các tin tức đó.
Đặc điểm nổi bật của bài toán này là sự đa dạng của chủ đề văn bản và tính đa
chủ đề của văn bản. Tính đa chủ đề của văn bản làm cho sự phân loại chỉ mang tính
tương đối và có phần chủ quan, nếu do con người thực hiện, và dễ bị nhập nhằng khi
phân loại tự động. Rõ ràng một bài viết về Giáo dục cũng có thể xếp vào Kinh tế nếu
như bài viết bàn về tiền nong đầu tư cho giáo dục và tác động của đầu tư này đến kinh
tế - xã hội. Về bản chất, một văn bản là một tập hợp từ ngữ có liên quan với nhau tạo
nên nội dung ngữ nghĩa của văn bản. Từ ngữ của một văn bản là đa dạng do tính đa

dạng của ngôn ngữ (đồng nghĩa, đa nghĩa, từ vay mượn nước ngoài,…) và số lượng từ
cần xét là lớn. Ở đây cần lưu ý rằng, một văn bản có thể có số lượng từ ngữ không
nhiều, nhưng số lượng từ ngữ cần xét là rất nhiều vì phải bao hàm tất cả các từ của
ngôn ngữ đang xét.
1.3. Quy trình phân loại văn bản
Quy trình phân loại chung cho các phương pháp phân loại:
 Bước 1: Xây dựng bộ dữ liệu chủ quan dựa vào tài liệu văn bản đã được
phân loại sẵn. Tiến hành học cho bộ dữ liệu, xử lí và thu thập được dữ liệu
của quá trình học là các đặc trưng riêng biệt cho từng chủ đề.
 Bước 2: Dữ liệu cần phân loại được xử lí, rút ra đặc trưng kết hợp với đặc
trưng được học trước đó để phân loại và đưa ra kết quả. Dữ liệu đầu vào cho
quá trình học máy hay dữ liệu đầu vào để phân loại đều là dạng văn bản đã
qua công đoạn tiền xử lí. Công đoạn tiền xử lí này rất quan trọng và cần
thiết, nó làm tối ưu hóa dữ liệu trong việc lưu trữ và xử lí. Các công đoạn
trong quá trình tiền xử lí văn bản bao gồm: tách từ tiếng Việt, loại bỏ các từ
dừng, từ tầm thường lấy các danh từ. Sau đó, rút trích đặc trưng và biểu diễn
văn bản

Thái Thị Mỹ Hạnh


Chương 1: Giới thiệu chung về phân loại văn bản

1.4. Khái niệm cơ bản trong phân loại văn bản
1.4.1. Tập văn bản huấn luyện (Training documents set)
Tập văn bản huấn luyện là một tập hợp các dữ liệu được sử dụng trong các quá
trình tìm kiếm những quan hệ, các luật để dùng cho dự đoán hoặc dự báo sau này.
1.4.2. Từ khóa
Từ khóa: là các từ xuất hiện trong một văn bản có nghĩa trong từ điển.
1.4.3. Thuật ngữ

Thuật ngữ: là các từ khóa có nghĩa liên quan đến một số lĩnh vực nào đó. ví dụ:
"máy tính", "công nghệ phần mềm", "tính toán song song". Các thuật ngữ này thuộc về
lĩnh vực "tin học".
1.4.4. Từ dừng
Từ dừng: Nhiều từ được dùng để biểu diễn cấu trúc câu, xuất hiện thường xuyên
trong các văn bản, nhưng hầu như không mang ý nghĩa về mặt nội dung, chẳng hạn
các giới từ, liên từ, … những từ đó được gọi là từ dừng. Ví dụ: Có thể, nếu, vì vậy, sau
khi, thì, một số, với lại, quả thật, hầu như, …
1.4.5. Trọng số
Trọng số của từ là độ quan trọng hay hàm lượng thông tin mà từ đó mang lại chovăn
bản. Trọng số của từ là đại lượng dùng để đo sự khác biệt giữa văn bản chứa nó với
các văn bản khác.
1.4.6. Tiền xử lý (Preprocessing)
Tiền xử lý là một bước quan trọng trước khi nhận diện văn bản hoặc thực hiện việc
gán nhãn cho tập văn bản huấn luyện. Đầu tiên cần biểu diễn văn bản dưới dạng các từ
(word) rõ ràng. Các văn bản được chuẩn bị thực hiện phân loại thường có số chiều đặc
trưng là khá lớn. Thông thường, các bước tiền xử lý bao gồm:
Thái Thị Mỹ Hạnh


Chương 1: Giới thiệu chung về phân loại văn bản

Tokenization: Văn bản được coi như là một chuỗi, do đó cần phân chia thành danh
sách các tokens (token ở đây có thể là ký tự, từ,...)
Loại bỏ các từ dừng: Loại bỏ các từ dừng được coi như là một bước giúp lọc bỏ các
nhiễu, giúp hạn chế các sai số trong quá trình tính toán và cũng giảm bớt được số
chiều của đặc trưng. Các từ dừng như “và”, “thôi”, “này”.
1.4.7. Đánh chỉ số (Indexing)
Biểu diễn văn bản là một trong những kỹ thuật tiền xử lý, nó được sử dụng để giảm
độ phức tạp của văn bản và dễ dàng trong lưu trữ và xử lý, văn bản có thể biến đổi từ

dạng chữ đầy đủ thành một véc tơ văn bản. Thông thường nhất sử dụng mô hình véc tơ
không gian. Các văn bản được biểu diễn bằng các véc tơ từ .
1.4.8. Trích chọn đặc trưng (Feature selection)
Sau khi tiền xử lý và đánh chỉ số, bước quan trọng tiếp theo của phân loại văn bản
là trích chọn đặc trưng để xây dựng véc tơ không gian, để làm tăng chất lượng, độ
chính xác của phân loại văn bản. Ý tưởng chính của trích chọn đặc trưng là lựa chọn ra
tập các đặc trưng từ trong văn bản gốc. Trích chọn đặc trưng được thực hiện bằng cách
giữ lại các từ có chỉ số cao theo một độ đo đã được xác định trước. Bởi bài toán phân
loại văn bản thường là những bài toán có số chiều đặc trưng cao. Một số các độ đo
đánh giá đặc trưng theo độ lợi ích thông tin (information gain), tần suất từ (term
frequency), độ tương hỗ thông tin (mutual information)...
Đối với bài toán phân loại đối tượng nói chung và bài toán phân loại văn bản nói
riêng, giai đoạn trích chọn đặc trưng là quan trọng. Đại đa số các công trình vừa nêu
sử dụng toàn văn nội dung của văn bản cho giai đoạn trích chọn đặc trưng, điều này có
thể là nguyên nhân của 2 hạn chế: (1) số lượng đặc trưng lớn sẽ dẫn đến độ phức tạp
cao, (2) khi số lượng đặc trưng quá lớn có thể sẽ chứa nhiễu dẫn đến độ chính xác của
giai đoạn phân lớp bị hạn chế.

Thái Thị Mỹ Hạnh


Chng 2: Thut toỏn Naùve Bayes

CHNG 2: THUT TON NAẽVE BAYES
2.1. nh lý Bayes
2.1.1.1. Lý thuyt
Naive Bayes l thut toỏn phõn loi da trờn nh lý Bayes. nh lý Bayes
thng c dựng trong lý thuyt xỏc sut, cho phộp tớnh xỏc xut xy ra s kin Y khi
bit s kin liờn qua X ó xy ra.
õy l thut toỏn c xem l n gin nht trong cỏc phng phỏp. B phõn lp

Bayes cú th d bỏo cỏc xỏc sut l thnh viờn ca lp, chng hn xỏc sut mu cho
trc thuc v mt lp xỏc nh. Chỳng gi nh cỏc thuc tớnh l c lp nhau (c
lp iu kin lp).
Thut toỏn Naùve Bayes da trờn nh lý Bayes c phỏt biu nh sau :
Trong ú:
Y i din mt gi thuyt, gi thuyt ny c suy lun khi cú c chng c
mi X.
P(X) : xỏc xut X xy ra (Xỏc sut biờn duyờn ca X).
P(Y) : xỏc xut Y xy ra (iu kin tiờn nghim ca Y).
P(X|Y) : xỏc xut X xy ra khi Y xy ra (xỏc sut cú iu kin, kh nng X khi Y
ỳng).
P(Y|X) : xỏc sut hu nghim ca Y nu bit X.
p dng trong bi toỏn phõn loi, cỏc d kin cn cú :
D: tp d liu hun luyn ó c vector hoỏ di dng

=( x1, x2, , xn )

Ci: tp cỏc ti liu ca D thuc lp Ci vi i={1,2,3,}
Cỏc thuc tớnh x1,x2,xn c lp xỏc sut ụi mt vi nhau.
Theo nh lý Bayes :
Theo tớnh cht c lp iu kin :

Khi ú, lut phõn lp cho cỏc ti liu mi Xnew ={x1, x2, , xn} l:

Thỏi Th M Hnh


Chương 2: Thuật toán Naïve Bayes

Trong đó :

P(Ci) : được tính dựa trên tần suất xuất hiện tài liệu trong tập huấn luyện.
P(xk|C) : được tính từ những tập thuộc tính đã được tính trong quá trìn huấn
luyện.
2.1.1.2. Ví dụ
Khi có thông báo về dự báo thời tiết, câu hỏi đặt ra ở đây là chúng ta cần phán
đoán nội dung để đưa ra quyết định là có nên đi chơi hay không.
Chúng ta thực hiện phân tích câu thông báo để tìm các từ quan trọng và mapping
với các quyết định dự kiến và tổ chức thành bảng dữ liệu bên dưới
Từ Quan Trọng

Giả thuyết về quyết định

Nắng

Đi

Râm

Đi

Sương mù

Không đi

Mưa

Không đi

Âm u


Không đi

Áp dụng công thức đã nêu ở trên, chúng ta tính toán được các giá trị như sau
P(“đi”) = (số từ “đi”) / (tổng số từ trong giả thuyết) = = 0.4
P(“không đi”) = (số từ “không đi”) / (tổng số từ trong giả thuyết) = = 0.6
Giả sử đầu vào là câu “trời nắng đẹp”
Tính xác suất:
P(“đi”|“nắng”) = P(“đi”) * (số từ “nắng” mà có giải thuyết “đi”) / (số từ có giả
thuyết “đi”) = 0.4 * (1 / 2) = 0.2
P(“không đi” | “nắng”) = P(“không đi”) * (số từ “nắng” mà có giả thuyết “không
đi”) / (số từ trong giả thuyết “không đi”) = 0.6 * (0 / 3) = 0.0
Với kết quả tính toán trên, chúng ta nhận thấy rằng: P(“đi” | “nắng”) > P(“không
đi”|“nắng” ) => ở bước dự đoán chúng ta được gợi ý “nên đi chơi”.

Thái Thị Mỹ Hạnh


Chương 2: Thuật toán Naïve Bayes

2.2. Mô hình Naïve Bayes
2.2.1. Giới thiệu
Thuật toán Naïve Bayes dựa trên định lý Bayes được phát biểu như sau:
Áp dụng trong bài toán phân loại, các dữ kiện gồm có:
 D: tập dữ liệu huấn luyện đã được vector hóa dưới dạng
 Ci: phân lớp i, với i = {1,2,…,m}.
 Các thuộc tính độc lập điều kiện đôi một với nhau.
Theo định lý Bayes:
Theo tính chất độc lập điều kiện:
Trong đó:



là xác suất thuộc phân lớp i khi biết trước mẫu X.



xác suất là phân lớp i.



xác suất thuộc tính thứ k mang giá trị xk khi đã biết X thuộc phân lớp i.
Các bước thực hiện thuật toán Naïve Bayes:
Bước 1: Huấn luyện Naïve Bayes (dựa vào tập dữ liệu), tính và

Bước 2: Phân lớp , ta cần tính xác suất thuộc từng phân lớp khi đã biết trước
Xnew. Xnew được gán vào lớp có xác suất lớn nhất theo công thức
2.2.2. Cơ chế hoạt động
Ý tưởng cơ bản của cách tiếp cận Naïve Bayes là sử dụng xác suất có điều kiện
giữa từ và chủ đề để dự đoán xác suất chủ đề của một văn bản cần phân loại. Điểm
quan trọng của phương pháp này chính là ở chỗ giả định rằng sự xuất hiện của tất cả
các từ trong văn bản đều độc lập với nhau. Giả định đó làm cho việc tính toán Naive
Bayes hiệu quả và nhanh chóng hơn các phương pháp khác vì không sử dụng việc kết
hợp các từ để đưa ra phán đoán chủ đề. Kết quả dự đoán bị ảnh hưởng bởi kích thước
tập dữ liệu, chất lượng của không gian đặc trưng…
Một tài liệu văn bản bao gồm một chuỗi các câu, và mỗi câu bao gồm một chuỗi
các từ. Tuy nhiên, do sự phức tạp của việc mô hình hóa các chuỗi từ và các mối quan
hệ của chúng, một số giả thiết được tạo ra trong dẫn xuất của trình phân loại Bayes.

Thái Thị Mỹ Hạnh



Chương 2: Thuật toán Naïve Bayes

Cụ thể, phân loại Naive Bayesian xử lý từng tài liệu như một “túi” của các từ.
Văn bản đầu vào cho việc huấn luyện và phân lớp có cấu trúc plain text. Mô hình túi
từ (BoW- Bag of Words) được sử dụng để biểu diễn văn bản. Mô hình này chỉ quan
tâm đến trọng số một từ chỉ mục nào đó trong văn bản mà không quan tâm đến vị trí
xuất hiện của từ chỉ mục đó. Đối với mô hình túi từ, hai công việc cần phải giải quyết
là tách từ và gán trọng số:
1. Các từ của một tài liệu được tạo ra độc lập với ngữ cảnh của chúng, nghĩa là,
độc lập với các từ khác trong cùng một tài liệu cho nhãn lớp. Đây là giả định Naive
Bayes quen thuộc sử dụng trước đó.
2. Xác suất của một từ độc lập với vị trí của nó trong tài liệu. Ví dụ, khả năng
nhìn thấy những từ “sinh viên” ở vị trí đầu tiên của tài liệu cũng giống như nhìn thấy
nó ở bất kỳ vị trí khác.
3. Độ dài tài liệu độc lập với lớp tài liệu.
Mô tả vector đặc trưng của văn bản: Là vector có số chiều là số đặc trưng trong
toàn tập dữ liệu, các đặc trưng này đôi một khác nhau. Nếu văn bản có chứa đặc trưng
đó sẽ có giá trị 1, ngược lại là 0.
Thuật toán gồm 2 giai đoạn huấn luyện và phân lớp:
2.2.2.1. Huấn luyện: tính và
 Đầu vào:
 Các vector đặc trưng của văn bản trong tập huấn luyện (Ma trận MxN, với M là
số vector đặc trưng trong tập huấn luyện, N là số đặc trưng của vector).
 Tập nhãn/lớp cho từng vector đặc trưng của tập huấn luyện.
 Đầu ra:
 Các giá trị xác suất và .
Công thức tính đã làm trơn Laplace
Trong đó:
 |docsi|: số văn bản của tập huấn luyện thuộc phân lớp i.
 |total docs|: số văn bản trong tập huấn luyện.

 m số phân lớp
Cài đặt:
 Khởi tạo mảng A, B có kích thước m.
 Duyệt qua các văn bản trong tập dữ liệu, đếm số văn bản trong mỗi phân lớp
lưu vào A.
Thái Thị Mỹ Hạnh


Chương 2: Thuật toán Naïve Bayes

 Tính xác suất cho từng phân lớp theo công thức trên và lưu vào mảng B.
Công thức tính đã làm trơn Laplace:
Trong đó:
 : Số văn bản trong trong phân lớp i có đặc trưng thứ k mang giá trị x k. (hay số
văn bản trong lớp i, có xuất hiện/không xuất hiện đặc trưng k)
 : Số văn bản của tập huấn luyện thuộc phân lớp i.


Số giá trị có thể có của đặc trưng thứ k

Cài đặt:
 Với vector đặc trưng như mô tả bên trên, d k ở đây mang giá trị là 2, tương ứng
với xuất hiện và không xuất hiện. Do chỉ có 2 giá trị, ta có thể tính nhanh xác
suất không xuất hiện theo công thức
 Khởi tạo mảng 3 chiều C, chiều 1 có kích thước là m (số phân lớp), chiều 2 có
kích thước là N (số đặc trưng), chiều 3 có kích là 2 (dk) để lưu các giá trị .
 Duyệt qua các văn bản trong tập dữ liệu, tiến hành thống kê các chỉ số cần thiết
để tính xác suất theo công thức trên và lưu vào mảng C.
2.2.2.2. Phân lớp
 Đầu vào:

 Vector đặc trưng của văn bản cần phân lớp.
 Các giá trị xác suất và .
 Đầu ra:
 Nhãn/lớp của văn bản cần phân loại.
Công thức tính xác suất thuộc phân lớp i khi biết trước mẫu X
Dựa vào vector đặc trưng của văn bản cần phân lớp, áp dụng công thức trên tính
xác suất thuộc từng phân lớp cho văn bản, và chọn ra lớp có xác suất cao nhất.
2.2.3. Ưu điểm
 Dễ dàng và nhanh chóng để dự đoán và phân lớp dữ liệu thành các nhóm
khác nhau.
 Dự đoán đa lớp với độ chính xác cao
 Naive Bayes thực hiện tốt hơn so với các mô hình khác như hồi quy và
cần ít dữ liệu training.
Thái Thị Mỹ Hạnh


Chương 2: Thuật toán Naïve Bayes

2.2.4. Nhược điểm
 Khi tiến hành dự đoán một tập dữ liệu mà không hề có trong bộ đã được
training thì xác suất này được xác định là 0.
 Việc bộ dữ liệu về các lớp phân loại không đồng đều sẽ dẫn đến dự đoán
sai. Giả sử trong một câu có hai từ thuộc “khen” và “chê” thì hệ thống sẽ
dự đoán nó nghiêng hẵn một hướng nếu số lượng tập dữ liệu đã được train
trong hệ thống chúng ta có lượng từ tích cực (khen, tốt) vượt trội hơn
lượng từ không tích cực (phê bình, không tốt) hoặc ngược lại.

Thái Thị Mỹ Hạnh



Chương 3: Ví dụ áp dụng

CHƯƠNG 3: VÍ DỤ ÁP DỤNG
3.1. Bài toán
Ta có tập tài liệu để huấn luyện sau khi đã vector hoá (sử dụng phương pháp đơn giản
đếm sô lần xuất hiện) và rút trích đặc trưng như sau:
-

Bộ từ vựng (đặc trưng) : Huy chương, Đại hội, Chiến tranh, Cổ vũ
Huy chương Đại hội

Doc1
Doc2
Doc3
Doc4
Doc5
Doc6

42
10
11
33
28
8

Chiến
tranh
7
45
22

8
9
30

25
28
25
40
32
22

Cổ vũ

Class

56
2
4
48
60
1

Thể thao
Chính trị
Chính trị
Thể thao
Thể thao
Chính trị

Bảng 1.1. Bảng dữ liệu huấn luyện

Cho văn bản có vector đặc trưng sau: Docnew = (23,40,15,50). Xác định lớp
cho văn bản mới ?
3.2. Bước huấn luyện
 Tính xác xuất các lớp Ci trong tập huấn luyện
P(C1=” Chính trị”) = 3/6 = 0.5
P(C2=” Thể thao”) = 3/6 = 0.5
 Tính xác xuất P(xk|Ci)
-

Lớp C1 = “Chính trị”: Tổng = 208

P(Huy chương | Chính trị) = (10+11+8)/208 = 29/208
P(Đại hội | Chính trị) = (28+25+22)/208 = 75/208
P(Chiến tranh | Chính trị) = (45+22+30)/208 = 97/208
P(Cổ vũ | Chính trị) = (2+4+1)/208 = 7/208
-

Lớp C2 = “Thể thao”: Tổng = 388

P(Huy chương | Thể thao) = (42+33+28)/388 = 103/388
P(Đại hội | Thể thao) = (22+40+32)/388 = 97/388
P(Chiến tranh | Thể thao) = (7+8+9)/388 = 24/388
P(Cổ vũ | Thể thao) = (56+48+60)/388 = 164/388
3.3. Bước phân lớp
 Tính các xác xuất :
11


Chương 3: Ví dụ áp dụng


 Xác suất Docnew thuộc Thể thao:
P(Thể thao)*[P(Huy chương | Thể thao)*23*P(Đại hội|Thể thao)*40*P(Chiến tranh |
Thể thao)*15*P(Cổ vũ | Thể thao)*50]=598.62
 Xác suất Docnew thuộc Chính trị:
P(Chính trị)*[P(Huy chương| Chính trị)*23*P(Đại hội | Chính trị)*40*P(Chiến tranh |
Chính trị)*15*P(Cổ vũ | Chính trị)*50]=272.22
3.4. Kết quả
Do Xác suất Docnew thuộc Thể thao > Xác suất Docnew thuộc Chính trị nên Văn bản
Docnew thuộc về lớp Thể thao do max(Pnew )= 598,62

Thái Thị Mỹ Hạnh


Kết luận

KẾT LUẬN
Các hệ thống phân lớp có thể ứng dụng trong việc phân loại tài liệu của các thư
viện điện tử, phân loại văn bản báo chí trên các trang tin điện tử,… những hệ thống tốt,
cho ra kết quả khả quan, giúp ích nhiều cho con người.
Hầu hết các giả định được thực hiện bởi học Naive Bayes đều không đúng trong
thực tế. Ví dụ, các từ trong một tài liệu rõ ràng không độc lập với nhau. Giả thiết mô
hình hỗn hợp của sự tương ứng một-một giữa các lớp và các thành phần hỗn hợp có
thể không đúng bởi vì một lớp có thể chứa các tài liệu từ nhiều chủ đề. Mặc dù vi
phạm như vậy, các nhà nghiên cứu đã chỉ ra rằng học Naive Bayes tạo ra các mô hình
rất chính xác.
Học Naive Bayesian cũng rất hiệu quả. Nó chỉ quét dữ liệu huấn luyện một lần
để ước tính tất cả các xác suất cần thiết để phân loại. Nó cũng có thể được sử dụng như
một thuật toán gia tăng. Mô hình có thể được cập nhật dễ dàng khi dữ liệu mới xuất
hiện vì xác suất có thể được sửa đổi thuận tiện. Do đó, việc học Naive Bayesian được
sử dụng rộng rãi để phân loại văn bản.

Các thuật toán Naïve Bayes tính toán các khả năng cụ thể đối với các kiểu học có
giám sát. Việc thiết kế một hệ thống phân lớp Naïve Bayes trong thực tế thường dễ
dàng hơn so với các phương pháp phân lớp khác vì tính đơn giản của nó và thời gian
thực hiện rất nhanh.
Phương pháp Naïve Bayes tính xác suất rõ ràng cho các khả năng bằng cách đếm
tần suất các kết hợp dữ liệu khác nhau trong tập dữ liệu huấn luyện để tính xác xuất.
Tù theo mỗi mẫu văn bản mà có thể xác xuất thu được sẽ tăng hay giảm phụ thuộc vào
lượng từ tính được trong mỗi văn bản. Chính vì thế mà nó uyển chuyển hơn các
phương pháp khác.
Phương pháp học theo thuật toán Naïve Bayes có tính tăng trưởng tùy theo mẫu
huấn luyện. kết quả đưa ra là một xác suất dự đoán. Độ chính xác của thuật toán phụ
thuộc nhiều vào dữ liệu huấn luyện ban đầu.

Thái Thị Mỹ Hạnh

13


Tài liệu tham khảo

TÀI LIỆU THAM KHẢO
[1] Bing Liu, Web data Mining: Exploring Hyperlinks, Contents, and Usage
Data, Springer, 2007
[2]

Hoàng Kiếm, Đỗ Phúc : "Phân loại văn bản dựa trên cụm từ phổ biến",

kỷ yếu hội nghị khoa học lần 2, Trường Đại Học Khoa Học Tự Nhiên , 2000
[3]
H.Nguyễn et al : Internet and Genetics Algorithm-based Text

Categorization for Document in Vietnamese , 2005.

Thái Thị Mỹ Hạnh

14



×