Nhận dạng, phân loại thư theo nội dung là phươngpháp phân tích nội dung thư để phân biệt thư rác với thư hợp lệ, kết quả phân tíchsau đó được sử dụng để ra quyết định, chuyển tiếp thư đế
Trang 1MỤC LỤC
Trang
LỜI MỞ ĐẦU 2 TỔNG QUAN VỀ THƯ RÁC 3 CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN VÀ NHẬN DẠNG THƯ RÁC 14 MẠNG NEURAL NHÂN TẠO VÀ MÔ HÌNH HUẤN LUYỆN 16 XÂY DỰNG ỨNG DỤNG NHẬN DẠNG THƯ RÁC 29
Trang 2Hiện nay, có nhiều phương pháp tiếp cận khác nhau đã được nghiên cứu và
sử dụng nhằm loại bỏ hoặc giảm thiểu ảnh hưởng tác hại của thư rác đến người sửdụng Bên cạnh giải pháp phòng chống thư rác bằng pháp lý trong việc xây dựngLuật để ngăn chặn phát tán thư rác, còn có những giải pháp kỹ thuật nhằm pháthiện, ngăn chặn thư rác trong những giai đoạn khác nhau của quá trình tạo và pháttán thư rác Trong số giải pháp được sử dụng, giải pháp nhận dạng theo nội dungbằng học máy (machine learning), đang là một trong những giải pháp được sử dụngrộng rãi và có triển vọng nhất Nhận dạng, phân loại thư theo nội dung là phươngpháp phân tích nội dung thư để phân biệt thư rác với thư hợp lệ, kết quả phân tíchsau đó được sử dụng để ra quyết định, chuyển tiếp thư đến người nhận hay không
II MỤC ĐÍCH NGHIÊN CỨU
Nghiên cứu tổng quan các phương pháp phân loại thư rác phổ biến hiện nay,
từ đó xây dựng hệ thống nhận dạng thư rác bằng cách kết hợp các kỹ thuật phổ biến
và kỹ thuật mạng neural nhân tạo cho hệ thống thư điện tử
Trang 3TỔNG QUAN VỀ THƯ RÁC
Chương 1 giới thiệu tổng quan về thư rác, các dạng thư rác phổ biến, tác hại của thư rác gây ra cho người dùng, cho hệ thống; giới thiệu các kỹ thuật phát tán thư rác phổ biến; tình hình thư rác hiện nay.
1.1 Giới thiệu chung
1.1.1 Định nghĩa thư rác
Thư rác (spam) là những thư điện tử không yêu cầu, không mong muốn vàđược gửi hàng loạt tới nhiều người nhận “Thư không yêu cầu” ở đây nghĩa là ngườinhận thư không yêu cầu người gửi gửi bức thư đó “Thư được gửi hàng loạt” nghĩa
là bức thư mà người nhận nhận được nằm trong một loạt các thư được gửi đi chonhiều người khác và các bức thư này có nội dung tương tự nhau
Một bức thư được gọi là thư rác chỉ khi nó là thư không yêu cầu và được gửihàng loạt Nếu thư rác chỉ là thư không mong muốn thì nó có thể là những bức thưlàm quen, được gửi lần đầu tiên, còn nến thư rác chỉ là thư được gửi hàng loạt thì nó
có thể là những bức thư gửi cho khách hành của các công ty, các nhà cung cấp dịchvụ
Như định nghĩa ở trên, thư rác là thư không yêu cầu và được gửi hàng loạt.Nhưng yếu tố quan trọng nhất để phân biệt thư rác với thư thông thường phải là ởnội dung bức thư Khi một người nhận được thư điện tử, người đó không thể xácđịnh được thư có được gửi hàng loạt hay không nhưng có thể xác định được chínhxác đó là thư rác sau khi đã xem nội dung thư Đặc điểm này chính là cơ sở cho giảipháp phân loại thư rác bằng cách phân tích nội dung thư [9]
1.1.2 Các dạng thư rác
Phần lớn thư rác là thư quảng cáo sản phẩm, hàng hoá, chào mời mua sắmhoặc sử dụng dịch vụ Tuy nhiên, cũng tồn tại một lượng thư rác mang những nộidung khác, có thể phân chia thành:
• Thư có nội dung chính trị: do các tổ chức phản động hay cá nhân hoạt động
chính trị của các tổ chức đó gửi trực tiếp tới người dùng thư điện tử nhằm
Trang 4phục vụ mục đích tuyên truyền, quảng bá hay thiết lập quan hệ trực tiếphoặc xuyên tạc, vu khống Hiện tại, ở Việt nam nói chung và ở tỉnh Long
An nói riêng tình hình thư rác có nội dung chính trị được các tổ chức phảnđộng tích cực gởi về hệ thống thư điện tử của tỉnh Long An nhất là vàonhững dịp kỷ niệm ngày lễ lớn, dịp bầu cử,… của đất nước Đây chínhnhững là thách thức, cần sớm phát hiện và ngăn chặn kịp thời
• Thư từ thiện: do các tổ chức hay cá nhân hoạt động từ thiện gửi với nội
dung yêu cầu quyên góp, tài trợ hay trợ giúp Những người gửi thư dạngnày có thể không nhận thức được họ đang phát tán thư rác do có sự biện hộ
từ mục đích gửi thư
• Thư có nội dung tôn giáo: dùng để tuyên truyền quảng bá cho các tổ chức
hoạt động tôn giáo
1.2 Tác hại của thư rác
Đối với nhà cung cấp dịch vụ: thư rác hiện tại chiếm một tỷ lệ vô cùng lớn
trong tổng số thư điện tử được gởi qua mạng internet Lượng thư rác quá lớn gây ranhiều tác hại đối với sự phát triển của mạng internet nói chung và người dùng thưđiện tử nói riêng Theo thống kê của Kaspersky như hình 1-1, thư rác chiếm từ 60%đến 80% lượng thư gởi qua các máy chủ thư điện tử, gây lãng phí tài nguyên máychủ, làm chậm quá trình xử lý của hệ thống, gia tăng dung lượng bộ nhớ, làm tắcnghẽn đường truyền mạng, gây chậm trễ đối với những thư được gởi hợp lệ
Hình 1-1: Lưu lượng thư rác theo báo cáo năm 2012
Đối với người dùng: thư rác gây ra một số tác hại sau:
Trang 5+ Thiệt hại kinh tế cho người nhận thư trong trường hợp người nhận phải trảcước theo lưu lượng thông tin truyền qua mạng.
+ Lãng phí thời gian cho việc mở, xem và xóa khỏi hộp thư, có thể chiếmđầy hộp thư của người nhận làm cản trở tiếp nhận của những thư hợp lệ đến sau
+ Ngoài ra, thư rác còn là công cụ gởi tin lừa đảo có thể gây nguy hiểm chongười dùng như: ngầm chứa virus (có rất nhiều loại virus lây qua thư điện tử nhưhình 1-2), phần mềm gián điệp, phần mềm gây hại khác,… nhằm tạo ra các lỗ hỏngbảo mật trong máy tính và mạng
Hình 1-2: Những virus lây lan phổ biến qua thư điện tử trong năm 20121.3 Sự cần thiết phải nhận dạng, phân loại thư rác
1.3.1 Tốc độ phát triển thư rác ngày càng tăng
Thư rác được xem là vấn đề lớn nhất, thách thức lớn nhất mà người sử dụnginternet cũng như các nhà cung cấp dịch vụ ISP phải giải quyết Theo thống kê của
tổ chức Radicati, trong năm 2013 mỗi ngày có trên 100 tỷ thư được gởi nhận trong
đó 76% thư có nội dung quảng bá dịch vụ, giới thiệu sản phẩm Dự đoán đến năm
2017 có khoảng 132 tỷ thư được gởi nhận mỗi ngày, trong số đó có khoảng 77%thư có nội dung quảng cáo, giới thiệu sản phẩm Ngoài ra, theo thống kê của tổ chứcSpamCop trong những tháng đầu năm 2013 trung bình mỗi giây có từ 5,7 đến 16,1thư rác được phát tán trên toàn thế giới (hình 1-4)
Trang 6Hình 1-3: Thống kê tình hình gởi nhận thư rác trên thế giới (theo SpamCop)
1.3.2 Sự bùng nổ thư rác ở Việt Nam
Theo bảng thống kê 1-1 của tổ chức Kasperky Lab, trong những tháng đầunăm 2013 Việt Nam đứng thứ 8 trong những quốc gia có nguồn phát tán thư rácnhiều nhất trên thế giới, đứng đầu danh sách là Trung Quốc, Mỹ, Hàn Quốc,…
Bảng 1-1: Danh sách quốc gia phát tán thư rác nhiều nhất trên thế giới (đến
Trang 71.4 Các phương pháp phòng chống, nhận dạng thư rác
1.4.1 Phân tích thuộc tính thư gởi
Phương pháp nhận dạng dựa vào thuộc tính thư gởi, chỉ sử dụng nhữngthông tin thuộc tính liên quan đến thông số kỹ thuật của thư đến như: địa chỉ IP, địachỉ thư gởi mà không quan tâm đến nội dung thư, bao gồm:
1.4.1.1 Dựa vào địa chỉ IP
Đây là phương pháp đơn giản nhất và được sử dụng sớm nhất trong việcnhận dạng, phát hiện thư rác Phương pháp này đòi hỏi phải xây dựng trước danhsách địa chỉ IP được xem là nguồn gốc phát tán thư rác Khi thư được gởi đến, bộlọc sẽ phân tích địa chỉ IP của máy gởi và so sánh với danh sách địa chỉ IP bị chặn,nếu thư gởi đến xuất phát từ máy có IP nằm trong danh sách này thì được xem làthư rác và ngược lại được xem là thư hợp lệ
1.4.1.2 Dựa vào danh sách đen (Blacklist)
Trong phương pháp này, người ta lập ra một danh sách các địa chỉ server, tênmiền phát tán thư rác Các nhà cung cấp dịch vụ ISP sẽ sử dụng những danh sáchnày để loại bỏ những thư có địa chỉ, tên miền nằm trong danh sách Danh sách nhưtrên được gọi là danh sách đen (blacklist) Danh sách này thường xuyên được cậpnhật và chia sẽ những các nhà cung cấp dịch vụ Một số danh sách đen điển hình màcác nhà cung cấp dịch vụ thường tham chiếu như: http://www.spamhaus.org,http://www.dnsbl.info/ , http://www.sorbs.net/ ,…
Ưu điểm của phương pháp này là các nhà cung cấp dịch vụ ISP chặn đượckhá nhiều địa chỉ IP, tên miền phát tán thư rác Song dù cho danh sách này luônđược cập nhật nhưng số lượng thư rác được phát tán vẫn không giảm vì nhữngngười phát tán thư rác luôn tìm cách thay đổi địa chỉ email, địa chỉ IP, tên miền đểvượt qua danh sách đen, thậm chí sử dụng các địa chỉ email công cộng như yahoo,gmail, hotmail để làm công cụ phát tán Do vậy, phương pháp được sử dụng để hạnchế một phần lượng thư rác phát tán, đôi khi có thể làm mất rất nhiều thư hợp lệ nếuchặn nhầm và cũng mất rất nhiều thời gian để gỡ bỏ khỏi cơ sở dữ liệu tham chiếu ởtrên nếu chẳng may tên miền của tổ chức nằm trong danh sách đen
Trang 81.4.1.3 Dựa vào danh sách địa chỉ tin cậy – danh sách trắng (whitelist)
Ngược lại với phương pháp dựa vào danh sách đen, phương pháp này sửdụng những địa chỉ IP, địa chỉ thư điện tử, tên miền được xác định là tin cậy đưavào danh sách được gọi là danh sách trắng (whitelist) Danh sách này có thể do mộtnhà cung cấp dịch vụ nào đó cung cấp, những thư có địa chỉ, tên miền nằm trongdanh sách sẽ được bộ lọc cho qua Như vậy, để được nằm trong danh sách trắngngười dùng hoặc địa chỉ mail tên miền của tổ chức phải đăng ký với nhà cung cấpdịch vụ
Ưu điểm: số lượng địa chỉ trong danh sách trắng sẽ ít hơn trong danh sáchđen vì thế sẽ dễ dàng cập nhật hơn danh sách đen và giải quyết được tình trạng chặnnhầm thư
Tuy nhiên, cả hai phương pháp trên đều có nhược điểm là khó cập nhật, nhất
là khi có sự thay đổi về địa chỉ IP, tên miền Ngoài ra, người gởi có thể lợi dụngserver mail có trong danh sách trắng để phát tán thư rác, khi đó rất khó kiểm soát
1.4.1.4 Kiểm tra thông tin Header
Phương pháp này phân tích các trường trong phần header của thư đến đểđánh giá đó là thư hợp lệ hay thư rác Thư rác thường có những đặc điểm sau:
+ Để trống trường “From” hay trường “To”
+ Trường “From” chứ các địa chỉ không tuân thủ theo chuẩn
+ Gởi tới một số lượng rất lớn người nhận khác nhau
+ Chỉ chứa file ảnh mà không chứa các từ để đánh lừa bộ lọc
+ Sử dụng ngôn ngữ khác với ngôn ngữ người nhận đang sử dụng
1.4.2 Phân tích nội dung thư
1.4.2.1 Sử dụng kỹ thuật heuristic
Rule based filter là một kỹ thuật đặc trưng của kỹ thuật heuristic Đây làphương pháp đơn giản nhất để nhận dạng thư rác dựa vào nội dung của thư Cáchthức hoạt động của kỹ thuật này là con người sẽ xác định những đặc trưng (từ ngữ,cụm từ) nào là của thư rác, những đặc trưng nào của thư hợp lệ, sau đó phát hiệnnhững đặc trưng này trong thư mới nhận để đưa ra kết luận đó là thư rác hay thư
Trang 9hợp lệ Ví dụ các từ trong tiếng Anh được xác định là thư rác khi trong nội dung thư
cĩ từ “FREE” hoặc từ “F*R*E*E”,… Việc xác định trọng số của các đặc trưng trênbằng tay hoặc bằng thuật tốn và xác định một ngưỡng nào đĩ để nhận dạng thư.Nếu một thư mới nhận cĩ trọng số các đặc trưng cao hơn ngưỡng cho phép thì đượcxem là thư rác
Hiệu suất nhận dạng thư rác của các chương trình sử dụng phương pháp nàyrất khác nhau Vì mỗi chương trình sử dụng các luật lọc khác nhau Luật đơn giảnnhất là thư nào cĩ nội dung chứa những đặc trưng của thư rác thì được xem là thưrác Điều này làm cho bộ lọc nhận dạng nhầm rất nhiều thư hợp lệ
Một số chương trình lọc theo phương pháp này như hệ thống chấm điểmemail của mail server MDaemon Hệ thống chấm điểm này dựa trên kinh nghiệmviệc kiểm tra, lọc email sử dụng một số lượng lớn các luật theo trật tự để máy tínhchấm điểm Điểm số này được sử dụng để quyết định xem một thư gởi đến là thưrác hay thư hợp lệ Ngồi ra, cịn một số bộ lọc heuristic khác như SpamAssassin,SpamGuard,…
Phương pháp này cĩ ưu điểm là dễ cài đặt và hiệu suất phát hiện thư rác cũngkhá cao nếu xây dựng được hệ thống luật tốt Nhược điểm chính của phương phápnày là tỷ lệ chặn nhầm thư hợp lệ cũng khá lớn và khơng linh hoạt do các luật đượcxây dựng luơn chậm hơn so với sự biến đổi của các từ đặc trưng trong thư rác vàthường được sử dụng cho các bộ lọc ở phía server
1.4.2.2 Sử dụng phương pháp xác suất thống kê và học máy
Phân loại, nhận dạng thư rác dựa vào nội dung của thư gởi cĩ thể được xemnhư là một trường hợp đặc biệt của bài tốn phân loại văn bản (text categorization –TC) nhị phân [6] TC chia tất cả các từ vào hai nhĩm: thư rác và thư hợp lệ, theonghĩa nào đĩ, một số kỹ thuật TC sử dụng để phân loại, nhận dạng thư gồm cácthuật tốn được sử dụng như Ripper, Rocchio, Nạve Bayes và Bayesian được thựchiện thử nghiệm để phát hiện spam Hầu hết những phương pháp này phân tích nộidung của thư gởi để nhận diện từ khĩa liên quan đến thư rác và tần suất của các từlặp đi lặp lại để xác định thư rác nhằm để phân loại chúng vào những chỗ chứa
Trang 10tương ứng để người dùng cĩ thể đọc lại hay xĩa bỏ chúng Hiện nay, các phươngpháp thống kê được sử dụng để phân tích và nhận dạng thư rác được chuyển thànhbài tốn bài tốn phân lớp, trong phương pháp này cĩ thể sử dụng nhiều kỹ thuậtphân lớp, dựa trên thơng tin thống kê đã học từ dữ liệu email thực tế Cụ thể, bàitốn lọc thư rác thường được coi là bài tốn phân lớp văn bản (text), dựa trên cơ sở
là phần lớn các thư cĩ chứa một số dạng nội dung text, những kỹ thuật này kháthành cơng mặc dù cịn hạn chế về mặc dữ liệu chuẩn để kiểm tra và đủ lớn để cĩthể so sánh và đánh giá một cách chính xác Một số phương pháp học để giải quyếtbài tốn nhĩm văn bản (text) bao gồm: Nạve Bayes, Neural Network, Chi-squared,K-Nearest Neighbour, Decision Trees…
1.4.3 Các phương pháp khác
1.4.3.1 Dựa trên xác định danh tính người gởi
Giả mạo thư điện tử- là việc giả mạo địa chỉ thư điện tử của một cơng ty hoặccủa một người khác để khiến người sử dụng tin tưởng và mở thư- đang là một trongnhững thử thách lớn nhất mà cộng đồng sử dụng Internet và các kỹ thuật viên chốngthư rác hiện đang phải đối mặt Nếu khơng cĩ sự thẩm định quyền, xác nhận và khảnăng truy tìm danh tính của người gửi, các hãng cung cấp dịch vụ thư điện tử khơngbao giờ cĩ thể biết chắc một bức thư là hợp pháp hay bị giả mạo Do đĩ việc xácnhận danh tính của người gửi là rất cần thiết Để xác nhận danh tính của người gửingười ta đưa ra một số giải pháp sau:
Trang 11là thư giả mạo, có nghĩa là tên miền được biết đến và tên miền gửi thư đó có thểđược được đưa vào danh sách những tên miền đáng tin cậy và được đưa vào các hệthống quy định chống thư rác được sử dụng chung giữa các hãng cung cấp dịch vụvàthậm chí đưa ra cho cả người sử dụng.
Phương pháp Call-ID
Caller ID là một tiêu chuẩn đặt ra trong quá trình gửi thư Tiêu chuẩn này đòihỏi người gửi thư điện tử phải cung cấp địa chỉ IP của máy chủ gửi thư theo dạngXML vào bản ghi DNS trên máy chủ tên miền của họ Máy chủ nhận thư điện tử vàmáy khách nhận bức thư đó sẽ kiểm tra địa chỉ gửi thư trong tiêu đề bức thư với địachỉ đã được công bố để xác nhận máy chủ gửi thư Các bức thư không khớp với địachỉ nguồn sẽ bị loại bỏ DNS là hệ thống diễn dịch các địa chỉ IP số sang các tênmiền Internet có thể đọc được
Phương pháp SPF (Sender Policy Framework) - dựa trên cơ cấu chính sách người gửi
Chuẩn SPF cũng yêu cầu người gửi thư điện tử phải sửa đổi DNS để cho biếtmáy chủ nào có thể gửi thư từ một tên miền Internet nhất định Tuy nhiên, SPF chỉkiểm tra sự giả mạo khi bức thư trong quá trình chuyển thư hay còn gọi là ở mức
“ngoài phong bì”, xác minh địa chỉ “phản hồi” của một bức thư, thường được máychủ nhận thư gửi trở lại trước khi tiếp nhận phần nội dung thư, sau đó sẽthông báotới máy chủ nhận thư để loại bỏ bức thư
Trong đặc tả kỹ thuật kết hợp hai tiêu chuẩn, các công ty gửi thư điện tử sẽcông bố địa chỉ máy chủ thư điện tử của họ trong bản ghi DNS dưới định dạng Ngônngữ đánh dấu mở rộng (XML) Các công ty sẽ có thể kiểm tra sự giả mạo ở mứcphong bì (cũng giống như trong đề xuất SPF) và trong phần nội dung thư (theo đềxuất của Microsoft)
Kỹ thuật này sẽ cho phép các công ty sử dụng cách thức của SPF để loại bỏthư rác trước khi chúng được gửi đi, nếu sự giả mạo bị phát hiện ngay ở mức phong
bì Với những bức thư đòi hỏi sự kiểm tra kỹ hơn trong nội dung thư, thì phương
Trang 12pháp Caller ID sẽ được sử dụng Đề xuất này cũng sẽ hỗ trợ các tên miền đã có sẵnnhững bản ghi SPF là văn bản, không theo định dạng XML.
1.4.3.2 Dựa vào hệ thống hỏi đáp (Challenge/Response Systems)
Nguyên lý hoạt động của phương pháp này là khi có một bức thư được gửi từmột địa chỉ lạ, bộ lọc sẽ gửi trả lại bức thư và yêu cầu người gửi điền các thông tincần thiết vào một form để xác thực bức thư mới đó như trên hình 1.6
Hình 1-4: Mô tả quá trình xác thực thư
Phương pháp này tỏ ra rất hiệu quả nếu được người dùng chấp nhận vì nhữngngười phát tán thư rác sẽ không thể nào phản hồi hết được thư rác mà họ đã gửi Tuynhiên, việc làm này rất khó được người dùng chấp nhận vì để gửi một bức thư giớithiệu họ phải chờ đợi phản hồi từ phía bộ lọc rồi bức thư đó mới chính thức đếnđích
Yahoo cũng có sử dụng một cơ chế tương tự, nếu như ai đó sử dụng hòm thưcủa Yahoo gửi liên tục nhiều bức thư một lúc thì hệ thống chống thư rác của Yahoo
sẽ gửi lại một form yêu cầu người dùng xác thực Đây là một trong những cách kháhữu hiệu của Yahoo để chống những người gửi thư rác lợi dụng dịch vụ của Yahoophát tán thư rác
Bên cạnh việc yêu cầu điền thông tin xác thực vào những biểu mẫu thôngthường, phương pháp này có thể sử dụng những kỹ thuật phức tạp hơn để tránhtrường hợp chương trình gửi thư rác có thể điền thông tin vào biểu mẫu tự động Kỹthuật thường được sử dụng Turing test, tức là yêu cầu thực hiện một công việc rất dễ
Trang 13với con người nhưng rất khó với máy tính Ví dụ, chương trình thư điện tử của ngườinhận sẽ gửi lại một ảnh nhỏ có chữ như hình 1-7.
Hình 1-5: Sử dụng kỹ thuật captcha để xác thực kết nối
Người nhận yêu cầu người gởi xác thực bằng cách gõ và gửi lại các ký tự nhưtrên hình vẽ Đây là công việc rất dễ đối với con người nhưng lại vô cùng khó vớimáy tính
1.4.3.3 Xác thực tự động
Để tránh cho người gởi không phải tự mình xác thực yêu cầu như ở phươngpháp trên, yêu cầu xác thực có thể được thực hiện tự động Trong trường hợp này,chương trình gởi thư của người nhận sẽ gởi yêu cầu chương trình gởi thư của ngườigởi thực hiện một số việc tính toán và gởi lại kết quả để xác thực Việc tính toán kếtquả và xác thực đòi hỏi một số lượng nhất định tài nguyên tính toán và do chươngtrình gởi đi hàng loạt với số lượng lớn nên sẽ không thể thực hiện được việc tínhtoán và xác thực như vậy với mọi thư đã gởi đi
Ưu điểm cơ bản của phương pháp này là có thể tự động hóa toàn bộ khâukiểm tra và xác thực Nếu độ phức tạp của việc tính toán khi xác thực đủ lớn thì hiệucủa quả phương pháp này gần như tuyệt đối
1.4.3.4 Kỹ thuật giấu địa chỉ thư điện tử
Cách đơn giản nhất để loại bỏ thư rác là không công khai địa chỉ thư sử dụngtrên các trang thông tin liên hệ Địa chỉ thư chỉ cho các tổ chức hay cá nhân tin cậybiết Trong liên lạc hằng ngày có thể sử dụng tài khoản thư tạm thời cho các cá nhânhay tổ chức kém tin cậy hơn [9]
Nếu địa chỉ yêu cầu phải công bố trên cổng thông tin thì phải che đậy bằngcách chèn một thẻ vào và thẻ này sẽ được gỡ bỏ trước khi địa chỉ thư được sử dụnghoặc chuyển đổi thành hình ảnh nhằm mục đích không cho các phần mềm thu thậpđịa chỉ thư tự động tìm thấy
Trang 14CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN VÀ NHẬN
DẠNG THƯ RÁC
Chương này giới thiệu các phương pháp phân loại văn bản, biểu diễn văn bản bằng vector đặc trưng, các phương pháp tách câu, tách từ tiếng Việt, cách thức lựa chọn các token đặc trưng cĩ giá trị phân loại văn bản tiếng Việt
1.5 Giới thiệu chung
Ngồi các phương pháp nhận dạng, ngăn chặn thư rác thơng dụng như dựavào địa chỉ IP, danh sách whitelist, blacklist,… phương pháp nhận dạng, phân loạidựa vào nội dung hiện được sử dụng rộng rãi trong các hệ thống Nhận dạng, phânloại theo nội dung hoạt động theo nguyên tắc phân loại thư điện tử thành hai nhĩm
“thư rác” và “thư hợp lệ” bằng cách phân tích phần nội dung của thư [6]
Nhận dạng thư rác dựa vào nội dung của thư được xem là trường hợp riêngcủa bài tốn phân loại văn bản nhị phân, tùy thuộc vào nội dung của thư gởi đến màđược phân vào thư rác hoặc thư hợp lệ Việc phân loại được tiến hành như sau, đầutiên nội dung thư được biểu diễn dưới dạng các đặc trưng hay các thuộc tính, mỗiđặc trưng thường là một từ hoặc cụm từ xuất hiện trong thư [1] Tiếp theo, trong giaiđoạn huấn luyện, tập thư đã được gắn nhãn {thư rác, thư hợp lệ} gọi là tập dữ liệumẫu hay dữ liệu huấn luyện và được sử dụng để huấn luyện một bộ phân loại Saukhi huấn luyện xong, bộ phân loại được sử dụng để xác định thư mới đến thuộc dạngthư rác hay thư hợp lệ
Cĩ rất nhiều phương pháp phân loại văn bản được ứng dụng để phân loại nộidung thư điện tử như: phân loại dựa trên láng giềng gần nhất (k-nearest neighbors),phương pháp dựa trên xác suất Nạve Bayses, dựa vào thuật tốn Chi-squared,Support Vector Machine (SVM), Boostings Tree, mạng neural nhân tạo (ANN).Trong phần sau, sẽ trình bày tĩm tắt một số phương pháp được áp dụng để phân loạithư rác
Trang 151.6 Phương pháp phân loại văn bản bằng Mạng neural nhân tạo (Artificial Neural Network)
Phân loại bằng mô hình mạng neural là một cách phân loại mới được đề xuất,cấu trúc và mô hình hoạt động của mạng neural cơ bản dựa trên mô phỏng của bộnão con người Mạng neural được ứng dụng trong rất nhiều lĩnh vực khác nhau và cókhả năng giải quyết vấn đề phức tạp, phạm vi rộng Mạng neural nhân tạo là mạnggồm các nút (neural) nối với nhau Các nút đầu vào tương ứng với các đặc trưng, nútđầu ra tương ứng với nhãn phân loại Trọng số liên kết giữa các nút thể hiện mốiquan hệ phụ thuộc giữa nhãn phân loại với đặc trưng và được xác định trong quátrình huấn luyện mạng Mỗi nút mạng được đặc trưng bởi một hàm kích hoạt chophép xác định giá trị đầu ra của nút theo giá trị đầu vào [8]
Để phân loại một thư, vector trọng số của thư đó được sử dụng làm giá trị đầuvào cho mạng, mức độ kích hoạt của nút tương ứng được lan truyền về phía nút đầu
ra, giá trị của nút này sẽ xác định giá trị nhãn phân loại [6] Chi tiết về phương pháptiếp cận, các thuật toán được sử dụng sẽ được trình bày chi tiết ở chương sau
Trang 16MẠNG NEURAL NHÂN TẠO VÀ MÔ HÌNH HUẤN LUYỆN
Chương này giới thiệu cơ sở lý thuyết về mạng neural nhân tạo, mô hình mạng neural, các phương pháp huấn luyện, giải thuật huấn luyện và một số ứng dụng mạng neural trên thực tế
1.7 Khái niệm về mạng neural nhân tạo
1.7.1 Ý tưởng sinh học
Theo các nhà nghiên cứu sinh học về bộ não, hệ thống thần kinh của conngười bao gồm khoảng 100 tỷ tế bào thần kinh, thường gọi là các neural [7] Mỗi tếbào neural gồm ba phần (hình 3-1):
+ Thân neural với nhân bên trong (gọi là soma), là nơi tiếp nhận hay phát racác xung động thần kinh
+ Một hệ thống dạng cây các dây thần kinh vào (gọi là dendrite) để đưa tínhiệu tới nhân neural Các dây thần kinh vào tạo thành một lưới dày đặc xung quanhthân neural, chiếm diện tích khoảng 0,25 mm2
+ Đầu dây thần kinh ra (gọi là sợi trục axon) phân nhánh dạng hình cây, cóthể dài từ một cm đến hàng mét Chúng nối với các dây thần kinh vào hoặc trực tiếpvới nhân tế bào của các neural khác thông qua các khớp nối (gọi là synapse) Thôngthường mỗi neural có thể có từ vài chục cho tới hàng trăm ngàn khớp nối để nối vớicác neural khác Có hai loại khớp nối, khớp nối kích thích (excitatory) sẽ cho tínhiệu qua nó để tới neural còn khớp nối ức chế (inhibitory) có tác dụng làm cản tínhiệu tới neural
Chức năng cơ bản của các tế bào neural là liên kết với nhau để tạo nên hệthống thần kinh điều khiển hoạt động của cơ thể sống Các tế bào neural truyền tínhiệu cho nhau thông qua các dây thần kinh vào và ra, các tín hiệu đó có dạng xungđiện và được tạo ra từ các quá trình phản ứng hoá học phức tạp Tại nhân tế bào, khiđiện thế của tín hiệu vào đạt tới một ngưỡng nào đó thì nó sẽ tạo ra một xung điệndẫn tới trục dây thần kinh ra Xung này truyền theo trục ra tới các nhánh rẽ và tiếp
Trang 17tục truyền tới các neural khác.
Hình 3-3: Cấu tạo điển hình của tế bào neural sinh học
1.7.2 Mô hình mạng neural nhân tạo
Mô hình toán học của mạng neural sinh học được đề xuất bởi McCulloch vàPitts, thường được gọi là neural M-P, ngoài ra nó còn được gọi là phần tử xử lý vàđược ký hiệu là PE (Processing Element)
Mô hình neural có m đầu vào x1, x2, , xm, và một đầu ra yi như sau [8]:
Hình 3-4: Mô hình một neural nhân tạo
Trong đó:
Trang 18+ Tập các đầu vào: Là các tín hiệu vào của neural, các tín hiệu này thườngđược đưa vào dưới dạng một vector m chiều.
+ Tập các liên kết (các trọng số): Mỗi liên kết được thể hiện bởi một trọng số(thường được gọi là trọng số liên kết) Trọng số liên kết giữa tín hiệu vào thứ
j cho neural i thường được ký hiệu là wij Thông thường các trọng số nàyđược khởi tạo ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liêntục trong quá trình học mạng
+ Bộ tổng (Hàm tổng): dùng để tính tổng của tích các đầu vào với trọng sốliên kết của nó
+ Ngưỡng: thường được đưa vào như một thành phần của hàm truyền
+ Hàm truyền (hàm kích hoạt): Hàm này dùng để giới hạn phạm vi đầu ra củamỗi neural Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho.Thông thường, phạm vi đầu ra của mỗi neural được giới hạn trong đoạn [0,1]hoặc [-1,1] Các hàm truyền rất đa dạng, có thể là các hàm tuyến tính hoặc phituyến Việc lựa chọn hàm truyền tùy thuộc vào từng bài toán và kinh nghiệmcủa người thiết kế mạng
+ Đầu ra: Là tín hiệu đầu ra của một neural, với mỗi neural sẽ có tối đa mộtđầu ra
Về mặt toán học, cấu trúc của một neural i được mô tả bằng cặp biểu thứcsau:
trong đó: x1, x2, …xm là các tín hiệu đầu vào, còn wi1, wi2,…,wim là các trọng
số kết nối của neural thứ i, neti là hàm tổng, f là hàm truyền, θi là một ngưỡng, yi làtín hiệu đầu ra của neural
Như vậy, tương tự như neural sinh học, neural nhân tạo cũng nhận các tínhiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thuđược rồi gửi kết quả đến hàm truyền) và cho một tín hiệu đầu ra (kết quả của hàmtruyền)