MỤC LỤCChương 1 Tổng quan về hệ lọc thông tin31.1Giới thiệu chung31.1.1Kiến trúc tổng quát của hệ thống lọc thông tin31.1.2Lọc thông tin và truy vấn thông tin31.2Tác dụng của lọc thông tin3Chương 2 Các hệ thống lọc thông tin32.1Phương pháp lọc theo nội dung32.2Phương pháp lọc cộng tác32.3Phương pháp lọc kết hợp3Chương 3 Ứng dụng lọc thông tin trong hệ thống lọc thư rác33.1Phân loại thư rác33.2Lọc thư rác dựa trên địa chỉ IP33.3Phương pháp lọc dựa trên mạng xã hội33.4Phương pháp định danh người gửi3 Chương 1 Tổng quan về hệ lọc thông tin1.1Giới thiệu chung1.1.1Kiến trúc tổng quát của hệ thống lọc thông tinLọc thông tin (Information Filtering) là lĩnh vực nghiên cứu các quá trình lọc bỏnhững thông tin không thích hợp và cung cấp thông tin thích hợp đến với mỗi người dùng. Lọc thông tin được xem là phương pháp hiệu quả hạn chế tình trạng quá tải thông tin được quan tâm nhiều nhất hiện nay. Thông tin được cung cấp (còn được gọi là sản phẩm) có thể là văn bản, trang web, phim, ảnh, dịch vụ hoặc bất kỳ dạng thông tin nào được sản sinh ra từ các phương tiện truyền thông. Phạm vi ứng dụng của lọc thông tin trải rộng trong nhiều ứng dụng thực tế khác nhau của khoa học máy tính. Ứng dụng tiêu biểu nhất của lọc thông tin được kể đến là lọc kết quả tìm kiếm trong các máy tìm kiếm (Search engine), lọc email dựa trên nội dung thư và hồ sơ người dùng, lọc thông tin văn bản trên các máy chủ để cung cấp thông tin cho tập thể hoặc cá nhân thích hợp. Đặc biệt, lọc thông tin tin có vai trò quan trọng cho các hệ thống tư vấn (Recommender system) ứng dụng trong thương mai điện tử.Một hệ thống lọc thông tin tổng quát bao gồm bốn thành phần cơ bản. Thành phần phân tích dữ liệu (Data Analyser Component), thành phần mô hình người dùng (User Model Component), thành phần học (Learning Component) và thành phần lọc ( Filtering Component).
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN Môn học: An ninh cơ sở dữ liệu LỌC THÔNG TIN THEO ĐỊA CHỈ Giảng viên: PGS.TS.Trịnh Nhật Tiến Học viên: Dư Công Thành Hà Nội, tháng 12 năm 2013 MỤC LỤC 2 Chương 1 Tổng quan về hệ lọc thông tin 1.1 Giới thiệu chung 1.1.1 Kiến trúc tổng quát của hệ thống lọc thông tin Lọc thông tin (Information Filtering) là lĩnh vực nghiên cứu các quá trình lọc bỏnhững thông tin không thích hợp và cung cấp thông tin thích hợp đến với mỗi người dùng. Lọc thông tin được xem là phương pháp hiệu quả hạn chế tình trạng quá tải thông tin được quan tâm nhiều nhất hiện nay. Thông tin được cung cấp (còn được gọi là sản phẩm) có thể là văn bản, trang web, phim, ảnh, dịch vụ hoặc bất kỳ dạng thông tin nào được sản sinh ra từ các phương tiện truyền thông. Phạm vi ứng dụng của lọc thông tin trải rộng trong nhiều ứng dụng thực tế khác nhau của khoa học máy tính. Ứng dụng tiêu biểu nhất của lọc thông tin được kể đến là lọc kết quả tìm kiếm trong các máy tìm kiếm (Search engine), lọc email dựa trên nội dung thư và hồ sơ người dùng, lọc thông tin văn bản trên các máy chủ để cung cấp thông tin cho tập thể hoặc cá nhân thích hợp. Đặc biệt, lọc thông tin tin có vai trò quan trọng cho các hệ thống tư vấn (Recommender system) ứng dụng trong thương mai điện tử. Một hệ thống lọc thông tin tổng quát bao gồm bốn thành phần cơ bản. Thành phần phân tích dữ liệu (Data Analyser Component), thành phần mô hình người dùng (User Model Component), thành phần học (Learning Component) và thành phần lọc ( Filtering Component). 3 • Thành phần phân tích dữ liệu (DAC) có nhiệm vụ thu thập dữ liệu về sản phẩm từ các nhà cung cấp thông tin (ví dụ tài liệu, thư điện tử, sách, báo, tạp chí, phim, ảnh). Dữ liệu về sản phẩm được phân tích và biểu diễn theo một khuôn dạng thích hợp, sau đó chuyển đến bộ phận lọc như hình 1.1. • Thành phần mô hình người dùng (UMC) có thể “hiện” hoặc “ẩn” dùng để lấy thông tin về người dùng, như giới tính, tuổi, nơi sinh sống và thông tin người dùng đã truy vấn trước đó để tạo nên hồ sơ người dùng. Hồ sơ người dùng sau khi tạo ra được chuyển đến thành phần học để thực hiện nhiệm vụ huấn luyện. • Thành phần học (LC) thực hiện huấn luyện trên tập hồ sơ và phản hồi của người dùng theo một thuật toán máy cụ thể. Thuật toán học lấy dữ liệu từ thành phần lọc kết hợp với thông tin phản hồi người dùng để thực hiện nhiệm vụ huấn luyện. Kết quả quá trình học được chuyển lại cho bộ phận lọc để thực hiện nhiệm vụ tiếp theo. • Thành phần lọc (FC) là thành phần quan trọng nhất của hệ thống, có nhiệm vụ xem xét sự phù hợp giữa hồ sơ người dùng và biểu diễn dữ liệu sản phẩm để đưa ra quyết định phân bổ sản phẩm. Nén dữ liệu sản phẩm phù hợp với hồ sơ người 4 dùng, sản phẩm sẽ được cung cấp cho người dùng đó. Trong trường hợp ngược lại, hệ thống loại bỏ sản phẩm khỏi danh sách những sản phẩm phân bố cho người dùng. Người dùng nhận được những sản phẩm thích hợp, xem xét, đánh giá, phản hồi lại cho thành phần học để phục vụ quá trình lọc tiếp theo. 1.1.2 Lọc thông tin và truy vấn thông tin Một số thành phần của hệ thống lọc có thể được tìm thấy trong các hệ thống truy vấn thông tin. Tuy nhiên, ta có thể phân biệt sự khác biệt giữa hệ thống lọc thông tin với các hệthống khác thông qua những đặc trưng liên quan đến người dùng, sản phẩm và phương pháp thực hiện. Các hệ thống lọc thông tin có thể khác nhau về nguyên lý, phương pháp, kỹ thuật, phạm vi ứng dụng nhưng đều thực hiện mục tiêu cung cấp cho người dùng những thông tin cần thiết nhất, loại bỏ những thông tin không có giá trị hoặc không thích hợp với người dùng. Nguyên lý phổ biến được dùng trong lọc thông tin là nguyên lý dựa vào dữ liệu (Data-Based) và nguyên lý dựa vào tri thức (Knowledge-Based). Các phương pháp lọc có thể được thực hiện dựa vào nội dung thông tin tin sản phẩm hoặc lọc dựa vào thói quen, sở thích người dùng. Các kỹ thuật lọc được phát triển dựa trên nền tảng từ lĩnh vực truy vấn thông tin (Information Retrieval), tách thông tin (Information Extraction), phân loại thông tin (Information Classification). Phạm vi ứng dụng của các hệ thống lọc được áp dụng cho tất cả các mô hình thương mại điện tử thực tế: Khách hàng – Khách hàng, Nhà cung cấp – Khách hàng, Nhà cung cấp – Nhà cung cấp. 1.2 Tác dụng của lọc thông tin Lọc theo nội dung thực hiện hiệu quả với các dạng thông tin được biểu diễn dưới dạng các đặc trưng nội dung nhưng lại khó lọc được các dạng thông tin đa phương tiện. Lọc cộng tác cho lại kết quả tốt hơn so với lọc nội dung và có thể lọc bất kỳ dạng thông tin nào nhưng gặp phải khó khăn trong trường hợp dữ liệu thưa, người dùng mới và sản phẩm mới. 5 Chương 2 Các hệ thống lọc thông tin Các phương pháp và kỹ thuật chính để lọc thông tin gồm có: Phương pháp Các kỹ thuật sử dụng Dựa trên kinh nghiệm Dựa trên mô hình Dựa trên nội dung +TF-IDF +Phân cụm +Phân lớp bayes +Phân cụm +Cây quyết định +Mạng nơron nhân tạo Cộng tác +k-Láng giềng gần nhất +Phân cụm +Lí thuyết đồ thị +Mạng bayes +Phân cụm +Mạng nơron nhân tạo +Hồi quy tuyến tính +Mô hình xác suất Lai ghép +Kết hợp tuyến tính kết quả +Tích hợp đặc trưng của một phương pháp vào mô hình của phương pháp còn lại. +Xây dựng mô hình hợp nhất hai phương pháp. 2.1 Phương pháp lọc theo nội dung Lọc theo nội dung là phương pháp thực hiện dựa trên việc so sánh nội dung thông tin hay mô tả hàng hóa, để tìm ra những sản phẩm tương tự với những gì mà người dùng đã từng quan tâm để giới thiệu cho họ những sản phẩm này. Các phương pháp tiếp cận cho lọc theo nội dung được chia thành hai phương pháp chính: lọc nội dung dựa vào bộ 6 nhớ và lọc nội dung dựa vào mô hình. Những vấn đề cần tiếp tục nghiên cứu của lọc nội dung là vấn đề trích chọn đặc trưng và người dùng mới. Các phương pháp pháp lọc theo nội dung: Lọc nội dung dựa vào bộ nhớ: Lọc nội dung dựa vào bộ nhớ là phương pháp sử dụng toàn bộ tập hồ sơ sản phẩm và tập hồ sơ người dùng để thực hiện huấn luyện và dự đoán. Trong phương pháp này, các sản phẩm mới được tính toán và so sánh với tất cả hồ sơ người dùng. Những sản phẩm mới có mức độ tương tự cao nhất với hồ sơ người dùng sẽ được dùng để tư vấn cho người dùng này. Phương pháp này còn được gọi là học dựa trên ví dụ (Instance-Based learning) trong các tài liệu về học máy. Lọc nội dung dựa vào mô hình: Lọc nội dung dựa trên mô hình là phương pháp sử dụng tập hồ sơ sản phẩm và tập hồ sơ người dùng để xây dựng nên mô hình huấn luyện. Mô hình dự đoán sau đó sẽ sử dụng kết quả của mô hình huấn luyện để sinh ra tư vấn cho người dùng. Trong cách tiếp cận này, lọc nội dung có thể sử dụng các kỹ thuật học máy như bayes, phân cụm, cây quyết định, mạng neural nhân tạo để tạo nên dự đoán. 2.2 Phương pháp lọc cộng tác Lọc cộng tác khai thác những khía cạnh liên quan đến thói quen sở thích của người sửdụng sản phẩm để đưa ra dự đoán và phân bổ các sản phẩm cho người dùng này. Các phương pháp tiếp cận cho lọc cộng tác cũng được chia thành hai phương pháp chính: lọc cộng tác dựa vào bộ nhớ và lọc cộng tác dựa vào mô hình. Những vấn đề cần tiếp tục nghiên cứu của lọc cộng tác là vấn đề dữ liệu thưa, vấn đề người dùng mới và sản phẩm mới. Lọc cộng tác dựa trên bộ nhớ: 7 Các phương pháp lọc dựa trên bộ nhớ sử dụng toàn bộ ma trận đánh giá để sinh ra dự đoán các sản phẩm cho người dùng hiện thời. Về thực chất, đây là phương pháp học dựa trên ví dụ. Phương pháp được thực hiện theo hai bước: Tính toán mức độ tương tự và bước tạo nên dự đoán. • Tính mức độ tương tự sin(x, y) : Mô tả khoảng cách, sự liên quan hay trọng số giữa hai người dùng x và y (hoặc giữa hai sản phẩm x và y) • Dự đoán : Đưa ra dự đoán cho người dùng cần được tư vấn bằng cách xác định tập láng giềng của người dùng này. Tập láng giềng của người dùng cần tư vấn được xác định dựa trên mức độ tương tự giữa các cặp người dùng hoặc sản phẩm. Lọc cộng tác dựa vào mô hình: Khác với phương pháp dựa trên bộ nhớ, phương pháp lọc dựa trên mô hình sử dụng tập đánh giá để xây dựng mô hình huấn luyện. Kết quả của mô hình huấn luyện được sử dụng để sinh ra dự đoán quan điểm của người dùng về các sản phẩm chưa được họ đánh giá. Ưu điểm của phương pháp này là mô hình huấn luyện có kích thước nhỏ hơn rất nhiều so với ma trận đánh giá và thực hiện dự đoán nhanh. Mô hình chỉ cần cập nhật lại khi có những thay đổi lớn và chỉ thực hiện lại pha xây dựng mô hình. 2.3 Phương pháp lọc kết hợp Lọc kết hợp là phương pháp kết hợp giữa lọc cộng tác và lọc nội dung, nhằm tận dụng lợi thế và tránh những hạn chế của mỗi phương pháp. Lọc kết hợp được tiếp cận theo bốn xu hướng chính: Kết hợp tuyến tính, kết hợp đặc tính của lọc nội dung vào lọc cộng tác, kết hợp đặc tính của lọc cộng tác vào lọc nội dung và xây dựng mô hình hợp nhất cho cả lọc cộng tác và lọc nội dung. Vấn đề cần tiếp tục nghiên cứu của lọc kết hợp là nâng cao hiệu quả phương pháp biểu diễn và dự đoán cho mô hình kết hợp. Các phương pháp lọc kết hợp: 8 Lọc kết hợp được tiếp cận theo bốn xu hướng chính: kết hợp tuyến tính, kết hợp đặc tính của lọc nội dung vào lọc cộng tác, kết hợp đặc tính của lọc cộng tác vào lọc nội dung và xây dựng mô hình hợp nhất giữa lọc cộng tác và lọc nội dung. Kết hợp tuyến tínhlà phương pháp xây dựng hai lược đồ lọc nội dụng và lọc cộng tác độc lập nhau. Kết quả dự đoán của toàn bộ mô hình có thể được lựa chọn từ phương pháp cho kết quả tốt hơn. Ưu điểm của phương pháp này là kế thừa được phương pháp biểu diễn và tính toán vốn có của các phương pháp. Nhược điểm lớn nhất của mô hình này là lại cho kết quả không cao vì chưa có sự kết hợp hiệu quả giữa nội dung và đánh giá người dùng. Kết hợp đặc tính của nội dung vào lọc cộng táclà phương pháp dựa trên các kỹ thuật lọc cộng tác thuần túy nhưng vẫn duy trì hồ sơ người dùng như một tham biến tham khảo khi tính toán sự tương tự với hồ sơ người dùng hoặc không tương tự với hồ sơ người dùng. Trong tường hợp dữ liệu thưa hoặc người dùng mới, mức độ tương tự giữa hồ sơ người dùng và sản phẩm sẽ được xem xét đến để tạo nên dự đoán. Kết hợp đặc tính của lọc cộng tác vào lọc nội dunglà phương pháp xem xét các đánh giá người dùng của lọc cộng tác như một thành phần trong mỗi hồ sơ người dùng. Phương pháp dự đoán thực hiện theo lọc nội dung thuần túy và so sánh với kết quả dựa trên biểu diễn hồ sơ người dùng mở rộng. Phương pháp phổ biến nhất thực hiện theo mô hình này là sử dụng các kỹ thuật giảm số chiều cho hồ sơ người dùng trước khi kết hợp với đánh giá người dùng. Mô hình hợp nhất là phương pháp biểu diễn đặc trưng nội dung và đánh giá người dùng trên cùng một mô hình. Kết quả dự đoán dựa trên mô hình dữ liệu hợp nhất của cả nội dung và đánh giá người dùng. Basu và các cộng sự đề xuất sử dụng lọc cộng tác và lọc nội dung trong một bộ phân loại đơn lẻ. Schein đề xuất phương pháp thống kê kết hợp hai phương pháp dựa trên mô hình phân tích ngữ nghĩa ẩn. Ansari đề xuất mô hình hồi quy dựa trên mạng Bayes, trong đó mỗi hồ sơ người dùng và sản phẩm được biểu diễn trong cùng một mô hình thống kê. 9 Nhiều kết quả so sánh lọc kết hợp đã chứng tỏ phương pháp cho lại kết quả dự đoán tốt hơn so với các phương pháp lọc cộng tác và lọc nội dung thuần túy. Đặc biệt, lọc kết hợp hạn chế hiệu quả vấn đề dữ liệu thưa và người dùng mới. Chương 3 Ứng dụng lọc thông tin trong hệ thống lọc thư rác 3.1 Phân loại thư rác Có rất nhiều cách phân loại thư rác . Dựa trên kiểu phát tán thưrác: Tính tới thời điểm hiện tại, thưrác có thểbịgửi thông qua thư điện tử, nhóm thảo luận (newsgroups), điện thoại di động (Short Message Service - SMS) và các dịch vụgửi tin nhắn trên mạng (nhưYahoo Messenger, Windows Messenger ) Dựa vào quan hệvới người gửi thưrác: bao gồm người lạmặt, bạn bè, người quen và các dịch vụquyên góp giúp đỡ… Dựa vào nội dung của thưrác: các kiểu nội dung phổbiến nhưthưvề thương mại, thưvềchính trị, thưvềcông nghệ, chuỗi thư(chain e-mail) và các loại khác (nhưthưphát tán virus ). Dựa trên động lực của người gửi:Thông thường, thưrác được gửi đi cho những mục đích quảng bá thông tin. Ngoài ra, còn có một sốloại thưrác được gửi tới một người nhận xác định nào đó nhằm mục đích phá vỡvà gây cản trởcông việc của người nhận hay mạng của nhà cung cấp dịch vụthư điện tử(ESP) được gọi là “bom thư”. Thưrác còn được cốý gửi đi nhằm thông báo tin sai lệch, làm xáo trộn công việc và cuộc sống của người nhận. Sựphân loại thưrác rất quan trọng không chỉtrong lĩnh vực tạo những bộlọc thư rác có hiệu quảcao mà còn giúp cho việc ban hành các bộluật chống thưrác phù hợp. 10 [...]...3.2 Lọc thư rác dựa trên địa chỉ IP Phương pháp lọc thưrác thông qua địa chỉIP là phương pháp đơn giản và được sửdụng sớm nhất trong công cuộc chống thưrác Dựa vào địa chỉIP của người gửi đểxác định thư đó bịngăn chặn hoặc cho qua Có hai cách đểthực hiện việc lọc thư: một là duy trì một danh sách các địa chỉIP bịchặn (còn gọi là danh sách đen blacklist); thứhai là sửdụng một danh sách các địa chỉIP... khá nhiều địa chỉgửi thưrác Mặc dù danh sách đen này luôn được cập nhật nhưng với sựthay đổi liên tục địa chỉ, sựgiảmạo địa chỉhoặc lợi dụng một mail server hợp pháp đểgửi thưrác đã làm sốlượng thưrác gửi đi vẫn ngày càng tăng cao Do đó phương pháp này chỉngăn chặn được một nửa sốthưrác gửi đi và sẽmất rất nhiều thưhợp pháp nếu ngăn chặn nhầm Danh sách trắng (Whitelist) Danh sách các địa ch tin cậy (Safe... (Whitelist) Danh sách các địa ch tin cậy (Safe Sender List), danh sách này có thểdo một nhà cung cấp dịch vụnào đó cung cấp Những địa chỉthuộc danh sách sẽ được cho qua b lọc Người dùng phải đăng ký với nhà cung cấp danh sách để được nằm trong danh sách Ư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ễ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ư... sửdụng một danh sách các địa chỉIP cho phép qua (danh sách trắng whitelist) Danh sách đen (Blacklist) Người ta lập ra một danh sách các địa chỉgửi thưrác Các nhà cung cấp dịch vụthư điện tử(ISP) sẽdựa trên danh sách này đểloại bỏnhững thưnằm trong danh sách này Danh sách này thường xuyên được cập nhật và được chia sẻgiữa các nhà cung cấp dịch vụ Một sốdanh sách đen điển hình được lập ra như: SpamCop... điểm là khó cập nhật, nhất là khi ai đó thay đổi địa chỉIP Ngoài ra người gửi cũng có thểlợi dụng server mail có trong danh sách trắng đểgửi thưrác, khi đó rất khó kiểm soát 11 3.3 Phương pháp lọc dựa trên mạng xã hội Các nghiên cứu gần đây đã bắt đầu khai thác thông tin từ mạng xã hộicho việc xác định thưrác bằng cách xây dựng một đồthị(các đỉnh là địa chỉemail, cung được thêm vào giữa 2 node A và B... thểphát hiện ra 3.4 Phương pháp định danh 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 công ty hoặc của 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... 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 12 thiết Phương pháp được đềxuất đó là phương pháp Domainkeys, đây là phương pháp hiện đang rất được quan tâm chú ý nghiên cứu phát triển Domainkeys là một phương thức mã hóa định danh, được đềxuất bởi Yahoo vào tháng 5 năm 2004 Domainkeys không những chỉcho phép xác định domain của người gửi mà còn cho phép... không có sựhỗtrợcủa domainkeys thì nó là trong suốt Nhược điểm: Domainkeys là một công nghệxác định danh tính, nó không tham gia trực tiếp trong việc lọc spam Ví dụ: Domainkeys cho người nhận thưbiết mẩu tin đó từexample.net, nhưng không thểcho biết liệu mail từexample đó có phải là spam hay không Chỉchữký không khẳng định thư đó có được mong muốn hay không, và các Spammer cũng có thểký mail, cũng... (string-domainkey) thì bộselector thực hiện tra cứu DNS D liệu trảvềchứa khóa công khai của domain đó Người nhận có thểgiải mã giá trịbăm chứa trong trường tiêu đềvà đồng thời tính lại giá trịbăm cho phần thân của mail nhận được sau đó so sánh hai giá trịnày nếu giống nhau chứng tỏmail được gửi là thật, đảm bảo tin cậy nếu không là mail không đáng tin Ưu điểm: Xác định nguồn gốc domain của email một... Ưu điểm: Xác định nguồn gốc domain của email một cách rõ ràng, sẽhiệu quảhơn nếu kết hợp với sửdụng danh sách đen và danh sách trắng Giúp dễdàng phát hiện ra sựtấn công phising Loại bỏnhững email giảmạo tại phần mềm email người dùng cuối (mail user agents) hoặc bởi ISP’s mail transfer agents 13 Theo dõi việc lạm dụng domain của những cá nhân một cách dễdàng hơn Khảnăng tương thích: Domainkeys tương