1. Trang chủ
  2. » Luận Văn - Báo Cáo

xử lý giá trị thiếu trong khai phá dữ liệu

66 335 0

Đ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 66
Dung lượng 777,98 KB

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

Nội dung

Các bước thực hiện của quá trình khai phá dữ liệu Theo quan điểm của học máy Machine Learning, thì các kỹ thuật khai phá dữ liệu bao gồm:  Học có giám sát Supervised Learning: Là quá t

Trang 1

ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN - -

ĐOÀN XUÂN NGỌC

TRONG KHAI PHÁ DỮ LIỆU

Chuyên ngành: KHOA HỌC MÁY TÍNH

Mã số: 60.48.01

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Hướng dẫn khoa học: TS NGUYỄN THANH TÙNG

THÁI NGUYÊN 2010

Trang 2

LỜI CẢM ƠN

Luận văn được hoàn thành dưới sự hướng dẫn, chỉ bảo tận tình, chu đáo

của TS Nguyễn Thanh Tùng Qua đây, tôi xin gửi lời cảm ơn sâu sắc đến

Thầy cùng sự giúp đỡ nhiệt tình của Thầy trong suốt quá trình tôi thực hiện luận văn

Tôi xin cảm ơn các Thầy, Cô giáo và các Cán bộ trong Viện Công Nghệ Thông Tin - Viện Khoa Học Công Nghệ Việt Nam, Khoa Công Nghệ Thông Tin - Đại học Thái Nguyên đã truyền thụ kiến thức, kinh nghiệm học tập, nghiên cứu khoa học cho tôi trong suốt quá trình học tập tại trường

Tôi cũng xin gửi lời cảm ơn tới Cục thuế tỉnh Thái Nguyên cùng các đồng nghiệp đã tạo điều kiện trong công việc giúp tôi thực hiện tốt kế hoạch học tập của mình

Cuối cùng, tôi xin bày tỏ lòng biết ơn tới gia đình tôi đã luôn bên cạnh động viên, ủng hộ và tạo điều kiện tốt nhất cho tôi học tập và hoàn thành luận văn này

Học viên thực hiện

ĐOÀN XUÂN NGỌC

Trang 3

MỤC LỤC

DANH SÁCH CÁC HÌNH VẼ 5

DANH SÁCH CÁC BẢNG 6

MỞ ĐẦU 7

CHƯƠNG 1: KHÁI QUÁT VỀ KHAI PHÁ DỮ LIỆU VÀ VẤN ĐỀ DỮ LIỆU THIẾU 9

1.1 Khai phá dữ liệu 9

1.2 Vấn đề dữ liệu thiếu trong cơ sở dữ liệu cần khai phá 14

1.3 Kết luận chương 1 19

CHƯƠNG 2: CÁC PHƯƠNG PHÁP CƠ BẢN XỬ LÝ GIÁ TRỊ THIẾU 21

2.1 Các phương pháp thống kê 21

2.1.1 Phương pháp Trung bình-Mốt (Mean-Mode - MM) 21

2.1.2 Phương pháp Trung bình-Mốt dựa vào cụm tự nhiên (Natural Cluster Based Mean-Mode - NCBMM) 23

2.1.3 Thay giá trị thiếu bằng giá trị cho cùng độ lệch chuẩn (Replacement Under Same Standard Deviation - RUSSD) 24

2.1.4 Hồi quy tuyến tính (Linear regression – LR) 24

2.2 Các phương pháp học máy 25

2.2.1 Phương pháp Trung bình-Mốt dựa vào cụm sinh bởi thuộc tính gần nhất (Attribute Rank Cluster Based Mean-Mode algorithm - RCBMM) 25

2.2.2 Phương pháp Trung bình – Mốt dựa vào phân cụm k-Means (K-means clustering based Mean - Mode - KMCMM) 27

2.3 Các phương pháp nhúng 32

2.3.1 Loại bỏ các bộ dữ liệu có chứa giá trị thiếu (discarding data tuples with missing values) 32

2.3.2 Phương pháp C4.5 33

2.3.3 Phương pháp CART 36

2.4 Đánh giá 36

Trang 4

2.4.1 Đánh giá lý thuyết 37

2.4.2 Đánh giá thực nghiệm 38

2.5 Kết luận chương 2 45

CHƯƠNG 3: PHƯƠNG PHÁP XỬ LÝ GIÁ TRỊ THIẾU PHỐI HỢP KHAI PHÁ LUẬT KẾT HỢP VỚI PHƯƠNG PHÁP K-LÁNG GIỀNG GẦN NHẤT 47

3.1 Mở đầu 47

3.2 Khai phá luật kết hợp 48

3.3 Thuật toán RAR khai phá luật kết hợp trong cơ sở dữ liệu không đầy đủ 53

3.4 Phương pháp xử lý giá trị thiếu HMiT 55

3.5 Tính toán thực nghiệm 57

3.6 Kết luận chương 3 63

TÀI LIỆU THAM KHẢO 64

Trang 5

DANH SÁCH CÁC HÌNH VẼ

Hình 1.1 Các bước thực hiện của quá trình khai phá dữ liệu 11

Hình 1.2 Phân bố giá trị thiếu trong trường hợp 1 16

Hình 1.3 Phân bố giá trị thiếu trong trường hợp 2 16

Hình 1.4 Phân bố giá trị thiếu trong trường hợp 3 16

Hình 1.5 Kết quản mô tả phân bố giá trị thiếu trong tập dữ liệu edu.data của UCI 17

Hình 2.1 Thuật toán MM 22

Hình 2.1 Thuật toán NCBMM 23

Hình 2.3 Thuật toán RUSD 24

Hình 2.4 Thuật toán RCBMM 26

Hình 2.5 Thuật toán KMCMM 28

Hình 2.6 Thuật toán phân cụm k-means 29

Hình 2.7 Thuật toán kNN 30

Hình 2.8 Tỷ lệ lỗi của mỗi phương pháp trên tập dữ liệu định lượng 43

Hình 2.9 Tỷ lệ lỗi của mỗi phương pháp trên tập dữ liệu định tính 44

Hình 2.10 Tỷ lệ lỗi của mỗi phương pháp trên tập dữ liệu hỗn hợp 45

Hình 3.1 Sơ đồ khối của thuật toán gán giá trị thiếu HMiT 56

Hình 3.2 Sự phụ thuộc của độ chính xác vào số lượng giá trị thiếu trong CSDL 59

Hình 3.3 Sự phụ thuộc của độ chính xác vào độ tin cậy khi sử dụng HMVI 60 Hình 3.4 Sự phụ thuộc của độ chính xác vào độ hỗ trợ khi sử dụng HMVI 61 Hình 3.5 Thời gian xử lý giá trị thiếu bằng HMVI và bằng K-NNI 62

Trang 6

DANH SÁCH CÁC BẢNG

Bảng 2.8 Đánh giá về mặt lý thuyết 10 phương pháp xử lý giá trị thiếu 38

Bảng 2.9 Các tập dữ liệu có chứa giá trị thiếu trên thuộc tính định lượng 39

Bảng 2.10 Các tập dữ liệu có chứa giá trị thiếu trên thuộc tính định tính 39

Bảng 2.11 Các tập dữ liệu có giá trị thiếu trên cả thuộc tính định lượng và định tính 40

Bảng 2.12 Thời gian thực thi việc thay thế trên tập dữ liệu định lượng (phút:giây) 41

Bảng 2.13 hời gian thực thi việc thay thế trên tập dữ liệu định tính (phút:giây) 41

Bảng 2.14 Thời gian thực thi việc thay thế trên tập dữ liệu hỗn hợp (phút:giây) 42

Bảng 2.15 Tỷ lệ lỗi phân lớp trên tập dữ liệu định lượng (%) 42

Bảng 2.16 Tỷ lệ lỗi trên tập dữ liệu định tính (%) 43

Bảng 2.17 Tỷ lệ lỗi trên tập dữ liệu hỗn hợp (%) 44

Trang 7

MỞ ĐẦU

Trong những năm gần đây, cùng với sự phát triển vượt bậc của công nghệ thông tin, truyền thông, khả năng thu thập và lưu trữ thông tin của các

hệ thống thông tin không ngừng được nâng cao Với lượng dữ liệu tăng nhanh

và khổng lồ như vậy, rõ ràng các phương pháp phân tích dữ liệu truyền thống

sẽ không còn hiệu quả, gây tốn kém và dễ dẫn đến những kết quả sai lệch Để

có thể khai phá hiệu quả các cơ sở dữ liệu (CSDL) lớn một lĩnh vực khoa học mới ra đời: Khám phá tri thức trong CSDL (Knowledge Discovery in Databases – KDD) Khai phá dữ liệu (Data Mining) là một công đoạn chính trong quả trình KDD và được định nghĩa như sau [6]:

Khai phá dữ liệu là quá trình tìm kiếm, phát hiện các tri thức mới, hữu ích tiềm ẩn trong cơ sở dữ liệu lớn

Trong những năm gần đây, nhiều kỹ thuật khai phá dữ liệu đã được nghiên cứu và ứng dụng thành công trong nhiều lĩnh vực Tuy nhiên, việc nghiên cứu và ứng dụng các kỹ thuật khai phá dữ liệu cũng gặp phải những khó khăn, thách thức lớn, trong đó có vấn đề giá trị thiếu

Trong thực hành, các CSDL cần khai phá thường không đầy đủ, tức là

có những giá trị thuộc tính bị thiếu Có nhiều nguyên nhân khác nhau dẫn tới hiện tượng này: thiết bị thu thập dữ liệu bị hỏng, sự thay đổi thiết kế thí nghiệm, sự từ chối cung cấp dữ liệu nhằm bảo vệ tính riêng tư, sự sơ xuất khi nhập dữ liệu, các sự cố xảy ra trong quá trình truyền dữ liệu, …

Dữ liệu thiếu gây khó khăn cho việc khai phá, ảnh hưởng trực tiếp đến chất lượng tri thức khám phá được Làm thế nào để xử lý các các giá trị thiếu,

vì vậy là một nhiệm vụ quan trọng hàng đầu của quá trình khám phá tri thức

từ cơ sở dữ liệu

Trang 8

Cho đến nay, nhiều phương pháp xử lý giá trị thiếu đã được đề xuất và

áp dụng [5, 10, 12] Các phương pháp này cho phép xử lý trực tiếp các giá trị thiếu, tuy nhiên chúng cũng có thể mang nhiễu vào tập dữ liệu Việc xử lý các giá trị thiếu cần phải được cân nhắc và thực hiện một cách thận trọng, nếu không sẽ làm cho tri thức khai phá bị sai lệch [5]

Trong những năm gần đây, xử lý giá trị thiếu trong các CSDL khai phá

là đề tài thu hút sự quan tâm của nhiều nhà nghiên cứu và ứng dụng Tại nhiều trung tâm nghiên cứu trên thế giới có cả một bộ phận chuyên nghiên cứu về các phương pháp và xây dựng phần mềm xử lý giá trị thiếu trong các CSDL Hầu hết các phần mềm phân tích dữ liệu thống kê, khai phá dữ liệu và học máy đều có nội dung liên quan đến xử lý giá trị thiếu

Luận văn này trình bày các nghiên cứu của học viên về vấn đề xử lý giá trị thiếu trong các CSDL lớn phục vụ khai phá dữ liệu, khám phá tri thức Nội dung chính của luân văn gồm ba chương

Chương 1: Trình bày khái quát về khai phá dữ liệu và vấn đề giá trị thiếu

Chương 2: Trình bày một số phương pháp cơ bản, thường được sử dụng

xử lý giá trị thiếu

Chương 3: Trình bày một phương pháp mới, xử lý hiệu quả giá trị thiếu, phương pháp sử dụng phối hợp kỹ thuật khai phá luật kết hợp trong CSDL không đầy đủ với phương pháp k-láng giềng gần nhất

Trang 9

Với lượng dữ liệu tăng nhanh và khổng lồ như vậy, rõ ràng các phương pháp phân tích dữ liệu truyền thống sẽ không còn hiệu quả, gây tốn kém và dễ dẫn đến những kết quả sai lệch Để có thể khai phá hiệu quả các cơ sở dữ liệu (CSDL) lớn cần phải có những kỹ thuật mới: kỹ thuật khai phá dữ liệu (Data Mining)

Khai phá dữ liệu là một lĩnh vực khoa học mới xuất hiện, nhằm tự động hóa khai thác những thông tin, tri thức hữu ích, tiềm ẩn trong các CSDL lớn cho các tổ chức, doanh nghiệp, từ đó thúc đẩy khả năng sản xuất, kinh doanh, cạnh tranh của tổ chức, doanh nghiệp này Các kết quả nghiên cứu cùng với những ứng dụng thành công trong khám phá tri thức cho thấy khai phá dữ liệu là một lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có những ưu thế hơn hẳn so với các công cụ phân tích dữ liệu truyền thống

Tuy mới ra đời khoảng 20 năm, nhưng khai phá dữ liệu là lĩnh vực khoa học phát triển vô cùng nhanh chóng Do sự phát triển nhanh chóng cả về

Trang 10

phạm vi áp dụng lẫn các phương pháp tìm kiếm tri thức, đã có nhiều quan điểm khác nhau về khai phá dữ liệu Tuy nhiên, ở một mức độ trừu tượng nhất định, chúng ta định nghĩa khai phá dữ liệu như sau [6]:

Khai phá dữ liệu là quá trình tìm kiếm, phát hiện các tri thức mới, hữu ích tiềm ẩn trong cơ sở dữ liệu lớn

Khám phá tri thức trong CSDL (Knowledge Discovery in Databases – KDD) là mục tiêu chính của khai phá dữ liệu, do vậy hai khái niệm khai phá

dữ liệu và KDD được các nhà khoa học xem là tương đương nhau Thế nhưng, nếu phân chia một cách chi tiết thì khai phá dữ liệu là một bước chính trong quá trình KDD

Khám phá tri thức trong CSDL là lĩnh vực liên quan đến nhiều ngành như: Tổ chức dữ liệu, xác suất, thống kê, lý thuyết thông tin, học máy, CSDL, thuật toán, trí tuệ nhân tạo, tính toán song song và hiệu năng cao, Các kỹ thuật chính áp dụng trong khám phá tri thức phần lớn được thừa kế từ các ngành này

Quá trình khám phá tri thức có thể phân thành các công đoạn sau [6]:

Lựa chọn dữ liệu: Là bước tuyển chọn những tập dữ liệu cần được khai

phá từ các tập dữ liệu lớn (databases, data warehouses, data repositories) ban đầu theo một số tiêu chí nhất định

Tiền xử lý dữ liệu: Là bước làm sạch dữ liệu (xử lý dữ liệu thiếu, dữ

liệu nhiễu, dữ liệu không nhất quán, ), tổng hợp dữ liệu, rời rạc hóa dữ liệu, Biến đổi dữ liệu Đây được xem là bước quan trọng và tiêu tốn thời gian nhất của toàn bộ quá trình KDD Sau bước tiền sử lý này, dữ liệu sẽ nhất quán, đầy

đủ, được rút gọn và rời rạc hóa

Trang 11

Khai phá dữ liệu: Là bước áp dụng những kỹ thuật phân tích (phần

nhiều là các kỹ thuật học máy) nhằm khai thác dữ liệu, trích lọc những mẫu tin (information patterns), những mối quan hệ đặc biệt trong dữ liệu

Đánh giá tri thức và biểu diễn: Những mẫu thông tin và mối quan hệ

trong dữ liệu đã được phát hiện ở bước khai phá dữ liệu được đánh giá theo những tiêu chí nhất định và được biểu diễn ở dạng gần gũi với người sử dụng như đồ thị, cây, bảng biểu, luật,

Hình 1.1 dưới đây mô tả các công đoạn của KDD:

Hình 1.1 Các bước thực hiện của quá trình khai phá dữ liệu

Theo quan điểm của học máy (Machine Learning), thì các kỹ thuật khai phá dữ liệu bao gồm:

Học có giám sát (Supervised Learning): Là quá trình học luật phân lớp

các đối tượng dựa trên một tập dữ liệu có giám sát (supervised data set), tức là tập các ví dụ (các bộ dữ liệu) huấn luyện trong đó mỗi ví dụ có chứa thông tin

đã biết về các thuộc tính và nhãn lớp của một đối tượng

Trang 12

Học không có giám sát (Unsupervised Learning): Là quá trình học luật

phân chia một tập các đối tượng thành các cụm (clusters) tương tự nhau dựa trên một tập dữ liệu không có giám sát (unsupervised data set), tức là tập các

ví dụ huấn luyện chỉ chứa thông tin về các thuộc tính mà không có thông tin

về nhãn lớp của các đối tượng

Học nửa giám sát (Semi-Supervised Learning): Là quá trình học luật phân chia một tập các đối tượng thành các lớp dựa trên một tập nhỏ các ví dụ huấn luyện chứa thông tin về các thuộc tính và nhãn lớp của một số đối tượng

Nếu căn cứ vào nhiệm vụ cần giải quyết, thì khai phá dữ liệu bao gồm các kỹ thuật sau:

Phân lớp và dự đoán (classification and prediction): Là việc xếp các

đối tượng vào những lớp đã biết trước Ví dụ, phân lớp các loài thực vật, phân lớp các bệnh nhân, Hướng tiếp cận này thường sử dụng một số kỹ thuật của học máy như cây quyết định (decision tree), mạng nơ-ron nhân tạo (neural network),

Phân cụm (clustering/segmentation) : Là việc xếp các đối tượng theo

từng cụm tự nhiên

Luật kết hợp (association rules) : Là việc phát hiện các luật biểu diễn

tri thức dưới dạng đơn giản Ví dụ: “70% nữ giới vào siêu thị mua phấn thì có tới 80% trong số họ cũng mua thêm son”

Phân tích hồi quy (regression analysis) : Là việc học một hàm ánh xạ

một bộ dữ liệu thành một giá trị thực của đại lượng cần dự đoán Bài toán phân tích hồi quy tương tự như bài toán phân lớp, điểm khác nhau là ở chỗ đại lượng cần dự đoán là liên tục chứ không phải rời rạc như nhãn lớp

Trang 13

Phân tích các mẫu theo thời gian (sequential/temporal patterns) :

Tương tự như khai phá luật kết hợp nhưng có quan tâm đến tính thứ tự theo thời gian

Mô tả khái niệm và tổng hợp (concept description and summari-zation)

: Thiên về mô tả, tổng hợp và tóm tắt các khái niệm Ví dụ tóm tắt văn bản Hiện nay, các kỹ thuật khai phá dữ liệu có thể làm việc với rất nhiều kiểu

dữ liệu khác nhau Một số dạng dữ liệu điển hình là: CSDL quan hệ, CSDL giao tác, CSDL quan hệ hướng đối tượng, dữ liệu không gian và thời gian, CSDL đa phương tiện, dữ liệu văn bản và web,

Cho đến nay, khai phá dữ liệu đã và đang được ứng dụng rộng rãi trong nhiều lĩnh vực như: Phân tích dữ liệu hỗ trợ ra quyết định, Y học, Tin-sinh học (Bioinformatics), thương mại, tài chính, bảo hiểm, text mining, Rất nhiều tổ chức và công ty lớn trên thế giới đã và đang áp dụng thành công các

kỹ thuật khai phá dữ liệu vào hoạt động sản xuất, kinh doanh của mình và thu được những lợi ích to lớn Các công ty phần mềm lớn trên thế giới cũng rất quan tâm tới việc nghiên cứu và phát triển kỹ thuật khai phá dữ liệu: Oracle

đã tích hợp các công cụ khai phá dữ liệu vào bộ Oracle9i, IBM đã đi tiên phong trong việc phát triển các ứng dụng khai phá dữ liệu Các ứng dụng này được chia thành 3 nhóm: Phát hiện gian lận (fraud detection), hỗ trợ tiếp thị

và quản lý khách hàng, phát hiện và xử lý lỗi hệ thống mạng Bộ Khai phá thông minh (Intelligence Miner) là sản phẩm điển hình của IBM

Mặc dù nổi lên như là một lĩnh vực khoa học tiềm năng, phát triển rất nhanh chóng, nhưng khai phá dữ liệu cũng phải đối mặt với nhiều thách thức Các thách thức lớn thường được nhắc tới là:

- Số đối tượng cũng như số chiều (thuộc tính) trong cơ sở dữ liệu khai phá thường là rất lớn

Trang 14

- Dữ liệu và tri thức luôn thay đổi có thể làm cho các mẫu đã phát hiện không còn phù hợp

- Dữ liệu bị thiếu hoặc nhiễu

- Quan hệ phức tạp giữa các thuộc tính

- Giao tiếp với người sử dụng và kết hợp với các tri thức đã có

- Tích hợp với các hệ thống khác

1.2 Vấn đề dữ liệu thiếu trong cơ sở dữ liệu cần khai phá

Như đã nói, mục tiêu của khai phá dữ liệu và khám phá tri thức từ CSDL

là tìm kiếm, phát hiện ra các tri thức mới, hữu ích tiềm ẩn Tuy nhiên, cho dù

kỹ thuật nào được áp dụng đi nữa, các kết quả khai phá cũng sẽ phụ thuộc trực tiếp vào chất lượng dữ liệu Chất lượng dữ liệu chịu ảnh hưởng bởi nhiều yếu tố, trong đó việc xử lý các giá trị thuộc tính thiếu đóng vai trò vô cùng quan trọng

Trong các ứng dụng khai phá dữ liệu, CSDL cần khai phá thường không đầy đủ, tức là có những giá trị thuộc tính bị thiếu Có nhiều nguyên nhân khác nhau dẫn tới hiện tượng này: thiết bị thu thập dữ liệu bị hỏng, sự thay đổi thiết

kế thí nghiệm, sự từ chối cung cấp dữ liệu nhằm bảo vệ tính riêng tư, sự sơ xuất khi nhập dữ liệu, các sự cố xảy ra trong quá trình truyền dữ liệu Làm thế nào để xử lý các các giá trị thuộc tính thiếu là một nhiệm vụ quan trọng hàng đầu của quá trình khám phá tri thức từ cơ sở dữ liệu Loại bỏ tất cả các bộ dữ liệu có chứa giá trị thuộc tính thiếu sẽ làm mất thông tin, các đặc trưng ban đầu của CSDL Xem xét tình trạng nguyên thủy, sử dụng dữ liệu sẵn có để có thể gán các giá trị thiếu sẽ là cách làm tốt nhất Tuy nhiên, xác định giá trị thực của dữ liệu thiếu là công việc khó khăn

Cho đến nay, nhiều phương pháp xử lý giá trị thiếu đã được đề xuất và

áp dụng [5, 10, 12] Các phương pháp này cho phép xử lý trực tiếp các giá trị

Trang 15

thiếu, tuy nhiên chúng cũng có thể mang nhiễu vào tập dữ liệu Việc xử lý các giá trị thiếu cần phải được cân nhắc và thực hiện một cách thận trọng, nếu không sẽ làm cho tri thức khai phá bị sai lệch [5] Cho đến nay, xử lý giá trị thiếu trong các CSDL vẫn là đề tài thu hút sự quan tâm của nhiều nhà nghiên cứu và ứng dụng Tại nhiều trung tâm nghiên cứu trên thế giới có cả một bộ phận chuyên nghiên cứu về các phương pháp và xây dựng phần mềm xử lý giá trị thiếu trong các CSDL; chẳng hạn, Medical Statistics Unit, London School of Hygiene and Tropical Medicine London, United Kingdom - http://missingdata.lshtm.ac.uk/index.html; Webmaster team of SCI2S, Soft

Computing and Intelligent Information Systems, http://sci2s.ugr.es/MVDM/ Hầu hết các phần mềm phân tích dữ liệu thống kê, khai phá dữ liệu và học máy đều có nội dung liên quan đến xử lý giá trị thiếu

Một nhiệm vụ vô cùng quan trọng khi xây dựng một phương pháp xử lý giá trị thiếu là phải hiểu được cơ chế sinh ra các giá trị thiếu trong CSDL cần khai phá Nắm bắt được cơ chế sinh ra giá trị thiếu trong một tình huống cụ thể sẽ giúp xây dựng được một phương pháp xử lý thích hợp và hiệu quả Theo các nhà thống kê toán học, sự xuất hiện các giá trị thiếu trong một CSDL có thể phân thành ba trường hợp theo tính ngẫu nhiên như sau [3, 5]:

Trường hợp 1: Thiếu hoàn toàn ngẫu nhiên (Missing Completely At

Random – MCAR) Đây là mức độ ngẫu nhiên cao nhất Trường hợp này xảy

ra khi xác suất một giá trị của thuộc tính bị thiếu không phụ thuộc vào các giá trị đã biết cũng như bản thân giá trị bị thiếu Trong trường hợp này, bất kỳ phương pháp xử lý giá trị thiếu nào đều có thể được áp dụng mà không phải chịu sự rủi ro làm sai lệch dữ liệu

Về trực giác, có thể minh họa trường hợp MCAR bằng hình 1.2 dưới đây

Trang 16

Hình 1.2 Phân bố giá trị thiếu trong trường hợp 1

Trường hợp 2: Thiếu ngẫu nhiên (Missing At Random – MAR) Đó là

khi xác suất xuất hiện một giá trị thiếu tại một thuộc tính có thể phụ thuộc vào các giá trị đã biết, nhưng không phụ thuộc vào bản thân giá trị bị thiếu

Về trực giác, có thể minh họa trường hợp MAR bằng hình 1.3 dưới đây

Hình 1.3 Phân bố giá trị thiếu trong trường hợp 2

Trường hợp 3: Thiếu không ngẫu nhiên (Not Missing At Random –

NMAR): khi xác suất xuất hiện một giá trị thiếu tại một thuộc tính phụ thuộc vào giá trị của thuộc tính đó

Về trực giác, có thể minh họa trường hợp NMAR bằng hình 1.4 dưới đây

Hình 1.4 Phân bố giá trị thiếu trong trường hợp 3

Trang 17

Trước khi thực hiện một nhiệm vụ khai phá dữ liệu, người khai phá cần lựa chọn một phương pháp thích hợp cho việc xử lý các giá trị thiếu Và để làm được việc này, một công việc quan trọng là cần tìm hiểu kỹ lưỡng về cơ chế xuất hiện các giá trị thiếu trong CSDL Để có thể hình dung được hiện trạng phân bố của các thiếu giá trị trong một tập dữ liệu, người ta thường sử dụng một chương trình có khả năng mô tả được phân bố này Hình 1.5 dưới đây là kết quả

mô tả phân bố giá trị thiếu trong tập dữ liệu edu.data của kho dữ liệu UCI, (sử

dụng phần mềm của Webmaster team of SCI2S, http://sci2s.ugr.es/MVDM/)

Hình 1.5 Kết quản mô tả phân bố giá trị thiếu trong tập dữ liệu edu.data của UCI

Để khai phá CSDL không đầy đủ, có hai cách tiếp cận Cách thứ nhất chuyển đổi CSDL không đầy đủ thành CSDL đầy đủ trước khi khai phá bằng việc thực hiện các kỹ thuật tiền xử lý Các phương pháp xử lý giá trị thiếu theo cách tiếp cận này được gọi là các phương pháp thay thế trước (Prereplacing Methods) hay các phương pháp ngoại trú (External Methods) Cách thứ hai là chấp nhận sự hiện diện các giá trị thuộc tính thiếu, xây dựng

Trang 18

các kỹ thuật thích hợp khám phá tri thức trực tiếp từ CSDL không đầy đủ Các phương pháp theo cách tiếp cận này được gọi là các phương pháp nhúng (Embeded Methods) hay các phương pháp nội trú (Internal Methods) Như vậy, các phương pháp thay thế trước sẽ thực hiện việc lấp đầy các giá trị thiếu trước khi thực hiện nhiệm vụ khai phá dữ liệu, còn các phương pháp nhúng xử

lý giá trị thiếu trong khi thực hiện khai phá dữ liệu

Phần lớn các kỹ thuật khai phá dữ liệu hiện nay không có phương pháp xử

lý giá trị thiếu nhúng trong chúng, ngoại trừ một vài phương pháp phân loại, như thuật toán phân lớp bằng cây quyết định C4.5 [Quinlan, 1993] và CART [Breiman, 1984], … Ngược lại, cho đến nay nhiều phương pháp thay thế trước đã được đề xuất và áp dụng Tuy nhiên, vẫn chưa có sự rõ ràng, phương pháp nào nên được sử dụng cho mỗi ứng dụng Đặc biệt, một vấn đề mang tính quyết định, là làm thế nào để có thể xử lý giá trị thiếu trong một CSDL dữ liệu khổng lồ

Các phương pháp thay thế trước được chia làm hai loại:

- Các phương pháp thống kê (statistical methods)

- Các phương pháp học máy (Machine learning methods)

Các phương pháp thống kê thay thế các giá trị thiếu dựa trên việc ước lượng các đặc trưng thóng kê của thuộc tính Các phương pháp học máy xử lý các giá trị thiếu bằng cách sử dụng cách tiếp cận học máy Các phương pháp học máy thường phức tạp hơn các phương pháp thống kê nhưng cho độ chính xác cao hơn

Để đánh giá một phương pháp xử lý giá trị thiếu, người ta xét tới các khía cạnh sau:

1 Có thể áp dụng đối với loại thuộc tính nào

Trang 19

2 Có thể áp dụng cho trường hợp phân bổ giá trị thiếu nào

3 Chi phí tính toán (computation cost)

4 Chất lượng dữ liệu thu được sau khi xử lý

Chất lượng dữ liệu được đánh giá thông qua chất lượng tri thức thu được khi áp dụng các kỹ thuật khai phá

Nhìn chung, hiện nay các nhà nghiên cứu và ứng dụng quan tâm nhiều hơn đến các phương pháp thay thế trước Các phương pháp này xử lý các giá trị thiếu trong CSDL độc lập với các kỹ thuật khai phá dữ liệu Với các CSDL đầy

đủ, đảm bảo chất lượng thu được sau khi áp dụng các kỹ thuật thay thế trước, người ta có thể áp dụng bất kỳ một kỹ thuật khai phá dữ liệu nào

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

Khai phá dữ liệu là một lĩnh vực khoa học mới xuất hiện, nhằm tự động hóa việc khai thác những thông tin, tri thức hữu ích, tiềm ẩn trong các CSDL lớn, giúp chúng ta giải quyết tình trạng dữ liệu ngày một gia tăng trong những năm gần đây Các kết quả nghiên cứu lý thuyết cùng với những ứng dụng thành công các kỹ thuật khai phá dữ liệu trong nhiều lĩnh vực kinh tế, xã hội cho thấy khai phá dữ liệu là một lĩnh vực khoa học tiềm năng, mang lại nhiều lợi ích, đồng thời có ưu thế hơn hẳn so với các công cụ phân tích dữ liệu truyền thống

Một trong số các thách thức chủ yếu đối với việc nghiên cứu và áp dụng các kỹ thuật khai phá dữ liệu là vấn đề xử lý giá trị thuộc tính thiếu trong các

cơ sở dữ liệu Do nhiều nguyên nhân khác nhau, các CSDL cần khai phá thường không đầy đủ Cho dù kỹ thuật nào được áp dụng đi nữa, việc xử lý các giá trị thuộc tính thiếu đóng vai trò vô cùng quan trọng, ảnh hưởng trực tiếp đến chất lượng tri thức khai phá

Trang 20

Chương 1 luận văn đã trình bày khái quát về khai phá dữ liệu, tóm tắt quá trình khai phá, các kỹ thuật, các ứng dụng và những thách thức; vấn đề giá trị thiếu trong CSDL khai phá, cơ chế sinh ra giá trị thiếu, các phương pháp tiếp cận và phân loại các phương pháp xử lý

Chương 2 tiếp theo của luận văn sẽ nghiên cứu một số phương pháp cơ bản, thường được sử dụng xử lý giá trị thiếu

Trang 21

CHƯƠNG 2

CÁC PHƯƠNG PHÁP CƠ BẢN XỬ LÝ GIÁ TRỊ THIẾU

Như đã nói trong chương 1, hiện nay có nhiều phương pháp xử lý dữ liệu thiếu đã được đề xuất Tuy nhiên, các nghiên cứu lý thuyết và ứng dụng cho thấy, không có kỹ thuật nào được coi là tốt nhất Như Allison [6] đã nói “Giải pháp thực sự tốt cho vấn đề dữ liệu thiếu là không có gì”, (“The only really

good solution to the missing data problem is not to have any”) Các tình huống khác nhau đòi hỏi những giải pháp khác nhau Vì vậy, nghiên cứu các

ưu điểm, nhược điểm của mỗi phương pháp trong việc giải quyết một vấn đề khai phá dữ liệu cụ thể, từ đó có sự lựa chọn thích hợp là việc cần thiết

Nội dung Chương 2 này bao gồm:

- Trình bày một số phương pháp cơ bản cho việc xử lý dữ liệu thiếu, nêu những ưu điểm, nhược điểm của chúng;

- Thực hiện tính toán thực nghiệm trên một số tập dữ liệu có giám sát có các giá trị thiếu, lấy từ kho dữ liệu UCI [16] Mục đích tính toán thực nghiệm

là để so sánh hiệu năng của các phương pháp trình bày, thông qua thời gian làm đầy các giá trị thiếu và tỷ lệ lỗi phân lớp khi áp dụng một thuật toán phân lớp trên tập dữ liệu đầy đủ thu được Thuật toán phân lớp sử dụng là thuật toán cây quyết định C4.5

2.1 Các phương pháp thống kê

2.1.1 Phương pháp Trung bình-Mốt (Mean-Mode - MM)

Cho CSDL DBo o1, 2, , o N gồm N đối tượng, trong đó mỗi đối tượng được mô tả bằng M thuộc tính X X1, 2, ,X Ký hiệu M x là giá trị của i j thuộc tính thứ j ( X j) tại đối tượng thứ i ( ) o , với i 1 i N và 1 j M )

Trang 22

Đối tượng o được gọi là đầy đủ nếu i x i j   với mọi j1, ,M, trường hợp ngược lại o được gọi là không đầy đủ Với đối tượng i o , nếu i x i j   thì

ta nói đối tượng o có giá trị thuộc tính i X bị thiếu Với thuộc tính j X , nếu j

i j

x   thì ta nói thuộc tính X bị thiếu giá trị tại đối tượng j o i

Phương pháp Trung bình-Mốt áp dụng cho cả thuộc tính định lượng lẫn thuộc tính định tính Ý tưởng của phương pháp này là sử dụng giá trị trung bình khi thuộc tính là thuộc tính định lượng và mode (giá trị có tần số xuất hiện lớn nhất) khi thuộc tính là định tính, trong toàn bộ tập dữ liệu, để làm đầy các giá trị thiếu [5, 6] Các bước của phương pháp này là như sau (Hình 2.1)

Hình 2.1 Thuật toán MM

Phương pháp Trung bình-Mốt là một trong những phương pháp thường được sử dụng nhất Ưu điểm nổi trội của phương pháp Trung bình-Mốt là đơn giản, chi phí thời gian thực hiện thấp và có thể áp dụng cho cả thuộc tính định lượng lẫn thuộc tính định tính

Hai nhược điểm của phương pháp Trung bình-Mốt là:

- Việc sử dụng một hằng số (giá trị trung bình hay mốt) để thay thế giá trị thiếu sẽ có thể làm thay đổi đặc trưng của tập dữ liệu thực

1 Với mỗi thuộc tính có chứa giá trị thiếu

2 Nếu thuộc tính là định lượng, tính toán giá trị trung bình từ tất cả các giá trị không thiếu

3 Trái lại, nếu thuộc tính là định tính, đếm số lần xuất hiện và xác định giá trị xuất hiện với tần suất cao nhất

4 Thay thế giá trị thiếu bằng giá trị vừa tính toán được

Trang 23

- Không tính đến mối quan hệ giữa các thuộc tính, điều này có thể dẫn đến các kết quả khai phá dữ liệu (chẳng hạn khai phá luật kết hợp) bị sai lệch

- Nếu trong số các giá trị đã biết của thuộc tính có giá trị bất thường, nó

sẽ ảnh hưởng lớn tới giá trị trung bình, từ đó tạo ra sự sai lệch không đáng có đối với các giá trị thiếu được thay thế

2.1.2 Phương pháp Trung bình-Mốt dựa vào cụm tự nhiên

(Natural Cluster Based Mean-Mode - NCBMM)

Phương pháp Trung bình-Mốt dựa vào cụm tự nhiên là một biến thể của phương pháp Trung bình-Mốt Nó có thể được áp dụng để gán giá trị thiếu cho

cả thuộc tính định lượng và định tính trong tập dữ liệu có giám sát (tức là tập

dữ liệu trong đó mỗi đối tượng đều được gán một nhãn lớp) Trước tiên, người

ta phân chia tập dữ liệu thành các cụm, sao cho các bộ dữ liệu trong cùng một

cụm đều có nhãn lớp như nhau, (như vậy số cụm được tạo ra sẽ bằng số nhãn

lớp khác nhau có trong tập dữ liệu) Sau đó, trong mỗi cụm, giá trị trung bình (mean) được sử dụng để gán trị cho các giá trị thiếu của mỗi thuộc tính số, giá trị mode được sử dụng để lấp đầy các giá trị thiếu của mỗi thuộc tính biểu tượng Nội dung phương pháp NCBMM được mô tả trong Hình 2.2 [5]

4 Với mỗi thuộc tính định tính tìm giá trị có tần số cao nhất (mode)

5 Thay các giá trị thiếu bằng giá trị trung bình hoặc mốt tương ứng

Trang 24

nó cũng những ưu và nhược điểm như phương pháp MM Tuy nhiên, thời gian thực hiện lâu hơn và để thu được các ước lượng tốt cho các giá trị thiếu, số bộ

dữ liệu trong các cụm phân theo nhãn lớp phải đủ lớn (lớn hơn 30)

2.1.3 Thay giá trị thiếu bằng giá trị cho cùng độ lệch chuẩn (Replacement Under Same Standard Deviation - RUSSD)

Phương pháp này áp dụng cho thuộc tính định lượng Ý tưởng của phương

pháp này là khôi phục tất cả các giá trị thiếu bằng một giá trị không làm thay đổi

độ lệch chuẩn s của thuộc tính [Pyle, 1999] Nội dung phương pháp này được

mô tả trong hình 2.3 [5, 6]

Hình 2.3 Thuật toán RUSD

Phương pháp RUSSD nhằm tránh thay thế giá trị thiếu bằng một giá trị

lạ, gây xáo trộn lớn đối với phân bố giá trị của thuộc tính Tuy vậy, việc tìm kiếm một giá trị không làm thay đổi độ lệch chuẩn của thuộc tính có thể sẽ tiêu tốn nhiều thời gian Hơn nữa, sử dụng một hằng số để thay thế tất cả các giá trị thiếu cũng có thể làm thay đổi đặc trưng của tập dữ liệu thực

2.1.4 Hồi quy tuyến tính (Linear regression – LR)

Khi hai thuộc tính định lượng nào đó có mối quan hệ tuyến tính với nhau, chúng ta có thể xây dựng một phương trình hồi quy tuyến tính, trong đó thuộc

1 Với mỗi thuộc tính định lượng có chứa giá trị thiếu

2 Tính toán độ lệch chuẩn SD1 từ tất cả các giá trị không thiếu

3 Thử giá trị sv bất kỳ đầu tiên (giá trị bổ sung thêm)

4 Tính toán giá trị trung bình và độ lệch chuẩn SDa từ tất cả các giá trị không thiếu và giá trị sv vừa thêm vào thay cho các giá trị thiếu

5 Nếu SDa khác SD1, lặp lại bước (3) và (4) bằng cách thay giá trị sv mới

6 Thay thế các giá trị thiếu trong thuộc tính đó bằng giá trị sv mới

Trang 25

tính có giá trị thiếu là biến phụ thuộc, biến còn lại là biến độc lập và sử dụng phương trình hồi quy cho việc dự đoán các giá trị thiếu của biến phụ thuộc thông qua các giá trị đã biết của biến độc lập [19]

Phương pháp hồi quy tuyến tính thường gặp phải hai vấn đề Vấn đề thứ nhất, mô hình quan hệ giữa các thuộc tính có phải tuyến tính không Nếu mối quan hệ này là không tuyến tính, các giá trị thiếu ước lượng được có thể bị sai lệch lớn so với các giá trị thực Vấn đề thứ hai, thường thì trong cùng một bộ

dữ liệu, các thuộc tính có quan hệ chặt với thuộc tính có giá trị thiếu cũng có giá trị thiếu

2.2 Các phương pháp học máy

2.2.1 Phương pháp Trung bình-Mốt dựa vào cụm sinh bởi thuộc tính gần nhất (Attribute Rank Cluster Based Mean-Mode algorithm - RCBMM)

RCBMM có thể được áp dụng để gán trị cho các giá trị thiếu của các thuộc tính định tính trong tập dữ liệu có giám sát hoặc không có giám sát Trước tiên, với một thuộc tính định tính có giá trị thiếu, phương pháp này tính khoảng cách giữa nó tới mỗi thuộc tính định tính khác trong tập dữ liệu Xác định thuộc tính gần nhất (có khoảng cách nhỏ nhất) Thứ hai, căn cứ vào giá trị của thuộc tính gần nhất, phân chia tập dữ liệu thành các cụm, sao cho các bộ dữ liệu trong cùng một cụm phải có cùng một giá trị Thứ ba, giá trị mode của mỗi cụm được sử dụng để lấp đầy các giá trị thiếu Quá trình này được áp dụng cho mỗi thuộc tính có giá trị thiếu Nội dung phương pháp RCBMM được mô tả trong hình 2.4 [5,6]

Trang 26

Hình 2.4 Thuật toán RCBMM

Có nhiều phương pháp tính toán khoảng cách giữa các thuộc tính định tính Một phương pháp thường được sử dụng là phương pháp áp dụng khoảng cách Mantaras [18]

card  b là số đối tượng nhận giá trị Bb j, j1,2, ,q

Coi A và B là hai biến ngẫu nhiên rời rạc với phân bố xác suất tương ứng:

1 Với mỗi thuộc tính định tính ai có giá trị thiếu

2 Sắp thứ tự tất cả các thuộc tính định tính khác theo khoảng cách đến ai

Trang 27

Khi đó khoáng cách Mantaras giữa A và B được định nghĩa bởi:

(Entropy đồng thời của A và B)

Nhìn chung, RCBMM là phương pháp cho độ chính xác cao hơn các phương pháp thống kê Tuy nhiên, RCBMM đòi hỏi một khối lượng tính toán nhiều hơn Hơn nữa, cũng giống như phương pháp hồi quy, việc xác định thuộc tính gần nhất đối với thuộc tính có giá trị thiếu, nhiều khi là một công việc khó thực hiện

2.2.2 Phương pháp Trung bình – Mốt dựa vào phân cụm Means (K-means clustering based Mean - Mode - KMCMM)

k-KMCMM có thể được áp dụng để điền đầy các giá trị thiếu cho các thuộc tính định lượng không phụ thuộc vào nhãn lớp Vì vậy, nó có thể được áp dụng cho cả dữ liệu có giám sát và dữ liệu không có giám sát Nội dung phương pháp KMCMM được mô trong hình 2.5 [5,6]

Trang 28

Hình 2.5 Thuật toán KMCMM

Hệ số tương quan

Giả sử có hai thuộc tính định lượng X và Y và trong tập dữ liệu, có n cặp

dữ liệu về X và Y là ( ,x y1 1),( ,x y2 2), ,( ,x y Khi đó hệ số tương quan giữa n n)

X và Y được tính theo công thức:

XY XY

XX YY

S r

n

  ,

1 Với mỗi thuộc tính định lượng có giá trị thiếu a i

2 Sắp thứ tự tất cả thuộc tính định lượng khác theo giá trị tuyệt đối tăng dần của hệ số tương quan giữa mỗi thuộc tính với a i

3 Sử dụng thuật toán K-means phân tất cả các bộ dữ liệu của tập dữ liệu thành các cụm dựa vào giá trị của thuộc tính a có hệ số tương quan h

Trang 29

1

1 n i i

n

 

Thuật toán phân cụm k-means [6]

Thuật toán K-means là thuật toán phân cụm các đối tượng dựa trên các thuộc tính định lượng Thuật toán phân cụm k-means thực hiện như sau: Trước

tiên, thuật toán lựa chọn ngẫu nhiên k đối tượng Các giá trị thuộc tính a của k h đối tượng này sẽ là k giá trị trung bình đầu tiên của k cụm Mỗi đối tượng còn

lại sẽ được gán vào một cụm gần nhất theo khoảng cách giữa đối tượng đó tới giá trị trung bình của cụm Sau đó, thuật toán tính toán giá trị trung bình mới của mỗi cụm Quá trình này lặp lại cho tới khi tiêu chuẩn dừng thỏa mãn Tiêu

chuẩn dừng thường được sử dụng là tổng sai số bình phương E, xác định bởi:

Tiêu chuẩn này nhằm tạo ra sự khác biệt lớn nhất có thể được giữa các đối tượng trong các cụm Nội dung của phương pháp phân cụm được mô trong hình 2.6

Hình 2.6 Thuật toán phân cụm k-means

Cũng như phương pháp RCBMM, phương pháp KMCMM là phương pháp học máy, cho độ chính xác cao hơn các phương pháp thống kê Tuy nhiên, KMCMM đòi hỏi một khối lượng tính toán khá lớn Hơn nữa, việc xác định thuộc tính tương quan mạnh với thuộc tính có giá trị thiếu và số cụm k

1 Chọn ngẫu nhiên k đối tượng làm trung tâm ban đầu của k cụm

Trang 30

để phân cụm các giá trị nhiều khi cũng là những công việc khó thực hiện

2.2.3 Phương pháp k-láng giềng gần nhất (k-Nearest Neighbors – kNN)

Phương pháp này sử dụng k bộ dữ liệu gần nhất đối với bộ dữ liệu có giá trị thiếu - láng giềng gần nhất (k-Nearest Neighbours) để ước lượng giá trị thiếu Trường hợp k = 1 được gọi là phương pháp láng giềng gần nhất Nội dung phương pháp kKMCMM được mô trong hình 2.7 [3, 5]

Cho hai bộ dữ liệu I i (x x i1, i2, ,x i m) và I j (x j1,x j2, ,x j m) trong

CSDL có m thuộc tính X X1, 2, ,X Khoảng cách giữa m I và i I được tính j

1 Với mỗi bộ dữ liệu I có chứa giá trị thiếu; i

2 Với mỗi bộ dữ liệu I không chứa giá trị thiếu; j

3 Tính toán khoảng cách distance I I( , )i j giữa I và i I ; j

4 Lựa chọn k bộ dữ liệu gần I nhất (k láng giềng gần nhất); i

5 Thay thế mỗi giá trị thiếu trong I bằng giá trị trung bình (trường hợp i

thuộc tính định lượng) hay giá trị xuất hiện thường xuyên nhất (trường hợp thuộc tính định tính) trong số các giá trị tương ứng của k-láng giềng gần nhất

Trang 31

neu x x x thieu x thieu

Ix x x x x = (102.6, yes, yes, yes, ?)

và giả sử maximum và minimum của các giá trị đã biết của thuộc tính định lượng X lần lượt là 102.6 và 96.4 Khi đó 1

Ưu điểm chính của k-láng giềng gần nhất là:

- Có thể gán giá trị thiếu cho cả giá trị thiếu của thuộc tính số lẫn thuộc tính biểu tượng với độ chính xác cao

- Không cần phải xây dựng mô hình dự đoán giá trị cho mỗi thuộc tính

có dữ liệu thiếu Thật vậy, phương pháp k-láng giềng gần nhất không xây dựng mô hình tường minh (phương trình hồi quy hoặc một cây quyết định,

Trang 32

…) để dự đoán giá trị thiếu, mà chỉ sử dụng tập dữ liệu đã cho Do đó, thuật toán k-láng giềng gần nhất có thể dễ dàng áp dụng cho việc dự đoán giá trị thiếu của bất kỳ thuộc tính nào, chỉ cần lựa chọn một metric thích hợp sử dụng trong tính toán khoảng cách giữa các bộ dữ liệu Phương pháp k-láng giềng gần nhất còn cho phép xử lý giá trị thiếu trong trường hợp có nhiều giá trị thiếu trong một bộ dữ liệu

Hạn chế lớn nhất của phương pháp k-láng giềng gần nhất là để xác định

k bộ dữ liệu tương tự nhất, thuật toán sẽ phải tìm kiếm trong toàn bộ tập dữ liệu Việc này có thể trở thành không khả thi nếu tập dữ liệu có kích thước rất

lớn, một tình huống thường gặp phải trong khai phá dữ liệu

Phương pháp loại bỏ các bộ dữ liệu có chứa giá trị thiếu có ưu điểm là đơn giản, ít tốn thời gian hơn bất kỳ phương pháp nào khác Nhưng nó lại có

có hai điểm hạn chế quan trọng Thứ nhất, nếu chúng ta áp dụng vào trong thực tế có thể gây mất mát nhiều dữ liệu Ví dụ, giả sử cơ sở dữ liệu cần khai

Trang 33

phá có 40 thuộc tính và 1000 bộ dữ liệu; xác suất một bộ dữ liệu có ít nhất một giá trị thuộc tính bị thiếu là 0.80%, khi đó nếu áp dụng phương pháp Loại

bỏ các bộ dữ liệu có chứa giá trị thiếu thì chúng ta chỉ có thể sử dụng 200 bộ

dữ liệu Vấn đề thứ hai là nếu phân bố dữ liệu thiếu trong tập dữ liệu không thuộc trường hợp 1 (MCAR) thì việc loại bỏ tất cả các bộ dữ liệu có giá trị thiếu sẽ làm sai lệch nghiêm trọng kết quả khai phá [12]

2.3.2 Phương pháp C4.5

C4.5 là một thuật học rất quen thuộc trong khai phá dữ liệu và học máy

do J R Quinlan đề xuất [20], nhằm giải bài toán phân lớp bằng cách xây dựng cây quyết định Cây quyết định là một cấu trúc cây, biểu diễn một vấn

đề quyết định Mỗi nút trong (không phải nút lá) gắn với một thuộc tính điều kiện, mỗi nhánh đi ra từ một nút trong gắn với một giá trị của thuộc tính điều kiện tương ứng, mỗi nút lá gắn với một giá trị thuộc tính quyết định (nhãn lớp) Cây quyết định được xây dựng dựa trên một tập dữ liệu huấn luyện bao gồm các đối tượng mẫu Mỗi đối tượng được mô tả bởi một tập giá trị các thuộc tính và nhãn lớp Để xây dựng cây quyết định, tại mỗi nút trong cần xác định một thuộc tính thích hợp để kiểm tra, phân chia dữ liệu thành các tập con Quá trình xây dựng một cây quyết định bắt đầu bằng một cây rỗng, toàn

bộ tập mẫu huấn luyện và là như sau:

1 Nếu tại nút hiện thời, tất cả các đối tượng huấn luyện đều thuộc vào một lớp nào đó thì cho nút này thành nút lá có tên là nhãn lớp chung của các đối tượng

2 Trường hợp ngược lại, sử dụng một độ đo, chọn thuộc tính điều kiện phân chia tốt nhất tập mẫu huấn luyện có tại nút

3 Tạo một lượng nút con của của nút hiện thời bằng số các giá trị khác nhau của thuộc tính được chọn Gán cho mỗi nhánh từ nút cha đến nút con

Ngày đăng: 25/11/2014, 17:14

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] R. Agrawal, H. Mannila, R. Srikant, H. Toivonen, A.I. Verkamo, Fast discovery of association rules, Advances in Knowledge Discovery and Data Mining, MIT Press, Cambridge, MA, 1996 pp. 307–328 Sách, tạp chí
Tiêu đề: Fast discovery of association rules, Advances in Knowledge Discovery and Data Mining
[2] R. Agrawal, T. Imielinski, A. Swami, Mining association rules between sets of items in large databases, in: Proceedings of the ACM SIGMOD Conference on Management of Data, Washington, DC, USA, 1993, pp.207–216 Sách, tạp chí
Tiêu đề: Proceedings of the ACM SIGMOD Conference on Management of Data
[3] G. Batista and M. Monard, “K-Nearest Neighbour as Imputation Method: Experimental Results”, Tech. Report 186 ICMC-USP, 2002 Sách, tạp chí
Tiêu đề: K-Nearest Neighbour as Imputation Method: Experimental Results
[4] P. Ciaccia, M. Patella, and P. Zezula. M-tree: An Efficient Access Method for Similarity Search in Metric Spaces. In VLDB’97, pages 426–435, 1997 Sách, tạp chí
Tiêu đề: VLDB’97
[6] J. Han, & M. Kamber, Data Mining: Concepts and Techniques, Morgan Kaufmann Publishers, 2001 Sách, tạp chí
Tiêu đề: Data Mining: Concepts and Techniques
[7] H. Hu and J. Li, Using Association Rules to Make Rule-based Classi- fiers Robust, Proc. of 16 th Australasian Database Conference (ADC), 2005 Sách, tạp chí
Tiêu đề: Proc. of 16"th" Australasian Database Conference (ADC
[9] K. Lakshminarayan, S.A. Harp, R. Goldman, T. Samad, Imputation of missing data using machine learning techniques, Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD-96), Portland, USA, MIT Press, Cambridge, MA, 1996 pp. 140–146 Sách, tạp chí
Tiêu đề: Proceedings of the Second International Conference on Knowledge Discovery and Data Mining (KDD-96)
[10] K. Lakshminarayan, S. A. Harp, and T. Samad. Imputation of Missing Data in Industrial Databases. Applied Intelligence, 11:259–275, 1999 Sách, tạp chí
Tiêu đề: Applied Intelligence
[11] R. J. Little and D. B. Rubin. Statistical Analysis with Missing Data. John Wiley and Sons, New York, 1987 Sách, tạp chí
Tiêu đề: Statistical Analysis with Missing Data
[12] W.Z. Liu, A.P.White, S.G. Thompson, M.A. Bramer, Techniques for dealing with missing values in classification, in: Second International Symposium on Intelligent Data Analysis, London, UK, 1997 Sách, tạp chí
Tiêu đề: Second International Symposium on Intelligent Data Analysis
[13] R. J. Little and D. B. Rubin. Statistical Analysis with Missing Data. John Wiley and Sons, New York, 1987 Sách, tạp chí
Tiêu đề: Statistical Analysis with Missing Data
[15] K.C. Lee, , J.S. Park, Y.S. Kim, and Y.T. Byun, Missing Value Estima- tion Based on Dynamic Attribute Selection. In proceedings of the PAKDD 2000, pp. 134-137, 2000 Sách, tạp chí
Tiêu đề: proceedings of the PAKDD
[17] H. Mannila, Data mining: machine learning, statistics, and databases. Eight International Conference on Scientific and Statistical Database Management, Stockholm June 18-20, 1996, p. 1-8, 1996 Sách, tạp chí
Tiêu đề: Eight International Conference on Scientific and Statistical Database Management
[19] D. Pyle, Data Preparation for Data Mining. Morgan Kaufmann Publi- shers, Inc, 1999 Sách, tạp chí
Tiêu đề: Data Preparation for Data Mining
[20] J.R. Quinlan, Induction of decision trees. Machine Learning, 1, 81- 106, 1986 Sách, tạp chí
Tiêu đề: Machine Learning
[21] A. Ragel, B. Crémilleux, Treatment of missing values for association rules, Proceedings of The Second Pacific-Asia Conference on Know- ledge Discovery and Data Mining (PAKDD-98), Melbourne, Australia, Lecture Notes in Artificial Intelligence 1394, Springer, Berlin, 1998 pp.258–270 Sách, tạp chí
Tiêu đề: Proceedings of The Second Pacific-Asia Conference on Know-ledge Discovery and Data Mining
[22] A.P. White, Probabilistic induction by dynamic path generation in virtual trees. In Research and Development in Expert Systems III , edited by M.A. Bramer, pp. 35-46. Cambridge: Cambridge University Press, 1987 Sách, tạp chí
Tiêu đề: Research and Development in Expert Systems III
[16] C. J. Merz and P. M. Murphy. UCI Repository of Machine Learning Datasets, 1998. http://www.ics.uci.edu/ mlearn/MLRepository.html Link
[5] J. W. Grzymala-Busse and M. Hu, A comparison of several approaches to missing attribute values in data mining. Proceedings of the Second International Conference on Rough Sets and Current Trends in Computing RSCTC'2000, October 16–19, 2000, Canada, 340–347 Khác
[8] R. Kohavi, D. Sommerfield, and J. Dougherty. Data Mining using MLC++: A Machine Learning Library in C++. Tools with Artificial Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.1 dưới đây mô tả các công đoạn của KDD: - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 1.1 dưới đây mô tả các công đoạn của KDD: (Trang 11)
Hình 1.3. Phân bố giá trị thiếu trong trường hợp 2  Trường  hợp  3:  Thiếu  không  ngẫu  nhiên  (Not  Missing  At  Random  – - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 1.3. Phân bố giá trị thiếu trong trường hợp 2 Trường hợp 3: Thiếu không ngẫu nhiên (Not Missing At Random – (Trang 16)
Hình 1.5. Kết quản mô tả phân bố giá trị thiếu trong tập dữ liệu edu.data của UCI - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 1.5. Kết quản mô tả phân bố giá trị thiếu trong tập dữ liệu edu.data của UCI (Trang 17)
Hình 2.4. Thuật toán RCBMM - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 2.4. Thuật toán RCBMM (Trang 26)
Hình 2.5. Thuật toán KMCMM - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 2.5. Thuật toán KMCMM (Trang 28)
Bảng 2.8. Đánh giá về mặt lý thuyết 10 phương pháp xử lý giá trị thiếu - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.8. Đánh giá về mặt lý thuyết 10 phương pháp xử lý giá trị thiếu (Trang 38)
Bảng 1.9  Các tập dữ liệu có chứa giá trị thiếu trên thuộc tính định lƣợng - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 1.9 Các tập dữ liệu có chứa giá trị thiếu trên thuộc tính định lƣợng (Trang 39)
Bảng 2.11.  Các tập dữ liệu có giá trị thiếu trên cả thuộc tính định lƣợng và định tính - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.11. Các tập dữ liệu có giá trị thiếu trên cả thuộc tính định lƣợng và định tính (Trang 40)
Bảng 2.13.  hời gian thực thi việc thay thế trên tập dữ liệu định tính (phút:giây) - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.13. hời gian thực thi việc thay thế trên tập dữ liệu định tính (phút:giây) (Trang 41)
Bảng 2.12.  Thời gian thực thi việc thay thế trên tập dữ liệu định lƣợng (phút:giây) - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.12. Thời gian thực thi việc thay thế trên tập dữ liệu định lƣợng (phút:giây) (Trang 41)
Bảng 2.14.  Thời gian thực thi việc thay thế trên tập dữ liệu hỗn hợp (phút:giây) - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.14. Thời gian thực thi việc thay thế trên tập dữ liệu hỗn hợp (phút:giây) (Trang 42)
Bảng 2.15.  Tỷ lệ lỗi phân lớp trên tập dữ liệu định lƣợng (%) - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.15. Tỷ lệ lỗi phân lớp trên tập dữ liệu định lƣợng (%) (Trang 42)
Hình 2.8. Tỷ lệ lỗi của mỗi phương pháp trên tập dữ liệu định lượng - xử lý giá trị thiếu trong khai phá dữ liệu
Hình 2.8. Tỷ lệ lỗi của mỗi phương pháp trên tập dữ liệu định lượng (Trang 43)
Bảng 2.15 và hình 2.8 cho thấy tỷ lệ lỗi phân lớp của mỗi phương pháp  trên tập dữ liệu định lƣợng không có sự khác nhau là bao nhiêu - xử lý giá trị thiếu trong khai phá dữ liệu
Bảng 2.15 và hình 2.8 cho thấy tỷ lệ lỗi phân lớp của mỗi phương pháp trên tập dữ liệu định lƣợng không có sự khác nhau là bao nhiêu (Trang 43)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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