Bảng dữ liệu ánh xạ dùng cho thuần nhất thuộc tính

Một phần của tài liệu TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ NGỮ NGHĨA TRONG MÔI TRƯỜNG PHÂN TÁN (Trang 83)

Client

Thông tin thống kê

Máy 1 Bản ghi đã được phân lớp Bản ghi chưa được phân lớp Phân lớp dữ liệu Nguồn dữ liệu huấn luyện Thu nhận TT thống kê

Dữ liệu kiểm thử Kết quả

Nguồn dữ liệu huấn luyện

Thu nhận TT thống kê

Thông tin thống kê

Các tập ánh xạ   1, 2, 3được lưu trữ dưới dạng các bảng dữ liệu quan hệ. 1

là tập ánh xạ được xây dựng cho quan hệ của các thuộc tính của nguồn dữ liệu thứ nhất với tập thuộc tính chung. 2 là quan hệ của các thuộc tính nguồn dữ liệu thứ hai với tập thuộc tính chung. 3 là quan hệ của các thuộc tính nguồn dữ liệu kiểm thử với tập thuộc tính chung. Dựa trên   1, 2, 3, thành phần thu thập thông tin thống kê có thể truy vấn được các nguồn dữ liệu không thuần nhất cũng đơn giản như đối với nguồn dữ liệu thuần nhất. Ví dụ như khi hệ thống muốn tìm tần suất xuất hiện của giá trị a của thuộc tính Race của nguồn dữ liệu huấn luyện 2, hệ thống sẽ truy cập vào bảng dữ liệu ánh xạ 2và thấy rằng thay vì tìm tần suất xuất hiện của giá trị a của thuộc tính Race, hệ thống cần tìm tần suất xuất hiện của giá trị a của thuộc tính Adult_race.

4.4.2 Phân lớp dựa trên Naive Bayes

Để có thể sử dụng RMI trong ứng dụng phân tán, cần phải khai báo như sau:

import java.rmi.*;

Đối với lớp server, cần khai báo việc sẽ sử dụng một số phương thức cho việc đăng kí đối tượng với rmiregistry.

import java.rmi.server.*;

Cách tiến hành thử nghiệm

Tại máy 1, máy 2.

SendData.class:

Định nghĩa lớp SendData và phương thức GetValue để truyền dữ liệu giữa server và client.

public interface SendData extends Remote{

public float GetValue(int id, String value, int row, int totalCols) throws RemoteException;

public void Init() throws RemoteException; }

GetStatistic.class

Thu thập các thông tin thống kê tại nguồn dữ liệu huấn luyện.

SendDataImpl.class:

Cài đặt các phương thức được định nghĩa trong SendData.class.

 public void Init();// gọi phương thức tính thống kê

 public float GetValue(int id, String value, int row, int totalCols); trả về tần số xuất hiện của giá trị value

SendDataImpl_Stub.class, SendDataImpl_Skel.class:

Lớp giao tiếp được rmic sinh ra dùng để tạo cầu nối giữa các đối tượng từ xa và đối tượng cục bộ.

SendDataServer.class:

Tạo ra đối tượng và đăng kí đối tượng. (adsbygoogle = window.adsbygoogle || []).push({});

// Tao doi tuong

SendDataImpl sd = new SendDataImpl();

// Dang ki su hien dien cua doi tuong voi may ao Java UnicastRemoteObject.exportObject(sd);

// Dang ki voi RMI

Naming.rebind("rmi://localhost/server1",sd);

Tại máy client.

SendData.class: (được gửi đến từ máy server)

Định nghĩa lớp SendData và phương thức dùng để truyền dữ liệu.

NBClient.class: Gồm 1 phương thức Classify.

1. Thu thập tham chiếu về các đối tượng thông qua tên đã được đăng kí với rmiregistry.

SendData dataSrv1 = (SendData)Naming.lookup("rmi://

localhost/server1");

SendData dataSrv2 = (SendData)Naming.lookup("rmi://

localhost/server2");

2. Kích hoạt thủ tục tính thông tin thống kê ở các server

dataSrv1.Init(); dataSrv2.Init();

3. Kết nối cơ sở dữ liệu kiểm thử.

4. Với mỗi bản ghi thuộc dữ liệu kiểm thử.

 Tính tần số suất hiện của từng giá trị thuộc tính và giá trị của lớp.

 Tính giá trị xác suất của bản ghi với từng lớp trong tập các lớp có thể có của nguồn dữ liệu. Xác định lớp có xác suất lớn nhất và lưu vào một mảng tạm thời (ResultList).

5. Cập nhập thuộc tính class trong cơ sở dữ liệu kiểm thử bằng các giá trị trong mạng tạm thời theo thứ tự tương ứng.

Evaluate.class: Đánh giá kết quả phân lớp.

Kết quả

Sau khi thực hiện phân lớp phân tán theo phương pháp dựa Naïve Bayes cho 3 nguồn dữ liệu ADULT, CARS, NURSERY, kết quả đạt được như sau (thông tin chi tiết được mô tả tại bảng 4.6):

 Nguồn dữ liệu ADULT với 2 nguồn dữ liệu huấn luyện (nguồn 1 chứa 6.500 bản ghi, nguồn 2 chứa 5.000 bản ghi) thực hiện phân lớp trên 1.532 bản ghi, phân lớp đúng được 1.231 bản ghi, phân lớp không đúng 301 bản ghi. Đạt độ chính xác 80,39%.

 Nguồn dữ liệu NURSERY với 2 nguồn dữ liệu huấn luyện (nguồn 1 chứa 4.320 bản ghi, nguồn 2 chứa 4.320 bản ghi) thực hiện phân lớp trên 4.320 bản ghi, phân lớp đúng được 3.038 bản ghi, phân lớp không đúng 1.282 bản ghi. Đạt độ chính xác 70,32%.

 Nguồn dữ liệu CARS với 2 nguồn dữ liệu huấn luyện (nguồn 1 chứa 576 bản ghi, nguồn 2 chứa 576 bản ghi) thực hiện phân lớp trên 576 bản ghi, phân lớp đúng được 380 bản ghi, phân lớp không đúng 196 bản ghi. Đạt độ chính xác 65,90%.

Tên nguồn

dữ liệu Nguồn 1 Nguồn 2 kiểm thử Dữ liệu Độ chính xác (%) Đúng Không đúng ADULT 6.500 5.000 1.532 80,29 1.231 301

CARS 576 576 576 65,90 380 196 (adsbygoogle = window.adsbygoogle || []).push({});

NURSERY 4.320 4.320 4.320 70,32 3.038 1.282 Bảng 4.8. Kết quả phân lớp theo phương pháp Naive Bayes

4.4.3 Phân lớp dựa trên TANB

Về nguyên tắc, mô hình phân lớp phân tán TANB dựa trên mô hình phân lớp phân tán Naive Bayes (Hình 4.10). Dữ liệu huấn luyện được lưu trữ phân tán tại hai máy khác nhau. Dữ liệu kiểm thử được lưu trữ tập trung tại một máy. Tác giả dùng các đối tượng từ xa trong RMI để truyền thông tin từ các nguồn dữ liệu huấn luyện đến phân lớp.

Kết quả thực hiện phân lớp phân tán theo phương pháp TANB cho 3 nguồn dữ liệu ADULT, CARS, NURSERY.

Tên nguồn

dữ liệu Nguồn 1 Nguồn 2

Dữ liệu kiểm thử Độ chính xác (%) Đúng Không đúng ADULT 6.500 5.000 1.532 78,39 1.200 332 CARS 576 576 576 69,21 399 177 NURSERY 4.320 4.320 4.320 61,00 2.635 1.685 Bảng 4.9. Kết quả phân lớp phân tán theo phương pháp TANB

4.5 Đánh giá

Luận văn tập trung vào đánh giá 2 khía cạnh: (i) So sánh độ chính xác thuật toán trong môi trường tập trung và phân tán; (ii) Ảnh hưởng của kích thước dữ liệu với độ chính xác.

Độ chính xác thuật toán trong môi trường tập trung & phân tán

Kết quả thực nghiệm xây dựng phân lớp cho các nguồn dữ liệu.

Bảng 4.10. Kết quả phân lớp dữ liệu sử dụng thuật toán Naive Bayes.

Bảng 4.11. Kết quả phân lớp dữ liệu sử dụng thuật toán TANB.

Thông qua 2 bảng dữ liệu, ta thấy rằng, đối với giải thuật NB, độ chính xác của giải thuật thực hiện trong môi trường phân tán và trong môi trường tập trung là tương đương nhau. Đối với giải thuật TANB, có sự khác nhau về độ chính xác trong môi trường tập trung và môi trường phân tán, điều này được giải thích như sau.

Nguồn dữ liệu Kiểu DLHL Kích thước DLHL Kích thước DLKT Độ chính xác (%) ADULT Tập trung 11.500 1.532 80,29 Phân tán 11.500 1.532 80,29 CARS Tập trung 1.152 576 65,90 Phân tán 1.152 576 65,90 NURSERY Tập trung 8.640 4.320 70,32 Phân tán 8.640 4.320 70,32

DLHL: Dữ liệu huấn luyện – DLKT : Dữ liệu kiểm thử

Nguồn dữ

liệu Kiểu DLHL Kích thước DLHL

Kích thước DLKT Độ chính xác (%) ADULT Tập trung 11.500 1.532 78,36 Phân tán 6.500 5.000 1.532 78,39 CARS Tập trung 1.152 576 65,56 Phân tán 576 576 576 69,21 NURSERY Tập trung 8.640 4.320 71,80 Phân tán 4.320 4.320 4.320 61,00

Dữ liệu trong nguồn CARS và NURSERY là dữ liệu được sắp thứ tự. Điều này dẫn đến sự phân bố không đều giữa các giá trị thuộc tính trong trường hợp phân tán. Ví dụ như, đối nguồn dữ liệu NURSERY, khi chia nguồn dữ liệu chính thành huấn luyện và kiểm thử (2/3 : 1/3), trong 2/3 nguồn dữ liệu (tương đương với 8.640 bản ghi), thuộc tính parents không có giá trị “usual”, mà giá trị này lại có ở trong dữ liệu kiểm thử (với 4.320 bản ghi có giá trị này). Điều đó dẫn đến việc khi tính xác suất cho giá trị “usual”, tác giả phải gán một giá trị mặc định để tránh giá trị 0.

Độ chính xác của phân lớp TANB đối với nguồn dữ liệu NURSERY là tăng so với độ chính xác của phân lớp Naive Bayes bởi đã khai thác được sự phụ thuộc lẫn nhau của các thuộc tính nguồn dữ liệu. Tuy nhiên, trong môi trường phân tán, khi chia nguồn dữ liệu huấn luyện thành 2 phần (4320:4320) thì độ chính xác giảm đi. Điều này xảy ra là do kết quả truy vấn đạt giá trị 0 là rất nhiều, sau đó các giá trị 0 được gán bằng các giá trị mặc định. Điều này làm giảm đáng kể tính khách quan trong việc phân lớp dữ liệu và giảm độ chính xác của phân lớp.

Sự ảnh hưởng của kích thước dữ liệu đối với độ chính xác

Để đánh giá được sự ảnh hưởng của kích thước nguồn dữ liệu đối với độ chính xác của các thuật toán, tác giả đã thực hiện phân lớp với nguồn dữ liệu ADULT với các kích thước khác nhau và thu được một số kết quả như sau (biểu đồ 1, 2).

Qua hai biểu đồ này ta thấy rằng, độ chính xác của phân lớp không phụ thuộc vào tính chất của nguồn dữ liệu huấn luyện (phân tán hay tập trung) mà phụ thuộc vào kích thước của nguồn dữ liệu. Khi kích thước nguồn dữ liệu huấn luyện tăng, độ chính xác của phân lớp cũng tăng.

Biểu đồ biểu diễn độ chính xác cho phân lớp Naive Bayes 80.22 80.25 80.29 80.09 80.09 80.25 80.29 80.22 80.09 80.02 0 10 20 30 40 50 60 70 80 90 100 4000 5500 7000 8500 11500

Kích thước nguồn dữ liệu huấn luyện

Độ c nh x á c NB Phân tán NB Tập trung

Biểu đồ 1: Độ chính xác của phân lớp NB trong môi trường tập trung và phân tán

Biểu đồ biểu diễn độ chính xác cho phân lớp Tree Augmented Naive Bayes 78.26 78.39 78.39 77.61 77.21 78.32 78.36 78.26 77.67 77.28 0 10 20 30 40 50 60 70 80 90 100 4000 5500 7000 8500 11500

Kích thước nguồn dữ liệu huấn luyện (adsbygoogle = window.adsbygoogle || []).push({});

Độ c nh x á c TANB Phân tán TANB Tập trung

4.6 Kết luận

Trong chương này, tác giả đã trình bày những vấn đề liên quan đến cài đặt thử nghiệm phân lớp cho các nguồn dữ liệu.

 Mục đích của việc thực hiện cài đặt thử nghiệm các phân lớp dữ liệu trong môi trường tập trung và phân tán.

 Mô tả các nguồn dữ liệu được sử dụng trong quá trình cài đặt thử nghiệm.

 Trình bày cách xây dựng và các modul được sử dụng trong các thuật toán, kết quả các phân lớp đối với từng nguồn dữ liệu.

 Đánh giá kết quả cài đặt thử nghiệm thông qua hai tiêu chí, độ chính xác của phân lớp trong môi trường phân tán, kiểm thử và sự ảnh hưởng của kích thước nguồn dữ liệu đối với độ chính xác của phân lớp.

KẾT LUẬN

Nhằm mục đích tích hợp thông tin không thuần nhất về ngữ nghĩa trong môi trường phân tán, luận văn đã tập trung trình bày một số nội dung sau đây:

 Khảo sát một số cách tiếp cận liên quan đến tích hợp thông tin không thuần nhất trong môi trường phân tán. Luận văn đã xem xét phương pháp tích hợp dựa vào ontology cho các nguồn thông tin phân tán và không thuần nhất về ngữ nghĩa. Sử dụng ontology là cách tiếp cận hiệu quả trong việc thuần nhất ngữ nghĩa giữa các nguồn dữ liệu. Do hoạt động ở mức ngữ nghĩa, các thao tác trên ontology độc lập với hoạt động của các nguồn dữ liệu. Phương pháp có thể được áp dụng với nhiều kiểu kiến trúc dữ liệu khác nhau.

 Luận văn đã áp dụng cách tiếp cận dựa trên ontology để thu thập thông tin thống kê từ các nguồn phân tán. Trước hết, tác giả tập trung xem xét hai kỹ thuật phân lớp dữ liệu tập trung theo mô hình xác suất là thuật toán phân lớp dữ liệu Naïve Bayes và Tree Augmented Naïve Bayes. Sau đó, đề xuất mở rộng các kỹ thuật phân lớp này cho các nguồn phân tán theo các bước: (i) thu thập thông tin thống kê từ các nguồn dữ liệu mở rộng với ontology; (ii) kết hợp các thông tin thống kê thu được tại vị trí trung tâm; (iii) xây dựng mô hình phân lớp dữ liệu dựa trên các thông tin thu thập được.

 Luận văn đã cài đặt và thử nghiệm hai thuật toán Naive Bayes và Tree Augmented Naive Bayes trên các nguồn dữ liệu ADULT, CARS và NURSERY. Tác giả đã tiến hành thử nghiệm để đo độ chính xác của thuật toán với các dữ liệu này trong hai môi trường tập trung và phân tán. Trong đó, độ chính xác là tỉ lệ các bản ghi được phân lớp đúng với lớp được xác định ban đầu trong tập dữ liệu kiểm thử. Kết quả cài đặt thử nghiệm cho thấy đối với hai thuật toán phân lớp thì môi trường tập trung hay phân tán không ảnh hưởng nhiều đến độ chính xác của thuật toán. Yếu tố ảnh hưởng mạnh đến độ chính xác của thuật toán là kích thước của nguồn dữ liệu huấn luyện.

Những hạn chế và một số hướng phát triển trong tương lai

Quá trình tích hợp thông tin không thuần nhất về ngữ nghĩa trong môi trường phân tán trình bày trong luận văn có một số hạn chế và mở ra một số hướng nghiên cứu trong thời gian tới:

 Trong luận văn, các nguồn dữ liệu được phân tán theo phân mảnh ngang, các truy vấn dữ liệu được gửi đến các nguồn dữ liệu là tương tự nhau. Điều này sẽ không phù hợp đối với dạng phân tán khác của dữ liệu như phân mảnh dọc, khi mỗi nguồn dữ liệu chỉ có thể cung cấp thông tin thống kê cho một hoặc vài thuộc tính. Việc nghiên cứu các chiến lược phân rã truy vấn là cần thiết nhằm hạn chế những truy vấn thừa qua đó tối ưu hóa được thời gian truy vấn dữ liệu.

 Việc đánh giá các giải thuật mới chỉ dựa trên kích thước nguồn dữ liệu huấn luyện. Trong thời gian tới, tác giả dự định sẽ đánh giá các giải thuật phân lớp theo nhiều yếu tố khác như cấu trúc nguồn dữ liệu, khả năng xử lý truy vấn, độ phức tạp của ontology và tỉ lệ giá trị không xác định trong nguồn dữ liệu.

TÀI LIỆU THAM KHẢO

[1] C.F. Aliferis, D. Hardin, P. P. Massion (2002) “Machine Learning Models For Lung Cancer Classification Using Array Comparative Genomic Hybridization”. In: Proceedings of the 2002 American Medical Informatics Association (AMIA) Annual Symposium, 2002, pp. 7-11

[2] An Introduction to Data Mining.

http://www.thearling.com/dmintro/dmintro.htm

[3] A. Atramentov (2003) “Multi-relational decision tree algorithm - implementation and experiments”. MS. Thesis. Iowa State University, Ames, Iowa.

[4] F. Baader, I. Horrocks, U. Sattler (2001) “Description Logics as Ontology Languages for the Semantic Web”. In D. Hutter and W. Stephan, editors, Festschrift in honor of Jorg Siekmann, Lecture Notes in Artificial Intelligence. Springer, 2003.

[5] A. Berson, S. Smith, K. Thearling “An Overview of Data Mining Techniques”: http://www.thearling.com/index.htm.

[6] Piero Bonatti, Yu Deng, V.S. Subrahmanian (2003) “An Ontology-Extended Relational Algebra”, Proceedings of the IEEE Conference on Information Integration and Reuse, IEEE Press.

[7] D. Caragea, J. Pathak, V.G. Honavar (2004) “Learning Classifiers from Semantically Heterogeneous Data”. Conference on Cooperative Information Systems.

[8] D. Caragea, J. Pathak, J. Bao, A. Silvescu, C. Andorf, D. Dobbs, V. Honavar (2004) “Information Integration and Knowledge Acquisition from Semantically Heterogeneous Biological Data Sources”. In: Proceedings of the 2nd International Workshop on Data Integration in Life Sciences (DILS'05), San Diego, CA.

[9] D. Caragea, J. Reinoso, A. Silvescu, V. Honavar (2003) “Statistics Gathering for Learning from Distributed, Heterogeneous and Autonomous Data Sources”. In International Workshop on Information Integration on the Web, IJCAI 2003.

[10] D. Caragea (2004) “Learning classifiers from distributed, semantically heterogeneous, autonomous data sources”. Ph.D Thesis. Iowa State University.

[11] G. Casella and R.L. Berger. Statistical Inference. Duxbury Press, Belmont, CA, 2001.

[12] J. Cerquides, R. L´opez de M`antaras (2003) “Tractable Bayesian Learning of Tree Augmented Naive Bayes Models”. In : Proceedings of the Twentieth International Conference on Machine Learning (ICML 2000), pages 75-82, 2003 (adsbygoogle = window.adsbygoogle || []).push({});

[13] P. K. Chan, Wei Fan, A. L. Prodromidis, S. J. Stolfo (1999) “Distributed Data Mining in Credit Card Fraud Detection”. IEEE Intelligent Systems, Bd. 14, Nr. 6, S. 67--74, 1999.

[14] Ningjiang “Jay” Cheng (2001) “An Integration Framework for Airport Automation Systems”. The MITRE Corporation, McLean, Virginia.

[15] J. Davies, D. Fensel, F. V. Harmelen (2002) ―TOWARDS THE SEMANTIC WEB‖. ISBN:0470848677. John Wiley & Sons, Inc. New York, NY, USA. [16] “Digital Human Ontology” (2002) A EC/NSF Workshop of Scientists.

National Institutes of Health Bethesda, Marryland, 20894 USA.

[17] Y. Ding, S. Foo (2000) “Ontology Research and Development Part 1 – A Review of Ontology Generation”. Journal of Information Science 28(2), pages 123-136.

[18] Oliver M. Duschka (1997) “Query planning and optimization in information integration“, Ph.D Thesis. Stanford University, December 1997.

[19] Charles Elkan (1997) “Naïve Bayesian Learning”. Department of Computer Science - Harvard University.

[20] L. De Ferrari (2005) “Mining housekeeping genes with a Naive Bayes classifier” Master of Science Thesis, School of Informatics University of Edinburgh.

[21] A. Firat, S. Madnick, B. Grosof (2002) “Financial Information Integration In the Presence of Equational Ontological Conflicts”, MIT Sloan School of Management Cambridge, MA USA.(Proceedings of the Workshop on

Một phần của tài liệu TÍCH HỢP THÔNG TIN KHÔNG THUẦN NHẤT VỀ NGỮ NGHĨA TRONG MÔI TRƯỜNG PHÂN TÁN (Trang 83)