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

Khóa luận tốt nghiệp khai khoán dữ liệu: Xây dựng hệ thống hỗ trợ tự đánh giá năng lực trực tuyến bằng giải thuật luật kết hợp

79 105 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 79
Dung lượng 2,53 MB

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

Nội dung

Cuối cùng là xây dựng một hệ thống để khai phá luật kết hợp dựa trên cơ sở dữ liệu điểm của trường để giúp cho sinh viên đánh giá năng lực của mình.. Nên đề tài sẽ chia làm 2 phần thực h

Trang 1

KHOA KỸ THUẬT - CÔNG NGHỆ - MÔI TRƯỜNG

LÊ NGUYÊN ĐỨC – DTH092032

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC NGÀNH CỬ NHÂN TIN HỌC

XÂY DỰNG HỆ THỐNG HỖ TRỢ TỰ ĐÁNH GIÁ NĂNG LỰC TRỰC TUYẾN BẰNG GIẢI

THUẬT LUẬT KẾT HỢP

An Giang, 04/2013

Trang 2

TRƯỜNG ĐẠI HỌC AN GIANG KHOA KỸ THUẬT - CÔNG NGHỆ - MÔI TRƯỜNG

LÊ NGUYÊN ĐỨC – DTH092032

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC NGÀNH CỬ NHÂN TIN HỌC

XÂY DỰNG HỆ THỐNG HỖ TRỢ TỰ ĐÁNH GIÁ NĂNG LỰC TRỰC TUYẾN BẰNG GIẢI

THUẬT LUẬT KẾT HỢP

An Giang, 04/2013

Giảng viên hướng dẫn:

Huỳnh Lý Thanh Nhàn

Trang 3

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Giảng viên hướng dẫn

(Ký và ghi rõ họ tên)

Nội dung nhận xét:

- Đồng ý hay không đồng ý cho sinh viên báo cáo KLTN; Nếu không đồng ý cần ghi rõ lý do

- Kết quả đạt được so với yêu cầu;

- Ý kiến khác (nếu có)

Trang 4

TRƯỜNG ĐẠI HỌC AN GIANG KHOA KỸ THUẬT - CÔNG NGHỆ - MÔI TRƯỜNG

THỰC TẬP CUỐI KHÓA NGÀNH CỬ NHÂN TIN HỌC

XÂY DỰNG HỆ THỐNG HỖ TRỢ TỰ ĐÁNH GIÁ NĂNG LỰC TRỰC TUYẾN BẰNG GIẢI

THUẬT LUẬT KẾT HỢP

Đơn vị thực tập: Khoa Kỹ thuật – Công nghệ - Môi trường

Giảng viên hướng dẫn: Sinh viên thực hiện:

Huỳnh Lý Thanh Nhàn Lê Nguyên Đức – DTH092032

An Giang, 04/2013

Trang 5

TRƯỜNG ĐẠI HỌC AN GIANG KHOA KỸ THUẬT - CÔNG NGHỆ - MÔI TRƯỜNG

THỰC TẬP CUỐI KHÓA NGÀNH CỬ NHÂN TIN HỌC

XÂY DỰNG HỆ THỐNG HỖ TRỢ TỰ ĐÁNH GIÁ NĂNG LỰC TRỰC TUYẾN BẰNG GIẢI

THUẬT LUẬT KẾT HỢP

Đơn vị thực tập: Khoa Kỹ thuật – Công nghệ - Môi trường

Giảng viên hướng dẫn: Sinh viên thực hiện:

Huỳnh Lý Thanh Nhàn Lê Nguyên Đức – DTH092032

An Giang, 04/2013

Trang 6

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Giảng viên hướng dẫn

(Ký và ghi rõ họ tên)

Nội dung nhận xét:

- Đồng ý hay không đồng ý cho sinh viên báo cáo TTCK; Nếu không đồng ý cần ghi rõ lý do

- Kết quả đạt được so với yêu cầu;

- Ý kiến khác (nếu có)

M-TT-05

Trang 7

LỜI CẢM ƠN

Em chân thành cảm ơn:

Ban giám hiệu trường Đại học An Giang, Ban chủ nhiệm khoa Kỹ thuật – Công nghệ - Môi trường, Bộ môn Tin học cùng quý thầy cô trong khoa Kỹ thuật – Công nghệ - Môi trường đã tạo điều kiện cho em được học tập và thực hiện khóa luận này Quý thầy cô đã trực tiếp cũng như gián tiếp cung cấp các kiến thức nền tảng cho

em thực hiện khóa luận

Phòng đào tạo, các thầy cô trong khoa đã tạo điều kiện thuận lợi cho em trong việc thu thập dữ liệu (cơ sở dữ liệu điểm của sinh viên, chương trình đào tạo các ngành) cũng như phân tích và thực hiện đề tài

Thầy Huỳnh Lý Thanh Nhàn, người hướng dẫn trực tiếp đã đóng góp ý kiến và giúp đỡ em trong suốt quá trình thực hiện đề tài

Anh Nguyễn Văn Vũ đã khích lệ, động viên, giúp đỡ em trong quá trình thực hiện khóa luận này

Xin cảm ơn gia đình đã tạo điều kiện cho em an tâm học tập, cảm ơn các bạn lớp DH10TH đã chia sẽ giúp đỡ trong quá trình học tập những năm qua Đặc biệt gởi lời cảm ơn đến các bạn thuộc nhóm Profit đã gắn bó và tận tình giúp đỡ trong suốt 4 năm học

Tuy đã nỗ lực để hoàn thành luận văn nhưng sai sót là không thể tránh khỏi kính mong quý thầy cô thông cảm và tận tình chỉ bảo những sai sót đó Mong nhận được ý kiến đóng góp của quý thầy cô và các bạn

Sinh viên Lê Nguyên Đức

Trang 8

Để giải quyết bài toán mang tính chất suy diễn, dự đoán dựa vào lịch sử như thế này thì luật kết hợp là lựa chọn hợp lý nhất Vì thế đề tài sẽ sử dụng các giải thuật khai phá luật kết hợp cụ thể là charm (tìm tập đóng/tập đóng tối đại) và apriori (sinh luật)

Sử dụng kết quả thu được từ charm và apriori tiến hành dự đoán cho từng sinh viên cuối cùng sử dụng kết quả dự đoán này để tư vấn cho từng sinh viên cụ thể trong môi trường web

Kết quả thực nghiệm cho thấy charm hiệu quả hơn apriori và fp-growth trên tập

dữ liệu lớn Mặt khác, phương pháp mà đề tài đã áp dụng cũng cho kết quả khá khả quan, luật tìm được có độ chính xác tương đối cao

Trang 9

MỤC LỤC

Danh sách hình iii

Danh sách bảng v

Danh sách ký hiệu vi

Danh sách từ viết tắt vii

Chương 1: Tổng quan 1

I Đặt vấn đề 1

II Lịch sử giải quyết vấn đề 1

III Phạm vi của đề tài 2

IV Hướng giải quyết vấn đề 2

Chương 2: Cơ sở lý thuyết 4

I Tổng quan về khai phá tri thức và khai phá dữ liệu 4

1 Phát hiện tri thức và khai phá dữ liệu 4

2 Quá trình phát hiện tri thức từ cơ sở dữ liệu 6

3 Khai phá dữ liệu 8

II Luật kết hợp trong khai phá dữ liệu 12

1 Các định nghĩa về luật kết hợp 12

2 Một số hướng tiếp cận trong khai phá luật kết hợp 14

III Tìm siêu tham số (search hyper parameters) 14

Chương 3: Giải thuật charm 16

I Giới thiệu giải thuật 16

II Tìm tập mục thường xuyên 16

1 Các khái niệm liên quan 17

2 Tìm tập phổ biến đóng trên it-tree 20

Chương 4: Độ đo hấp dẫn khách quan của luật kết hợp 27

I Giới thiệu 27

II Các tiêu chí đánh giá 27

1 Biến thiên giá trị 27

2 Tình huống cá biệt 28

3 Hiện tượng nghịch lý 29

4 Đếm được 29

5 Đa dạng hóa 29

6 Khả năng phân biệt 29

Trang 10

7 Có thể giải thích 29

8 Không cân bằng 29

9 Thuộc tính lợi ích 30

10 Biến thiên giá trị 30

Chương 5: Xây dựng hệ thống hỗ trợ tự đánh giá năng lực trực tuyến bằng giải thuật luật kết hợp 31

I Tổng quan hệ thống 31

1 Phân hệ khai phá 31

2 Phân hệ hỗ trợ đánh giá 31

II Mô tả chi tiết phân hệ khai phá 32

1 Nhập chương trình đào tạo từ tập tin excel 32

2 Nhập điểm từ tập tin excel và chuyển đổi điểm 34

3 Chuyển đổi và tích hợp dữ liệu giao tác 36

4 Tìm tập đóng tối đại từ cơ sở dữ liệu giao tác 43

5 Sinh luật từ tập đóng tối đại 44

6 Tìm siêu tham số 47

7 Đánh giá độ hấp dẫn của luật 53

8 Tạo tài khoản và dự đoán 54

9 Đồng bộ dữ liệu 55

III Mô tả phân hệ hỗ trợ đánh giá 56

Chương 6: Đánh giá ba giải thuật apriori, fp-growth và charm từ kết quả thực nghiệm 57

I So sánh ba giải thuật 57

1 Trường hợp tập dữ liệu lớn 57

2 Trường hợp tập dữ liệu nhỏ 58

3 Nhận xét và giải thích kết quả 59

II Chọn giải thuật cho đề tài 60

Kết luận và kiến nghị 61

Phụ lục

Tài liệu tham khảo

Trang 11

DANH SÁCH HÌNH

Hình 2.1 Bảng số lượng sinh viên bậc Đại học và Cao đẳng Việt Nam giai đoạn

2000 -2011 4

Hình 2.2 Biểu đồ số lượng sinh viên bậc Đại học và Cao đẳng Việt Nam giai đoạn 2000 -2011 5

Hình 2.3 Quá trình khám phá tri thức từ cơ sở dữ liệu 6

Hình 2.4 Kiến trúc của hệ thống khai phá dữ liệu 11

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

Hình 3.1 Lớp thứ 1 của IT-Tree 18

Hình 3.2 Lớp thứ 2 của IT-Tree 19

Hình 3.3 Lớp thứ 3 của IT-Tree 19

Hình 3.4 Lớp thứ 4 của IT-Tree 20

Hình 3.5 Diffset P(tiền tố) và các lớp thành viên X, Y 22

Hình 3.6 IT-Tree dùng Diffset với minsup là 50% 22

Hình 3.7 Minh họa xây dựng IT-Tree bằng charm với minsup là 50% 25

Hình 4.1 Bản số của luật kết hợp XY 27

Hình 4.2 Biến thiên “tốt” của giá trị hấp dẫn 28

Hình 5.1 Mô hình tổng quan hệ thống hỗ trợ tự đánh giá năng lực trực tuyến 31

Hình 5.2 Quy trình khai phá 32

Hình 5.3 Cấu trúc tập tin excel chứa chương trình đào tạo 33

Hình 5.4 Danh sách môn học thu được sau khi nhập chương trình đào tạo của ngành Đại học Việt Nam học 34

Hình 5.5 Danh sách ngành học thu được sau khi nhập chương trình đào tạo của ngành Đại học Việt Nam học 34

Hình 5.6 Chương trình đào tạo của ngành Đại học Việt Nam học trong phân hệ khai phá 34

Hình 5.7 Kết quả nhập và chuyển điểm của ngành Đại học Việt Nam học từ tập tin excel 35

Hình 5.8 Kết quả chuyển mã môn học 36

Hình 5.9 Kết quả chuyển mã nhóm ngành của ngành Đại học Việt Nam học 37

Hình 5.10 Tập dữ liệu điểm phục vụ cho việc tổng hợp cơ sở dữ liệu giao tác ngành Đại học Việt Nam học học kỳ 2 42

Hình 5.11 Cơ sở dữ liệu giao tác của ngành Đại học Việt Nam học ở học kỳ 2 43

Hình 5.12 Quy trình tìm tập đóng 43

Hình 5.13 Mô hình một tập đóng tối đại 45

Hình 5.14 Tập đóng tối đại được chia thành tập tiền đề (các ô màu trắng) và tập kết luận (các ô màu đỏ) 45

Hình 5.15 Các ứng viên ở tập tiền (vùng màu xanh) đề và tập kết luận (vùng màu đỏ) 46

Trang 12

Hình 5.16 Mô hình xử lý sinh và chọn luật 47

Hình 5.17 Tập luật của ngành Đại học Việt Nam học (học kỳ 2) 47

Hình 5.18 Tập luật, tập Ssupp và tập Cconf 49

Hình 5.19 Tập luật và độ chính xác khi supp là 20% và conf là 50% 49

Hình 5.20 Tập luật và độ chính xác khi supp là 20% và conf là 60% 50

Hình 5.21 Tập luật và độ chính xác khi supp là 30% và conf là 50% 50

Hình 5.22 Tập luật và độ chính xác khi supp là 30% và conf là 60% 51

Hình 5.23 Cặp tham số tìm được 51

Hình 5.24 Kết quả tìm siêu tham số cho tập luật của ngành Đại học Việt Nam học ở học kỳ 2 52

Hình 5.25 Tập luật thỏa cặp tham số tìm được (10% - 100%) 52

Hình 5.26 Tập luật ở học kỳ 2 của ngành Đại học Việt Nam học sau khi đánh giá độ hấp dẫn 53

Hình 5.27 Kết quả tư vấn ngành Đại học Việt Nam học ở học kỳ 2 55

Hình 5.28 Mô hình trao đổi dữ liệu giữa phân hệ khai phá và phân hệ tư vấn 55

Hình 5.29 Kết quả tư vấn cho một tài khoản sinh viên ngành Đại học Việt Nam học ở học kỳ 2 56

Hình 5.30 Kết quả tư vấn cho một sinh viên tại phân hệ hỗ trợ đánh giá 56

Hình 6.1 Giao diện Sequential Pattern Mining Framework 57

Hình 6.2 Biểu đồ sự phụ thuộc của thời gian vào giải thuật trên tập dữ liệu lớn (đơn vị tính mili giây) 58

Hình 6.3 Biểu đồ sự phụ thuộc của thời gian vào giải thuật trên tập dữ liệu nhỏ (đơn vị tính mili giây) 59

Trang 13

DANH SÁCH BẢNG

Bảng 2.1 Các nhóm kỹ thuật khai phá dữ liệu 9

Bảng 3.1 Các ký hiệu dùng trong thuật toán tìm tập mục thường xuyên 16

Bảng 3.2 Cơ sở dữ liệu minh họa xây dựng IT-Tree 17

Bảng 3.3 Định dạng dữ liệu dọc của các mục (Items) 17

Bảng 5.1 Danh sách môn học (khóa: 1, không khóa: 0) 38

Bảng 5.2 Danh sách các môn học trong chương trình đào tạo của ngành Đại học Việt Nam học trong học kỳ 1 và 2 (tự chọn: 1,bắt buộc: 0) 40

Bảng 5.3 Nội dung tập SV1 41

Bảng 5.4 Tập luật khi kết ứng viên của tập tiền đề và tập kiểm tra 46

Bảng 6.1 Thông số của tập dữ liệu lớn và độ hỗ trợ nhỏ nhất 57

Bảng 6.2 Kết quả thực nghiệm trên tập dữ liệu lớn 58

Bảng 6.3 Thông số của tập dữ liệu nhỏ và độ hỗ trợ nhỏ nhất 58

Bảng 6.4 Kết quả thực nghiệm trên tập dữ liệu nhỏ 59

Bảng 6.5 So sánh giải thuật Apriori, FP-Growth và Charm 60

Bảng 7.1 Kết quả thực nghiệm với dữ liệu của ngành Đại học Việt Nam học từ học kỳ 2 đến học kỳ 5 61

Trang 14

DANH SÁCH KÝ HIỆU

C k Tập ứng cử viên k mục

Conf Độ tin cậy

D Cơ sở dữ liệu giao tác

FCI Tập phổ biến đóng

FI Tập mục thường xuyên

L k Tập mục thường xuyên k mục

MFI Tập phổ biến đóng tối đại

minconf Độ tin cậy nhỏ nhất

Trang 15

DANH SÁCH TỪ VIẾT TẮT

CSDL Cơ sở dữ liệu

KDD Knowledge Discovery and Data Mining

MSSV Mã số sinh viên

NNLCBCCN Những nguyên lý cơ bản của chủ nghĩa

GDQP-AN Giáo dục quốc phòng – an ninh

VH Văn hóa

ĐNA Đông Nam Á

TT Thực tập

NH – KS Nhà hàng – khách sạn

PPNCKH Phương pháp nghiên cứu khoa học

ĐLCMCĐCS Đường lối cách mạng của Đảng cộng sản

KN Kỹ năng

Trang 16

CHƯƠNG 1: TỔNG QUAN

I ĐẶT VẤN ĐỀ

Kể từ năm học 2009 – 2010, trường Đại học An Giang chuyển từ đào tạo theo niên chế sang đào tạo theo học chế tín chỉ [1] Đi theo sự thay đổi đó là nhu cầu

được tư vấn trong việc chọn môn học tự chọn nào cho phù hợp với từng sinh viên

cụ thể là rất cần thiết của sinh viên Theo một cách thông thường thì việc tư vấn này sẽ do cố vấn học tập hoặc giáo viên chủ nhiệm phụ trách Để đưa ra lời khuyên hợp lý cho sinh viên các cố vấn học tập phải xem xét kết quả học tập của sinh viên mà mình đang tư vấn sau đó mới đưa ra lời khuyên cho sinh viên đó Mà mối quan hệ tư vấn giữa cố vấn học tập và sinh viên không phải là mối quan hệ 1-

1 mà là mối quan hệ 1-nhiều Vì thế công việc của cố vấn học tập, giáo viên chủ nhiệm trong việc tư vấn cho sinh viên là khá cực nhọc và tốn nhiều thời gian Một thực tế trong năm học 2011-2012, Đại học An Giang có 19 sinh viên bị buộc thôi học một năm [11] và 127 sinh viên bị cảnh báo học vụ [10], số lượng sinh viên buộc thôi học này ngày càng tăng và thường tập trung vào những sinh viên năm thứ ba và năm cuối Những sinh viên học ở năm thứ nhất và năm thứ hai thường ít bị buộc thôi học do chưa có nhiều môn lựa chọn Khi sinh viên bước vào năm học thứ ba hoặc thứ tư thì số lượng môn lựa chọn ngày càng nhiều, nếu lựa chọn những môn học không phù hợp với từng sinh viên thì sẽ dẫn đến kết quả xấu

và dần dần ảnh hưởng đến kết quả của toàn khóa học Với kết quả bị buộc thôi học

ở những sinh viên năm ba và năm cuối là một tổn thất lớn của sinh viên, gia đình

và còn là gánh nặng của nhà trường, của toàn xã hội Thật vậy, khi sinh viên bị rớt một môn học nào đó thì sinh viên đó sẽ phải học lại Việc học lại rất mất thời gian, công sức của sinh viên, hao tốn thêm về vấn đề tài chính của gia đình sinh viên đó

và làm giảm chất lượng đào tạo chung của toàn trường

Theo từng học kỳ, theo từng năm học, điểm của tất cả sinh viên học tập tại trường đều được lưu trữ lại Do đó, kho dữ liệu này là vô cùng to lớn Vậy vấn đề đặt ra là kho dữ liệu khổng lồ này có giúp ích gì trong việc hỗ trợ cho hệ thống cố vấn học tập của trường Cụ thể là nó có giúp giảm tải công việc tư vấn của các cố

vấn học tập hay không? Đây cũng chính là lý do em chọn và thực hiện đề tài “Xây dựng hệ thống hỗ trợ tự đánh giá năng lực trực tuyến bằng giải thuật luật kết hợp”

II LỊCH SỬ GIẢI QUYẾT VẤN ĐỀ

Đây không phải là vấn đề mới Năm 2008, trong khóa luận tốt nghiệp của mình thầy Huỳnh Lý Thanh Nhàn cũng đã giải quyết vấn đề tương tự là dự đoán kết quả học tập của sinh viên cũng bằng giải thuật luật kết hợp [6] Đề tài của thầy Huỳnh Lý Thanh Nhàn đã xây dựng thành công phần mềm sinh luật và tiến hành

dự đoán kết quả học tập của sinh viên dựa vào luật tìm được [6] Tuy nhiên, vẫn

còn một số vấn đề chưa được giải quyết: Một là, chưa áp dụng chương trình đào

tạo theo học chế tín chỉ (vì khi xây dựng đề tài trường vẫn còn đào tạo theo niên

chế) điều này làm cho đề tài không còn phù hợp với nhu cầu hiện nay nữa Hai là,

chưa thử nghiệm và so sánh các giải thuật để tìm ra giải thuật phù hợp với yêu cầu

mà đề tài thực hiện, chưa thể áp dụng thực tế Ba là, chưa có thao tác đánh giá tri

Trang 17

thức mà cụ thể là việc đo độ hấp dẫn của luật Bốn là, việc xây dựng website dự

đoán kết quả học tập cho sinh viên trường Đại học An Giang còn nằm trong hướng phát triển của đề tài Và phạm vi của đề tài chỉ áp dụng trong Khoa Kỹ thuật – Công nghệ - Môi trường

III PHẠM VI CỦA ĐỀ TÀI

Trong đề tài sẽ tập trung trình bày một cách khái quát về khai phá tri thức và khai khá dữ liệu

Dựa trên các lý thuyết đã tổng hợp tiến hành nghiên cứu sâu hơn về luật kết hợp

Cuối cùng là xây dựng một hệ thống để khai phá luật kết hợp dựa trên cơ sở

dữ liệu điểm của trường để giúp cho sinh viên đánh giá năng lực của mình Đánh giá năng lực là xét xem với điểm hiện tại của sinh viên thì thích hợp để học những môn tự chọn nào Từ đó đưa ra sự tư vấn cho sinh viên trong việc lựa chọn môn học tự chọn nào trong lúc đăng ký học phần

Thông thường trước khi sinh viên đăng ký học phần ở mỗi học kỳ sinh viên phải đứng trước việc quyết định chọn học môn nào và không học môn nào giữa các môn tự chọn Để đi đến quyết định cuối cùng sinh viên thực hiện ít nhất 4 công việc sau:

- Tự đánh giá năng lực của mình xem phù hợp để học môn tự chọn nào và không phù hợp với môn tự chọn nào? (Có thể tham khao ý kiến của cố vấn học tập)

- Xét sở trường, sở đoản, sở thích của mình là gì?

- Điều kiện và hoàn cảnh gia đình có phù hợp không?

- Môn học có được mở hay không?

Hệ thống mà đề tài hướng đến xây dựng sẽ giúp giải quyết công việc thứ nhất

mà sinh viên phải thực hiện như đã trình bày Tức là giúp sinh viên đánh giá năng lực của sinh viên xem phù hợp hay không phù hợp với từng môn học tự chọn trong từng học kỳ chứ không ra quyết định thay cho sinh viên Đều này phần nào đã giải thích được chữ “tự” trong tên đề tài Tự ở đây có nghĩa là sinh viên phải tự ra quyết định, tự chọn môn học và tự chịu trách nhiệm về quyết định của mình lựa chọn

IV HƯỚNG GIẢI QUYẾT VẤN ĐỀ

Sử dụng thuật toán khai phá luật kết hợp để sinh ra các luật kết hợp Tiến hành đánh giá độ hấp dẫn của luật trước khi sử dụng các luật đó làm cơ sở để tư vấn cho sinh viên trong việc chọn môn học tự chọn phù hợp với khả năng của sinh viên Tuy nhiên, quá trình tìm luật tương đối phức tạp và tốn thời gian Nên đề tài sẽ chia làm 2 phần thực hiện đó là: phần sinh luật từ cơ sở dữ liệu và phần sử dụng kết quả của phần 1 để tư vấn cho sinh viên Do quá trình thực hiện để sinh ra luật

và đánh giá luật tốn nhiều thời gian và phức tạp nên được thực hiện ở môi trường ứng dụng application ở máy tính cục bộ (phân hệ khai phá) Sau khi tìm được luật

sẽ đưa chúng lên internet dưới dạng một website để phục vụ cho sinh viên tự đánh giá năng lực của mình (phân hệ hỗ trợ đánh giá) Đánh giá xem khả năng của sinh

Trang 18

viên phù hợp với môn tự chọn nào và không phù hợp với môn tự chọn nào Việc

sử dụng thêm phân hệ tư vấn sẽ giúp tư vấn cho nhiều sinh viên trong một thời gian ngắn và phần nào giải thích yếu tố “trực tuyến” của đề tài

Trang 19

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

I TỔNG QUAN VỀ KHAI PHÁ TRI THỨC VÀ KHAI PHÁ DỮ LIỆU

1 PHÁT HIỆN TRI THỨC VÀ KHAI PHÁ DỮ LIỆU

Trong thời đại công nghệ thông tin hiện nay, nếu không muốn nói là tất cả thì hầu như các cơ quan, tổ chức, doanh nghiệp đều xây dựng kho lưu trữ dữ liệu cho riêng mình Theo thời gian thì các kho dữ liệu đó ngày càng trở nên khổng lồ Nó khổng lồ đến nỗi người ta phải dùng đến đơn vị tính là terabytes để đo đếm lượng thông tin đó Và sau đây là một vài ví dụ minh chứng cho sự bùng nổ thông tin

trong lưu trữ và cần phân tích:

Cơ sở dữ liệu khoa học thiên văn: Europe’s Very Long Baseline

interforometry (VLBI) có 16 kính thiên văn dữ liệu mỗi kính thu được trong 1 giây

là 1 Gigabits người ta tiến hành phân tích dữ liệu trong 25 ngày thu được nên dữ

liệu cần phân tích trong 25 ngày là quá lớn, nó lên đến vài Terabytes [5]

Cơ sở dữ liệu truyền thông: AT&T lưu trữ 26 Terabytes thông tin khách hàng

để phục vụ cho kế hoạch đầu tư và phát triển Còn France telecom có đến 30

Terabytes lưu trữ thông tin khách hàng [5]

Dữ liệu world wide: Google tiếp nhận hơn 4 tỉ yêu cầu tìm kiếm mỗi ngày lưu

trữ hàng trăm Terabytes dữ liệu [5]

Dữ liệu giáo dục Việt Nam: Chỉ tính ở 2 bậc học là bậc Cao đẳng và bậc Đại

học số lượng sinh viên lên đến con số 2.208.100 sinh viên vào năm 2011 [18] Và hằng năm, số lượng sinh viên không ngừng gia tăng Sự gia tăng này dễ dàng nhận

thấy từ hình 2.1 và hình 2.2

Hình 2.1 Bảng số lượng sinh viên bậc Đại học và Cao đẳng Việt Nam giai

đoạn 2000 -2011

Trang 20

Hình 2.2 Biểu đồ số lượng sinh viên bậc Đại học và Cao đẳng Việt Nam giai

đoạn 2000 -2011

Với hơn 2 triệu sinh viên thì rõ ràng cơ sở dữ liệu chứa thông tin cá nhân cũng như điểm của sinh viên trong suốt quá trình học tập là không hề nhỏ Tất nhiên, xu hướng cơ sở dữ liệu để lưu trữ những thông tin của sinh viên ngày càng lớn theo thời gian là tất yếu Nhất là đối với cơ sở dữ liệu điểm được lưu trữ lại là vô cùng quý, nếu được khai phá sẽ hỗ trợ rất nhiều trong lĩnh vực giáo dục

Khi lưu trữ dữ lượng dữ liệu lớn như vậy thì chắc chắn rằng những dữ liệu đó bản thân nó phải mang những giá trị nhất định Nhưng theo thống kê thì chỉ khoảng từ 5% đến 10% của dữ liệu khổng lồ đó được phân tích, số dữ liệu còn lại

họ không biết phải làm gì với nó nhưng họ vẫn quyết định thu thập và lưu trữ cho

dù rất tốn kém Sở dĩ họ chấp nhận đánh đổi để làm điều này vì họ sợ bỏ qua dữ liệu quan trọng đến khi cần thì không có Đặc biệt trong thời đại bùng nổ công nghệ thông tin hiện nay thì người ta cần dùng nguồn dữ liệu khổng lồ đó để hỗ trợ cho việc ra quyết định trong kinh doanh, bán hàng,… Vì thế để tìm ra câu trả lời mang tính chất định tính từ kho dữ liệu khổng lồ đó thì cách khai thác và quản trị

dữ liệu truyền thống tỏ ra không hiệu quả Cũng vì lý do đó đã làm phát triển một khuynh hướng kỹ thuật mới đó là kỹ thuật phát hiện tri thức và khai phá dữ liệu

(KDD - Knowledge Discovery and Data Mining)

Quá trình phát hiện tri thức trong cơ sở dữ liệu là quá trình nhận biết các mẫu hay các mô hình dữ liệu trong cơ sở dữ liệu với các tính năng: hợp thức, mới, khả

ích và có thể hiểu được [7]

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

Trang 21

2 QUÁ TRÌNH PHÁT HIỆN TRI THỨC TỪ CƠ SỞ DỮ LIỆU

Quá trình phát hiện tri thức bao gồm các bước sau:

Làm sạch dữ liệu (Data cleaning): Quá trình loại bỏ dữ liệu nhiễu, dữ liệu

Chuyển đổi dữ liệu (Data transformation): Chuyển đổi dữ liệu về dạng có thể

khai phá trực tiếp được từ những dạng dữ liệu này

Khai phá dữ liệu (Data mining): Sử dụng các kỹ thuật, thuật toán khai phá để

tìm mẫu điển hình trong cơ sở dữ liệu, các thông tin có ích cho người dùng

Đánh giá mẫu tri thức (Pattern evaluation): Đánh giá độ hấp dẫn, độ lợi ích

của thông tin thu được

Trình diễn dữ liệu (Knowledge presentatoin): Trình bày kết quả tri thức thu

được dưới dạng hình ảnh, biểu đồ hay dạng nào đó mà người dùng có thể hiểu

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

Thông thường dữ liệu trong các cơ sở dữ liệu nhiều thuộc tính nhưng không thuần nhất, không đầy đủ, có nhiều lỗi và các giá trị đặc biệt Vì thu thập và tiền

xử lý dữ liệu là giai đoạn vô cùng quan trọng trong quá trình phát hiện tri thức

Trang 22

từ cơ sở dữ liệu Giai đoạn này chiếm từ 70% đến 80% giá thành của bài toán khai phá dữ liệu

Người ta chia giai đoạn thu thập và tiền xử lý dữ liệu thành các giai đoạn

nhỏ hơn: Chọn lọc dữ liệu, đây là bước chọn lọc dữ liệu có liên quan từ nhiều

nguồn dữ liệu khác nhau Những dữ liệu được chọn lọc phải chứa nhiều thông tin liên quan tới lĩnh vực cần thiết đã xác định trong giai đoạn xác định vấn đề

Làm giàu dữ liệu, là quá trình chuyển đổi tích hợp dữ liệu từ nhiều nguồn khác

nhau thành một kho thống nhất Các dạng dữ liệu khác nhau cũng được tính toán và quy đổi thành một dạng thống nhất, giúp cho quá trình phân tích được

dễ dàng Đôi khi phải xây dựng các thuộc tính mới từ các thuộc tính sẵn có Mã hóa dữ liệu, việc mã hóa dữ liệu là sử dụng các phương pháp chọn lọc, làm

sạch, làm giàu dữ liệu với dạng các hàm, tiện ích… Nhằm tự động hóa trong việc kết xuất, di chuyển dữ liệu Các hàm, chương trình tiện ích đó được sử

dụng khi muốn làm tươi dữ liệu để phục vụ cho việc khai thác Làm sạch dữ liệu, dữ liệu được thu thập từ nhiều nguồn khác nhau nên dẫn đến tình trạng dữ

liệu không đồng nhất Vì vậy, cần có phương pháp đưa những dữ liệu không đồng nhất ấy về cùng một dạng để phục vụ cho khai thác Nhiệm vụ làm sạch

dữ liệu bao gồm:

- Điều hòa dữ liệu: Là làm nhất quán dữ liệu không thống nhất của dữ liệu đã thu thập được từ nhiều nguồn khác nhau Phương pháp thường sử dụng là khử những dòng dữ liệu trùng lặp và thống nhất các ký hiệu Ví dụ trong cơ

sở dữ liệu bán hàng của một siêu thị thì trong quá trình cập nhật thông tin của khách hàng thì phát sinh những dòng dữ liệu của 1 khách hàng nhưng làm cho chúng ta lầm tưởng đó là dữ liệu của nhiều khách hàng khác nhau

- Xử lý dữ liệu khuyết: Trong một cơ sở dữ liệu thường có nhiều đến rất nhiều thuộc tính và hiện tượng khuyết một hay nhiều thuộc tính trong một hay nhiều dòng dữ liệu là điều chắc chắn sẽ gặp phải trong mọi cơ sở dữ liệu Phương pháp có thể áp dụng khắc phục trong trường hợp này là bỏ qua dòng

bị khuyết dữ liệu, điền dữ liệu bị khuyết bằng tay, điền giá trị trung bình của các thuộc tính cho những ô bị khuyết, dùng một hằng chung để điền cho những chỗ bị khuyết dữ liệu,…

- Xử lý dữ liệu nhiễu và các ngoại lệ: Dữ liệu bị nhiễu có thể là do ngẫu nhiên hay cũng có thể là có chứa giá trị bất thường Để làm sạch dữ liệu nhiễu người ta thường làm trơn nhiễu và dùng các giải thuật để phát hiện các ngoại

lệ gây ra nhiễu dữ liệu để xử lý

2.3 Khai thác dữ liệu

Sau khi đã có được dữ liệu từ giai đoạn “thu thập và tiền xử lý dữ liệu” sẽ tiến hành xác định bài toán khai thác dữ liệu, lựa chọn phương pháp khai thác phù hợp với dữ liệu hiện có và tách ra những tri thức cần thiết

Thường thì, bài toán khai thác dữ liệu có hai dạng: Các bài toán mang tính chất mô tả - đưa ra những tính chất chung nhất của dữ liệu và các bài toán khai thác dự báo – suy diễn trên dữ liệu Tùy theo yêu cầu của bài toán mà chọn phương pháp khai thác dữ liệu thích hợp

Trang 23

2.4 Minh họa và đánh giá tri thức

Tri thức khai thác được sẽ được minh họa dưới dạng báo cáo, hình ảnh, biểu đồ,… phục vụ cho nhiều mục đích khác nhau

Không phải các tri thức khai thác được đều tốt hay đều xấu nên việc đánh giá tri thức thu được là rất cần thiết Việc đánh giá này giúp tạo ra những quyết định chiến lược

2.5 Đưa kết quả vào thực tế

Kết quả của quá trình khai thác và đánh giá tri thức có thể được đưa vào ứng dụng trong nhiều lĩnh vực khác nhau Kết quả đó có thể là dự báo cũng có thể là mô tả nên chúng có thể được đưa vào các hệ thống ra quyết định hoặc hỗ trợ ra quyết định một cách tự động hóa

Quá trình phát hiện tri thức có thể được tiến hành theo các bước trên Ngoài ra cũng có thể được nâng cấp cải tiến, thay đổi cho phù hợp với tình hình thực tế

3 KHAI PHÁ DỮ LIỆU

3.1 Các quan niệm về khai phá dữ liệu

Khai phá dữ liệu là tập hợp các thuật toán nhằm chiết xuất những thông tin

có ích từ kho dữ liệu khổng lồ [7]

Khai phá dữ liệu giống như quá trình tìm ra và mô tả mẫu dữ liệu Dữ liệu như là một tập hợp của các vật hay sự kiện, còn đầu ra của quá trình khai phá

dữ liệu như là những dự báo của các vật hay sự kiện mới [7]

Vậy nhiệm vụ của khai phá dữ liệu và phát hiện tri thức là tìm ra các mẫu

mô hình dữ liệu hữu ích bị che khuất trong kho cơ sở dữ liệu khổng lồ

3.2 Nhiệm vụ của khai phá dữ liệu

Trong các kho dữ liệu lớn thì đòi hỏi việc thu thập, xử lý dữ liệu phát hiện tri thức phải được tự động hóa tuy nhiên giai đoạn cuối cùng là phân tích kết quả thu được luôn do con người đảm nhiệm

Sau đây là những nhiệm vụ cơ bản nhất của khai phá dữ liệu:

Phân cụm, phân loại, phân nhóm, phân lớp: Nhiệm vụ là trả lời cho câu hỏi

“Một mẫu dữ liệu mới thu thập sẽ thuộc về lớp nào?” Quá trình này được thực hiện một cách tự động

Khai phá luật kết hợp: Tìm ra các luật kết hợp có dạng XY Tức là tìm ra

mối quan hệ của các thuộc tính có trong tập X và các thuộc tính có trong tập Y Xem xét sự hỗ trợ giữa các thuộc tính với nhau

Lập mô hình dự báo: Có hai nhiệm vụ hoặc phân lớp 1 mẫu dữ liệu vào một

hay nhiều lớp đã được xác định trước, hoặc là sử dụng các trường trong cơ sở

dữ liệu để dự báo sự xuất hiện hay không xuất hiện các trường hợp khác

Phân tích các đối tượng ngoài cuộc: Đôi khi trong cơ sở dữ liệu xuất hiện

các đối tượng không thuộc mô hình dữ liệu đã định sẵn Theo một cách thông thường thì xem các đối tượng đó là dữ liệu nhiễu và chúng sẽ bị loại bỏ Tuy nhiên trong một số trường hợp thì dữ liệu nhiễu đó đem lại tri thức bất ngờ và

Trang 24

quý giá cho người sử dụng Sự phân tích các dữ liệu ngoài cuộc được gọi là khai phá các đối tượng ngoài cuộc Và đây là một số phương pháp phát hiện đối tượng ngoài cuộc: kiểm tra mang tính thống kê trên cơ sở phân phối dữ liệu hay

mô hình xác suất dữ liệu, dùng các độ đo khoảng cách để phát hiện các đối tượng ngoài cuộc (các đối tượng ngoài cuộc có khoảng cách khá lớn đến bất cứ cụm nào), kiểm tra đặc trưng của đối tượng ngoài cuộc so với đặc trưng của các cụm trong mô hình dữ liệu

Phân tích sự tiến hóa: Phân tích sự tiến hóa thực hiện việc mô tả và mô

hình hóa các quy luật hay khuynh hướng của những đối tượng mà ứng xử của chúng thay đổi theo thời gian [7]

3.3 Triển khai khai phá dữ liệu

Việc triển khai khai phá dữ liệu được thực hiện qua 5 bước:

Bước 1: Xác định mục tiêu cần khai phá

Bước 2: Chuẩn bị dữ liệu phục vụ cho việc khai phá (Thu thập, tiền xử lý,

chuyển đổi dữ liệu)

Bước 3: Khai phá dữ liệu (Chọn giải thuật thích hợp để khai phá dữ liệu)

Bước 4: Phân tích đánh giá kết quả thu được (Xem tri thức đó có gì thú vị hay

không?)

Bước 5: Tiêu hóa tri thức thu được (Đề ra kế hoạch khai thác các thông tin

mới)

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

Kỹ thuật khai phá dữ liệu được chia làm 2 nhóm chính

Bảng 2.1 Các nhóm kỹ thuật khai phá dữ liệu

Nhóm kỹ thuật khai phá dữ liệu

Nhiệm vụ Mô tả về tính chất hoặc các đặc tính chung

của dữ liệu trong cơ sở dữ liệu

Đưa ra các dự đoán dựa trên các suy diễn từ dữ liệu hiện thời

Các kỹ thuật

trong nhóm

Phân cụm (clustering), Tóm tắt (sumerization), Trực quan hóa (visualiztation), Phân tích sự phát triển và

độ lệch (evolution and deviation analyst), Luật kết hợp (assocition rules),…

Phân lớp (classification), Hồi quy

(regession)…

Trong đó có một số phương pháp thông dụng nhất là: phân cụm dữ liệu, phân lớp dữ liệu, phương pháp hồi quy và khai phá luật kết hợp

3.4.1 Phương pháp phân cụm dữ liệu

Nhóm các dữ liệu tương đồng về mặt thuộc tính của dữ liệu vào một cụm sao cho tính chất của những cụm khác nhau là khác nhau Phân cụm

là một ví dụ điển hình cho quá trình học mà không có thầy Phân cụm

Trang 25

không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện Phân cụm là quá trình học bằng quan sát (learning by observation) trong khi phân lớp là quá trình học bằng ví dụ (learning by example) Trong phương pháp phân cụm chúng ta không thể biết trước được kết quả thu được sẽ như thế nào

Phân cụm dữ liệu được dùng nhiều cho các ứng dụng phân đoạn thị trường, phân đoạn khách hàng, nhận dạng mẫu, phân loại trang web,…Ngoài ra, phân cụm còn được sử dụng trong giai đoạn tiền xử lý của các thuật toán khai phá dữ liệu khác

3.4.2 Phương pháp phân lớp dữ liệu

Phân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ liệu từ các mô hình xây dựng sẵn Vì thế quá trình phân lớp dữ liệu thường trải qua 2 bước:

Bước 1: Xây dựng mô hình dữ liệu dùng cho việc huấn luyện

(training dataset) Việc xây dựng được tiến hành như sau: các dữ liệu tương đồng với nhau về thuộc tính của chúng được gom lại chung 1 lớp và gán nhãn cho các lớp đó Các lớp phải được xây dựng trước khi xây dựng mô hình

Bước 2: Sử dụng mô hình để phân lớp dữ liệu Trước hết phải tính

độ chính xác của dữ liệu nếu độ chính xác này là chấp nhận được thì

dữ liệu được giữ lại để sử dụng trong việc dự đoán nhãn cho các mẫu tin trong tương lai

3.4.3 Phương pháp hồi quy

Nếu phương pháp phân lớp dữ liệu dự đoán trên dữ liệu rời rạc thì phương pháp hồi quy dự đoán trên dữ liệu liên tục

Hồi quy là một hàm học ánh xạ mục dữ liệu thành một biến dự đoán

có giá trị thực [7]

3.4.4 Phương pháp khai phá luật kết hợp

Mục tiêu của phương pháp này là tìm ra mối liên hệ giữa các thuộc tính trong cơ sở dữ liệu Mẫu tri thức đầu ra là luật kết hợp với độ hỗ trợ thông tin và độ tin cậy của luật Ví dụ: Khách hàng mua đường  mua sữa với độ hỗ trợ và độ tin cậy là 50%

Quá trình khai phá luật kết hợp được thực hiện qua 2 bước:

Bước 1: Tìm tất cả các tập phổ biến Tập phổ biến là tập thỏa độ hỗ

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

Như đã trình bày trong mục 2 của mục I chương này ta thấy rằng các bước

trong quá trình có sự tương tác lẫn nhau giữa người sử dụng hoặc cơ sở dữ liệu

Trang 26

tri thức, những mẫu đáng quan tâm cung cấp cho người dùng hoặc coi là một tri thức mới và được lưu trữ trong cơ sở dữ liệu tri thức

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

Kiến trúc của hệ thống khai phá dữ liệu có các thành phần sau:

Cơ sở dữ liệu, kho dữ liệu: Là một hay nhiều cơ sở dữ liệu, kho dữ liệu

Bên trong đã bao gồm các kỹ thuật làm sạch, tích hợp, lọc dữ liệu có thể thực hiện trên dữ liệu

Cơ sở dữ liệu hay kho dữ liệu phục vụ: Là kết quả dữ liệu có liên quan trên

cơ sở khai phá dữ liệu của người dùng

Cơ sở tri thức: Là nơi chứa các tri thức đã khai phá được

Mô tả khai phá dữ liệu: Bao gồm các modul thực hiện các chức năng mô tả

đặc điểm, kết hợp, phân lớp, phân cụm dữ liệu,…

Đánh giá mẫu: Sử dụng các độ đo và tương tác với modul khai phá dữ liệu

để tìm ra những mẫu tri thức nào là đáng quan tâm

Giao diện người dùng: Là nơi diễn ra sự tương tác giữa người dùng và hệ

thống khai phá dữ liệu Ở đây người dùng được cung cấp các chức năng truy vấn, tác vụ, tìm kiếm,…

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

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

Trang 27

3.7 Khó khăn trong khai phá dữ liệu

Dữ liệu lớn: Số lượng bảng ghi trong cơ sở dữ liệu có thể lên đến hàng triệu

nên kích thước rất lớn có thể lên đến Gigabytes

Kích thước lớn: Số lượng trường trong cơ sở dữ liệu tương đối nhiều Điều

này làm tăng không gian tìm kiếm Biện pháp được áp dụng trong trường hợp này là sử dụng các tri thức biết trước để làm giảm các biến không phù hợp trong

cơ sở dữ liệu nhằm thu nhỏ không gian tìm kiếm

Dữ liệu động: Sự thay đổi dữ liệu trong cơ sở dữ liệu là điều không tránh

khỏi Vì thế dữ liệu sẽ bị thay đổi theo thời gian nên ít nhiều ảnh hưởng đến tri thức khai phá được Vấn đề này được giải quyết bằng giải pháp nâng cấp mẫu

và coi sự thay đổi là cơ hội để khai thác bằng cách sử dụng nó để tìm kiếm các câu bị đổi

Các trường dữ liệu không phù hợp: Mục dữ liệu không phù hợp với trọng

tâm của khai thác khi đó ta nói dữ liệu đó không phù hợp

Các giá trị bị thiếu: Sự vắng hay có mặt của giá trị các thuộc tính dữ liệu

phù hợp có thể ảnh hưởng đến việc khai phá dữ liệu

Các trường dữ liệu bị thiếu: Các thuộc tính quan trọng có thể bị thiếu nên

không thể chuẩn bị cho quá trình khai phá được

Quá phù hợp: Những dữ liệu tốt nhất cho mô hình nào đó gây ra hiện tượng

chỉ phù hợp với dữ liệu đó còn cho kết quả kém với những dữ liệu lạ

Khả năng biểu đạt mẫu: Tri thức được biểu diễn sao cho càng dễ hiểu với

con người càng tốt

Sự tương tác với tri thức người sử dụng sẵn có: việc sử dụng lại các tri thức

của người sử dụng trong quá trình tìm tri thức là vô cùng cần thiết để cho con người có thể tương tác với quá trình khai phá nhằm sinh ra tri thức theo mong muốn của con người

II LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU

1 CÁC ĐỊNH NGHĨA VỀ LUẬT KẾT HỢP

1.1 Định nghĩa độ hỗ trợ

Định nghĩa 1: Độ hỗ trợ của tập hợp X có trong cơ sở dữ liệu D là tỉ số giữa

các giao tác T D có chứa tập X và tổng số bản ghi trong D (hay là phần trăm của các bản ghi trong D có chứa tập X), ký hiệu là support(X) hay supp(X)

( )

Định nghĩa 2: Độ hỗ trợ của một luật kết hợp có dạng XY là tỉ số giữa các

bản ghi chứa tập hợp so với tổng các bản ghi trong D, ký hiệu support(X

Y) hay supp(X Y)

( )

Trang 28

1.2 Định nghĩa độ tin cậy

Định nghĩa 3: Độ tin cậy của một luật kết hợp X Y là tỉ số giữa lượng các

bản ghi trong D có chứa với số bản ghi trong D có chứa tập hợp X Ký hiệu độ tin cậy của một luật là conf(r)

Ta có ( )

Nhận xét: Độ hỗ trợ và độ tin cậy có xác suất sau:

( ) ( ) ( ) ( ) ( ) ( )

1.3 Định nghĩa tập hợp và các tính chất của tập hợp

Định nghĩa 4: Tập hợp X được gọi là tập hợp thường xuyên (Frenquent

itemset) nếu có ( ) , với là ngưỡng độ hỗ trợ cho trước

Kí hiệu các tập thường xuyên này là FI

Tính chất 1: Giả sử A,B I là hai tập hợp với A B thì Supp(A) Supp(B) Như vậy những bản ghi nào chứa tập hợp B thì cũng chứa tập hợp A

Tính chất 2: Giả sử A, B là hai tập hợp với A,B I Nếu B là tập thường xuyên

và A B thì A cũng là tập thường xuyên Thật vậy, nếu B là tập hợp thường xuyên thì Supp(B) minsup, mọi tập hợp A

là con của tập hợp B đều là tập hợp thường xuyên trong cơ sở dữ liệu D vì Supp(A) Supp(B) (Theo tính chất 1)

Tính chất 3: Giả sử A,B là hai tập hợp mà A B và A là tập hợp không thường xuyên thì B cũng là tập hợp không thường xuyên

Định nghĩa 5: Một tập hợp X được gọi là tập đóng (closed) nếu không có tập

cha nào của X có cùng độ hỗ trợ với nó Tức là không tồn tại tập hợp X’ mà X’ X và t(X)=t(X’) (với t(X), t(X’) lần lượt là tập các giao tác chứa tập mục X

và X’) Kí hiệu của tập phổ biến đóng là FCI

Định nghĩa 6: Nếu X là tập phổ biến và không có tập cha nào của X là tập phổ

biến thì ta nói X là tập phổ biến lớn nhất (maximally frequent itemset) Kí hiệu tập phổ biến lớn nhất là MFI Dễ thấy MFI FCI FI

1.4 Định nghĩa luật kết hợp

Khai phá luật kết hợp là công việc tìm (phát hiện, khám phá) ra các luật kết hợp thỏa mãn ngưỡng độ hỗ trợ δ và độ tin cậy α cho trước Bài toán khai phá luật kết hợp dược chia thành 2 bài toán nhỏ hay còn gọi là 2 pha cần thực hiện để giải quyết bài toán:

Pha 1: Tìm tất cả các tập phổ biến (tìm FI) trong cơ sở dữ liệu (D)

Pha 2: Sử dụng các FI đã tìm ở pha 1 để sinh ra các luật tin cậy (interesting

rules) Ý tưởng chung của bài toán này là nếu gọi các tập ABCD và AB là các tập mục phổ biến thì chúng ta có thể xác định được luật ABCD với

độ tin cậy:

Trang 29

(  ) ( )

( )Nếu (  ) thì luật được giữ lại

2 MỘT SỐ HƯỚNG TIẾP CẬN TRONG KHAI PHÁ LUẬT KẾT HỢP

Lĩnh vực khai phá luật kết hợp đã hình thành và phát triển khá lâu Đến nay đã được phát triển theo nhiều hướng khác nhau Sau đây là một số hướng chính:

Luật kết hợp nhị phân (Binary association rule): Theo hướng này thì chỉ quan

tâm xem item có xuất hiện trong cơ sở dữ liệu hay không chứ không quan tâm đến tần suất xuất hiện của các item Thuật toán tiêu biểu cho khai phá dạng này là Apriori

Luật kết hợp có thuộc tính và thuộc tính hạn mục (Quantitative and categorial association rule): Trong thực tế thì cơ sở dữ liệu có thể chứa nhiều dạng dữ liệu

(nhị phân, số, mục,…) chứ không chỉ chứa dạng nhị phân hay nhất quán dạng nào

cả Vì vậy để có thể khai phá trên cơ sở dữ liệu dạng này thì các nhà nghiên cứu đề xuất một số phương pháp rời rạc hóa nhằm chuyển về dạng nhị phân đã biết

Luật kết hợp tiếp cận theo hướng tập thô (mining association rule 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 này

thì luật sẽ có dạng kéo theo Ví dụ: mua máy tính  mua các phần mềm hệ thống AND mua các phần mềm ứng dụng,…

Luật kết hợp mờ (fuzzy association rule): Không phải mọi trường hợp điều có

thể rời rạc hóa được nên các nhà nghiên cứu đã đưa ra luật kết hợp mờ nhằm khắc phục tình trạng khó rời rạc hóa và chuyển luật kết hợp về dạng gần gũi hơn

Luật kết hợp với thuộc tính được đánh trọng số (association rules with weighted items): Các thuộc tính của dữ liệu trong cơ sở dữ liệu thường mang tầm

quan trọng bằng nhau Vì vậy trong quá trình tìm kiếm luật người ta đánh trọng số của thuộc tính theo mức độ quan trọng của chúng Làm như thế có thể phát hiện được những luật “hiếm” (có độ hỗ trợ thấp nhưng mang nhiều ý nghĩa)

Khai thác luật kết hợp song song (parallel mining of association rule): Đối

với dữ liệu khổng lồ thì nhu cầu song song hóa và xử lý phân tán là cần thiết bởi vì làm như thế có thể cải thiện được tốc độ xử lý đáng kể

III TÌM SIÊU THAM SỐ (SEARCH HYPER PARAMETERS)

Việc tìm kiếm các siêu tham số, chúng ta thực hiện việc tìm kiếm này qua hai giai đoạn: tìm thô (Coarse Search) và tìm mịn (Granularity Search)

Bước 1: Tìm thô các giá trị tham số như ngưỡng độ hỗ trợ nhỏ nhất (minsup),

ngưỡng độ tin cậy nhỏ nhất (minconf), phạm vi lân cận (K) Do không gian tìm kiếm siêu tham số này khá lớn, nên việc tìm thô này chỉ tìm trên các đề xuất cơ sở dựa trên các thí nghiệm đã làm như sau:

minsupp {10% , 20% , 30% , 40%, 50%, 60%, 70%, 80%, 90%, 100%} minconf  {10% , 20% , 30% , 40%, 50%, 60%, 70%, 80%, 90%, 100%}

Trang 30

K = 5

Bước 2: Tìm mịn các giá trị tham số sau khi tìm được giá trị các tham số k,

minsupp, minconf tốt nhất Sau đó tìm lặp lại tìm lân cận của các giá trị tìm được

để tìm xem các giá trị lận cận của các tham số này có tốt hơn nữa hay không

Ví dụ như ta tìm được cặp minsupp – minconf tốt nhất là 50% - 30% Ta tiến

hành tìm mịn trên với minsupp (45% - 55%) và minconf (25% - 53%)

Quá trình này có thể lặp lại tùy thuộc vào tập dữ liệu chúng ta có được Trong

quá trình lặp thì k thay đổi cho phù hợp với khoảng tìm kiếm Ví dụ ở lần lặp thứ 2

ta tìm được minsupp  {25%, 30%, 35%}, khi đó k có thể là 2.5

Trang 31

CHƯƠNG 3: GIẢI THUẬT CHARM

I GIỚI THIỆU GIẢI THUẬT

Charm là thuật toán hiệu quả cho việc khai thác các tập thường xuyên đóng

Nó tìm ra những tập đóng bằng cách sử dụng kỹ thuật tìm kiếm trên không gian tìm kiếm là IT-Tree (Itemset-Tidset Search Tree) Nó sử dụng kỹ thuật tìm kiếm lai để bỏ qua một số mức trong cây trong quá trình tìm kiếm điều này mang lại hiệu quả cho thuật toán Tức là không cần phải duyệt qua tất cả các nút trong cây nhưng vẫn tìm ra các tập đóng một cách hiệu quả Ngoài ra charm còn sử dụng một kỹ thuật gọi là “diffsets” để làm giảm đáng kể bộ nhớ trong các tính toán trung gian Cuối cùng charm sử dụng một phương pháp tiếp cận dựa trên “hash-based” để loại bỏ sớm các tập không là tập đóng trong quá trình tính toán

Một số ý tưởng phát triển của charm:

Charm đồng thời khai thác cả không gian của tập phổ biến (itemset space) và không gian giao dịch (transaction space) trên cấu trúc IT-Tree

Nhờ sử dụng phương pháp tìm kiếm lai mà charm không cần duyệt qua tất cả các tập con nên charm xác định các tập thường xuyên đóng một cách nhanh chóng Charm sử dụng phương pháp tiếp cận dựa trên “hash-based” để loại bỏ sớm các tập không là tập đóng trong quá trình tính toán Charm cũng sử dụng cấu trúc định danh dọc gọi là “diffsets” để tính toán tần suất các mục nhanh chóng Diffsets theo dõi sự khác nhau về các giao dịch (Tids) của mẫu ứng cử viên từ mẫu tiền tố của nó Diffsets giúp cắt giảm mạnh nhu cầu bộ nhớ trong quá trình lưu kết quả của các tính toán trung gian Điều này làm cho công việc tìm các tập thường xuyên nằm hoàn toàn trong bộ nhớ chính mà không làm tràn bộ nhớ ngay cả đối với cơ

sở dữ liệu lớn Nó cũng phù hợp cho dữ liệu dày (dense datasets) cũng như thưa

thớt (sparse datasets)

II TÌM TẬP MỤC THƯỜNG XUYÊN

Các ký hiệu dùng trong thuật toán được trình bày trong bảng 3.1

Bảng 3.1 Các ký hiệu dùng trong thuật toán tìm tập mục thường xuyên

Ký hiệu Diễn giải

I Là tập hợp chứa các mục (items)

D Cơ sở dữ liệu giao tác

Tid Là định danh của mỗi giao tác trong CSDL và tid này là duy nhất

Trang 32

1 CÁC KHÁI NIỆM LIÊN QUAN

1.1 Cấu trúc IT-Tree (Itemset – Tidset Search Tree) và các lớp tương đương

Cho I là tập các item và X I Ta định nghĩa một hàm P(X, k)=X [1: k] gồm

k phần tử đầu của X và quan hệ tương đương dựa vào tiền tố như sau: ∀X , Y

I, X Y ⇔ p ( X , k ) = p (Y , k ) Nghĩa là hai itemset có cùng một lớp

tương đương khi và chỉ khi chúng có chung k phần tử đầu phổ biến

Mỗi nút trên IT-tree gồm hai thành phần: Itemset X và Tidset t(X) : là tập

các giao dịch có chứa X Cặp X x t(X) được gọi là IT-Pair

trong đó P là nút cha và mỗi l i là một mục dữ liệu đơn, đại diện cho nút

Plit(Pli) Mỗi lớp thành viên đại diện cho một con của nút cha Sức mạnh của lớp tương đương là nó chia không gian tìm kiếm ban đầu thành các vấn đề nhỏ độc lập Đối với mỗi nút gốc con của nút X, có thể xem nó như một vấn đề mới hoàn toàn, mỗi nút có thể sinh ra các mẫu dưới nó

1.2 Minh họa việc xây dựng IT-Tree

Bảng 3.2 Cơ sở dữ liệu minh họa

Trang 34

Ta được IT-Tree gồm 2 lớp:

Hình 3.2 Lớp thứ 2 của IT-Tree

Lớp 3 là các nút con có itemset gồm 3 mục, được xây dựng bằng sự tổ hợp các itemset của các nút lớp thứ 2 (Chỉ tổ hợp các nút anh em với nhau) với Tidset được tính dựa trên Tidset của các nút lớp thứ 2 Và nút này cũng phải thỏa minsup:

ACT x t(ACT) = AC AT x t(AC) t(AT) = ACT x 135

Trang 35

Lớp 4 là các nút con có itemset gồm 4 mục, được xây dựng bằng sự tổ hợp các itemset của các nút lớp thứ 3 (Chỉ tổ hợp các nút anh em với nhau) với Tidset được tính dựa trên Tidset của các nút lớp thứ 3 Và nút này cũng phải thỏa minsup:

ACTW x t(ACTW) = ACT ACW x t(ACT) t(ACW) = CTW x 135

IT-2 TÌM TẬP PHỔ BIẾN ĐÓNG TRÊN IT-TREE

2.1 Cách Charm tìm tập phổ biến đóng trên IT-Tree

Hàm Create_IT_Tree – Xây dựng cây IT-Tree

Input: Tập Gen - [ Gen ] = { i I | sup (i) ≥ minSup }

Output: IT-Tree cũng như tập phổ biến

1 function Create_IT_Tree([Gen])

2 {

3 Enumerate-Frequent([Gen]);

4 }

Trang 36

Nếu lớp k không rỗng thì gọi đệ quy để tính lớp k+1

Nhận xét:

Thuật toán dựa vào phần giao giữa các Tidset để tính nhanh độ phổ biến nên chỉ cần quét CSDL một lần, tuy nhiên lại tốn không gian để lưu trữ Tidset Khi số tập phổ biến lớn thì thời gian khai thác luật và không gian lưu trữ tid sẽ

lớn Chúng ta có thể áp dụng khái niệm Diffset để tính nhanh độ phổ biến nhằm

làm giảm không gian lưu trữ Tidset

Khái niệm Diffset:

Diffset của X so với Y, ký hiệu d (X, Y) được định nghĩa:

Trang 37

Hình 3.5 Diffset P(tiền tố) và các lớp thành viên X, Y

Từ các tính chất 1, 2 và 3 của diffset ta có thể thay thế tidset bởi diffset trong quá trình tạo IT-Tree Quá trình xây dựng IT-Tree dùng diffset như hình bên dưới:

Hình 3.6 IT-Tree dùng Diffset với minsup là 50%

Trang 39

Ở bước thêm tập phổ biến vào IT-Tree thì Charm sử dụng hàm

CHARM_PROPERTY để kiểm tra xem tập phổ biến đó có khả năng là tập

đóng hay không dựa vào các nhận xét về IT-Pair ở trên Tiếp theo sử dụng hàm

SUBSUMPTION_CHECK để kiểm tra tính đóng của tập X dựa vào một bảng

băm (Hash_table) Mỗi tập đóng X được thêm vào bảng băm với key là

h(X)=∑ ( ) vậy key sẽ là tổng các tid có X xuất hiện trong giao tác

Ngày đăng: 24/06/2019, 16:29

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2] Lê Hoài Bắc, Võ Đình Bảy. 2008. Ứng dụng dàn tập đóng trong khai thác luật thiết yếu nhất. Science & Technology Development, Vol 11, No.01 – 2008.http://www.vnulib.edu.vn:8000/dspace/bitstream/123456789/3031/1/sedev0108-04.pdf Link
[3] Lê Hoài Bắc, Võ Đình Bảy. 2009. Ứng dụng dàn tập đóng trong khai thác luật thiết yếu nhất. Tạp chí phát triển KH&CN, tập 12, số 11-2009.http://www.vjol.info/index.php/JSTD/article/viewFile/2700/2689 Link
[4] Mohammed J, Zaki and Ching-Jui Hsiao.CHARM: An Efficient Algorithm for Closed Itemset Mining.https://www.siam.org/proceedings/datamining/2002/dm02-27ZakiM.pdf [5] Đỗ Thanh Nghị. 2008. Slide bài giảng Từ khám phá tri thức đến khai mỏ dữliệu. Trường đại học Cần Thơ Link
[8] Slide bài giảng Mining Association Rules. http://www.cs.purdue.edu/homes/aref/cs-690d-presentations/MiningAssociationRules.ppt Link
[10] Danh sách cảnh cáo học vụ năm học 2011-2012. https://www.agu.edu.vn/sites/feba.agu.edu.vn/files/u5/So 18 DS SV canh cao hoc vu.pdf Link
[11] Danh sách đình chỉ học tập năm học 2011-2012. https://www.agu.edu.vn/sites/feba.agu.edu.vn/files/u5/QD 36 dinh chi hoc tap SV.pdf Link
[12] FP-Tree. http://www.cis.hut.fi/Opinnot/T-61.6020/2008/fptree.pdf [13] Khai thác tập phổ biến theo cấu trúc IT-tree. http://123.uhm.vn/71368 [14] Luật kết hợp.http://www.nsl.hcmus.edu.vn/greenstone/collect/thesiskh/archives/HASH5a63.dir/chuong3.pdf Link
[15] Phá dữ liệu ứng dụng trong đào tạo. http://thamkhao.vn/tai-lieu/9666-luan-vanpha-du-lieu-ung-dung-trong-dao-tao Link
[16] SPMF A Sequential Pattern Mining Framework. http://www.philippe-fournier- viger.com/spmf/index.php?link=algorithms.php[17] Tập phổ biến.http://www.nsl.hcmus.edu.vn/greenstone/collect/thesiskh/archives/HASH5a63.dir/chuong2.pdf Link
[6] Huỳnh Lý Thanh Nhàn. 2008. Khóa luận cử nhân Tìm hiểu khai phá dữ liệu bằng luật kết hợp ứng dụng vào chương trình dự đoán kết quả học tập của sinh viên. Khoa Kỹ thuật - Công Nghệ - Môi trường, Trường Đại học An Giang Khác
[7] Lê Thu Hà. 2009. Luận văn thạc sĩ Phương pháp luật kết hợp và ứng dụng. Khoa Công nghệ thông tin, Trường Đại học Thái Nguyên Khác
[9] Xuan-Hiep HUYNH. 2006. Interestingness measures for association rules in a kdd process: postprocessing of rules with arqat tool. Chương 3,Trang 22-30 Khác

TỪ KHÓA LIÊN QUAN

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