Phân lớp TANB cho dữ liệu phân tán phân mảnh dọc

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 62)

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

CÀI ĐẶT THỬ NGHIỆM 4.1 Mục đích cài đặt thử nghiệm

Trong các chương trước, luận văn đã trình về phân lớp và các thuật toán phân lớp dữ liệu. Trong chương này tác giả sẽ trình bày về quá trình cài đặt thử nghiệm và kết quả phân lớp dữ liệu trong môi trường phân tán và không thuần nhất. Việc cài đặt thử nghiệm các phân lớp được thực hiện đối với hai thuật toán NB và TANB trong môi trường tập trung và phân tán. Trong môi trường phân tán, việc phân lớp được thực hiện với các nguồn dữ liệu huấn luyện ở dạng phân tán và nguồn dữ liệu kiểm thử ở dạng tập trung (bài toán 1)

Việc thực nghiệm phân lớp dữ liệu trong môi trường phân tán và không thuần nhất nhằm chỉ ra khả năng tích hợp dữ liệu không thuần nhất và được lưu trữ phân tán cho cả những mục đích nghiên cứu và các mục đích thương mại. Ngoài ra, kết quả của thực nghiệm có thể sẽ là một kiểm chứng cho sự tương đương về độ chính xác của các phân lớp dữ liệu trong môi trường tập trung và môi trường phân tán.

4.2 Nguồn dữ liệu

Để có được những đánh giá khách quan về độ chính xác và hiệu quả của những phân lớp dữ liệu phân tán và không thuần nhất ngữ nghĩa, tác giả đã sử dụng một số dữ liệu chuẩn được cung cấp bởi UCI Machine Learning Repository (http://www.ics.uci.edu/~mlearn/MLRepository.html). Nguồn dữ liệu bao gồm:

 ADULT: ftp://ftp.ics.uci.edu/pub/machine-learning-databases/adult

 CARS: ftp://ftp.ics.uci.edu/pub/machine-learning-databases/car

Các nguồn dữ liệu được chuyển đổi từ dạng .data sang định dạng XML bằng phần mềm Softsilver Transformer 2.5 (download tại http://www.softsilver.com). Ngoài ra, để thuận tiện cho việc truy vấn dữ liệu nhằm thu thập thông tin thống kê, tác giả sử dụng hệ quản trị cơ sở dữ liệu nguồn mở MySQL (download miễn phí tại www.mysql.com) để lưu trữ các nguồn dữ liệu. Việc chuyển đổi dữ liệu ở dạng XML sang cơ sở dữ liệu MySQL được thực hiện bằng một modul viết bằng Java. Sau một số thao tác tiền xử lí, nguồn dữ liệu được lưu trữ dưới dạng các bảng dữ liệu của hệ quản trị cơ sở dữ liệu MySQL.

4.2.1 Chuyển đổi các nguồn dữ liệu

Các nguồn dữ liệu được tải về từ UCI Machine Learning Repository dưới dạng adult.data, cars.data, nursery.data. Sau đó, tác giả sử dụng phần mềm Softsilver Transformer 2.5 để chuyển đổi các dữ liệu này thành dữ liệu dưới dạng XML, đó là adult.xml, cars.xml, nursery.xml. Để thuận tiện cho việc truy vấn các thông tin thống kê từ các nguồn dữ liệu, tác giả sử dụng hệ quản trị cơ sở dữ liệu MySQL để lưu trữ các bảng dữ liệu. Modul chuyển đổi dữ liệu từ dạng XML sang thành bảng dữ liệu quan hệ được viết bằng Java, sử dụng Java SAX (Simple API for XML) để phân tích dữ liệu (ReadData.class). Để có thể sử dụng Java SAX, ta cần khai báo

import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder;

import org.xml.sax.SAXException;

import org.xml.sax.SAXParseException;

Trong ReadData.class có một phương thức ReadXMLFile được xây dựng để đọc dữ liệu từ file .xml dựa trên các tab, sau đó ghi vào bảng cơ sở dữ liệu quan hệ. Mỗi phần tử sau khi được đọc từ file .xml sẽ được lưu trữ dưới dạng một bản ghi trong cơ sở dữ liệu quan hệ. Ví dụ về một thành phần trong file adult.xml:

<person> <age>39</age> <workclass>State-gov</workclass> <fnlwgt>77516</fnlwgt> <education>Bachelors</education> <education_num>13</education_num>

<marital_status>Never-married</marital_status> <occupation>Adm-clerical</occupation> <relationship>Not-in-family</relationship> <race>White</race> <sex>Male</sex> <capital_gain>2174</capital_gain> <capital_loss>0</capital_loss> <hours_per_week>40</hours_per_week> <native_country>United-States</native_country> <class>&lt;=50K</class> </person>

4.2.2 Biểu diễn nguồn dữ liệu

ADULT

Là nguồn dữ liệu điều tra dân số về thu nhập của người dân. Nguồn dữ liệu bao gồm 13.032 bản ghi, mỗi bản ghi có 14 thuộc tính trong đó có 6 thuộc tính liên tục (age, fnlwgt, education num, capital gain, capital loss, hours per week) và 8 thuộc tính rời rạc (workclass, education, marital status, occupation, relationship, race, sex, native country). Đối với những thuộc tính liên tục, trước khi thực hiện phân lớp trên nguồn dữ liệu ADULT, chúng ta cần phải rời rạc hóa với miền giá trị xác định. Đối với những thuộc tính có miền giá trị lớn như native country, education, workclass, marital status, occupation chúng ta cần hạn chế miền giá trị bằng cách xác định một số giá trị thường xuyên xuất hiện nhất và kết hợp những thuộc tính còn lại vào trong một thuộc tính chung nhất.

Nguồn dữ liệu có chứa 7% giá trị không xác định (missing value). Với những giá trị không xác định, chúng ta gán cho chúng một giá trị xác định, trong trường hợp này, tác giả chọn giá trị unknown. Nhiệm vụ của phân lớp là phân lớp các bản ghi theo hai lớp: >50K (có thu nhập lớn hơn 50.000 USD), và <=50K (có thu nhập bé hơn hoặc bằng 50.000 USD).

Tên thuộc tính Tập giá trị thuộc tính

Age continuous.

Workclass Private, Self-emp-not-inc, Self-emp-inc, Federal-gov, Local-gov,

State-gov, Without-pay, Never-worked.

Fnlwgt continuous. (adsbygoogle = window.adsbygoogle || []).push({});

Education

Bachelors, Some-college, 11th, HS-grad, Prof-school, Assoc- acdm, Assoc-voc, 9th, 7th-8th, 12th, Masters, 1st-4th, 10th, Doctorate, 5th-6th, Preschool.

Education num continuous.

Marital status Married-civ-spouse, Divorced, Never-married, Separated,

Widowed, Married-spouse-absent, Married-AF-spouse.

Occupation

Tech-support, Craft-repair, Other-service, Sales, Exec- managerial, Prof-specialty, Handlers-cleaners, Machine-op- inspct, Adm-clerical, Farming-fishing, Transport-moving, Priv- house-serv, Protective-serv, Armed-Forces.

Relationship Wife, Own-child, Husband, Not-in-family, Other-relative,

Unmarried.

Race White, Asian-Pac-Islander, Amer-Indian-Eskimo, Other, Black.

Sex Female, Male.

Capital gain continuous.

Capital loss continuous.

Hours per week continuous.

Native country

United-States, Cambodia, England, Puerto-Rico, Canada, Germany, Outlying-US(Guam-USVI-etc), India, Japan, Greece, South, China, Cuba, Iran, Honduras, Philippines, Italy, Poland, Jamaica, Vietnam, Mexico, Portugal, Ireland, France,

Dominican-Republic, Laos, Ecuador, Taiwan, Haiti, Columbia, Hungary, Guatemala, Nicaragua, Scotland, Thailand,

Yugoslavia, El-Salvador, Trinadad&Tobago, Peru, Hong, Holand-Netherlands.

Class >50K, <=50K

Tên thuộc tính Tập giá trị thuộc tính Age Min, 1st, Median, Mean, 3rd, Max

Workclass Private, Self-emp-not-inc, Local-gov, State-gov, Self-emp-inc,

Other, NA.

Fnlwgt Min, 1st, Median, Mean, 3rd, Max

Education HS-grad, Some-college, Bachelors, Masters, Assoc-voc, 11th,

Other.

Education num Min, 1st, Median, Mean, 3rd, Max

Marital status Divorced, Married-AF-spouse, Married-civ-spouse, Married-

spouse-absent, Never-married , Separated , Widowed

Occupation Prof-specialty, Craft-repair, Exec-managerial, Adm-clerical,

Sales, Other, NA. (adsbygoogle = window.adsbygoogle || []).push({});

Relationship Husband, Not-in-family, Other-relative, Own-child, Unmarried,

Wife.

Race Amer-Indian-Eskimo, Asian-Pac-Islander, Black, Other, White

Sex Male, Female

Capital gain Min, 1st, Median, Mean, 3rd, Max

Capital loss Min, 1st, Median, Mean, 3rd, Max

Native country United-States, Mexico, Philippines, Germany, Canada, Other,

NA

Hours per week Min, 1st, Median, Mean, 3rd, Max

Class >50K, <=50K

Bảng 4.2. Thuộc tính và các giá trị của thuộc tính sau khi đã rời rạc hóa (ADULT).

CARS

Là nguồn dữ liệu về xe hơi. Nguồn dữ liệu bao gồm 1728 bản ghi, mỗi bản ghi có 6 thuộc tính. Các thuộc tính đều là các thuộc tính rời rạc. Mỗi thuộc tính có nhiều nhất là 4 giá trị. Giá trị của các thuộc tính được nhà cung cấp sắp xếp theo một thứ tự xác định và quyền ưu tiên được xác định theo thứ tự từ trên xuống dưới (theo thứ tự xuất hiện của các thuộc tính trong bảng 4.3). Nguồn dữ liệu không có giá trị không xác định. Nhiệm vụ của phân lớp là xác định lớp cho các bản ghi của nguồn dữ liệu. Dữ liệu được phân thành 4 lớp: unacc, acc, good, vgood.

Tên thuộc tính Tập giá trị thuộc tính Buying v-high, high, med, low

Maint v-high, high, med, low

Doors 2, 3, 4, 5-more

Persons 2, 4, more

Lug boot small, med, big

Safety low, med, high

Class unacc, acc, good, v-good

Bảng 4.3. Thuộc tính và các giá trị thuộc tính có thể có (CARS)

NURSERY

Nguồn dữ liệu được xây dựng nhằm hỗ trợ việc đưa ra các quyết định về việc chấp nhận hay không chấp nhận các đơn đăng kí học tại các trường Y. Nguồn dữ liệu bao gồm 12.960 bản ghi, mỗi bản ghi có 8 thuộc tính, mỗi thuộc tính có nhiều nhất là 5 giá trị. Giá trị của các thuộc tính cũng được sắp xếp theo thứ tự và chiều ưu tiên của các thuộc tính là chiều từ trên xuống dưới (theo thứ tự xuất hiện trong bảng 4.4). Nguồn dữ liệu không có giá trị không xác định. Việc phân lớp các bản ghi là việc xác định xem mỗi bản ghi thuộc lớp nào trong 5 lớp sau: not_recom, recommend, very_recom, priority, spec_prior.

Tên thuộc tính Tập giá trị thuộc tính Parents Usual, pretentious, great_pret

Has nurs Proper, less_proper, improper, critical, very_crit

Form Complete, completed, incomplete, foster

Children 1, 2, 3, more

Housing Convenient, less_conv, critical

Finance Convenient, inconv

Social Non_prob, slightly_prob, problematic (adsbygoogle = window.adsbygoogle || []).push({});

Health Recommended, priority, not_recom

Class Not_recom, recommend, very_recom, priority, spec_prior

4.3 Phân lớp dữ liệu tập trung

4.3.1 Phân lớp tập trung

Việc phân lớp tập trung được thực hiện với một nguồn dữ liệu duy nhất. Trước khi thực hiện phân lớp, các nguồn dữ liệu sau khi được chuyển đổi thành dạng XML sẽ được chia thành 2 phần, một là dữ liệu huấn luyện được lưu trữ trong cơ sở dữ liệu quan hệ dưới dạng bảng, có tên là x_training (x có thể là adult, cars, nursery), một là dữ liệu kiểm thử được lưu dưới dạng bảng có tên là y_testing (dành cho việc kiểm thử, y có thể là adult, cars, nursery) và z_origin (dành cho việc đánh giá kết quả, z có thể là adult, cars, nursery). Dữ liệu kiểm thử và dữ liệu huấn luyện được lưu trữ trên cùng một máy. Thông tin thống kê được thu thập từ nguồn dữ liệu huấn luyện và làm cơ sở để phân lớp dữ liệu theo phương pháp dựa trên Naïve Bayes.

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 62)