MỤC LỤC
Nó cung cấp không gian lưu trữ và các thông tin cần thiết cho các thành phần khác của bộ lọc nhằm mục đích xác định các đặc trưng quan trọng nhất trong thư điện tử của người dùng. Bộ tách từ được khởi tạo mỗi lần một thông điệp mới được xử lý để tách một thông điệp thành các token, xác định mức độ quan trọng của chúng và gửi danh sách các token này cho bộ máy phân tích kết quả. Tức là ta xây dựng bộ tách từ sao cho nó tách được những đặc trưng quan trọng nhất của thông điệp để tạo ra tập dữ liệu tốt, ngoài ra cần xem xét đến mức độ cần bằng giữa số lượng thư rác và thư hợp lệ được học.
Chương trình thử nghiệm chọn chế độ Trainning-On-Error là do khoảng cách giữa hai đợt phát tán thư rác thường cách xa nhau cho nên chúng ta không cần cho chương trình phải học mọi thông điệp dẫn tới lãng phí tài nguyên xử lý và lưu trữ. Qua kết quả thử nghiệm của đồ thị trên, chúng ta nhận thấy khi bộ lọc thư rác có tập dữ liệu lịch sử càng tốt (hay nói cách khác là. “học” càng nhiều) thì độ chính xác của bộ lọc càng cao.
Cơ sở lý thuyết của kỹ thuật so khớp được tham khảo thông qua bài báo “Xác định một số độ đo sự tương tự giữa hai xâu theo mô hình otomat mờ” của nhóm tác giả Nguyễn Thị Thanh Huyền, Nguyễn Đắc Tuấn, Phan Trung Huy. Sự tương tự giữa hai chuỗi ký tự theo các độ đo kinh điển (dãy con chung dài nhất, xâu con chung dài nhất, khoảng cách Edit, …) chỉ hiệu quả khi có lỗi xảy ra ở mẫu hay văn bản do một số ký tự bị xóa, chèn, thay thế và đều coi trọng trật tự của các ký tự trong chuỗi. Các tình huống tương tự rất hay gặp trong thực tế, như khi cần tìm kiếm tên người nước ngoài (chẳng hạn ‘C.J.Date’ và ‘Date.C.J’, “Christian Charras” và. “Charas C.”), khi có sự sai khác do biến đổi hình thái từ, cấu trúc câu (“approximate searching” và “search approximately”), một số trường hợp thứ tự ghép từ khác nhau nhưng mang ngữ nghĩa gần giống nhau (“toán logic” và “logic toán”, “lung linh” và “linh lung”) hoặc do thứ tự sai song vẫn hiểu được đúng nghĩa (“toán giải tích” và “giải tích toán”) [1]. Độ tương tự được đề xuất ở đây cho phép đo độ tương tự về mặt hình thức giữa hai chuỗi theo quan điểm thống kê. Phát biểu bài toán và ý tưởng giải quyết a) Bài toán.
• Thực hiện các hành động thay đổi văn bản mẫu PVB (đảo đoạn (câu), thêm đoạn (câu), xóa đoạn (câu)) sẽ được văn bản khác gọi là SVB-i (với i tùy vào số lần thực hiện thay đổi văn bản mẫu PVB). Thông qua kết quả bảng trên, chúng ta nhận thấy khi tỉ số độ dài nội dung hai thư cần so khớp tăng lên thì độ chính xác của bộ lọc sẽ giảm xuống so với khi bộ lọc chỉ dùng kỹ thuật thống kê.
• Quét kết hợp kỹ thuật thống kê và so khớp chỉ xác định là spam khi độ tương tự lớn hơn hoặc bằng 0.8. • Quét kết hợp kỹ thuật thống kê và so khớp chỉ xác định là spam khi độ tương tự lớn hơn hoặc bằng 0.9. Thông qua bảng thử nghiệm trên thì độ chính xác của hệ thống khi kết hợp thống kê và so khớp sẽ tốt và ổn định khi ta chọn ngưỡng của độ tương tự là 0.7 khi phân loại thư rác.
• (2) –Mail Server gửi các thư điện tử chưa xử lý đến Broker theo dạng gửi thư điện tử (SMTP). • (3) –Broker phân phối hợp lý các thư điện tử chưa xử lý đến cụm Worker sau khi phân tích.
Theo hình 3.2, khi thư điện tử vào hệ thống, sau đó được chuyển tiếp cho đến máy Worker, tại đây máy Worker sẽ phân tích thư điện tử để xác định người dùng nào và trao đổi thông tin với máy Storage để lấy các dữ liệu cần thiết cho người dùng đó cho xử lý của Worker. Phần chung này được tạo ra nếu một thư điện tử bị cho là thư rác bởi số lượng người dùng trong mạng vượt ngưỡng quy định thì đưa thư rác này vào dữ liệu chung (ví dụ ngưỡng quy định là 75% số lượng người dùng trong mạng). • Hệ thống sẽ tiến hành học thư điện tử mà người dùng chuyển tiếp vào hệ thống (mô tả sau ở phần huấn luyện) hoặc sau một thời gian định kỳ thì hệ thống sẽ tự động huấn luyện nếu dữ liệu bị mất cân bằng (dữ liệu về thư rác quá nhiều so với dữ liệu về thư hợp lệ).
• Như đã đề cập ở phần kỹ thuật so khớp (phần 2.2), quét thư rác dựa trên kỹ thuật so khớp chỉ thực hiện khi dữ liệu của người dùng không đủ để thực hiện kỹ thuật thống kê cho một loại thư rác nào đó. • Dữ liệu được lưu ở đây là những thư điện tử mà người dùng xem là thư rác và người dùng sẽ chuyển tiếp vào hệ thống, khi đó hệ thống sẽ lưu lại (trùng với thời điểm mà kỹ thuật thống kê tiến hành học các thư chuyển tiếp) thành tập tin gồm nội dung của trường “Subject:” và nội dung của thư điện tử, các tập tin của mỗi người dùng chứa trong một thư mục riêng biệt.
Hệ thống xây dựng với mục đích là ngăn chặn thư rác với tỉ lệ cao, vì thế sẽ kết hợp nối tiếp hai kỹ thuật dùng trong hệ thống. • Nếu kỹ thuật thống kê phát hiện được thư rác thì sẽ cảnh báo lên thư và trả về Mail server. • Ngược lại thì kỹ thuật so khớp sẽ lọc tiếp thư này, nếu xác định là thư rác thì cảnh báo lên thư ngược lại thì bỏ qua, sau đó trả thư đã xử lý về Mail server.
Chính vì mục đích là ngăn chặn thư rác với tỉ lệ cao nên tỉ lệ các thư hợp lệ lại bị cho là thư rác (tỉ lệ false positive) sẽ cao hơn thư rác lại cho là thư hợp lệ (tỉ lệ false negative).
Người dùng sẽ chuyển tiếp các thư mà hệ thống xác định sai vào hộp thư train@gfit.hcmuns.edu.vn. • Nếu dữ liệu đã lưu của người dùng chưa cập nhật lại xác suất so với thời điểm huấn luyện thì cập nhật lại các xác suất này. • Tính xác suất của thư cần huấn luyện, gửi (xác suất, thư) để cập nhật lại dữ liệu đã lưu của người dùng.
Người dùng sẽ chuyển tiếp thư vào retrain@gfit.hcmuns.edu.vn nếu họ thực hiện sai việc chuyển tiếp thư vào train@gfit.hcmuns.edu.vn (hệ thống cho phép sửa lỗi của người dùng). • Nếu là huấn luyện lại theo kiểu thư rác thì thực hiện tương tự như huấn luyện theo kiểu thư rác.
Độ chính xác của việc quét thư rác đã được mô tả ở từng kỹ thuật, vì thế thực nghiệm ở đây chủ yếu là thực nghiệm về thời gian quét thư rác. Thông qua bảng kết quả trên chúng ta có thể nhận thấy rằng nếu tăng số lượng máy làm Worker thì thời gian xử lý sẽ giảm, và nếu so sánh một cách tương đối thì thời gian xử lý khoảng là 1 thư/ 1 giây. Sau đó chúng ta đo độ chính xác của 985 mail còn lại sử dụng lần lượt SpamAssassin-3.3.1 (phiên bản mới nhất tại thời điểm này) và VietAntiSpam.
SpamAssassin-3.3.1 được cài đặt theo cấu hình mặc định và được cập nhật tập luật mới nhất qua mạng (sử dụng sa-update). Thông qua bảng kết quả có thể thấy rằng độ chính xác của VietAntiSpam đã hơn khá nhiều so với SpamAssassin trong thực nghiệm này.
• Để minh họa cho hai kỹ thuật quét thư rác đã chọn, nhóm thực hiện đã xây dựng một hệ thống thử nghiệm cho quá trình quét thư rác trong mạng nội bộ. • Và một phần mới nữa trong luận văn là đưa việc quét thư rác lên môi trường phân tán, kết quả thực nghiệm khi thực nghiệm đã xác định được là có thể quét thư rác với tốc độ là 1 giây/ 1 thư. Vì vậy các kết quả thu được chỉ mới là bước đầu, việc phát triển nên một hệ thống hoàn chỉnh đòi hỏi có những nghiên cứu, phân tích, thiết kế, cài đặt kỹ lưỡng hơn trong các giai đoạn sau.
• Kết hợp hệ thống thực nghiệm mà nhóm xây dựng với các hệ thống quét thư rác khác (như Spam Assassin, Spam Fighter, …). Ví dụ chúng ta có “thành phố Hà Nội” xuất hiện 2 lần thì sẽ tách ra là “thành phố Hà Nội” thay vì thành hai từ “thành phố” và “Hà Nội”.
• Cài đặt kho dữ liệu chung như đã đề cập cho toàn người dùng trong mạng. • Lọc các token là từ ghép dựa vào việc nó xuất hiện nhiều lần trong thông điệp. Trong thời gian có hạn, nhóm chỉ mới nghiên cứu được một phần trong lĩnh vực quét thư rác.
Có thể những kiến thức nhóm thu nhận được trong thời gian làm luận văn chưa nhiều, nhưng nhóm đã phát triển được các kỹ năng như: kỹ năng tìm kiếm thông tin, kỹ năng phân tích và giải quyết vấn đề, khả năng thích nghi với môi trường và công nghệ mới, … với các kỹ năng này sẽ giúp mỗi người trong nhóm phát triển hơn trong tương lai. Mặc dù đã cố gắng hết sức, song chắc chắn luận văn không tránh khỏi những thiếu sót.