1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Các phương pháp khai phá dữ liệu sử dụng cây quyết định và ứng dụng (2014)

63 272 1

Đ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 63
Dung lượng 1,53 MB

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

Nội dung

mong muốn tiếp cận với lĩnh vực mới, bổ sung các kiến thức về khoa học kỹ thuật hiện đại, cũng như tổng kết những kỹ thuật, kiến thức trong suốt quá trình học tập tại trường, em đã chọn

Trang 1

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 KHOA CÔNG NGHỆ THÔNG TIN

- -

NGUYỄN THỊ CHANH

CÁC PHƯƠNG PHÁP KHAI PHÁ DỮ LIỆU SỬ DỤNG

Trang 2

TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 KHOA CÔNG NGHỆ THÔNG TIN

- -

NGUYỄN THỊ CHANH

CÁC PHƯƠNG PHÁP KHAI PHÁ DỮ LIỆU SỬ DỤNG

Trang 3

LỜI CẢM ƠN

Để hoàn thành khóa luận này em đã nhận được sự giúp đỡ tận tình của

các thầy cô Khoa Công nghệ thông tin – trường Đại học Sư phạm Hà Nội 2

Đặc biệt là TS Trịnh Đình Vinh, người trực tiếp hướng dẫn em trong quá

trình nghiên cứu và thực hiện khóa luận

Nhân dịp này em xin được bày tỏ lời cảm ơn tới tất cả các thầy cô giáo

Khoa Công nghệ thông tin – trường Đại học Sư phạm Hà Nội 2 đã giảng dạy

và tạo mọi điều kiện thuận lợi giúp đỡ chúng em trong quá trình học tập và

nghiên cứu

Em xin bày tỏ sự biết ơn sâu sắc của mình tới TS Trịnh Đình Vinh

người đã trực tiếp hướng dẫn, chỉ bảo tận tình, cung cấp tài liệu và phương

pháp nghiên cứu khoa học để em hoàn thành bản khóa luận này

Em xin cảm ơn các bạn cùng lớp và gia đình đã giúp đỡ, đóng góp ý

kiến và động viên em trong suốt quá trình học, quá trình nghiên cứu và hoàn

thành khóa luận này

Trong suốt quá trình nghiên cứu, mặc dù đã hết sức cố gắng nhưng

chắc chắn bài khóa luận không tránh khỏi những thiếu sót, rất mong quý thầy

cô góp ý để bài khóa luận của em được hoàn chỉnh hơn

Em xin chân thành cảm ơn!

Hà Nội, tháng 5 năm 2014

Ký tên Nguyễn Thị Chanh

Trang 4

LỜI CAM ĐOAN

Em xin cam đoan toàn bộ nội dung khóa luận này do em tự sưu tầm, tra cứu thông tin trên mạng internet, trong một số sách tham khảo để sắp xếp, hoàn thiện cho phù hợp với nội dung yêu cầu của đề tài

Đến nay, nội dung khóa luận của em chưa từng được công bố hay xuất bản dưới bất kỳ hình thức nào Nếu sai em xin chịu hoàn toàn trách nhiệm

Hà Nội, tháng 5 năm 2014

Kí tên Nguyễn Thị Chanh

Trang 5

MỤC LỤC

MỞ ĐẦU 1

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 4

1.1 Khám phá tri thức và khai phá dữ liệu 4

1.2 Quá trình phát hiện tri thức 5

1.2.1 Các bước của quá trình phát hiện tri thức 5

1.2.1.1 Xác định bài toán 6

1.2.1.2 Thu thập và tiền xử lý dữ liệu 6

1.2.1.3 Khai phá dữ liệu 7

1.2.1.4 Phân tích và đánh giá tri thức 7

1.2.1.5 Sử dụng tri thức phát hiện được 7

1.2.2 Nhiệm vụ của quá trình khám phá tri thức 8

1.2.3 Sự cần thiết của khám phá tri thức 10

1.3 Khai phá dữ liệu 11

1.3.1 Các khái niệm về khai phá dữ liệu 11

1.3.2 Quá trình khai phá dữ liệu 12

1.3.3 Kiến trúc hệ thống của khai phá dữ liệu 13

1.3.3.1 Cơ sở dữ liệu, kho dữ liệu, World Wide Web và các nguồn chứa thông tin khác 14

1.3.3.2 Máy chủ cơ sở dữ liệu hoặc kho dữ liệu 15

1.3.3.3 Cơ sở tri thức 15

1.3.3.4 Thành phần khai phá dữ liệu 15

1.3.3.5 Đánh giá mẫu khai phá 15

1.3.3.6 Giao diện người sử dụng: 16

1.4 Các kĩ thuật khai phá dữ liệu 16

1.4.1 Phân lớp dữ liệu 17

1.4.2 Phân cụm dữ liệu 17

1.4.3 Cây quyết định 17

1.4.4 Luật kết hợp 17

Trang 6

1.4.5 Hồi quy 18

1.4.6 Mạng Nơron 18

1.4.7 Giải thuật di truyền 18

1.5 Các lĩnh vực ứng dụng của khai phá dữ liệu 19

Chương 2: CÁC PHƯƠNG PHÁP KHAI PHÁ DỮ LIỆU SỬ DỤNG CÂY QUYẾT ĐỊNH 20

2.1 Cây quyết định 20

2.1.1 Định nghĩa 20

2.1.2 Phân lớp dữ liệu bằng cây quyết định 21

2.1.3 Phương pháp xây dựng cây quyết định 22

2.1.3.1 Chọn thuộc tính phân tách 23

2.1.3.2 Phép kiểm tra để chọn phép phân tách tốt nhất 24

2.1.4 Rút ra luật từ cây quyết định 24

2.2 Các thuật toán khai phá dữ liệu bằng cây quyết định 26

2.2.1 Thuật toán CLS 26

2.2.2 Thuật toán ID3 27

2.2.2.1 Giới thiệu 27

2.2.2.2 Thuật toán ID3 30

2.2.2.3 Tìm kiếm không gian giả thuyết trong ID3 35

2.2.2.4 Đánh giá hiệu suất của cây quyết định 36

2.2.3 Thuật toán C45 37

2.2.3.1 Giới thiệu 37

2.2.3.2 Thuật toán C4.5 xây dựng cây quyết định 37

2.2.3.3 Độ đo sử dụng để xác định điểm chia tốt nhất 40

2.2.3.4 Một số vấn đề về thuộc tính 40

2.3 Cắt tỉa cây quyết định 43

2.3.1 Tiền cắt tỉa (Prepruning) 43

2.3.2 Hậu cắt tỉa (Postpruning) 43

Chương 3: XÂY DỰNG ỨNG DỤNG 46

Trang 7

3.1 Bài toán 46

3.2 Thu thập và tiền xử lí dữ liệu 48

3.3 Thiết kế chương trình 50

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53

TÀI LIỆU THAM KHẢO 55

Trang 8

DANH SÁCH CÁC HÌNH

Hình 1 1 Quá trình khai phá dữ liệu từ cơ sở dữ liệu 6

Hình 1 2 Các nhiệm vụ của quá trình khám phá tri thức 9

Hình 1 3 Quá trình khai phá dữ liệu 13

Hình 1 4 Kiến trúc điển hình của hệ thống khai phá dữ liệu 14

Hình 2.1 Ví dụ về cây quyết định 25

Hình 2 2 Cây quyết định khi nào chơi tennis, khi nào không chơi 29

Hình 2 3 Mô tả cây quyết định với trắc nghiệm Outlook làm gốc 31

Hình 2 4 Giải thuật ID3 32

Hình 2 5 Cây quyết định sử dụng giải thuật ID3 33

Hình 3 1 Ví dụ cây quyết định 47

Hình 3 2 Form giao diện 50

Hình 3 3 Form giao diện bài toán 51

Hình 3 4 Form giao diện ví dụ 2 52

Hình 3 5 Form giao diện ví dụ 2 52

Trang 9

MỞ ĐẦU

1 Lí do chọn đề tài

Trong những năm gần đây Công nghệ thông tin phát triển mạnh mẽ và

có những tiến bộ vượt bậc Cùng với sự phát triển của Công nghệ thông tin là

sự bùng nổ thông tin Các thông tin tổ chức theo phương thức sử dụng giấy trong giao dịch đang dần được số hóa, do nhiều tính năng vượt trội mà phương thức này mang lại như: có thể lưu trữ lâu dài, cập nhật, sửa đổi, tìm kiếm một cách nhanh chóng Đó là lý do khiến cho số lượng thông tin số hóa ngày nay đang tăng dần theo cấp số nhân

Hiện nay, không một lĩnh vực nào lại không cần đến sự hỗ trợ của Công nghệ thông tin và sự thành công của các lĩnh vực đó phụ thuộc rất nhiều vào việc nắm bắt thông tin một cách nhạy bén, nhanh chóng và hữu ích Với nhu cầu như thế nếu chỉ sử dụng thao tác thủ công truyền thống thì

độ chính xác không cao và mất rất nhiều thời gian Do vậy việc khám phá tri thức từ dữ liệu trong các tập tài liệu lớn chứa đựng thông tin phục vụ nhu cầu nắm bắt thông tin có vai trò hết sức to lớn Việc khám phá tri thức đã có từ lâu nhưng sự bùng nổ của nó thì mới chỉ xảy ra trong những năm gần đây Các công cụ thu thập dữ liệu tự động và các công nghệ cơ sở dữ liệu được phát triển dẫn đến vấn đề một lượng dữ liệu khổng lồ được lưu trữ trong cơ

sở dữ liệu và trong các kho thông tin của các tổ chức, cá nhân, … Do đó việc khám phá tri thức từ dữ liệu là một trong những vấn đề đã và đang nhận được nhiều sự quan tâm của các nhà nghiên cứu

Lĩnh vực khám phá tri thức và khai phá dữ liệu đã và đang được nghiên cứu, ứng dụng trong nhiều lĩnh cực khác nhau trên thế giới Ở Việt Nam lĩnh vực này còn tương đối mới mẻ tuy nhiên cũng đang được nghiên cứu và bắt đầu đưa vào một số ứng dụng thực tế Vì vậy, vấn đề phát hiện tri thức và khai phá dữ liệu đang thu hút được sự quan tâm của nhiều người Với

Trang 10

mong muốn tiếp cận với lĩnh vực mới, bổ sung các kiến thức về khoa học kỹ thuật hiện đại, cũng như tổng kết những kỹ thuật, kiến thức trong suốt quá

trình học tập tại trường, em đã chọn đề tài “Các phương pháp khai phá dữ

liệu sử dụng cây quyết định và ứng dụng” làm khóa luận tốt nghiệp

2 Mục tiêu nghiên cứu

Mục tiêu của khóa luận là nghiên cứu các vấn đề cơ bản của khám phá tri thức và khai phá dữ liệu, cây quyết định, các phương pháp khai phá dữ liệu sử dụng cây quyết định, cài đặt và đánh giá các thuật toán khai phá dữ liệu bằng cây quyết định

3 Phạm vi nghiên cứu

Các phương pháp khai phá dữ liệu sử dụng cây quyết định

4 Ý nghĩa khoa học và thực tiễn

Ý nghĩa khoa học: Các phương pháp khai phá dữ liệu sử dụng cây

quyết định được nghiên cứu giúp chúng ta hiểu hơn về khám phá tri thức,

khai phá dữ liệu, các thuật toán xây dựng cây quyết định

Ý nghĩa thực tiễn: Chương trình thực nghiệm nếu thành công sẽ góp phần hỗ trợ quá trình ra một quyết định áp dụng các thuật toán xây dựng cây quyết định

5 Phương pháp ngh ên cứu

a Phương pháp nghiên cứu lý luận

Nghiên cứu qua việc đọc sách, báo và các tài liệu liên quan nhằm xây dựng cơ sở lý thuyết của đề tài và các biện pháp cần thiết để giải quyết các vấn đề của đề tài

Trang 11

b Phương pháp chuyên gia

Tham khảo ý kiến của các chuyên gia để có thể thiết kế chương trình phù hợp với yêu cầu thực tiễn, nội dung xử lý nhanh đáp ứng được yêu cầu ngày càng cao của người sử dụng

c Phương pháp thực nghiệm

Thông qua quan sát thực tế, yêu cầu của cơ sở, những lý luận được nghiên cứu và kết quả đạt được qua những phương pháp trên

6 Cấu trúc khóa luận

Ngoài phần mở đầu, kết luận và tài liệu tham khảo, khóa luận gồm các chương sau:

Chương 1: Tổng quan về khai phá dữ liệu

Trong chương này trình bày những nét khái quát về khai phá dữ liệu, khai phá dữ liệu trong quá trình phát hiện tri thức, các kĩ thuật và các ứng dụng của khai phá dữ liệu

Chương 2: Các phương pháp khai phá dữ liệu sử dụng cây quyết định

Trong chương này giới thiệu tổng quan về cây quyết định, phương pháp tổng quát xây dựng cây quyết định, ba thuật toán khai phá dữ liệu sử

dụng cây quyết định và cắt tỉa cây quyết định

Chương 3: Xây dựng ứng dụng

Đưa ra bài toán; thu thập và tiền xử lí dữ liệu; thiết kế chương trình

Trang 12

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

1.1 Khám phá tri thức và khai phá dữ liệu

Trong vài thập kỉ gần đây, khả năng tạo sinh và lưu trữ dữ liệu của con người đã tăng lên nhanh chóng Lượng dữ liệu lớn được lưu trữ dẫn đến một đòi hỏi cấp bách phải có những kĩ thuật mới, những công cụ tự động mới trợ giúp con người một cách thông minh trong việc chuyển đổi một lượng lớn dữ liệu thành thông tin hữu ích và tri thức Vì vậy mà kĩ thuật khám phá tri thức (Knowledge Discovery) đã ra đời và ngày càng phát triển để đáp ứng nhu cầu của con người việc xử lý các kho dữ liệu lớn

Vậy tri thức ở đây là gì? Thông thường chúng ta coi dữ liệu như một dãy các bit, các số và các ký hiệu, hoặc các “đối tượng” được gửi cho một chương trình dưới một định dạng nhất định nào đó Chúng ta sử dụng các bit

để đo lường thông tin và xem nó như là dữ liệu đã được lọc bỏ dư thừa, được rút gọn tới mức tối thiểu Bit được dùng làm đơn vị đặc trưng cho dữ liệu Chúng ta có thể xem tri thức như là các thông tin tích hợp, bao gồm các sự kiện và các mối quan hệ giữa chúng Các mỗi quan hệ này có thể được hiểu, được phát hiện ra, hoặc có thể được học Nói cách khác, tri thức có thể coi là

dữ liệu có độ trừu tượng và tổ chức cao

Hiện nay khám phá tri thức đang phát triển mạnh mẽ trong nhiều ngành học thuật Nó được kết hợp cùng với việc quản lý cơ sở dữ liệu, khoa học thống kê, học máy, nghiên cứu quan hệ giữa các lĩnh vực nhằm rút ra các tri thức có ích từ tập hợp dữ liệu

Phát hiện tri thức (Knowledge Discovery) trong các cơ sở dữ liệu là một quy trình nhận biết các mẫu hoặc các mô hình trong dữ liệu với các tính năng: hợp thức, mới, khả ích, và có thể hiểu được

Trang 13

Khám phá tri thức là quá trình nhận biết cái logic, cái mới lạ, những tri thức tiềm tàng hữu ích từ cơ sở dữ liệu và cuối cùng là việc hiểu được các mẫu của mô hình trong dữ liệu

Khai phá dữ liệu (data mining) là một ngữ tương đối mới, nó ra đời vào khoảng những năm cuối của của thập kỷ 1980 Có rất nhiều định nghĩa khác nhau về khai phá dữ liệu Giáo sư Tom Mitchell đã đưa ra định nghĩa của khai phá dữ liệu như sau: “Khai phá dữ liệu là việc sử dụng dữ liệu lịch

sử để khám phá những quy tắc và cải thiện những quyết định trong tương lai.” Với một cách tiếp cận ứng dụng hơn, tiến sĩ Fayyad đã phát biểu: “Khai phá dữ liệu thường được xem là việc khám phá tri thức trong các cơ sở dữ liệu, là một quá trình trích xuất những thông tin ẩn, trước đây chưa biết và có khả năng hữu ích, dưới dạng các quy luật, ràng buộc, qui tắc trong cơ sở dữ liệu.” Còn các nhà thống kê thì xem: “Khai phá dữ liệu như là một quá trình phân tích được thiết kế thăm dò một lượng cực lớn các dữ liệu nhằm phát hiện ra các mẫu thích hợp và/ hoặc các mối quan hệ mang tính hệ thống giữa các biến và sau đó sẽ hợp thức hoá các kết quả tìm được bằng cách áp dụng các mẫu đã phát hiện được cho tập con mới của dữ liệu"

Nói tóm lại: Khai phá dữ liệu là một bước trong quy trình phát hiện tri thức gồm có các thụât toán khai thác dữ liệu chuyên dùng dưới một số quy định về hiệu quả tính toán chấp nhận được để tìm ra các mẫu hoặc các mô hình trong dữ liệu

1.2 Quá trình phát hiện tri thức

1.2.1 Các bước của quá trình phát hiện tri thức

Quá trình phát hiện tri thức có thể chia thành các bước như sau:

Trang 14

Hình 1 1 Quá trình khai phá dữ liệu từ cơ sở dữ liệu

1.2.1.1 Xác định bài toán

Đây là bước tìm hiểu lĩnh vực ứng dụng và hình thành bài toán, bước này sẽ quyết định cho việc rút ra những tri thức hữu ích, đồng thời lựa chọn các phương pháp khai phá dữ liệu thích hợp với mục đích của ứng dụng và bản chất của dữ liệu

1.2.1.2 Thu thập và tiền xử lý dữ liệu

Trong bước này dữ liệu được thu thập ở dạng thô (nguồn dữ liệu thu thập có thể là từ các kho dữ liệu hay nguồn thông tin internet) Trong giai đoạn này dữ liệu cũng được tiền xử lý để biến đổi và cải thiện chất lượng dữ liệu cho phù hợp với phương pháp khai phá dữ liệu được chọn lựa trong bước trên

Bước này thường chiếm nhiều thời gian nhất trong quá trình khám phá tri thức Các giải thuật tiền xử lý dữ liệu bao gồm:

Xác định bài toán

Thu thập và tiền

xử lý dữ liệu

Sử dụng tri thức phát hiện được

Phân tích và đánh giá tri thức

KHAI PHÁ DỮ LIỆU (Triết xuất tri thức)

Trang 15

1 Xử lý dữ liệu bị mất/ thiếu: Các dạng dữ liệu bị thiếu sẽ được thay

thế bởi các giá trị thích hợp

2 Khử sự trùng lặp: các đối tượng dữ liệu trùng lặp sẽ bị loại bỏ đi Kỹ

thuật này không được sử dụng cho các tác vụ có quan tâm đến phân bố dữ liệu

3 Giảm nhiễu: nhiễu và các đối tượng tách rời khỏi phân bố chung sẽ bị

loại đi khỏi dữ liệu

4 Chuẩn hoá: miền giá trị của dữ liệu sẽ được chuẩn hoá

5 Rời rạc hoá: các dạng dữ liệu số sẽ được biến đổi ra các giá trị rời rạc

6 Rút trích và xây dựng: đặc trưng mới từ các thuộc tính đã có

7 Giảm chiều: các thuộc tính chứa ít thông tin sẽ được loại bỏ bớt

1.2.1.4 Phân tích v đánh giá tri thức

Bước thứ tư là hiểu các tri thức đã tìm được, đặc biệt là làm sáng tỏ các mô tả và dự đoán Trong bước này, kết quả tìm được sẽ được biến đổi sang dạng phù hợp với lĩnh vực ứng dụng và dễ hiểu hơn cho người dùng

1.2.1.5 Sử dụng tri thức phát hiện được

Trong bước này, các tri thức khám phá được sẽ được củng cố, kết hợp lại thành một hệ thống, đồng thời giải quyết các xung đột tiềm năng trong

Trang 16

các tri thức đó Các mô hình rút ra được đưa vào những hệ thống thông tin thực tế dưới dạng các môdun hỗ trợ việc đưa ra quyết định Các giai đoạn của quá trình khám phá tri thức có mối quan hệ chặt chẽ với nhau trong bối cảnh chung của hệ thống Các kỹ thuật được sử dụng trong giai đoạn trước

có thể ảnh hưởng đến hiệu quả của các giải thuật được sử dụng trong các giai đoạn tiếp theo Các bước của quá trình khám phá tri thức có thể được lặp đi lặp lại một số lần, kết quả thu được có thể được lấy trung bình trên tất cả các lần thực hiện

1.2.2 Nhiệm vụ của quá trình khám phá tri thức

Như trên đã nghiên cứu, các giai đoạn của quá trình khám phá tri thức,

và trên thực tế mỗi giai đoạn rất phức tạp Để hiểu rõ hơn về quá trình khám phá tri thức cần phải làm những việc gì, chúng ta hãy xem xét những nhiệm

vụ mà một quá trình khám phá tri thức sẽ làm trong hình sau:

Trang 17

Hình 1 2 Các nhiệm vụ của quá trình khám phá tri thức

Kho dữ liệu Quá trình khám phá tri thức

Kiểm thử tri thức

Tìm các thuộc tính quan trọng và không giá trị

Trích rút tri thức

Lựa chọn kĩ thuật khai phá

dữ liệu

Tinh chỉnh tri thức

Loại bỏ

dữ liệu lỗi Tích hợp dữ liệu

Trang 18

1.2.3 Sự cần thiết của khám phá tri thức

Có rất nhiều lí do để giải thích sự cần thiết của khám phá tri thức – khai phá dữ liệu điển hình là:

 Có rất nhiều tổ chức tập hợp quá nhiều dữ liệu, vậy họ phải làm gì với chúng

 Con người lưu trữ dữ liệu bởi vì họ cho rằng một số giá trị hữu ích được mã hóa hoàn toàn trong dữ liệu

 Trong kinh doanh, cần thu thập các thông tin về thị trường, về các đối thủ và về khách hàng Trong sản xuất, cần thu thập các dữ liệu

về thời điểm hiệu quả và tối ưu nhất phục vụ cho mục đích cải tiến quy trình và giải quyết sự cố

 Chỉ có một phần nhỏ của dữ liệu (khoảng 5 đến 10%) là luôn được phân tích

 Sự ra tăng của dữ liệu cẩn trở các phương pháp truyền thống

 Giá trị dữ liệu là quá lớn đối với cách thức phân tích cổ điển Chúng ta có thể không bao giờ nhìn thấy chúng một cách trọn vẹn hoặc không thể lưu trữ trong bộ nhớ

 Dữ liệu cần tìm kiếm không tồn tại dưới dạng tường minh mà dưới dạng phi cấu trúc, trong các quy luật tiềm ẩn

 Sự phát triển của mạng máy tính đã ra tăng khả năng truy cập vào

Trang 19

 Cùng với việc lớn lên của cơ sở dữ liệu, khả năng để đưa ra quyết định và hỗ trợ phân tích là không thể thực hiện được với truy vấn truyền thống (SQL)

 Rất nhiều kiểu câu truy vấn mà con người quan tâm là rất khó thực hiện hay miêu tả trong ngôn ngữ vấn tin như:

+ Tìm tất cả các bản ghi là gian lận

+ Tìm tất cả các bản ghi nghi là gian lận

 Một số vấn đề với dạng thức truy vấn:

+ Không thể tối ưu hóa thông qua truy vấn

+ Không có nhiều thông tin trong các trường cơ sở dữ liệu hoặc trong các phương pháp thống kê cổ điển

1.3 Khai phá dữ liệu

1.3.1 Các khái niệm về khai phá dữ liệu

Khái niệm khai phá dữ liệu ra đời vào những năm 80 Nó bao hàm hàng loạt các kĩ thuật nhằm phát hiện ra các thông tin có giá trị tiềm ẩn trong các tập dữ liệu lớn Có rất nhiều định nghĩa về khai phá dữ liệu được các tác giả khác nhau đưa ra; sau đây là một số định nghĩa tham khảo mà các nhà nghiên cứu khoa học trong lĩnh vực này phát hiện:

Quan niệm 1:

Khai phá dữ liệu (Data Mining) là quá trình trích chọn ra tri thức từ trong một tập hợp rất lớn dữ liệu Khai phá dữ liệu = Phát hiện tri thức từ dữ liệu (KDD: Knowledge Discovery From Data)

Trang 20

Quan niệm 2:

Khai phá dữ liệu (Data Mining) chỉ là một bước quan trọng trong quá

trình phát hiên tri thức từ dữ liệu (KDD) Áp dụng các phương pháp “thông

minh” để trích chọn ra các mẫu dữ liệu (data pattern)

Khai phá dữ liệu được định nghĩa như một quá trình phát hiện mẫu trong dữ liệu, quá trình này có thể là tự động hay bán tự động, song phần nhiều là bán tự động Các mẫu được phát hiện thường hữu ích theo định nghĩa: các mẫu mang lại cho người sử dụng một lợi thế nào đó, thường là lợi ích về kinh tế

Khai phá dữ liệu được áp dụng trong các cơ sở dữ liệu quan hệ, giao dịch, cơ sở dữ liệu không gian, cũng như các kho dữ liệu phi cấu trúc, mà điển hình là World Wide Web

Khám phá tri thức là quá trình nhận biết các mẫu hoặc các mô hình trong dữ liệu với các tính chất: Đúng đắn, mới, khả ích và có thể hiểu được Khai phá dữ liệu là một bước trong quá trình khám phá tri thức bao gồm các thuật toán khai phá dữ liệu chuyên dùng dưới một số quy định về hiệu quả tính toán chấp nhận được để tìm ra các mẫu và các mô hình trong dữ liệu

Như vậy, mục đích của khám phá tri thức và khai phá dữ liệu là tìm ra các mẫu hoặc mô hình đang tồn tại trong các cơ sở dữ liệu nhưng vẫn còn bị khuất bởi số lượng dữ liệu khổng lồ

1.3.2 Quá trình khai phá dữ liệu

Quá trình khám phá tri thức có thể chia thành 5 bước như sau:

Trang 21

Hình 1 3 Quá trình khai phá dữ liệu

1.3.3 Kiến trúc hệ thống của khai phá dữ liệu

Dữ liêu

thô

Dữ liệu lựa chọn

Dữ liệu tiền xử lý

Dữ liệu biến đổi

Các mẫu

Tri thức

Trích chọn

Đánh giá, biểu diễn

Tiền xử lý

Biến đổi

Khai phá

Trang 22

Hình 1 4 Kiến trúc điển hình của hệ thống khai phá dữ liệu

1.3.3.1 Cơ sở dữ liệu, kho dữ liệu, World Wide Web và các nguồn

chứa thông tin khác

Đây có thể là một hoặc một nhóm các cơ sở dữ liệu/kho dữ liệu hoặc các nguồn chứa thông tin (information repositories)

Các kỹ thuật làm sạch dữ liệu và tích hợp dữ liệu có thể được thực hiện trên các dữ liệu này

Thành phần khai phá dữ liệu

Giao diện người dùng

Đánh giá mẫu khai phá

Máy chủ cơ sở dữ liệu/kho dữ liệu

Cơ sở dữ liệu Kho dữ liệu World Wide

Trang 23

1.3.3.2 Máy chủ cơ sở dữ liệu hoặc kho dữ liệu

Chịu trách nhiệm lấy về các dữ liệu phù hợp dựa trên yêu cầu khai phá của người dùng

1.3.3.4 Thành phần khai phá dữ liệu

Đây là thành phần chủ yếu của một hệ thống khai phá dữ liệu Bao gồm các module thực hiện các tác vụ như phân tích đặc trưng (characterization) và quan hệ kết hợp (association/correlation analysis), phân lớp (classification), dự đoán (prediction), phân tích cụm (cluster analysis), …

1.3.3.5 Đánh giá mẫu khai phá

Sử dụng các độ đo hấp dẫn và có sự tương tác với engine khai phá dữ liệu nhằm tập trung vào việc tìm ra các mẫu đáng quan tâm Có thể sử dụng ngưỡng độ hấp dẫn để lọc bớt các mẫu tìm được

Có thể được tích hợp với module khai phá tùy thuộc vào phương pháp khai phá được sử dụng và cách thức cài đặt

Khuyến khích: Thao tác đánh giá mẫu cần được tích hợp càng chặt chẽ càng tốt với tiến trình khai phá nhằm nâng cao hiệu quả khai phá (giới hạn việc tìm kiếm chỉ với các mẫu đáng quan tâm)

Trang 24

1.3.3.6 Giao diện người sử dụng:

Module này làm nhiệm vụ giao tiếp giữa người dùng và hệ thống khai phá dữ liệu

Cho phép người dùng tương tác với hệ thống bằng cách chỉ ra truy vấn hoặc tác vụ khai phá mong muốn

Cung cấp thông tin giúp cho thao tác tìm kiếm được tập trung

Thực hiện khai phá thăm dò (Exploratory Data Mining) dựa trên các kết quả khai phá trung gian

Cho phép người dùng duyệt cơ sở dữ liệu, lược đồ kho dữ liệu và các cấu trúc dữ liệu, đánh giá các mẫu được khai phá và biểu diễn trực quan mẫu dưới các dạng thức khác nhau

1.4 Các kĩ thuật khai phá dữ liệu

Trong thực tế có nhiều kỹ thuật khai phá dữ liệu khác nhau nhằm thực hiện hai chức năng mô tả và dự đoán

- Kỹ thuật khai phá dữ liệu mô tả: Có nhiệm vụ mô tả các tính chất hoặc các đặc tính chung của dữ liệu trong cơ sở dữ liệu hiện có Một số kỹ thuật khai phá trong nhóm này là: Phân cụm dữ liệu (Clustering), tổng hợp (Summarisation), trực quan hoá (Visualization), phân tích sự phát triển và độ lệch (Evolution and deviation analyst), …

- Kỹ thuật khai phá dữ liệu dự đoán: Có nhiệm vụ đưa ra các dự đoán dựa vào các suy diễn trên cơ sở dữ liệu hiện thời Một số kỹ thuật khai phá trong nhóm này là: Phân lớp (Classification), hồi quy (Regression), cây quyết định (Decision tree), thống kê (statictics), mạng nơron (neural network), luật kết hợp, …

Một số kỹ thuật phổ biến thường được sử dụng để khai phá dữ liệu hiện nay là:

Trang 25

1.4.1 Phân lớp dữ liệu

Mục tiêu của phân lớp dữ liệu đó là dự đoán nhãn lớp cho các mẫu dữ liệu Quá trình gồm hai bước: Xây dựng mô hình, sử dụng mô hình để phân lớp dữ liệu (mỗi mẫu 1lớp) Mô hình được sử dụng để dự đoán nhãn lớp khi

mà độ chính xác của mô hình chấp nhận được

1.4.2 Phân cụm dữ liệu

Mục tiêu của phân cụm dữ liệu là nhóm các đối tượng tương tự nhau trong tập dữ liệu vào các cụm, sao cho các đối tượng thuộc cùng một lớp là tương đồng

1.4.3 Cây quyết định

Kỹ thuật cây quyết định là một công cụ mạnh và hiệu quả trong việc phân lớp và dự báo Các đối tượng dữ liệu được phân thành các lớp Các giá trị của đối tượng dữ liệu chưa biết sẽ được dự đoán, dự báo Tri thức được rút ra trong kỹ thuật này thường được mô tả dưới dạng tường minh, đơn giản, trực quan, dễ hiểu đối với người sử dụng

là không đủ, có thể có trường hợp ta có một nhóm tương đối những người đọc cả ba loại trên nhưng lại có một nhóm với lực lượng lớn hơn những người thích sách thể thao, âm nhạc mà không thích sách thiếu nhi Trong trường hợp này tính kết hợp rất yếu mặc dù độ hỗ trợ tương đối cao, như vậy

Trang 26

chúng ta cần thêm một độ đo thứ hai đó là độ tin cậy (confidence) Độ tin cậy chính là phần trăm các bản ghi có sách thiếu nhi trong số các bản ghi có sách

âm nhạc và thể thao

1.4.5 Hồi quy

Phương pháp hồi quy tương tự như là phân lớp dữ liệu Nhưng khác ở chỗ nó dùng để dự đoán các giá trị liên tục còn phân lớp dữ liệu dùng để dự đoán các giá trị rời rạc

1.4.6 Mạng Nơron

Đây là một trong những kỹ thuật khai phá dữ liệu được ứng dụng phổ biến hiện nay Kỹ thuật này phát triển dựa trên một nền tảng toán học vững vàng, khả năng huấn luyện trong kỹ thuật này dựa trên mô hình thần kinh trung ương của con người

Kết quả mà mạng nơron học được có khả năng tạo ra các mô hình dự báo, dự đoán với độ chính xác và độ tin cậy cao Nó có khả năng phát hiện

ra được các xu hướng phức tạp mà kỹ thuật thông thường khác khó có thể phát hiện ra được Tuy nhiên phương pháp mạng nơron rất phức tạp và quá trình tiến hành nó gặp rất nhiều khó khăn: Đòi hỏi mất nhiều thời gian, nhiều

dữ liệu, nhiều lần kiểm tra thử nghiệm

1.4.7 Giải thuật di truyền

Là quá trình mô phỏng theo tiến hoá của tự nhiên Ý tưởng chính của giải thuật là dựa vào quy luật di truyền trong biến đổi, chọn lọc tự nhiên và

tiến hoá trong sinh học

Việc xây dựng các thuật toán di truyền mô phỏng sinh học nhằm tìm ra các giải pháp tốt nhất bao gồm các bước sau:

1 Tạo ra cơ chế mã di truyền dưới dạng các xâu của một bảng mã ký

tự hạn chế

Trang 27

2 Thiết lập môi trường nhân tạo trên máy tính có các giải pháp có thể tham gia “đấu tranh sinh tồn” với nhau để xác định độ đo thành công hay thất bại, hay còn gọi là “hàm thích nghi”

3 Phát triển các “phép lai ghép” để các giải pháp kết hợp với nhau Khi đó các xâu mã di truyền của giải pháp cha và mẹ bị cắt đi và xếp lại, trong quá trình sinh sản như vậy các kiểu đột biến có thể được áp dụng

4 Cung cấp một quần thể các giải pháp ban đầu tương đối đa dạng và

để máy tính thực hiện “cuộc chơi tiến hóa” bằng cách loại bỏ các giải pháp từ mỗi cá thể và thay thế chúng bằng các con cháu hoặc các đột biến của các giải pháp tốt Thuật toán sẽ kết thúc khi một họ các giải pháp thành công được sinh ra

1.5 Các lĩnh vực ứng dụng của khai phá dữ liệu

Khai phá dữ liệu là một lĩnh vực được quan tâm và ứng dụng rộng rãi Một số ứng dụng điển hình trong khai phá dữ liệu có thể liệt kê như sau: Phân tích dữ liệu và hỗ trợ ra quyết định, điều trị y học, khai phá văn bản, khai phá Web, tin - sinh, tài chính và thị trường chứng khoán, bảo hiểm,

Thương mại: Như phân tích dữ liệu bán hàng và thị trường, phân tích đầu tư, phát hiện gian lận, chứng thực hóa khách hàng, dự báo xu hướng phát triển,

Thông tin sản xuất: Điều khiển, lập kế hoạch, hệ thống quản lý, phân tích thử nghiệm,

Thông tin khoa học: Dự báo thời tiết, bão lụt, động đất, tin sinh học, Hiện nay các hệ quản trị cơ sở dữ liệu đã tích hợp những module để khai phá dữ liệu như SQL Server, Oracle, đến năm 2007 Microsoft đã cung cấp sẵn công cụ khai phá dữ liệu tích hợp trong cả MS-Word, MS-Excel, …

Trang 28

Chương 2: CÁC PHƯƠNG PHÁP KHAI PHÁ DỮ LIỆU SỬ

lá, trong mô hình phân lớp dữ liệu chính là các giá trị của các nhãn lớp (gọi tắt là nhãn) Các nút khác nút lá được gọi là các nút con, đây còn là các thuộc tính của tập dữ liệu, hiển nhiên các thuộc tính này phải khác thuộc tính phân lớp Mỗi một nhánh của cây xuất phát từ một nút p nào đó ứng với một phép

so sánh dựa trên miền giá trị của nút đó Nút đầu tiên được gọi là nút gốc của cây

Để phân lớp mẫu dữ liệu chưa biết, giá trị các thuộc tính của mẫu được đưa vào kiểm tra trên cây quyết định Mỗi mẫu tương ứng có một đường đi

từ gốc đến lá và lá biểu diễn dự đoán giá trị phân lớp mẫu đó

Cây quyết định được sử dụng để xây dựng một kế hoạch nhằm đạt được mục tiêu mong muốn Các cây quyết định được dùng để hỗ trợ quá trình ra quyết định Cây quyết định là một dạng đặc biệt của cấu trúc cây

Tạo cây quyết định chính là quá trình phân tích cơ sở dữ liệu, phân lớp

và đưa ra dự đoán Cây quyết định được tạo thành bằng cách lần lượt chia (đệ quy) một tập dữ liệu thành các tập dữ liệu con, mỗi tập con được tạo thành chủ yếu từ các phần tử của cùng một lớp Lựa chọn thuộc tính để tạo thành thông qua Entropy và Gain

Trang 29

Học bằng cây quyết định cũng là một phương pháp thông dụng trong khai phá dữ liệu Khi đó, cây quyết định mô tả một cấu trúc cây Trong đó, các lá đại diện cho các phân loại còn cành đại diện cho các kết hợp của các thuộc tính dẫn tới phân loại đó Một cây quyết định có thể được học bằng cách chia tập hợp nguồn thành các tập hợp con dựa theo một kiểm tra thuộc tính Quá trình này được lặp lại một cách đệ quy cho mỗi tập con dẫn xuất Quá trình đệ quy hoàn thành khi không thể tiếp tục thực hiện việc chia tách được nữa, hay khi một phân loại đơn có thể áp dụng cho từng phần tử của tập con dẫn xuất

Cây quyết định được mô tả như là sự kết hợp của các kỹ thuật toán học

và tính toán nhắm hỗ trợ việc mô tả, phân lọai và tổng quát hóa một tập dữ liệu cho trước

2.1.2 Phân lớp dữ liệu bằng cây quyết định

Phân lớp dựa trên cây quyết định rất thích hợp cho việc khai phá dữ liệu vì cây quyết định có cấu trúc đơn giản, dễ hiểu và có thể được xây dựng khá nhanh, từ cây quyết định có thể dễ dàng rút ra các luật

Quy nạp cây quyết định là một quá trình học tập của cây quyết định từ các nhãn lớp của bộ dữ liệu huấn luyện (training tuple) Một cây quyết định

là một biểu đồ dòng dữ liệu như cấu trúc cây, mỗi nút trong (không phải lá) tượng trưng cho một thuộc tính kiểm tra, mỗi nhánh đại diện cho kết quả của việc kiểm tra, và mỗi nút lá (hay nút giới hạn) giữ một lớp nhãn Nút đầu tiên trên cây là nút gốc

Quá trình phân lớp dữ liệu thông qua 2 bước cơ bản như sau:

Bước 1: Xây dựng mô hình từ tập huấn luyện

 Mỗi bộ/mẫu dữ liệu được phân vào một lớp được xác định trước

Trang 30

 Lớp của một bộ/mẫu dữ liệu được xác định bởi thuộc tính gán nhãn lớp

 Tập các bộ/mẫu dữ liệu huấn luyện - tập huấn luyện - được dùng để xây dựng mô hình

 Mô hình được biểu diễn bởi các luật phân lớp, các cây quyết định hoặc các công thức toán học

Bước 2: Sử dụng mô hình, kiểm tra tính đúng đắn của mô hình và

dùng nó để phân lớp dữ liệu mới

 Phân lớp cho những đối tượng mới hoặc chưa được phân lớp

 Đánh giá độ chính xác của mô hình:

+ Lớp biết trước của một mẫu/bộ dữ liệu đem kiểm tra được so sánh với kết quả thu được từ mô hình

+ Tỉ lệ chính xác bằng phần trăm các mẫu/bộ dữ liệu được phân lớp đúng bởi mô hình trong số các lần kiểm tra

2.1.3 Phương pháp xây dựng cây quyết định

 Việc tạo cây quyết định bao gồm 2 giai đoạn: Tạo cây và tỉa cây

- Để tạo cây ở thời điểm bắt đầu tất cả những ví dụ huấn luyện là ở gốc sau đó phân chia ví dụ huấn luyện theo cách đệ quy dựa trên thuộc tính được chọn

- Việc tỉa cây là xác định và xóa những nhánh mà có phần tử hỗn tạp hoặc những phần tử không thể phân vào một lớp nào đó

 Có rất nhiều biến đổi khác nhau về nòng cốt của thuật toán cây quyết định, mặc dù vậy chúng vẫn tuân theo những bước cơ bản sau:

- Cây được thiết lập từ trên xuống dưới vá theo cách thức chia để trị

- Ở thời điểm bắt đầu, các mẫu huấn luyện nằm ở gốc của cây

Trang 31

- Thuộc tính được phân loại (rời rạc hóa các thuộc tính dạng phi số)

- Chọn một thuộc tính để phân chia thành các nhánh Thuộc tính được chọn dựa trên độ đo thống kê hoặc độ đo heurictic

- Tiếp tục lặp lại việc xây dựng cây quyết định cho các nhánh

 Điều kiện để dừng việc phân chia:

- Tất cả các mẫu rơi vào một nút thuộc về cùng một lớp (nút lá)

- Không còn thuộc tính nào có thể dùng để phân chia mẫu nữa

- Không còn lại mẫu nào tại nút

2.1.3.1 Chọn thu c tính phân tách

Lúc khởi đầu ta có trong tay một tập luyện chứa tập các bản ghi được phân loại trước – tức là giá trị của biến đích được xác định trong tất cả các trường hợp Cây quyết định được xây dựng bằng cách phân tách các bản ghi tại mỗi nút dựa trên một thuộc tính đầu vào Rõ ràng nhiệm vụ đầu tiên là phải chọn ra xem thuộc tính nào đưa ra được sự phân tách tốt nhất tại nút đó

Độ đo được sử dụng để đánh giá khả năng phân tách là độ tinh khiết Chúng ta sẽ có phương pháp xác định để tính toán độ tinh khiết một cách chi tiết, tuy nhiên chúng đều cố gắng đạt được hiệu quả như nhau Một sự phân tách tốt nhất là sự phân tách làm tăng độ tinh khiết của bản ghi với số lượng lớn nhất Một sự phân tách tốt cũng phải tạo ra các nút có kích cỡ tương tự nhau, hay chí ít cũng không tạo ra các nút có qua ít bản ghi

Thuật toán xây dựng cây quyết định hết sức thấu đáo Chúng bắt đầu bằng việc chọn mỗi biến đầu vào chưa được chọn và đo mức độ tăng độ tinh khiết trong các kết quả ứng với mỗi biến Sau đó một phép tách tốt nhất sẽ được sử dụng trong phép tách khởi đầu để tạo ra hai hay nhiều nút con Nếu không phép phân tách nào có khả năng (có thể do có quá ít bản ghi) hoặc do

Ngày đăng: 16/04/2018, 15:16

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Dương Thị Nhung (2010), Nghiên cứu phương pháp cây quyết định và cài đặt thuật toán ID3, Khóa luận Thạc sỹ Khoa học máy tính, Đại học Thái Nguyên Sách, tạp chí
Tiêu đề: Nghiên cứu phương pháp cây quyết định và cài đặt thuật toán ID3
Tác giả: Dương Thị Nhung
Năm: 2010
2. Nguyễn Bá Nguyện (2013), Khai phá dữ liệu bằng cây quyết định và ứng dụng, Luận án tốt nghiệp Đại học, Khoa Công nghệ thông tin, trường Đại học Công nghiệp Hà Nội Sách, tạp chí
Tiêu đề: Khai phá dữ liệu bằng cây quyết định và ứng dụng
Tác giả: Nguyễn Bá Nguyện
Năm: 2013
3. Nguyễn Thị Hạnh (2008), Khai phá dữ liệu bằng cây quyết định, trường Đại học Sư phạm Hà Nội Sách, tạp chí
Tiêu đề: Khai phá dữ liệu bằng cây quyết định
Tác giả: Nguyễn Thị Hạnh
Năm: 2008
4. Phạm Duy An (2012), Phương pháp Khai phá dữ liệu bằng Khai phá dữ liệu bằng cây quyết định, Khóa luận Thạc sĩ, Học viện Công nghệ bưu chính viễn thông Sách, tạp chí
Tiêu đề: Phương pháp Khai phá dữ liệu bằng Khai phá dữ liệu bằng cây quyết định
Tác giả: Phạm Duy An
Năm: 2012
5. ThS. Nguyễn Vương Thịnh (2011), Bài giảng môn học Khai phá dữ liệu, Khoa Công nghệ thông tin trường Đại học Hàng hải Việt Nam Sách, tạp chí
Tiêu đề: Bài giảng môn học Khai phá dữ liệu
Tác giả: ThS. Nguyễn Vương Thịnh
Năm: 2011

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

w