1. Trang chủ
  2. » Công Nghệ Thông Tin

Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)

64 407 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 64
Dung lượng 1,55 MB

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

Nội dung

Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu (LV thạc sĩ)

Trang 1

-

LÊ THỊ HẰNG

LUẬN VĂN THẠC SĨ KỸ THUẬT

HÀ NỘI – 2017

Trang 2

-

LÊ THỊ HẰNG

NGHIÊN CỨU ỨNG DỤNG KỸ THUẬT TẬP THÔ

TRONG PHÂN LỚP DỮ LIỆU

CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH

MÃ SỐ: 60.48.01.01

LUẬN VĂN THẠC SĨ KỸ THUẬT

NGƯỜI HƯỚNG DẪN KHOA HỌC: TS VŨ VĂN THỎA

HÀ NỘI – 2017

Trang 3

LỜI CAM ĐOAN Tôi cam đoan đây là công trình nghiên cứu của riêng tôi

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai

công bố trong bất cứ công trình nào

TÁC GIẢ

Lê Thị Hằng

Trang 4

LỜI CẢM ƠN

Em xin được bày tỏ lòng kính trọng và biết ơn sâu sắc đến TS Vũ Văn Thỏa, Thầy đã trực tiếp hướng dẫn và tận tình chỉ bảo em trong suốt thời gian làm luận văn tốt nghiệp Ngoài những kiến thức Thầy truyền đạt, em còn học được ở Thầy một phong cách làm việc rất khoa học, nghiêm túc và đầy trách nhiệm

Em xin chân thành cảm ơn toàn thể các thầy giáo, cô giáo Học viện Công nghệ Bưu chính Viễn thông đã dìu dắt, chỉ bảo tận tình cho em trong suốt thời gian học tập tại trường

Cuối cùng, em xin gửi lời cảm ơn tới gia đình, bạn bè, đồng nghiệp đã luôn giúp đỡ và tạo điều kiện để em có thể hoàn thành tốt luận văn này

Mặc dù em đã cố gắng hoàn thành luận văn trong phạm vi và khả năng cho phép nhưng chắc chắn sẽ không tránh khỏi những thiếu sót, kính mong nhận được góp ý của uý thầy cô và các bạn

Hà Nội, tháng 06 năm 2017

Học viên

Lê Thị Hằng

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

DANH MỤC THUẬT NGỮ vi

BẢNG CÁC KÝ HIỆU TỪ VIẾT TẮT vii

DANH MỤC BẢNG viii

DANH MỤC HÌNH ix

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN VỀ TẬP THÔ 4

VÀ CÁC VẤN ĐỀ LIÊN QUAN 4

1.1 Hệ thông tin và các khái niệm liên quan 4

1.1.1 Hệ thông tin 4

1.1.2 Quan hệ không phân biệt được 5

1.2 Tập thô 5

1.2.1 Xấp xỉ trên và xấp xỉ dưới 5

1.2.2 Các tính chất của xấp xỉ 7

1.2.3 Thuật toán tìm tập xấp xỉ dưới và xấp xỉ trên 8

1.2.4 Khái niệm tập thô 9

1.3 Ma trận phân biệt được và hàm phân biệt được 10

1.3.1 Ma trận phân biệt được 10

1.3.2 Hàm phân biệt được 10

1.4 Bảng quyết định và luật quyết định 12

1.4.1 Bảng quyết định 12

1.4.2 Luật quyết định 13

1.4.3 Các độ đo đánh giá luật quyết định 13

1.5 Ứng dụng tập thô giải quyết bài toán phân lớp dữ liệu 15

1.5.1 Bài toán phân lớp dữ liệu 15

1.5.2 Phân lớp dữ liệu dựa trên tập thô 16

Trang 6

1.6 Kết luận chương 1 18

CHƯƠNG 2: NGHIÊN CỨU KỸ THUẬT SINH LUẬT QUYẾT ĐỊNH DỰA TRÊN TẬP THÔ 19

2.1 Thuật toán sinh luật quyết định với tập rút gọn thuộc tính 19

2.2 Thuật toán sinh luật quyết định dựa trên tập rút gọn thuộc tính sử dụng ma trận phân biệt được 21

2.2.1 Thuật toán tìm tập rút gọn thuộc tính sử dụng ma trận phân biệt được cho các hệ thông tin 21

2.2.2 Thuật toán sinh luật quyết định 02 23

2.3 Thuật toán sinh luật quyết định có bổ sung thêm thuộc tính theo yêu cầu của người dùng 24

2.3.1 Các khái niệm liên uan 24

2.3.2 Mô tả thuật toán 25

2.4 Kết luận chương 2 28

CHƯƠNG 3: PHÂN LOẠI KIỂU TẤN CÔNG TRONG BỘ DỮ LIỆU KDD CUP 99 DỰA TRÊN TẬP THÔ 29

3.1 Bộ dữ liệu KDD Cup 99 và bài toán phân loại kiểu tấn công 29

3.1.1 Giới thiệu bộ dữ liệu KDD Cup 99 29

3.1.2 Các đặc tả về bộ dữ liệu KDD Cup 99 30

3.1.3 Bài toán phân loại kiểu tấn công trong bộ dữ liệu KDD Cup 99 35

3.2 Ứng dụng tập thô giải quyết bài toán phân loại kiểu tấn công trong bộ dữ liệu KDD Cup 99 35

3.2.1 Tìm tập rút gọn thuộc tính cho mỗi kiểu tấn công trong bộ dữ liệu KDD Cup 99 35

3.2.2 Sinh luật quyết định phân loại kiểu tấn công trong bộ dữ liệu KDD Cup 99 37

3.3 Cài đặt và thử nghiệm 43

3.3.1 Cài đặt và thử nghiệm với nhãn lớp DOS 43

3.3.2 Cài đặt và thử nghiệm với nhãn lớp U2R 46

Trang 7

3.4 Kết quả và đánh giá 47

3.4.1 Kết quả thực hiện với nhãn lớp DOS 47

3.4.2 Kết quả thực hiện với nhãn lớp U2R 49

3.5 Kết luận chương 3 50

KẾT LUẬN 51

Trang 8

DANH MỤC THUẬT NGỮ

Attribute Reduction Rút gọn thuộc tính

Complete Decision Table Bảng quyết định đầy đủ

Consistent Decision Table Bảng quyết định nhất uán

Inconsistent Decision Table Bảng quyết định không nhất uán Indiscernibility Relation Quan hệ không phân biệt được

Trang 9

C Số thuộc tính điều kiện trong bảng quyết định

A Số thuộc tính trong hệ thông tin

 

u a Giá trị của đối tượng u tại thuộc tính a

 

IND B Quan hệ Bkhông phân biệt

 u B Lớp tương đương chứa u của quan hệ IND B  

BN X B - miền biên của X

POSB(X) B - vùng dương của X

NEGB(X) B - vùng âm của X

Trang 10

DANH MỤC BẢNG

Bảng 1.1: Ví dụ về hệ thông tin 4

Bảng 1.2: Mô tả hệ thông tin 10

Bảng 1.3: Mô tả ma trận phân biệt được 11

Bảng 1.4: Ví dụ về bảng quyết định 12

Bảng 1.5: Các độ đo của luật quyết định 14

Bảng 2.1: Bảng quyết định gồm 10 đối tượng và 4 thuộc tính điều kiện, 1 thuộc tính quyết định 20

Bảng 2.2: Bảng quyết định với 8 đối tượng và 4 thuộc tính 21

Bảng 3.1: Nhãn lớp và số mẫu xuất hiện trong 10% bộ dữ liệu KDD Cup 99 [15] 30 Bảng 3.2: Các thuộc tính của bộ dữ liệu KDD Cup 99 [15] 31

Bảng 3.3: Các thuộc tính tối ưu được trích xuất trong MATLAB sử dụng thuật toán đề xuất [9] 37

Bảng 3.4: Thay thế lớp của kết nối bằng các thuộc tính số 37

Bảng 3 5: Bảng thông tin về các thuộc tính thuộc nhãn lớp DOS 39

Bảng 3.6: Thay thế lớp của kết nối bằng các thuộc tính số 40

Bảng 3.7: Bảng thông tin về các thuộc tính thuộc nhãn lớp U2R 41

Bảng 3.8: Bảng mô tả giới hạn giá trị các độ đo của các luật quyết định 47

Bảng 3.9: Danh sách 10 luật quyết định đại diện cho 1509 luật thu được 48

Bảng 3.10: Bảng mô tả giới hạn giá trị các độ đo của các luật quyết định 49

Bảng 3.11: Danh sách 6 luật quyết định đại diện cho 51 luật thu được 49

Trang 11

DANH MỤC HÌNH

Hình 1.1: Minh họa xấp xỉ dưới và xấp xỉ trên của tập thô [6] 7

Hình 1.2: Bài toán phân lớp dữ liệu [5] 15

Hình 1.3: Mô hình trích chọn đặc trưng dựa trên tập thô 17

Hình 1.4: Mô hình phân lớp dữ liệu dựa trên tập thô 18

Hình 3.1: Giao diện chính của hệ thống 43

Hình 3.2: Tiền xử lý dữ liệu với nhãn lớp DOS 44

Hình 3.3: Sinh luật quyết định với nhãn lớp DOS 44

Hình 3.4: Kết quả phân lớp với các luật thuộc lớp DOS 45

Hình 3.5: Kết quả phân lớp với các luật thuộc các lớp khác nhau 45

Hình 3.6: Tiền xử lý dữ liệu với nhãn lớp U2R 46

Hình 3.7: Sinh luật quyết định với nhãn lớp U2R 46

Hình 3.8: Kết quả phân lớp với các luật thuộc các lớp khác nhau 47

Trang 12

MỞ ĐẦU

Những năm gần đây, cùng với sự phát triển của Công nghệ thông tin, con người tạo ra nhiều dữ liệu nghiệp vụ, các tập dữ liệu được tích lũy có kích thước ngày càng lớn, và có thể chứa nhiều thông tin ẩn dạng những quy luật chưa được khám phá Chính vì vậy, một nhu cầu đặt ra là cần tìm cách trích rút từ tập dữ liệu

đó các luật để phân lớp dữ liệu hay dự đoán những xu hướng dữ liệu tương lai Có rất nhiều thuật toán khai phá tri thức bằng cách phân lớp và rời rạc dữ liệu như: sử dụng cây uyết định, phương pháp thống kê, các mạng nơron, thuật toán di truyền, Gần đây, lý thuyết tập thô được nhiều nhóm nghiên cứu trong lĩnh vực khai phá tri thức và triển khai ứng dụng trong thực tế Lý thuyết tập thô được xây dựng trên nền tảng toán học vững chắc giúp cung cấp những công cụ hữu ích để giải quyết những bài toán phân lớp dữ liệu, phát hiện luật,và đặc biệt hữu ích trong các bài toán phải xử lý các dữ liệu mơ hồ, không chắc chắn Các mối quan hệ giữa các

dữ liệu trong mô hình này được biểu diễn qua mối quan hệ “không phân biệt được”; các tập dữ liệu là mơ hồ, không chắc chắn được biểu diễn thông ua tập xấp xỉ trên

và xấp xỉ dưới của nó Nhờ vào những điều này mà dữ liệu có thể phân tích và xử lý bằng những công cụ toán học Cụ thể trong lý thuyết tập thô dữ liệu được biểu diễn thông ua hệ thông tin hay bảng quyết định Trong thực tế, với những bảng dữ liệu lớn với dữ liệu không hoàn hảo, dư thừa, liên tục hoặc biểu diễn dưới dạng các

ký hiệu, lý thuyết tập thô cho phép khai phá tri thức trong những cơ sở dữ liệu như thế nhằm phát hiện những tri thức tiềm ẩn từ những khối dữ liệu “thô” này Tri thức tìm được được thể hiện dưới dạng các luật, các mẫu Sau khi tìm được những quy luật chung nhất để biểu diễn dữ liệu, người ta có thể tính toán độ mạnh và độ phụ thuộc giữa các thuộc tính trong hệ thông tin

Xuất phát từ những vấn đề trên, học viên lựa chọn đề tài: “Nghiên cứu ứng dụng kỹ thuật tập thô trong phân lớp dữ liệu” làm luận văn tốt nghiệp cao học

Ý tưởng chính của lý thuyết tập thô lần đầu tiên được nhà toán học Ba Lan Z.Pawlak đề xuất Tiếp theo sau đó, các nhà khoa học khắp nơi trên thế giới đóng

Trang 13

góp nhiều thành tựu quan trọng nhằm phát triển lý thuyết tập thô và ứng dụng Một

số bài toán trong lĩnh vực như ngân hàng, tài chính, y học,… đã được giải quyết thành công nhờ công cụ tập thô

Theo [6], cách tiếp cận tập thô để phân tích dữ liệu có rất nhiều điểm lợi quan trọng như sau:

- Cho phép xử lý hiệu quả bảng dữ liệu lớn, loại bỏ dữ liệu dư thừa, dữ liệu không hoàn hảo, dữ liệu liên tục

- Hiệu quả trong việc tìm kiếm những mẫu tiềm ẩn trong cơ sở dữ liệu

- Sử dụng được tri thức kinh nghiệm

- Nhận ra được những mối quan hệ mà khi sử dụng các phương pháp thống

kê khác không phát hiện được

- Sử dụng quan hệ thứ lỗi trong uá trình phát hiện mẫu

- Làm việc hiệu quả trên tập rút gọn

- Cách giải thích rõ ràng và dễ hiểu

Kiến thức cơ sở của lý thuyết tập thô cổ điển là các phép toán xấp xỉ trên, xấp xỉ dưới dựa trên phân hoạch được tạo bởi một quan hệ tương đương Trên cơ sở

đó, các kỹ thuật tập thô tập trung vào hai hướng chính:

(1) Nghiên cứu các thuật toán để rút gọn tập các thuộc tính nhằm hạn chế số chiều của không gian dữ liệu

(2) Nghiên cứu các thuật toán sinh luật quyết định nhằm phân lớp dữ liệu để làm giảm độ phức tạp của không gian dữ liệu

Mục tiêu của luận văn là nghiên cứu các thuật toán sinh luật quyết định dựa

trên tập thuộc tính rút gọn theo hướng tiếp cận tập thô và ứng dụng cho bài toán phân loại kiểu tấn công trong bộ dữ liệu KDD Cup 99

Để đạt được mục tiêu trên, luận văn được trình bày bao gồm phần mở đầu,

ba chương nội dung, kết luận và tài liệu tham khảo Nội dung chính của ba chương như sau:

Chương 1: Tổng quan về tập thô và các vấn đề liên quan

Trang 14

Chương này của luận văn trình bày các khái niệm cơ bản về hệ thông tin và các vấn đề liên uan, xấp xỉ trên, xấp xỉ dưới và khái niệm tập thô Các khái niệm

về ma trận phân biệt được và hàm phân biệt được, bảng quyết định và luật quyết định cũng được đề cập trong nội dung của chương Từ đó, luận văn khảo sát vấn đề ứng dụng kỹ thuật tập thô giải quyết bài toán phân lớp dữ liệu

Chương 2: Nghiên cứu kỹ thuật sinh luật quyết định dựa trên tập thô

Chương 2 của luận văn tập trung khảo sát một số thuật toán sinh luật quyết định dựa trên tập thô thường được sử dụng trong các bài toán phân lớp dữ liệu

Chương 3: Phân loại kiểu tấn công trong bộ dữ liệu KDD CUP 99 dựa trên tập thô

Nội dung chính của chương 3 là nghiên cứu ứng dụng tập thô trong phân loại kiểu tấn công trong bộ dữ liệu KDD Cup 99 nhằm hỗ trợ hệ thống phát hiện xâm nhập Trong chương này luận văn cũng trình bày các kết quả thử nghiệm trên bộ dữ liệu KDD Cup 99 đối với một số kiểu tấn công mạng

Trang 15

CHƯƠNG 1: TỔNG QUAN VỀ TẬP THÔ

VÀ CÁC VẤN ĐỀ LIÊN QUAN

Chương 1 của luận văn trình bày một số khái niệm cơ bản về lý thuyết tập thô và khảo sát các vấn đề liên quan đến bài toán phân lớp dữ liệu Vấn đề ứng dụng tập thô giải quyết bài toán phân lớp dữ liệu cũng được đề cập trong chương này

1.1 Hệ thông tin và các khái niệm liên quan

1.1.1 Hệ thông tin

Trong hầu hết các hệ quản trị cơ sở dữ liệu, một tập dữ liệu thường được biểu diễn dưới dạng bảng Trong đó, mỗi hàng của bảng biểu diễn thông tin ứng với một đối tượng, còn mỗi cột biểu diễn một thuộc tính có thể đo được của một đối tượng Bảng này được gọi là một hệ thông tin [1]

Định nghĩa 1.1: Hệ thông tin là một cặp IS = (U, A) Trong đó:

U là một tập hữu hạn khác rỗng các đối tượng (tập vũ trụ hay tập phổ dụng)

A là một tập hữu hạn khác rỗng các thuộc tính

Với mỗi u U và a A, ký hiệu u(a) là giá trị của đối tượng u tại thuộc tính

a Nếu gọi Va là tập tất cả các giá trị của thuộc tính a thì u(a) Va với mọi u U Nếu B = {b1, b2, ,bk} A là một tập các thuộc tính, ta ký hiệu bộ các giá trị u(bi) bởi u(B) Như vậy, nếu u và v là hai đối tượng, thì ta sẽ viết u(B) = v(B) nếu u(bi) = v(bi) với mọi i = 1,2,…,k

Ví dụ 1.1: Bảng sau đây biểu diễn một hệ thông tin gồm 6 đối tượng với 3

Trang 16

A = { Đau đầu, Đau cơ, Thân nhiệt };

VĐau đầu = VĐau cơ = { Không, Có};

VThân nhiệt = { Bình thường, Cao, Rất cao}

1.1.2 Quan hệ không phân biệt được

Cho tập con các thuộc tính B A trong hệ thông tin IS = (U, A) Quan hệ B không phân biệt được ký hiệu là INDA(B) được định nghĩa như sau:

INDA(B) = {(x,x’) U2 | a B, a(x) = a(x’)}

Khi đó INDA(B) là một uan hệ tương đương trên U

Lớp tương đương chứa x của uan hệ không phân biệt được trên B ký hiệu là [x]B Hai đối tượng x, x’ mà (x, x’) INDA(B) được gọi là không phân biệt bởi các thuộc tính trong B Khi xét trên một hệ thông tin xác định ta sẽ viết IND(B) thay cho INDA(B)

Ví dụ 1.2: Xét Bảng 1.1 để minh họa cho uan hệ không phân biệt được

Nhận thấy các bệnh nhân u2, u3, u5 không phân biệt được với thuộc tính “Đau

đầu”, bệnh nhân u2, u5 không phân biệt được với thuộc tính “Đau đầu”, “Đau cơ”…

IND({Đau đầu}) = {{u2, u3, u5}, {u1, u4, u6}}

IND({Đau đầu, Đau cơ}) = {{u1, u4, u6}, {u2, u5}, {u3}}

IND({Đau đầu, Đau cơ, Thân nhiệt}) = {{u1}, {u2, u5}, {u3}, {u4}, {u6}}

1.2 Tập thô

1.2.1 Xấp xỉ trên và xấp xỉ dưới

Để biểu diễn một tập hợp bằng tri thức được cho là xác định bởi một tập thuộc tính, người ta định nghĩa hai phép xấp xỉ: xấp xỉ trên và xấp xỉ dưới

Trang 17

Cho một hệ thông tin IS = (U, A), với mỗi tập con X U và B A, ký hiệu

R = IND(B) ta có hai tập con sau:

(X) = {u U | [u]B X};

(X) = {u U | [u]B X } (X), (X) lần lượt gọi là R-xấp xỉ dưới và R-xấp xỉ trên của tập X

Tập (X) bao gồm tất cả các phần tử U có khả năng được phân loại vào những phần tử thuộc X ứng với quan hệ R

Từ hai tập xấp xỉ người ta định nghĩa các tập:

BNB(X) = (X) - (X): B- miền biên của X

POSB(X) = (X): B- vùng dương của X

NEGB(X) = U - (X): B- vùng âm của X

Ký hiệu tập thương của IND(B) trên U là U/B, các xấp xỉ trên và dưới của X

có thể viết lại: (X) = {W U/B | W X }

(X) = {W U/B | W X } Trong trường hợp BNB(X) , X được gọi là tập thô, ngược lại X được gọi

là tập rõ

Đối với một hệ thông tin IS = (U,A), B, D A, ký hiệu R = IND(B), người

ta gọi B-miền khẳng định dương của D là tập được xác định như sau:

POSB(D) = ⋃ (V))

Rõ ràng POSB(D) là tập tất cả các đối tượng của u sao cho với mọi v U mà u(B) = v(B) ta đều có u(D) = v(D)

Trang 18

Hình 1.1: Minh họa xấp xỉ dưới và xấp xỉ trên của tập thô [6]

1.2.2 Các tính chất của xấp xỉ

Cho một hệ thông tin IS = (U, A), X, Y U và B A, đặt R = IND(B) khi

đó [1]:

(1L) (U) = U (1H) (U) = U (2L) ( ) = (2H) ( ) = (3L) (X) X (3H) (X) X (4L) (X Y) = (X) (Y) (4H) (X Y) = (X) (Y) (5L) (X) = (X)

(5H) (X) = (X)

(6L) (U – X) = U - X (6H) (U – X) = U - X (7L) X Y => (X) (Y) (7H) X Y => (X) (Y) (8L) (U - (X)) = U - (X) (8H) (U - (X)) = U - (X)

Xấp xỉ dưới – Vùng dương

Xấp xỉ trên

Vùng âm

Trang 19

(9L) K U/R, (K) = K (9H) K U/R, (K) = K Tính chất (3L), (4L) và (8L) là những tính chất đặc trưng cho phép xấp xỉ dưới, điều đó có nghĩa là những tính chất khác của phép xấp xỉ dưới có thể suy dẫn

từ ba tính chất này Tương tự với (3H), (4H) và (8H) là những tính chất đặc trưng của phép xấp xỉ trên

Sự chính xác của tập xấp xỉ X đối với phân hoạch trên B là giá trị sau:

1.2.3 Thuật toán tìm tập xấp xỉ dưới và xấp xỉ trên

- strRowX: Đối tượng nằm trong U;

- arrXXD: Tập xấp xỉ dưới của các đối tượng X theo tập thuộc tính P;

- txtloptuongduong: Tập lớp tương đương;

Thuật toán:

{ arrXXD = rỗng;

While (strRowX chạy ua tất cả các đối tượng của U)

{

If (txtloptuongduong  X)

Trang 20

arrXXD = arrXXD+strRowX;

} Return arrXXD;

- strRowX: Đối tượng nằm trong U;

- arrXXT: Tập xấp xỉ trên của các đối tượng X theo tập thuộc tính P;

- txtloptuongduong: Tập lớp tương đương;

Thuật toán:

{ arrXXT = rỗng;

While (strRowX chạy ua tất cả các đối tượng của U) {

If (txtloptuongduong  X=) arrXXT = arrXXT+strRowX;

} Return arrXXT;

}

1.2.4 Khái niệm tập thô

Khái niệm cơ bản của lý thuyết tập thô là xấp xỉ dưới và trên của một tập, sự xấp xỉ của không gian là hình thức phân loại tri thức liên uan đến miền uan tâm Tập con được tạo ra bởi xấp xỉ dưới mô tả bởi các đối tượng là những thành phần chắc chắn của một tập, trong khi xấp xỉ trên được đặc trưng bởi các đối tượng có

Trang 21

khả năng thuộc tập uan tâm Mỗi tập con xác định thông ua xấp xỉ dưới và xấp xỉ trên được gọi là tập thô

Tập thô là một bộ < (X), (X) >, trong đó (X) là xấp xỉ dưới và (X) là xấp xỉ trên của tập cổ điển X Độ chính xác thô của X được cho bởi [6]:

0 ≤ αR(X) = | (X)| / (X)| ≤ 1

1.3 Ma trận phân biệt được và hàm phân biệt được

1.3.1 Ma trận phân biệt được

Xét hệ thông tin IS =(U, A), giả sử B A Ta định nghĩa ma trận là B-phân biệt được, kí hiệu M(B), là ma trận đối xứng cấp n×n mà mỗi phần tử của nó được xác định như sau:

cij = { a B: a(xi) ≠ a(xj)} với i, j =

Do vậy phần tử cij là tập tất cả các thuộc tính phân biệt được các đối tượng xi

và xj.

1.3.2 Hàm phân biệt được

Tất cả các rút gọn của một hệ thông tin có thể tìm được thông ua hàm phân biệt được Với hệ thông tin IS = (U, A), B A, có ma trận phân biệt M(B) = cij với (cij) = {aB: a(xi)  a(xj)} và i,j = Hàm phân biệt fs là một hàm Boolean của m biến Boolean a*1, a*2, …,a*m (ứng với các thuộc tính a1, a2, …, am) được xây dựng dưới dạng chuẩn tắc tuyển như sau:

fs(a*1, a*2, …,a*m) =  {  cij | 1  j  i  n, cij }

Trong đó: c*ij = {a* | a  cij}

Tập các đơn thức của fs xác định tập rút gọn của S

Ví dụ 1.3: Xét hệ thông tin IS = (U, {a, b, c, d, e}) như bảng 1.2

Bảng 1.2: Mô tả hệ thông tin

Trang 22

fs(a,b,c,d,e) = a(ade)b(ce) (ade)(ab) fs(a,b,c,d,e) = a  b  (c  e)

Áp dụng luật phân phối ta được:

fs(a,b,c,d,e) = (a  b  c)  (a  b  e)

Trang 23

Từ biểu thức trên, để bảo toàn khả năng phân loại của tập thuộc tính ban đầu,

ta cần sử dụng tập thuộc tính {a, b, c} hoặc {a, b, e} Đây là hai thuộc tính rút gọn hoàn toàn của hệ thông tin

1.4 Bảng quyết định và luật quyết định

1.4.1 Bảng quyết định

Một trường hợp đặc biệt của hệ thông tin gọi là bảng quyết định nếu tập thuộc tính A được phân thành hai tập khác rỗng rời nhau C và D, trong đó C là tập các thuộc tính điều kiện, D là tập các thuộc tính uyết định sao cho C ∩ D = ,

C D = A Bảng quyết định được ký hiệu là: DT = (U, C D) [3]

Ví dụ 1.4: Bảng quyết định DT = (U, C D) biểu diễn cơ sở tri thức về việc đảm bảo các giấy tờ để được lái xe tham gia giao thông Trong đó:

U = {x1, x2, …, x6};

A = {Đăng kí, Bằng lái, Bảo hiểm, Lái xe};

Tập thuộc tính điều kiện C = {Đăng kí, Bằng lái, Bảo hiểm};

Tập thuộc tính uyết định D = {Lái xe};

Cho một bảng quyết định DT = (U, C D), giả sử U/C = {X1, X2, …, Xm}

và U/D = {Y1, Y2, …, Yn} Một lớp Xi U/C được gọi là nhất uán nếu u(d) = v(d),

u, v Xi, d D Lúc này có thể viết u(D) = v(D) = Xi(D) Một lớp Yj U/D được gọi là nhất uán nếu u(a) = v(a), u, v Yj, a C

Trang 24

Một bảng quyết định DT = (U, C D) là nhất uán nếu mọi lớp Xi U/C là nhất uán, ngược lại DT được gọi là không nhất uán

Một luật quyết định đơn có dạng Zij: des(X i ) → des(Y j )

Tổng uát, luật quyết định là một luật kết hợp Φ Ψ, hay "nếu Φ thì Ψ (“if

Φ then Ψ”), trong đó Φ và Ψ là các biểu thức logic Khi đó Φ được gọi là điều kiện

và Ψ gọi quyết định của luật quyết định tương ứng [6]

Như vậy, trong bảng quyết định DT có thể sinh được nhiều luật quyết định

Để đánh giá hiệu năng của các các luật quyết định, người ta thường sử dụng ba độ đo: độ hỗ trợ, độ chính xác và độ bao phủ

1.4.3 Các độ đo đánh giá luật quyết định

Nội dung trình bày trong mục này dựa trên [6] Để đơn giản, các độ đo đánh giá luật quyết định sẽ được trình bày cho luật quyết định tổng uát dạng Φ Ψ

Ký hiệu |Φ| là số lượng các phần tử của tập hợp tất cả các đối tượng trong U, có giá trị Φ

Độ hỗ trợ của luật quyết định

Độ hỗ trợ (còn gọi là độ mạnh) của luật quyết định Φ Ψ, ký hiệu là supp(Φ, Ψ), được định nghĩa là tỷ số giữa |Φ ^ Ψ| và |U|:

supp(Φ, Ψ) = Φ (1.1)

Độ chắc chắn của luật quyết định

Độ chắc chắn của luật quyết định Φ Ψ, ký hiệu là cer(Φ, Ψ), được định nghĩa là tỷ số giữa |Φ ^ Ψ| và |Φ|:

cer(Φ, Ψ) =

(1.2)

Trang 25

Thông thường, nếu cer(Φ, Ψ) = 1 thì luật quyết định Φ Ψ được gọi là chắc chắn, ngược lại, gọi là không chắc chắn

Độ bao phủ của luật quyết định

Độ bao phủ của luật quyết định Φ Ψ, ký hiệu là cov(Φ, Ψ) được định nghĩa là tỷ số giữa |Φ ^ Ψ| và |Ψ|:

cov(Φ, Ψ) =

(1.3)

Ví dụ 1.5:

Xét ví dụ về bầu cử kiểu Mỹ như sau Có 3 nhóm đối tượng cử tri là X1, X2,

X3 tham gia bầu cử chọn 1 trong hai ứng viên của hai đảng chính trị là Y1 và Y2 Giả sử ta có thống kê kết quả bầu cử dưới dạng các luật quyết định như sau:

(1) X1 Y1 (Có 400 cử tri nhóm X1 bầu cho Y1);

(2) X1 Y2 (Có 200 cử tri nhóm X1 bầu cho Y2);

(3) X2 Y1 (Có 250 cử tri nhóm X2 bầu cho Y1);

(4) X2 Y2 (Có 50 cử tri nhóm X2 bầu cho Y2);

(5) X3 Y1 (Có 90 cử tri nhóm X3 bầu cho Y1);

(6) X3 Y2 (Có 10 cử tri nhóm X3 bầu cho Y2);

Các độ đo đánh giá các luật quyết định được cho trong bảng 1.5 dưới đây

Bảng 1.5: Các độ đo của luật quyết định

Thuật toán quyết định

Một tập hợp gồm k luật quyết định Dec(Φ, Ψ) = {Φi  Ψi | i = 1, 2, …, k; k  2} được gọi là một thuật toán uyết định trên bảng quyết định DT nếu thỏa mãn ba

Trang 26

điều kiện sau [6]:

(1) Điều kiện chấp nhận được: với mỗi i (1 ≤ i ≤ k) thì supp(Φi  Ψi) > 0

(2) Điều kiện độc lập: với mỗi cặp luật (Φi  Ψi) và (Φj  Ψj) có Φi = Φj thì

1.5 Ứng dụng tập thô giải quyết bài toán phân lớp dữ liệu

1.5.1 Bài toán phân lớp dữ liệu

Dữ liệu là một tập hợp các dữ kiện (số, chữ, hình ảnh, âm thanh, văn bản,…) không có tổ chức, không có ý nghĩa rõ ràng nhưng có thể được sắp xếp để tạo thành những thông tin hữu ích Thực tế đã chứng minh, dữ liệu là một thứ gì đó vô giá chỉ

có con người chưa khám phá ra hết những giá trị của nó Xử lý dữ liệu là một dãy các hành động hoặc các thao tác chuyển đổi các dữ liệu đầu vào thành dữ liệu đầu ra hữu ích Trong uá trình xử lý dữ liệu, bài toán phân lớp dữ liệu đóng một vai trò rất quan trọng [5]

Phân lớp (classification) là một tiến trình xử lý nhằm xếp các mẫu dữ liệu hay các đối tượng vào một trong các lớp đã được định nghĩa trước Các mẫu dữ liệu hay các đối tượng được xếp vào các lớp dựa trên giá trị của các thuộc tính (attributes) cho một mẫu dữ liệu hay đối tượng Bài toán phân lớp có thể biểu diễn như hình 1.2 dưới đây:

Hình 1.2: Bài toán phân lớp dữ liệu [5]

Mô hình phân lớp

Dữ liệu

Lớp 1 Lớp 2 Lớp … Lớp n

Trang 27

Như vậy, phân lớp dữ liệu là uá trình "nhóm” các đối tượng "giống” nhau vào "một lớp” dựa trên các đặc trưng dữ liệu của chúng Nhiệm vụ chủ yếu là xây dựng các mô hình phân lớp hiệu quả Các mô hình phân lớp tiêu biểu như: máy vector hỗ trợ (Support vector machines - SVM), mạng nơ-ron nhân tạo (Neural network), cây uyết định, …

Trong thực tế, bài toán phân lớp dữ liệu có thể biểu diễn dưới dạng bảng quyết định DT = (U, C D), trong đó U là tập các đối tượng, C là tập các thuộc tính và D là tập các nhãn lớp Yêu cầu phân lớp dữ liệu có thể được xem xét như là sinh các luật quyết định để gán nhãn lớp cho các dữ liệu

Trong phạm vi luận văn, bài toán phân lớp dữ liệu được đặt ra như sau:

Input: Bảng quyết định DT = (U, C D);

Output: Các luật quyết định nhãn dữ liệu

Mục tiếp theo của luận văn sẽ trình bày cách thức giải quyết bài toán phân lớp dữ liệu dựa trên tập thô

1.5.2 Phân lớp dữ liệu dựa trên tập thô

Quá trình phân lớp dữ liệu dựa trên tập thô bao gồm hai giai đoạn:

Giai đoạn 1: Tìm tập rút gọn thuộc tính, tức là thực hiện trích chọn đặc trưng

dựa trên tập thô

Giai đoạn 2: Sinh luật quyết định dựa trên tập rút gọn

1.5.2.1 Trích chọn đặc trưng dựa trên lý thuyết tập thô

Lựa chọn thuộc tính (Feature Selection, Feature Extraction) là nhiệm vụ rất quan trọng cho bài toán phân lớp dữ liệu khi triển khai các mô hình phân lớp dữ liệu khác nhau Một vấn đề gặp phải trong thực tế là các tập dữ liệu cần phân lớp thường chứa nhiều thông tin không cần thiết (thậm chí gây nhiễu) cho việc xây dựng mô hình làm giảm độ chính xác của mô hình và gây khó khăn trong uá trình phân lớp

dữ liệu

Lựa chọn thuộc tính có đặc tính tốt là uy trình chọn lựa ra các tập con thuộc tính từ một tập thuộc tính gốc đầy đủ, sao cho mỗi tập con này có thể đảm bảo cho

Trang 28

việc phân lớp hiệu quả [5]

Quá trình trích chọn đặc trưng dựa trên tập thô thường sử dụng các kỹ thuật rút gọn thuộc tính như trình bày trong hình 1.3 dưới đây

Hình 1.3: Mô hình trích chọn đặc trưng dựa trên tập thô

Trong thực tế, việc ứng dụng tập thô trong trích chọn đặc trưng có hiệu quả cao Chẳng hạn, kết quả ứng dụng thuật rút gọn thuộc tính dựa trên tập thô đối với

bộ dữ liệu KDD Cup 99, các thuộc tính đặc trưng của nhãn lớp DOS có thể giảm từ

41 thuộc tính xuống còn 07 thuộc tính, nhãn lớp U2R có thể giảm từ 41 thuộc tính xuống còn 13 thuộc tính đặc trưng [9]

1.5.2.2 Sinh luật quyết định nhãn lớp dữ liệu dựa trên tập rút gọn

Trong giai đoạn này, tiến trình phân lớp dữ liệu được thực hiện thông ua

uá trình sinh toàn thể các luật quyết định gán nhãn Sau đó, dựa trên ngưỡng các

độ đo luật quyết định do người dùng đưa ra, sẽ lựa chọn các luật quyết định tốt nhất

để tao nên mô hình phân lớp

Trang 29

Quá trình phân lớp dữ liệu dựa trên tập thô sử dụng các kỹ thuật sinh luật quyết định được mô hình hóa trong hình 1.4 dưới đây:

1.6 Kết luận chương 1

Chương 1 của luận văn đã trình bày tổng quan về lý thuyết tập thô bao gồm các khái niệm cơ bản về hệ thông tin, các xấp xỉ trên, xấp xỉ dưới, ma trận và hàm phân biệt được, bảng quyết định và luật quyết định Trên cơ sở đó, chương này đã khảo sát phương pháp giải quyết bài toán phân lớp dữ liệu theo hướng tiếp cận tập thô Các nội dung kiến thức nền tảng trong chương 1 sẽ là cơ sở để nghiên cứu các phương pháp rút gọn thuộc tính và sinh luật quyết định là chủ đề nghiên cứu trong các chương tiếp theo

Hình 1.4: Mô hình phân lớp dữ liệu dựa trên tập thô

Sinh luật quyết định gán nhãn lớp

Bảng quyết

định với tập rút

gọn thuộc tính

Lớp 1 Lớp 2

Lớp n

Trang 30

CHƯƠNG 2: NGHIÊN CỨU KỸ THUẬT SINH LUẬT

QUYẾT ĐỊNH DỰA TRÊN TẬP THÔ

Trong chương này, luận văn sẽ khảo sát một số thuật toán sinh luật quyết định dựa trên tập rút gọn thuộc tính tìm được theo hướng tiếp cận tập thô

2.1 Thuật toán sinh luật quyết định với tập rút gọn thuộc tính

Cho bảng quyết định DT = (U, C  D), trong đó U là tập các đối tượng, C là tập các thuộc tính điều kiện và D là tập các nhãn lớp (các thuộc tính uyết định) Như trình bày trong mục 1.4.2, mỗi luật quyết định đơn có dạng Zij: des(X i ) → des(Y j ), với

X i C và Y j D Thông thường, uá trình sinh luật quyết định được thực hiện bằng

phương pháp duyệt toàn thể Khi đó, độ phức tạp tính toán là O(2|C| x |D|) và không khả thi trong các bài toán thực tế với C và D cố số phần tử lớn

Do đó, để giảm độ phức tạp tính toán, trước khi sinh luật quyết định, cần phải tìm tập rút gọn thuộc tính C’  C Hiệu quả của thuật toán sinh luật quyết định phụ thuộc rất nhiều vào chất lượng của C’

Trong mục này, luận văn trình bày thuật toán chung sinh luật quyết định bằng phương pháp duyệt toàn thể với tập rút gọn thuộc tính (Thuật toán Sinh luật 01) [12]

Sau đó các luật quyết định được lựa chọn dựa vào các ngưỡng supp của độ hỗ trợ, cer

của độ chắc chắn và cov của độ bao phủ tương ứng

Thuật toán 2.1: Thuật toán Sinh luật quyết định 01

Input: Bảng quyết định DT = (U, CD), các giá trị supp, cer và cov;

Output: Danh sách các luật quyết định với độ hỗ trợ supp, độ chắc chắn

cer và độ bao phủ cov;

1 Tìm tập rút gọn C’  C dựa trên tập thô;

2 For each (X  C’, Y  D)

3 Begin

4 Xét luật quyết định Z: X  Y

5 Tính độ hỗ trợ supp(Z) theo công thức (1.1);

6 Tính độ chắc chắn cer(Z) theo công thức (1.2);

Trang 31

7 Tính độ bao phủ cov(Z) theo công thức (1.3);

8 Chấp nhận luật Z nếu (supp(Z)  supp, cer(Z)  cer, cov(Z)  cov);

9 End;

10 End;

11 Return

Ví dụ 2.1 [12]: Cho bảng quyết định gồm 10 đối tượng, với 04 thuộc tính

điều kiện là {x,y,z,w }, 01 thuộc tính uyết định là D như trong bảng 2.1

Bảng 2.1: Bảng quyết định gồm 10 đối tượng và 4 thuộc tính điều kiện, 1 thuộc tính

Trang 32

Trong các mục tiếp theo của chương này, luận văn sẽ trình bày các thuật toán sinh luật quyết định dựa trên các tập rút gọn thuộc tính tìm được cụ thể dựa theo tiếp cận tập thô

2.2 Thuật toán sinh luật quyết định dựa trên tập rút gọn thuộc tính sử dụng ma trận phân biệt được

2.2.1 Thuật toán tìm tập rút gọn thuộc tính sử dụng ma trận phân biệt được cho các hệ thông tin

Nội dung của mục này được tham khảo từ tài liệu [1]

2.2.1.1 Các khái niệm liên quan

Định nghĩa 2.2

Cho B là tập con của C, lõi của tập B (Core(B) là giao tất cả các tập rút gọn của B:

Core(B) = Red(B) Trong đó, Red(B) là tập tất cả các rút gọn của B

Định lí 2.1 Core(B) = {b B : cij = {b}}

Định lí 2.2 Nếu B là độc lập trong C và D(B) = 0 thì B = R(C)

b, Quan hệ tương đương:

Mối uan hệ nhị phân R X X được gọi là uan hệ tương đương nếu thỏa mãn:

+ Tính phản xạ: xRx, với mọi x thuộc X;

+ Tính đối xứng: nếu xRy thì yRx với mọi x, y thuộc X;

Ngày đăng: 23/10/2017, 12:26

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