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

Ứng dụng khai phá dữ liệu để xây dựng hệ thống chẩn đoán bệnh trầm cảm cho học sinh phổ thông

96 24 2

Đ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 96
Dung lượng 2,19 MB

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

Nội dung

- Nghiên cứu các kỹ thuật phân lớp dữ liệu dựa vào cây quyết định, ứng dụng các kỹ thuật đó để chuẩn đoán bệnh rối loạn trầm cảm dựa vào các thông tin đầu vào.. Về bản chất, KPDL liên qu

Trang 1

HOÀNG THỊ THANH HIỀN

ỨNG DỤNG KHAI PHÁ DỮ LIỆU

ĐỂ XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN

BỆNH TRẦM CẢM CHO HỌC SINH PHỔ THÔNG

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

Đà Nẵng – Năm 2016

Trang 2

HOÀNG THỊ THANH HIỀN

ỨNG DỤNG KHAI PHÁ DỮ LIỆU

ĐỂ XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN BỆNH TRẦM CẢM CHO HỌC SINH PHỔ THÔNG

Chuyên ngành : HỆ THỐNG THÔNG TIN

Mã số : 60.48.01.04

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

Người hướng dẫn khoa học: PGS.TS NGUYỄN THANH BÌNH

Đà Nẵng – Năm 2016

Trang 3

LỜI CAM ĐOAN

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

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

ai công bố trong bất kỳ công trình nào khác

Tác giả

Hoàng Thị Thanh Hiền

Trang 4

MỤC LỤC

MỞ ĐẦU 1

1 Tính cấp thiết của đề tài 1

2 Mục tiêu nghiên cứu và nhiệm vụ nghiên cứu 2

3 Đối tượng và phạm vi nghiên cứu 3

4 Phương pháp nghiên cứu 3

5 Bố cục của luận văn 4

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

1.1 KHAI PHÁ DỮ LIỆU 6

1.1.1 Định nghĩa 6

1.1.2 Quy trình KPDL 7

1.1.3 Các kỹ thuật KPDL 9

1.1.4 Những ứng dụng của KPDL 10

1.2 KPDL BẰNG KỸ THUẬT CÂY QUYẾT ĐỊNH 11

1.2.1 Giới thiệu 11

1.2.2 Cấu trúc DT 13

1.2.3 Phương pháp xây dựng DT 13

1.2.4 Ưu điểm của DT 14

1.2.5 Thuật toán ID3 15

1.2.6 Thuật toán C4.5 21

1.3 KPDL BẰNG KỸ THUẬT PHÂN CỤM 30

1.3.1 Giới thiệu 30

1.3.2 Thuật toán K-Means 31

KẾT LUẬN CHƯƠNG 1 35

CHƯƠNG 2 NGHIÊN CỨU VÀ XỬ LÝ DỮ LIỆU VỀ BỆNH RỐI LOẠN TRẦM CẢM 36

2.1 ĐẶC ĐIỂM TÂM SINH LÝ CỦA TUỔI VỊ THÀNH NIÊN 36

Trang 5

2.2 KHÁI NIỆM VỀ BỆNH RỐI LOẠN TRẦM CẢM 37

2.3 THỰC TRẠNG BỆNH RỐI LOẠN TRẦM CẢM 38

2.4 ĐẶC ĐIỂM LÂM SÀNG CỦA BỆNH RỐI LOẠN TRẦM CẢM 39

2.4.1 Đặc điểm lâm sàng chung 39

2.4.2 Đặc điểm rối loạn trầm cảm ở trẻ vị thành niên 41

2.5 CHẨN ĐOÁN BỆNH RỐI LOẠN TRẦM CẢM 43

2.6 CÁC YẾU TỐ LIÊN QUAN ĐẾN BỆNH RLTC 45

2.6.1 Yếu tố gia đình 45

2.6.2 Yếu tố học đường 45

2.6.3 Yếu tố xã hội 45

2.7 THU THẬP VÀ XỬ LÝ DỮ LIỆU NGHIÊN CỨU BỆNH RLTC 46

2.7.1 Thu thập dữ liệu 46

2.7.2 Xử lý dữ liệu 47

2.8 CÁC CÔNG CỤ XÂY DỰNG MÔ HÌNH KPDL 47

2.8.1 Hệ quản trị CSDL SQL Server 2014 47

2.8.2 Công cụ xây dựng mô hình KPDL Business Intelligence 48

2.9 KPDL VỚI MSSQL SERVER 2014 ANALYSIS SERVICES 50

2.9.1 Giới thiệu 50

2.9.2 Môi trường phát triển ứng dụng 51

2.9.3 Các thuật toán KPDL trong MSSQL Server 2014 54

KẾT LUẬN CHƯƠNG 2 55

CHƯƠNG 3 XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN BỆNH RỐI LOẠN TRẦM CẢM DỰA TRÊN KHAI PHÁ DỮ LIỆU 56

3.1 XÂY DỰNG CSDL TRONG SQL SERVER 56

3.1.1 Mô tả dữ liệu 56

3.1.2 Bài toán chẩn đoán bệnh RLTC 60

3.1.3 Lựa chọn giải thuật giải quyết bài toán 61

Trang 6

3.1.4 Xây dựng CSDL 62

3.2 ỨNG DỤNG KỸ THUẬT DT ĐỂ XÂY DỰNG MÔ HÌNH CHẨN ĐOÁN BỆNH RLTC 63

3.2.1 Dữ liệu yêu cầu cho việc xây dựng mô hình DT 63

3.2.2 Những tham số được hỗ trợ trong thuật toán DT 63

3.2.3 Xây dựng mô hình KPDL và kết quả đạt được 64

3.2.4 Mức độ phụ thuộc của các dấu hiệu chẩn đoán bệnh RLTC 69

3.2.5 Đánh giá mô hình dự đoán 71

3.3 ỨNG DỤNG KỸ THUẬT PHÂN CỤM ĐỂ PHÂN TÍCH CÁC ĐẶC TRƯNG CỦA BỆNH RLTC 71

3.3.1 Dữ liệu yêu cầu cho việc xây dựng mô hình phân cụm 71

3.3.2 Xây dựng mô hình phân cụm 72

3.3.3 Kết quả mô hình phân cụm của bệnh RLTC 73

3.4 XÂY DỰNG HỆ THỐNG CHẨN ĐOÁN BỆNH RỐI LOẠN TRẦM CẢM 76

KẾT LUẬN CHƯƠNG 3 79

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 80

TÀI LIỆU THAM KHẢO 82 QUYẾT ĐỊNH GIAO ĐỀ TÀI (Bản sao)

PHỤ LỤC

Trang 7

DBMS Database Management System (Hệ quản trị cơ sở dữ liệu)

DT Decision Tree (Cây quyết định)

IG Information Gain (Gia lượng thông tin)

KPDL Khai phá dữ liệu

RLTC Rối loạn trầm cảm

SSAS Microsoft SQL Server 2012 Analysis Services

SQL Structured Query Language

Trang 8

DANH MỤC CÁC BẢNG

Số hiệu

1.2 Ví dụ thuật toán C4.5 dữ liệu chơi golf 25 1.3 Ví dụ minh họa thuật toán K-Means 32 2.1 Các công cụ lập trình ứng dụng Data Mining 52

2.2 Các thuật toán Data Mining trong MSSQL Server

3.1 Cấu trúc dữ liệu chẩn đoán bệnh RLTC 56

3.2 Mức độ phụ thuộc của từng biểu hiện đối với bệnh

Trang 9

DANH MỤC CÁC HÌNH VẼ

Số hiệu

1.3 Cây quyết định chơi golf từ thuật toán ID3 20 1.4 Cây quyết định chơi golf từ thuật toán C4.5 30

2.1 Quy trình xây dựng mô hình KPDL với BI 49

3.2 Dữ liệu sử dụng cho Training và test mô hình 62

3.4 Cây quyết định chẩn đoán bệnh RLTC 66 3.5 Các yếu tố ảnh hưởng đến bệnh RLTC 70 3.6 Ma trận biểu diễn khả năng chẩn đoán mô hình DT 71

3.8 Ma trận biểu diễn kết quả mô hình phân cụm 73

3.9 Những đặc trưng chi tiết của bệnh RLTC trong từng

Trang 10

MỞ ĐẦU

1 Tính cấp thiết của đề tài

Hiện nay, trầm cảm là một bệnh diễn ra khá phổ biến và có tác động phức tạp đến đời sống xã hội, nhất là đối với lứa tuổi thanh thiếu niên Nguyên nhân chủ yếu dẫn đến hiện tượng này chính là vấn đề về sức khoẻ tâm thần Theo ước tính của Tổ chức Y tế thế giới (WHO) trên 25% dân số thế giới bị rối loạn tâm thần và hành vi tại một thời điểm nào đó trong cuộc đời [19] Hằng năm, bệnh trầm cảm cướp đi trung bình 850.000 mạng người

Dự báo, đến năm 2020 trầm cảm là căn bệnh xếp hạng 2 trong số những căn bệnh phổ biến toàn cầu với 121 triệu người mắc bệnh

Ở Việt Nam, nghiên cứu của Lê Thị Kim Dung về một số yếu tố ảnh hưởng đến sức khỏe tâm thần của học sinh ở một số trường trung học cơ sở của một số thành phố ở Việt Nam cho thấy tỷ lệ học sinh có biểu hiện trầm cảm là 8,4% [3] Theo kết quả nghiên cứu của Nguyễn Thị Thuỳ Vân (2014) luận văn thạc sĩ y tế cộng đồng trường Đại học y khoa Huế tỷ lệ mắc bệnh trầm cảm ở học sinh phổ thông là 8,9% [10]

Sức khỏe tâm thần là một cấu phần quan trọng trong sức khỏe tổng thể của trẻ Đây là một vấn đề lớn cần được quan tâm, đặc biệt trong công tác chăm sóc sức khoẻ ban đầu ở cộng đồng Vấn đề sức khỏe tâm thần ở thời kỳ

vị thành niên có mối liên quan chặt chẽ với rất nhiều hành vi như: uống rượu, hút thuốc, sử dụng ma túy, nguy cơ tự tử,… sẽ ảnh hưởng đến sức khỏe của trẻ khi trưởng thành

Ở tuổi vị thành niên, rối loạn trầm cảm thường biểu hiện là những thay đổi về cảm xúc như: cảm thấy buồn, khóc, vô vọng; không quan tâm đến những hoạt động vui chơi, giải trí hay suy giảm các hoạt động học tập; ăn không ngon miệng; hay thay đổi về giấc ngủ; hay có những khó chịu trong cơ

Trang 11

thể một cách mơ hồ; ngoài ra trẻ còn nghĩ rằng không thể làm được việc gì đúng, cảm thấy cuộc sống không có ý nghĩa hoặc vô vọng [6]

Trầm cảm ảnh hưởng rất lớn đến năng lực học tập, giao tiếp; sự hình thành phát triển các mối quan hệ xã hội, hoàn thiện thể chất, tinh thần và tính cách của trẻ Nếu rối loạn trầm cảm không được quan tâm phòng ngừa và can thiệp phù hợp sẽ tăng gánh nặng cho gia đình và xã hội Do đó, yêu cầu cấp thiết cần phải có hệ thống chẩn đoán sàng lọc lâm sàng để phát hiện sớm các biểu hiện rối loạn trầm cảm ở học sinh phổ thông nhằm đưa ra các giải pháp can thiệp kịp thời trong việc phát triển sức khỏe

Hiện nay, việc ứng dụng Công nghệ thông tin (CNTT) vào lĩnh vực y tế còn hạn chế, nhất là việc hỗ trợ tìm kiếm, khai thác thông tin nhằm chẩn đoán các biểu hiện lâm sàng Trong đó, khai phá dữ liệu là một kỹ thuật thường được áp dụng để hỗ trợ đưa ra các quyết định khá chính xác

Xuất phát từ những thực tế trên, tôi đã chọn đề tài “Ứng dụng khai phá

dữ liệu để xây dựng hệ thống chẩn đoán bệnh trầm cảm cho học sinh phổ thông” để nghiên cứu luận văn thạc sĩ của mình

2 Mục tiêu nghiên cứu và nhiệm vụ nghiên cứu

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

Nghiên cứu phương pháp khai phá dữ liệu và ứng dụng để xây dựng hệ thống hỗ trợ chẩn đoán bệnh rối loạn trầm cảm

 Nhiệm vụ nghiên cứu:

- Tìm hiểu về bệnh rối loạn trầm cảm, tiến hành điều tra thu thập dữ liệu

Trang 12

- Ứng dụng công cụ hỗ trợ khai phá Business Intelligence để xây dựng

và kiểm tra các mô hình

- Đánh giá kết quả dự đoán của mô hình và lựa chọn mô hình tốt nhất để chẩn đoán bệnh rối loạn trầm cảm

- Ứng dụng kỹ thuật cây quyết định xây dựng hệ thống chẩn đoán bệnh trầm cảm của học sinh

- Ứng dụng kỹ thuật phân cụm để phân tích các đặc trưng của bệnh rối loại trầm cảm

3 Đối tượng và phạm vi nghiên cứu

 Đối tượng nghiên cứu

- Dữ liệu nghiên cứu bao gồm các đặc điểm cá nhân và một số yếu tố liên quan đến biểu hiện rối loạn trầm cảm của học sinh

- Các kỹ thuật khai phá dữ liệu, công cụ khai phá dữ liệu và mô-đun lập trình trong khai phá dữ liệu

 Phạm vi nghiên cứu

- Số liệu thu thập gồm các hồ sơ bệnh án thuộc đối tượng trẻ vị thành niên từ 12 -18 tuổi, được chẩn đoán bệnh trầm cảm tại Khoa tâm thần - bệnh viện đa khoa tỉnh Quảng Trị, phòng khám đa khoa trường Cao Đẳng Y tế Quảng Trị và một số phòng khám tư nhân trên địa bàn tỉnh Quảng Trị

- Các kỹ thuật: phân lớp bằng cây quyết định và kỹ thuật phân cụm

- Công cụ hỗ trợ khai phá Business Intelligence và các mô-đun hỗ trợ

- Xây dựng hệ thống chẩn đoán bệnh và tìm ra những đặc trưng của bệnh rối loạn trầm cảm

4 Phương pháp nghiên cứu

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

- Thu thập, đọc hiểu thông tin từ các tài liệu, giáo trình liên quan đến khai phá dữ liệu

Trang 13

- Nghiên cứu các kỹ thuật phân lớp dữ liệu dựa vào cây quyết định, ứng dụng các kỹ thuật đó để chuẩn đoán bệnh rối loạn trầm cảm dựa vào các thông tin đầu vào

- Tìm hiểu các kỹ thuật phân cụm để phân tích những đặc trưng của bệnh rối loạn trầm cảm

 Phương pháp nghiên cứu thực tiễn

- Sử dụng kiến thức khai phá dữ liệu cộng với tri thức chuyên gia bác sĩ,

y học chứng cứ và y học thực chứng trong quá trình khai phá dữ liệu y khoa

- Tiến hành so sánh kết quả của các kỹ thuật khai phá dữ liệu để lựa chọn

kỹ thuật cho kết quả chính xác nhất

- Xây dựng hệ thống nhằm hỗ trợ bác sĩ trong việc chẩn đoán và điều trị bệnh

5 Bố cục của luận văn

Ngoài các phần như mở đầu, kết luận và hướng phát triển, đề tài gồm 3 chương:

Chương 1: Tổng quan về khai phá dữ liệu Chương này tìm hiểu và trình bày các nội dung: nghiên cứu tổng quan về khai phá dữ liệu; các kỹ thuật khai phá dữ liệu bằng cây quyết định và kỹ thuật phân cụm

Chương 2: Nghiên cứu và xử lý dữ liệu về bệnh rối loạn trầm cảm Chương này trình bày nội dung sau: tìm hiểu đặc điểm tâm lý của tuổi vị thành niên, khái niệm về bệnh rối loạn trầm cảm, đặc điểm lâm sàng, các yếu

tố liên quan đến bệnh rối loại trầm cảm trên cơ sở đó thu thập và xử lý dữ liệu nghiên cứu bệnh RLTC Ngoài ra còn trình bày các công cụ xây dựng mô hình khai phá dữ liệu

Chương 3: Xây dựng hệ thống chẩn đoán bệnh trầm cảm dựa trên khai phá dữ liệu Chương này trình bày dữ liệu yêu cầu cho việc xây dựng mô hình, những tham số hỗ trợ cho các thuật toán từ đó ứng dụng kỹ thuật cây

Trang 14

quyết định để chẩn đoán bệnh và kỹ thuật phân cụm để phân tích các đặc trưng của bệnh rối loại trầm cảm cho học sinh Đồng thời chương này xây dựng chương trình cài đặt thử nghiệm việc chẩn đoán bệnh bằng kỹ thuật quyết định và kỹ thuật phân cụm trên cơ sở dữ liệu bệnh RLTC

Trang 15

sở dữ liệu Về bản chất, KPDL liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìm ra các mẫu có tính chính quy trong tập dữ liệu Ở mức độ tổng quát, ta có thể coi mục đích chính của quá trình KPDL là mô tả

và dự đoán [5] Dự đoán liên quan đến việc sử dụng các biến hoặc các trường trong cơ sở dữ liệu để dự đoán những giá trị chưa biết hoặc những giá trị trong tương lai của các biến quan tâm Mô tả hướng tới việc tìm ra các mẫu

mô tả dữ liệu Dự đoán và mô tả có tầm quan trọng khác nhau đối với các thuật toán KPDL

Giáo sư Tom Mitchell đã đưa ra định nghĩa KPDL như sau: “KPDL 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”

Định nghĩa của Ferruzza: “KPDL là tập hợp các phương pháp được

dùng trong tiến trình khám phá tri thức để chỉ ra sự khác biệt các mối quan

hệ và các mẫu chưa biết bên trong dữ liệu”

Định nghĩa của Parsaye: “KPDL là quá trình trợ giúp quyết định, trong

đó chúng ta tìm kiếm các mẫu thông tin chưa biết và bất ngờ trong cơ sở dữ liệu (CSDL) lớn”

Với một cách tiếp cận ứng dụng hơn, tiến sĩ Fayyad đã phát biểu:

“KPDL thường được xem là việc khám phá tri thức trong các CSDL, là một

Trang 16

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 CSDL.”

Còn các nhà thống kê thì xem "KPDL 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 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: KPDL là một quá trình phát hiện những tri thức mới từ những dữ liệu đã thu thập được

mô hình mới chưa biết [7]

Quá trình xử lý khai phá dữ liệu bắt đầu bằng cách xác định chính xác vấn đề cần giải quyết Sau đó sẽ xác định các dữ liệu liên quan dùng để xây dựng giải pháp Bước tiếp theo là thu thập các dữ liệu có liên quan và xử lý chúng thành dạng sao cho giải thuật khai phá dữ liệu có thể hiểu được Về lý thuyết thì có vẻ rất đơn giản nhưng khi thực hiện thì đây thực sự là một quá trình rất khó khăn, gặp phải nhiều vướng mắc như: các dữ liệu phải được sao

ra nhiều bản (nếu được chiết xuất vào các tệp), quản lý các tệp dữ liệu, phải lặp đi lặp lại nhiều lần toàn bộ quá trình (nếu mô hình dữ liệu thay đổi),…Bước tiếp theo là chọn thuật toán khai phá dữ liệu thích hợp và thực hiện việc khai phá dữ liệu để tìm được các mẫu có ý nghĩa dưới dạng biểu

Trang 17

diễn tương ứng với các ý nghĩa đó (thường thì được biểu diễn dưới dạng các luật xếp loại, cây quyết định, phát sinh luật, biểu thức hồi quy,…)

Quy trình KPDL bao gồm các bước như trong hình sau:

Hình 1.1 Quy trình KPDL

Bước 1 Làm sạch dữ liệu (Data cleaning & preprocessing): Loại bỏ

nhiễu và các dữ liệu không cần thiết

Bước 2 Tích hợp dữ liệu: (Data integration): quá trình hợp nhất dữ liệu

thành những kho dữ liệu (data warehouses & data marts) sau khi đã làm sạch

và tiền xử lý (data cleaning & preprocessing)

Bước 3 Trích chọn dữ liệu (Data selection): trích chọn dữ liệu từ những

kho dữ liệu và sau đó chuyển đổi về dạng thích hợp cho quá trình khai thác tri

Trang 18

thức Quá trình này bao gồm cả việc xử lý với dữ liệu nhiễu (noisy data), dữ liệu không đầy đủ (incomplete data),

Bước 4 Chuyển đổi dữ liệu (Data transformation): Các dữ liệu được

chuyển đổi sang các dạng phù hợp cho quá trình xử lý

Bước 5 Khai phá dữ liệu (Data mining): Là một trong các buớc quan

trọng nhất, trong đó sử dụng những phương pháp thông minh để chắt lọc ra những mẫu dữ liệu

Bước 6 Ước lượng mẫu (Knowledge evaluation): Quá trình đánh giá các

kết quả tìm đuợc thông qua các độ đo nào đó

Bước 7 Biểu diễn tri thức (Knowledge presentation): Quá trình này sử dụng các kỹ thuật để biểu diễn và thể hiện trực quan cho nguời dùng

1.1.3 Các kỹ thuật KPDL

- Cây quyết định (Decision Tree): 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

- Phân lớp dữ liệu (Data Classification): 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

- Phân cụm dữ liệu (Data Clustering): 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

- Khai phá luật kết hợp (Association Rule): 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 CSDL

Trang 19

Đầ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

- Hồi quy (Regression): 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

- Giải thuật di truyền (Genetic Algorithm): 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

- Mạng Nơron (Neural Network): Đây là một trong những kỹ thuật

KPDL đượ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

Nói cách khác mục đích KPDL chính là tìm ra các mẫu và các mô hình đang tồn tại trong các CSDL nhưng vẫn còn tiểm ẩn có trong CSDL Ngày nay KPDL có nhiều ứng dụng trong thực tế, một số ứng dụng điển hình của KPDL có thể được áp dụng trong các lĩnh vực như:

- Tài chính và thị trường chứng khoán: Áp dụng vào việc phân tích các thẻ tín dụng tiêu biểu của các khách hàng, phân tích tình hình tài chính và dự báo giá của các loại cổ phiếu trong thị trường chứng khoán Danh mục vốn, giá cả, lãi suất, dữ liệu thẻ tín dụng và phát hiện gian lận…

Trang 20

- Marketing: các ứng dụng bao gồm việc phân tích hành vi của khách hành dựa vào các hoá đơn mua hàng, xác định kế hoạch Marketing

- Bảo hiểm: Áp dụng vào việc phân tích mức độ rủi ro xảy ra đối với từng loại hàng hoá, dịch vụ hay chiến lược tìm kiếm khách …

- Y học và chăm sóc y tế: ứng dụng vào việc tìm ra mẫu trong phim Quang, phân tích dữ liệu thí nghiệm để tìm ra bệnh tật, phân tích mối liên hệ giữa triệu chứng bệnh, chẩn đoán và phân tích ảnh hưởng của thuốc và hiệu quả của việc điều trị và tối ưu hoá các quá trình xử lý trong một bệnh viện, mối quan hệ giữa tình trạng bệnh nhân với chuyên môn của bác sĩ…

X Text mining & Web mining: Phân lớp văn bản và các trang web Tóm tắt văn bản…

- Mạng viễn thông: Phân tích các cuộc gọi điện thoại và hệ thống giám sát lỗi, phát hiện gian lận, các ứng dụng quản lý và chăm sóc khách hàng, phát hiện sự cố để đưa ra biện pháp phát triển chất lương dịch vụ…

Ngoài ra KPDL có nhiều ứng dụng khác có thể được áp dụng trong các lĩnh vực như môi trường, xã hội học…

1.2 KPDL BẰNG KỸ THUẬT CÂY QUYẾT ĐỊNH

1.2.1 Giới thiệu

Trong lĩnh vực KPDL, cây quyết định (Decision Tree - DT) là một mô hình dự đoán thuộc lớp các bài toán phân lớp dùng để xác định lớp của các đối tượng cần dự đoán DT dựa vào dãy các luật để dự đoán lớp các đối tượng DT có cấu trúc biểu diễn dạng cây Trong đó, mỗi nút trong biểu diễn một thuộc tính, mỗi nhánh biễu diễn giá trị có thể có của thuộc tính, mỗi lá biểu diễn các lớp quyết định và đỉnh trên cùng của cây gọi là gốc

Trong lĩnh vực học máy, DT là một kiểu mô hình dự báo, nghĩa là một ánh xạ từ các quan sát về một sự vật hay 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 tương ứng với một biến; đường

Trang 21

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 phân loại; DT học để dự đoán giá trị của các biến phân loại bằng cách dựa vào tập huấn luyện để chọn ra các nút gốc

để phân nhánh cây bằng cách tính độ lợi thông tin, quá trình này được lặp đi lặp lại một cách đệ qui cho đến khi không thể tiếp tục thực hiện việc phân tách cây được nữa Kỹ thuật học máy dùng trong DT được gọi là học bằng

DT, hay chỉ gọi với tên ngắn gọn là DT [11],[13]

Dữ liệu huấn luyện cho DT là tập các bản ghi có dạng

(x,y) = (x1, x2, x3, ,xk, y)

Trong đó: y được gọi là biến phân loại (hay còn gọi là biến mục tiêu hay biến phụ thuộc) và x1, x2, x3, ,xk là các biến độc lập

DT được chia làm 2 loại:

+ Cây truy hồi dùng để dự đoán giá trị của biến phân loại có kiểu dữ liệu định lượng như dự đoán doanh thu, lợi nhuận, giá thành sản phẩm

+ Cây phân lớp dùng để dự đoán giá trị của biến phân loại có kiểu định danh như dự đoán khả năng mua hàng của khách hàng (có mua hoặc không mua), khả năng bị bệnh của bệnh nhân (có bệnh hoặc không có bệnh), kết quả học tập của nhận viên (xuất sắc, giỏi, khá, trung bình, yếu)

Hình 1.2 Biểu diễn DT cơ bản

Root

Leaf node Internal node

Leaf node Leaf node Branch

Trang 22

- Mỗi nút trong biểu diễn một thuộc tính (biến độc lập)

- Mỗi nhánh từ một nút sẽ tương ứng với một giá trị có thể của thuộc tính gắn với nút đó

- Mỗi nút lá biểu diễn một phân lớp (biến phụ thuộc)

- DT được sử dụng trong phân lớp bằng cách duyệt từ nút gốc của cây cho đến khi đụng đến nút lá, từ đó rút ra lớp của đối tượng cần xét

- Một DT biểu diễn một phép tuyển của các kết hợp của các ràng buộc đối với các giá trị thuộc tính

- Mỗi đường đi từ nút gốc đến một lá sẽ tương ứng với một kết hợp của các giá trị thuộc tính

- DT chính là một phép tuyển của các kết hợp

1.2.3 Phương pháp xây dựng DT

Có rất nhiều thuật toán khác nhau để xây dựng DT như: CLS, ID3, C4.5, SPRINT nhưng nói chung quá trình xây dựng DT bao gồm 2 giai đoạn: Tạo cây và tỉa cây

Tạo 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

Tỉa cây: Là việc làm dùng để tối ưu hoá cây, là xác định và xoá những nhánh mà có phần tử hỗn loạn hoặc những phần tử nằm ngoài (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 DT, mặc dù vậy chúng vẫn tuân theo các bước sau:

Trang 23

- 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

- Thuộc tính được phân loại (rời rạc hoá 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ê

- Tiếp tục lặp lại việc xây dựng DT 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ạo nút

1.2.4 Ưu điểm của DT

So với các phương pháp KPDL khác, DT có một số ưu điểm:

 DT dễ hiểu: có thể hiểu mô hình DT sau khi được giải thích ngắn gọn

 Việc chuẩn bị dữ liệu cho một DT chỉ đòi hỏi dữ liệu được chuẩn hoá

cơ bản hoặc đôi khi không cần thiết tiền xử lý dữ liệu khi tiến hành khai phá Trong khi đó, các kỹ thuật khác thường đòi hỏi chuẩn hoá dữ liệu, cần tạo các biến phụ và loại bỏ các giá trị rỗng

 DT có thể xử lý cả dữ liệu có giá trị bằng số, liên tục và rời rạc Các kỹ thuật khác thường xuyên để phân tích các bộ dữ liệu chỉ gồm các thuộc tính

có giá trị hoặc liên tục (dạng số) hoặc rời rạc

 Có thể thẩm định một mô hình bằng các kiểm tra thống kê Điều này làm cho ta có thể tin tưởng vào mô hình

 DT có thể xử lý tốt một lượng dữ liệu lớn đưa ra kết quả trong thời gian ngắn Có thể dùng máy tính cá nhân để phân tích các lượng dữ liệu lớn trong một thời gian đủ ngắn cho phép các nhà chiến lược đưa ra quyết định dựa trên phân tích của DT

Trang 24

1.2.5 Thuật toán ID3

a Giới thiệu

Thuật toán ID3 do Ross Quilan đề xuất [17] Tư tưởng của thuật toán ID3 là việc xây dựng DT được thực hiện đệ qui từ trên xuống và sử dụng độ lợi thông tin làm độ đo để chọn nút gốc để phân tách cây IG là tham số được tính dựa trên Entropy Nút được chọn làm nút gốc là khi nó có IG lớn nhất hoặc code có Entropy nhỏ nhất Công thức tính Entropy:

Entropy(S) = ∑𝐼∈𝐶−𝑝(𝐼)𝑙𝑜𝑔2𝑝(𝐼) (1.1)

Trong đó: S: tập dữ liệu huấn luyện; p(I) là tỷ số giữ các mẫu thuộc về lớp I trên tổng số các mẫu huấn luyện trong S; C là tập giá trị của thuộc tính

phân loại

Các bước chính trong thuật toán ID3:

1 Tính Entropy của tất cả các thuộc tính trong data set S

2 Chia tập S thành các tập con sử dụng thuộc tính có Entropy nhỏ nhất (tương ứng với IG lớn nhất)

3 Tạo DT với node gốc là nút có IG lớn nhất

4 Thực hiện đệ qui trên các tập con sử dụng các thuộc tính còn lại

b Lựa chọn thuộc tính để kiểm tra

 Entropy

Entropy là một đại lượng toán học được sử dụng trong lĩnh vực lý thuyết thông tin nhằm đo lượng tin ngẫu nhiên của một sự kiện hay của phân phối ngẫu nhiên cho trước của một tập S Entropy của một tập S được định nghĩa: + Trường hợp tổng quát, đối với tập con S có phân lớp thì có biểu thức:

Trong đó pi là tần xuất tương đối của lớp i trong S

+ Các trường hợp đặc biệt:

Trang 25

 Nếu tất cả các mẫu thành viên trong tập S đều thuộc cùng một lớp thì Entropy(S)= 0

 Nếu trong tập S có số mẫu phân bổ đều nhau vào các lớp thì Entropy(S)=1

 Các trường hợp còn lại 0 < Entropy(S)<1

Trong trường hợp các mẫu dữ liệu có hai thuộc tính phân lớp “Yes” (+),

“NO” (-) Ký hiệu P+ là để chỉ tỷ lệ các mẫu có giá trị của thuộc tính quyết định là “Yes”, và P- là tỷ lệ các mẫu có giá trị của thuộc tính quyết định là

“No” trong tập S

Entropy(S) = -P+𝑙𝑜𝑔2𝑃+− 𝑃−𝑙𝑜𝑔2𝑃− (1.3)

 Gia lượng thông tin IG (Information Gain)

Gia lượng thông tin là tiêu chuẩn đánh giá khả năng của một thuộc tính khi được dùng để phân lớp các mẫu dựa vào giá trị Entropy Dựa vào tiêu chuẩn này để chọn được thuộc tính có giá trị Entropy nhỏ nhất và dùng thuộc tính này để phân chia tập mẫu

Cho tập dữ liệu S gồm có n thuộc tính Ai (i=1,2 n) giá trị IG gọi tắt là Gain của thuộc tính A trong tập S ký hiệu là Gain(A,S) được tính:

Gain(S,A) = Entropy(S) - ∑𝑣∈𝑉𝑉𝑎𝑙𝑢𝑠𝑒(𝐴)|𝑆|𝑆|𝑣| 𝐸𝑛𝑡𝑟𝑜𝑝𝑦(𝑆𝑣) (1.4)

Trong đó: v các giá trị của thuộc tính A; S v bằng tập hợp con của tập S

mà có thuộc tính A mang giá trị v; |𝑆𝑣| là số phần tử của tập S v ; | 𝑆| là số phần

tử của tập S

Trong công thức trên, thành phần thứ 2 thể hiện giá trị Entropy sau khi tập S được phân chia bởi các giá trị của thuộc tính A

c Giải thuật ID3

Thuật toán ID3 được trình bày như sau:

ID3(R,C,S)

Trang 26

Input: R: Tập các thuộc tính,

C: Thuộc tính phân loại

S: Tập dữ liệu huấn luyện

Output: Returns a Decision Tree

Begin:

If S rỗng then trả về một node với giá trị lỗi (Failure);

If S gồm các records với giá trị thuộc tính phân loại giống nhau then trả

về nút với giá trị đó;

if R rỗng then trả về một nút với giá trị có tần xuất hiện nhiều nhất trong

các giá trị của thuộc tính phân loại trong S;

Let D là thuộc tính có giá trị IG(D,S) lớn nhất trong R;

Let {dj|j=1,2, ,m}là các giá trị của thuộc tính D;

Let {Sj|j=1,2, ,m} là các tập con của S gồm các records tương ứng với giá trị dj của thuộc tính D;

Return một cây với nút gốc có nhãn là D và các cạnh có nhãn d1, d2, ,

dm tương ứng với các giá trị của thuộc tính D;

ID3(R-{D},C,S1), ID3(R-{D}, C, S2), , ID3(R-{D}, C, Sm);

End ID3;

d Ví dụ

Xét ví dụ quyết định chơi/không chơi golf Các thuộc tính được mô tả:

Bảng 1.1 Bảng dữ liệu chơi golf

Day Outlook Temp Humidity Wind Play?

Trang 27

Day Outlook Temp Humidity Wind Play?

7 Overcast Cool Normal Weak Yes

10 Rain Mild Normal Strong Yes

11 Sunny Mild Normal Strong Yes

12 Overcast Mild High Strong Yes

13 Overcast Hot Normal Weak Yes

Bảng 1.1 có 14 bộ dữ liệu với 4 thuộc tính điều kiện (Outlook, Temp,

Humidity, Wind) và một thuộc tính quyết định là “Play” có giá trị nhãn là

5log14

514

9log14

9)

5,9I(

)S,

Trang 28

Tính Gain cho Temp

Gain(S, Temp) = Entropy(S) - 144 Entropy(SHot) - 146 Entropy(SMild) - 144Entropy(SCool)= 0.940 - 4

Tính Gain cho Wind

Gain(S, Wind) = Entropy(S) - 6

Tính Gain cho Humidity

Gain(S,Humidit) = Entropy(S) - 147Entropy(SHigh) - 147Entropy(SNormal)

Trang 29

Gain(SSunny, Humidity) = Entropy(SSunny) - 3

5 x Entropy(SHigh) - 2

5 x Entropy(SNormal) = 0.971 - 3

Ta tính Gain cho các thuộc tính Temp, Wind của nút Rain

Gain(SRain,Temp) = Entropy(SRain) - 3

5 Entropy(SMild) - 2

5 Entropy(SCool) = 0.971 - 3

Ta có cây quyết định chơi golf như sau:

Hình 1.3 Cây quyết định chơi golf từ thuật toán ID3

Yes

Yes

No

Trang 30

Luật 2: if (Outlook = Sunny) and (Humidity= Normal) then Play= Yes Luật 3: if (Outlook = Overcast) then Play= Yes

Luật 4: if (Outlook = Rain) and (Wind= Weak) then Play= Yes

Luật 5: if (Outlook = Rain) and (Wind= Strong) then Play= No

e Đánh giá thuật toán ID3

Ưu điểm của thuật toán ID3

 Sử dụng thuật toán tìm kiếm leo đồi dựa trên giá trị Gain để tìm kiếm các thuộc tính trong toàn bộ DT

 Đầu ra chỉ là một giả thiết đơn (cho 1 kết quả duy nhất)

 Sử dụng các thuộc tính tĩnh: Hạn chế tối đa cho những bản ghi dữ liệu riêng lẽ

 Kiểm soát được dữ liệu rác, dữ liệu tạp bên ngoài bằng cách giảm bớ yêu cầu tiêu chuẩn cho việc chấp nhận những dữ liệu chưa hoàn thành

Những khuyết điểm của thuật toán ID3

 Không xử lý các thuộc tính có kiểu giá trị liên tục (kiểu số thực)

 Không thích ứng được với những tập dữ liệu tạp (dễ phát sinh lỗi) Không hiệu quả khi xuất hiện những dữ liệu không mong muốn

 DT khi sinh ra lớn, rườm rà, chưa được tối ưu ở mức tối đa có thể

 Không có khả năng xử lý các ví dụ thiếu giá trị thuộc tính

1.2.6 Thuật toán C4.5

a Giới thiệu

Thuật toán C4.5 được phát hiện và công bố bởi Quinlan vào năm 1996 Thuật toán C4.5 là thuật toán được cải tiến từ thuật toán ID3, C4.5 giải quyết được hầu hết hạn chế của ID3 C4.5 sử dụng độ đo là Gain Ratio thực hiện phân lớp tập mẫu dữ liệu theo chiến lược ưu tiên theo chiều sâu và được dùng rộng rãi trong các ứng dụng phân lớp với lượng dữ liệu cỡ vài trăm nghìn bản ghi

Trang 31

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

RatioGain: Sự đánh giá thay đổi các giá trị của thuộc tính

𝑅𝑎𝑡𝑖𝑜𝐺𝑎𝑖𝑛(𝑆, 𝐴)= 𝐺𝑎𝑖𝑛(𝑆,𝐴)

𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜𝑚𝑎𝑡𝑖𝑜𝑛(𝑆,𝐴)

Trong đó:

 Cách tính Entropy và Gain như đã trình bày phần 1.2.5.b

 SplitInfomation: Thông tin tiềm ẩn được tạo ra bằng cách chia tập dữ liệu trong một số tập con nào đó

𝑅𝑎𝑡𝑖𝑜𝐺𝑎𝑖𝑛(𝑆, 𝐴)=− ∑ |𝑆𝑖 |

|𝑆|

𝑐 𝑖=1 log2|𝑆𝑖 |

|𝑆|

Với Si làtập con của S chứa các ví dụ có thuộc tính A mang giá trị Vi Để

ý rằng SplitInfomation thực sự chính là Entropy của S với sự liên quan trên những giá trị của thuộc tính A Trong thuật toán C4.5 tất cả các thuộc tính sẽ được tính toán độ đo RatioGain, thuộc tính nào có độ đo RatioGain lớn nhất

sẽ được chọn làm thuộc tính phân chia

b Thuật toán C4.5

Dữ liệu vào: Tập dữ liệu E, tập thuộc tính F, tập nhãn lớp

Dữ liệu ra: Mô hình DT

Thuật toán:

Tạo cây (Tập dữ liệu E, tập thuộc tính F, tập nhãn lớp)

Nếu điều kiện dừng (E,F) = Đúng

Trang 32

Đặt V={v|v thoả mãn điều kiện là phần phân chia xuất phát từ Nutgoc}

Lặp qua từng tập phân chia v ∈ V

Đặt Ev = {e| Nutgoc.điều kiện kiểm tra (e) = v và e ∈ E}

Nutcon = Tạocây(Ev, F, Tập nhãn lớp)

Dừng lặp

End if

Trả về Nút gốc

Gọi hàm Tạocây (E, tập thuộc tính F của E, tập nhãn lớp)

Giải thích về thuật toán:

Đây là một thuật toán kiểu đệ qui tạo DT Tại hàm chính, gọi hàm đệ quy TạoCây() với ba tham số vào là tập dữ liệu E, tập thuộc tính F của E và tập nhãn Thuật toán làm việc bằng cách thực hiện đệ quy chọn giá trị thuộc tính tốt nhất để chia, lưu ý là chọn giá trị của thuộc tính sao cho điều kiện chia tốt nhất, tiếp tục tiến hành mở rộng nút con bằng cách gọi đệ qui cho đến khi điều kiện dừng được thoả mãn

c Mội số cải tiến so với ID3

 Thuộc tính liên tục:

Thuật toán ID3 bị giới hạn bởi việc liên quan đến tập những giá trị rời rạc Trong thuật toán C4.5 chúng ta sẽ mở rộng phạm vị hoạt động của nó cho những thuộc tính có giá trị liên tục để phù hợp với thế giới thực

Thuật toán C4.5 đưa ra định nghĩa những giá trị rời rạc mới để phân những giá trị liên tục thành những thuộc tính tượng trưng một lần nữa theo nguyên tắc sau:

 Dựa trên một giá trị nếu muốn phân chia nhị phân

 Dựa trên vài giá trị nếu muốn có nhiều nhánh

Trang 33

 Với mỗi giá trị tính các mẫu thuộc một lớp theo dạng F<v và F>v

 Cách chọn giá trị v hiệu quả:

 Sắp xếp các giá trị tăng dần

 Chọn giá trị trung bình của từng cặp giá trị của thuộc tính để phân chia và tính chỉ số gia lượng thông tin

 Chọn giá trị phân chia có chỉ số gia lượng thông tin cao nhất

 Thuộc tính nhiều giá trị

Thuật toán ID3 bị giới hạn bởi việc liên quan đến những thuộc tính có nhiều giá trị mà các giá trị này lại duy nhất như kiểu dữ liệu ngày – tháng –năm, kiểu dữ liệu như mã nhân viên, số chứng minh nhân dân sẽ hình thành một số lượng quá lớn các nhánh con làm kết quả của cây trở nên lớn và phức tạp nhưng lại vô nghĩa Khi đó, việc chia một tập dữ liệu thành quá nhiều các tập con dẫn đến số lượng các lớp tại mỗi nút giảm và do đó Entropy trên thuộc tính đó cũng giảm theo, nên sự thu thập thông tin sẽ cao hơn các thuộc tính khác Vì vậy thuộc tính này sẽ được lựa chọn thường xuyên để tách, dẫn đến độ phân nhánh lớn, cây sẽ rất lớn và phức tạp

C4.5 giải quyết vấn đề này bằng cách lựa chọn thuộc tính để phân tách theo nguyên tắc:

 Thuộc tính có tỉ lệ gia lượng thông tin cao

 Entropy của thuộc tính lớn hơn Entropy trung bình của tất cả các thuộc tính

 Thuộc tính thiếu giá trị

 Nếu giá trị của thuộc tính F bị mất trên một số bộ dữ liệu, hướng giải quyết sẽ thế nào? Giả sử rằng (x,C(x)) là một trong những tập huấn luyện trong S và giá trị F(x) là không được biết đến

 Giải pháp là thay bằng giá trị xuất hiện nhiều nhất của thuộc tính F

Trang 34

 Thay bằng giá trị xuất hiện nhiều nhất của thuộc tính A mà có cùng giá trị hàm mục tiêu

 Tính lại các công thức dựa trên những giá trị đã có của thuộc tính F

d Ví dụ thuật toán C4.5

Bảng 1.2 Ví dụ thuật toán C4.5 dữ liệu chơi golf

Day Outlook Temp Humidity Wind Play?

12 Overcast Mild 90 Strong Yes

 Dữ liệu vào:

Tập dữ liệu thời tiết

Tập thuộc tính: Day, Outlook, Temp, Humidity, Wind

Tập nhãn lớp: Yes – No

 Dữ liệu ra: Mô hình quyết định chơi golf

 Tạo cây quyết định:

Trang 35

Lần tạo cây đầu tiên:

 Tìm điểm chia tốt nhất (E,F)

E: Tập dữ liệu thời tiết

 F: Day, Outlook, Temp, Humidity, Wind

Tính độ đo tỉ lệ Gain cho thuộc tính “Outlook”

EntropyOutlook(S)= 145Entropy (Ssunny) + 144 𝑥 Entropy(SOvercast) + 145 x Entropy(Srain)= (5

14log2 6

14− 8

14log2 8

14 = 0.985 GainRatio(S,Wind) = 0.048/0.985 = 0.049

Tính độ đo tỉ lệ Gain cho thuộc tính “Humidity”

EntropyHumidity(S) = 4

14 Entropy (S72.5) + 10

14 Entropy(S>72.5)

Trang 36

Tính độ đo tỉ lệ Gain cho thuộc tính “Day”:

EntropyDay(S)= 4

14Entropy(SD1)+ ….+ 4

14Entropy(SD14) = 12 x 4

14 x0= 0 Gain(S,Day)= Entropy(S) – EntropyDay(S) = 0.940 – 0 = 0.940

SplitInfomation(S,Day) = 14x (−141) log2141 = 3.807

GainRatio(S,Day) = 0.940/3.807 = 0.246

 Lựa chọn thuộc tính tốt nhất để phân chia:

Entropy trung bình của các thuộc tính = (0.694+ 0.892 + 0.925 + 0.911 + 0)/5= 0.684

Ta có: GainRatio(S,Outlook) = 0.156

EntropyOutlook(S)= 0.694>0.684

Thuộc tính được chọn để phân chia: Outlook

Tương tự như lần tạo cây thứ 1 ta tiếp tục tạo cây thứ 2:

Nhánh “Sunny”

Tính độ đo tỉ lệ Gian cho thuộc tính “Temp”:

Trang 37

SplitInfomation(SSunny,Temp) = - (25) log2(25) − (25) log2(25) −

(15) log2(25) = 1.522

GainRatio(Ssunny,Temp) = 0.571/1.522 = 0.375

Tính độ đo tỉ lệ Gian cho thuộc tính “Humidity”:

Chọn giá trị phân chia tốt nhất:

Tính độ đo tỉ lệ Gian cho thuộc tính “Wind”:

EntropyWind(SSunny)= 2

5xEntropy (SWeak) + 3

5 𝑥 Entropy(SStrong)

= 25(1) + ((35) (−13) log2(13) − (23) log2(23)) = 0.951

Gain(SSunny,Wind)= 0.971– 0.951 = 0.020

SplitInfomation(SSunny,Wind) = - (25) log225−35log235= 0.971

GainRatio(SSunny,Wind) = 0.020/0.971 = 0.021

Trang 38

Tính độ đo tỉ lệ Gain cho thuộc tính “Day”:

EntropyDay(SSunny)= 15 x Entropy(SD1)+1

5xEntropy(SD2)+ 15xEntropy(SD8) + 15 x Entropy(SD9)+ 15 x Entropy(SD11)= 0

Gain(SSunny,Day)= 0.971 – 0 = 0.971

SplitInfomation(SSunny,Day) = 5 x (−1

5) log21

5= 2.322 GainRatio(SSunny,Day) = 0.971/2.322= 0.418

Thuộc tính được phân chia: “Humidity”:

Nhánh “Rain”

Tính độ đo tỉ lệ Gian cho thuộc tính “Humidity”

Entropy(Srain) = - 35log2(35) − (25) log2(25) = 0.971

Entropytemp(Srain)= (35) x Entropy (SMild) +25x Entropy (SCool)

SplitInfomation(Srain,Temp) = - (3

5) (log22

5− (2

5) log22

5) = 0.971 GainRatio(Srain,Temp) = 0.020/0.971 = 0.021

Tính độ đo tỉ lệ Gain cho thuộc tính “Wind”:

EntropyWind(Srain)= 3

5xEntropy (SWeak) + 2

5 𝑥 Entropy(SStrong)

= (35) 𝑥(0) + (25) 𝑥(0) = 0 Gain(Srain,Wind)= 0.971– 0= 0.971

SplitInfomation(Srain,Wind) = - (35) log235−25log225= 0.971

GainRatio(Srain,Wind) = 0.971/0.971 = 1

Độ đo tỉ lệ Gain cho thuộc tính “Day”

Trang 39

EntropyDay(Srain)= 141 xEntropy(SD4)+1

14xEntropy(SD5)+ 141 x Entropy(SD6) + 1

14 x Entropy(SD10)+ 1

14 x Entropy(SD14)= 0 Gain(Srain,Day)= 0.971 – 0 = 0.971

SplitInfomation(Srain, Day) = 5 x (−15) log215= 2.322

GainRatio(Srainm,Day) = 0.971/2.322= 0.418

Thuộc tính được chọn để phân chia: “Wind”

Hình 1.4 Cây quyết định chơi golf từ thuật toán C4.5

Luật rút ra từ cây quyết định:

Luật 1: if (Outlook = Sunny) and (Humidity >77.5) then Play= No

Luật 2: if (Outlook = Sunny) and (Humidity 77.5) then Play= Yes

Luật 3: if (Outlook = Overcast) then Play= Yes

Luật 4: if (Outlook = Rain) and (Wind= Weak) then Play= Yes

Luật 5: if (Outlook = Rain) and (Wind= Strong) then Play= No

1.3 KPDL BẰNG KỸ THUẬT PHÂN CỤM

1.3.1 Giới thiệu

Phân cụm là kỹ thuật quan trọng trong KPDL, có nhiều định nghĩa khác nhau về kỹ thuật này, nhưng về bản chất thì phân cụm là quy trình tìm cách nhóm các đối tượng đã cho vào các cụm, sao cho các đối tượng trong cùng

Yes

Yes

No

Trang 40

một cụm tương tự nhau và các đối tượng khác cụm thì không tương tự nhau Mục đích của phân cụm là tìm ra bản chất bên trong các nhóm của dữ liệu Tuy nhiên, không có tiêu chí nào được xem là tốt nhất để đánh giá hiệu quả của phân cụm Nó phụ thuộc vào mục đích của phân cụm như: data reduction, “natural clusters”, “useful” clusters, outlier detection [15]

Ứng dụng của phân cụm dữ liệu trong các lĩnh vực:

 Kinh doanh: Xác định các nhóm khách hàng (khách hàng tiềm năng, khách hàng giá trị, phân loại và dự đoán hành vi khách hàng,…) sử dụng sản phẩm hay dịch vụ của công ty để giúp công ty có chiến lược kinh doanh hiệu quả hơn,…

 Sinh học: Phân nhóm động vật và thực vật dựa vào các thuộc tính

 Địa lý: nhận ra các vùng đất giống nhau dựa vào CSDL quan sát trên Trái Đất, phân nhóm nhà,

 Bảo hiểm, tài chính: Nhận dạng các nhóm công ty có chính sách bảo hiểm với chi phí đền bù trung bình cao, phân nhóm các đối tượng sử dụng bảo hiểm và các dịch vụ tài chính, dự đoán xu hướng (trend) của khách hàng, phát hiện gian lận tài chính (identifying frauds),…

 Website: Phân loại tài liệu (document classification); phân loại người dùng web (clustering weblog),…

 Một công cụ độc lập để xem xét phân bố dữ liệu

 Làm bước tiền xử lý cho các thuật toán khác

1.3.2 Thuật toán K-Means

K-Means là thuật toán quan trọng và phổ biến trong kỹ thuật phân cụm

Tư tưởng chính của thuật toán K-Means là tìm cách phân nhóm các đối tượng

đã cho vào K cụm (K là số các cụm được xác đinh trước, K nguyên dương) sao cho tổng bình phương khoảng cách giữa các đối tượng đến tâm nhóm là

nhỏ nhất Thuật toán K-Means thực hiện qua các bước như Hình 1.5:

Ngày đăng: 17/05/2021, 00:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm