Nhận dạng, phân loại thư theo nội dung là phương phá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ích sau đó được sử dụng để ra quyết định, chuyển tiếp thư
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KHOA HỌC MÁY TÍNH
Giảng viên hướng dẫn: GS.TSKH Hoàng Kiếm Sinh viên thực hiện: Vũ Quang Huy
MSSV: CH1301090
TP HCM, tháng 10 năm 2014
MỤC LỤC
Trang
Trang 2LỜI MỞ ĐẦU 3 TỔNG QUAN VỀ THƯ RÁC 4 CÁC PHƯƠNG PHÁP PHÂN LOẠI VĂN BẢN VÀ NHẬN DẠNG THƯ RÁC 15 MẠNG NEURAL NHÂN TẠO VÀ MÔ HÌNH HUẤN LUYỆN 17 XÂY DỰNG ỨNG DỤNG NHẬN DẠNG THƯ RÁC 30
Trang 3Hiệ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ựng Luậ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át hiệ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át tá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 dung bằng học máy (machine learning), đang là một trong những giải pháp được sử dụng rộ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ương phá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ích sau đó đượ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 4TỔ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ười nhậ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 cho nhiề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ửi hà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ịch vụ
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ính xác đó là thư rác sau khi đã xem nội dung thư Đặc điểm này chính là cơ sở cho giải phá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ắm hoặ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ội dung khác, có thể phân chia thành:
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 5phục vụ mục đích tuyên truyền, quảng bá hay thiết lập quan hệ trực tiếp hoặ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ào những dịp kỷ niệm ngày lễ lớn, dịp bầu cử,… của đất nước Đây chính những là thách thức, cần sớm phát hiện và ngăn chặn kịp thờ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ạng nà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ư
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 ra nhiề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áy chủ, 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ắc nghẽ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 6+ 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 cho ngườ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ỏng bả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ụng internet 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ức SpamCop trong những tháng đầu năm 2013 trung bình mỗi giây có từ 5,7 đến 16,1 thư rác được phát tán trên toàn thế giới (hình 1-4)
Trang 7Hì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 đầu năm 2013 Việt Nam đứng thứ 8 trong những quốc gia có nguồn phát tán thư rác nhiề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 81.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ững thông tin thuộc tính liên quan đến thông số kỹ thuật của thư đến như: địa chỉ IP, địa chỉ 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ệc nhậ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 danh sá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ên miề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ách nà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ập nhậ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 được khá 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ững ngườ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ạn chế 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ếu chặ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 91.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 đưa vào danh sách được gọi là danh sách trắng (whitelist) Danh sách này có thể do một nhà cung cấp dịch vụ nào đó cung cấp, những thư có địa chỉ, tên miền nằm trong danh sách sẽ được bộ lọc cho qua Như vậy, để được nằm trong danh sách trắng ngườ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ấp dị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ặn nhầ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ụng server 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ách thứ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ện nhữ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 10hợ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ên bằ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ì được xem 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ày rấ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ản nhấ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ểm email của mail server MDaemon Hệ thống chấm điểm này dựa trên kinh nghiệm việ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ính chấ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ũng khá 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áp nà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 được xâ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 xem như 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ệ, theo nghĩ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ác thuật tốn được sử dụng như Ripper, Rocchio, Nạve Bayes và Bayesian được thực hiệ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ội dung 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 11tương ứng để người dùng cĩ thể đọc lại hay xĩa bỏ chúng Hiện nay, các phương pháp thống kê được sử dụng để phân tích và nhận dạng thư rác được chuyển thành bà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ật phâ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ài tố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ết bà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ặc của một người khác để khiến người sử dụng tin tưởng và mở thư- đang là một trong nhữ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ống thư 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ơng bao 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ác nhậ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ửi người ta đưa ra một số giải pháp sau:
Trang 12là 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 đòi hỏ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ạng XML 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 địa chỉ đã đượ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 địa chỉ 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ên miề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ết má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áy chủ 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áo tớ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ôn ngữ đánh dấu mở rộng (XML) Các công ty sẽ có thể kiểm tra sự giả mạo ở mức phong 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 13phá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ẵn nhữ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 tin cầ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ững ngườ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 Tuy nhiê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ới thiệ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 Yahoo phá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ông thường, phương pháp này có thể sử dụng những kỹ thuật phức tạp hơn để tránh trườ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 14vớ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ười nhậ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ới má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ương phá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ười gở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ết quả 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ương trì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ính toá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âu kiể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ệu củ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ụng trê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ậy biế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ân hay 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ằng cá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ụng hoặ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 15CÁ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ựa vào địa chỉ IP, danh sách whitelist, blacklist,… phương pháp nhận dạng, phân loại dự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ân loạ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êng củ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, đầu tiê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ệu mẫ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 Sau khi huấn luyện xong, bộ phân loại được sử dụng để xác định thư mới đến thuộc dạng thư 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ội dung 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ại thư rác
Trang 161.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ạng gồ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ối quan 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 cho phé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ị đầu và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áp tiế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 17MẠ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 con ngườ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 ra cá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ín hiệ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 quanh thâ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ếp vớ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ông thườ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ới các neural khác Có hai loại khớp nối, khớp nối kích thích (excitatory) sẽ cho tín hiệ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ín hiệ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ín hiệ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ện dẫ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 18tụ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 đó: