Tải bản đầy đủ (.doc) (10 trang)

TIỂU LUẬN An ninh cơ sở dữ liệu LỌC THÔNG TIN THEO TỪ KHÓA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (860.64 KB, 10 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
KHOA CÔNG NGHỆ THÔNG TIN
SEMINAR
Môn học: An ninh cơ sở dữ liệu
LỌC THÔNG TIN THEO TỪ KHÓA
Giảng viên: PGS.TS. Trịnh Nhật Tiến
Học viên: Nguyễn Viết Minh

Hà Nội, tháng 12 năm 2013
MỤC LỤC
2.Lọc thông tin theo từ khóa 4
3.1.Thuât toan loc t khoá ̀ ̣́ ̣ ư 4
3.2.Thuât toan loc t khoa d a trên tâp ôc lâp tôi á ̀ ́ ̣́ ̣ ư ự ̣ đ ̣ ̣ đ 5
3.2.1.Ma trân s liên quan phu h p cua chuôi (Matching relation matrix)̀ ̣̃ ự ợ ̉ 5
3.2.2.Thuât toan tâp ôc lâp tôi a cua ma trân quan hê phu h ṕ ́ ̣̀ ̣ đ ̣ ̣ đ ̉ ̣ ̣ ợ 6
3.2.3.Tiêu chi phan oan va anh giá ́ ́ ̀ ́ ́đ đ 7
3.2.4.Phân tich ô ph c taṕ ́đ ̣ ư ̣ 7
4.Chương trình minh họa 7
TÀI LIỆU THAM KHẢO 10
Page 2
1. Tổng quan về lọc thông tin và hệ thống lọc thông tin
Trước khi Internet ra đời, đã có một số phương pháp lọc thông tin (IF). Ví dụ, một
chính phủ điều khiển và hạn chế luồng thông tin bất lợi, các biên tập viên, nhà báo cũng
cần chọn lọc thông tin khi cung cấp cho độc giả, khán giả. Thậm chí trong trường học,
giáo viên cũng cần chọn lọc thông tin để giảng dạy cho học sinh…
Với sự ra đời của Internet, bất kể ai cũng có thể cung cấp thông tin nhanh với chi
phí thấp. Điều này đã làm tăng đáng kể các thông tin, vấn đề là thông tin nào là cần thiết
với người dùng? Với vấn đề này, các nhà nghiên cứu đã đưa ra phương pháp lọc mới để
chúng ta có thể nhận được thông tin cần thiết cho mỗi chủ đề cụ thể một cách tự động.
Như vậy, lọc thông tin không phải là một khái niệm mới, cũng không phải chỉ giới


hạn ở các tài liệu điện tử. Tuy nhiên, với sự ra đời và tăng nhanh của thông tin dạng điện
tử, thì vấn đề về lọc thông tin một cách tự động trở nên quan trọng hơn, cũng chính từ
đòi hỏi này dẫn đến sự ra đời của nhiều hệ thống lọc thông tin tự động. Vậy lọc thông tin
là gì và thế nào là một hệ thống lọc thông tin?
Lọc thông tin là lĩnh vực nghiên cứu các quá trình cung cấp thông tin thích hợp,
ngăn ngừa và loại bỏ thông tin không thích hợp cho người sử dụng. Thông tin được cung
cấp có thể là văn bản, trang web, phim, ảnh hoặc bất kỳ dạng thông tin nào được sinh ra
từ các phương tiện thông tin truyền thông. Lọc thông tin trải rộng trong nhiều ứng dụng
khác nhau của công nghệ thông tin như: lọc kết quả tìm kiếm trong các máy tìm kiếm,
lọc mail, lọc thông tin trên máy chủ…
Một hệ thống lọc thông tin bao gồm một số công cụ giúp mọi người tìm thấy
những thông tin có giá trị nhất, nên sẽ tiết kiệm thời gian đọc / nghe / xem, đó là những
thông tin đúng hướng trong các tài liệu thú vị nhất và có giá trị. Các bộ lọc này cũng
được sử dụng để tổ chức và cấu trúc thông tin một cách chính xác, dễ hiểu. Các bộ lọc
này rất cần thiết trong các kết quả thu được của các công cụ tìm kiếm trên Internet. Các
chức năng của bộ lọc không ngừng được cải thiện để có được tài liệu Web và các thông
điệp hiệu quả hơn.
Có rất nhiều hệ thống lọc thông tin khác nhau (khác về nguyên lý, phương pháp,
kỹ thuật và miền ứng dụng…) nhưng điều có mục tiêu cung cấp cho người sử dụng
những thông tin cần thiết, loại bỏ các thông tin không phù hợp. Nguyên lý phổ biến được
sử 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 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, tách thông tin, phân loại thông tin.
Trong khuôn khổ tài liệu này, ta sẽ tìm hiểu phương pháp lọc thông tin theo từ
khóa trong hệ thống lọc spam mail.
Page 3
2. Lọc thông tin theo từ khóa
Từ khóa là một chuỗi các ký tự (như một từ, một cụm từ hoặc từ viết tắt). Lọc
thông tin theo từ khóa cho phép bạn ngăn chặn những trang web, những email, … có nội
dung không phù hợp, hoặc chọn ra được những nội dung cần thiết bằng cách so khớp các

từ khóa trong nội dung trang web, email… với tập từ khóa sẵn có. Ví dụ, để lọc nội dung
không phù hợp theo từ khóa khi truy cập Internet, ta quét nội dung truy cập Internet vào
máy tính và tìm các từ mà được liệt kê trong một danh sách đen. Một trang web bị chặn
nếu nó có chứa bất cứ từ nào trong danh sách chặn đó. Hình thức lọc từ được áp dụng
đối với cả những yêu cầu (request) được gửi đi từ máy tính để đảm bảo truy cập đối với
từ khóa cấm được lọc ngay từ đầu. Các trang web khiêu dâm thương mại cần phải được
tìm thấy một cách dễ dàng được tìm thấy bởi các khách hàng tiềm năng và các công cụ
tìm kiếm mà họ sử dụng để lướt web. Một trong những cơ chế của các trang web là để
thêm một số khả năng tìm kiếm từ khóa để trang Web của họ, thậm chí nếu họ không
thực sự hiển thị. Những từ này sẽ được chọn của trang Web crawlers, thêm vào danh
mục được sử dụng bởi các công cụ tìm kiếm của họ và sau đó có thể được tìm thấy bằng
cách lướt web. Do đó, lọc từ khóa áp dụng triệt để đối với các từ khóa xuất hiện trong
trang web tìm kiếm hay thẻ meta của nội dung các trang web truy cập.
Một số nhược điểm với lọc từ khóa: chỉ kiểm tra nội dung dạng văn bản, không
thực hiện kiểm tra đối với các hình ảnh. Cụ thể đối với những trang web khiêu dâm như
tiếng Nga, tiếng Nhật có cả những từ nội địa và hình ảnh thực sự cần lọc thì những từ
khoá tiếng Anh, tiếng Việt hoàn toàn mất tác dụng.
Khác nữa, lọc từ khóa gặp trường hợp từ khóa cần lọc nằm trong cụm từ có nghĩa
khác và trong những bối cảnh khác nhau sẽ có nghĩa không cần phải lọc.
Lọc cụm từ là một trường hợp mở rộng của lọc từ khóa. Lọc cụm từ thực hiện
kiểm soát nội dung truy cập thông qua một cụm từ, không phải xem xét từng từ một xuất
hiện trong cụm từ đó. Với biện pháp lọc này đạt kết quả cao hơn nhiều so với lọc từ
khóa, hạn chế tối đa trường hợp phát sinh của việc từ khóa có nghĩa khác nhau trong bối
cảnh khác nhau.
Sau đây, ta sẽ tìm hiểu một ứng dụng sử dụng lọc thông tin theo từ khóa để xác
định spam mail.
3. Ứng dụng lọc thông tin theo từ khóa cho loại trừ spam mail
3.1. Thuật toán lọc từ khóa
Lọc email sử dụng một từ khóa hoặc nhiều từ khóa là một cơ sở chung để đánh
giá email nào là spam. Ta sử dụng tỷ lệ hit từ khóa để xác nhận một tin nhắn là thư rác

hay không, nếu tỷ lệ hit là lớn hơn một ngưỡng quy định, nó được coi như một thư rác .
Ngoài ra, các từ khóa cũng có thể là cụm từ và câu ngắn. Tiêu đề mail là dữ liệu đầu tiên
có ý nghĩa quan trọng trong việc phát hiện thư rác. Người gửi thư rác (spammer) sử dụng
Page 4
các công cụ khác nhau và gửi ngẫu nhiên để giả mạo người gửi tin cậy, chủ đề, nội dung,
nhưng một số thông tin chung được lưu trữ trong các thông tin tiêu đề tin nhắn , trong đó
bao gồm địa chỉ IP, tên máy chủ… Thông qua bộ lọc thông tin này, ta có thể tìm ra các
thư rác từ các mail được gửi từ cùng một địa chỉ bao gồm địa chỉ thu phát và chủ đề khác
nhau.
Thuật toán lọc từ khóa thường tạo ra bảng từ khoá để phán đoán và xử lý thư rác.
Nếu từ khóa xuất hiện trong một lượng lớn thư rác thì ta có thể đặt chúng trên danh sách
lọc. Các khiếm khuyết của thuật toán này là tốn tài nguyên và một số spammer có thể sử
dụng tính năng tách từ, kết hợp từ để tránh được quá trình lọc
3.2. Thuật toán lọc từ khóa dựa trên tập độc lập tối đa
3.2.1. Ma trận sự liên quan phù hợp của chuỗi (Matching relation matrix)
Cho hai chuỗi bất kỳ S và T, vấn đề so khớp tối đa chúng là tương đương với tập
độc lập tối đa của ma trận quan hệ so khớp.
Định nghĩa S = a
1
a
2
…a
n
, T = b
1
b
2
…b
n
;

Lưu ý rằng: <n> = {1, 2, …, n}; <m> = {1, 2, …, m}
Do đó: {(i,j)| i
ji
banjm
=>∈<>∈<
,,
} được gọi là khớp với mối quan hệ bộ S và
T và được viết là: M(S,T). Ở đây chúng ta giả định rằng n≥m. Ma trận C về mối quan hệ
phù hợp có thể được xác định như sau:
Với c
ij
=1 nếu a
i
=b
j
và c
ij
=0 nếu a
i
≠ b
j
Trong tài liệu này, ta chỉ xét với trọng số c
ij
=1. Mỗi nút trong tập độc lập chỉ tồn
tại một nút tương ứng với nút ở góc dưới bên phải nằm ở hàng khác nhau hoặc cột khác
nhau, được gọi là bán chéo.
Tập hợp các nút mà giá trị là 1 (c
ij
=1) trên một đường chéo của ma trận quan hệ
phù hợp được gọi là một bộ độc lập. Vấn đề kết hợp từ khoá có thể được chuyển đổi

thành giải quyết tối đa bộ độc lập của ma trận quan hệ phù hợp, và tìm kiếm tất cả các
tập độc lập đặt trong một ma trận liên quan phù hợp nhất định. Vì vậy, các bộ dài nhất là
chính là đáp án. Đặc biệt, ta có thể tìm kiếm các điểm phù hợp trong ma trận quan hệ
mà trong đó giá trị là 1 để xác định xem chúng là hoàn toàn khớp trong quá trình này.
Tuy nhiên, ý tưởng thảo luận trên sẽ làm cho vấn đề phức tạp hơn, chúng ta thấy rằng
việc tìm kiếm các bộ độc lập tối đa có thể được coi là tìm kiếm một đường trong ma trận
Page 5
quan hệ phù hợp, trong đó giá trị là 1. Mỗi nút trong bộ độc lập chỉ tồn tại một nút tương
ứng ở góc dưới bên phải nằm ở hàng hoặc cột khác nhau, được gọi là bán chéo, tìm góc
dưới bên phải theo bán chéo.
Ta giới thiệu một thuật toán giải quyết vấn đề mới để tìm bộ độc lập trong tài liệu
này (sẽ mô tả chi tiết trong phần sau). Mối quan hệ giữa kết quả đầu ra với chuỗi đầu vào
ban đầu sẽ đáp ứng các mối quan hệ sau:
3.2.2. Thuật toán tập độc lập tối đa của ma trận quan hệ phù hợp
Để tìm kiếm góc dưới bên phải tương ứng với đường chéo, ta đề xuất cải thiện
thuật toán của bộ độc lập tối đa với ma trận quan hệ phù hợp như sau:
Giả sử chuỗi α và β là các tập độc lập thu được trong tìm kiếm, ta đặt độ dài của
chúng là | α | và | β |.
Các thủ tục của thuật toán mô tả như sau:
Bước 1: Khi tìm kiếm trên cột j, nếu | α | ≥ | β | và hoành độ của kí tự cuối cùng
của α i1 < i2 (hoành độ ký tự cuối cùng của β), sau đó dừng hoạt động của β.
Bước 2: Khi tìm kiếm trên hàng i, nếu | α | ≥ | β |, và tung độ của ký tự cuối cùng
của α j1 < j2 (tung độ ký tự cuối cùng của β), sau đó dừng hoạt động của β.
Bước 3: Khi tìm kiếm mối quan hệ ma trận kết hợp được hoàn thành, chiều dài
của α bằng chuỗi ban đầu, sau đó từ khóa được tìm thấy.
Trong thuật toán này , có thể tạo ra nhiều kết quả của β , bởi vì ta chỉ tìm thấy
chiều dài của α với chiều dài của chuỗi ban đầu, vì vậy ta có thể nhận được nhiều bộ độc
lập. Thủ tục tìm kiếm sẽ được biểu diễn bằng mã giả như sau:
search
d[]=0;col=0;η[]=0;k=0;

for j∈col,…,n do
for i∈k,…, m do
if equal(S[i],T[j])
{ d[]++;col++;k++; continue;}
Page 6
if(j<n&&k>=m)
k=0;
End of For
η[] = d[]/m;
End
Với d [] chỉ chiều dài mảng của mỗi tập độc lập trong việc lưu trữ và tính toán, η [] chỉ
sự kết hợp chính xác của mỗi bộ độc lập, col là bắt đầu vị trí tiếp theo phù hợp của chuỗi
mục tiêu T [j], tập thiết lập của col phần lớn có thể làm giảm thời gian so khớp và độ
phức tạp. K là định danh của chuỗi tìm kiếm ban đầu. Khi lầm tìm kiếm đầu tiên của
chuỗi ban đầu kết thúc và chuỗi mục tiêu không được hoàn thành, và sau đó tìm kiếm từ
các ký tự đầu tiên của chuỗi ban đầu một lần nữa, quá trình tìm kiếm sẽ dừng lại cho đến
khi nó tìm tất cả các chuỗi khớp.
3.2.3. Tiêu chí phán đoán và đánh giá
Tính so khớp chính xác
c
N
N
α
η
=
với N
α
là chiều dài của từ khóa chuỗi ban đầu,
N
c

=
∑∑
= =
m
i
n
j
ij
C
1 1
là độ dài của tất cả các bán chéo (C
ij
chỉ bằng 0 hoặc 1). Nếu η < 1 nghĩa
là chuỗi α và chuỗi mục tiêu phát hiện không phù hợp thì hệ thống trả ra kết quả: mail là
an toàn. Nếu η > 1, vô nghĩa. Nếu η = 1 thì hệ thống hiển thị chuỗi α và phát hiện mục
tiêu ma trận chuỗi chính xác, từ khóa ẩn trong chuỗi β được tìm thấy, sau đó hệ thống
cung cấp cho một cảnh báo, và tiếp tục các bước tiếp theo.
3.2.4. Phân tích độ phức tạp
Trong tài liệu này, ta cũng đưa vào hai kỹ thuật trong thuật toán trên. Thứ nhất là
ma trận mối quan hệ phù hợp được tự động tạo ra, ta không cần bất kỳ không gian khác
để lưu trữ ma trận bảng . Thứ hai, trong các thủ tục của sự so khớp chuỗi, ta không yêu
cầu tất cả các yếu tố của chuỗi ban đầu và chuỗi mục tiêu bình đẳng, chúng ta chỉ cần
tìm kiếm dọc theo phía dưới bên phải của bán chéo, các chi tiết tìm kiếm có thể được tìm
thấy trên các mô tả thuật toán bằng mã giả của định nghĩa của cột. Độ phức tạp của cả
không gian và thời gian của thuật toán này là ít hơn so với O(mn).
4. Chương trình minh họa
Trong tài liệu này, em sử dụng chương trình miễn phí Spam Reader có nhiều chức
năng lọc spam mail, trong đó có chức năng lọc spam mail theo từ khóa. Chương trình
này được gửi kèm với tài liệu này.
Page 7

Chương trình sau khi cài đặt sẽ được tích hợp luôn vào Outlook Express nên khi sử
dụng ta không phải mở cùng lúc nhiều chương trình. Chương trình hoạt động khá hiệu
quả với giao diện tích hợp vào Outlook 2007 như sau:
Để lọc các email spam theo từ khóa, ta có thể nhập trực tiếp các từ khóa vào phần
từ khóa spam. Chương trình sẽ tự động lọc ra những email nào chứa từ khóa đó và hiện
cảnh báo spam mail để người dùng lựa chọn xem xét email này.
Page 8
5. Kết luận
Như đã trình bày trong tài liệu, phương pháp lọc thông tin theo từ khóa mang lại
nhiều ứng dụng hữu ích, giúp ta quản lý và sử dụng các thông tin điện tử một cách hiệu
quả và an toàn. Đặc biệt là trong hệ thống quản lý spam mail.
Tuy nhiên, phương pháp này cũng còn một số hạn chế, đôi khi có thể bỏ sót
keyword hoặc lọc cả những keyword an toàn. Phương pháp này nên được sử dụng kết
hợp với các phương pháp khác để đạt hiệu quả tốt hơn. Trong thời gian tới, em sẽ tiếp
tục nghiên cứu mở rộng lĩnh vực này.
Page 9
TÀI LIỆU THAM KHẢO
[1] Z. Li and H. Shen, “SOAP: A Social network Aided Personalized and effective
spam filter to clean your e-mail box”, INFOCOM, 2011 Proceedings IEEE, (2011),
pp. 1835-1843.
[2] M. T. B. Aun, B. -M. Goi and V. T. H. Kim, “Cloud enabled spam
filtering services: Challenges and opportunities”, Sustainable Utilization and
Development in Engineering and Technology (STUDENT), 2011 IEEE Conference
on, (2011), pp. 63-68.
[3]. Vinaitheerthan Renganathan, Ajit N Babu and Suptendra Nath Sarbadhikar, “A
Tutorial on Information Filting Concepts and Methods for Bio-medical Searching”.
Health & Medical, 2013
[4]. Information Filtering System:
/>Page 10

×