1. Trang chủ
  2. » Giáo án - Bài giảng

mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông

222 503 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 222
Dung lượng 8,49 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Một số vần đề chọn ỉọc cùa Công nghệ thông tỉn và truvền thông, Hưng Yên, ĩ 9-20 tháng 08 năm 2 0 ĩ 0MỘT PHƯƠNG PHÁP XỬ LÝ KÉT QUẢ TÌM KIẾM TRÊN WEB Trần Ngọc Hà *, Hoàng Xuân Huấn Nguyễ

Trang 1

Một số vần đề chọn ỉọc cùa Công nghệ thông tỉn và truvền thông, Hưng Yên, ĩ 9-20 tháng 08 năm 2 0 ĩ 0

MỘT PHƯƠNG PHÁP XỬ LÝ KÉT QUẢ TÌM KIẾM TRÊN WEB

Trần Ngọc Hà *, Hoàng Xuân Huấn Nguyễn Phương Chi^

(1) Khoa Toán, Đại học S ư phạm, Đại học Thái Nguyên (2) Khoa Công nghệ thông tin, Đại học Công nghệ, Đại học Quốc Gia Hà Nội

(3)Khoa Cơ bản, Đại học Ngoại thương Khí sử dụng các công cụ tìm kiếm thông dụng hiện nay, kết quả tìm idem thicờng là rất nhiều tài liệu và các kết quả được đảnh giá là cỏ liên quan tời từ khỏa nhiều nhất sẽ được iru tiên hiển thị trước Phương pháp này nhiều khi không tiện lợi cho người dùng, thậm chí người dùng có thể bỏ qua các kết quả cần tìm vì chủng không cỏ thứ hạng cao trong tập kết quả tìm kiếm Để giải quyết vẩn đề này, báo cáo đề xuất hiển thị kết quả tìm kiếm web theo chủ đề.

Để xác định chủ đề cho tài liệu, tnrởc hết sử dụng mô hĩnh tập thô dung sai để tăng chất lượng việc biểu diễn các tài liệu và các cụm từ nhằm tăng hiệu qitả phân cụm; sau đó sử dụng phương pháp phân cụm bán giảm sát Seeded - KMeans vào việc phân cụm và xác định chủ đề tài liệu Nhờ cách xử lý này, người dùng dựa trên từ khỏa cỏ thể tìm tài liệu theo chủ đề.

Từ khóa: tập thô dung sai, đồng xuất hiện, phân cụm bán giám sát, Seeded - KMeans, tìm kiếm w eb

và hiển thị kết quả dựa trên chủ đề theo lựa chọn của người dùng

Việc phân cụm kết quả tim kiếm web gặp phải một số khó khăn sau:

Trang 2

Một số vẩn đề chọn lọc cùa Câng nghệ thông tin và truyền thông, Hung Yén, 19-20 tháng 08 năm 2010

• Vì thực hiện trực tuyến nên yêu cầu phải có tốc độ xử lý nhanh

Để giải quyết được các khó khăn trên, trong báo cáo này chúng tôi sử dụng mô hình tập thô dung sai (xem [2], [3], [5]) vào việc biểu diễn tài liệu làm tăng chất lượng biểu diễn tài liệu Để tạo ra được nhãn cho các cụm kết quả tìm kiếm và tăng chất lượng của việc phân cụm, chúng tôi sử dụng thuật toán phân cụm bán giám sát Seeded - KMeans vào việc phân cụm, trong đó nhân của cụm sẽ dựa vào nhãn của tài liệu ở tập giống (seed) trong các trang web được chọn trước

Phần còn lại của báo cáo bao gồm các nội dung sau: mục 2 trình bày về máy tìm kiếm web, mục 3 giới thiệu bài toán phân cụm kết quả tìm kiếm web và mô hình tập thô dung sai, mục 4 trình bày thuật toán phân cụm bán giám sát dựa trên mô hình tập thô dung sai, mục 5 trình bày thử nghiệm của chúng tôi, và cuối cùng là kết luận

2 M áy tìm kiếm w eb

Máy tìm kiếm Web là một công cụ giúp người sử dụng tìm kiếm thông tin trên mạng một cách nhanh chóng và đầy đủ

Cấu trúc của một máy tìm kiếm web gồm các thành phần sau (xem [3], [8]):

Trình thu thập web (Web Crawler) hay còn được gọi là Web Spider là một trong

hai thành phần tương tác trực tiếp với World Wide Web (WWW) Web crawler C Ó nhiệm

vụ phát hiện các trang mới trên WWW bằng cách thu thập các siêu liên kết từ các trang tài liệu Quá trình này được thực hiện đệ qui để thăm dò hầu hết các trang web trên Internet Web crawler sẽ phải sử dụng một số kỹ thuật để tránh không bị lấy thông tin trùng lặp; nó vừa thu thập các trang web mới nhưng cũng đồng thời kiểm tra lại những siêu liên kết đã không còn tồn tại trên WWW để loại chúng khỏi các kết quả tìm kiếm

Chỉ mục tài liệu (Document Index): Thành phần lập chỉ mục tài liệu thực hiện

chức năng xây dựng bảng chỉ số tài liệu hỗ trợ công việc tìm kiếm Thông thường, các hộ thống tìm kiếm thông tin thực hiện việc tìm kiếm các tài liệu hoặc dựa trên phương pháp lựa chọn tài liệu có chứa các từ trong câu hỏi tray vấn, hoặc dựa trên phương pháp xếp hạng tài liệu (Document Ranking) liên quan đến câu hỏi truy vấn Do đó hầu hết các máy tìm kiếm đều sử dụng biến dữ liệu có cấu trúc chỉ mục ngược (inverted index) để hỗ trợ thực hiện công việc này

Lưu trữ tài liệu (Document Cache): Hiện nay có nhiều máy tìm kiếm vừa lưu trữ

bảng chỉ số tài liệu như ở phần trên, vừa lưu trữ tài liệu gốc

Tính hạng tài liệu (Document Ranking) World Wide Web càng ngày càng phát

triển do vậy lượng thông tin ngày càng lớn, số kết quả tìm kiếm với một từ khóa bất kỳ đều rất lớn, ngay cả với những câu hỏi truy vấn hoàn thiện và chính xác, số kết quả tìm kiếm vẫn có thể lên đến hàng ngàn hoặc hàng triệu Chính vì vậy cần có module tính hạne; tài

Trang 3

M ột sẩ vấn đề chọn lọc cùa Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

liệu để xác định được tài liệu nào có độ liên quan đến các từ khóa mà người dùng tìm kiểm nhất

Xử lí truy vấn là thành phần có nhiệm vụ phân tích cú pháp tìm kiếm của người dùng thông qua các toán tử và cú pháp được định nghĩa, sau đó bộ xử lí truy vấn kết hợp với bảng chỉ số tài liệu, các tài liệu được lưu trừ, và thành phần tính hạng tài liệu để đưa ra tập kết quả tìm kiếm thỏa mãn cú pháp tìm kiếm của người dùng

Giao diện biểu diễn kết quả là thành phần quan trọng trong máy tìm kiếm và trực tiếp tương tác với người sử dụng Do vậy giao diện biểu diễn kết quả tìm kiếm là yểu tố đầu tiên được xem xét khi đánh giá chất lượng của một chương trình tìm kiếm, nó có vai trò vô cùng quan trọng và có ảnh hưởng rất lớn đến toàn bộ chất lượng của máy tìm kiểm

3 Phân cụm kết quả tìm kiếm w eb và mô hình tập thô dung sai.

Trong mục này chúng tôi giới thiệu tóm tắt bài toán phân cụm kết quả tìm kiếm trên web, phương pháp phân cụm bán giám sát Seeded-Kmeans và mô hình tập thô dung sai (chi tiết hơn xem [1], [4], [5], [6])

3.1 Bài toán phân cụm kết quả tìm kiếm web

Phân cụm dữ liệu là bài toán học không giám sát được phát biểu như sau:

Giả sử ta có tập các đối tượng D={dl,d2,.- )dn} và ô(di; dj) là độ tương tự giữa hai đối tượng di và dj Phân cụm là chia tập đối tượng D thành K cụm C={cl,c2, ,ck} sao cho mỗi đối tượng đều thuộc về một cụm, các đối tượng trong cùng một cụm thì tương tự nhau hơn các phần tà thuộc các cụm khác nhau (số lượng cụm k có thể được xác định trước hoặc xác định nhờ phương pháp phân cụm)

Nhược điểm của các phương pháp phân cụm hiên thời là kết quả phân cụm khó phù hợp với các yêu cầu của người dùng Vì vậy, một hướng tiếp cận mới giúp tăng hiệu quả cho các thuật toán phân cụm là sử dụng các thông tin hỗ trợ từ người dùng và được gọi là phân cụm bán giám sát (semi supervised clustering [1]) Các thông tin bổ trợ có thể được cho dưới dạng tập các cặp ràng buộc hoặc một tập nhỏ một số dữ liệu được gán nhẵn

Trong phân cụm, việc đánh giá độ tương tự giữa các đối tượng dựa trên các tiêu chí khác nhau ví dụ như khoảng cách giữa các đối tượng hoặc dựa trên khái niệm , Phân cụm tài liệu là phương pháp phân cụm dựa trên khái niệm, khi đó các tài liệu trong cùng một cụm đều liên quan đến khái niệm chung của cụm Hay nói cách khác, các đối tượng được nhóm lại theo nội dung chúng diễn tả, không đơn giản là chỉ dựa theo độ đo khoảng cách hình học

Trang 4

Một sổ vấn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, ¡9 -2 0 tháng 08 năm 2010

web làm việc trên các tập tài liệu có độ dài trung bình (khoảng vài trăm phần tử với độ dài

từ 10-20 từ) Trong phân cụm tài liệu, yểu tố quan trọng là chất lượng của các cụm và khả năng mở rộng với độ lớn của số lượng tài liệu vì nó thường sử dụng để phân cụm toàn bộ tập tài liệu

Đối với phân cụm kết quả tìm kiếm web, ngoài việc cung cấp các cụm chất lượng tốt, nó còn cần tạo ra các mô tả ngắn gọn xúc tích và có ý nghĩa cho nhóm Ngoài ra, các thuật toán phài nhanh, cho kết quả ngay lập tức (vì phải xử lý các kết quả tìm kiếm ngay trước khi hiển thị đến người sử dụng) và phải mở rộng được qui mô với sự gia tăng yêu cầu của người sử dụng

Có nhiều phương pháp phân cụm khác nhau như phân hoạch, phân cấp, chia lưới, dựa trên mật độ, Đối với bài toán phân cụm tài liệu, phương pháp phân cụm phân hoạch thường được lựa chọn Trong báo cáo này chúng tôi cũng sử dụng phương pháp phân cụm phân hoạch cho việc phân cụm kết quả tìm kiếm web

3.2 Thuật toán phân cụm bán giám sát Seeded - Kmeans

Đối với phương pháp phân cụm nửa giám sát dựa trên tập dữ liệu được gán nhãn,

để hình thành nên các cụm giống nhằm khởi tạo cho một thuật toán phân cụm hoặc để sinh

ra các ràng buộc dẫn dắt quá trình phân cụm, người ta sẽ sử dụng tập dữ liệu được gán nhãn

Seeded-KMeans là thuật toán phân cụm bán giám sát điển hình dựa trên tập dữ liệu

đã được người dùng gán nhãn được Basu đề xuất năm 2002 (xem [1]) Thuật toán này sửdụng tập con ^ được gọi là tập giống gồm các đối tượng đã được gán nhãn để khởi tạo cho thuật toán KMeans Trên thực tế tập giống s thường chỉ chiếm một phần nhỏ trong tập đối tượng X Do vậy khi tập giống không đầy đủ thì các cụm còn lại được khởi tạo ngẫu nhiên trên phần của s trong X Dưới đây thể hiện chi tiết của thuật toán Seeded

- KMeans

Thuật toán Seeded-KMeans

Input; - Tập các đối tượng dừ liệu X = e

Số lượng cụm: K

Output: K phân hoạch tách rời: của X sao cho hàm mục tiêu được tối ưu.

Thuật toán:

Bưó'c 1: Khởi tạo các cụm: ^ JC , với h = t«-0

Bước 2: Gán cum; Gán mỗi đối tương dữ liêu X vào cum h' (tức là tâp ) với /i* = argmin

* l /j J /l=l

Trang 5

M ột sổ vẩn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, 19‘20 tháng 08 năm 2 0 ì 0

Bước 3: ước lượng tâm:

*Bước 4: t <-t+l

Bước 5: Dừng nếu hội tụ hoặc quay lại bước 2

Bảng 1 - Thuật toán Seeded - KMeans

3.3 Mô hình tập thô dung sai (Tolerance Rough Set Model - TRSM)

Lý thuyết tập thô (rough set theory) lần đầu tiên được đề xuất bởi z Pawlak vào đầu những năm 1980 và nhanh chóng được xem như một công cụ xử lý các thông tin mơ

hồ và không chắc chắn trong việc phân tích và phân lớp dữ liệu

Trong lý thuyết tập thô, mỗi tập con X trong tập vũ trụ u có thể được xấp xi bởi xấp xỉ trên và xấp xỉ dưới của nỏ trong không gian xấp xi 9Ĩ=(Ư,R) trong đó R c UxU là một quan hệ tương đương (quan hệ tương đương là quan hệ có các tính chất phản xạ, đối xứng và bắc cầu) Hai đổi tượng x,y C u được nói là bất khả phân biệt theo quan hệ R nếu xRy Xấp xỉ dưới và xấp xỉ trên của bất cứ tập X c u trong 9Ĩ ký hiệu là LR(X) và UR(X) được định nghĩa là:

vì với mỗi từ đều có một lớp các từ có nghĩa tuơng tự Các lớp này không rời rạc (lớp tương đương) mà chúng phủ nhau, nghĩa của các từ không có tính chất bắc cầu

Quan hệ dung sai (tolerance relation) là quan hệ chỉ thỏa mãn hai tính chất là tính chất phản xạ và tính chất đối xứng Các lớp phủ nhau có thể được sinh ra bởi các quan hệ dung sai Mô hình xấp xỉ chung sử dụng quan hệ dung sai được giới thiệu trong đó không gian chung được gọi là không gian dung sai (tolerance space) có chứa các lớp phủ nhau của các đối tượng trong vũ trụ (các lớp dung sai)

u

Trang 6

M ột số vẩn đ ề chọn lọc cùa Công nghệ thống tin và truyền thông, Hưng Yên, 19-20 thảng 08 năm 2010

Giả s ử mỗi đối tượng X có thể hiểu được bởi các thông tin Inf(x) về nó Hàm không chắc chắn I xác định một lớp dung sai I(x) của các đối tượng được coi là có thông tin tương tự với X Hàm này có thể là một hàm bất kỳ thỏa mãn 2 điều kiện xe I(x) và xe I(y)

<=> y e I(x) V x,ye u Dễ thấy I(x) là lớp dung sai của X bởi vi quan hệ xRy<=^ yG I(x) là một quan hệ dung sai

Hàm tính độ mập mờ V được dùng để xác định mức độ bao phủ giữa các tập hợp V

có thể là bất cứ hàm đơn điệu đối với 2 tham sổ của nó v(X,Y) < v(X,Z) V X,Y,ZeU và YcZ

Hàm cấu trúc p phân lóp I(x) với mỗi xe ư thành 2 lớp là các tập con có cấu trúc (P(I(x))=l) và các tập con không có cấu trúc (P(I(x))=0) xấp xỉ trên và xấp xỉ dưới của mọi đối tượng x e U trong được định nghĩa là:

• LR(X) = { X G U| P(I(x))= 1 & v(I(x),X)= 1} {f)

Vấn đề cơ bản của việc sử dụng không gian dung sai là làm thế nào để xác địnhđược I, V và p cho phù hợp

4 T h u ật toán phân cụm bán giám sát dựa trên T R S M

Trước khi trình bày thuật toán, chúng tôi giới thiệu tóm tắt về không gian dung sai (chi tiết xem [4],[6])

4.1 Không gian dung sai

Giả sử D = {dl, d2, dn} là tập các tài liệu và T={tl, là tập các từ chỉmục của tập tài liệu D Trong TRSM, không gian dung sai được ký hiệu qua một vũ trụ của tất cả các từ chỉ mục

Đe xác định được mối quan hệ giữa các từ chỉ mục trong các lớp, quan hệ dung sai

R được xác định là sự xuất hiện đồng thời của các từ trong tất cả các tài liệu từ tập D Quan

hệ đồng xuất hiện của các từ chỉ mục giúp xác định mối quan hệ ngữ nghĩa và làm sáng tỏ

ý nghĩa thực sự của các từ trong ngữ cảnh của các tài liệu và việc tính toán trở lên đơn giản

và hiệu quả

Giả sử fD(ti, tj) là số lượng các tài liệu trong D xuất hiện cả hai từ ti và tj Hàm không chắc chắn I phụ thuộc vào ngưỡng 0 được định nghĩa là

Rõ ràng hàm trên thỏa mãn các tính chất phản xạ và đối xứng với mọi ti và tj s T

Vì vậy quan hệ dung sai I cT xT có thể định nghĩa qua hàm I:

Trang 7

M ột sô vấn để chọn lọc của Công nghệ thông tin và truvền thông, Hưng Yên, 19-20 tháng 08 năm 2010

Trong đó 10 (ti) là lớp dung sai của từ chỉ mục ti

Để đánh giá mức độ bao hàm của một tập trong tập khác, hàm bao phủ không chắc chắn được định nghĩa là:

X n Y v{X, Y) =

là các từ chi mục của di:

ư ( r f , ) = { í , E r | v ( / , ( / , , ) , r f , ) > 0 )

Để có cái nhìn trực quan hơn về lớp dung sai của các từ chỉ mục và xấp xỉ trên của tài liệu ta đi xét 1 ví dụ gồm 10 tài liệu được biểu diễn bời các tà chỉ mục như trong bảng

2 Với ngưỡng đồng xuất hiện 0=2, sử dụng công thức (6) ta tính được lớp dung sai của các

từ chỉ mục là: I2(tl)={tl, t2, t5, tl6}, I2(t2)={tl, t2, t4, t5, t26}, I2(t4)={ t2, t4}, I2(t5)={

tl, t2, t5}, I2(t6)={ t6, t7 }, I2(t7)={t6,t7}, I2(tl6)={ tl, tl6}, I2(t26)={t2, t26}, với các từ còn lại thì lớp dung sai chỉ gồm 1 phần tử là chính nó

Trang 8

Một số vấn đ ề chọn lọc của Cổng nghệ thông tin và truyền thông, Hưng Yên, ¡9-20 tháng 08 năm 2010

d y t 2 t í Í 2 2 , t 2 3 , t2 4 , ^25 ^2U t22» t2 3 , t2 4 , h s

d « t2> t i 2 , t 2 6 , Í2 7 t l , t 2 , Í 4 , t 5 , t i 2 , Í2 6 , t2 7

d ọ t2 6 ) t 2 , t2 8 t l , t 2 , t 4 , Í 5 , Ỉ2 6 , t2 8

d i o t i 6 i t 2 l , Ỉ2 9 , t3 0 tl> t 2 , t s , t | 6 , t 2 | , Í 2 9 , Í30

Bảng 2 - Ví dụ về xấp xỉ trên của tài liệu vói ngưỡng đồng xuất hiện là 2

Lược đồ TF*IDF được sử dụng để gán trọng số cho vector tài liệu Đe tận dụng các xấp xỉ của tài liệu, lược đồ được mở rộng để giải quyết truờng hợp các từ chỉ có trong xấp

xi trên của tài liệu nhưng không xuất hiện trong chính tài liệu (hoặc các từ xuất hiện trong tài liệu nhưng lại không nằm trong xấp xỉ dưới của tài liệu

4.2 Thuật toán phân cụm bán giám sát dựa trên TRSM

Thuật toán phân cụm TRS-SK (Tolerance Rough Set Seeded KMeans) cơ bản dựa trên thuật toán Seeded - KMeans được giới thiệu ở trên; do vậy thuật toán đảm bảo hoạt động tương đối nhanh (phù hợp với phân cụm kết quả online) trong khi vẫn đảm bảo được chất lượng của các cụm Việc sừ dụng không gian dung sai và xấp xỉ trên để tăng mối quan

hệ giữa các tài liệu và giữa tài liệu với cụm cho phép thuật toán phát hiện ra sự tương tự khó phát hiện mà các thuật toán khác không làm được Trong phân cụm kết quả tìm kiếm, việc gán nhãn tốt cũng quan trọng như chất lượng nội dung cụm Chúng tôi đã sử dụng các chủ đề của tập dữ liệu giống để làm nhãn cho các cụm dữ liệu

Thuật toán TRS-SK gồm 5 bước: Tiền xử lý tài liệu, xây dựng cách biểu diễn tài liệu, tạo ra các lớp dung sai, phân CVUII, gán nhãn cho cụm Dưới đây là các bước chính của thuật toán

4.2.1 Tiền x ử lý

Tiền xử lý dữ liệu văn bản trước khi đưa vào các thuật toán phân cụm là rất cần thiết và có thể làm tăng hiệu xuất của thuật toán Đầu tiên ta loại bỏ khỏi kết quả tìm kiếm những ký tự không phải là chữ cái (ví dụ: $,@,.• •)> các thẻ HTML và các mã ký tự đặc biệt

Trang 9

Một so vấn đề chọn lọc của Công nghệ thông tin và truvền thông, Hưng Yên, Ĩ9-20 tháng 08 năm 2ỒỈỒ

như &amp, &quot, Sau bước này ta sử dụng các thuật toán tách từ tiếng Việt để tách tài liệu thu được thành các từ có nghĩa Bước tiếp theo là loại bỏ các từ dừng (stop words là những từ xuất hiện nhiều nhưng ko có giá trị trong việc phân cụm)

Mục đích của việc tạo lớp dxmg sai là để xác định tập các tò có liên quan đến mỗi

từ với quan hệ dung sai là quan hệ đồng xuất hiện; tập hợp tà đó được gọi là lớp dung sai

Ta định nghĩa ma trận đồng xuất hiện của từ như sau:

Trong đó tcx,y là tần số đồng xuất hiện của hai từ x,y-nghĩa là số tài liệu có chứa đồng thời cả hai từ X và y Quan hệ dung sai R giữa các từ được định nghĩa là: xRy«=>tcx,y > 9

Trong đó 0 được gọi là ngưỡng đồng xuất hiện Độ phức tạp tính toán của bước 1 là 0(NxM), bước 2 và bước 3 đều là 0(M2) Như vậy độ phức tạp của toàn bộ thuật toán là 0(NxM2) Chi tiết về thuật toán có thể xem [6]

4.2.4 T h u ậ t toản p h â n cụm T R S -S K cải tiến

TRS-SK là sự cải tiến của thuật toán Seeded - KMeans để tạo các nhóm tài liệutương tự Các bước chính của thuật toán được mô tả như sau:

Thuật toán TRS-SK

Input: Tập các kêt quả tìm kiêm D, sô lượng cụm K, tập các kêt quả đã được gán nhãn s (Tập dữ

liệu giống) và ngưỡng tương tự s

Output: K cụm phủ nhau từ tập các kết quả tỉm kiếm D với các giá trị thành viên thích hợp

Trang 10

M ột số vấn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, ỉ 9-20 tháng 08 năm 2010

Tính lại biểu diễn cụm Ri(

Until thỏa mãn điều kiện dửng

Việc áp dụng TRSM vào thuật toán phân cụm sẽ có 2 ưu điểm chính là:

1 Làm giảm các hệ số có giá trị bằng 0 khi ta biểu diễn các tài liệu bời các từ liên quan đến nó trong các lớp dung sai

2 Có khả năng phát hiện ra các tài liệu mà có ít từ chung (hoặc thâm chí ko có) với tập các từ phổ biến

Trang 11

M ột sô vân đê chọn lọc cùa Công nghệ thông tin và truvên thông, Hưng Yên, ¡9-20 thảng 08 năm 2010

Thuật toán phân cụm mà chúng tôi áp dụng là thuật toán phân cụm bán giám sát Seeded - KMeans Đây là một cách tiếp cận mới trong phân cụm kết quả tim kiểm web mà trước đây chưa được nhóm tác giả nào sử dụng Chúng tôi lựa chọn sử dụng thuật toán phân cụm này vì những ưu điểm sau;

1 Việc tạo nhãn cho các cụm chính xác hơn so với các phương pháp phân cụm khác vì nhãn tạo ra dựa trên tập dừ liệu giống đã được người dùng gán nhãn Điều này giữ vai trò rất quan trọng, đặc biệt là với tính chất phức tạp của ngữ pháp tiếng Việt thi việc gán nhãn cho các cụm sao cho ý nghĩa và chính xác là một vấn đề khó

2 Tốc độ thực hiện nhanh

5 T hử nghiệm

Để đánh giá phương pháp mà chúng tôi đã đề xuất, chúng tôi đã cài đặt thử nghiệm một hệ thống tổng hợp tin và tìm kiếm web tiếng Việt Chúng tôi đã sử dụng các kỹ thuật crawler theo chủ đề để tổng hợp tin tức từ các trang báo điện tử phổ thông của người Việt như http://dantri.com.vn, http://vnexpress.net, http://vietnamnet.vn, Đe thu thập được hơn 3000 trang web tiếng Việt thuộc 26 chủ đề được xác định dựa trên các chủ đề của các trang web trên Khi tìm kiếm, các kết quả thuộc tập các trang web này được sử dụng làm tập dữ liệu giống cho thuật toán Seeded - KMeans

Chúng tôi đã sử dụng thuật toán TRS-SK vào phân cụm kết quả tìm kiếm web khi thực hiện việc tìm kiếm trên ứng dụng thử nghiệm Sau khi phân cụm, chúng tôi sử dụng chính các chủ đề của các bài viết được sừ dụng làm tập giống để tạo thành nhãn cho các cụm, vì vậy nhãn của các cụm thường bao quát được hết nội dung của các kết quả nằm trong cụm đó

Sử dụng mô hình tập thô dung sai và ngưỡng tương tự giữa các tài liệu và các cụm

để phân cụm giúp chúng tôi tạo nên các cụm kết quả phủ nhau, điều này phản ánh đúng thirc tế là một bài viết thì có thể thuộc vào nhiều chủ đề khác nhau

Ví dii, khi chúng tôi tìm kiếm với từ khóa “tin học” trên tập dữ liệu thử nghiệm của chúng tôi thì kết quả tìm kiếm trả về thuộc chủ đề “Người Việt trẻ” và “Vi tính” là nhiều nhất, nhưng bên cạnh đó ta còn có thể tìm kiếm được cả các bài viêt thuộc các chủ đề khác như; “Điện thoại”, “Môi trường”,

Hay khi tìm kiếm với từ khóa “nghiên cứu” chúng tôi thực hiện việc phân cụm trên

200 kết quả trả về thì các kết quả đó được phân vào 18 cụm trong đó nhiều nhất là các bài

Trang 12

Một số vẩn đ ề chọn lọc cùa Công nghệ thông tin và truvền thông, H ung Yên, 19-20 tháng 08 năm 2010

Qua nhiều lần thử nghiệm chúng tôi thấy việc lựa chọn ngưỡng đồng xuất hiện của các từ trong ứng dụng bằng 3 và ngưỡng tương tự giữa các tài liệu với các biểu diễn cụm bằng 0.2 sẽ cho kết quả tốt nhất

Phương pháp tiếp cận của chúng tôi phù hợp với xu hướng xây dựng các máy tìm kiếm hay các trang web tổng hợp tin hiện nay vì chúng đều có các trang tin tổng hợp để làm tập dữ liệu giống cho việc phân cụm kết quả tìm kiếm

K ết luân

Báo cáo của chúng tôi đề xuất phương pháp áp dụng mô hình tập thô dung sai vào thuật toán phân cụm bán giám sát Seeded-KMeans để phân cụm kết quả tìm kiếm web tiếng Việt Việc áp dụng mô hình tập thô dung sai với quan hệ dung sai là quan hệ đồng xuất hiện của các từ trong tài liệu giúp phát hiện ra mối quan hệ giữa các từ trong tập kết quả tìm kiếm làm tăng chất lượng phân cụm Thuật toán Seeded-KMeans được sử dụng để phân cụm kết quả với tập dừ liệu giống được thu thập tà các website tiếng Việt phổ dụng kết hợp sử dụng phương pháp tách từ tiếng Việt để tách từ đã làm tăng chất lượng phân cụm và sinh ra nhãn của các cụm kết quả chính xác hơn so với các phương pháp khác

Chúng tôi dự định phát triển hoàn thiện ứng dụng của mình để sử dụng trong thực

tế, so sánh cách tiếp cận của chúng tôi với các phương pháp phân cụm khác trên tiếng Anh đồng thời thử nghiệm với các tập dữ liệu lớn hơn để cải tiến thuật toán phân cụm sao cho hiệu quả Đó sẽ là cơ sở để hình thành một hệ thống tìm kiểm web theo nội dung

Tài ỉiệu th am khảo

1] s Basu, A Banerjee and R J Mooney, (2002) Semi-supervised clustering by seeding In Proceedings of 19th International Conference on Machine Learning (ICML-2002), pp 19-26

[2] c Carpineto, s Osinski, G Romano and D Weiss, A survey of Web clustering engines, ACM Computing Surveys (CSUR) archive, Volume 41 , Issue 3 , Article No 17 (July 2009)

[3] S.Chakxabarti (2003), Mining the Web Morgan Kaufmann

[4] T B Ho and N B Nguyen (2002) Nonhierarchical document clustering based

on a tolerance rough set model International Journal o f Intelligent Systems, VOL 17, 199-212(2002)

[5] J Komorowski, L Polkowski, A Skowron, Rough sets: A Tutorial

[6] Ngo Chi Lang (2003), A tolerance rough set approach to clustering web search results, Master's thesis

[7] z Pawlak (1991), Rough sets: Theoretical aspects o f reasoning about data Kluwer Dordrecht

[8] A Scime, Web Mining: Applications and Technics, Idea Group Inc., 2005

[9] Y.Zhao, and G.Karypis (2001), Criterion functions for document clustering:

Trang 13

M ột số vẩn để chọn Ịọc của Công nghệ thông tỉn và truyền thông, Hưng Yên, ĩ 9-20 tháng 08 ỉĩẵm 2 0 ỉ 0

PHƯƠNG PHÁP MÃ HÓA s ố HỌC

ĐỖ Văn T u ấ n ', T rần Đăng Hiên^, Nguyễn Thanh Bình^, Phạm Văn Át'*

(1) Trường Cao đẳng Thương mại và Du lịch Hà Nội (2) Trường Đại học Công nghệ, Đại học Quốc Gia Hà Nội

(3) Trường Đại học Mỏ- Địa chất Hà Nội (4) Trường Đại học Giao thông Vận tải Trong lĩnh vực bảo mật dừ liệu, phương pháp mã hỏa sổ học được xem là một trong những phương pháp hay Tuy nhiên, việc ứng dụng phương pháp này vào thực tể gặp phải những khó khăn nhất định, bởi tốc độ thực hiện của thuật toán

mã hỏa và giải mã chậm vì phải thực hiện các phép toán nhân, chia trên các sổ nguyên lớn với hàng trăm chừ số Trong bài báo này đề xuất một số cải tiến nhằm tăng tốc độ thực hiện của thuật toán bằng việc thay thế các phép nhân, chia bởi các phép dịch chuyển bít Bên cạnh đó, bài bảo cũng trình bcty cơ sở tocin học cho phương pháp mã hóa số học giúp cho việc tìm hiểu, nghiên cứu phương pháp này trở nên d ễ dcing Phần tiếp theo của bài báo được trình bciy như sau: mục 1 trình bảy một số định nghĩa và khái niệm, mục 2 nội dung thuật íoán mã hỏa số học gốc, mục 3 thuật toán mã hóa sổ học cải tiến, mục 4 kết qiủĩ thực nghiệm và mục 5 là kết luận.

1 M ột số định nghĩa và khái niệm

Trong suốt bài báo này ta xem đoạn [0,D] là miền không gian và mọi điểm, mọiđoạn thẳng đều nằm trong miền này

1.1 Phép chiếu một điểm lên đoạn thẳng

Trang 14

Một sổ vấn đề chọn lọc của Công nghệ thông tin V’ c ) truyền thông, Hưng Yên, 19-20 ihcing 08 nàm 2010

1.1.2 P h ép biến đ ỏi ngirực

Khi biết hình chiếu y, thì X được xác định theo công thức:

1.2.2 P h ép biến đỗi ngirợc

Tương tự nếu X) = [a,b] ^ yi và X2 = [a,b] Ỵ 2 thì ta nói:

X | , X 2 ] là nghịch ảnh của [yi,y2] theo [a,b] và ký hiệu:

Ảnh của [xi,X2] lên [a,b] luôn luôn thuộc [a,b] hay nói cách khác:

Ncu: [yi,y2] = [a,b] [X1,X2] thì [yi,y2] c [a,b] (1.9)

Trang 15

M ột sô vân đê chọn lọc của Công nghệ thông tin và tniỵén thông, Hưng Yên, 19-20 tháng o s năm 2010

1.3.3 Tỉnh c h ấ t c h ử a tro n g của p h ép biến đổi n g ư ợ c

Néu

y e Y

X = B ^ Y (X là nghịch ảnh của Y theo B)thì

B -^y e X (nghịch ảnh của y theo B thuộc X)

2 T h u ật toán mã hóa số học gốc

Trong mục này sẽ dùng phép chiếu thu nhỏ đồng dạng để mô tả thuật toán mã hóa

số học, dùng phép biến đổi ngược để diễn đạt thuật toán giải mã và sử dụng các tính chất của phép chiếu để chứng minh tính đúng đắn của thuật toán giải mã So với cách trình bày

về mã hóa số học gốc trong các tài liệu trước đây (ví dụ như [2] và [7]), cách trình bày và cách chứng minh trong bài báo này ngắn gọn và dễ hiểu hơn

2.1 T h u ậ t to á n m ã hóa

Để thực hiện thuật toán mã hóa số học, trước tiên cần xác định miền phân bố của tập ký tự khác nhau của bản rõ

2.1.1 T h ố n g k ê tần su ấ t và x á c đ ịn h m iền p h â n bố của các k ỷ tự tro n g bân rõ

Vấn đề này được trình bày thông qua một ví dụ Giả sử bản rõ là một chuỗi ký tự:

"CABAB" thì kết quả thống kê tần suất như sau:

Gọi m là số ký tự trong bảng tần suất (ở ví dụ này m = 3) Ký hiệu:

ch[i] là ký tự thứ i trong bảng tần suất (ở ví dụ trên: ch[l] = ‘A ’, ch[3] = ‘C ’)

P(ch[i]) = [ỉow_range(ch[i]), hi_range(ch[i])) là miền phân bố của ký tự ch[i'

Để xác định miền phân bố, đầu tiên chọn đoạn cơ sở [0,D] Sau đó chia [0,D] thành

m đoạn con dựa theo tần suất của các ký tự Với bản rõ như trên và D =1000 thì miền phân

bố của các ký tự như sau:

Trang 16

Một 50 vấn đề chọn lọc của Công nghệ thông tin và truvền thông, Hưng Yên, 19-20 tháng 08 ncim 2010

Nhận xét: các miền phân bố không nhất thiết phải tính theo tần suất mà chi cần xác định sao cho không giao nhau và thuộc [0,D] Trong mục 3 sẽ đề xuất các cách chọn miền phân bố hợp lý để cải tiến thuật toán mã hóa số học nhằm nâng cao tốc độ tính toán

2.1.2 Ỷ tư ở n g của th u ậ t toán m ã hóa

Xem bản rõ là một chuỗi gồm n ký tự Gọi kt[i] là ký tự thứ i của bản rõ tính từ trái qua phải, i = l,2, ,n (trong ví dụ trên: kt[l] = ‘C ’, kt[3] = ‘B ’) Gọi Sk (k = 1,2, ,n) là chuỗi con gồm k ký tự đầu tiên, tức Sk gồm các ký tự k t[l], kt[2], kt[k] Với bản rõ như trên thì các chuồi con là:

s, = "C" ; S2 = "CA" ;S3 = "CAB"; S4 = "CABA" ; S s = "CABAB"

Mỗi chuỗi con sẽ có miền mã là một đoạn thẳng (kín đầu trái, hở đầu phải) nằm trong đoạn [0, D] G ọ i;

Ti = [low_code[i], hi_code[i]) là miền mã của chuỗi con Si

Các đoạn Ti được xác định như sau :

Với i= l, chuỗi s 1 gồm một ký tự, thì T1 chính là miền phân bố của ký tự này:

n: độ dài theo ký tự của bản rõ

dãy ký tự của bản rõ kt[i] (i=l,2 ,n)

{

low_code[i] = low_code[i-l]+

(low_range[kt[i]]x(hi_code[i-l]-low_code[i-l]))/D (2.4)

Trang 17

MỘI sổ vấn đề chọn lọc của Cóng nghệ thông tin và íruvền thông, Hưng Yên, 19-20 thúng 08 năm 2010

Nhận xét; Thực chất thuật toán mã hoá là xác định đoạn mã cho các chuỗi con Sk của bản rõ băng cách áp dụng liên tiếp phép thu nhỏ đồng dạng Các đoạn này bị thu nhỏ rất nhanh và khi một đoạn có độ dài bàng 1 thì thuật toán không thể tiếp tục được Vì vậy

để cài đặt trên máy tính cần sử dụng các kiểu số nguyên lớn từ vài chục đến vài trăm byte, ngoài ra phải chia bản rõ thành các khối và thực hiện mã hoá theo từng khối (xem mục 4)

2.2 Thuật toán giải mã

2.2.2 Ý íirở/ìg củ a th u ậ t toán g iả i m ã

Từ mã số code của bản rõ cần khôi phục các ký tự z[i] (i=l, ,n) của bản rõ Ý tưởng của thuật toán như sau:

Với i = 1 thi

Với i=2, ,n thì

(code[i] là nghịch ảnh của code[i-l] theo [Iow_range(z[i-l]), hi_range(z[i-l])] )

Trang 18

Một số vấn để chọn lọc cúa Công nghệ thông tin VCI truyền thông, Hưng Yên, J9'20 thảng 08 năm 2010

(Công thức (2.11) được xác định dựa vào (1.3), (1.6) và (2.9))

Nhận xét: Trong các công thức của thuật toán mã hóa và giải mã chứa giá trị cận trôn và cận dưới của miền phân bố Vì vậy bằng cách chọn các giá trị này một cách hợp lý

có thể làm giảm khối lượng tính toán của các thuật toán Ý tưởng này sẽ được thực hiện trong mục 3

2.3 Chứng minh tính đúng đắn của thuật toán

Điều cần chứng minh:

nói cách khác:

Đe dễ theo dõi ta xét n=4, khi đó thuật toán mã hóa (2.1)-(2.3) được biếu diễn như sau:

nên theo tính chất chứa trong (mục 1.3.2) suy ra: T4 c P(kt[l])

Măt khác theo (2,6)-(2.7) ta có: code[l] = code G T 4

Nên: code[l] 6 P(kt[l]) Như vậy (2.13) đúng với i= l, có nghĩa z[l] = kt[l]

Tiếp tục xét (2.13) với i = 2 Theo (2.9) và do z[l] = kt[l] ta có:

codc[2] = P(kt[l]) —> cocic[l

codc[l] e T 4 Nên theo tính chất chứa trong của phép biến đổi ngược suy ra:

codc[2]G P (k t[l]H T4 Mặt khác theo (2.15) thì :

Trang 19

KíỘ! só vân Jê chọn lọc cùa Công nghệ thông tin VCI truyền thông Hưng Yên, ¡9-20 thcìng 08 năm 2010

P (k t[l])^ T 4 = (P(kt[2]) (P(kt[3]) ^ P(kt[4])))Ntỉoài ra theo tính chất chứa trong thì;(P(kt[2])f-(P(kt[3])<—P(kt[4])))e P(kt[2]) nôn: code[2] e P(kt[2]) Vậy (2.13) đúng với i=2, nghĩa là z[2] = kt[2] Bằng cách lập luận tươnỵ tự sẽ suy ra z[i] = kt[i] (i=3,4, ,n) Đó là điều cần chứng minh

3 T huât toán m ã hóa số hoc cải tiến• •

Trong các công thức (2.4) và (2.5) của thuật toán mã hóa và công thức (2.11) của thuật toán giải mã phải thực hiện các phép nhân, chia trên các số lớn làm tốc độ tính toán chậm, hạn chế khả năng ứng dụng của thuật toán này Để giảm khối lượng tính toán, chúng tôi đề xuất giải pháp thay các phép nhân, chia bàng các phép dịch bit Điều này có thể thực hiện được bằng cách chọn các miền phân bố một cách hợp lý

3.1 T h u ậ t to án m ã hóa cải tiến

Chọn D và xác định bảng phân bố (bảng 2) như sau;

Trang 20

Một sô vấn để chọn lọc cùa Công nghệ thông tin và truvền thông, Hưng Yên, ỉ 9-20 tháng 08 nam 2010

+(hi_code[i-1 ]-low_code[i-1 ])»(s-k[f(i)])}

3.2 Thuật toán giải mã cải tiến

Bang cách lập luận tương tự, từ (3.6), (3.7) và để ý thêm rằng z[i] = kt[i], Vi (công thức 2.12) thuật toán giải mã (2.11) được cải tiến như sau:

Để so sánh độ phức tạp của thuật toán mã hóa số học gốc so với thuật toán cải tiến

ta đánh giá số phép toán mà mỗi thuật toán cần thực hiện Giả sử cả các thuật toán được thực hiện trên các số nguyên lớn có độ dài size byte (Sxsize bit)

3.3.1 T h u ậ t toán m ã hỏa số học gốc

a Thuật toán mã hóa

Theo (2.4) và (2.5) trong mỗi bước lặp cùa thuật toán mã hóa cần thực hiện 2 phép nhân và 2 phép chia trên các số nguyên có độ dài 8xsize bit (chưa kể các phép cộng và trừ)

vì vậy số phép toán cần thực hiện là:

4x (8xsize)^ = 256xsize^ phép nhân bit Vậy tổng số phép toán cần thực hiện là:

b Thuật toán giải mã

Bằng cách phân tích tương tự ta suy ra tổng số phép toán cần thực hiện:

3.3.2 T h u ậ t toán m ã hóa số học cải tiến

a Thuật toán mã hóa

Theo (3.8) và (3.9) trong mỗi bước lặp của thuật toán mã hóa cần thực hiện 3 phép dịch bit trên các số nguyên có độ dài size byte Mỗi phép dịch bit yêu cầu tối đa 8x size phép gán bit Vì vậy số phép toán cần thực hiện của n phép lặp là:

Trang 21

Một số vấn để chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

b T h u ật toán giải mã

Bang cách phân tích tương tự ta suy ra tổng số phép toán cần thực hiện là:

3.2.3 S o sá n h độ p h ứ c tạp của 2 p h ư ơ n g p h á p

Troníỉ phương pháp mã hóa số học gốc chọn phép toán nhân bit làm phép toán cơ

sở, trong khi đó phương pháp mã hóa số học cải tiến chọn phép gán bit làm phép toán cơ

sở Thực tế phép gán bit thực hiện nhanh hơn phép nhân bit Trong trường hợp này để tiện

so sánh ta giả sử 2 phép toán này là tương đương về độ phức tạp Khi đó từ các công thức (3.11) và (3.13) thi tốc độ tính toán giữa 2 phương pháp có thể được so sánh qua phép tính sau:

Sô phép tinh cùa thuật toán ni<5 hóa gỏc 256 X size^ X n

Sỏ phép tính cùa th u ậ t toán tìiâ hóa cài tiên 24 X size X n

Như vậy tốc độ của thuật toán mã hóa cài tiến nhanh gấp 10.7xsize lần so với thuật toán mã hóa gốc Neu sử dụng số nguyên lớn với độ dài 25 byte (size=25 - như trong phần cài đặt chương trình) thì thuật toán mã hóa cải tiến ít nhất nhanh gấp 267 lần so với thuật toán mã hóa gốc Bằng cách lập luận tương tự suy ra thuật toán giải mã cải tiến ít nhất nhanh gấp 16xsize so với thuật toán giải mã gốc Nhưng qua thử nghiệm chương trinh thỉ thấy tổc độ cùa thuật toán cải tiến còn nhanh hơn nhiều (xem mục 4)

3.4 Thuật toán chia đều miền phân bố

3.4.1 X á c ítịn h m iề n p h â n bổ

Có thể nhận được một phương án cải tiến đơn giản bằng cách chia đều miền phân

bố cho các ký tự Khi đó miền phân bổ được xác định như sau:

3.4.2 T h u ậ t to á n m ã hóa cải tiến

Với cách chọn miền phân bố theo (3.15)-(3.17) và để ý thêm rằng kt[i] = ch[f(iX (công thức (3.5)) thì công thức (2.4), (2,5) có dạng:

low_code[i]=low_code[i-1 ]+(f(i)-1 ) ) (hi_code[i-1 ]-low_code[i-1 ])» (s-h ) (3 1 9)

Trang 22

Một sơ vấn đề chọn lọc của Cóng nghệ thông tin và truvền thông Hưng Yên 19-20 thảng 08 năm 2010

Ngoài ra theo (3.19), (3.20) ta có:

Do đó từ (2.1), (2.2) và bàng cách kết hợp (3.19), (3.20) với (3.22) ta nhận được thuật toán mã hóa cài tiến như sau:

low_code[i] = low_code[i-l] + (f(i)-l) « u[i];

hi_code[i] = low_code[i] + A[i];

}

Nhận xét: Điều kiện (3.18) chẳng những đảm bảo miền phân bố của các ký tự thuộc0,D] mà còn cho phép các phép dịch chuyển trong thuật toán luôn thực hiện được (u[i]>0)

3.4.3 T h u ậ t toán g iả i m ã cải tiến

Với cách chọn miền phân bố theo (3.15)-(3.17) và để ý thêm rằng kt[i] = ch[f(i)] thì thuật toán giải mã tại mục 2.2.3 được cải tiến như sau:

code[l] = code

z[ 1 ] = g(code[ 1 ]); //xác định được ký tự đầu tiên của bản rõ

for(i=2; i < n; i++)

{

code[i] = (code[i-1 ]« (s-h )) - (f(i)-1 ) « s

z[i] = g(code[i]) // xác định các ký tự tiếp theo

}

Nhận xét; Tại mồi bước trong thuật toán mã hóa 3.4.2 chứa 2 phép dịch bit vì vậy tốc độ của thuật toán này nhanh hơn tốc độ của thuật toán mã hóa cải tiến tại mục 3.1

4 K ết quả th ử nghiệm trên m áy

Đc cài đặt các thuật toán chúng tôi đã sử dụng kiểu nguyên lớn size byte (size<200)

từ [1], với size được chọn linh hoạt bời người sử dụng (ở đây chọn size = 25) Bản rõ được chia thành các khối với độ dài 25-30 ký tự (ứng với size =25) Viộc mã hóa được tiến hành

Trang 23

Một sổ vấn dề chọn lọc cùa Công nghệ thông tin vc) truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

theo từng khối Chương trình được viết bàng ntỊÔn ngữ VC++ 6.0, được cài đặt cho thuật toán gốc và thuật toán cải tiến 3.4 Ket quả thử nghiệm dưới đây cho thấy thuật toán cải tiến nhanh hơn khoảng 1000 lần so với thuật toán gốc

T h ờ i g ia n mã hóa ( Đ ơ n vị tính toán 0 0 01 g iâ y)

T h ờ i g ia n g iả i mã ( Đ ơ n vị tính to á n 0 0 0 1 c i â y )

P h ư ơ n g p háp

g ố c

P h ư ơ n g pháp cài tiến 3.4.1

P h ư ơ n g pháp

g ố c

P h ư ơ n g pháp cải tiến 3 4.1

Trong các kết quà trên bản rõ trong dòng thứ 7 là Đe thi tuyển sinh đại học năm

2010 môn Hóa học Các ô để trống trong các dòng từ 4 đến 7 không có kết quả do thời gian chạy máy quá lâu

K ết luận

Bài báo đã trình bày cơ sở toán học cho phương pháp mã hóa số học bằng việc định nghĩa phép chiếu thu nhỏ đồng dạng và phép biến đổi ngược Qua đó, quá trình mã hóa được mô tả bằng các phép chiếu thu nhỏ đồng dạng, quá trình giải mã được diễn tả bằng các phép biến đổi ngược Thông qua hai phép chiểu, việc chứng minh tính đúng đắn của thuật toán cũng được trình bày chặt chẽ, giúp cho việc tìm hiểu, nghiên cứu thuật toán trở nên dễ dàng hơn Mặc dù phương pháp này đơn giản về mặt toán học nhưng đòi hỏi phải thirc hiện các phép nhân, chia với số nguyên lớn làm tốc độ tính toán chậm nên khó áp dụng vào thực tế Bài báo đã đề xuất cách chọn giá trị cho miền cơ sở [0,D] và các miền

phân bố có dạng 2^ để thay thế các phép nhân, chia trong thuật toán gốc bằng các phép

dịch trái, dịch phải nhằm nâng cao tốc độ tính toán Từ đó làm cho phương pháp mã hóa và giải mã thực hiện nhanh hơn, giúp cho việc ứng dụng phương pháp này vào thực tế trở nên

Trang 24

M ột số vấn đề chọn lọc cùa Công nghệ thông tin và truyền thông, Hưng Yên, ¡9-20 tháng 08 ncim 2010

đế xác định các giá trị hợp lý cho 3 yếu tố trên nhằm tăng tốc độ mã hoá hoặc giảm độ dài bản mã hiện đang được nhiều người quan tâm

T ài liệu th am khảo

1] Phạm Vãn Ất, Nguyễn Hiếu Cường, Nguyễn Văn Long, Đỗ Văn Tuấn, Cao Thị

Luyên, Trần Đăng Hiên, Đề xuất thuật toán xử lý số nguyên lớn và ứng dụng

trong các hệ mật mã khóa cóng khai, Kỷ yểu hội thảo Quốc gia "Một số vấn đề

chọn lọc của công nghệ thông tin và truyền thông", Biên Hòa, 05-06 tháng 8 năm 2009, Nhà XB Khoa học và Kỳ thuật, Hà Nội -2010, 107-118

[2] Howard, P.G and Jeffrey Scott Vitter, Practical Implementations o f Arithmetic

Coding, International Conference on Advances in Communication and Control

(Comcon 3), Victoria, British Columbia, Canada, October 16-18, 1991

[3] Howard, P.G and Jeffrey Scott Vitter, Arithmetic coding fo r data compression,

IEEE 1992

[4] Hai Mei, Zhang Jian-jun, NI Xing-fang, An improved Arithmetic Coding

Algorithm Journal of Shanhai University, 2004.

[5] Rissanen J.J, Generalized kraft inequality and arithmetic coding, IBM J Res

Trang 25

M ột số vắn để chọn Ịọc của Công nghệ thông tin và truvền thông, Hưng Yên, 19-20 thảng 08 năm 2010

MỘT SỐ CẢI TIẾN THUẬT TOÁN SONG SONG PHÂN CỤM DỮ LIỆU LỚN, NHIÈƯ CHIÈU D ự A TRÊN LƯỚI

THÍCH NGHI PMAFIA

Nguyễn M ạnh Hùng, Phạm Thị Bích Vân, Đỗ Thị Mai Hường

Khoa Công nghệ thông tin, Học viện Kỹ thuật Quân sự Phân cụm dữ liệu trong không gian dữ liệu lớn, nhiều chiều và không đầy đủ là một trong những bài toán rất quan trọng của lĩnh vực khai phả dữ liệu Đã có nhiều nhà nghiên cínt quan tâm và để xuất các thuật toán giải quyết vấn đề này như: CLIQUE, MAFIA, pMAFIA, Trong bài báo này, chúng tôi đề xuất thuật toán pMAIFA-TID trên cơ sở cải tiến thuật toán song song phân cụm dựa trên hỉới thích nghi pMAFIA Thuật toán pMAFIA-TID tăng tốc độ thực hiện

so với thuật toán pMAFIA trên cơ sở bổ sung một sổ điểm sau đây:

- Không duyệt qua dữ liệu nhiều lần để đếm các bản ghi thỏa mãn khối mật độ cao dự kiến (CDU- candỉdate dense unit) CDUij.

- Đem các bản ghi thỏa mãn CDUij thông qua sổ bản ghi thỏa mãn khối mật

độ cao (D ư - dense unit) DUi và cũng thỏa mãn DUj.

- Trên mỗi bộ xử lý sau khỉ xây dựng được một CDU s ẽ tiến hành loại lặp cục

bộ luôn, sau đó mới tổng hợp và loại lặp toàn cục.

Kết quả thử nghiệm trên bộ dữ liệu về bệnh xơ vữa động mạch STULONG cho thấy pMAFỈA-TID có tốc độ thực hiện tốt hơn nhiều so với thuật toán pMAFIA.

Từ khóa: Phân cụm, khai phá dữ liệu, tính toán song song, lưới thích nghi, CLIQUE, MAFIA, pMAFIA, STULONG

l G i ó i th iệ u

Sự phát triển như vũ bão của công nghệ thông tin trong những năm qua dẫn đến lượng dữ liệu được thu thập và lưu trữ ngày cảng lớn Tuy nhiên, do tính chất của môi trường cạnh tranh, nhu cầu có thông tin một cách nhanh chóng tò những kho dữ liệu khổng

lồ để giúp cho việc ra quyết định ngày càng cao Các phương pháp quản trị và khai thác cơ

sở dữ liệu truyền thống ngày càng không đáp ứng được yêu cầu này Do vậy thực tế đã phát triển một khuynh hướng mới đó là kỹ thuật phát hiện tri thức và khai phá dữ liệu

Có rất nhiều phương pháp khai phá dữ liệu như: phân lớp, hồi qui, phân cụm

Trang 26

các dữ liệu trong các ứng dụng khoa học (ảnh vệ tinh, mô phỏng khoa học lớn) và tài chính.

Đã có nhiều nhóm đi nghiên cứu và để xuất thuật toán giải quyết vấn đề này như: CLIQUE, MAFIA, pMAFIA, Trong bài báo này, chúng tôi đề xuất thuật toán pMAIFA- TID trên cơ sở cải tiến thuật toán song song phân cụm dựa trên lưới thích nghi pMAFIA Bài báo gồm 5 phần, phần 2 trình bày những điểm kỳ thuật chính của thuật toán pMAFIA, phần 3 trình bày chi tiết những điểm cải tiến của thuật toán pMAFIA-TID so với pMAFlA, phần 4 trình bày qui trình thử nghiệm thuật toán pMAFIA-TID và so sánh đánh giá với pMAFIA, phần 5 kết luận những điểm chính đã đạt được của bài báo

2 T h u ật toán p M A F IA

Như đã giới thiệu ở trên, pMAFIA là thuật toán phân cụm dựa trên lưới thích nghi,

ư u điểm của phân cụm là đưa ra các cụm đơn giản, thuận tiện theo đúng yêu cầu của người sử dụng và đặc biệt là có thể làm việc với không gian dữ liệu lớn, nhiều chiều Phân cụm bao gồm các dạng: Phân cụm dựa trên phân cấp, phân cụm dựa trên phân vùng và phân cụm dựa trên lưới và mật độ [1,3,4,5]

Đối với các thuật toán phân cụm có thứ bậc và phân cụm dựa trên phân vùng (k- means) thì yêu cầu phải có tham số đầu vào và không làm việc tốt trên tập dữ liệu không đầy đủ Thuật toán phân cụm dựa trên lưới cố định CLIQUE [2] tuy có thể làm việc với tập

dữ liệu không đầy đủ nhưng vẫn phải cần tham số khoá đầu vào Và việc chia các chiều thành các khoảng lưới có độ rộng cố định có thể dẫn tới các cụm kết quả sẽ có nhiều sai khác so với cụm thực tế và thời gian tính toán lớn

Khắc phục những hạn chế trên pMAFIA [7] được đưa ra dựa trên lưới thích nghi cho phép chia mỗi chiều của không gian dữ liệu thành các các khoảng lưới với độ rộng thay đổi (tuỳ thuộc dữ liệu) Sau khi các khoảng lưới thích nghi được hỉnh thành, thuật toán sẽ xác định ngưỡng cho mỗi khoảng một cách tự động và xác định khoảng nào là mật

độ cao dựa vào các ngưỡng đó Một ưu điểm nữa là pMAFIA không yêu cầu các tham số khoá đầu vào và số cụm tạo ra là động

2.1 Lưới thích nghi [4, 5, 6]

Chi phí tính toán của thuật toán phụ thuộc vào số lượng các khối mật độ cao được tạo ra trong các không gian con cùa không gian dữ liệu, trong đó các không gian con có số chiều càng lớn thì số khối mật độ cao tạo ra càng nhiều (tăng theo hàm mũ) Mặt khác số khối mật độ cao và mật độ cao dự kiến được sinh ra phụ thuộc vào kích thước của các khoảng trong mỗi chiều Do đó ta thấy việc lựa chọn thông số kích thuớc của khoảng là bao nhiêu ảnh hưởng rất lớn đến chất lượng của cụm và thời gian tính toán của thuật toán

Hơn nữa việc xác định các khối mật độ cao từ các khối mật độ cao dự kiến mà có mật độ lớn hơn một ngưỡng cố định được định nghĩa từ trước có thể sẽ không phát hiện ra

Một sổ vấn đề chọn ¡ục của Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

Trang 27

được tất cả các vùng mật độ cao, hoặc chất lượng cụm không cao Đồng thời với lưới độ rộnsỉ cố định sau khi tạo thành các cụm phải tiến hành thêm một thuật toán để tìm đường biên xấp xi của cụm chứ không đưa ra được chính xác cụm Vì thế khái niệm về lưới thích nghi ra đời.

Kích thước khoảng lưới thích nghi được xác định dựa trên sự phân chia dữ liệu troníi một chiều cụ thể Do đó trên một chiều các khoảng lưới sẽ có độ rộng khác nhau tùy thuộc vào sự phân bố dừ liệu Đồng thời giá trị ngưỡng của một khoảng sẽ được tính toán động dựa vào kích thước của khoảng đó Việc tạo ra các khoảng lưới linh động, “vừa’ với

dừ liệu có ý nghĩa rất lớn đến chất lượng của cụm được tạo thành và thời gian tính toán của thuật toán

2.2 Thuật toán pMAFIA Ị4, 5]

Thuật toán pMAFIA bao gồm việc lặp đi lặp lại quá trình sinh ra và kiểm tra các khối mật độ cao dự kiến (CDU - candidate dense unit) để tìm ra các khối mật độ cao (DU - dense unit) cho đến khi không còn DU nào được tạo thành

Các CDU k chiều được xây dựng bằng cách kết hợp hai DU k-1 chiều mà có k-2 chiều bất kỳ chung Thủ tục Tìm_các_khổi_mật_độ_cao_dự_kiến() được thực hiện song song để tìm ra các CDU Thuật toán dành nhiều thời gian duyệt qua dữ liệu để tìm ra các

DU từ các CDU tạo thành bằng cách đếm xem các CDU đó có mật độ lớn hơn ngưỡng hay không Sau khi tính toán biểu đồ mật độ của tất cả CDƯ, các DU được tìm ra và cấu trúc

dữ liệu của các D ư (bao gồm các chi số chiều và chỉ số khoảng) được xây dựng cho việc thực hiện ở các chiều lớn hơn Công việc này được thực hiện bời hai thủ tục

Nhậnj-a_cảc_khoijnật_độ_cao() và Xây_dựng_cauJrủc_dữ_lỉệu_khoi_mật_độ_cao().

Thuật toán thực hiện song song theo dừ liệu trong giai đoạn nhập, xuất, kiểm tra dữ liệu để xây dựng các biểu đồ mật độ của các CDU và song song tác vụ cho tất cả các công việc còn lại của thuật toán Thuật toán kết thúc khi không còn DU nào được tạo ra thêm Các cụm cuối cùng được đưa ra bởi tiến trình chủ ở cuối chương trình

T huật toán pMAFIA:

N- Sô bản ghi; p- Sô bộ vi xử lý; d - sô chiêu của dữ liệu

A i thuộc tính thử i 6 d ; B - số bàn ghi vừa trong bộ nhớ đệm của mỗi bộ vi xử lý /* Mỗi

bộ vi xử lý sẽ đọc N/p bản ghi từ đĩa cục bộ của nó*/

Input: Tập dữ liệu huấn luyện, tập các khoảng lưới thích nghi

Output; Các cụm tạo thành, được biểu diễn theo cấu trúc của cụm

1 Trên mỗi bộ vi xử lý

a Đọc N/pB khối B bản ghi từ đĩa cục bộ và xây dựng biểu đồ mật độ trong mỗi

M ột số vấn đè chọn lọc của Công nghệ thông tin và truvền thông, Hưng Yên, ¡9-20 tháng 08 năm 2010

Trang 28

M ột sổ vấn để chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

c Xác định các khoảng lưới trong mỗi chiều A j, i 6 d sử dụng biểu đồ toàn c ụ c và đặtcác mức ngưỡng cho các khoảng

d Đặt các CDU 1 chiều là các khoảng lưới được hình thành trong tất cả các chiều

e Đặt số chiều hiện tại k=l

f While (không còn khối mật độ cao nào được tìm thấy)

• Nếu(k>l)

Tim_các_khối_mật_độ_cao_dự_kiểnO',

Đọc N/pB các khối B bản ghi từ đĩa cục bộ, với mỗi bản ghi kiểm tra xem

nó thuộc CDU nào thì tăng số count của CDU đó lên

• Tổng hợp (reduce communication) để thu được mật độ toàn cục của cácCDU

Đe tìm ra các DU sau khi đã có các CDU thì trước đó pMAFIA phải duyệt qua toàn

bộ dữ liệu để tính số điểm dữ liệu trong mỗi CDU, cụ thể là với mỗi bàn ghi sẽ kiểm tra xem bản ghi đó thuộc những CDU nào thì sẽ tăng số đếm của CDU đó lên Như vậy tổng

số phép toán là N*Ncdu (N là tổng số bản ghi, Ncdu là số CDU ở vòng đang xét) Điều này tương đương với việc mỗi CDU phải duyệt qua toàn bộ dữ liệu xem có bao nhiêu điểm thuộc CDƯ đó Tuy nhiên để tính toán mật độ của mỗi CDU, pMAFIA-TID có thể thực hiện mà không cần phải duyệt qua toàn bộ dừ liệu theo đề xuất như sau:

Giả sử CDUi j được kết hợp từ hai DU là DUi và DUj, DUi có n bản ghi, DUj có m bản ghi (n<m) Khi đó số bản ghi của CDUij tối đa là bằng min(n,m) Do vậy thay vì duyệt qua toàn bộ dữ liệu để đếm sổ của CDU thì ta chỉ duyệt n bản ghi của DUi (vì giả sử n<m) xem có bao nhiêu bản ghi thuộc DUj (Thuộc ở đây là giống nhau về chỉ số khoảng trên các chiều) Trường hợp tồi nhất thì số lần duyệt bằng số lần duyệt của thuật toánpMAFIA Tổng số phép toán theo cách vừa nêu là n < Ncdu * N (vì riị < / / )

Để thực hiện theo cách đếm như ở trên thì pMAFIA-TID sẽ thêm vào mồi bản ghi

dữ liệu một trường ID Khi đọc dữ liệu vào bộ nhớ trong của máy tính ta sẽ đọc vào một mảng với các chỉ số mảng tương ứng với ID của bản ghi Khi đó trên mỗi CDU hoặc DU ta

Trang 29

Một so vấn đè chọn lục cùa Cõng nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

chỉ lưu thông tin ID chứ không cần lưu toàn bộ bản ghi, khi cần sử dụng bản ghi nào ta sẽ ánh xạ sang mảng lưu trữ dữ liệu qua chỉ số ID để có được thông tin về bản ghi đó Quá trình so sánh một bản ghi của D U i xem có thuộc D U j không ta không phải so sánh với tất

cả các chiều của D U j mà ta chỉ so sánh với một chiều của D U j mà khác D U i D U , D U j

đã có k-1 chiều giống nhau (giả sử hai D U ở k chiều)

Với hệ thống tính toán song song theo mô hình bộ nhớ chia sẻ, ta thực hiện thuật toán pMAPIA theo cách song song các tác vụ, mỗi bộ xử lý sẽ đảm nhiệm thực hiện tính mật độ trên một phần mảng CDU được chia, còn đối với hệ thống tính toán song song theo

mô hình bộ nhớ phân tán, thuật toán pMAFIA-TID sẽ thực hiện song song theo dữ liệu (như pMAPIA), mỗi bộ xử lý thực hiện đếm mật độ cục bộ của tất cả các CDU trên phần mảng dữ liệu mà nó lưu trữ Sau đó sẽ thực hiện tổng hợp để thu được mật độ toàn cục của tất cả các CDU

Khi xây đựng các CDU, pMAPIA tiến hành xây dựng hết các CDU rồi mới loại lặp Tuy nhiên trong mỗi vòng lặp số CDU tạo ra là rất lớn vì thế nếu sau khi tạo thành CDU rồi mới loại lặp thì mỗi CDU phải so sánh với rất nhiều CDU Thay vỉ thực hiện như pMAPIA, pMAFIA-TID sẽ tiến hành loại lặp cục bộ ngay trong quá trình tạo ra CDU sau

đó mới tiến hành loại lặp toàn cục

Như vậy những điểm chính trong đề xuất thuật toán pMAFIA-TĨD gồm:

• Không duyệt qua dữ liệu nhiều lần để đếm số bản ghi thỏa mãn C D U ij mà thực hiện đếm số bản ghi thỏa mãn C D U ij theo số bản ghi đã thỏa mãn D U i mà cũng thoả mãn D U j.

• Quá trình so sánh một bản ghi của D U ị có thuộc D U j ta chỉ so sánh ở một chiều của D U j mà khác D U ị.

• Trên mỗi bộ xừ lý sau khi xây dựng được một CDU sẽ tiến hành loại lặp cục bộ ngay, sau đó mới tổng hợp và loại lặp toàn cục

Trang 30

Một số vắn đề chọn lọc cùa Công nghệ thông tin và truyền thông, Hưng Yên, ỉ 9-20 thảng 08 năm 20Ỉ0

4 Đ ánh g iá thuật toán pM A FIA - T ID so VÓI pM A F IA bằng thực nghiệm

sử dụng bao gồm 1417 bản ghi, mỗi bản ghi gồm 64 trường là các thuộc tính sổ

4.2 Phưong pháp thực hiện

Các giá trị dữ liệu trên bảng ENTRY đã được mã hoá dưới dạng số, tuy nhiên ta sẽ tiến hành loại bỏ các thuộc tính thừa và gộp một số thuộc tính tương tự nhau nhàm làm giảm sổ chiều dữ liệu, tăng tốc độ thuật toán Sau khi tiền xử lý dữ liệu, chúng ta thu được tập dữ liệu gồm 1417 bản ghi và 55 trường

Chúng tôi sẽ thực hiện đánh giá hiệu quả thời gian thực thi của pMAFIA-TID so với pMAPIA trong ba trường hợp sau: Khi tập dữ liệu tăng, khi số CDƯ tạo thành trung binh trên mồi chiều tăng và khi số bản ghi tmng bình thuộc một CDU nhỏ

Để đáp ứng mục đich thực nghiệm trên, chúng tôi sẽ thực hiện thêm các bản ghi vào tập ENTRY trên bằng cách lặp lại một số bản ghi để thu được tập dừ liệu đủ lớn và phù hợp với mục đích thực nghiệm

4.3 Kết quả thực nghiệm

Chương trình thực nghiệm được cài đặt trên ngôn ngữ v s C++ với cấu hình máy tính có bộ xử lý hai nhân tốc độ 1,66x2, bộ nhớ RAM là 1GB và thư viện lập trình song song OpenMP[8]

So sánh thòi gian thực thi của pMAFIA-TID và pMAPIA theo chiều tăng dần của số các CDU trung bình tạo thành.

Thực thi pMAFIA-TID và pMAPIA trên tập dữ liệu mười nghìn bản ghi Gọi r là

hệ số mật độ đối với các thuộc tính rời rạc, thay đổi các thông số X, p, a mục đích thu

được số CDU trung bình tăng dần Thay đổi bộ ba t, p, a chúng ta thu được đồ thị thời

gian như sau:

Trang 31

MỘI số vãn đè chọn lục của Công nghệ thông tin và truvèn thõng, Hưng Yên, 19-20 tháng 08 năm 2010

1 4 0 0 0 0 -

^ 0 0 0 0 - Jpoooo -

So sánh thòi gian thực thi của pMAFIA-TID và pMAPIA theo chiều giảm dần của số bản ghi trung bình trong mỗi CDƯ

Đối với pMAFIA-TID thời gian thực hiện việc đếm mật độ đối với một CDU phụ thuộc vào số lượng của DU có mật độ nhỏ hơn trong hai DU tạo nên nó Do vậy mục đích trong phần này sẽ thực hiện so sánh hiệu quả của pMAFIA-TID khi mà số bản ghi trung binh trôn mồi DU (NumlDtb) là nhỏ Chúng tôi tiến hành thực thi pMAFlA-TID và pMAPIA trên các tập dừ liệu khác nhau, mỗi tập đều gồm mười nghìn bản ghi, với mục đích thu được số NumlDtb trong mỗi trường hợp tăng dần Ket quả thu được đồ thị thời gian như sau;

Trang 32

Một số vấn đ ề chọn ¡ọc của Công nghệ thông tin và truvền thông Hưng Yên, 19-20 tháng 08 năm 2010

1131 1960 3128 4114 5096 6076 7057 8038 9019

Số bản ghi trung bình/DU

Hình 2 - Đồ thị phụ thuộc thòi gian và số NumlDtb

So sánh thời gian thực thi của pMAFIA-TID và pM A FIA theo chiều tăng dần số bản ghi dữ liệu

Như đã trình bày ở trên, do mỗi lần đếm mật độ của một CDU, pMAFIA phải thực hiện đọc toàn bộ dữ liệu một lần, cho nên khi tập dữ liệu càng lớn thì thời gian pMAFIA tiêu tốn cho việc này càng tăng trong khi đó số bản ghi trung bình trên mồi DU có thể không tăng nhiều Thực hiện pMAFIA và pMAFIA-TID trên các tập dữ liệu với số lượng bản ghi khác nhau thu được đồ thị thời gian như sau:

Trang 33

Một số vấn đề chọn lọc cúa Công nghệ thông tin và truvền thông, Hưng Yên, 19-20 thảng 08 năm 2010

khôntĩ gian không đầy đủ Đặc biệt đi sâu nghiên cứu thuật toán song song pMAFIA và đã

đề xuất thuật toán pMAFIA-TID là cải tiến một số điểm sau đây của thuật toán pMAFIA:

• Trong cấu trúc của DU ta lưu thêm danh sách chỉ sổ các giao dịch TID hỗ trợ

• Đếm số bản ghi thỏa mân C D U ij= DUiuDUj; Chi cần duyệt số lượng bản ghi bằng min { count(DUi), count(DUj)}

• Khi kiểm tra một bản ghi trong D U i có thỏa mãn D U j hay không, không phải kiểm tra trên tất cả các chiều của D U j mà ta chi cần kiểm tra trên một chiều của

D U j mà khác với tất cả các chiều trong D U j.

Các thử nghiệm đánh giá được tiến hành trên bộ dữ liệu về bệnh xơ vữa động mạch

đã chứng minh thuật toán pMAFIA-TID mà chúng tôi đề xuất có thời gian thực thi tốt hơn nhiều so với pMAFIA

Tài liệu tham khảo (R eferences )

1] Martin Ester, Hans-Peter Kriegel, Jörg Sander, and Xiaowei Xu, “A Density- Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise”, Proc of 2nd International Conference on Knowledge Discovery, 1996, page 226-231

[2] Rakesh Agrawal, Johanres Gehrke, Dimitrios Gunopulos, Prabhakar Raghasan,

“Automatic Subspace Clustering of High-dimensional Data for Data Mining

Application”, Proc ACMSIGMOD Conf, 1998.

3] Nagesh, Harsha Choudhary, Alok MAFIA: Efficient and Scalable “Subspace

Clustering for Very Large Data Sets”, Technical Report 9906-010, 1999

[4] Harsha s Nagesh, Sanjay Goil, Alok choudhary, “A Scalable Parallel Subspace Clustering Algorithm for Massive Data Sets”, International Conference on Parallel Processing (ICPP'OO), 2000

[5] Harsha Nagesh, Sanjay Goil, Alok Choudhary, “Parallel Algorithms for Clustering high-dimensional Large-scale Datasets, Data Mining for Scientific and Engineering Applications”, Kluwer Academic Publishers, 2001, Page(s):

Trang 34

M ột số vấn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng os năm 2010

[9] Kingsly Leung, Christopher Leckie: “Unsupervised A normaly Detection in Network Intrusion Detection using Cluster”, (2004)

[10] Markus M Breunig, Hans-Peter Kriegel, Raymond T Ng, and JAorg Sander

“LOF: Identifying density-based local outliers” In SIGMOD Conference, pages 93-104,2000

[11] Dasgupta, S “Performance guarantees for hierarchical clustering” In J Kivinen, & R H Sloan (Eds.), Proceedings o f the Fifteenth Annual Conference

on Computational Learning Theory,pages 351-363, 2002

[12] Yang, Y., Guan, X., & You, J “CLOPE: A fast and effective clustering algorithm for transactional data” In Proceedings o f the Eighth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 682-687, 2002

Trang 35

Một sổ vấn dề chọn Ịọc của Công nghệ thông tin vả iruvền thông, ỉĩư ng Yên, Ỉ9-20 thcìng o s nâm 2 0 Ì0

MƯỢN KÊNH ĐỘNG TRÊN • • c ơ s ở BỘ ĐIÈU KHIỂN •

Hà M ạnh Đào, Thái Quang Vinh, Hoàng Văn Tuấn

Việiĩ Công nghệ thông tin, Viện Khoa học và Công nghệ Việt Nam

iỊÌa Sau đó chúng tô i thực hiện mô p h ỏ n g và so sánh k ết quci v ớ i CCIC p h ư ơ n g

Trang 36

M ột số vấn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, Ỉ9-20 thảng 08 năm 2ỒỈỒ

tải lưu lượng là khó và tốn thời gian, thời gian các cuộc gọi tới và thời gian thực hiện cuộc gọi là không rõ ràng và bất định Đe giải quyết được vấn đề này cần có một cơ chế dự báo phù hợp hơn, hiệu quả hơn Gần đây, đa số các phương pháp giải quyết vấn đề cấp phát kênh cho mạng tế bào nói chung, phương pháp điều khiển mượn kênh nói riêng sử dụng tính toán thông minh đã được nhiều tác giả nghiên cứu đề xuất giải quyểt[l,2,3,4,5]

Trong bài báo này, chúng tôi sẽ đề xuất một phương pháp điều khiển mượn kênh thông minh trên cơ sở bộ điều khiển mạng nơ ron mờ với tập mờ được xây dựng trên cơ sở tập dừ liệu vào/ra và tối ưu hoá tập luật đó với phép đo subsethood mờ, nhằm nâng cao chỉ

số QoS của mạng di động tế bào Phương pháp này tránh được việc sử dụng giá trị ngưỡng

cố định và tối ưu việc mượn/cho mượn kênh có xem xét đến tải lưu lượng của mạng di động tế bào Và đặc biệt nó giảm được số luật mờ và ít phụ thuộc vào tri thức chuyên gia hơn các thuật toán logic mờ khác

Nội dung bài báo được chúng tôi phân bố như sau: Phần hai sẽ trình bày cấu trúc mạng di động tế bào và trình bày thiết kế thuật điều khiển mượn kênh mờ với mạng nơ ron

mờ sử dụng subsethood Phần ba trình bày mô phỏng thuật toán mới và đánh giá kết quả

mô phỏng đó Cuối cùng, trong phần bốn sẽ trình bày một số điểm kết luận của bài báo

2 T h u ật toán m ượn kênh sử dụng bộ đ iều k h iển m ạn g nơ ron m ờ vói phép đo su b seth ood

MS và BS Hai tế bào có thể sử dụng cùng kênh nếu khoảng cách địa lý giữa chúng tối thiểu là lớn hơn ngưỡng Dmin- Ngược lại phiên truyền thông sẽ gây nhiễu cho các kênh khác và được gọi là hiện tượng nhiễu kênh

Định nghĩa 2.1: Cho một tế bào Ci, một tập tế bào lân cận gây nhiễu cho Ci được định nghĩa bởi INi thì:

Trang 37

M ột số vẩn để chọn lọc cùa Câng nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 năm 2010

Như hình 1, với R là bán kính tế bào, Dmin là khoảng cách sử dụng lại kênh cực tiểu Nếu giả sử luật suy giảm là luật fourth-power [2,11], thì tỉ số tín hiệu trên nhiễu được cho bởi:

D ^ ,- V I R

Hình 1 - Phân vùng mạng di động tế bào

Với Dmin=3V3 R, [S/I]min~17db, đây là giá trị phù hợp được sử dụng trong thực tế

Sự phân hoạch mạng di động được thực hiện bởi 3 luật sau:

■ Phân vùng tập tất cả các tế bào thành K tập con phân biệt, Go, G i, Gk-1 , sao cho bất cứ 2 tể bào nào trong cùng tập con cũng cùng nằm về một phía đối với khoảng cách tối thiểu Dmin- Tương tự, tập tất cả các kênh cũng được phân hoạch thành K tập con phân biệt: Po, P i , P k - 1

■ Các kênh trong Pi (i=0,l, là các kênh cơ bản của các tế bào trong Gi và làkênh thứ cấp của các tế bào trong Gj(j^i)

■ Một kênh yêu cầu một kênh thứ cấp chi khi không còn các kênh cơ bản được phép nữa

Để thuận tiện, một tế bào Ci sẽ là một tế bào cơ sở của một kênh r khi và chỉ khi r

là một kênh cơ sở của Ci Như vậy tế bào trong Gi là các tế bào cơ sở của các kênh trong Pi

và là tế bào thứ cấp của các kênh trong Pj(j9^i)

Định nghĩa 2.2: Đối với một tế bào Cj không thuộc Gp và một kênh r thuộc Pp, các

tể bào cơ sở nhiễu của r liên quan đến Cị được định nghĩa là IPi(r), là tế bào cơ sờ của r và

là tế bào lân cận nhiễu của Cj, nghĩa là IPi(r)=Gp thì IN iH IPi(r) được gọi là tập con phân vùng nhiễu của Cị.

Để đạt được mục đích sử dụng lại kênh tốt hơn, mỗi tập con Gi nên chứa nhiều tế bào mà tới mức có thể và K nên nhỏ đến mức có thể Và sự phân vùng phải thoả mãn thuộc tính là với mọi Ci, Cj thuộc Gp: dist(Ci,Cj)>=Dmin-

Trang 38

Một số vẩn đề chọn lọc của Công nghệ thông tin và truyền thông, Hưng Yên, 19-20 tháng 08 nãm 2010

Dmin, nó là một sự phân vùng tối ưu trong quang cảnh mà mỗi kênh sẽ được sử dụng lại cực đại bởi các lân cận cùa nó

Sau đây chúng tôi sẽ thực hiện thuật toán mượn kênh động sử dụng bộ điều khiển

nơ ron mờ trên cơ sở phép đo subsethood với mạng di động tế bào có cấu trúc và đặc điểm được mô tả trên để nâng cao chất lượng dịch vụ của mạng và khắc phục các nhược điểm, hạn chế của các thuật mượn kênh khác

2,2 Thuật toán mượn kênh động trên cơ sở mạng nơ ron mờ sử dụng subsethood

Bộ điều khiển mừợn kênh động mờ (FNNBS) thể hiện như hinh 2 gồm 5 khối thành phần: Bộ điều khiển mờ, bộ xác lập trạng thái tải tế bào, khối cho phép cập nhật thông tin tải tế bào, khối điều khiển mượn/cho mượn kênh và mạng nơ ron mờ - subsethood

B ộ điều khiển n ơ ro n - m ờ -su b seth oo d

3: U pdate c e ll lo a d S ta t e 4: O ther cell lo a d information

Hình 2 - Bộ điều khiển mưựn kênh động trên cơ sử bộ điều khiển FNNBS

2.2.1 Điều khiển ra quyết định trọng thải tải tế bào

Trong mạng di động tế bào, phép đo xác định trạng thái tải tế bào là cực kỳ quan trọng để từ đó thực hiện ra quyết định việc mượn/ cho mượn kênh giữa các tế bào trong hệ thống Nhưng việc thu thập thông tin này cũng như các thông tin khác của mạng như tỉ số cuộc gọi tới, thời gian thực hiện cuộc gọi thật sự là vấn đề khó đối với mạng di động tếbào Chính vì vậy, thuật toán được đề xuất trong bài báo này sẽ thực hiện xấp xi các tiêuchuẩn trên để từ đó tạo ra quyết định về trạng thái tải tế bào Và để tăng sự chính xác trong tính toán trạng thái tải của tế bào, chúng tôi sử dụng số kênh cho phép và tải lưu lượng

Trang 39

MỘI số vấn đề chọn lọc của Cổng nghệ thông tin và iruvền thông, Hưng Yên,, 19-20 tháng 08 năm 2010

như các biến đầu vào của bộ điều khiển logic mờ để từ đó thực hiện lập luận xấp xỉ tạo ra quyết định tải tế bào Đồng thời thuật toán cũng xây dựng các hàm liên thuộc mờ của số kênh cho phép, của tải lưu lượng tế bào và giá trị trung tâm đối với các nhãn ngôn ngữ được đặc trưng bởi dữ liệu của các tế bào khác nhau Thành phần quan trọng để đưa ra quyết định trạng thái tải của tế bào là bộ điều khiển logic mờ Bộ điều khiển này gồm có 4 thành phần chính: Thành phần mờ hóa , cơ sở luật mờ, máy suy diễn và bộ giải mờ

Bộ mờ hóa

Bộ mờ hóa thực hiện chức năng mờ hóa mà chuyên giá trị đo thành giá trị ngôn ngữ Trong hệ điều khiển mờ, dữ liệu thu được thường là dạng rõ ràng Mức độ liên thuộc được biểu diễn bởi giá trị trong khoảng 0 và 1 Nói một cách khác, tập mờ biểu diễn thông qua giá của tập mờ Giả sử tập mờ A là tập rõ ràng của tất cả X thuộc u sao cho ux(x)>0;

định nghĩa mờ của Zadeh Áp dụng cơ sở lý thuyết mờ hóa này, chúng tôi thiết kế bộ điều khiển mượn kênh mờ như sau: Giả sử tín hiệu đầu vào là số kênh cho phép(AC) và tải lưu lượng(TL) Tín hiệu kênh cho phép AC giả sử thuộc khoảng [ao, a4 ] và được mờ hóa thành các tập mờ với giá trị biến ngôn ngữ như; VeryCol(VC), Col(C), Moderate(M), Hot(H), VeryHot(VH) (hình 3a), tín hiệu TL thuộc khoảng [bo, b2 ] và được mờ hóa thành các tập mờ Low(LL), Mederate(ML), Heigh(HL)(hình 3b) và sử dụng hàm liên thuộc là hàm Gaussian(để đảm bảo liên tục, khả vi) Quá trình mờ hóa thực hiện ánh xạ giá trị đo từ thế giới thực thành các tập mờ với các biến ngôn ngữ thể hiện như hình 3

Cơ sở luật mờ:

Cơ sở luật mờ được đặc tmng bời tập mờ IF-THEN thu được mà trong đó phần điều kiện và phần kết luận là các biến ngôn ngữ Tập các luật mờ này đơn giản là thể hiện quan hệ vào/ra của hệ thống Dạng chung của luật điều khiển mờ trong trường hợp MISO gồm 2 đầu vào một đầu ra có dạng sau:

R¡: IF X is A¡ AND Y is B i, THEN z is Ci i=I,2, ,n (3)

Trang 40

M ột sổ vẩn đề chọn lọc của Công nghệ thông tin và truvền thông, Hưng Yên, 19-20 thảng 08 năm 2010

Với X , y, z là các biến thuộc không gian u ,v , w và là các biến ngôn ngữ biểu diễn các biến điều khiển tương ứng Còn A i , Bi, Ci là các giá trị ngôn ngữ của các biến X , y, z tương ứng

Mảy suy diễn mờ:

Trong hệ thống suy diễn mờ, tri thức liên quan đến bài toán điều khiển đã cho được phát biểu dưới dạng thuật ngữ của một tập luật suy diễn mờ Có 2 cách cơ bản xác định luật suy diễn mờ Trong các luật trên, AND và ALSO thể hiện phép giao và hợp, đối với biểu diễn phép toán hợp thành tương ứng là max hoặc min ở đây chúng tôi sử dụng kết nối AND cho luật mờ để thu được kết luận Giả sử có luật mờ R ị với phép kéo theo mờ R c ,

C’ là kết luận biểu diễn phép giao của các két luận riêng rẽ của các biến trạng thái ngôn ngữ đầu vào:

Neu C’ được đưa ra bằng cách sử dụng phép toán min R c và phép tích luật R p

tương ứng thì có thể biểu diễn đơn giản như sau;

K ■ « c ' ( w ) = Ú ôí, A M„ ( w ) = (j[u^¡ ( « 0 ) A (Vq ) ] A u^, ( w )

Ngày đăng: 07/07/2014, 13:04

HÌNH ẢNH LIÊN QUAN

Hình 2 - Bộ điều khiển mưựn kênh động trên  cơ sử bộ  điều khiển FNNBS - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 2 Bộ điều khiển mưựn kênh động trên cơ sử bộ điều khiển FNNBS (Trang 38)
Hình  - Sơ đồ nguyên lý mạch điều khiển - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
nh - Sơ đồ nguyên lý mạch điều khiển (Trang 51)
Hình 5 - Sơ đồ nguyên lý mạch đo nhiệt độ dùng AD 595 - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 5 Sơ đồ nguyên lý mạch đo nhiệt độ dùng AD 595 (Trang 51)
Hình 7- Sơ  đồ điều  khiển FU ZZ Y - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 7 Sơ đồ điều khiển FU ZZ Y (Trang 54)
Bảng kết quả thử nghiệm phương pháp PID - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Bảng k ết quả thử nghiệm phương pháp PID (Trang 56)
Hình 10-   Lò nhiệt và bộ điều khiển và Board mạch điều khiển - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 10 Lò nhiệt và bộ điều khiển và Board mạch điều khiển (Trang 58)
Hình 1 -  Các frame ảnh từ video và lược đồ xám của nó - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 1 Các frame ảnh từ video và lược đồ xám của nó (Trang 73)
Hình  1 -  Cơ chế tạo thông tin định tuyến của DSR tại một node trong mạng - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
nh 1 - Cơ chế tạo thông tin định tuyến của DSR tại một node trong mạng (Trang 124)
Hình  2 -  Cơ chế tạo thông tin định  tuyến của AODV tại  một node trong  mạng - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
nh 2 - Cơ chế tạo thông tin định tuyến của AODV tại một node trong mạng (Trang 126)
Hình 4b - Thời gian trễ trung bình  trường họp số lượng nguồn phát cố định và thay đổi - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 4b Thời gian trễ trung bình trường họp số lượng nguồn phát cố định và thay đổi (Trang 128)
Hình  5 -  Tỉ lệ phát gói tin thành công trường hợp  10, 20, 30 nguồn - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
nh 5 - Tỉ lệ phát gói tin thành công trường hợp 10, 20, 30 nguồn (Trang 130)
Bảng 7 -  Sự hội tụ của phưong pháp lặp vói bài toán  1 - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Bảng 7 Sự hội tụ của phưong pháp lặp vói bài toán 1 (Trang 138)
Hình 3.2- Biên tập đặc điểm chỉ tiết và ký sinh trắc vào bản ghi trưởc khỉ lưu vào CSDL - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Hình 3.2 Biên tập đặc điểm chỉ tiết và ký sinh trắc vào bản ghi trưởc khỉ lưu vào CSDL (Trang 164)
Bảng đầu  m ụ c - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
ng đầu m ụ c (Trang 200)
Bảng 3.1: Lợi ích các tập mục ứng viên - mộ số vấn đề chọn lọc của công nghệ thông tin và truyền thông
Bảng 3.1 Lợi ích các tập mục ứng viên (Trang 202)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w