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

Khai phá dữ liệu bằng cây quyết định

32 299 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 32
Dung lượng 885,31 KB

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

Nội dung

Chính vì vậy, các phương pháp quản trị và khai thác cơ sở dữ liệu truyền thống ngày càng không đáp ứng được thực tế đã làm phát triển một khuynh hướng kỹ thuật mới đó là Kỹ thuật phát hi

Trang 1

Trước tiên em xin được gửi lời cảm ơn chân thành tới các thầy cô giáo trong

khoa Công nghệ thông tin - Trường đại học sư phạm Hà Nội đã tần tình giúp đỡ và

giảng dạy cho chúng em trong những năm học vừa qua

Đặc biệt, em xin gửi lời cảm ơn chân thành nhất tới cô giáo - T.S Hồ Cẩm

Hà cùng các thầy cô giáo trong tổ bộ môn Hệ thống thông tin đã tận tình hướng

dẫn, giúp đỡ em hoàn thành đề tài nghiên cứu khoa học này

Trong thời gian vừa qua mặc dù em đã cố gắng rất nhiều để hoàn thành tốt

đề tài nghiên cứu khoa học của mình Song chắc chắn kết quả nghiên cứu sẽ không

tránh khỏi những thiếu sót, vì vậy em kính mong nhận được sự chỉ bảo và góp ý của

quý thầy cô và các bạn

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

Ký tên

H ạ nh

Trang 2

K IL

M

LỜI MỞ ĐẦU 2

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

1.1 Khám phá tri thức và khai phá dữ liệu là gì? 3

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

1.2.1 Hình thành và định nghĩa bài toán 5

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

1.2.3 Khai phá dữ liệu và rút ra các tri thức 6

1.2.4 Phân tích và kiểm định kết quả 6

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

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

1.3.1 Gom dữ liệu (gatherin) 7

1.3.2 Trích lọc dữ liệu (selection) 7

1.3.3 Làm sạch và tiền xử lý dữ liệu (cleansing preprocessing) 8

1.3.4 Chuyển đổi dữ liệu (transformation) 81.3.5 Phát hiện và trích mẫu dữ liệu ( pattern extraction and discovery) 8

1.3.6 Đánh giá kết quả mẫu (evaluation of result ) 8

1.4 Chức năng của khai phá dữ liệu 9

1.5 Các kỹ thuật khai phá dữ liệu 9

1.5.1 Phân lớp dữ liệu: 9

1.5.2 Phân cụm dữ liệu: 9

1.5.3 Khai phá luật kết hợp: 10

1.5.4 Hồi quy: 10

1.5.5 Giải thuật di truyền: 10

1.5.6 Mạng nơron: 10

1.5.7 Cây quyết định 11

1.6 Các dạng dữ liệu có thể khai phá được 11

1.7 Các lĩnh vực liên quan đến khai phá dữ liệu và ứng dụng của khai phá dữ liệu 11

1.7.1 Các lĩnh vực liên quan đến phát hiện tri thức và khai phá dữ liệu 11

1.7.2 ng dụng của khai phá dữ liệu 11

1.8 Các thách thức và hướng phát triển của phát hiện tri thức và khai phá dữ liệu 12 Chương 2: Khai phá dữ liệu bằng cây quyết định 13

2.1 Cây quyết định 13

2.1.1 Định nghĩa cây quyết định 13

2.1.2 Ưu điểm của cây quyết định 14

Trang 3

K IL

M

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

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

2.2.1 Thuật toán CLS 15

2.2.2 Thuật toán ID3 16

2.2.3 Thuật toán C4.5 18

2.2.4 Thuật toán SLIQ[5] 22

2.2.5 Cắt tỉa cây quyết định 25

2.2.6 Đánh giá và kết luận về các thuật toán xây dựng cây quyết định 27

Chương 3: Xây dựng chương trình dêmo 29

3.1 Mô tả bài toán 29

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

3.3 Chương trình 30

Chương 4 KẾT LUẬN 30

4.1 Đánh Giá 30

4.1.1 Lý thuyết 30

4.1.2 Ứng dụng 30

4.2 Hướng Phát Triển 30

Trong nhiều năm qua, cùng với sự phát triển của công nghệ thông tin và ứng

dụng của công nghệ thông tin trong nhiều lĩnh vực của đời sống xã hội, thì lượng dữ

Trang 4

những dữ liệu này vì cho rằng nó ẩn chứa những giá trị nhất định nào đó Tuy nhiên

theo thống kê thì chỉ có một lượng nhỏ của những dữ liệu này (khoảng từ 5% đến

10%) là luôn được phân tích, số còn lại họ không biết sẽ phải làm gì và có thể làm

gì với những dữ liệu này, nhưng họ vẫn tiếp tục thu thập và lưu trữ vì hy vọng

những dữ liệu này sẽ cung cấp cho họ những thông tin quý giá một cách nhanh

chóng để đưa ra những quyết định kịp thời vào một lúc nào đó Chính vì vậy, các

phương pháp quản trị và khai thác cơ sở dữ liệu truyền thống ngày càng không đáp

ứng được thực tế đã làm phát triển một khuynh hướng kỹ thuật mới đó là Kỹ thuật

phát hiện tri thức và khai phá dữ liệu (KDD - Knowledge Discovery and Data

Mining)

Kỹ thuật phát hiện tri thức và khai phá dữ liệu đã và đang được nghiên cứu,

ứng dụng trong nhiều lĩnh vực khác nhau trên thế giới, tại Việt Nam kỹ thuật 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, hiện nay ở nước ta 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à nhiều công ty

phát triển ứng dụng công nghệ thông tin Trong phạm vi đề tài nghiên cứu khoa học

này của em, em sẽ trình bày những nội dung sau:

Chương 1: Tìm hiểu những kiến thức tổng quan về khám phá tri thức và khai

phá dữ liệu

Chương 2: Nghiên cứu kỹ thuật khai phá dữ liệu bằng cây quyết định

Chương 3: Xây dựng ứng dụng demo cho kỹ thuật khai phá dữ liệu bằng cây

quyết định

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 là gì?

Trang 5

Phát hiện tri thức (Knowledge Discovery ) trong các cơ sở dữ liệu là một qui

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 [4]

Còn khai thác 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

qui 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 [4]

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

Quá trình khám phá tri thức được tiến hành qua 5 bước sau [5]:

Trang 6

1.2.1 Hình thành và định nghĩa 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.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 :

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

Trang 7

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.3 Khai phá dữ liệu và rút ra các tri thức

Đây là bước quan trọng nhất trong tiến trình khám phá tri thức Kết quả

của bước này là trích ra được các mẫu và/hoặc các mô hình ẩn dưới các dữ

liệu Một mô hình có thể là một biểu diễn cấu trúc tổng thể một thành phần

của hệ thống hay cả hệ thống trong cơ sở dữ liệu, hay miêu tả cách dữ liệu

được nảy sinh Còn một mẫu là một cấu trúc cục bộ có liên quan đến vài biến

và vài trường hợp trong cơ sở dữ liệu

1.2.4 Phân tích và ki ểm định kết quả

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.5 S ử dụng các 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

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

Trang 8

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.3 Quá trình khai phá dữ liệu

Khai phá dữ liệu là hoạt động trọng tâm của quá trình khám phá tri thức Thuật

ngữ khai phá dữ liệu còn được một số nhà khoa học gọi là phát hiện tri thức trong cơ sở dữ

liệu ( knowledge discovery in database _KDD) ( theo Fayyad Smyth and

Piatestky-Shapiro 1989) Quá trình này gồm có 6 bước [1]:

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

Quá trình khai phá dữ liệu bắt đầu với kho dữ liệu thô và kết thúc với tri thức

được chiết xuất ra Nội dung của quá trình như sau:

1.3.1 Gom dữ liệu (gatherin)

Tập hợp dữ liệu là bước đầu tiên trong khai phá dữ liệu Bước này lấy

dữ liệu từ trong một cơ sở dữ liệu, một kho dữ liệu, thậm chí dữ liệu từ những

nguồn cung ứng web

1.3.2 Trích lọc dữ liệu (selection)

Ở giai đoạn này dữ liệu được lựa chọn và phân chia theo một

số tiêu chuẩn nào đó

Trang 9

1.3.3 Làm sạch và tiền xử lý dữ liệu (cleansing preprocessing)

Giai đoạn thứ ba này là giai đoạn hay bị sao lãng, nhưng thực tế nó là

một bước rất quan trọng trong quá trình khai phá dữ liệu Một số lỗi thường

mắc phải trong khi gom dữ liệu là dữ liệu không đầy đủ hoặc không thống

nhất, thiếu chặt chẽ Vì vậy dữ liệu thường chứa các giá trị vô nghĩa và không

có khả năng kết nối dữ liệu Ví dụ Sinh viên có tuổi=200 Giai đoạn thứ ba

này nhằm xử lý các dữ liệu như trên(dữ liệu vô nghĩa, dữ liệu không có khả

năng kết nối) Những dữ liệu dạng này thường được xem là thông tin dư thừa,

không có giá trị Bởi vậy đây là một quá trình rất quan trọng Nếu dữ

liệu không được làm sạch- tiền xử lý - chuẩn bị trước thì sẽ gây nên những kết

quả sai lệch nghiêm trọng về sau

1.3.4 Chuyển đổi dữ liệu (transformation)

Trong giai đoạn này, dữ liệu có thể được tổ chức và sử dụng lại Mục

đích của việc chuyển đổi dữ liệu là làm cho dữ liệu phù hợp hơn với mục

đích khai phá dữ liệu

1.3.5 Phát hiện và trích mẫu dữ liệu ( pattern extraction and discovery)

Đây là bước tư duy trong khai phá dữ liệu Ở trong giai đoạn này nhiều thuật toán khác nhau đã được sử dụng để trích ra các mẫu từ dữ liệu

Thuật toán thường dùng để trích mẫu dữ liệu là thuật toán phân loại dữ liệu,

kết hợp dữ liệu, thuật toán mô hình hoá dữ liệu tuần tự

1.3.6 Đánh giá kết quả mẫu (evaluation of result )

Đây là giai đoạn cuối cùng trong quá trình khai phá dữ liệu, ở giai đoạn này các mẫu dữ liệu được chiết xuất ra bởi phần mềm khai phá dữ liệu

Không phải mẫu dữ liệu nào cũng hữu ích, đôi khi nó còn bị sai lệch Vì vậy

cần phải đưa ra những tiêu chuẩn đánh giá độ ưu tiên cho các mẫu dữ liệu để

rút ra được những tri thức cần thiêt

Trang 10

1.4 Chức năng của khai phá dữ liệu

Khai phá dữ liệu có hai chức năng cơ bản đó là: chức năng dự đoán và chức

năng mô tả

1.5 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 CSDL 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à :

1.5.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 1 lớ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.5.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 cum, sao cho các đối tượng thuộc cùng một lớp là

tương đồng

Trang 11

Mục tiêu của phương pháp này là phát hiện và đưa ra các mối liên hệ

giữa các giá trị dữ liệu trong cơ sở dữ liệu Đầu ra của giải thuật luật kết hợp

là tập luật kết hợp tìm được Phương pháp khai phá luật kết hợp gồm có hai

bước:

- Bước 1: Tìm ra tất cả các tập mục phổ biến Một tập mục phổ biến được

xác định thông qua tính độ hỗ trợ và thoả mãn độ hỗ trợ cực tiểu

- Bước 2: Sinh ra các luật kết hợp mạnh từ tập mục phổ biến, các luật phải

thoả mãn độ hỗ trợ và độ tin cậy cực tiểu

1.5.4 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.5.5 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

1.5.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

Trang 12

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

1.6 Các dạng dữ liệu có thể khai phá được

- CSDL quan hệ

- CSDL đa chiều

- CSDL giao dịch

- CSDL quan hệ - đối tượng

- CSDL không gian và thời gian

- CSDL đa phương tiện

1.7 Các lĩnh vực liên quan đến khai phá dữ liệu và ứng dụng của khai phá

dữ liệu

1.7.1 Các lĩnh vực liên quan đến phát hiện tri thức và khai phá dữ liệu

Phát hiện tri thức và khai phá dữ liệu được ứng dụng trong nhiều ngành và

lĩnh vực khác nhau như: tài chính ngân hàng, thương mại, y tế, giáo dục,

thống kê, máy học, trí tuệ nhân tạo, csdl, thuật toán toán học, tính toán song

song với tốc độ cao, thu thập cơ sở tri thức cho hệ chuyên gia,…

1.7.2 Ứng dụng của khai phá dữ liệu

Khai phá dữ liệu được vận dụng để giải quyết các vấn đề thuộc nhiều lĩnh

vực khác nhau Chẳng hạn như giải quyết các bài toán phức tạp trong các

ngành đòi hỏi kỹ thuật cao, như tìm kiếm mỏ dầu, từ ảnh viễn thám, cảnh báo

hỏng hóc trong các hệ thống sản xuất; Được ứng dụng cho việc quy hoạch và

phát triển các hệ thống quản lý và sản xuất trong thực tế như dự đoán tải sử

dụng điện, mức độ tiêu thụ sản phẩm, phân nhóm khách hàng; Áp dụng cho

các vấn đề xã hội như phát hiện tội phạm, tăng cường an ninh…

Trang 13

- Khai phá dữ liệu được sử dụng để phân tích dữ liệu, hỗ trợ ra quyết định

- Trong sinh học: nó dùng để tìm kiếm , so sánh các hệ gen và thông tin di

chuyền, tìm mối liên hệ giữa các hệ gen và chuẩn đoán một số bệnh di

chuyền

- Trong y học: khai phá dữ liệu giúp tìm ra mối liên hệ giữa các triệu

chứng, chuẩn đoán bệnh

- Tài chính và thị trường chứng khoán: Khai phá dữ liệu để phân tích tình

hình tài chính, phân tích đầu tư, phân tích cổ phiếu

- Khai thác dữ liệu web

- Trong thông tin kỹ thuật: khai phá dữ liệu dùng để phân tích các sai hỏng,

điều khiển và lập lịch trình…

- Trong thông tin thương mại: dùng để phân tích dữ liệu người dùng, phân

tích dữ liệu marketing, phân tích đầu tư, phát hiện các gian lận

1.8 Các thách thức và hướng phát triển của phát hiện tri thức và khai phá dữ

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

- Quan hệ giữa các trường phức tạp

- Vấn đề 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

- …

Hướng phát triển của khám phá tri thức và khai phá dữ liệu là vượt qua được

tất cả những thách thức trên Chú trọng vào việc mở rộng ứng dụng để đáp ứng

cho mọi lĩnh vực trong đời sống xã hội, và tăng tính hữu ích của việc khai phá dữ

liệu trong những lĩnh vực đã có khai phá dữ liệu Tạo ra các phương pháp khai phá

Trang 14

Tạo ra tương tác người sử dụng tốt, giúp người sử dụng tham gia điều khiển quá

trình khai phá dữ liệu, định hướng hệ thống khai phá dữ liệu trong việc phát hiện

các mẫu đáng quan tâm Tích hợp khai phá dữ liệu vào trong các hệ cơ sở dữ liệu

Ứng dụng khai phá dữ liệu để khai phá dữ liệu web trực tuyến Một vấn đề quan

trọng trong việc phát triển khám phá tri thức và khai phá dữ liệu đó là vấn đề an

toàn và bảo mật thông tin trong khai phá dữ liệu

Chương 2: Khai phá dữ liệu bằng cây quyết định

2.1 Cây quyết định

2.1.1 Định nghĩa cây quyết định

Trong lĩnh vực học máy, cây quyết định là một kiểu mô hình dự báo

(predictive model), nghĩa là một ánh xạ từ các quan sát về một sự vật/hiện

tượng tới các kết luận về giá trị mục tiêu của sự vật/hiện tượng Mỗi nút

trong (internal node) tương ứng với một biến; đường nối giữa nó với nút con

của nó thể hiện giá trị cụ thể cho biến đó Mỗi nút lá đại diện cho giá trị dự

đoán của biến mục tiêu, cho trước các giá trị dự đoán của các biến được biểu

diễn bởi đường đi từ nút gốc tới nút lá đó Kỹ thuật học máy dùng trong cây

quyết định được gọi là học bằng cây quyết định, hay chỉ gọi với cái tên ngắn

gọn là cây quyết định [3]

Ví dụ: Cây quyết định phân lớp mức lương

Trang 15

Hình 2.1 Cây quyết định phân lớp mức lương

2.1.2 Ưu điểm của cây quyết định

So với các phương pháp khai phá dữ liệu khác, cây quyết định có một số

ưu điểm sau

- Cây quyết định tương đối dể hiểu

- Đòi hỏi mức tiền xử lý dữ liệu đơn giản

- Có thể xử lý với cả các dữ liệu rời rạc và liên tục

- Cây quyết định là một mô hình hộp trắng

- Kết quả dự đoán bằng cây quyết định có thể thẩm định lại bằng cách

kiểm tra thống kê

2.1.3 V ấn đề xây dựng cây quyết định

Có nhiều thuật toán khác nhau để xây dựng cây quyết định như: CLS,

ID3, C4.5, SLIQ, SPRINT, EC4.5, C5.0…Nhưng nói chung quá trình xây

dựng cây quyết định đều được chia ra làm 3 giai đoạn cơ bản:

a Xây dựng cây: Thực hiện chia một cách đệ quy tập mẫu dữ liệu huấn

luyện cho đến khi các mẫu ở mối nút lá thuộc cùng một lớp

b Cắt tỉa cây: Là việc làm dùng để tối ưu hoá cây Cắt tỉa cây chính là việc

trộn một cây con vào trong một nút lá

Age?

≤ 35 salary

Trang 16

c Đánh giá cây: Dùng để đánh giá độ chính xác của cây kết quả Tiêu chí

đánh giá là tổng số mẫu được phân lớp chính xác trên tổng số mẫu đưa

vào

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

Có thể chuyển đổi qua lại giữa mô hình cây quyết định và mô hình dạng

luật (IF …THEN…) Hai mô hình này là tương đương nhau

Ví dụ từ cây 2.1 ta có thể rút ra được các luật sau

IF (Age <= 35) AND (salary<=40) THEN class = bad

IF (Age<=35) AND (salary>40) THEN class = good

IF (Age>35) AND (salary <=50 ) THEN class = bad

IF (Age > 35) AND(salary>50) THEN class = good

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

2.2.1 Thuật toán CLS

Thuật toán này được Hovland và Hint giới thiệu trong Concept

learning System (CLS) vào những năm 50 của thế kỷ 20 Sau đó gọi tắt là

thuật toán CLS Thuật toán CLS được thiết kế theo chiến lược chia để trị từ

trên xuống Nó gồm các bước sau [6]:

1 Tạo một nút T, nút này gồm tất cả các mẫu của tập huấn luyện

2 Nếu tất cả các mẫu trong T có thuộc tính quyết định mang giá trị

"yes" (hay thuộc cùng một lớp), thì gán nhãn cho nút T là "yes" và dừng lại T lúc này là nút lá

3 Nếu tất cả các mẫu trong T có thuộc tính quyết định mang giá trị

"no" (hay thuộc cùng một lớp), thì gán nhãn cho nút T là "no" và dừng lại T lúc này là nút lá

4 Trường hợp ngược lại các mẫu của tập huấn luyện thuộc cả hai lớp

"yes" và "no" thì:

+ Chọn một thuộc tính X trong tập thuộc tính của tập mẫu dữ liệu , X có các giá trị v1,v2, …vn

Ngày đăng: 02/12/2015, 12:28

HÌNH ẢNH LIÊN QUAN

Hình 2.1 Cây quyết định phân lớp mức lương - Khai phá dữ liệu bằng cây quyết định
Hình 2.1 Cây quyết định phân lớp mức lương (Trang 15)

TỪ KHÓA LIÊN QUAN

w