Professional Documents
Culture Documents
(123doc) - Do-An-Thuat-Toan-Bayes-Va-Ung-Dung-Loc-Thu-Rac-Khoa-Cntt
(123doc) - Do-An-Thuat-Toan-Bayes-Va-Ung-Dung-Loc-Thu-Rac-Khoa-Cntt
(123doc) - Do-An-Thuat-Toan-Bayes-Va-Ung-Dung-Loc-Thu-Rac-Khoa-Cntt
ĐỒ ÁN MÔN HỌC
ĐỀ TÀI
Đà Nẵng – 2018
Đồ án thuật toán
Mục lục
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT................................................................................................... 4
2. Bài toán........................................................................................................................................................ 12
PHỤ LỤC.............................................................................................................................................. 19
2
Đồ án thuật toán
MỞ ĐẦU
Thống kê (toán học) là bộ môn học rất quan trọng và có nhiều ứng dụng to lớn
trong thực tế, giúp con người rút ra thông tin từ dữ liệu quan sát, nhằm giải quyết
các bài toán thực tế trong cuộc sống.
Trong đồ án này trình bày về một tiếp cận thống kê trong việc dự đoán sự kiện
dựa vào lý thuyết Bayes. Lý thuyết này nói về việc tính xác suất của sự kiện dựa
vào các kết quả thống kê các sự kiện trong quá khứ. Sau việc tính toán mỗi sự kiện
được gán xác xuất hay điểm (tùy vào mỗi phương pháp đánh giá) ứng với khả năng
có thể xảy ra với sự kiện đó. Và cuối cùng dựa vào ngưỡng để phân loại cho các sự
kiện.
Sau phần lý thuyết chúng ta sẽ tìm hiểu về bài toán thực tế trong ngành công
nghệ thông tin. Bài toán về việc lọc thư rác tự động. Giải quyết bài này là sự kết
hợp từ rất nhiều phương án như DNS Blacklist, kiểm tra người nhận, người gửi,
dùng bộ lọc Bayes, chặn địa chỉ IP, Blacklist/Whitelist,.... Dùng bộ lọc Bayes là
phương án thông minh nó gần gũi với người dùng bởi chính người dùng đã huấn
luyện nó nhận biết thư rác. Đồ án này tập trung vào việc tìm hiểu bộ lọc thư rác
Bayesspam – mã nguồn mở, cài đặt cho hệ thống email có tên là SquirrelMail – mã
nguồn mở đang được dùng cho hệ thống email của các trường đại học. Kết quả cho
thấy bộ lọc có mức độ hoạt động hiệu quả là khác nhau tùy thuộc việc người dùng
huấn luyện cho bộ lọc thông qua các thư điện tử mà họ cho là thư rác nhưng nói
chung bộ lọc đã đem lại hiệu quả khá tốt.
3
Đồ án thuật toán
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1. Phát biểu định lý Bayes
Định lý Bayes cho phép tính xác suất xảy ra của một sự kiện ngẫu nhiên A khi biết
sự kiện liên quan B đã xảy ra. Xác suất này được ký hiệu là P(A|B), và đọc là "xác
suất của A nếu có B". Đại lượng này được gọi xác suất có điều kiện hay xác suất
hậu nghiệm vì nó được rút ra từ giá trị được cho của B hoặc phụ thuộc vào giá trị
đó.
Theo định lí Bayes, xác suất xảy ra A khi biết B sẽ phụ thuộc vào 3 yếu tố:
Xác suất xảy ra A của riêng nó, không quan tâm đến B. Kí hiệu là P(A) và đọc là
xác suất của A. Đây được gọi là xác suất biên duyênhay xác suất tiên nghiệm, nó là
"tiên nghiệm" theo nghĩa rằng nó không quan tâm đến bất kỳ thông tin nào về B.
Xác suất xảy ra B của riêng nó, không quan tâm đến A. Kí hiệu là P(B) và đọc là
"xác suất của B". Đại lượng này còn gọi là hằng số chuẩn hóa (normalising
constant), vì nó luôn giống nhau, không phụ thuộc vào sự kiện A đang muốn biết.
Xác suất xảy ra B khi biết A xảy ra. Kí hiệu là P(B|A) và đọc là "xác suất của B
nếu có A". Đại lượng này gọi là khả năng (likelihood) xảy ra B khi biết A đã xảy
ra. Chú ý không nhầm lẫn giữa khả năng xảy ra A khi biết B và xác suất xảy ra A
khi biết B.Khi biết ba đại lượng này, xác suất của A khi biết B cho bởi công thức:
4
Đồ án thuật toán
Vấn đề là nếu số các đặc trưngn là lớn hay khi một đặc trưng có thể chiếm một số
lượng lớn các giá trị, sau đó dựa vào một mô hình trên các bảng xác suất là không
thể làm được. Do vậy, chúng ta công thức hóa lại các mô hình để dễ xử lý.
Trong thực hành, chỉ cần quan tâm tới tử số của phân số, khi mà mẫu số không phụ
thuộc vào C và các giá trị của các đặc trưng của Fi đã cho, nên mẫu số là hằng thực
sự.
Tử số tương đương với mô hình xác suất có thể được viết lại như sau, sử dụng định
nghĩa của xác suất có điều kiện:
5
Đồ án thuật toán
Bây giờ giả định "naive" giả định có điều kiện độc lập đưa vào: giả định rằng mỗi
đặc trưng Fi có điều kiện độc lập với tất cả các đặc trưng Fjchoj # i. Điều này có
nghĩa là
Điều này có nghĩa là dưới sự độc lập giả định ở trên, các điều kiện phân phối trên
các lớp học biến C có thể được thể hiện:
ở đây Z là một nhân tố xác định tỷ xích phụ thuộc vào F1, F2, .., Fn, chẳng hạn
một hằng số nếu các giá trị của các biến đặc trưng đều được biết.
Nếu có k lớp học và nếu một mô hình cho p(Fi) có thể được thể hiện trong các
thuật ngữ của r tham số, sau đó các mô hình naive Bayes tương ứng có (k- 1) +nrk
tham số. Trong thực tế, thường k = 2 (phân loại nhị phân) và r = 1 (các biến
Bernoulli như là các đặc trưng) được phổ biến, và như vậy tổng số lượng các tham
số của mô hình naive Bayes là2n + 1,ở đây n là số các đặc trưng nhị phân sử dụng
cho các dự đoán.
6
Đồ án thuật toán
nghĩa là, mô hình xác suất naive Bayes. Naive Bayes classifier kết hợp mô hình
này
với một luật quyết định. Là một luật chung để chọn nhiều nhất các giả thuyết có
khả
năng xảy ra, điều này được biết đến như là maximum a posteriori hay luật quyết
định
MAP. Classifier tương ứng là chức năng phân lớp được xác định như sau:
Một chú ý rằng giả định độc lập có thể dẫn đến một số kết quả không mong
muốn trong tính toán sau xác suất. Trong một số trường họp khi có một phụ thuộc
giữa
sự quan sát, xác suất kể trên có thể mâu thuẫn với xác suất tiền đề thứ hai do mọi
xác
Mặc dù rằng sự thật có thể áp dụng rộng rãi, giả định độc lập thường không chính
xác, các naive Bayes classifier có vài thuộc tính làm cho nó hữu ích trong thực
hành. Đặc biệt thực hành, sự tách riêng của lớp có điều kiện phân loại đặc trưng có
nghĩa là mỗi phân loại có thể được ước tính độc lập như là một phân phối một
chiều.
Toàn bộ classifier là mạnh đủ để bỏ qua các thiếu sót nghiêm trọng của nó trong
7
Đồ án thuật toán
lớp văn bản một xác suất mà tài liệu cần phân hoạch có thể thuộc loại đó. Tài liệu
đó
sẽ được gán cho lớp văn bản nào có xác suất cao nhất.
Xác suất P (ck| di) gọi là xác suất mà tài liệu di có khả năng thuộc vào lớp văn
tài liệu di sẽ được gán cho loại văn bản nào có xác suất hậu nghiệm cao nhất
Tóm lại phân loại văn bản sử dụng thuật toán Naive Bayes có thể diễn đạt
Với mỗi văn bản D (document), người ta sẽ tính cho mỗi loại một xác
suất mà tài liệu D có thể thuộc vào lớp tài liệu đó bằng việc sử dụng luật Bayes:
8
Đồ án thuật toán
Trong đó: D là tài liệu cần phân loại, Ci là một tài liệu bất kì. Theo giả định
của Naive Bayes xác suất của mỗi từ trong tài liệu D là độc lập với ngữ cảnh xuất
hiện
các từ đồng thời cũng độc lập với vị trí của các từ trong tài liệu. Xác suất P(D |Cj)
được tính toán từ tần suất xuất hiện của các từ đơn wi (word) trong tài liệu D
Như vậy biểu thức (1) có thể được viết lại như sau:
Giá trị lớn nhất của xác suất P(Cj | D ) được đưa ra bởi nguời làm công tác phân
loại. Giá trị này được gọi là ngưỡng hay ranh rới giữa các lớp văn bản mà chúng có
thể chứa tài liệu D.
Đây là một ví dụ về làm việc naive Bayesian để phân loại các tài liệu phân loại
vấn đề. Xem xét các vấn đề của phân loại các tài liệu theo nội dung của họ, ví dụ
vào
thư rác và không phải là thư rác trong các thư điện tô. Hãy tưởng tượng rằng các
tài
9
Đồ án thuật toán
liệu được lấy ra tò một số lớp học của các tài liệu có thể làm mô hình như là bộ các
từ
mà ở đây xác suất từ thứ i của một tài liệu xảy ra trong một tài liệu từ lớp c có thể
Xử lý như vậy đã đơn giản các ý tưởng, hơn nữa bằng cách giả sử rằng xác suất
của một tò trong một tài liệu là độc lập với chiều dài của một tài liệu hoặc tất cả
các tài
Sau đó, xác suất của một tài liệu D, cho một lớp học c, là
Câu hỏi mà mong muốn có câu trả lời là: "xác suất nào để một tài liệu D thuộc
và
Nên có:
10
Đồ án thuật toán
Giả định rằng thời điểm chỉ có hai lớp học, s và s (ví dụ như thư rác và
Bằng cách sử dụng các kết quả Bayesian trên, có thể viết:
Do đó:
Và như vậy
11
Đồ án thuật toán
Cuối cùng, các tài liệu có thể được phân loại như sau:
1. Đặt vấn đề
- Thư rác bắt đầu được gọi là "spam" sau chương trình truyền hình có tên "Monty
Python’s Flying Circus". Trong show truyền hình này, một nhóm cướp biển
Vikings đã vào ăn trong một nhà hàng chuyên phục vụ đồ hộp (spam), rồi hát
toáng
lên một ca khúc lặp đi lặp lại 2 chữ "quảng cáo". Ý nghĩa ban đầu của thư rác rất rõ
ràng: Một thứ lặp đi lặp lại và gây ra sự bực tức, khó chịu cho những người xung
quanh. Đó chỉ là trong một phạm vi hẹp còn trong môi trường internet khi không
còn
khoảng cách về địa lý nữa thì sẽ có rất nhiều người phải chịu sự bực tức, cảnh
nhàm
chán gây ức chế tâm lý và cực kỳ mất thời gian vào nó.
- Phần lớn các thư không mời mà đến, các thư chào hàng quảng cáo bị cho là thư
rác theo nhận xét của số đông người dùng thư điện tử. Đây là vấn đề nan giải mà
các hệ thống, hòm mail, các nhà quản trị mạng đang phải đối mặt trong thời điểm
hiện nay khi mà xã hội thông tin ngày càng phát triển với tốc độ chóng mặt. Đe lọc
và phát hiện thư rác, cần có giải pháp lâu dài như các biện pháp kĩ thuật, quy ước
xã hội và có thể dùng đến pháp luật. Nhưng khi các giải pháp này được thi hành thì
chỉ trong một khoảng thời gian ngắn chúng đã bị phá vỡ bởi các spammer, nguyên
nhân chính là họ luôn nghĩ ra những cái bẫy đánh lừa người dùng hay lách luật mà
các tổ chức chống thư rác quy ước.
- Như vậy giải pháp ngăn chặn thư rác nào hiệu quả và dùng được lâu dài? Một
phương pháp tốt nhất đó là để chính người dùng thư điện tô ngăn chặn thư rác, bởi
12
Đồ án thuật toán
họ
hiểu vấn đề một cách tường minh nhất. Chúng ta sẽ dùng cảm nhận về thư rác của
mỗi người để huấn luyện cho các bộ lọc thư rác của chính họ. Mỗi bộ lọc sẽ xử lý
thư rác tùy theo phong cách của từng người dùng thư điện tử. Và mô hình thống kê
Bayes được áp dụng để thực thi ý tưởng này. Từ những đặc điểm trên, ta thấy rằng
việc xây dựng được một bộ lọc thư rác thông minh có thể loại bỏ một cách chính
xác hiện nay là một nhiệm vụ còn nhiều thách thức.
2. Bài toán
- Thư điện tử là một trong những phương tiện để giao tiếp đáng tin cậy và hầu
như không tốn kém chi phí sử dụng. Phạm vi sử dụng của nó rộng khắp trên toàn
thế
giới và có thể dễ dàng truy cập bằng hầu hết các phương tiện truyền thông đã biến
nó
thành nạn nhân của những kẻ spam. Hậu quả đơn giản nhất là làm tốn băng thông
mạng và nghiêm trọng hơn là làm mất thời gian của người dùng thư điện tử, làm
lan
truyền vi rút máy tính. Có thời điểm người ta thống kê được rằng có đến 60% thư
điện tà là thư rác và mỗi ngày một người dung thư điện tử phải nhận ít nhất là 6 cú
spam.
- Chúng ta không thể đổi địa chỉ hòm thư mỗi lần bị spam bởi điều này không
những không hạn chế được thư rác mà có khi còn làm cho nó gia tăng. Vậy cần
phải tìm ra một giải pháp chống thư rác sử dụng bộ lọc được gắn thuật toán phân
loại với tính năng hiệu quả và kĩ thuật đơn giản dễ cài đặt. Và một yêu cầu không
thể thiếu là
có làm sao với thuật toán đó những kẻ spam hiểu rằng việc chúng cố tình spam là
vô
dụng
3. Dùng luật Bayes tính xác suất
Tính xác suất cho mỗi thẻ ta dùng luật Bayes để tính. Giả sử ta cần tính xác
suất cho thẻ chứa tò ‘promotion ’.Từ này chúng ta thường xuyên gặp trong thư
điện tử mời chào dịch vụ maketing. Công thức tính theo luật Bayes:
Trong đó:
Pr(S\ W) là xác suất mà thư mà chứa từ ‘promotion ’là thư rác
13
Đồ án thuật toán
Tuy nhiên để cho đơn giản và đã qua thực tế nên người ta chọn các xác suất
trước là giống nhau và đều có giá trị bằng 0.5. Tức là:
Bộ lọc mà dùng giả thiết này được gọi là "không đổi xứng", có nghĩa rằng chúng
không có sự đối xử phân biệt các thư đến. Giả thiết này cho phép rút gọn công
thức ở trên thành:
Bộ lọc thư rác Bayesspam vận dụng chính xác công thức trên để tính xác suất
cho mỗi từ đơn.
Sau khi đã tính được xác suất thư chứa từ đơn là thư rác ta cần kết hợp các xác suất
đơn đó lại thành một xác suất cuối cùng. Xác suất này dùng để đánh giá thư mà
chứa tất cả các từ đơn đó có xác suất là thư rác là bao nhiêu. Công thức tính xác
suất
kết hợp là:
Trong đó:
p là xác suất thư đang xét là thư rác
pl là xác suấtp(S\ W1), ứng với từ đầu tiên (ví dụ từ "promotion")
p2 là xác suấtp(S\ W2) , ứng với từ thứ hai (ví dụ tò "offer")
...
pN là xác suất p(S|W N), ứng với từ thứ N (ví dụ tò "home")
Kết quả p thường được dùng so sánh với một ngưỡng nào đó để quyết định
14
Đồ án thuật toán
thư đang xét có xác suất p đó có là thư rác hay không. Neu p lớn hơn giá trị
ngưỡng,
thư đó sẽ bị đánh dấu là thư rác, ngược lại sẽ không bị đánh dấu là thư rác.
Trong đó:
N good ứng với số thư không phải là thư rác.
N bad ứng với số thư là thư rác.
Công thức trên được diễn tả theo các biểu thức của ngôn ngữ Arc. Mỗi biểu
thức là một cặp dấu ngoặc đơn. Trong ngoặc là một danh sách với biểu thức đứng
ở vị trí đầu tiên theo sau là các tham số. Thực hiện biểu thức từ trái qua phải.
Ví dụ:
(< (+ g b) 5) tương đương với (g + b) < 5.
Công thức này sẽ tính xác suất cho một từ hay thẻ (word) như sau: Thẻ được
lấy từ trong bảng good, là bảng băm các thẻ của tập thư không phải là thư rác và
nhân
đôi lên. Nhân đôi lên để giảm độ chênh lệch xác suất giữa thư rác và không phải
thư
rác, tăng độ chính xác trong việc phân loại. Tiếp theo cũng thẻ đó ta lấy từ bảng
bad,
là bảng băm các thẻ tập thư rác. Như yậy ta có chỉ số g ứng với 2 lần suất hiện của
thẻ
trong tập thư không phải thư rác và b ứng với số lần xuất hiện của thẻ trong trong
15
Đồ án thuật toán
tập
thư rác. Neu như tổng g và b nhỏ hơn 5 thì thẻ sẽ bị loại bỏ. Xác suất tính được sẽ
nằm trong khoảng giá trị từ .01 đến .99. Xét cho cùng thì việc tính toán ở trên
tương
ứng với công thức tính xác suất ở dạng luật Bayes đơn giản như sau:
Như vậy kết quả của quá trình huấn luyện là một bảng băm hay nói khác hơn là
một cơ sở dữ liệu rút ra từ tập thư huấn luyện. Bảng băm này là ánh xạ của các thẻ
đến các giá trị xác xuất của chúng. Bảng băm này là cơ sở quyết định cho việc tính
toán xác suất của một lá thư điện tử là thư rác.
16
Đồ án thuật toán
- Từ việc tìm hiểuứng dụng BayesSpam, khoá luận đã rút ra được một số nhận định
về ưu điểm và nhược điểm của bộ lọc trong quá trình hoạt động. Kết quả phân loại
thư rác nhìn chung là gần giống với các kết quả đánh giá thư bởi người dùng.
- Tuy nhiên, do thời gian có hạn cũng như các kiến thức chuyên môn về hệ thống
thư điện tử nên các kết luận rút ra được trong quá trình nghiên cứu còn nhiều hạn
chế. Dưới đây là những ưu nhược điểm chính của bộ lọc thư rác Bayes.
- Những ưu điểm chính:
Ưu điểm của bộ lọc thư rác Bayes đó là nó có thể được huấn luyện bởi chính
người dùng cơ sở. Đây có thể thể nói là ưu điểm lớn nhất, nó tạo ra được nét
đặc trưng về cách nhìn nhận thư rác của mỗi người dùng.
Các thư rác mà một người dùng nhận được thường liên quan tới các hoạt
động trực tuyến của người dùng. Ví dụ, một người sử dụng có thể đã được
đăng ký vào một bản tin trực tuyến mà người sử dụng xem xét như là thư
rác. Đang xem thông tin này có thể chứa các từ ngữ được phổ biến cho tất cả
các bản tin, chẳng hạn như tên của bản tin và nguồn gốc của nó địa chỉ
email. Bộ lọc thư rác Bayesian sẽ chỉ định một xác suất cao hơn dựa trên
cách nhìn nhận của người sử dụng.
Thư điện thử hợp pháp sẽ nhận được nhìn nhận theo xu hướng khác nhau đối
với mỗi người. Ví dụ, trong môi trường một công ty, tên công ty của bạn và
tên của khách hàng sẽ được đề cập thường xuyên. Các bộ lọc sẽ chỉ định một
thư rác xác suất thấp hơn cho các email có chứa các tên đó.
Xác suất của các từ là duy nhất đối với mỗi người dùng và có thể lớn dần
theo thời gian huấn luyện, cùng với sự hiệu chỉnh việc huấn luyện mỗi khi
có thư lọc sai. Kết quả là, lọc thư rác Bayesian tăng độ chính xác khi được
đào tạo thường xuyên theo các quy tắc được xác định trước.
- Những nhược điểm chính:
Một kỹ thuật được sử dụng bởi Spammer nhằm cố gắng để giảm tính hiệu
quả của bộ lọc thư rác là dựa vào chính nguyên tắc hoạt động của nó. Kĩ
thuật này sẽ chèn các từ mà không phải là bình thường liên kết với các nội
dung spamvới số lượng lớn văn bảnhợp pháp(thu thập từ các nguồn tin tức
hợp pháp hay văn chương).Do đó giảm giá trị xác suất kết hợp của thư điện
tử là thư rác, làm cho nó càng có nhiều khả năng vượt qua bộ lọc thư rác
Bayes.
Một kỹ thuật khác được sử dụng để che mắt bộ lọc thư rác Bayes đó là thay
thế các văn bản bằng hình ảnh, hoặc trực tiếp đặt liên kết chứa nội dung
spam đến hình ảnh. Toàn bộ nội dung của tin nhắn, hoặc một số phần của
17
Đồ án thuật toán
nó, được thay thế bằng một hình ảnh có cùng một nội dung được trình bày
lôi cuốn người xem. Bộ lọc thư rác thường không thể phân tích hình ảnh
này, mà có thể chứa các từ nhạy cảm như "khiêu dâm". Tuy nhiên, nhiều hệ
thống thư điên tử đã vô hiệu hoá màn hình hiển thị của liên kết hình ảnh vì
lý do bảo mật, nhưng các spammer lại gửi liên kết đến hình ảnh ở xa có thể
tiếp cận với các mục tiêu spam ít hơn. Ngoài ra, một hình ảnh có kích thước
lớn hơn kích thước tương đương của văn bản. Do đó, các spammer cần
nhiều hơn nhu cầu băng thông để gửi tin nhắn trực tiếp bao gồm cả hình ảnh.
- Do vậy, sau bước tìm hiểu lý thuyết và ứng dụng thì hướng nghiên cứu tiếp của
đề tài nhằm tăng hiệu quả lọc là:
Tìm ra cái nhìn chung về thư rác của những người dùng thư trong cùng hệ
thống thư điện tử. Bằng cách rút ra những email có xác suất là thư rác cao để
bổ xung vào tập huấn luyện chung cho tất cả mọi ngườinhằm gia tăng kinh
nghiệm cho bộ lọc.
Ngăn chặn việc Spam bằng hình ảnh bằng việc đưa ra thông báo là thư rác
nếu nó có nội dung chủ yếu là đồ họa. Đơn giản nhất là không cho hiển thị
hình ảnh khi người dùng duyệt thư trừ khi họ có nhu cầu xem hình ảnh thì tự
họ sẽ bật hiển thị.
Tích hợp phân tích hình ảnh để lấy ra văn bản trong hình nhằm giảm việc lọc
sai do loại bỏ tất cả thư có nội dung chủ yếu đồ họa. Việc này đòi hỏi hệ
thống phải mạnh cùng thuật toán phân tích hình ảnh thông minh.
Bổ xung thêm vào tập các từ trung tính tiếng Việt cho bộ lọc nhằm tăng tốc
và tiết kiệm tài nguyên cho cơ sở dữ liệu. Ví dụ như các từ trung tính tiếng
việt ứng với các từ trung tính tiếng Anh như: thì, là, ở, cái, con, và, hoặc, ....
18
Đồ án thuật toán
19
Đồ án thuật toán
PHỤ LỤC
I. DỮ LIỆU BAN ĐẦU
- Ban đầu mình sẽ chuẩn bị 1 tập huấn luyện gồm 10 file text đánh dấu là spam
và 10 file text đánh dấu là không spam (nếu bạn có càng nhiều file càng tốt). Tỉ
lệ ở đây là 50:50 tức là nhận 1 email tới thì khả năng nó là spam là 50%.
- Sau mỗi lần kiểm tra được đó có phải là email spam không ta lại thêm nó vào
tập huấn luyện và tỉ lệ sẽ khác dần đi. Ví dụ nhận được 10 email tiếp theo đều
không phải là spam thì tỉ lệ spam/non-spam sẽ là khoảng 30:70 như thế 1 email
mới sẽ có khả năng spam là 30%.
20
Đồ án thuật toán
21
Đồ án thuật toán
- Sau khi tách được 2 List túi từ ta ghi nó vào file result_training.dat để lúc thực
hiện kiểm tra mail spam thì chỉ việc đọc từ file này ra chứ không cần chạy huấn
luyên nữa.
22
Đồ án thuật toán
23
Đồ án thuật toán
24
Đồ án thuật toán
- Áp dụng phương pháp phân loại bayes đơn giản, ta sẽ tính tỉ lệ của từng từ trong
túi từ này có trong List túi từ spam và non-spam là bao nhiêu sau đó lấy tích của
chúng và nhân với tỉ lệ spam:non-spam và so sánh 2 kết quả.
Ví dụ: mail cần kiểm tra có 100 từ, tỉ lệ của từng từ trong List túi từ spam nhân với
nhau là A; tỉ lệ của từng từ trong túi từ non-spam là B. Tỉ lệ spam:non-spam là
X:Y (ban đầu là 50:50 nhưng con số này thay đổi sau mỗi lần thêm mail kiểm tra
vào tập huấn luyện)
- Để biết mail mới có phải là spam hay không ta so sánh A.X với B.Y. Nếu A.X >
B.Y thì mail mới là spam và ta thêm túi từ mới vào List túi từ spam ngược lại thì
mail mới là non-spam, ta thêm túi từ mới vào List túi từ non-spam và lưu lại.
25
Đồ án thuật toán
26
Đồ án thuật toán
27
Đồ án thuật toán
28
Đồ án thuật toán
29