Chương 3 PHÂN LỚP DỮ LIỆU TẬP TRUNG VÀ PHÂN TÁN
D. Caragea [10] trình bày các thuật toán phân lớp dựa trên thống kê như NB, cây quyết định, SVM, K lân cận gần nhất được chuyển đổi cho môi trường phân
Khi chuyển từ môi trường tập trung sang môi trường phân tán, mô hình TANB cho phân lớp được xây dựng tại trạm trung tâm. Thông tin thống kê sử dụng trong quá trình xây dựng cây được lấy từ các nguồn dữ liệu phân tán. Việc truy vấn các thông tin thống kê được thực hiện tại các trạm phân tán. Thông tin được gửi trả về tại các trạm trung tâm và được tính toán để đưa ra kết quả cuối cùng cho việc đánh giá các mẫu dữ liệu. Thuật toán được xây dựng cho trường hợp phân mảnh ngang và phân mảnh dọc.
3.2.2.1 Phân tán phân mảnh ngang
Khi dữ liệu được phân mảnh ngang, mỗi nguồn dữ liệu chứa một tập con các bản ghi. Như vậy, mỗi nguồn dữ liệu đều chứa toàn bộ tập thuộc tính của dữ liệu và
1 2 K
D = D D ... D (K là số trạm có chứa tập dữ liệu con của dữ liệu của nguồn D) và D = D + D +...+ D 1 2 K . Để có thể xác định được tần số của các bản ghi trên toàn bộ nguồn dữ liệu, ta cần tính
k k
k k
D j D j
t = count (x), t = count (c ),
k
k
ij D i l j
t = count (a |a ,c ) (trong đó a l là thuộc tính có ảnh hưởng đối với thuộc tính a i được xác định dựa trên mô hình TANB) tại mỗi vị trí lưu trữ dữ liệu k và gửi chúng đến một vị trí trung tâm. Thông tin thống kê trên toàn bộ dữ liệu sẽ được tính tại vị trí trung tâm theo công thức sau: t = k=1 K t ,t = k j K k=1 t ,t = k j ij K k=1 t k ij .
Phân lớp TANB cho dữ liệu phân tán phân mảnh ngang Giai đoạn học
For (mỗi nguồn dữ liệu D ){ k Tính giá trị
k
k
t = count (x) và chuyển đến vị trí trung tâm D
For (mỗi giá trị lớp c ){ j Tính giá trị
k
k
j D j
t = count (c ) và chuyển đến vị trí trung tâm For (mỗi giá trị thuộc tính a với giá trị thuộc tính ảnh i hưởng a ){ l
Tính giá trị
k
k
ij D i l j
t = count (a |a ,c ) và chuyển đến vị trí trung tâm
} } }
Tại ví trí trung tâm
K k K k
j ij
k=1 k=1
j K k i j K k
k=1 k=1 j
t t
P(c )= , P(a |c )=
t t
Giai đoạn phân lớp
Với một trường hợp mới x = a ,a ,...,a sẽ được phân loại như 1 2 n sau:
j
n
TANB j i l j
c C
i=1
C (x)= arg maxP(c ) P(a |a ,c )
(với a là thuộc tính hỗ trợ thông tin cho thuộc tính l a ) i Hình 3.8. Phân lớp TANB cho dữ liệu phân tán phân mảnh ngang
3.2.2.2 Phân tán phân mảnh dọc
Trong môi trường phân tán, khi dữ liệu được phân mảnh dọc, mỗi trạm sẽ chứa một tập con các bộ dữ liệu. Khi đó toàn bộ dữ liệu tương ứng với một thuộc tính sẽ được lưu trữ tại cùng một vị trí. Giả sử tại vị trí k, tập các thuộc tính được lưu trữ là A k thì A = U K k=1 A k và A = K k=1 A k . Mô hình TANB được xây dựng tại trạm trung tâm. Dựa trên mô hình TANB, các thông tin thống kê cho các thuộc tính được tính dựa trên nguồn dữ liệu và mối quan hệ giữa các thuộc tính với nhau. Ta có thể tính các giá trị tần số
k D k
t = t = count (x) và t = t = count (c ) j k j D k j tại bất cứ vị trí nào trong K trạm, sau đó tính
k
k
ij ij D i l j
t = t = count (a |a ,c ) .
Trong môi trường phân tán, có thể xảy ra trường hợp , a a i l cùng được lưu trữ trên một trạm hoặc trên hai trạm khác nhau. Trường hợp hai thuộc tính được lưu trữ trên cùng một trạm thì việc tính
D k i l j
count (a |a ,c ) là tương đối đơn giản. Đối với trường hơp hai thuộc tính được lưu trữ trên hai trạm khác nhau, ta sẽ dựa vào chỉ mục của các mẫu dữ liệu để xác định. Tại trạm có chứa thuộc tính a i , ta xác định tập chỉ mục I i của các mẫu có chứa giá trị thuộc tính a i và giá trị lớp c j , sau đó chuyển về trạm trung tâm. Tại trạm có chứa thuộc tính a l , xác định tập chỉ mục I l của các mẫu có chứa giá trị thuộc tính a l và giá trị lớp c j , sau đó chuyển về trạm trung tâm. Tại trạm trung tâm,
k
k
ij ij D i l j i l
t = t = count (a |a ,c )= I I .
Phần mã giả của giải thuật TANB cho dữ liệu phân tán phân mảnh dọc được mô tả như sau.
Phân lớp phân tán cho dữ liệu phân mảnh dọc Giai đoạn học
Cho k là một trong số K trạm Tính
X k
t = count (x) và chuyển t đến vị trí trung tâm.
For (mỗi lớp c ){ j Tính
j D k j
t = count (c )và chuyển t đến vị trí trung tâm j }
For (mỗi nguồn dữ liệu D có chứa thuộc tính i a ){ i
For (mỗi lớp c và mỗi thuộc tính j a tại nguồn dữ liệu i D ){ i Xác định tập chỉ mục I của các mẫu dữ liệu có chứa i a và i c j Chuyển tập chỉ mục I đến vị trí trung tâm. i
} }
For (mỗi nguồn dữ liệu D có chứa thuộc tính l a ){ l
For (mỗi lớp c và mỗi thuộc tính j a tại nguồn dữ liệu l D ){ l Xác định tập chỉ mục I của các mẫu dữ liệu có chứa l a và l c j Chuyển tập chỉ mục I đến vị trí trung tâm. l
} }
Tại vị trí trung tâm
j ij
j ij i l i l j
j
t t
P(c )= , t = I I , P(a |a ,c )=
t t
Giai đoạn phân lớp
Với một trường hợp mới x = a ,a ,...,a sẽ được phân loại như 1 2 n sau:
j
n
TANB j i l j
c C i=1
C (x)= arg maxP(c ) P(a |a ,c )
(với a là thuộc tính hỗ trợ thông tin cho thuộc tính l a ) i Hình 3.9. Phân lớp TANB cho dữ liệu phân tán phân mảnh dọc
3.3 Kết luận
Trong chương này, tác giả đã trình bày những vấn đề sau:
Giải thuật NB cho nguồn dữ liệu tập trung và nguồn dữ liệu phân tán bao gồm phân tán phân mảnh ngang và phân tán phân mảnh dọc. Cách xử lí các thông tin thống kê trong giải thuật NB.
Phương pháp xử lý thông tin thống kê được lấy từ các nguồn dữ liệu trong trường hợp dữ liệu phân tán. Cách xây dựng mô hình TANB và giải thuật TANB cho nguồn dữ liệu tập trung và các nguồn dữ liệu phân tán phân mảnh dọc và phân mảnh ngang.
NB và TANB là các giải thuật phân lớp dữ liệu dựa trên mô hình thống kê được sử dụng nhiều trong các ứng dụng hỗ trợ quyết định. Trong chương tiếp theo luận văn sẽ trình bày kết quả cài đặt thử nghiệm của các giải thuật phân lớp đối với một số nguồn dữ liệu.
Chương 4