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

Xây dựng hệ hỗ trợ tư vấn tuyển sinh tại trường cao đẳng cộng đồng vĩnh long

92 4 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

Tiêu đề Xây dựng hệ hỗ trợ tư vấn tuyển sinh tại trường cao đẳng cộng đồng Vĩnh Long
Tác giả Nguyễn Hoàng Hải
Người hướng dẫn TS. Trương Ngọc Châu
Trường học Đại Học Bách Khoa Đà Nẵng
Chuyên ngành Khoa học máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2017
Thành phố Đà Nẵng
Định dạng
Số trang 92
Dung lượng 5,12 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 tiến hành theo 4 bước chính: 1 Tìm hiểu công tác liên quan đến công tác tuyển sinh của trường Cao đẳng; 2 Thu thập và tiền xử lý dữ liệu tuyển sinh và kết quả học tập của Sinh

Trang 1

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA

NGUYỄN HOÀNG HẢI

XÂY DỰNG HỆ HỖ TRỢ TƯ VẤN TUYỂN SINH TẠI TRƯỜNG CAO ĐẲNG CỘNG ĐỒNG VĨNH LONG

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

Đà Nẵng, Năm 2017

Trang 2

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA

NGUYỄN HOÀNG HẢI

XÂY DỰNG HỆ HỖ TRỢ TƯ VẤN TUYỂN SINH TẠI TRƯỜNG CAO ĐẲNG CỘNG ĐỒNG VĨNH LONG

Chuyên ngành: Khoa học máy tính

Mã số: 60.48.01.01

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

Người hướng dẫn khoa học: TS TRƯƠNG NGỌC CHÂU

Đà Nẵng, Năm 2017

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan đề tài khoa học “Xây dựng hệ hỗ trợ tư vấn tuyển sinh tại Trường Cao đẳng Cộng đồng Vĩnh Long” này là bài nghiên cứu của chính bản thân

tôi Ngoại trừ những tài liệu tham khảo được trích dẫn trong luận văn này, tôi cam đoan toàn phần hay từng phần nhỏ của luận văn này chưa từng công bố hay được sử dụng để nhận bằng cấp ở nơi khác, các số liệu và kết quả trong luận văn này là trung thực Tôi xin chịu trách nhiệm về luận văn của mình

Tác giả

Nguyễn Hoàng Hải

Trang 4

TÓM TẮT LUÂN VĂN

XÂY DỰNG HỆ HỖ TRỢ TƯ VẤN TUYỂN SINH TẠI TRƯỜNG CAO

ĐẲNG CỘNG ĐỒNG VĨNH LONG

Tóm tắt:

Ngành giáo dục luôn là vấn đề sống còn của bất kỳ quốc gia nào trên thế giới Trong những năm gần đây, chính phủ Việt Nam đặc biệt đầu tư cho ngành mũi nhọn này thông qua các chính sách, nguồn vốn dành cho trang thiết bị, cơ sở hạ tầng và nghiên cứu khoa học Trong lĩnh vực nghiên cứu khoa học, càng ngày càng có nhiều công trình khoa học về giáo dục Với sự phát triển không ngừng của xã hội và việc ứng dụng công nghệ thông tin vào nhiều lĩnh vực là rất cần thiết Trong công tác tuyển sinh của trường có một hệ thống hỗ trợ tư vấn là rất cần thiết Chính vì vậy đề tài của tôi nghiên cứu về các qui chế tuyển sinh, khai phá dữ liệu với luật kết hợp và cây quyết định để xây dựng hệ thống tư vấn cho thí sinh mới tốt nghiệp trung học phổ thông, dự đoán kết quả học tập của thí sinh sau khi ra trường, dựa vào kết quả đầu vào và kết quả đầu ra của sinh viên đã học

Nghiên cứu tiến hành theo 4 bước chính: (1) Tìm hiểu công tác liên quan đến công tác tuyển sinh của trường Cao đẳng; (2) Thu thập và tiền xử lý dữ liệu tuyển sinh và kết quả học tập của Sinh viên; (3) Tìm hiểu về luật kết hợp và cây quyết định trong khai phá dữ liệu, lựa chọn thuật toán phù hợp với yêu cầu bài toán đặt ra

và dữ liệu thu thập được; (4) Thực nghiệm chương trình trên máy tính và đánh giá kết quả thực tiễn

Ngoài ra, đề tài cũng xây dựng mô hình hỗ trợ tư vấn kết quả học tập cho các ngành khác nhau nhằm hỗ trợ cho các thí sinh lựa chọn ngành phù hợp với năng lực của bản thân và có thể thay thế cho cách tư vẫn thủ công của trường

BUILDING SUPPORT SYSTEMS TO SUPPORT CONSULTANCY IN VINH

LONG COMMUNE COLLEGE

Abstract:

Education is always playing an important role of any countries all over the world In the recent years, Vietnamese Government has been investing especially for that one via policies and capital intended for equipment, infrastructures and scientific researches In the field of scientific research, there are more and more scientific research works for education

Society is always developing and the application of information technology on many fields that is essential On the admission of universities or colleges, an

Trang 5

consultant supporting system is very important Therefore, my research object is about admission regulations, mining databases with combining rules and decision tree so that structuring consulting system for new graduates from high school, predicting study results for new graduate students, that is based on student’s income and outcome results

Research was implemented through four main steps: (1) comprehending any issues related to admission at the college; (2) collecting and pre-processing databases for admission and study results of students; (3) comprehending about combining rules and decision tree in databases mining , selecting appropriate

computer program and evaluating results on the real application

Moreover, research has also structured the model of consultant supporting for student results of different majors which aim to support candidates selecting their suitable major to abilities themselves and can replace for the college’s manual consulting

Trang 6

MỤC LỤC

LỜI CAM ĐOAN i

TÓM TẮT LUÂN VĂN ii

MỤC LỤC iv

DANH MỤC TỪ VIẾT TẮT vii

DANH MỤC CÁC BẢNG viii

DANH MỤC CÁC HÌNH ix

MỞ ĐẦU 1

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

2 Mục tiêu và nội dung nghiên cứu 1

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

4 Phuơng pháp nghiên cứu 2

5 Ý nghĩa khoa học và thực tiễn của đề tài 3

6 Bố cục luận văn 3

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

1.1 Khai phá dữ liệu 5

1.2 Một số định nghĩa mang tính mô tả về khai phá dữ liệu 5

1.3 Các bước trong quá trình phát hiện tri thức [2] 5

1.4 Mô hình khai phá dữ liệu 6

1.5 Các phương pháp khai phá dữ liệu 7

1.5.1 Các thành phần của giải thuật khai phá dữ liệu 7

1.5.2 Một số phương pháp khai thác dữ liệu phổ biến 8

1.5.2.1 Phương pháp quy nạp (Induction) 8

1.5.2.2 Cây quyết định và luật 8

1.5.2.3 Phát hiện các luật kết hợp 9

1.6 Các giai đoạn của quá trình khai phá dữ liệu [1]: 10

1.6.1 Tìm hiểu nghiệp vụ và dữ liệu 10

1.6.2 Chuẩn bị dữ liệu 10

1.6.3 Mô hình hóa dữ liệu 10

1.6.4 Hậu xử lý và đánh giá mô hình 10

1.6.5 Triển khai mô hình 10

1.7 Ứng dụng trong khai phá dữ liệu 11

1.8 Kết chương 1 12

Trang 7

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VỀ LUẬT KẾT HỢP 13

2.1 Lý thuyết về luật và luật kết hợp 13

2.1.1 Luật kết hợp 13

2.1.2 Luật thừa 15

2.1.3 Một số tính chất của luật kết hợp[10] 16

2.1.4 Phát biểu bài toán khai phá luật kết hợp[11] 18

2.1.5 Một số dạng luật trong khai phá luật kết hợp 18

2.1.6 Các đặc trưng của luật kết hợp 20

2.1.6.1 Không gian tìm kiếm của luật 20

2.1.6.2 Độ hỗ trợ của luật 22

2.2 Một số giải thuật cơ bản khai phá các tập mục phổ biến 23

2.2.1 Phân loại các giải thuật 23

2.2.2 Kỹ thuật BFS với thuật toán Apriori 23

2.3 Cây quyết định 31

2.3.1 Định nghĩa 31

2.3.2 Giới thiệu cây quyết định 31

2.3.3 Các kiểu cây quyết định 32

2.3.4 Cấu trúc cây quyết định 32

2.3.5 Sử dụng cây quyết định trong dự đoán lớp các dữ liệu chưa biết 33

2.3.6 Đánh giá cây quyết định trong lĩnh vực khai phá dữ liệu: 35

2.3.7 Các thuật toán của cây quyết định: 35

2.3.8 Đánh giá hiệu quả phân lớp 35

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

2.4.1 Tổng quan 37

2.4.2 Mã giả của thuật toán C4.5 38

2.2.3 Thuật toán C4.5 dùng Gain-entropy 39

2.5 Kết chương 2 41

CHƯƠNG 3 XÂY DỰNG HỆ HỖ TRỢ TƯ VẤN TUYỂN SINH 42

3.1 Giới thiệu về trường CĐCĐ Vĩnh Long 42

3.2 Giới thiệu về công cụ khai phá dữ liệu 44

3.3 Mô hình và bài toán xậy dựng hệ hỗ trợ tư vấn tuyển sinh 45

3.3.1 Mô hình 45

3.3.2 Giới thiệu bài toán 46

3.4 Phân tích và thiết kế hệ thống 46

3.4.1 Biểu đồ ca sử dụng 46

Trang 8

3.4.2 Biểu đồ tương tác 47

3.4.3 Biểu đồ lớp 48

3.4.4 Biểu đồ tuần tự 48

3.4.5 Biểu đồ trạng thái 49

3.5 Xây dựng cơ sở dữ liệu 49

3.6 Mô tả việc tổng hợp dữ liệu cho bài toán 50

3.7 Chuẩn hóa dữ liệu đầu vào cho thuật toán 52

3.7.1 Lọc thuộc tính (Filtering Attributes) 53

3.7.2 Rời rạc hóa dữ liệu (Discretization) 54

3.8 Phân tích cơ sở dữ liệu dữ 56

3.8.1 Tìm hiểu và chuẩn bị dữ liệu 56

3.8.2 Mô hình hóa dữ liệu 57

3.8.3 Đánh giá mô hình 57

3.9 Khai phá dữ liệu rút ra tri thức 59

3.10 Kết chương 3 63

CHƯƠNG 4 TRIỂN KHAI HỆ THỐNG VÀ ĐÁNH GIÁ KẾT QUẢ 64

4.1 Biểu đồ triển khai hệ thống 64

4.2 Triển khai chương trình 64

4.2.1 Cài đặt chương trình 64

4.2.2 Hướng dẫn sử dụng 64

4.3 Hình ảnh trích ra từ chương trình demo 65

4.3.1 Giao diện cài đặt chương trình 65

4.3.2 Giao diện trước khi chọn ngành 66

4.3.3 Giao diện sau khi chọn ngành 66

4.4 Đánh giá kết quả 68

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

DANH MỤC TÀI LIỆU THAM KHẢO 70 PHỤ LỤC

QUYẾT ĐỊNH GIAO ĐỀ TÀI

BẢN SAO KẾT LUẬN CỦA HỘI ĐỒNG, BẢN SAO NHẬN XÉT CỦA CÁC PHẢN BIỆN

Trang 10

DANH MỤC CÁC BẢNG

Số hiệu

Trang 11

DANH MỤC CÁC HÌNH

Số hiệu

2.2

Biểu diễn thông tin tìm kiếm dạng lới cho tập I =

2.5

Mô hình cây quyết định trong phân lớp dữ liệu về thời tiết

Trang 12

Số hiệu

Trang 13

MỞ ĐẦU

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

Trải qua rất nhiều năm, phương thức tuyển sinh và đào tạo theo kiểu truyền thống cho thấy sự đóng góp rất lớn trong việc định hướng và phát triển của trường Cùng với xu hướng phát triển của công nghệ thông tin và các phương tiện truyền thông, việc ứng dụng công nghệ thông tin vào công tác quản lý hiện đang là một nhu cầu cấp thiết nhằm tiết kiệm công sức và thời gian, nâng cao chất lượng đào tạo của trường Theo đó là việc áp dụng nhiều cách thức tuyển sinh và đào tạo mới, cũng như liên kết đào tạo với các trường đại học và cao đẳng trong và ngoài nước đòi hỏi công tác quản

lý phải thường xuyên có sự thay đổi, như quản lý đào tạo, quản lý tuyển sinh, quản lý điểm Đặc biệt, công tác tuyển sinh đã và đang là một vấn đề cấp thiết đến việc tồn tại và phát triển của các trường Đại học - Cao đẳng

Với thực trạng trong những năm gần đây công tác tuyển sinh của một số trường Đại học - Cao đẳng trong cả nước điều gặp nhiều khó khăn đặc biệt là các trường ở tốp dưới, Trường Cao đẳng Cộng đồng Vĩnh Long là một trong số đó Có rất nhiều phương pháp đặt ra để giải quyết khó khăn trong công tác tư vấn tuyển sinh nhưng hiệu quả chưa cao

Hơn nữa với sự phát triển của xã hội như hiện nay, trong quá trình hoạt động, con người tạo ra nhiều dữ liệu nghiệp vụ Các tập dữ liệu được tích lũy có kích thước ngày càng lớn và có thể chứa nhiều thông tin ẩn dạng những quy luật chưa được khám phá Chính vì vậy, một nhu cầu đặt ra là tìm cách trích rút từ tập dữ liệu đó với các luật về phân lớp dữ liệu hay dự đoán những xu hướng dữ liệu tương lai Những quy tắc nghiệp vụ thông minh được tạo ra sẽ phục vụ đắc lực cho các hoạt động thực tiễn, cũng như phục vụ đắc lực cho quá trình nghiên cứu khoa học Công nghệ phân lớp và

dự đoán dữ liệu ra đời để đáp ứng mong muốn đó

Việc hỗ trợ tư vấn chọn ngành phù hợp với năng lực và nhu cầu của học sinh là rất cần thiết giúp cho các em định hướng được tương lai của mình Nhận thấy được

những thực trạng như trên, tôi quyết định chọn đề tài: "Xây dựng hệ hỗ trợ tư vấn tuyển sinh tại Trường Cao đẳng Cộng đồng Vĩnh Long", với mục đích áp dụng

công nghệ thông tin, giảm tải chi phí và tiết kiệm thời gian trong công tác tuyển sinh

nhằm nâng cao hiệu quả trong đào tạo và phát triển của trường

Đề tài nghiên cứu về công cụ khai phá dữ liệu, các luật kết hợp và thuật toán cây quyết định trong việc khai phá dữ liệu để xây dựng hệ hỗ trợ tư vấn tuyển sinh Tôi hy vọng đề tài sẽ đáp ứng được nhu cầu thực tế cấp thiết của trường

2 Mục tiêu và nội dung nghiên cứu

2.1 Mục tiêu của đề tài

Trang 14

Mục tiêu chung: xây dựng hệ hỗ trợ tư vấn tuyển sinh của các trường theo mô hình Cao đẳng Cộng đồng

2.2 Nội dung nghiên cứu

- Quy trình tuyển sinh

- Tổng quan về khai phá dữ liệu, tập dữ liệu mẫu, luật kết hợp và cây quyết định

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

3.1 Đối tượng nghiên cứu của đề tài gồm

+ Học sinh và Sinh viên: họ và tên, giới tính, ngày sinh, địa chỉ, điểm từng môn, điểm trung bình học kì, điểm trung bình năm, điểm tốt nghiệp trung học phổ thông, điểm tốt nghiệp Cao đẳng

+ Quy trình tuyển sinh và quy chế xét tuyển: hồ sơ xét tuyển, đợt xét tuyển, năng khiếu để xét tuyển…

+ Kỹ thuật khai phá dữ liệu cụ thể là luật kết hợp và cây quyết định

3.2 Phạm vi nghiên cứu

+ Kỹ thuật phân lớp: cây quyết định và luật kết hợp

+ Công cụ khai phá dữ liệu, SQL server và ngôn ngữ lập trình ASP.NET

+ Công tác tư vấn tuyển sinh Trường Cao đẳng Cộng đồng Vĩnh Long

Đề tài thuộc loại hình nghiên cứu ứng dụng, phạm vi áp dụng của đề tài triển khai tại trường Cao đẳng Cộng đồng Vĩnh Long tỉnh Vĩnh Long

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

4.1 Nghiên cứu lý thuyết

- Thu thập và nghiên cứu các tài liệu liên quan đến đề tài

- Nghiên cứu thực trạng tuyển sinh tại trường Cao đẳng Cộng đồng Vĩnh Long, tìm hiểu nhu cầu thực tế của người học và nhu cầu việc làm ngoài xã hội

4.2 Nghiên cứu thực nghiệm

Trang 15

- Tiến hành xây dựng các giải pháp và xây dựng ứng dụng đánh giá

- Phân tích thiết kế cơ sở dữ liệu tuyển sinh và kết quả học tập của Sinh viên từ

đó so sánh và dự đoán kết quả học tập của từng ngành, xây dựng hệ thống chương trình ứng dụng, triển khai xây dựng chương trình ứng dụng, kiểm tra, thử nghiệm và đánh giá kết quả

5 Ý nghĩa khoa học và thực tiễn của đề tài

5.1 Ý nghĩa khoa học

- Tìm hiểu luật kết hợp và cây quyết định trong khai phá dữ liệu

- Đề tài xây dưng ra một hệ thống tư vấn hỗ trợ tư vấn tuyển sinh của trường

Chương 1: Tổng quan về khai phá dữ liệu và phát hiện tri thức

Chương này đề cập đến các giai đoạn của quy trình phát hiện tri thức, các vấn

đề chính của khai phá dữ liệu, các phương pháp, các nhiệm vụ trong khai phá dữ liệu

Chương 2: Cơ sở lý thuyết về luật kết hợp và cây quyết định

Chương này trình bày một số vấn đề chính của khai phá luật kết hợp: lý thuyết luật kết hợp, bài toán khai phá và phát hiện luật kết hợp, các phương pháp phát hiện luật kết hợp, một số thuật toán điển hình giải quyết vấn đề, phân tích độ phức tạp của bài toán

Chương 3: Xây dựng hệ hỗ trợ tư vấn tuyển sinh

Nội dung của chương là áp dụng kỹ thuật khai phá luật kết hợp và cây quyết định vào trong đào tạo của trường Cao đẳng Cộng đồng Vĩnh Long Ứng dụng này nhằm đưa ra dự báo hỗ trợ cho công tác tuyển sinh và đào tạo của trường

Chương 4: Triển khai hệ thống và đánh giá kết quả

Nội dung chương 4 tập trung phân tích yêu cầu của hệ thống, xác định các chức năng chính, xây dựng sơ đồ các hoạt động chính của ứng dụng, tiến hành cài đặt ứng dụng, thực nghiệm và đánh giá kết quả

Trang 16

Phần phụ lục đưa ra một số modul của chương trình ứng dụng Cuối cùng là kết luận lại những kết quả đạt được của đề tài và hướng phát triển trong tương lai

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

TÀI LIỆU THAM KHẢO

QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN

PHỤ LỤC

Trang 17

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

VÀ PHÁT HIỆN TRI THỨC

1.1 Khai phá dữ liệu

KPDL thu hút sự chú ý của nền công nghiệp thông tin và xã hội trong những năm gần đây Với sự phát triển của công nghệ thông tin, dữ liệu lưu trữ mỗi ngày trở thành một cơ sở dữ liệu rất lớn Dựa vào khối lượng dữ liệu này, ta dùng những kỹ thuật KPDL để chuyển dữ liệu đó thành những thông tin có ích hoặc rút ra những tri thức mới từ dữ liệu thu thập được[9] Quá trình này kết xuất ra các tri thức tiềm ẩn từ dữ liệu giúp cho việc dự báo trong kinh doanh, các hoạt động sản xuất, Khai phá dữ liệu làm giảm chi phí về thời gian so với phương pháp truyền thống trước kia (ví dụ như phương pháp thống kê)

1.2 Một số định nghĩa mang tính mô tả về khai phá dữ liệu

Định nghĩa của Ferruzza: “Khai phá dữ liệu 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: “Khai phá dữ liệu 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 CSDL lớn”

Định nghĩa của Fayyad: “Khai phá tri thức là một quá trình không tầm thường

nhận ra những mẫu dữ liệu có giá trị, mới, hữu ích, tiềm năng và có thể hiểu được”

1.3 Các bước trong quá trình phát hiện tri thức [2]

Phát hiện tri thức bao gồm nhiều giai đoạn được lặp đi lặp lại nhiều lần mà không cần phân biệt từng bước trong quá trình thực hiện

Giai đoạn 1: Hình thành, xác định và định nghĩa bài toán Là việc tìm hiểu lĩnh vực ứng dụng từ đó hình thành bài toán, xác định các nhiệm vụ cần phải hoàn thành Bước này sẽ quyết định cho việc rút ra được các tri thức hữu ích và cho phép chọn các phương pháp khai phá dữ liệu thích hợp với mục đích ứng dụng cùng với bản chất của dữ liệu

Giai đoạn 2: Thu thập và tiền xử lý (xử lý thô) Bước này còn được gọi là tiền xử

lý dữ liệu nhằm loại bỏ nhiễu (dữ liệu dư thừa), làm sạch dữ liệu, xử lý và khắc phục vấn đề thiếu hoặc thừa dữ liệu, biến đổi dữ liệu và rút gọn dữ liệu nếu cần thiết Bước này thường chiếm nhiều thời gian nhất (bước quan trọng) trong toàn bộ quy trình phát hiện tri thức

Giai đoạn 3: Biến đổi dữ liệu, chọn lựa một số phương pháp Phân loại (Classification), hồi quy (Regression), phân nhóm (Clustering), quy nạp, tổng hợp kết quả (Summarization)

Trang 18

Hình 1.1 Các bước trong quá trình phát hiện tri thức.

Giai đoạn 4: Khai phá dữ liệu, hay nói cách khác là trích chọn, chiết xuất ra các mẫu hay các mô hình tiềm ẩn dưới các dữ liệu có ý nghĩa, hiểu được Giai đoạn này rất quan trọng, bao gồm các công đoạn như: chức năng, nhiệm vụ và mục đích khai phá

dữ liệu, dùng phương pháp khai phá nào là thích hợp?

Giai đoạn 5: Giải thích kết quả và đánh giá các mẫu hay mô hình Các mẫu và mô hình này là kết quả của giai đoạn 3 trong quy trình Đây là công đoạn không thể thiếu trong quá trình khai phá tri thức

Giai đoạn 6: Hiểu và sử dụng tri thức đã tìm được, đặc biệt là làm sáng tỏ các mô

tả và dự đoán Các bước trên có thể lặp đi lặp lại một số lần, kết quả thu được có thể được lấy trên tất cả các lần thực hiện

Tóm lại: Quá trình phát hiện tri thức từ trong kho dữ liệu (KDD – Knowledge Discovery Database) là quá trình chiết xuất ra tri thức từ kho dữ liệu mà trong đó khai phá dữ liệu là công đoạn quan trọng nhất

1.4 Mô hình khai phá dữ liệu

Mô hình khai phá dữ liệu là một mô tả về một khía cạnh cụ thể của một tập dữ liệu Nó tạo ra các giá trị đầu ra cho tập các giá trị đầu vào

Ví dụ: Mô hình hồi qui tuyến tính, mô hình phân lớp, mô hình phân nhóm

Một mô hình khai phá dữ liệu có thể được mô tả 2 mức:

Trang 19

- Mức chức năng (Function level): Mơ tả mơ hình bằng những thuật ngữ về dự định sử dụng Ví dụ: phân lớp, phân nhĩm

- Mức biểu diễn (representation level): Biểu diễn cụ thể một mơ hình

Ví dụ: Mơ hình log-linear, cây phân lớp, phương pháp láng giềng gần nhất Các

mơ hình khai phá dữ liệu dựa trên 2 kiểu học: Cĩ giám sát và khơng giám sát (đơi khi được nĩi đến như là học trực tiếp và khơng trực tiếp – directed and undirected learning)

Các hàm học cĩ giám sát (Supervised learning functions) được sử dụng để dự đốn giá trị Các hàm học khơng giám sát được dùng để tìm ra cấu trúc bên trong, các quan hệ hoặc tính giống nhau trong nội dung dữ liệu nhưng khơng cĩ lớp hay nhãn nào được gán ưu tiên Ví dụ của các thuật tốn học khơng giám sát gồm phân nhĩm k-mean (k-mean clustering) và các luật kết hợp Apriori Một ví dụ của thuật tốn học cĩ giám sát bao gồm Nạve Bayes cho phân lớp (classification)

Tương ứng cĩ 2 loại mơ hình khai phá dữ liệu:

- Các mơ hình dự báo (học cĩ giám sát):

+ Phân lớp: Nhĩm các mục thành các lớp riêng biệt và dự đốn một mục sẽ thuộc vào lớp nào

+ Hồi qui (Regression): Xấp xỉ hàm và dự báo các giá trị liên tục

+ Độ quan trọng của thuộc tính: Xác định các thuộc tính là quan trọng nhất trong các kết quả dự báo

- Các mơ hình mơ tả (học khơng giám sát):

+ Phấn nhĩm (Clusterning): Tìm các nhĩm tự nhiên trong dữ liệu

+ Các mơ hình luật kết hợp (Association models): Phân tích “giỏ hàng” + Trích chọn đặc trưng (Feature extraction): Tạo các thuộc tính (đặc trưng) mới như là kết hợp của các thuộc tính ban đầu

1.5 Các phương pháp khai phá dữ liệu

Quá trình khai phá dữ liệu là quá trình phát hiện mẫu, trong đĩ, giải thuật khai phá

dữ liệu tìm kiếm các mẫu đáng quan tâm theo dạng xác định như các luật, cây phân lớp, hồi quy, gom nhĩm,

1.5.1 Các thành phần của giải thuật khai phá dữ liệu

Giải thuật khai phá dữ liệu bao gồm 3 thành phần chính như sau: biểu diễn mơ hình, đánh giá mơ hình, tìm kiếm mơ hình

• Biểu diễn mơ hình: Mơ hình được biểu diễn bằng một ngơn ngữ L để mơ tả

các mẫu cĩ thể khai thác được Tức là người phân tích dữ liệu cần phải hiểu đầy đủ các giả thiết mơ tả và cần phải diễn tả được các giả thiết mơ tả nào được tạo ra bởi giải thuật Mơ hình đĩ sẽ được đánh giá bằng cách đưa các dữ liệu thử vào mơ hình và thay đổi lại các tham số cho phù hợp nếu cần

Trang 20

• Đánh giá mô hình: Đánh giá xem một mẫu có đáp ứng được các tiêu chuẩn

của quá trình phát hiện tri thức hay không Việc đánh giá độ chính xác dự đoán dựa trên đánh giá chéo (Cross Validation) Đánh giá chất lượng mô tả liên quan đến độ chính xác dự đoán, độ mới, khả năng sử dụng, khả năng hiểu được của mô hình Cả hai chuẩn thống kê và chuẩn logic đều có thể được sử dụng để đánh giá mô hình

• Phương pháp tìm kiếm: Phương pháp tìm kiếm bao gồm hai thành phần: tìm

kiếm tham số và tìm kiếm mô hình

- Tìm kiếm tham số: Để tối ưu hóa các tiêu chuẩn đánh giá mô hình với các

dữ liệu quan sát được và với một mô tả mô hình đã định

- Tìm kiếm mô hình: Xảy ra giống như một vòng lặp qua phương pháp tìm kiếm tham số: Mô tả mô hình bị thay đổi tạo nên một họ các mô hình

= > Với mỗi một mô tả mô hình, phương pháp tìm kiếm tham số được áp dụng để đánh giá chất lượng mô hình Các phương pháp tìm kiếm mô hình thường sử dụng các kỹ thuật tìm kiếm heuristic vì kích thước của không gian các mô hình có thể thường ngăn cản các tìm kiếm tổng thể, hơn nữa các giải pháp đơn giản không dễ đạt được

1.5.2 Một số phương pháp khai thác dữ liệu phổ biến

1.5.2.1 Phương pháp quy nạp (Induction)

Một cơ sở dữ liệu là một kho thông tin nhưng các thông tin quan trọng hơn cũng có thể được suy diễn từ kho thông tin đó Có hai kỹ thuật chính để thực hiện việc này là suy diễn và quy nạp

• Phương pháp suy diễn: Nhằm rút ra thông tin là kết quả logic của các thông

tin trong cơ sở dữ liệu Phương pháp suy diễn dựa trên các sự kiện chính xác để suy ra các tri thức mới từ các thông tin cũ Mẫu chiết xuất được bằng cách sử dụng phương pháp này thường là các luật suy diễn

• Phương pháp quy nạp: Phương pháp quy nạp suy ra các thông tin được sinh

ra từ cơ sở dữ liệu Có nghĩa là nó tự tìm kiếm, tạo mẫu và sinh ra tri thức chứ không phải bắt đầu với các tri thức đã biết trước Các thông tin mà phương pháp này đem lại

là các thông tin hay các tri thức cấp cao diễn tả về các đối tượng trong cơ sở dữ liệu Phương pháp này liên quan đến việc tìm kiếm các mẫu trong CSDL Trong khai phá

dữ liệu, quy nạp được sử dụng trong cây quyết định và tạo luật

1.5.2.2 Cây quyết định và luật

• Cây quyết định: Cây quyết định là một mô tả tri thức dạng đơn giản nhằm

phân các đối tượng dữ liệu thành một số lớp nhất định Các nút của cây được gán nhãn

là tên các thuộc tính, các cạnh được gán các giá trị có thể của các thuộc tính, các lá mô

tả các lớp khác nhau Các đối tượng được phân lớp theo các đường đi trên cây, qua các cạnh tương ứng với các giá trị, thuộc tính của đối tượng tới lá

Trang 21

• Tạo luật: Các luật được tạo ra nhằm suy diễn một số mẫu dữ liệu có ý nghĩa

về mặt thống kê Các luật có dạng Nếu P thì Q, với P là mệnh đề đúng với một phần trong CSDL, Q là mệnh đề dự đoán

Cây quyết định và luật có ưu điểm là hình thức mô tả đơn giản, mô hình suy diễn khá dễ hiểu đối với người sử dụng Tuy nhiên, giới hạn của nó là mô tả cây và luật chỉ có thể biểu diễn được một số dạng chức năng và vì vậy giới hạn về cả độ chính xác của mô hình

1.5.2.3 Phát hiện các luật kết hợp

Phương pháp này nhằm phát hiện ra các luật kết hợp giữa các thành phần dữ liệu trong cơ sở dữ liệu Mẫu đầu ra của giải thuật khai phá dữ liệu là tập luật kết hợp tìm được Ta có thể lấy một ví dụ đơn giản về luật kết hợp như sau: sự kết hợp giữa hai thành phần A và B có nghĩa là sự xuất hiện của A trong bản ghi kéo theo sự xuất hiện của B trong cùng bản ghi đó: A = > B

Việc phát triển một thuật toán phải phát hiện luật này trong cơ sở dữ liệu lớn

là không khó Tuy nhiên, vấn đề là ở chỗ có thể có rất nhiều luật kiểu này hoặc là ta chỉ biết một tập nhỏ dữ liệu trong cơ sở dữ liệu lớn thoả mãn tiền đề của luật Ví dụ chỉ có số ít người mua sách tiếng anh mà mua thêm đĩa CD Số lượng các luật kết hợp trong một số cơ sở dữ liệu lớn gần như vô hạn Do vậy thuật toán sẽ không thể phát hiện hết các luật và không phân biệt được luật nào là thông tin thực sự có giá trị và thú

Tuy nhiên giá trị hỗ trợ 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 sách trên nhưng lại có một nhóm với lượng lớn hơn những người thích sách thể thao, âm nhạc, ngoại ngữ mà không thích mua đĩa

CD 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 chúng ta cần thêm một độ đo thứ hai đó là độ tin cây (confidence) Độ tin cậy là phần trăm các bản ghi có đĩa CD trong số các bản ghi có sách âm nhạc, thể thao,…

Nhiệm vụ của việc phát hiện các luật kết hợp là phải tìm tất cả các luật dạng X

=> B sao cho tần số của luật không nhỏ hơn ngưỡng Minsup cho trước và độ tin cậy của luật không nhỏ hơn ngưỡng Minconfi cho trước Từ một cơ sở dữ liệu ta có thể tìm được hàng nghìn và thậm chí hàng trăm nghìn các luật kết hợp

Trang 22

1.6 Các giai đoạn của quá trình khai phá dữ liệu [1]:

1.6.1 Tìm hiểu nghiệp vụ và dữ liệu

Giai đoạn này ta cần xác định vấn đề cần giải quyết, tìm hiểu kiến thức về bài toán đang thực hiện bao gồm các tri thức của các chuyên gia trong lĩnh vực cần nghiên cứu từ đó xác định chính xác nguồn dữ liệu để thu thập đồng thời phải hiểu được cấu trúc dữ liệu, ý nghĩa và tầm quan trọng của nó để từ đó ta đưa ra bài toán cụ thể để giải quyết vấn đề

+ Khử sự trùng lắp dữ liệu: Loại bỏ những dữ liệu bị trùng

+ Giảm nhiễu dữ liệu: Các dữ liệu bị nhiễu sẽ được điều chỉnh hoặc loại ra khỏi cơ sở dữ liệu

+ Rời rạc hóa dữ liệu: Các dữ liệu số sẽ được rời rạc hóa ra dạng phù hợp cho khai phá dữ liệu

+ Giảm chiều: Loại bớt các thuộc tính chứa ít thông tin để tiết kiệm thời gian và tài nguyên của máy tính

1.6.3 Mô hình hóa dữ liệu

Dùng các giải thuật của KPDL để tìm ra các qui luật của dữ liệu, quan trọng nhất trong giai đoạn này là tìm được giải thuật phù hợp để giải quyết vấn đề đã đặt ra

1.6.4 Hậu xử lý và đánh giá mô hình

Đây là giai đoạn biến đổi từ những luật rút ra được (của giai đoạn trước) từ tập huấn luyện sang dạng phù hợp với nghiệp vụ của bài toán đang nghiên cứu Đồng thời cũng sẽ là giai đoạn đánh giá của các chuyên gia tư vấn dựa trên tập dữ liệu thử Dựa vào nhận xét và hỗ trợ của các chuyên gia khi đó sẽ điều chỉnh kịp thời các mô hình của các giai đoạn trước Các mô hình đạt yêu cầu với các chuyên gia sẽ được sử dụng

1.6.5 Triển khai mô hình

Các mô hình đạt yêu cầu sẽ được xây dựng thành chương trình ứng dụng thực

tế nhằm hỗ trợ đưa ra quyết định theo yêu cầu của người dùng

Trang 23

1.7 Ứng dụng trong khai phá dữ liệu

Khai phá dữ liệu là một lĩnh vực liên quan tới nhiều ngành học khác như: Hệ CSDL, thống kê, trực quan hoá.v.v Hơn nữa, tuỳ vào cách tiếp cận được sử dụng, khai phá dữ liệu còn có thể áp dụng một số kỹ thuật như mạng nơron, lý thuyết tập thô, tập mờ, biểu diễn tri thức, v.v So với các phương pháp này, khai phá dữ liệu có một số ưu thế rõ rệt

So với phương pháp học máy, khai phá dữ liệu có lợi thế hơn ở chỗ, khai phá

dữ liệu có thể sử dụng với các CSDL chứa nhiều nhiễu, dữ liệu không đầy đủ hoặc biến đổi liên tục Trong khi đó phương pháp học máy chủ yếu được áp dụng trong các CSDL đầy đủ, ít biến động và tập dữ liệu không qua lớn

Phương pháp hệ chuyên gia: Phương pháp này khác với khai phá dữ liệu ở chỗ các ví dụ của chuyên gia thường ở mức cao hơn nhiều so với các dữ liệu trong CSDL, và chúng thường chỉ bao hàm được các trường hợp quan trọng Hơn nữa các chuyên gia sẽ xác nhận giá trị và tính hữu ích của các mẫu phát hiện được

Phương pháp thống kê là một trong những nên tảng lý thuyết của khai phá dữ liệu, nhưng khi so sánh hai phương pháp với nhau ta có thể thấy các phương pháp thống kê còn tồn tại một số điểm yếu mà khai phá dữ liệu khắc phục được

Các phương pháp thống kê chuẩn không phù hợp với các kiểu dữ liệu có cấu trúc trong rất nhiều CSDL

Các phương pháp thống kê hoạt động hoàn toàn theo dữ liệu, nó không sử dụng tri thức có sẵn về lĩnh vực

Kết quả phân tích của hệ thống sẽ rất nhiều và khó có thể làm rõ ra được Phương pháp thống kê cần có sự hướng dẫn của người dùng để xác định phân tích dữ liệu như thế nào và ở đâu

Với nhưng ưu điểm đó, khai phá dữ liệu hiện đang được áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau như: Marketing, tài chính, ngân hàng và bảo hiểm, khoa học, y tế, an ninh, internet.v.v.rất nhiều tổ chức

và công ty lớn trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh doanh của mình và thu được những lợi ích to lớn

Một số ứng dụng của khai phá dữ liệu trong lĩnh vực kinh doanh:

- Brandaid: Mô hình Marketing linh hoạt tập chung vào hàng tiêu dùng

- Callpla: Giúp nhân viên bán hàng xác định số lần viếng thăm của khách hàng triển vọng và khách hàng hiện có

- Detailer: Xác định khách hàng nào nên viếng thăm và sản phẩm nào nên giới thiệu trong từng chuyến viếng thăm

- Geoline: Mô hình thiết kế địa bàn tiêu thụ và dịch vụ

Trang 24

- Mediac: Giúp người quảng cáo mua phương tiện trong một năm, lập kế hoạch sử dụng phương tiện bao gồm phác hoạ khúc thị trường, ước tính tiềm năng

1.8 Kết chương 1

Chương 1 trình bày các nội dung chính như sau:

Một số khái niệm, các bước, mô hình, các phương pháp, các giai đoạn và ứng dụng trong khai phá dữ liệu

Chương tiếp theo sẽ trình bày tổng quan về luật kết hợp và cây quyết định

và thuật toán xây dựng cây quyết định

Trang 25

CHƯƠNG 2

CƠ SỞ LÝ THUYẾT VỀ LUẬT KẾT HỢP

VÀ CÂY QUYẾT ĐỊNH

2.1 Lý thuyết về luật và luật kết hợp

2.1.1 Luật kết hợp

các thuộc tính (attribute) Các phần tử trong I là phân biệt nhau X I được gọi là tập mục Nếu lực lượng của X bằng k (tức là |X| = k) thì X được gọi là k-itemset

Một giao dịch (transaction) T được định nghĩa như một tập con (subset) của

các khoản mục trong I (T I) Tương tự như khái niệm tập hợp, các giao dịch không

được trùng lặp, nhưng có thể nới rộng tính chất này của tập hợp và trong các thuật toán sau này, người ta giả thiết rằng các khoản mục trong một giao dịch và trong tất

cả các tập mục (itemset) khác, có thể coi chúng đã được sắp xếp theo thứ tự từ điển của các item

Gọi D là CSDL của n giao dịch và mỗi giao dịch được đánh nhãn với một định danh duy nhất (Unique Transasction IDentifier-TID) Nói rằng, một giao dịch T

D hỗ trợ (support) cho một tập X I nếu nó chứa tất cả các item của X, nghĩa là X

T, trong một số trường hợp người ta dùng ký hiệu T(X) để chỉ tập các giao dịch hỗ

trợ cho X Kí hiệu support(X) (hoặc sup(X), s(X)) là tỷ lệ phần trăm của các giao dịch

hỗ trợ X trên tổng các giao dịch trong D, nghĩa là:

Ví dụ về cơ sở dữ liệu D (dạng giao dịch): I = {A, B, C, D, E}, T = {1, 2, 3,

4, 5, 6} Thông tin về các giao dịch cho ở bảng sau:

Bảng 2.1 Ví dụ về một cơ sở dữ liệu dạng giao dịch – D

Trang 26

Tập mục phổ biến (frequent itemset): Độ hỗ trợ tối thiểu minsup ( 0, 1] là

một giá trị cho trước bởi người sử dụng Nếu tập mục X I có sup(X) minsup thì ta nói X là một tập phổ biến Một tập phổ biến được sử dụng như một tập đáng quan tâm

trong các thuật toán, ngược lại, những tập không phải tập phổ biến là những tập không đáng quan tâm Trong các trình bày sau này, ta sẽ sử dụng những cụm từ khác

như “X có độ hỗ trợ tối thiểu”, hay “X không có độ hỗ trợ tối thiểu” cũng để nói lên rằng X thỏa mãn hay không thỏa mãn sup(X) minsup

Ví dụ: Với cơ sở dữ liệu D cho ở bảng 1, và giá trị ngưỡng minsup = 50% sẽ

liệt kê tất cả các tập mục thường xuyên / tập mục phổ biến (frequent itemset / large itemset) như sau :

Bảng 2.2 Các tập phổ biến trong CSDL ở bảng 1 với độ hỗ trợ tối thiểu 50%

Một số tính chất (TC) liên quan đến các tập phổ biến:

TC 1 Độ hỗ trợ cho tất cả các tập con: nếu A B, A thì sup(A) sup(B) vì tất

cả các giao dịch của D độ hỗ trợ B thì cũng độ hỗ trợ A.

TC 2 Nếu một tập mục A không có độ hỗ trợ tối thiểu trên D nghĩa là sup(A)

Định nghĩa luật kết hợp: Một luật kết hợp có dạng R: X Y, trong đó X, Y là

các tập mục, X, Y I và X Y = X gọi là tiên đề và Y gọi là hệ quả của luật

Một số nhận xét :

năng mà tập giao dịch hỗ trợ cho các thuộc tính có có trong cả X lẫn Y, nghĩa là:

định nghĩa là khả năng giao dịch T hỗ trợ X thì cũng hỗ trợ Y Nói cách khác C biểu thị số phần trăm giao dịch có chứa luôn Y trong số những giao dịch có chứa X

Trang 27

Ta có công thức tính conf C như sau:

sup 𝑝(𝑋 ∪ 𝑌)

mục phổ biến trên D và khi xét một luật có thoả hay không thì cả độ hỗ trợ và độ tin cậy của nó đều phải quan tâm, vì một luật có thể có độ tin cậy = 100% > độ tin cậy tối

thiểu nhưng có thể là nó không đạt độ hỗ trợ tối thiểu

Khi khai phá các luật kết hợp, có 2 vấn đề chính cần phải giải quyết:

Thứ nhất, đó là độ phức tạp của giải thuật Số lượng luật tăng theo cấp độ luỹ thừa cùng với số lượng các mục Tuy nhiên, các giải thuật hiện nay có thể giảm bớt không gian tìm kiếm dựa trên các ngưỡng tối thiểu để đánh giá độ hiệu quả của luật

Thứ hai, các luật tốt (tối ưu) phải được lấy ra từ tập hợp các luật tìm được Điều này rất khó bởi vì tập hợp các luật tìm được là rất lớn, trong đó số lượng các luật có thể dùng được lại chiếm tỷ lệ vô cùng nhỏ Các nghiên cứu liên quan đến vấn đề thứ hai hầu hết chú trọng vào việc giúp người dùng duyệt tập luật cũng như việc phát triển các độ đo chất lượng của luật

2.1.2 Luật thừa

a Định nghĩa:

Luật r được gọi là luật thừa nếu với các luật còn lại thuộc tập R{r} nếu chúng

(X) R-{r} : tập các mệnh đề suy ra từ X bằng các luật thuộc R-{r}; luật r: X Y thuộc R

Trang 28

Trong các luật trên, ta thấy luật R4: A D là thừa bởi vì: Từ R1, R2, R3, ta có: A B C D

Bước 1: Ket qua:= X

Bước 2: Với mọi r thuộc R, nếu vế trái r thuộc kết quả thì

Bước 3: Lặp lại bước 2 cho đến khi nào Ketqua không thay đổi

b Thuật toán loại bỏ luật thừa:

Ý tưởng thuật toán gồm các bước sau:

Bước 1: R = R {r}, từ định nghĩa của luật thừa trên, chúng ta có thuật toán

trên tập luật R

Nếu đúng: thì luật r là thừa đối với tập R Ngược lại: thì luật r không thừa đối với tập R

Giải thuật chính loại bỏ luật thừa:

Bước 1: Xét luật r trong tập luật R, kiểm tra r có thừa đối với tập R - {r}

hay không?

Bước 2 : Nếu thừa thì R= R {r}; lặp lại bước 1 với luật khác

Bước 3: Lặp lại cho đến khi không còn bỏ luật nào nữa

2.1.3 Một số tính chất của luật kết hợp[10]

luôn khác rỗng và X Y vì nếu không thì:

Ta có các tính chất sau :

1) Luật kết hợp không có hợp thành

Để ý đến trường hợp X Y = và các giao dịch trên D hỗ trợ Z nếu và chỉ

Trang 29

2) Luật kết hợp không có tính tách

Chẳng hạn xét trường hợp Z có mặt trong giao tác chỉ khi cả tập X và Y cũng

luật riêng biệt sẽ không đủ độ hỗ trợ

Để giải thích cho tính chất này ta phân tích ví dụ sau:

Hình 2.1 Minh họa luật kết hợp không có tính tách

Khi Z thể hiện trong một giao dịch chỉ nếu cả X và Y đều thể hiện giao dịch

có thể suy ra X => Y và X => Z cũng thỏa mãn trên D vì sup(XY) sup(XYZ) và sup (XZ) sup(XYZ)

3) Các luật kết hợp không có tính bắt cầu

các giao dịch chứa X, Y, Z và độ tin cậy tối thiểu là minconf

< minconf (không đúng) và 0 < minconf <=1; luật X Z không có độ tin cậy tối thiểu <=> conf(X => Z) < minconf

nghĩa của độ tin cậy, ta có :

Trang 30

2.1.4 Phát biểu bài toán khai phá luật kết hợp[11]

Bài toán khai phá luật kết hợp: Cho tập mục I, CSDL giao tác D, ngưỡng hỗ trợ

và tin cậy tối thiếu tương ứng là minsup và minconf Tìm tất cả các luật kết hợp X =>

Y trên D (X,Y I) thỏa mãn đồng thời sup(X => Y) ≥ minsup và conf(X => Y) ≥

minconf

Bài toán khai phá luật kết hợp có thể dùng nhiều thuật toán để khai phá nhưng nhìn chung là các bài toán này đều phải qua 2 giai đoạn chính sau:

- Giai đoạn 1: Khai phá tất cả các tập phổ biến trong CSDL D

Trong giai đoạn này ta đi tìm các tập mục mà có độ hỗ trợ lớn hơn độ hỗ trợ tối thiểu do người dùng xác định Các tập mục thỏa mãn độ hỗ trợ tối thiểu là những tập mục phổ biến cần tìm

- Giai đoạn 2: Khai phá luật kết hợp (sinh ra các luật kết hợp tốt từ các tập

mục phổ biến)

+ Sử dụng tập mục phổ biến tìm được ở giai đoạn 1 để sinh ra các luật

tin cậy (interesting rules) Ý tưởng chung là nếu gọi ABCD và AB là các tập mục

sup(𝐴𝐵)

2.1.5 Một số dạng luật trong khai phá luật kết hợp

Lĩnh vực khai phá luật kết hợp cho đến nay đã được nghiên cứu và phát triển theo nhiều hướng khác nhau Có những đề xuất nhằm cải tiến tốc độ thuật toán, có những đề xuất nhằm tìm kiếm luật có ý nghĩa hơn…và có một số hướng chính sau đây:

- Luật kết hợp nhị phân (binary association rule hoặc boolean association

rule): Là hướng nghiên cứu đầu tiên của luật kết hợp Hầu hết các nghiên cứu ở thời

Trang 31

kỳ đầu về luật kết hợp đều liên quan đến luật kết hợp nhị phân Trong dạng luật kết hợp này, các mục (thuộc tính) chỉ được quan tâm là có hay không xuất hiện trong giao dịch của CSDL chứ không quan tâm về “mức độ“ xuất hiện Ví dụ: Trong hệ thống tính cước điện thoại thì việc gọi 10 cuộc điện thoại và 1 cuộc được xem là giống nhau Thuật toán tiêu biểu nhất khai phá dạng luật này là thuật toán Apriori và các biến thể của nó Đây là dạng luật đơn giản và các luật khác cũng có thể chuyển về dạng luật này nhờ một số phương pháp như rời rạc hoá, mờ hoá, … Một ví dụ về

dạng luật này : “gọi liên tỉnh= ‘yes’ AND gọi di động= ‘yes’ => gọi quốc tế= ‘yes’

AND gọi dịch vụ 108 = ‘yes’, với độ hỗ trợ 20% và độ tin cậy 80%”

- Luật kết hợp có thuộc tính số và thuộc tính hạng mục (quantitative and

categorial association rule): Các thuộc tính của các CSDL thực tế có kiểu rất đa dạng

(nhị phân - binary, số - quantitative, hạng mục - categorial,…) Để phát hiện luật kết hợp với các thuộc tính này, các nhà nghiên cứu đã đề xuất một số phương pháp rời rạc hoá nhằm chuyển dạng luật này về dạng nhị phân để có thể áp dụng các thuật toán đã

có Một ví dụ về dạng luật này “An toàn bảo mật thông tin [5 <7] AND đồ họa máy

tính [7 <9] => hệ điều hành [5 <7], với độ hỗ trợ là 35%, và độ tin cậy là%”

- Luật kết hợp tiếp cận theo hướng tập thô (mining association rules base on

rough set): Tìm kiếm luật kết hợp dựa trên lý thuyết tập thô

- Luật kết hợp nhiều mức (multi-level association rule): Với cách tiếp cận

theo luật này sẽ tìm kiếm thêm những luật có dạng “ mua máy tính PC => mua hệ

điều hành AND mua phần mềm tiện ích văn phòng, …” thay vì chỉ những luật quá cụ

thể như “mua máy tính IBM PC => mua hệ điều hành Microsoft Windows AND mua

phần mềm tiện ích văn phòng Microsoft Office, …” Như vậy dạng luật đầu là dạng

luật tổng quát hoá của dạng luật sau và tổng quát theo nhiều mức khác nhau

- Luật kết hợp mờ (fuzzy association rule): Với những hạn chế còn gặp phải

trong quá trình rời rạc hoá các thuộc tính số (quantitave attributes), các nhà nghiên cứu đã đề xuất luật kết hợp mờ nhằm khắc phục các hạn chế trên và chuyển luật kết hợp về một dạng tự nhiên hơn, gần gũi hơn với người sử dụng một Ví dụ: “An toàn

bảo mật thông tin trung bình AND đồ hoạ máy tính khá => hệ điều hành trung bình,

với độ hỗ trợ là 35%, và độ tin cậy là %” Trong luật trên, điều kiện điểm các môn đã được mờ hoá ở mức điểm yếu kém, trung bình, khá và giỏi

- Luật kết hợp với thuộc tính được đánh trọng số (association rule with

weighted items): Trong thực tế, các thuộc tính trong CSDL không phải lúc nào cũng

có vai trò như nhau Có một số thuộc tính được chú trọng hơn và có mức độ quan trọng cao hơn các thuộc tính khác Ví dụ, khi khảo sát về doanh thu hàng tháng, thông tin về thời gian đàm thoại, vùng cước là quan trọng hơn nhiều so với thông tin về phương thức gọi Trong quá trình tìm kiếm luật, chúng ta sẽ gán thời gian gọi, vùng cước các trọng số lớn hơn thuộc tính phương thức gọi Đây là hướng nghiên cứu rất thú vị và đã được một số nhà nghiên cứu đề xuất cách giải quyết bài toán này Với

Trang 32

luật kết hợp có thuộc tính được đánh trọng số, chúng ta sẽ khai thác được những luật

“hiếm” (tức là có độ hỗ trợ thấp, nhưng có ý nghĩa đặc biệt hoặc mang rất nhiều ý nghĩa)

- Luật kết hợp song song (parallel mining of association rules): Bên cạnh

khai phá luật kết hợp tuần tự, các nhà làm tin học cũng tập trung vào nghiên cứu các thuật giải song song cho quá trình phát hiện luật kết hợp Nhu cầu song song hoá và

xử lý phân tán là cần thiết bởi kích thước dữ liệu ngày càng lớn hơn nên đòi hỏi tốc

độ xử lý cũng như dung lượng bộ nhớ của hệ thống phải được đảm bảo Có rất nhiều thuật toán song song khác nhau đã đề xuất để có thể không phụ thuộc vào phần cứng

Bên cạnh những nghiên cứu về những biến thể của luật kết hợp, các nhà nghiên cứu còn chú trọng đề xuất những thuật toán nhằm tăng tốc quá trình tìm kiếm tập phổ biến từ CSDL

Ngoài ra, còn có một số hướng nghiên cứu khác về khai phá luật kết hợp như: khai phá luật kết hợp trực tuyến, khai phá luật kết hợp được kết nối trực tuyến đến các kho dữ liệu đa chiều (Multidimensional data, data warehouse) thông qua công nghệ OLAP (Online Analysis Processing), MOLAP (multidimensional OLAP), ROLAP (Relational OLAP), ADO (Active X Data Object) for OLAP v v

2.1.6 Các đặc trưng của luật kết hợp

2.1.6.1 Không gian tìm kiếm của luật

Như đã giải thích trên đây, ta phải tìm tất cả các tập mục thỏa ngưỡng độ hỗ

trợ tối thiểu Với các ứng dụng thực tiễn, việc duyệt tất cả các tập con của I sẽ hoàn toàn thất bại vì không gian tìm kiếm quá lớn Trên thực tế, sự tăng tuyến tính số lượng

các item vẫn kéo theo sự tăng theo cấp lũy thừa các tập mục cần xem xét Với trường hợp đặc biệt I={1,2,3,4}, ta có thể biểu diễn không gian tìm kiếm thành một lưới như

trong hình 2.2

Trang 33

Hình 2.2 Biểu diễn thông tin tìm kiếm dạng lới cho tập I = {1,2,3,4}

Các tập phổ biến nằm trong phần trên của hình trong khi những tập không phổ biến lại nằm trong phần dưới Mặc dù không chỉ ra một cách tường minh các giá trị hỗ trợ cho mỗi tập mục nhưng ta giả sử rằng đường biên đậm trong hình phân chia các tập phổ biến và tập không phổ biến Sự tồn tại của đường biên như vậy không phụ thuộc vào bất kỳ cơ sở dữ liệu D và độ hỗ trợ tối thiểu nào Sự tồn tại của nó chỉ đơn thuần được đảm bảo bởi tính chặn dưới của tập mục thỏa ngưỡng độ hỗ trợ tối thiểu

Nguyên lý cơ bản của các giải thuật thông thường là sử dụng đường biên này

để thu hẹp không gian tìm kiếm một cách có hiệu quả Khi đường biên được tìm thấy, chúng ta có thể giới hạn trong việc xác định các giá trị hỗ trợ của các tập mục phía trên đường biên và bỏ qua các tập mục phía dưới đường biên

vào các số tự nhiên Bây giờ, các phần tử có thể được xem là có thứ tự hoàn toàn trên

I: n a X.item n là một ánh xạ, trong đó X.item n là phần tử thứ n của các phần tử x X sắp

nghĩa bởi P={X.item |1 m n}

Trang 34

Hình 2.3 Biểu diễn cây cho tập I = {1, 2, 3, 4}

Cho các lớp E(P), P I với E(P) = {X I | |X| = |P|+1 và P là một tiền tố của X}

là các nút của một cây Hai nút sẽ được nối với nhau bằng 1 cạnh nếu tất cả các tập

mục của lớp E có thể được phát sinh bằng cách kết 2 tập mục của lớp cha E’, ví dụ

như trong hình

Cùng với tính chặn dưới của tập mục thỏa ngưỡng độ hỗ trợ tối thiểu, điều này

suy ra: Nếu lớp cha E’ của lớp E không có tối thiểu hai tập phổ biến thì E cũng phải không chứa bất kỳ một tập phổ biến nào Nếu gặp một lớp E’ như vậy trong quá trình duyệt cây từ trên xuống thì ta đã tiến đến đường biên phân chia giữa tập phổ biến và không phổ biến Ta không cần phải tìm tiếp phần sau đường biên này, tức là ta đã loại

bỏ E và các lớp con của E trong không gian tìm kiếm Thủ tục tiếp theo cho phép ta giới hạn một cách có hiệu quả số lượng các tập mục cần phải duyệt Ta chỉ cần xác

định các giá trị độ hỗ trợ của các tập mục mà ta đã duyệt qua trong quá trình tìm kiếm

đường biên giữa tập phổ biến và tập không phổ biến Cuối cùng, chiến lược thực sự

để tìm đường biên là do lựa chọn của chúng ta Các hướng tiếp cận phổ biến hiện nay

sử dụng cả tìm kiếm ưu tiên bề rộng (BFS) lẫn tìm kiếm ưu tiên chiều sâu (DFS) Với BFS, giá trị hỗ trợ của tất cả (k-1)-itemset được xác định trước khi tính giá trị hỗ trợ

của k-itemset Ngược lại, DFS duyệt đệ quy theo cấu trúc cây mô tả ở trên.

2.1.6.2 Độ hỗ trợ của luật

Trong phần này, một tập mục có khả năng là phổ biến và ta cần phải xác định

độ hỗ trợ của nó trong quá trình duyệt dàn, được gọi là một tập mục ứng viên Một

hướng tiếp cận phổ biến để xác định giá trị hỗ trợ của một tập mục là đếm các thể hiện

của nó trong cơ sở dữ liệu Với mục đích đó, một biến đếm (counter) được tạo ra và

khởi tạo bằng 0 cho mỗi tập mục đang duyệt Sau đó, quét qua tất cả các giao dịch và

khi tìm được một ứng viên là tập con của một giao dịch thì tăng biến đếm của nó lên Thông thường, tập con tạo ra và bảng tìm kiếm ứng cử viên được tích hợp và cài đặt

bằng một hashtree hay một cấu trúc dữ liệu tương tự Tóm lại, không phải tất cả các

Trang 35

tập con của mỗi giao dịch đều được tạo ra mà chỉ những giao dịch có chứa trong các ứng viên hoặc có một tiền tố chung với ít nhất một ứng cử viên mới được tạo ra

Một cách tiếp cận khác để xác định giá trị hỗ trợ của các ứng viên là sử dụng giao tập hợp (set intersection) Một TID (Transaction IDentifier) là một khóa-biến

nhận dạng giao dịch duy nhất Với một phần tử đơn, tidlist là tập hợp của các biến nhận dạng tương ứng với các giao dịch có chứa phần tử này Do đó, các tidlist cũng tồn tại cho mỗi tập mục X và được biểu diễn bởi X.tidlist Tidlist của một ứng viên C

= X Y xác định bởi: C.tidlist=X.tidlist Y.tidlist Các tidlist được sắp xếp theo thứ

tự tăng dần để các phép giao được hiệu quả

Lưu ý rằng bằng cách dùng vùng đệm cho tidlist của các ứng viên phổ biến như là các kết quả trung gian, ta có thể tăng đáng kể tốc độ phát sinh tidlist cho các

ứng viên tiếp theo Cuối cùng, các độ hỗ trợ thực sự của ứng cử viên chính là |C.tlist|

2.2 Một số giải thuật cơ bản khai phá các tập mục phổ biến

2.2.1 Phân loại các giải thuật

Phần này sẽ trình bày và hệ thống hóa một cách ngắn gọn các giải thuật đang được dùng phổ biến hiện nay để khai phá các tập phổ biến Chúng sẽ được thực hiện dựa vào những nguyên tắc cơ bản của phần trước Mục tiêu của chúng ta là thể hiện được những sự khác biệt giữa các cách tiếp cận khác nhau Các giải thuật mà ta xem xét trong bài này được hệ thống hóa như hình vẽ 2.4

Các giải thuật được phân loại dựa vào việc:

a) Duyệt theo không gian tìm kiếm (BFS, DFS)

b) Xác định giá trị hỗ trợ của tập mục (itemset)

c) Ngoài ra, một giải thuật có thể dùng một số các tối ưu khác để tăng tốc thêm

Hình 2.4 Hệ thống hóa các giải thuật

2.2.2 Kỹ thuật BFS với thuật toán Apriori

Giải thuật phổ biến nhất của loại này là giải thuật Apriori, trong đó có trình bày tính chặn dưới của tập mục thỏa ngưỡng độ hỗ trợ tối thiểu Giải thuật Apriori tạo

ra việc sử dụng các tính chất này bằng việc tỉa bớt những ứng viên thuộc tập không phổ biến trước khi tính độ phổ biến của chúng Cách tối ưu có thể thực hiện được vì

Trang 36

các giải thuật tìm kiếm ưu tiên theo chiều rộng (BFS) bảo đảm rằng các giá trị hỗ trợ của các tập của một ứng viên đều được biết trước Giải thuật Apriori đếm tất cả các ứng viên có k phần tử trong một lần đọc cơ sở dữ liệu Phần cốt lõi của bài toán là xác định các ứng viên trong mỗi giao dịch Để thực hiện được mục đích này phải dựa vào một cấu trúc gọi là hashtree Các item trong mỗi giao dịch được dùng để đi lần xuống trong cấu trúc hashtree Bất cứ khi nào tới được nút lá của nó, nghĩa là ta đã tìm được một tập các ứng viên có cùng tiền tố được chứa trong giao dịch đó Sau đó các ứng viên này sẽ được thực hiện tìm kiếm trong giao dịch mà nó đã được mã hóa trước thành ma trận bit Trong trường hợp thành công biến đếm các ứng viên trong cây được tăng lên

Giới thiệu bài toán:

Apriori là thuật toán được Rakesh Agrawal, Tomasz Imielinski, Arun Swami

đề xuất lần đầu vào năm 1993 Bài toán được phát biểu: Tìm t có độ hỗ trợ s thỏa mãn

s s0 và độ tin cậy c c 0 (s 0 , c 0 là hai ngưỡng do người dùng xác định và s 0=minsup,

hai tập có: tập mục và độ hỗ trợ)

Bài toán đặt ra là:

- Tìm tất cả các tập mục phổ biến với độ hỗ trợ tối thiểu nào đó

- Sử dụng các tập mục phổ biến để sinh ra các luật kết hợp với độ tin cậy tối thiểu nào đó

Quá trình thực hiện (duyệt):

Thực hiện nhiều lần duyệt lặp đi lặp lại, trong đó tập (k-1) - mục được sử dụng cho việc tìm tập k-mục Lần thứ nhất tìm tất cả các độ hỗ trợ của các mục, xác

biến

Các lần duyệt còn lại: Bắt đầu kết quả tìm được bước trước nó, sử dụng

tìm độ hỗ trợ thực sự Mỗi lần duyệt ta phải xác định tập mục mẫu cho lần duyệt tiếp theo

biến nào nữa

Chú ý:

Trang 37

nối như sau: Các thành phần L k-1 kết nối (nếu có chung k-2 mục đầu tiên) tức

giải thuật Apriori sử dụng các tính chất:

- Tất cả các tập con khác rỗng của một tập mục phổ biến là phổ biến;

- Nếu L là tập mục không phổ biến thì mọi tập chứa nó không phổ biến

Mô phỏng giải thuật Apriori:

Như trên đã nói, các thuật toán khai phá tập thường xuyên (Frequent Itemset) phải thiết lập một số giai đoạn (phase) trên CSDL Trong giai đoạn đầu tiên, người ta đếm độ hỗ trợ cho mỗi tập riêng lẻ và xác định xem tập nào là phổ biến (nghĩa là có sup ≥ minsup) Trong mỗi giai đoạn tiếp theo, người ta bắt đầu với tập các tập phổ biến đã tìm được trong giai đoạn trước để lại sinh ra tập các tập mục có khả năng là phổ biến mới (gọi là tập các ứng cử viên - candidate itemset) và thực hiện đếm độ hỗ trợ cho mỗi tập các ứng cử viên trong tập này bằng một phép duyệt trên CSDL Tại điểm kết của mỗi giai đoạn, người ta xác định xem trong các tập ứng viên này, tập nào là phổ biến và lập thành tập các tập phổ biến cho giai đoạn tiếp theo Tiến trình này sẽ được tiếp tục cho đến khi không tìm được một tập phổ biến nào mới hơn nữa

Để tìm hiểu các thuật toán, ta giả sử rằng, các item trong mỗi giao dịch đã được sắp xếp theo thứ tự từ điển (người ta sử dụng khái niệm từ điển ở đây để diễn đạt một thứ tự quy ước nào đó trên các item của cơ sở dữ liệu) Mỗi bản ghi - record

của cơ sở dữ liệu D có thể coi như là một cặp < TID, tập mục > trong đó TID là định

danh cho giao dịch Các item trong một tập mục cũng được lưu theo thứ tự từ điển,

nghĩa là nếu kí hiệu k item cửa một k-itemset c là c[1],c[2],…,c[k], thì

c[1]<c[2]<…<c[k] Nếu c=X.Y và Y là một itemset thì Y cũng được gọi là

m-extension (mở rộng) của X Trong lưu trữ, mỗi tập mục có một trường support-count

tương ứng, đây là trường chứa số đếm độ hỗ trợ cho tập mục này

Thuật toán Apriori

Các kí hiệu:

hỗ trợ tối thiểu và có lực lượng bằng k) Mỗi phần tử của tập này có 2 trường: tập mục

và trường đếm độ hỗ trợ (support-count)

phần tử trong tập này cũng có 2 trường tập mục và đếm độ hỗ trợ

Nội dung thuật toán Apriori được trình bày như sau:

Input: Tập các giao dịch D, ngưỡng độ hỗ trợ tối thiểu (minsup)

Trang 38

Output: L- tập mục phổ biến trong D

5 for (mỗi một giao dịch T D) do

6 begin

8 for (mỗi một ứng cử viên c CT) do

9 c.count++; //tăng bộ đếm tần xuất 1 đơn vị

10 end;

12 end;

Trong thuật toán này, giai đoạn đầu đơn giản chỉ là việc đếm độ hỗ trợ cho

trợ của nó lớn hơn hoặc bằng độ hỗ trợ tối thiểu

Trong các giai đoạn thứ k sau đó (k>1), mỗi giai đoạn gồm có 2 pha Trước

trước

Vấn đề sinh tập candidate của Apriori – Hàm Apriori_gen:

quả là một superset, tập của tất cả các large k – itemset Sơ đồ sau là thuật toán cho

Trang 39

Hàm kiểm tra tập con k-1 mục của ứng cử viên k-mục không là tập phổ biến:

1 function has_infrequent_subset(c: ứng cử viên k-mục; Lk-1 tập phổ biến k-1 mục)

//sử dụng tập mục phổ biến trước

4 If s L k-1 then return TRUE;

Có thể mô tả hàm Apriori_gen trên theo lược đồ sau:

Trang 40

6 for (mọi (k-1) tập con s của c( do

7 if (s L k-1) then

8 delete c khỏi C k;

Với nội dung trên, ta thấy hàm này có 2 bước:

rằng các item của các tập mục đã được sắp xếp theo thứ tự từ điển Nếu có k-2 item

Ck

2 Bước cắt tỉa (prune step): Đây là bước tiếp theo sau bước join Trong

nên sup(s)<minsup Vậy c không thể là một tập mục thường xuyên, nó cần phải loại

Ví dụ : Giả sử tập các item I = {A,B, C, D, E} và cơ sở dữ liệu giao dịch:

D = {<1, {A,C,D}>, <2,{B,C,E}>, <3,{A,B,C,E}>,<4,{B,E}>} Với minsup = 0.5 (tức

tương đương 2 giao dịch) Khi thực hiện thuật toán Apriori trên ta có sơ đồ sau:

Ngày đăng: 27/04/2021, 11:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Nguyễn Đức Cường, “Slide bài giảng môn học BI &amp; DM: Bussiness Intellegent and Data Mining”, 2011-2012 Sách, tạp chí
Tiêu đề: Slide bài giảng môn học BI & DM: Bussiness Intellegent and Data Mining
[2]. Bao Ho Tu (1998), Introduction to Knowledge Discovery and Data mining, Institute of Information Technology National Center for Natural Science and Technology Sách, tạp chí
Tiêu đề: Introduction to Knowledge Discovery and Data mining
Tác giả: Bao Ho Tu
Năm: 1998
[9]. J. Han and Micheline Kamber. Data Mining:Concepts and Techniques, 3rd Edition. Morgan Kaufmann Publishers, 2011 Sách, tạp chí
Tiêu đề: Data Mining:Concepts and Techniques
[10]. John Wiley &amp; Sons (2003) - Data Mining-Concepts Models Methods And Algorithms, Copyright © 2003 The Institute of Electrical and Electronics Engineers, Inc Sách, tạp chí
Tiêu đề: Data Mining-Concepts Models Methods And Algorithms
[11]. Jean – Marc Adamo (2001), Data Mining for Association Rules and Sequential Patterns, Sequential and Parallel Algorithms, Springer – Verlag New York, Inc Sách, tạp chí
Tiêu đề: Data Mining for Association Rules and Sequential Patterns, Sequential and Parallel Algorithms
Tác giả: Jean – Marc Adamo
Năm: 2001
[12]. John Shafer, Rakesh Agrawal, Manish Mehta. “Sprint – A Scalable Classifier for Data mining” in Predeeings of the 22 nd International Conference on very large database, India 1996 Sách, tạp chí
Tiêu đề: Sprint – A Scalable Classifier for Data mining
[3]. Nguyễn Thị Thanh Thủy, Nguyễn Trần Quốc Vinh,. Ứng dụng khai phá dữ liệu xây dựng công cụ dự đoán kết quả học tập của sinh viên. Hội nghị sinh viên nghiên cứu khoa học lần thứ 8, Đại học Đà Nẵng, 2012 Khác
[4]. Nguyễn Chí Ngôn và Nguyễn Thái Nghe. 2010. Hệ chuyên gia hổ trợ sinh viên lập kế hoạch học tập (dựa trên phương pháp khai phá dữ liệu - data mining). Đề tài NCKH cấp trường. Đại học Cần Thơ Khác
[5]. Nguyễn Thái Nghe. 2013a. Hệ thống dự báo năng lực học tập và hỗ trợ sinh viên lựa chọn môn học. Đề tài NCKH cấp trường. Đại học Cần Thơ Khác
[6]. Nguyễn Thái Nghe, Huỳnh Xuân Hiệp. 2012. Ứng dụng kỹ thuật phân rã ma trận đa quan hệ trong xây dựng hệ trợ giảng thông minh, Kỷ yếu Hội thảo quốc gia lần thứ XV: Một số vấn đề chọn lọc của CNTT&amp;TT (@2012). Nhà xuất bản Khoa học và Kỹ thuật. ISBN: 893-5048-931578 Khác
[7]. TS Trương Ngọc Châu, Bài Giảng Khai phá dữ liệu, Đại học Bách Khoa, Đại học Đà Nẵng Khác
[8]. TS Trương Ngọc Châu, Bài Giảng Cơ sở dữ liệu, Đại học Bách Khoa, Đại học Đà Nẵng.Tiếng Anh Khác
[13]. J. Ross Quinlan. C4.5: Programs for Machine Learning. Morgan Kaufmann Publishers, 1993 Khác

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