78
BỘ GIÁO DỤC VÀO ĐÀO TẠO TRƯỜNG ĐẠI HỌC QUỐC TẾ HỒNG BÀNG NGUYỄN ĐẶNG THẾ VINH ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ CHO HỌC SINH THPT LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH TP. HỒ CHÍ MINH - 2014

ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

Embed Size (px)

Citation preview

Page 1: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

BỘ GIÁO DỤC VÀO ĐÀO TẠO

TRƯỜNG ĐẠI HỌC QUỐC TẾ HỒNG BÀNG

NGUYỄN ĐẶNG THẾ VINH

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

CHỌN NGÀNH NGHỀ CHO HỌC SINH THPT

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

TP. HỒ CHÍ MINH - 2014

Page 2: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

BỘ GIÁO DỤC VÀO ĐÀO TẠO

TRƯỜNG ĐẠI HỌC QUỐC TẾ HỒNG BÀNG

NGUYỄN ĐẶNG THẾ VINH

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

CHỌN NGÀNH NGHỀ CHO HỌC SINH THPT

CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH

MÃ SỐ: 60.48.01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

NGƯỜI HƯỚNG DẪN KHOA HỌC

TS. VÕ ĐÌNH BẢY

TP. HỒ CHÍ MINH - NĂM 2014

Page 3: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

CHUẨN Y CỦA HỘI ĐỒNG BẢO VỆ LUẬN VĂN

Luận văn tựa đề: “Ứng dụng khai phá dữ liệu chọn ngành nghề cho học sinh

THPT” công trình được “Nguyễn Đặng Thế Vinh” thực hiện và nộp nhằm thỏa

một phần yêu cầu tốt nghiệp thạc sĩ chuyên ngành Khoa Học Máy Tính.

Chủ tịch Hội đồng Giảng viên hướng dẫn

………………………….

………………………….

TS. Bùi Văn Minh TS. Võ Đình Bảy

(Trưởng ngành Khoa học máy tính, (Giám đốc Trung tâm Tin học,

Trường ĐH Quốc tế Hồng Bàng) Trường ĐH Tôn Đức Thắng)

Ngày… tháng … năm 2014 Ngày… tháng … năm 2014

Ngày bảo vệ luận văn, Tp.HCM, Ngày 11 tháng 5 năm 2014

Viện Đào Tạo Sau Đại Học

Trường Đại học Quốc tế Hồng Bàng

……………………..

Page 4: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

i

LÝ LỊCH CÁ NHÂN

- Họ tên: Nguyễn Đặng Thế Vinh

- Ngày sinh: 15/10/1982

- Nơi sinh: Ninh Thuận

- Tốt nghiệp THPT tại trường Nguyễn Du, năm 2000

- Quá trình công tác:

Thời gian Nơi công tác Chức vụ

2003-2004 Công ty CP máy tính Scitec P.Trưởng phòng kỹ thuật

2005-2009 Trường Cao đẳng GTVT 3 Quản lý giáo vụ và giảng dạy tại trung

tâm FCM

2010-2012 Trường Cao đẳng Viễn

Đông

Trưởng Phòng Đào tạo, Phó Giám đốc

Trung tâm Tin học

2012-nay Trường Cao đẳng Viễn

Đông

Phó Giám đốc Trung tâm Tin học,

giảng viên khoa CNTT

- Địa chỉ liên lạc: 58 Tổ 8, Ấp 1 Liên ấp 1-2-3, Vĩnh Lộc A, Bình Chánh, TP.HCM

- Điện thoại: 098.901.2.901

- Email: [email protected]

Page 5: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

ii

LỜI CAM ĐOAN

Tôi cam đoan rằng luận văn này: “Ứng dụng khai phá dữ liệu chọn ngành nghề

cho học sinh THPT” là bài nghiên cứu của chính 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 rằng toàn phần hay những phần nhỏ của luận văn này chưa từng được công bố

hay được sử dụng để nhận bằng cấp ở những nơi khác.

Không có sản phẩm/ nghiên cứu nào của người khác được sử dụng trong luận văn

này mà không được trích dẫn theo đúng quy định.

TP.HCM, ngày 10 tháng 04 năm 2014

Tác giả luận văn

(Chữ ký)

Nguyễn Đặng Thế Vinh

Page 6: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

iii

LỜI CẢM ƠN

Lời đầu tôi xin chân thành cảm ơn TS. Võ Đình Bảy đã tận tình hướng dẫn, chỉ

bảo tôi trong suốt thời gian thực hiện luận văn.

Tôi xin bày tỏ lòng biết ơn đến các thầy cô trong Viện Đào tạo Sau Đại học

trường Đại học Quốc tế Hồng Bàng đã cung cấp những kiến thức quý báu cho tôi

trong suốt quá trình học tập và nghiên cứu tại trường.

Tôi cũng xin gởi lời cảm ơn đến gia đình, bạn bè và những người thân luôn quan

tâm và giúp đỡ tôi trong suốt thời gian học tập và làm luận văn.

Do thời gian và kiến thức có hạn nên luận văn chắc không tránh khỏi những

thiếu sót nhất định. Tôi rất mong nhận được sự góp ý quý báu của thầy cô.

Page 7: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

iv

TÓM TẮT

Phân lớp dữ liệu là một trong những hướng nghiên cứu chính của KPDL. Công

nghệ này có nhiều ứng dụng trong lĩnh vực thương mại, ngân hàng, y tế, giáo dục, …

Trong các mô hình phân lớp đã được đề xuất, cây quyết định được coi là một

công cụ mạnh, phổ biến và đặc biệt thích hợp với các ứng dụng KPDL.

Qua tìm hiểu những chức năng của KPDL, luận văn tập trung vào nghiên cứu

các kỹ thuật phân lớp bằng cây quyết định. Hiểu được các thuật toán hiệu quả gần

đây, từ đó nắm được những điểm chính cần quan tâm giải quyết trong mỗi kỹ thuật

khai phá tri thức trên CSDL khảo sát lựa chọn ngành học.

Trong số các thuật toán thường dùng cho bài toán phân lớp, thuật toán C4.5 có

độ chính xác khá cao, chạy nhanh và dễ hiểu đối với người dùng, nhưng nếu tập dữ

liệu có nhiều thuộc tính thì cây quyết định thu được cũng sẽ khó hiểu; thuật toán

Naïve Bayes thiếu chính xác đối với các thuộc tính phụ thuộc lẫn nhau và khó hiểu.

Khi áp dụng kết hợp các biện pháp tiền xử lý lấy mẫu dư đối với lớp thiểu số và lấy

mẫu thiếu đối với lớp đa số, kết quả phân lớp sẽ tốt hơn, nhưng việc tiền xử lý này

đòi hỏi phải có kiến thức sâu, không phù hợp với người dùng không chuyên; thuật

toán Neural Network có độ chính xác cao nhưng mô hình khó hiểu đối với người

dùng và thời gian chạy thường lớn.

Luận văn sử dụng thuật toán ID3, cho ra mô hình phân lớp là một tập luật dưới

dạng cây rất đơn giản và dễ hiểu, có độ chính xác khá cao và thời gian chạy chấp

nhận được. Thuật toán được xây dựng trên nền website, thuận tiện cho người sử dụng

ở bất cứ nơi đâu có kết nối internet.

Page 8: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

v

ABSTRACT

Classification is one of the main research directions of data mining. This

technology has many applications in the fields of commerce, banking, health,

education, etc.

In the classification model has been proposed, decision trees are considered

powerful tool, common and suitable particularly for data mining applications.

By studying the basic functions of data mining, thesis focused on the research

techniques by decision tree classifier. Understand the recent efficient algorithms,

which understand the main points of interest in each technique solving exploration

database knowledge on the education.

Among the mostly used algorithms for the classification task, C4.5 can provide

decision trees which be easy to interpret, yet their interpretability may diminish the

more they become complex; Naïve Bayes networks are both inaccuracy for

interdependence attributes and difficult to understand. When we combine

oversampling the rare classes and undersampling the majority ones, classification

performance will be better, but this preprocessing technique requires thorough

knowledge, not suitable to non-professional users; Neural Networks have high

classification accuracy but cannot produce easy to understand classification models

for users and its running time is usually long.

This thesis using ID3 algorithm whose resulting classification models are set of

classification rules in the form of trees which are very simple and easy to understand,

with pretty high accuracy and acceptable run time. The algorithm is built on the web,

convenient for user in anywhere with an internet connection.

Page 9: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

vi

MỤC LỤC

LỜI CAM ĐOAN ...................................................................................................... ii

LỜI CẢM ƠN ........................................................................................................... iii

TÓM TẮT ................................................................................................................. iv

ABSTRACT ................................................................................................................ v

MỤC LỤC ................................................................................................................. vi

DANH MỤC HÌNH VẼ ............................................................................................ ix

DANH MỤC BẢNG ................................................................................................... x

DANH MỤC TỪ VIẾT TẮT .................................................................................... xi

CHƯƠNG 1: TỔNG QUAN ....................................................................................... 1

1.1. Lý do chọn luận văn ...................................................................................... 1

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

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

1.3.1. Đối tượng nghiên cứu .......................................................................... 2

1.3.2. Phạm vi nghiên cứu ............................................................................. 2

1.4. Nhiệm vụ nghiên cứu .................................................................................... 3

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

1.6. Ý nghĩa của luận văn ..................................................................................... 3

1.6.1. Ý nghĩa khoa học ................................................................................. 3

1.6.2. Ý nghĩa thực tiễn ................................................................................. 3

1.7. Cấu trúc luận văn ........................................................................................... 4

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

2.1. Tổng quan về khai phá dữ liệu ...................................................................... 5

2.1.1. Khai phá dữ liệu là gì?......................................................................... 5

2.1.2. Quá trình KPDL .................................................................................. 5

Page 10: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

vii

2.2. Phân lớp trong KPDL .................................................................................... 7

2.2.1. Phân lớp dữ liệu ................................................................................... 7

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

2.2.3. Phân lớp dữ liệu bằng giải thuật học ILA ......................................... 10

2.2.4. Phân lớp dữ liệu bằng mạng Naïve Bayes......................................... 11

2.2.5. Phân lớp dữ liệu bằng Neural Network ............................................. 12

2.3. KPDL sử dụng luật kết hợp ......................................................................... 13

2.4. Kỹ thuật KPDL sử dụng cây quyết định ..................................................... 15

2.4.1. Giới thiệu kỹ thuật KPDL sử dụng cây quyết định ........................... 15

2.4.2. Các vấn đề trong KPDL sử dụng cây quyết định .............................. 15

2.4.3. Xây dựng cây quyết định ................................................................... 19

2.4.4. Thuật toán sử dụng xây dựng cây quyết định ................................... 20

2.4.5. Cắt tỉa cây quyết định ........................................................................ 26

2.4.6. Đánh giá độ chính xác của mô hình phân lớp ................................... 28

2.4.7. Các công trình nghiên cứu trước đây liên quan đến luận văn ........... 29

CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG ................................................................ 30

3.1. Giới thiệu bài toán ........................................................................................... 30

3.2. Mô hình cấu trúc hệ thống .............................................................................. 30

3.2.1. Mô tả đầu vào/ đầu ra ...................................................................................... 30

3.2.2. Phương pháp xây dựng hệ thống ..................................................................... 31

3.3. Phân tích và thiết kế hệ thống ......................................................................... 31

3.3.1. Thiết kế CSDL ............................................................................................. 31

3.3.2. Xử lý và huấn luyện dữ liệu ........................................................................ 40

3.3.3. Xây dựng và thiết kế giao diện của chương trình ........................................ 41

CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ ..................................................... 50

4.1. Dữ liệu thực nghiệm ....................................................................................... 50

Page 11: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

viii

4.2. Môi trường thực nghiệm ................................................................................. 51

4.3. Đánh giá độ chính xác của cây quyết định ..................................................... 51

4.4. Phân tích, so sánh kết quả và nhận xét............................................................ 52

CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .......................................... 57

5.1. Kết quả đạt được từ nghiên cứu ...................................................................... 57

5.2. Đóng góp luận văn .......................................................................................... 57

5.3. Hạn chế ........................................................................................................... 57

5.4. Hướng phát triển luận văn............................................................................... 58

KẾ HOẠCH NGHIÊN CỨU .................................................................................... 59

TÀI LIỆU THAM KHẢO ......................................................................................... 60

PHỤ LỤC .................................................................................................................. 63

A. Bộ công cụ trắc nghiệm định hướng nghề nghiệp của John Holland ............... 63

B. Thông tin về ngành học, trường đào tạo, bậc học, khối thi, điểm chuẩn. ......... 64

Page 12: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

ix

DANH MỤC HÌNH VẼ

Hình 2.1: Quá trình KPDL [6] .................................................................................... 5

Hình 2.2 (a): Bước học/ huấn luyện trong quá trình phân lớp hai bước [7] ............... 7

Hình 2.2 (b): Bước phân lớp trong quá trình phân lớp hai bước [7] ........................... 7

Hình 2.3: Một ví dụ về cây quyết định [7] ................................................................ 10

Hình 2.4: Mô hình ứng dụng luật .............................................................................. 14

Hình 2.5: k-fold cross –validation [3] ....................................................................... 28

Hình 3.1: Mô hình cấu trúc hệ thống tư vấn chọn ngành học ................................... 30

Hình 3.2: Giao diện chương trình ............................................................................. 41

Hình 3.3: Giao diện Phiếu đăng ký tài khoản sử dụng ............................................. 41

Hình 3.4: Giao diện Phiếu khảo sát thông tin về sở thích, tích cách ........................ 44

Hình 3.5: Giao diện kết quả thực hiện tính tổng điểm từng nhóm sở thích .............. 45

Hình 3.6: Giao diện kết quả thực hiện tính tổng điểm từng nhóm sở thích (thông tin

đăng ký ban đầu khác với kết quả thực hiện khảo sát) ............................................. 46

Hình 3.7: Giao diện kết quả ngành học của 2 nhóm có điểm số cao nhất ................ 47

Hình 3.8: Giao diện kết quả tư vấn chọn ngành học của chương trình ..................... 48

Hình 3.9: Kết quả trường ĐH, CĐ có đào tạo ngành học được tư vấn ..................... 49

Hình 4.1: Bảng phân chia dữ liệu test 10-fold cross – validation ............................. 51

Hình 4.2: Chương trình mô phỏng chọn ngành, trường của ĐHQG Tp.HCM ......... 53

Hình 4.3: Kết quả tư vấn chọn ngành của luận văn .................................................. 54

Page 13: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

x

DANH MỤC BẢNG

Bảng 3.1: Bảng thông tin các trường ĐH, CĐ .......................................................... 31

Bảng 3.2: Bảng lưu các ngành học của các trường ĐH, CĐ .................................... 32

Bảng 3.3: Bảng lưu điểm trung bình ......................................................................... 32

Bảng 3.4: Bảng lưu 6 nhóm sở thích ......................................................................... 33

Bảng 3.5: Bảng Mã ngành thuộc nhóm ngành .......................................................... 33

Bảng 3.6: Bảng lưu kết quả khảo sát sinh viên ......................................................... 33

Bảng 3.7: Bảng khối thi ............................................................................................ 34

Bảng 3.8: Bảng Ngành học ....................................................................................... 34

Bảng 3.9: Bảng Nhóm ngành .................................................................................... 34

Bảng 3.10: Bảng chứa thông tin tỉnh ........................................................................ 35

Bảng 3.11: Bảng câu hỏi trắc nghiệm ....................................................................... 35

Bảng 3.12: Bảng thông tin khảo sát về chọn ngành học của sinh viên ..................... 36

Bảng 3.13: Bảng chi tiết thông tin khảo sát về chọn ngành học của sinh viên ......... 37

Bảng 3.14: Bảng thông tin phiếu khảo sát ................................................................ 38

Bảng 3.15: Bảng thông tin trường THPT .................................................................. 39

Bảng 4.1: Số liệu thực hiện khảo sát sinh viên ......................................................... 50

Bảng 4.2: Số liệu chi tiết từng ngành ........................................................................ 51

Bảng 4.3: Kết quả đánh giá 10-fold cross - validation.............................................. 52

Bảng 4.4: Kết quả chọn ngành, trường của ĐHQG Tp.HCM ................................... 54

Bảng 4.5: Thời gian thực hiện tư vấn chọn ngành .................................................... 54

Bảng 4.6: Bảng so sánh kết quả ................................................................................ 55

Page 14: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

xi

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

KPDL Khai phá dữ liệu

THPT Trung học phổ thông

NB Naïve Bayes

NN Neural Network

CLS Concept Learning System

CSDL Cơ sở dữ liệu

ĐH Đại học

CĐ Cao đẳng

TCCN Trung cấp chuyên nghiệp

ĐTB Điểm trung bình

HSSV Học sinh sinh viên

SV Sinh viên

QĐ Quyết định

Page 15: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

1

CHƯƠNG 1: TỔNG QUAN

1.1. Lý do chọn luận văn

Mặc dù chưa có số liệu thống kê cụ thể, nhưng có thể thấy rằng hầu hết học sinh

sau khi hoàn tất chương trình lớp 12 đều tiếp tục lựa chọn cho mình những trường

ĐH, CĐ, TCCN. Thông qua việc chọn trường, chọn ngành nghề sẽ giúp các em có

được kiến thức, bằng cấp, kỹ năng làm việc để đáp ứng nhu cầu lao động của xã hội

sau khi các em tốt nghiệp. Việc chọn đúng ngành nghề giúp các em định hướng đi

phù hợp với khả năng của bản thân mình và tránh khỏi những lựa chọn vội vàng để

rồi phải bỏ lỡ rất nhiều cơ hội mà đáng ra nếu chọn và định hướng sớm và đúng các

em sẽ thành công. Do rất nhiều yếu tố khách quan, chủ quan khác và đa phần các em

ở các tỉnh thành, việc tiếp cận các thông tin về chọn ngành nghề cũng hạn chế và

thiếu thông tin để lựa chọn và định hướng cho mình.

Việc chọn đúng ngành học trong bối cảnh kinh tế, xã hội hiện nay nhằm tránh

việc có nhiều cá nhân lựa chọn sai nghề sẽ dẫn tới giảm sút chất lượng đào tạo, gây

lãng phí cho công tác đào tạo và đào tạo lại. Chất lượng nguồn nhân lực sau đào tạo

không đảm bảo dẫn tới năng suất lao động không cao, nảy sinh nhiều xáo trộn cho

hoạt động của các tổ chức, doanh nghiệp bởi các hiện tượng như: bỏ nghề, chuyển

nghề, … Các doanh nghiệp mất thêm chi phí đào tạo và đào tạo lại cho đội ngũ của

mình.

Học tập là một quá trình dài và khó khăn, đòi hỏi sinh viên phải đầu tư nhiều

công sức, tiền bạc của cá nhân cũng như gia đình, nếu thất bại trong việc chọn ngành

nghề sẽ dẫn đến những tổn thất lớn về cả tinh thần lẫn vật chất cho sinh viên và gia

đình họ. Việc định hướng chọn đúng ngành nghề sẽ giúp các em tránh khỏi những

vấn đề trên.

Vì vậy, công tác hướng nghiệp chọn ngành nghề cho học sinh THPT là điều hết

sức cần thiết.

Trước những thực tế đó, tôi chọn luận văn “Ứng dụng khai phá dữ liệu chọn

ngành nghề cho học sinh THPT”. Luận văn thực hiện việc KPDL từ việc khảo sát

chọn ngành học của sinh viên các trường ĐH, CĐ để dự đoán ngành học cho học sinh

THPT. Dựa vào kết quả dự đoán đó sẽ giúp học sinh lựa chọn cho mình một ngành

học phù hợp với điều kiện và năng lực của bản thân để đạt được kết quả tốt nhất.

Page 16: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

2

1.2. Mục tiêu nghiên cứu

- Tìm hiểu các kỹ thuật KPDL, ứng dụng các kỹ thuật KPDL trong phân tích

số liệu, xây dựng các tập luật chọn ngành học dựa vào kết quả khảo sát thực

tế sinh viên.

- Xây dựng ứng dụng hỗ trợ học sinh các trường THPT trên địa bàn tỉnh Ninh

Thuận có những lựa chọn về ngành học phù hợp với bản thân và hỗ trợ các

cán bộ chuyên trách tuyển sinh của các trường THPT trên địa bàn tỉnh Ninh

Thuận nhận định và đề ra những biện pháp phù hợp nhằm tư vấn thêm cho

các em trong việc xác định nghề nghiệp cho bản thân.

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

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

- Các kỹ thuật KPDL.

- Dữ liệu khảo sát kết quả chọn ngành học.

- Hệ thống tư vấn.

1.3.2. Phạm vi nghiên cứu

- Các phương pháp phân lớp. Ứng dụng các hệ hỗ trợ quyết định vào bài toán.

- Dữ liệu khảo sát thực tế việc chọn ngành học của sinh viên thông qua bảng

câu hỏi trắc nghiệm chọn ngành nghề của Tiến sỹ Tâm lý học John Holland,

nhằm phát hiện ra các đặc điểm chung của HSSV trong việc lựa chọn ngành

nghề học tập tại một số trường Đại học và cao đẳng tại TP.HCM tập trung

vào 11 ngành học như: Quản trị kinh doanh, Ngôn ngữ Anh, Sư phạm Toán

học, Giáo dục tiểu học, Công nghệ kỹ thuật công trình xây dựng, Quản lý

công nghiệp, Việt Nam học, Công nghệ thông tin, Kế toán, Tài chính Ngân

hàng, Khoa học thư viện.

- Xây dựng ứng dụng dự đoán ngành học để hỗ trợ tư vấn chọn ngành học

cho học sinh các trường THPT tại tỉnh Ninh Thuận.

Page 17: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

3

1.4. Nhiệm vụ nghiên cứu

- Nghiên cứu lý thuyết về KPDL, cụ thể là các kỹ thuật phân lớp và cây quyết

định.

- Xác định bài toán cụ thể là xây dựng công cụ lựa chọn ngành học và chuẩn

bị nguồn dữ liệu để xây dựng chương trình.

- Xây dựng mô hình dự đoán ngành học của sinh viên theo các kỹ thuật khác

nhau như cây quyết định, luật kết hợp và kiểm tra các mô hình.

- Xây dựng chương trình ứng dụng mô hình được lựa chọn để dự đoán ngành

học của học sinh dựa vào các thông tin đầu vào, từ đó thực hiện tư vấn chọn

ngành học cho học sinh nhằm đạt được kết quả tốt nhất.

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

- Phương pháp nghiên cứu lý thuyết: Tìm hiểu và lựa chọn phương pháp KPDL

thích hợp.

- Phương pháp nghiên cứu thu thập thông tin, phân tích số liệu: Thu thập thống

kê số liệu từ phiếu khảo sát sinh viên (trực tiếp, paper, website), phân tích

nghiên cứu các tài liệu, ứng dụng và tham khảo ý kiến của các chuyên gia

liên quan đến công tác hướng nghiệp cho học sinh để có được các kinh

nghiệm từ thực tiễn.

- Phương pháp nghiên cứu thực nghiệm: Phân tích thiết kế hệ thống, triển khai

xây dựng ứng dụng.

1.6. Ý nghĩa của luận văn

1.6.1. Ý nghĩa khoa học

Áp dụng các thuật toán KPDL trên dữ liệu khảo sát lựa chọn ngành học. (Dữ

liệu được thu thập từ các trường ĐH, CĐ tại TP.HCM).

1.6.2. Ý nghĩa thực tiễn

Luận văn ứng dụng KPDL chọn ngành nghề cho học sinh THPT đóng góp như

là một công cụ hỗ trợ để học sinh chọn đúng ngành học. Kết quả, kinh nghiệm

thu được khi thực hiện luận văn này sẽ giúp các tổ chức giáo dục, những cá

nhân làm công tác giáo dục (ở Việt Nam) phân luồng lại hệ thống các trường

Page 18: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

4

ĐH, CĐ, TCCN, giao chỉ tiêu đào tạo cho các trường, nhằm tránh việc lãng phí

trong đào tạo.

1.7. Cấu trúc luận văn

Chương 1: Tổng quan

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

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

Chương 4: Thực nghiệm và đánh giá

Chương 5: Kết luận và hướng phát triển

Page 19: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

5

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

2.1. Tổng quan về khai phá dữ liệu

2.1.1. Khai phá dữ liệu là gì?

Khai phá dữ liệu là một khái niệm ra đời vào cuối những năm 1980. Nó là quá

trình khám phá thông tin ẩn được tìm thấy trong các CSDL và có thể xem như là một

bước trong quá trình khám phá tri thức. KPDL là giai đoạn quan trọng nhất trong tiến

trình khai phá tri thức từ CSDL, các tri thức này hỗ trợ trong việc ra quyết định trong

các lĩnh vực như: khoa học, giáo dục [8] [15], kinh doanh, …

Năm 1989 Fayyad, Smyth và Piatestsky-Shapiro đã dùng khái niệm Phát hiện

tri thức từ CSDL (Knowledge Discovery in Database - KDD) trong đó KPDL là một

giai đoạn rất đặc biệt trong toàn bộ quá trình, nó sử dụng các kỹ thuật để tìm ra các

mẫu từ dữ liệu.

KPDL là quá trình phát hiện các mô hình, các tổng kết khác nhau và các giá trị

được lấy từ tập dữ liệu cho trước [11]. Hay, KPDL là sự thăm dò và phân tích lượng

dữ liệu lớn để khám phá từ dữ liệu ra các mẫu hợp lệ, mới lạ, có ích và có thể hiểu

được [23].

2.1.2. Quá trình KPDL

Quá trình KPDL sẽ tiến hành qua 6 giai đoạn [6], [7]

Hình 2.1: Quá trình KPDL [6]

Dữ liệu

Dữ liệu đích

Dữ liệu đã

xử lý

Dữ liệu đã

chuyển đổi

Mô hình

Trích lọc dữ liệu

Tiền xử lý và chuẩn

bị dữ liệu

Chuyển đổi dữ liệu

Khai phá dữ liệu

Đánh giá luật

Tri thức

Page 20: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

6

Bắt đầu của quá trình là kho dữ liệu thô và kết thúc với tri thức được chiết xuất

ra. Về lý thuyết thì có vẽ rất đơn giản nhưng thực sự đây là một quá trình rất khó khăn

gặp phải rất nhiều vướng mắc như: quản lý các tập dữ liệu, phải lặp đi lặp lại toàn bộ

quá trình, …

2.1.2.1. Tập hợp dữ liệu (Data)

Đây là giai đoạn đầu tiên trong quá trình KPDL. Giai đoạn này lấy dữ liệu trong

một CSDL, một kho dữ liệu và dữ liệu từ các nguồn Internet.

2.1.2.2. Trích lọc dữ liệu (Selection)

Giai đoạn này dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn nào

đó.

2.1.2.3. Tiền xử lý và chuẩn bị dữ liệu (Preprocessing)

Giai đoạn này rất quan trọng trong quá trình KPDL. Một số lỗi thường mắc phải

trong khi thu thập dữ liệu như thiếu thông tin, không logic... Vì vậy, dữ liệu thường

chứa các giá trị vô nghĩa và không có khả năng kết nối dữ liệu.

Giai đoạn này tiến hành xử lý những dạng dữ liệu nói trên. Những dữ liệu dạng

này được xem như thông tin dư thừa, không có giá trị. Vì vậy, đây là một giai đoạn

rất quan trọng vì dữ liệu này nếu không được làm sạch - tiền xử lý - chuẩn bị trước

thì sẽ gây nên những kết quả sai lệch nghiêm trọng trong KPDL.

2.1.2.4. Chuyển đổi dữ liệu (Transformation)

Giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có thể sử dụng và điều khiển được

bởi việc tổ chức lại nó. Dữ liệu đã được chuyển đổi phù hợp với mục đích khai thác.

2.1.2.5. Khai phá dữ liệu (Data Mining)

Giai đoạn mang tính tư duy trong KPDL. Ở giai đoạn này nhiều thuật toán khác

nhau đã được sử dụng để xuất ra các mẫu từ dữ liệu. Thuật toán thường dùng là thuật

toán phân loại dữ liệu, kết hợp dữ liệu hoặc các mô hình hóa dữ liệu tuần tự.

Đây là giai đoạn được nhiều người nghiên cứu nhất.

2.1.2.6. Đánh giá kết quả mẫu (Interpretation/ Evaluation)

Giai đoạn cuối trong quá trình KPDL. Trong giai đoạn này, các mẫu dữ liệu

được chiết xuất ra bởi phần mềm KPDL. Không phải bất cứ mẫu dữ liệu nào cũng

Page 21: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

7

đều hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn

đánh giá để đưa ra các tri thức cần thiết và sử dụng được.

2.2. Phân lớp trong KPDL

2.2.1. Phân lớp dữ liệu

Phân lớp dữ liệu là một quá trình gồm hai bước: một bước học (trong đó xây

dựng nên một mô hình phân lớp) và một bước phân lớp (trong đó mô hình vừa xây

dựng được sử dụng để dự đoán các nhãn lớp cho những dữ liệu nào đó).

Hình 2.2 minh họa quá trình này cho trường hợp dữ liệu xin vay tiền. Dữ liệu

ấy đã được đơn giản hóa để dễ minh họa. Trong thực tế, có thể ta cần xem xét nhiều

thuộc tính hơn.

Hình 2.2 (a): Bước học/ huấn luyện trong quá trình phân lớp hai bước [7]

Hình 2.2 (b): Bước phân lớp trong quá trình phân lớp hai bước [7]

Page 22: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

8

Ở bước thứ nhất, ta xây dựng một mô hình phân lớp mô tả một bộ xác định

trước các lớp dữ liệu hay khái niệm. Đây là bước học (hay giai đoạn huấn luyện), ở

đó một thuật toán phân lớp xây dựng nên mô hình phân lớp bằng cách phân tích hoặc

“học hỏi từ” một tập huấn luyện hình thành từ các bản ghi trong CSDL và các nhãn

lớp liên kết với chúng. Mỗi bản ghi X được biểu diễn bởi một vector thuộc tính gồm

n-chiều, X = (x1, x2, …, xn), mô tả n giá trị đo đã thực hiện trên bản ghi đó từ n thuộc

tính tương ứng của CSDL A1, A2, …, An. Mỗi bản ghi X được giả định là thuộc về một

lớp được quy định trước, như được xác định bởi một thuộc tính khác của CSDL gọi

là thuộc tính nhãn lớp.

Thuộc tính nhãn lớp này có trị rời rạc và không có thứ tự. Nó có tính phân loại

ở chỗ mỗi giá trị của nó đóng vai trò một loại hoặc lớp. Các bản ghi riêng tạo thành

tập huấn luyện được gọi là các bản ghi huấn luyện và được lấy mẫu ngẫu nhiên từ

CSDL đang phân tích. Trong ngữ cảnh phân lớp, các bản ghi của CSDL có thể được

các tài liệu khác nhau gọi là mẫu, ví dụ, thể hiện, điểm dữ liệu, hoặc đối tượng.

Do nhãn lớp của mỗi bản ghi huấn luyện đều được cung cấp sẵn, nên bước này

còn được gọi là học có giám sát, tức là việc học của mô hình phân lớp là “có giám

sát” ở chỗ nó được cho biết là mỗi bản ghi huấn luyện thuộc về lớp nào. Nó trái với

học không giám sát, trong đó ta không biết nhãn lớp của mỗi bản ghi huấn luyện và

có thể cả số lượng hoặc tập hợp các lớp cần học nữa.

Mỗi thuộc tính đại diện cho một “đặc điểm” của X. Do đó các tài liệu về nhận

dạng mẫu dùng thuật ngữ vector đặc điểm thay cho vector thuộc tính. Trong luận văn

này, tác giả dùng thuật ngữ vector thuộc tính, và trong cách ký hiệu của tác giả, bất

kỳ biến nào đại diện cho một vector đều được trình bày bằng kiểu chữ đậm và

nghiêng, các giá trị đo mô tả vector đó được trình bày bằng kiểu chữ nghiêng (ví dụ:

X = (x1, x2, x3)).

Trong các tài liệu về máy học, các bản ghi huấn luyện thường được gọi là mẫu

huấn luyện hoặc ví dụ huấn luyện.

Bước thứ nhất của quá trình phân lớp còn có thể được xem như là việc học (hay

tìm kiếm) một ánh xạ hay hàm y = f (X) mà có thể dự đoán được nhãn lớp y liên kết

với một bản ghi X cho trước. Theo cách quan sát này, chúng ta muốn tìm ra một ánh

xạ hay hàm mà chia tách các lớp dữ liệu. Thông thường, ánh xạ này được biểu diễn

Page 23: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

9

dưới dạng các luật phân lớp, các cây quyết định, hoặc các công thức toán học. Trong

ví dụ dữ liệu xin vay ngân hàng bên trên, ánh xạ này được biểu diễn dưới dạng các

luật phân lớp giúp nhận diện những đơn xin vay tiền nào là an toàn hoặc rủi ro (Hình

2.2 (a)). Các luật này có thể được dùng để phân loại các bản ghi dữ liệu trong tương

lai cũng như giúp ta hiểu biết sâu hơn trong nội dung dữ liệu. Chúng cũng cung cấp

một cách biểu diễn dữ liệu ngắn gọn, cô đọng.

Ở bước thứ hai (Hình 2.2 (b)), mô hình tìm được ở bước thứ nhất sẽ được dùng

cho việc phân loại những dữ liệu mới. Trước hết, ta đánh giá độ chính xác dự đoán

(predictive accuracy) của mô hình phân loại ấy. Nếu như ta dùng tập huấn luyện để

đánh giá độ chính xác của mô hình phân lớp thì việc đánh giá này nhiều khả năng là

quá lạc quan, bởi vì mô hình ấy có khuynh hướng quá khớp dữ liệu (tức là trong quá

trình học, nó có thể sáp nhập luôn một số trường hợp bất thường của dữ liệu huấn

luyện, vốn không hiện diện trong tổng thể tập dữ liệu nói chung). Vì thế, ta dùng một

tập kiểm tra, bao gồm các bản ghi kiểm tra và các nhãn lớp liên kết với chúng, để

thực hiện việc đánh giá này. Các bản ghi kiểm tra này độc lập với các bản ghi huấn

luyện, nghĩa là chúng không được dùng để xây dựng mô hình phân lớp.

Độ chính xác của một mô hình phân lớp trên một tập kiểm tra xác định là tỷ lệ

các bản ghi của tập kiểm tra được phân loại đúng đắn bởi mô hình phân lớp ấy. Nhãn

lớp liên kết của mỗi bản ghi kiểm tra được so sánh với sự dự đoán lớp của mô hình

phân lớp học ứng với bản ghi đó.

Mục 2.4.6.1 (Trong chương 2) mô tả vài phương pháp để đánh giá độ chính xác

của mô hình phân lớp. Nếu độ chính xác của mô hình phân lớp được xem là chấp

nhận được, thì mô hình phân lớp có thể được dùng để phân loại những bản ghi dữ

liệu trong tương lai mà nhãn lớp chưa biết.

Ví dụ, các luật phân lớp học được trong Hình 2.2 (a) từ việc phân tích dữ liệu

của những đơn xin vay tiền lúc trước, nếu có độ chính xác cao khi phân lớp tập kiểm

tra, thì có thể được dùng để chuẩn thuận hoặc bác những đơn xin vay tiền mới hoặc

sẽ có trong tương lai, như được minh họa trong Hình 2.2 (b).

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

Quy nạp cây quyết định (decision tree induction) là việc tìm kiếm các cây quyết

định từ những bản ghi huấn luyện đã có nhãn lớp. Mỗi cây quyết định (decision tree)

Page 24: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

10

là một cấu trúc cây kiểu lưu đồ, trong đó mỗi nút trong biểu thị một sự kiểm tra trên

một thuộc tính nào đó, mỗi nhánh biểu diễn một kết quả của sự kiểm tra đó, còn mỗi

nút lá chứa một nhãn lớp. Nút ở trên cùng của cây là nút gốc, chứa tên của thuộc tính

cần kiểm tra. Hình 2.3 cho thấy một cây quyết định tiêu biểu. Các nút trong được biểu

diễn bằng các hình chữ nhật, còn các nút lá được biểu diễn bằng các hình bầu dục.

Một số thuật toán cây quyết định chỉ sinh ra các cây nhị phân (trong đó mỗi nút trong

rẽ nhánh đến hai nút khác), trong khi những thuật toán cây quyết định khác có thể

sinh ra những cây không nhị phân.

Các cây quyết định được dùng cho phân lớp như thế nào? Cho một bản ghi X

nào đó mà ta chưa biết nhãn lớp liên kết với nó, các giá trị thuộc tính của bản ghi đó

được kiểm tra so với cây quyết định. Dựa theo những cuộc kiểm tra đó, ta lần ra một

đường đi từ gốc đến một nút lá chứa kết quả dự đoán lớp dành cho bản ghi ấy. Các

cây quyết định có thể dễ dàng được chuyển đổi thành các luật phân lớp, tức hình thức

phân loại đơn giản và dễ hiểu nhất đối với con người [30].

Hình 2.3: Một ví dụ về cây quyết định [7]

2.2.3. Phân lớp dữ liệu bằng giải thuật học ILA

- Thuật giải ILA được dùng để xác định các luật phân loại cho tập hợp các mẫu

học. Thuật giải này thực hiện theo cơ chế lặp, để tìm luật riêng đại diện cho tập

mẫu của từng lớp. Sau khi xác định được luật, thuật giải sẽ loại bỏ các mẫu mà

luật này bao hàm, đồng thời thêm luật mới này vào tập luật. Kết quả có được là

một danh sách có thứ tự các luật. [26], [28].

- Mô tả thuật giải ILA [27]

Page 25: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

11

+ Bước 1: Chia bảng con có chứa m mẫu thành n bảng con. Một bảng con ứng

với một giá trị của thuộc tính phân lớp (Lặp lại từ bước 2 đến bước 8 cho

mỗi bảng con).

+ Bước 2: Khởi tạo số lượng thuộc tính kết hợp j với j = 1.

+ Bước 3: Với mỗi bảng con đang xét, phân chia các thuộc tính của nó thành

một danh sách các thuộc tính kết hợp, mỗi thành phần của danh sách có j

thuộc tính phân biệt.

+ Bước 4: Với mỗi kết hợp các thuộc tính trong danh sách trên, đếm số lần

xuất hiện các giá trị cho các thuộc tính trong kết hợp đó ở các dòng chưa bị

khóa của bảng đang xét nhưng nó không được xuất hiện cùng giá trị ở những

bảng con khác. Chọn ra một kết hợp trong danh sách sao cho nó có giá trị

tương ứng xuất hiện nhiều nhất và được gọi là Max_combination.

+ Bước 5: Nếu Max_combination = 0 thì j = j+1 quay lại bước 3.

+ Bước 6: Khóa các dòng ở bảng con đang xét mà tại đó giá trị bằng với giá

trị tạo ra Max_combination.

+ Bước 7: Thêm vào R luật mới với giả thuyết là các giá trị tạo ra

Max_combination kết nối các bộ này bằng phép AND, kết luận là giá trị

của thuộc tính quyết định trong bảng con đang xét.

+ Bước 8: Nếu tất cả các dòng đều khóa:

Nếu còn bảng con thì qua bảng con tiếp theo và quay lại bước 2.

Ngược lại chấm dứt thuật toán.

Ngược lại quay lại bước 4.

2.2.4. Phân lớp dữ liệu bằng mạng Naïve Bayes

Các mô hình phân lớp dựa theo Bayes (Bayesian classifier) là loại mô hình phân

lớp theo lý thuyết thống kê. Chúng có thể dự đoán xác suất của các thành viên lớp,

chẳng hạn xác suất để một bản ghi nhất định thuộc về một lớp cụ thể nào đó. Phân

lớp dựa theo Bayes căn cứ vào nền tảng lý thuyết là định lý Bayes (được đặt theo tên

của Thomas Bayes, nhà toán học Anh vào thế kỷ 18).

Thuật toán phân lớp Naïve Bayes (NB) giả định rằng ảnh hưởng của một giá trị

thuộc tính nào đó trên một lớp nhất định là độc lập với các giá trị của các thuộc tính

khác. Giả định này được gọi là sự độc lập theo điều kiện lớp (class-conditional

Page 26: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

12

independence). Người ta giả định như vậy để đơn giản hóa khối lượng tính toán cần

thiết, và vì lý do này, nó được gọi là “ngây thơ” (naïve).

Chi tiết của việc phân lớp dữ liệu bằng mạng NB có thể được tham khảo ở [7].

- Ưu điểm

+ Về thời gian học (tức thời gian xây dựng mô hình): ít hơn so với phương

pháp quy nạp cây quyết định, và ít hơn rất nhiều so với mạng nơ-rôn, nhất

là đối với dữ liệu rời rạc.

+ Hiệu năng phân lớp (độ chính xác và tốc độ) cao khi dùng với CSDL lớn.

+ Thuật toán dễ hiểu và dễ hiện thực.

- Nhược điểm

+ Do NB giả định là các thuộc tính độc lập với nhau, nên khi các thuộc tính

có sự phụ thuộc lẫn nhau (ví dụ, trong giáo dục có một số môn học có ý

nghĩa tiên quyết đối với một số môn học khác) thì phương pháp NB trở

nên thiếu chính xác.

+ NB không sinh ra được những mô hình phân lớp dễ hiểu đối với người

dùng không chuyên về KPDL.

2.2.5. Phân lớp dữ liệu bằng Neural Network

Lĩnh vực học bằng các mạng nơ-rôn nhân tạo (artificial neural network – ANN),

lúc đầu được khởi xướng bởi các nhà tâm lý học và các nhà sinh học thần kinh muốn

tìm cách xây dựng và kiểm tra những mô hình tính toán tương tự với mạng lưới các

tế bào thần kinh (neuron) của con người. Một mạng nơ-rôn nhân tạo, hay chỉ vắn tắt

là mạng nơ-rôn (NN), đôi khi còn được gọi là multilayer perceptron (MLP), là một

tập hợp các nút xuất/nhập nối kết với nhau, trong đó mỗi đường nối kết có một trọng

số liên kết với nó. Trong giai đoạn học, mạng này học bằng cách điều chỉnh các trọng

số để dự đoán được nhãn lớp đúng đắn của các bản ghi nhập vào.

- Ưu điểm

+ Các mô hình học được từ NN có khả năng chịu đựng đối với dữ liệu nhiễu

cao cũng như khả năng phân lớp được những mẫu hình mà chúng chưa

từng được huấn luyện.

+ Chúng rất thích hợp đối với dữ liệu nhập và xuất có trị liên tục.

Page 27: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

13

+ Các thuật toán mạng nơ-rôn vốn có sẵn tính song song; có thể dùng các kỹ

thuật song song hóa để tăng tốc quá trình tính toán.

+ Ngoài ra, gần đây đã có nhiều kỹ thuật được xây dựng để rút trích ra các

luật phân lớp dễ hiểu từ các mạng nơ-rôn học được.

Chi tiết của việc phân lớp dữ liệu bằng các NN có thể được tham khảo ở [7],

[30].

- Nhược điểm

+ Học bằng NN đòi hỏi thời gian huấn luyện phải dài, vì thế thích hợp hơn

với các ứng dụng nào chấp nhận điều này.

+ Thuật toán xây dựng NN cần một số tham số mà thường thì chỉ được xác

định tốt nhất thông qua thí nghiệm, như cấu trúc.

+ Các mô hình học bằng NN đã bị chỉ trích vì tính khó hiểu của chúng; con

người khó diễn giải được ý nghĩa biểu tượng đằng sau các trọng số học và

ý nghĩa của các “đơn vị ẩn” trong mạng.

2.3. KPDL sử dụng luật kết hợp

2.3.1. Luật kết hợp trong CSDL

Gọi I = {I1, I2… Im} là tập m thuộc tính riêng biệt, mỗi thuộc tính gọi là một mục.

Gọi D là một CSDL, trong đó mỗi bản ghi t là một giao dịch và chứa các tập mục, t

I.

Định nghĩa 1: Một luật kết hợp là một biểu thức có dạng X Y, trong đó X, Y

I là các tập mục gọi là các itemset, và YX . Ở đây, X được gọi là tiền đề, Y là

mệnh đề kết quả.

Hai thông số quan trọng của luật kết hợp là độ hỗ trợ (s) và độ tin cậy (c).

Định nghĩa 2: Độ hỗ trợ của luật kết hợp X Y là tỷ lệ phần trăm các bản ghi

YX với tổng số các giao dịch có trong CSDL.

Định nghĩa 3: Đối với một số giao dịch được đưa ra, độ tin cậy là tỷ lệ của số

giao dịch có chứa YX với số giao dịch có chứa X. Đơn vị tính %.

Việc khai thác các luật kết hợp từ CSDL chính là việc tìm tất cả các luật có độ

hỗ trợ và độ tin cậy lớn hơn ngưỡng của độ hỗ trợ và độ tin cậy do người sử dụng xác

Page 28: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

14

Yêu cầu sử

dụng

Tham chiếu

đến tập luật R

Lựa chọn

luật

Ứng dụng

định trước. Các ngưỡng của độ hỗ trợ và độ tin cậy được ký hiệu là minsup và minconf

[30].

Việc khai thác các luật kết hợp có thể được phân tích thành hai vấn đề sau đây:

- Tìm tất cả các tập phổ biến có độ hỗ trợ lớn hơn hoặc bằng minsup.

- Tạo ra các luật mong muốn sử dụng các tập phổ biến có độ tin cậy lớn hơn

hoặc bằng minconf [5].

2.3.2. Tính ứng dụng

Luật kết hợp có ứng dụng trong nhiều lĩnh vực khác nhau của đời sống như:

khoa học, hoạt động kinh doanh, tiếp thị, thương mại, phân tích thị trường chứng

khoán, tài chính và đầu tư, ... Ứng dụng luật kết hợp phải chỉ rõ các đặc điểm về:

nguồn gốc, điều kiện áp dụng, phạm vi ứng dụng, mục đích ứng dụng. Những đặc

điểm này được thể hiện bằng mô hình sau:

Hình 2.4: Mô hình ứng dụng luật

Trong đó:

- Yêu cầu sử dụng: là phạm vi tính ứng dụng của tập luật ví dụ như về khoa

học, kinh doanh, tiếp thị, thương mại, phân tích thị trường chứng khoán, …

- Tham chiếu đến tập luật R: ở giai đoạn này các tập luật được tham chiếu tại

đây là các tập luật được sinh ra từ CSDL chứa tác nhân yêu cầu sử dụng.

- Lựa chọn luật: ở bước này chúng ta tiến hành lọc các luật hữu ích nhất phục

vụ cho phạm vi sử dụng.

- Ứng dụng: đây là kết quả mong đợi nhất từ khi bắt đầu khai thác cho đến khi

thi hành luật.

Mô hình ứng dụng luật đã làm sáng tỏ tính ứng dụng của việc khai thác luật kết

hợp trong CSDL.

Page 29: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

15

Thực tế, ứng dụng của khai thác luật kết hợp trong CSDL giáo dục là một phạm

trù của KPDL nên ứng dụng của nó rất rộng lớn, nhất là trong sự phát triển của xã hội

hiện nay. Ngoài ra, một tập hợp con đặc biệt của luật kết hợp gọi là luật kết hợp lớp

(Class Association rules –CARs) [13], [14], [16] dùng để tích hợp phân loại và khai

phá luật kết hợp.

Tóm lại, tính ứng dụng của khai thác luật kết hợp trong CSDL giáo dục là việc

ứng dụng các tập luật tìm thấy trong đó nhằm vào những mục đích cụ thể và đạt được

kết quả tốt.

2.4. Kỹ thuật KPDL sử dụng cây quyết định

2.4.1. Giới thiệu kỹ thuật KPDL sử dụng cây quyết định

Trong những năm qua, nhiều mô hình phân lớp dữ liệu đã được các nhà khoa

học trong nhiều lĩnh vực khác nhau đề xuất như NN, mô hình thống kê tuyến tính bậc

2, cây quyết định, di truyền, …. Trong số những mô hình đó, cây quyết định với

những ưu điểm của mình được đánh giá là một công cụ mạnh, phổ biến và đặc biệt

thích hợp cho KPDL nói chung và phân lớp dữ liệu nói riêng [25].

Có thể kể ra những ưu điểm của cây quyết định như: xây dựng tương đối nhanh;

đơn giản, dễ hiểu. Hơn nữa các cây có thể dễ dàng được chuyển đổi sang các câu lệnh

SQL để có thể được sử dụng để truy nhập CSDL một cách hiệu quả. Cuối cùng, việc

phân lớp dựa trên cây quyết định đạt được sự tương tự và đôi khi là chính xác hơn so

với các phương pháp phân lớp khác [31].

2.4.2. Các vấn đề trong KPDL sử dụng cây quyết định

Các vấn đề đặc thù trong khi học hay phân lớp dữ liệu bằng cây quyết định gồm:

xác định độ sâu để phát triển cây quyết định, xử lý với những thuộc tính liên tục, chọn

phép đo lựa chọn thuộc tính thích hợp, sử dụng tập dữ liệu huấn luyện với những giá

trị thuộc tính bị thiếu, sử dụng các thuộc tính với những chi phí khác nhau, và cải

thiện hiệu năng tính toán.

2.4.2.1. Tránh “quá khớp” dữ liệu

Thế nào là “quá khớp” dữ liệu? Có thể hiểu đây là hiện tượng cây quyết định

chứa một số đặc trưng riêng của tập dữ liệu huấn luyện, nếu lấy chính tập dữ liệu

huấn luyện để kiểm tra lại mô hình phân lớp thì độ chính xác sẽ rất cao, trong khi đối

Page 30: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

16

với những dữ liệu tương lai khác nếu sử dụng cây đó lại không đạt được độ chính xác

cao.

Quá khớp dữ liệu là một khó khăn đáng kể đối với học bằng cây quyết định và

những phương pháp học khác. Đặc biệt khi số lượng mẫu trong tập dữ liệu huấn luyện

quá ít, hay có nhiễu trong dữ liệu.

Có hai phương pháp tránh “quá khớp” dữ liệu trong cây quyết định:

- Dừng phát triển cây sớm hơn bình thường, trước khi đạt tới điểm phân lớp

hoàn hảo tập dữ liệu huấn luyện. Với phương pháp này, một thách thức đặt

ra là phải ước lượng chính xác thời điểm dừng phát triển cây.

- Cho phép cây có thể “quá khớp” dữ liệu, sau đó sẽ cắt, tỉa cây.

Mặc dù phương pháp thứ nhất có vẻ trực tiếp hơn, nhưng với phương pháp thứ

hai thì cây quyết định được sinh ra được thực nghiệm chứng minh là thành công hơn

trong thực tế. Hơn nữa việc cắt tỉa cây quyết định còn giúp tổng quát hóa, và cải thiện

độ chính xác của mô hình phân lớp. Dù thực hiện phương pháp nào thì vấn đề mấu

chốt ở đây là tiêu chuẩn nào được sử dụng để xác định kích thước hợp lý của cây cuối

cùng.

2.4.2.2. Thao tác với thuộc tính liên tục

Việc thao tác với thuộc tính liên tục trên cây quyết định hoàn toàn không đơn

giản như với thuộc tính rời rạc.

Thuộc tính rời rạc có tập giá trị (domain) xác định từ trước và là tập hợp các

giá trị rời rạc. Ví dụ loại ô tô là một thuộc tính rời rạc với tập giá trị là: {xe tải, xe

khách, xe con, taxi}.Việc phân chia dữ liệu dựa vào phép kiểm tra giá trị của thuộc

tính rời rạc được chọn tại một ví dụ cụ thể có thuộc tập giá trị của thuộc tính đó hay

không: value (A) ∈ X với X ⊂ domain (A). Đây là phép kiểm tra logic đơn giản, không

tốn nhiều tài nguyên tính toán. Trong khi đó, với thuộc tính liên tục (thuộc tính dạng

số) thì tập giá trị là không xác định trước. Chính vì vậy, trong quá trình phát triển cây,

cần sử dụng kiểm tra dạng nhị phân: value (A) ≤ θ. Với θ là hằng số ngưỡng

(threshold) được lần lượt xác định dựa trên từng giá trị riêng biệt hay từng cặp giá trị

liền nhau (theo thứ tự đã sắp xếp) của thuộc tính liên tục đang xem xét trong tập dữ

liệu huấn luyện. Điều đó có nghĩa là nếu thuộc tính liên tục A trong tập dữ liệu huấn

Page 31: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

17

luyện có d giá trị phân biệt thì cần thực hiện d-1 lần kiểm tra value (A) ≤ θi với i =

1..d-1 để tìm ra ngưỡng θbest tốt nhất tương ứng với thuộc tính đó. Việc xác định giá

trị của θ và tiêu chuẩn tìm θ tốt nhất tùy vào chiến lược của từng thuật toán [12], [24].

2.4.2.3. Đánh giá cây quyết định trong lĩnh vực KPDL

2.4.2.3.1. Ưu điểm của cây quyết định [4]:

- Khả năng sinh ra các luật dễ hiểu

Cây quyết định có khả năng sinh ra các luật có thể chuyển đổi được sang dạng

tiếng Anh, hoặc các câu lệnh SQL, đây là ưu điểm nổi bật của kỹ thuật này. Thậm chí

với những tập dữ liệu lớn khiến cho hình dáng cây quyết định lớn và phức tạp, việc

đi theo bất cứ đường nào trên cây là dễ dàng theo nghĩa phổ biến và rõ ràng. Do vậy

sự giải thích cho bất cứ một sự phân lớp hay dự đoán nào đều tương đối minh bạch.

- Khả năng thực thi trong những lĩnh vực hướng sử dụng luật

Điều này có nghe có vẻ hiển nhiên, nhưng luật quy nạp nói chung và cây quyết

định nói riêng là lựa chọn hoàn hảo cho những lĩnh vực mang tính quy tắc. Rất nhiều

lĩnh vực từ di truyền tới các quá trình công nghiệp thực sự chứa các quy tắc ẩn, không

rõ ràng (underlying rules) do khá phức tạp và tối nghĩa bởi những dữ liệu lỗi, nhiễu.

Cây quyết định là một sự lựa chọn tự nhiên khi chúng ta nghi ngờ sự tồn tại của các

quy tắc ẩn, không rõ ràng.

- Dễ dàng tính toán trong khi phân lớp

Mặc dù như chúng ta đã biết, cây quyết định có thể chứa nhiều định dạng, nhưng

trong thực tế, các thuật toán sử dụng để tạo ra cây quyết định thường tạo ra những

cây với số phân nhánh thấp và các test đơn giản tại từng node. Những test điển hình

là: so sánh số, xem xét phần tử của một tập hợp, và các phép nối đơn giản. Khi thực

thi trên máy tính, những test này chuyển thành các toán hàm logic và số nguyên là

những toán hạng thực thi nhanh và không đắt. Đây là một ưu điểm quan trọng bởi

trong môi trường thương mại, các mô hình dự đoán thường được sử dụng để phân lớp

hàng triệu thậm trí hàng tỉ bản ghi.

- Khả năng xử lý với cả thuộc tính liên tục và thuộc tính rời rạc

Cây quyết định xử lý “tốt” như nhau với thuộc tính liên tục và thuộc tính rời

rạc. Tuy rằng với thuộc tính liên tục cần nhiều tài nguyên tính toán hơn. Những thuộc

Page 32: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

18

tính rời rạc đã từng gây ra những vấn đề với mạng neural và các kỹ thuật thống kê lại

thực sự dễ dàng thao tác với các tiêu chuẩn phân chia (splitting criteria) trên cây quyết

định: mỗi nhánh tương ứng với từng phân tách tập dữ liệu theo giá trị của thuộc tính

được chọn để phát triển tại node đó. Các thuộc tính liên tục cũng dễ dàng phân chia

bằng việc chọn ra một số gọi là ngưỡng trong tập các giá trị đã sắp xếp của thuộc tính

đó. Sau khi chọn được ngưỡng tốt nhất, tập dữ liệu phân chia theo test nhị phân của

ngưỡng đó.

- Thể hiện rõ ràng những thuộc tính tốt nhất

Các thuật toán xây dựng cây quyết định đưa ra thuộc tính mà phân chia tốt nhất

tập dữ liệu đào tạo bắt đầu từ node gốc của cây. Từ đó có thể thấy những thuộc tính

nào là quan trọng nhất cho việc dự đoán hay phân lớp.

2.4.2.3.2. Nhược điểm của cây quyết định

Dù có những sức mạnh nổi bật trên, cây quyết định vẫn không tránh khỏi có

những nhược điểm. Đó là cây quyết định không thích hợp lắm với những bài toán với

mục tiêu là dự đoán giá trị của thuộc tính liên tục như thu nhập, huyết áp hay lãi suất

ngân hàng… Cây quyết định cũng khó giải quyết với những dữ liệu thời gian liên tục

nếu không bỏ ra nhiều công sức cho việc đặt ra sự biểu diễn dữ liệu theo các mẫu liên

tục.

- Dễ xảy ra lỗi khi có quá nhiều lớp

Một số cây quyết định chỉ thao tác với những lớp giá trị nhị phân dạng yes/no

hay accept/reject. Số khác lại có thể chỉ định các bản ghi vào một số lớp bất kỳ, nhưng

dễ xảy ra lỗi khi số ví dụ huấn luyện ứng với một lớp là nhỏ. Điều này xảy ra càng

nhanh hơn với cây mà có nhiều tầng hay có nhiều nhánh trên một node.

- Chi phí tính toán đắt để huấn luyện

Điều này nghe có vẻ mâu thuẫn với khẳng định ưu điểm của cây quyết định ở

trên. Nhưng quá trình phát triển cây quyết định đắt về mặt tính toán. Vì cây quyết

định có rất nhiều node trong trước khi đi đến lá cuối cùng. Tại từng node, cần tính

một độ đo (hay tiêu chuẩn phân chia) trên từng thuộc tính, với thuộc tính liên tục phải

thêm thao tác sắp xếp lại tập dữ liệu theo thứ tự giá trị của thuộc tính đó. Sau đó mới

có thể chọn được một thuộc tính phát triển và tương ứng là một phân chia tốt nhất.

Page 33: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

19

Một vài thuật toán sử dụng tổ hợp các thuộc tính kết hợp với nhau có trọng số để phát

triển cây quyết định. Quá trình cắt tỉa cây cũng “đắt” vì nhiều cây con ứng cử phải

được tạo ra và so sánh.

2.4.3. Xây dựng cây quyết định

Quá trình xây dựng cây quyết định gồm hai giai đoạn:

- Giai đoạn thứ nhất: phát triển cây quyết định: Giai đoạn này phát triển bắt

đầu từ gốc, đến từng nhánh và phát triển quy nạp theo cách thức chia để trị

cho tới khi đạt được cây quyết định với tất cả các lá được gán nhãn lớp.

- Giai đoạn thứ hai: cắt, tỉa bớt các nhánh trên cây quyết định. Giai đoạn này

nhằm mục đích đơn giản hóa và khái quát hóa từ đó làm tăng độ chính xác

của cây quyết định bằng cách loại bỏ sự phụ thuộc vào mức độ nhiễu, lỗi của

dữ liệu huấn luyện mang tính chất thống kê, hay những sự biến đổi mà có thể

là đặc tính riêng biệt của dữ liệu huấn luyện. Giai đoạn này chỉ truy cập dữ

liệu trên cây quyết định đã được phát triển trong giai đoạn trước và quá trình

thực nghiệm cho thấy giai đoạn này không tốn nhiều tài nguyên tính toán,

như với phần lớn các thuật toán, giai đoạn này chiếm khoảng dưới 1% tổng

thời gian xây dựng mô hình phân lớp [24], [25].

Do vậy, ở đây tôi chỉ tập trung vào nghiên cứu giai đoạn phát triển cây quyết

định. Dưới đây là khung công việc của giai đoạn này:

- Bước 1: Chọn thuộc tính “tốt” nhất bằng một độ đo đã định trước.

- Bước 2: Phát triển cây bằng việc thêm các nhánh tương ứng với từng giá trị

của thuộc tính đã chọn.

- Bước 3: Sắp xếp, phân chia tập dữ liệu huấn luyện tới node con.

- Bước 4: Nếu các ví dụ được phân lớp rõ ràng thì dừng. Ngược lại: lặp lại

bước 1 tới bước 4 cho từng node con.

Page 34: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

20

2.4.4. Thuật toán sử dụng xây dựng cây quyết định

2.4.4.1. Thuật toán CLS

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

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

Thuật toán này được thiết kế theo chiến lược chia để trị từ trên xuống.

Thuật toán CLS là một trong những thuật toán ra đời sớm nhất. Nó chỉ áp dụng

cho các CSDL chứa ít thuộc tính, giá trị các thuộc tính dạng phân loại hay rời rạc.

Còn đối với các CSDL lớn và có chứa các thuộc tính mà giá trị của nó là liên tục thì

CLS làm việc không hiệu quả. Thuật toán có thể cho các kết quả khác nhau với cùng

một tập dữ liệu đầu vào. Bởi vì, thuật toán này chưa có tiêu chí để lựa chọn thuộc tính

trong quá trình xây dựng cây. Nhưng đây là thuật toán đơn giản, dễ cài đặt, phù hợp

trong việc hình thành ý tưởng và giải quyết những nhiệm vụ đơn giản.

Chi tiết về thuật toán xem trong [7]

2.4.4.2. Thuật toán ID3 (Interactive Dichotomizer 3)

Thuật toán ID3 được phát triển bởi Quinlan và được công bố vào cuối thập niên

70 của thế kỷ 20. Sau đó, thuật toán ID3 được giới thiệu và trình bày trong mục

Induction on Decition Trees, Machine Learning năm 1986. ID3 được xem như là một

cải tiến của CLS với khả năng lựa chọn thuộc tính tốt nhất để tiếp tục triển khai cây

tại mỗi bước. ID3 xây dựng cây quyết định từ trên xuống (top-down) [18]

- Entropy: dùng để do tính thuần nhất của một tập dữ liệu. Entropy của một tập

S được tính theo công thức (2.1) [18]

Entropy (S) = −𝑃+𝑙𝑜𝑔2(𝑃+)−𝑃−𝑙𝑜𝑔2(𝑃−) (2.1)

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

(-). Ký hiệu 𝑃+ là để chỉ tỷ lệ các mẫu có giá trị của thuộc tính quyết định là

“Yes”, và hiệu 𝑃− là để chỉ tỷ lệ các mẫu có giá trị của thuộc tính quyết định

là “No” trong tập S.

+ Trường hợp tổng quát, đối với tập con S có n phân lớp thì ta có công thức

sau:

Page 35: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

21

Entropy (S) = ∑ (−𝑃𝑖𝑙𝑜𝑔2(𝑃𝑖))𝑛𝑖=1 (2.2)

Trong đó 𝑃𝑖 là tỷ lệ các mẫu thuộc lớp i trên tập hợp S các mẫu kiểm tra.

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

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

Entropy (S) = 0.

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

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

- Information Gain (viết tắt là Gain): Gain là đại lượng dùng để đo tính hiệu quả

của một thuộc tính được lựa chọn cho việc phân lớp. Đại lượng này được tính

thông qua hai giá trị Information và Entropy [7]

+ Cho tập dữ liệu S gồm có n thuộc tính 𝐴𝑖(𝑖 = 1, 2 … 𝑛) giá trị Information

của thuộc tính 𝐴𝑖 ký hiệu là 𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛 (𝐴𝑖) được xác định bởi công thức

𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛 (𝐴𝑖) = − ∑ 𝑙𝑜𝑔2(𝑃)𝑖 = 𝐸𝑛𝑡𝑟𝑜𝑝𝑦 (𝑆)𝑛𝑖=1 (2.3)

+ Giá trị Gain của thuộc tính A trong tập S ký hiệu là Gain (S, A) và được tính

theo công thức sau

𝐺𝑎𝑖𝑛(𝑆, 𝐴) = 𝐼𝑛𝑓𝑜𝑟𝑚𝑎𝑡𝑖𝑜𝑛(𝐴) − 𝐸𝑛𝑡𝑟𝑜𝑝𝑦(𝐴)

= 𝐸𝑛𝑡𝑟𝑜𝑝𝑦(𝑆) − ∑|𝑆𝑣|

|𝑆|𝑣 𝑣𝑎𝑙𝑢𝑒 (𝐴) 𝐸𝑛𝑡𝑟𝑜𝑝𝑦(𝑆𝑣) (2.4)

Trong đó:

▪ S là tập hợp ban đầu với thuộc tính A. Các giá trị của v tương ứng là các

giá trị của thuộc tính A.

▪ 𝑆𝑣 bằng tập hợp con của tập S mà có thuộc tính A mang giá trị v.

▪ |𝑆𝑣| là số phần tử của tập 𝑆𝑣

▪ |𝑆| là số phần tử của tập 𝑆

Trong quá trình xây dựng cây quyết định theo thuật toán ID3 tại mỗi bước triển

khai cây, thuộc tính được chọn để triển khai là thuộc tính có giá trị Gain lớn nhất.

Page 36: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

22

Thuật toán ID3 [2] [18]

ID3 (Examples, Target_attribute, Attributes)

Examples là tập huấn luyện. Target_attribute là thuộc tính có giá trị để dự đoán

cho cây. Attributes là một danh sách các thuộc tính khác dùng kiểm tra việc học của

cây quyết định. Kết quả trả về một cây quyết định được phân loại chính xác bởi những

tập huấn luyện.

Tạo một nút Root cho cây

If tất cả tập Examples có trong cây, Return cây có nút Root duy nhất được

gán với nhãn “+”

If tất cả tập Examples không có trong cây, Return cây có nút Root duy nhất

được gán với nhãn “-”

If tập Attributes rỗng, Return cây có nút Root duy nhất được gán với nhãn

là giá trị phổ biến nhất của tập Target_attribute trong tập Examples

Nếu không Begin

o A Thuộc tính trong tập Attributes có khả năng phân loại tốt nhất đối với

tập Examples

o Thuộc tính quyết định cho nút Root A

o For each giá trị có trong cây, vi của thuộc tính A

Thêm một nhánh cây mới dưới nút Root, tương ứng với trường hợp A

= vi

Xác định tập 𝐸𝑥𝑎𝑚𝑝𝑙𝑒𝑠𝑣𝑖 là tập hợp con của tập Examples có giá trị vi

của A

If 𝐸𝑥𝑎𝑚𝑝𝑙𝑒𝑠𝑣𝑖 rỗng

• Dưới nhánh mới này thêm một nút lá với nhãn là giá trị phổ biến nhất

của tập Target_attribute trong tập Examples.

• Else dưới nhánh mới này thêm cây con

ID3 (𝐸𝑥𝑎𝑚𝑝𝑙𝑒𝑠𝑣𝑖, Target_attribute, Attributes – {A})

End

Return Root

Page 37: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

23

Với việc tính toán giá trị Gain để lựa chọn thuộc tính tối ưu cho việc triển khai

cây, thuật toán ID3 được xem là một cải tiến của thuật toán CLS.

Khi áp dụng thuật toán ID3 cho cùng một tập dữ liệu đầu vào và thử nhiều lần

thì cho cùng một kết quả. Bởi vì, thuộc tính ứng viên được lựa chọn ở mỗi bước trong

quá trình xây dựng cây được lựa chọn trước.

Tuy nhiên, thuật toán này cũng chưa giải quyết được vấn đề thuộc tính số, liên

tục, số lượng các thuộc tính còn bị hạn chế và giải quyết hạn chế với vấn đề dữ liệu

bị thiếu hoặc nhiễu.

2.4.4.3. Thuật toán C4.5

Thuật toán C4.5 được phát triển và công bố bởi Quinlan vào năm 1996. Thuật

toán C4.5 là một thuật toán được cải tiến từ thuật toán ID3 với việc cho phép xử lý

trên tập dữ liệu có các thuộc tính số và làm việc được với tập dữ liệu thiếu và dữ liệu

nhiễu. Nó thực hiện phân lớp tập mẫu dữ liệu theo chiến lược ưu tiên theo chiều sâu.

Thuật toán xét tất cả các phép thử có thể để phân chia tập dữ liệu đã cho và chọn ra

một phép thử có giá trị GainRatio tốt nhất. GainRatio là một đại lượng để đánh giá

độ hiệu quả của thuộc tính, dùng để thực hiện phép tách trong thuật toán để phát triển

cây quyết định. GainRatio được tính dựa trên kết quả tính toán đại lượng Information

Gain theo công thức sau

𝐺𝑎𝑖𝑛𝑅𝑎𝑡𝑖𝑜𝑛 (𝑋, 𝑇) = 𝐺𝑎𝑖𝑛 (𝑋,𝑇)

𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜 (𝑋,𝑇) (2.5)

Với

𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜 (𝑋, 𝑇) = − ∑|𝑇𝑖|

|𝑇|𝑖 𝑉𝑎𝑙𝑢𝑒 (𝑋) 𝑙𝑜𝑔2|𝑇𝑖|

|𝑇| (2.6)

Trong đó:

- Value (X) là tập các giá trị của thuộc tính X

- 𝑇𝑖 là tập con của tập T ứng với thuộc tính X = giá trị là 𝑣𝑖

Đối với các thuộc tính liên tục, chúng ta tiến hành phép thử nhị phân cho mọi

giá trị của thuộc tính đó. Để thu thập được giá trị Entropy Gain của tất cả các phép

thử nhị phân một cách hữu hiệu ta tiến hành sắp xếp các dữ liệu theo giá trị của thuộc

tính liên tục đó bằng thuật toán Quicksort.

Page 38: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

24

Thuật toán xây dựng cây quyết định C4.5 xem thêm trong [7], [19].

Một số công thức được sử dụng

𝐼𝑛𝑓𝑜𝑥(𝑇) = − ∑|𝑇𝑖|

|𝑇|∗ 𝐼𝑛𝑓𝑜 (𝑇𝑖)𝑛

𝑖=1 (2.7)

𝐺𝑎𝑖𝑛 (𝑋) = 𝐼𝑛𝑓𝑜 (𝑇) − 𝐼𝑛𝑓𝑜𝑥 (𝑇) (2.8)

Công thức (2.8) được sử dụng làm tiêu chuẩn để lựa chọn thuộc tính khi phân

lớp. Thuộc tính được chọn là thuộc tính có giá trị Gain tính theo (2.8) đạt giá trị lớn

nhất.

Một số cải tiến của thuật toán C4.5

- Làm việc với thuộc tính đa trị

Tiêu chuẩn (2.8) có một khuyết điểm là không chấp nhận các thuộc tính đa trị.

Vì vậy, thuật toán C4.5 đã đưa ra các đại lượng GainRatio và SplitInfo

(SplitInformation), chúng được xác định theo các công thức sau:

𝑃 =𝑓𝑟𝑒𝑞 (𝐶𝑗 , 𝑇)

|𝑆|

𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜 (𝑋) = − ∑𝑇𝑖

𝑇 𝑙𝑜𝑔2 (

𝑇𝑖

𝑇)𝑛

𝑖=1 (2.9)

𝐺𝑎𝑖𝑛𝑅𝑎𝑡𝑖𝑜 (𝑋) = 𝐺𝑎𝑖𝑛 (𝑋)

𝑆𝑝𝑙𝑖𝑡𝐼𝑛𝑓𝑜 (𝑋) (2.10)

Giá trị SplitInfo là đại lượng đánh giá thông tin tiềm năng thu nhập được khi

phân chia tập T thành n tập hợp con.

GainRatio là tiêu chuẩn để đánh giá việc lựa chọn thuộc tính phân loại.

- Làm việc với dữ liệu thiếu

Thuật toán vừa xây dựng dựa vào giả thuyết tất cả các mẫu dữ liệu có đủ các

thuộc tính. Nhưng trong thực tế, xảy ra hiện tượng dữ liệu bị thiếu, tức là ở một số

mẫu dữ liệu có những thuộc tính không được xác định, hoặc mâu thuẫn, không bình

thường. Ta xem xét kỹ hơn với trường hợp dữ liệu bị thiếu. Đơn giản nhất là không

đưa các mẫu với các giá trị bị thiếu vào, nếu làm như vậy thì có thể dẫn đến tình trạng

thiếu các mẫu học. Giả sử T là một tập hợp gồm các mẫu cần được phân loại, X là

phép kiểm tra theo thuộc tính L, U là số lượng các giá trị bị thiếu của thuộc tính L.

Khi đó ta có:

Page 39: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

25

𝐼𝑛𝑓𝑜 (𝑇) = − ∑𝑓𝑟𝑒𝑞 (𝐶𝑗,𝑇)

|𝑇|−𝑈∗ 𝑙𝑜𝑔2 (

𝑓𝑟𝑒𝑞 (𝐶𝑗,𝑇)

|𝑇|−𝑈)𝑘

𝑗=1 (2.11)

𝐼𝑛𝑓𝑜𝑥 (𝑇) = − ∑|𝑇|

|𝑇|−𝑈∗ 𝑙𝑜𝑔2(𝑇𝑖)𝑛

𝑗=1 (2.12)

Trong trường hợp này, khi tính tần số freq (𝐶𝑖 , 𝑇) ta chỉ tính riêng các mẫu với

giá trị trên thuộc tính L đã xác định. Khi đó tiêu chuẩn (2.8) được viết lại bằng công

thức (2.13) như sau:

𝐺𝑎𝑖𝑛 (𝑋) = |𝑇|−𝑈

|𝑇| (𝐼𝑛𝑓𝑜 (𝑇) − 𝐼𝑛𝑓𝑜𝑥 (𝑇)) (2.13)

Tương tự thay đổi tiêu chuẩn (2.13). Nếu phép kiểm tra có N giá trị đầu vào thì

tiêu chuẩn (2.13) được tính như trường hợp chia N tập hợp ban đầu thành (N+1) tập

hợp con.

Giả sử phép thử X có các giá trị 𝑂1, 𝑂2 … 𝑂𝑛 được lựa chọn theo kiểu chuẩn

(2.13), ta cần xử lý như thế nào với các dữ liệu bị thiếu. Giả sử mẫu từ tập hợp T với

đầu ra là 𝑂𝑖 có liên quan đến tập hợp 𝑇𝑖 thì khả năng mẫu đó thuộc tập hợp 𝑇𝑖 là 1.

Giả sử mỗi mẫu trong 𝑇𝑖 có một chỉ số xác định xác suất thuộc tập hợp 𝑇𝑖. Nếu

mẫu có các giá trị thuộc tính L thì có trọng số bằng 1. Nếu trong trường hợp ngược

lại, thì mẫu này liên quan đến tập con 𝑇1, 𝑇2 … 𝑇𝑛 với xác suất tương ứng là:

|𝑇1|

|𝑇|−𝑈,

|𝑇2|

|𝑇|−𝑈, … ,

|𝑇𝑛|

|𝑇|−𝑈 (2.14)

Ta có thể dễ dàng thấy được rằng tổng các xác suất này bằng 1.

∑|𝑇𝑖|

|𝑇|−𝑈= 1𝑛

𝑖=1 (2.15)

Tóm lại giải pháp này được phát biểu như sau: Xác suất xuất hiện của các giá

trị bị thiếu tỷ lệ thuận với xác suất xuất hiện của các giá trị không thiếu.

Trong thuật toán này đã giải quyết được vấn đề làm việc với thuộc tính số (liên

tục), thuộc tính có nhiều giá trị và vấn đề dữ liệu bị thiếu, nhiễu. Trong C4.5 thực

hiện việc phân ngưỡng với thuộc tính số bằng phép tách nhị phân đưa vào đại lượng

GainRatio thay thế cho đại lượng Gain của ID3. Để giải quyết được vấn đề thuộc tính

có nhiều giá trị.

Page 40: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

26

Ngoài ra, còn có bước cắt tỉa nhánh không phù hợp. Tuy nhiên, yếu điểm của

thuật toán này là làm việc không hiệu quả với CSDL lớn vì chưa giải quyết được vấn

đề bộ nhớ.

2.4.5. Cắt tỉa cây quyết định

Qua tìm hiểu các thuật toán xây dựng cây quyết định ở trên, ta thấy việc xây

dựng cây bằng cách phát triển nhánh cây đầy đủ theo chiều sâu để phân lớp hoàn toàn

các mẫu huấn luyện; như thuật toán CLS và thuật toán ID3 đôi khi gặp khó khăn trong

các trường hợp dữ liệu nhiễu hoặc dữ liệu bị thiếu không đủ để đại diện cho một quy

luật; tức là tạo ra các nút có số mẫu rất nhỏ. Trong trường hợp này, nếu thuật toán vẫn

cứ phát triển cây, sẽ dẫn đến một tình huống mà ta gọi là tình trạng “Over fitting”

trong cây quyết định. [7], [11]

Vấn đề Over fitting là một khó khăn trong việc nghiên cứu và ứng dụng cây

quyết định. Để giải quyết tình trạng này người ta sử dụng phương pháp cắt tỉa cây

quyết định. Có hai phương pháp cắt tỉa cây quyết định.

2.4.5.1. Tiền cắt tỉa (Prepruning)

Chiến thuật tiền cắt tỉa nghĩa là sẽ dừng sớm việc phát triển cây trước khi nó

vươn đến điểm mà việc phân lớp các mẫu huấn luyện được hoàn thành. Nghĩa là trong

quá trình xây dựng cây, một nút có thể sẽ không được tách thêm bước nữa nếu như

kết quả của phép tách đó rơi vào một ngưỡng gần như chắc chắn. Nút đó trở thành

nút lá và được gán nhãn là nhãn của lớp phổ biến nhất của tập các mẫu tại nút đó [7].

2.4.5.2. Hậu cắt tỉa (Postpruning)

Chiến thuật này ngược với chiến thuật tiền cắt tỉa. Nó cho phép phát triển cây

đầy đủ sau đó mới cắt tỉa. Nghĩa là xây dựng cây sau đó mới thực hiện cắt bỏ các

nhánh không hợp lý. Trong quá trình xây dựng cây theo chiến thuật hậu cắt tỉa thì cho

phép tình trạng Over fitting xảy ra. Nếu một nút mà các cây con của nó bị cắt thì nó

sẽ trở thành nút lá và nhãn của lá được gán là nhãn của lớp phổ biến nhất của các con

trước đó của nó [7], [11].

Trong thực tế, phương pháp hậu cắt tỉa là một phương pháp khá thành công cho

việc tìm ra các giả thuyết chính xác cao. Chiến thuật hậu cắt tỉa được tiến hành thông

qua việc tính toán các lỗi sau:

Page 41: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

27

Giả sử ta gọi: E (S) là lỗi tĩnh (Static error hay expected error) của một nút S;

BackUpError (S) là lỗi từ các nút con của S (Back Up Error); Error (S) là lỗi của nút

S. Các giá trị này được tính như sau:

Error (S) = Min (E (S), BackUpError (S)) (2.16)

E (S) = (N-n+1)/ (N+2)

Trong đó: N là tổng số mẫu ở nút S, n là số mẫu của lớp phổ biến nhất trong S.

Trong trường hợp tổng quát, nếu thuộc tính lớp có K giá trị (K lớp) thì:

E (S) = (N – n + K -1)/ (N+K)

𝐵𝑎𝑐𝑘𝑈𝑝𝐸𝑟𝑟𝑜𝑟 (𝑆) = ∑ 𝑃𝑖 𝐸𝑟𝑟𝑜𝑟 (𝑆𝑖)𝑖 (2.17)

Trong đó: 𝑆𝑖 là nút con của S, 𝑃𝑖 là tỷ lệ số mẫu trong 𝑆𝑖 trên số mẫu trong S.

Như vậy các nút lá sẽ có lỗi Error (𝑆𝑖) = E (𝑆𝑖) do nút lá không có nút con dẫn

đến không có lỗi BackUpError. Nếu BackUpError (S) ≥ E (S) thì chiến thuật hậu cắt

tỉa cây quyết định sẽ cắt tại nút S (tức là cắt bỏ các cây con của S).

Tóm lại, việc cắt tỉa cây nhằm: tối ưu hóa cây kết quả. Tối ưu về kích cỡ cây và

về độ chính xác của việc phân lớp bằng cách cắt bỏ các nhánh không phù hợp (over

fitted branches). Để thực hiện việc cắt tỉa cây thì có các kỹ thuật cơ bản sau đây [7],

[22], [29].

- Sử dụng tập hợp tách rời của mẫu học để đánh giá tính hữu dụng của việc

hậu cắt tỉa những nút trong cây. Sử dụng kỹ thuật cắt tỉa cây này có thuật toán

CART, gọi tắt là chi phí phức tạp (Cost – Complexity prunning).

- Áp dụng phương pháp thống kê để đánh giá và cắt bỏ các nhánh có độ tin cậy

kém hoặc mở rộng tiếp các nhánh có độ chính xác cao. Kỹ thuật cắt tỉa này

được gọi là cắt tỉa bi quan và thường được sử dụng để cắt tỉa các cây được

xây dựng theo thuật toán ID3 và C4.5.

- Kỹ thuật mô tả độ dài tối thiểu – MDL (Minimum Description Length). Kỹ

thuật này không cần thiết phải kiểm tra các mẫu và nó thường được sử dụng

trong các thuật toán SLIQ, SPRINT.

Page 42: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

28

2.4.6. Đánh giá độ chính xác của mô hình phân lớp

Ước lượng độ chính xác của bộ phân lớp là quan trọng ở chỗ nó cho phép dự

đoán được độ chính xác của các kết quả phân lớp những dữ liệu tương lai. Độ chính

xác còn giúp so sánh các mô hình phân lớp khác nhau.

Cross-validation là một phương pháp thống kê đánh giá và so sánh các thuật

toán học bằng cách chia dữ liệu thành hai phân đoạn: một phân đoạn sử dụng để huấn

luyện một mô hình và phân đoạn khác được sử dụng để xác thực mô hình đó.

Cross-validation dùng để ước tính hiệu suất của mô hình học được từ dữ liệu có

sẵn bằng cách sử dụng một thuật toán. Nói cách khác, để đánh giá tổng quát một thuật

toán. Cross-validation còn dùng để so sánh hiệu suất của hai hoặc nhiều hơn các thuật

toán khác nhau và đưa ra thuật toán tốt nhất cho các dữ liệu có sẵn, hoặc cách khác

để so sánh hiệu suất của hai hoặc nhiều hơn các biến thể của một mô hình tham số.

[20], [21], [30]

Phương pháp k-fold cross-validation: Tập dữ liệu ban đầu được chia ngẫu nhiên

thành k tập con (fold) có kích thước xấp xỉ nhau S1, S2…, Sk. Quá trình học và test

được thực hiện k lần. Tại lần lặp thứ i, Si là tập dữ liệu kiểm tra, các tập còn lại hợp

thành tập dữ liệu huấn luyện. Có nghĩa là, đầu tiên việc dạy được thực hiện trên các

tập S2, S3,…, Sk, sau đó test trên tập S1; tiếp tục quá trình dạy được thực hiện trên tập

S1, S3, S4,…, Sk, sau đó test trên tập S2; và cứ thế tiếp tục cho các tập còn lại.

Độ chính xác là toàn bộ số phân lớp đúng từ k lần lặp chia cho tổng số mẫu của

tập dữ liệu ban đầu. [27], [28]

Hình 2.5: k-fold cross –validation [3]

DATASET

SPLIT

Learning

Algorithm

Classifier

ESTIMATE

Page 43: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

29

2.4.7. Các công trình nghiên cứu trước đây liên quan đến luận văn

- Có một số công trình và ứng dụng đã đưa ra một số phương pháp nhằm hỗ

trợ cho học sinh trong việc chọn ngành và hướng nghiệp cho học sinh như:

+ Công cụ trắc nghiệm hướng nghiệp miễn phí tại địa chỉ website của Đại

học Quốc gia Tp.HCM (http://career.vnuhcm.edu.vn) (do nhóm tác giả

TS. Lê Thị Thanh Mai, TS. Hồ Thiệu Hùng, TS. Nguyễn Đức Nghĩa và

các đồng sự).

+ Bộ trắc nghiệm hướng nghiệp Jim Barrett và Geoff Williams (do Trần Thị

Thu Mai (chủ nhiệm đề tài) 2005-2006. Ứng dụng trắc nghiệm hướng

nghiệp của Jim Barrett và Geoff Williams vào định hướng nghề nghiệp

cho học sinh THPT).

- Hai công trình nghiên cứu trên có rất nhiều tính ứng dụng thực tiễn. Tuy

nhiên, hệ thống thứ nhất cho kết quả nhiều ngành học về cùng một lĩnh vực

nào đó, còn hệ thống thứ hai có tính phí người dùng nên các em học sinh khó

tiếp cận được.

Page 44: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

30

CHƯƠNG 3: XÂY DỰNG ỨNG DỤNG

Ở chương 2, đã trình bày việc KPDL bằng phương pháp sử dụng cây quyết định.

Để minh họa cho lý thuyết đã trình bày trong luận văn, phần này luận văn trình bày

về quá trình xây dựng và cài đặt bài toán mô phỏng kỹ thuật KPDL bằng cây quyết

định dựa trên thuật toán ID3.

3.1. Giới thiệu bài toán

Là chương trình được xây dựng nhằm mục đích thông qua các câu hỏi trắc

nghiệm, giúp học sinh THPT có thể tự định hướng và lựa chọn đúng ngành học phù

hợp với năng lực, tính cách và sở thích của bản thân, đồng thời giúp cho các cán bộ

làm công tác tư vấn hướng nghiệp trong các trường THPT có thể nắm rõ và tư vấn

chính xác hơn cho các em học sinh trong việc xác định ngành học của mình.

3.2. Mô hình cấu trúc hệ thống

Hình 3.1: Mô hình cấu trúc hệ thống tư vấn chọn ngành học

3.2.1. Mô tả đầu vào/ đầu ra

Hệ trợ giúp tư vấn chọn ngành học được xây dựng với đầu ra (Output) là một

ngành học phù hợp với một học sinh nào đó; Giá trị đầu ra này sẽ phụ thuộc vào các

yếu tố độc lập của đầu vào (Input) là tính cách, sở thích và năng lực của học sinh

thông qua bộ câu hỏi trắc nghiệm định hướng nghề nghiệp của John Holland. [9],

[17]

Kho dữ liệu

Thu thập, tổng hợp dữ liệu

khảo sát chọn ngành học

Khai phá dữ liệu

(Cây quyết định, luật kết hợp …) Tập luật

Hệ thống suy diễn

Giao diện trắc nghiệm

tư vấn chọn ngành học

Page 45: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

31

3.2.2. Phương pháp xây dựng hệ thống

Từ phát biểu của bài toán như trên luận văn lựa chọn và thiết kế hệ thống sử

dụng kiểu mô hình cây quyết định với thuật toán ID3.

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

3.3.1. Thiết kế CSDL

Thiết kế dữ liệu với SQL Server 2008 R2

3.3.1.1. Table College (Thông tin các trường ĐH, CĐ khu vực phía nam)

Bảng 3.1: Bảng thông tin các trường ĐH, CĐ

Mô tả:

- TenTruong: Chi tiết tên trường ĐH, CĐ

- MaTruong: Mã trường theo quy định của Bộ GDĐT

- LoaiTruong: Loại trường (0: Tư thục, 1: Công lập)

- CapBac: Trình độ đào tạo (1: Cao đẳng, 2: Đại học)

- HienThi: Hiển thị (True: Hiển thị, False: Không hiển thị)

- Ghichu: Ghi chú

- WebSite: Địa chỉ website của trường

- DiaChi: Địa chỉ của trường

Page 46: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

32

3.3.1.2. Table DHCD_Nganh (Ngành học của các trường ĐH, CĐ)

Bảng 3.2: Bảng lưu các ngành học của các trường ĐH, CĐ

Mô tả:

- MaNganh: Mã ngành đào tạo theo thông tư 14

- MaTruong: Mã trường theo QĐ của Bộ GDĐT

- DiemChuan: Chứa điểm chuẩn của ngành đào tạo

- KhoiThi: Khối thi của ngành đào tạo

- TuyenSinh: Tình trạng hiện tại của ngành tuyển sinh (True: Được phép tuyến

sinh ngành đó, False: Dừng/ Tạm dừng tuyển sinh ngành đó)

3.3.1.3. Table DiemTrungBinh (Lưu trữ ĐTB của học sinh)

Bảng 3.3: Bảng lưu điểm trung bình

Mô tả:

- Lop10: ĐTB lớp 10

- Lop11: ĐTB lớp 11

- Lop12: ĐTB lớp 12

- MaMonHoc: Mã môn học

- KhoiThi: Khối thi

- SinhVienId: Mã SV

Page 47: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

33

3.3.1.4. Table Groups (6 nhóm sở thích)

Bảng 3.4: Bảng lưu 6 nhóm sở thích

Mô tả:

- GroupName: Tên nhóm sở thích (R, I, A, S, E, C)

- Description: Mô tả 6 nhóm sở thích

- DisplayOrder: Mã nhóm sở thích (1, 2, 3, 4, 5, 6)

3.3.1.5. Table Groups_Nganh (Mã ngành thuộc vào nhóm sở thích (trong 6 nhóm))

Bảng 3.5: Bảng Mã ngành thuộc nhóm ngành

Mô tả:

- NhomId: Mã nhóm sở thích (1, 2, 3, 4, 5, 6)

- Manganh: Mã ngành đào tạo theo thông tư 14

3.3.1.6. Table KhaoSat_SinhVien (Dữ liệu kết quả khảo sát sinh viên)

Bảng 3.6: Bảng lưu kết quả khảo sát sinh viên

Mô tả:

- QuestionID: Mã số câu hỏi

- ChooseLevel: Điểm số lựa chọn (có 5 mức ứng với điểm số từ 0 - 4)

- SinhVienId: Mã số sinh viên tham gia khảo sát

- SoLan: số lần thực hiện khảo sát

Page 48: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

34

3.3.1.7. Table KhoiThi (Dữ liệu khối thi)

Bảng 3.7: Bảng khối thi

Mô tả:

- Khoi: Khối thi (A, A1, B, C, D1, D2, D3, D4, D5, D6, H, N, M, T, V, S, R,

K)

- Mon1: tên môn thi ứng với khối thi

- Mon2: tên môn thi ứng với khối thi

- Mon3: tên môn thi ứng với khối thi

3.3.1.8. Table Nganh (Ngành học)

Bảng 3.8: Bảng Ngành học

Mô tả:

- TenNganh: Tên ngành

- Ma: Mã ngành

3.3.1.9. Table Nhom_Nganh (Nhóm ngành)

Bảng 3.9: Bảng Nhóm ngành

Mô tả:

- Ma: Mã nhóm ngành

- TenNhom: Tên nhóm ngành

Page 49: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

35

3.3.1.10. Table Province (Tỉnh)

Bảng 3.10: Bảng chứa thông tin tỉnh

Mô tả:

- Code: Mã tĩnh theo QĐ của Bộ GDĐT

- ProvinceName: Tên tỉnh

- ParentID: Huyện trực thuộc tỉnh

3.3.1.11. Table Questions (Bảng câu trắc nghiệm)

Bảng 3.11: Bảng câu hỏi trắc nghiệm

Mô tả:

- QuestionName: Nội dung câu trắc nghiệm

- GroupId: Câu trắc nghiệm đó thuộc nhóm sở thích nào (1, 2, 3, 4, 5, 6)

- DisplayOrder: Thứ tự câu hỏi hiển thị

- QuestionType: Nhóm câu hỏi

Page 50: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

36

3.3.1.12. Table SinhVien (Chứa thông tin khảo sát về chọn ngành học của sinh viên)

Bảng 3.12: Bảng thông tin khảo sát về chọn ngành học của sinh viên

Mô tả:

- TenDangNhap: Tên đăng nhập hệ thống

- HoTen: Họ tên

- NgaySinh: Ngày tháng năm sinh

- NoiSinh: Nơi sinh

- DiaChi: Địa chỉ

- DienThoai: Điện thoại

- MaNhom1 Mã nhóm ngành 1

Page 51: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

37

- MaNganh1: Mã ngành 1

- MaNhom2: Mã nhóm ngành 2

- MaNganh2: Mã ngành 2

- KhaNang: Tự chọn nhóm sở thích (1, 2, 3, 4, 5, 6)

- CreateDate: Ngày giờ tạo tài khoản

- Passwords: Mật khẩu đăng nhập hệ thống

- ThichHocNganh: Thích học ngành nào

- LyDo: Lý do thích ngành học đó

- GioiTinh: Giới tính

- NoiHocTHPT: Tỉnh

- TruongTHPT: Trường học THPT

- Email: Địa chỉ Email

- ResultA: Tổng điểm nhóm A

- ResultR: Tổng điểm nhóm R

- ResultC: Tổng điểm nhóm I

- ResultI: Tổng điểm nhóm I

- ResultS: Tổng điểm nhóm S

- ResultE: Tổng điểm nhóm E

3.3.1.13. Table Survey_Answer (Chi tiết thông tin khảo sát về chọn ngành học của

Sinh viên)

Bảng 3.13: Bảng chi tiết thông tin khảo sát về chọn ngành học của sinh viên

Mô tả:

- QuestionsId: Mã câu trắc nghiệm

- ChooseLevel: Điểm số trả lời của câu trắc nghiệm (Mức 1: 0 điểm, Mức 2: 1

điểm, Mức 3: 2 điểm, Mức 4: 3 điểm, Mức 5: 4 điểm)

- TesterId: Mã người trả lời bảng khảo sát

Page 52: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

38

3.3.1.14. Table Tester (Thông tin phiếu khảo sát)

Bảng 3.14: Bảng thông tin phiếu khảo sát

Mô tả:

- FullName: Họ tên

- Address: Địa chỉ

- Favorite: Sở thích

- Gender: Giới tính

- DateOfBirth: Ngày sinh

- WhereBirth: Nơi sinh

Page 53: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

39

- Phone: Số điện thoại

- HightSchool: Trường học THPT

- Province: Tỉnh

- Department: Sở thích học ngành

- Reason: Lý do thích học ngành

- Scores: Điểm thi ĐH, CĐ

- SchoolTest: Mã trường tham gia thi tuyển sinh

- A: Khối A

- B: Khối B

- C: Khối C

- D: Khối D

- Orther: Khối thi khác

- SchoolLearning: Mã trường đang học

- IsMatch: Chọn phù hợp/ không phù hợp ngành học hiện tại

- Reason1: Lý do phù hợp hay không phù hợp ngành học

- ResultR: Kết quả nhóm R

- ResultI: Kết quả nhóm I

- ResultA: Kết quả nhóm A

- ResultS: Kết quả nhóm S

- ResultC: Kết quả nhóm C

- ResultE: Kết quả nhóm E

- MaNganh: Mã ngành

3.3.1.15. Table TruongTHPT (Trường THPT)

Bảng 3.15: Bảng thông tin trường THPT

Page 54: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

40

Mô tả:

- MaTinh: Mã số tỉnh thành

- MaTruong: Mã trường THPT

- TenTruong: Tên trường THPT

- DiaChi: Địa chỉ trường THPT

- KhuVuc: Trường thuộc khu vực nào (1, 2, 3, 2NT)

3.3.2. Xử lý và huấn luyện dữ liệu

Phần 1: Khai phá dữ liệu

Dữ liệu được thu thập thông qua phiếu khảo sát sinh viên (thông tin gồm có:

ngành học, điểm TB, sở thích, v.v…) đang theo học các ngành (Quản trị kinh doanh,

Ngôn ngữ Anh, Sư phạm Toán học, Giáo dục Tiểu học, Công nghệ kỹ thuật công

trình xây dựng, Quản lý công nghiệp, Việt Nam học, Công nghệ thông tin, Kế toán,

Tài chính – Ngân hàng, Khoa học thư viện), dữ liệu chính dùng để khai phá bao gồm

55 thuộc tính: trong đó 54 thuộc tính là của từng nhận định khác nhau (được đánh giá

theo 5 mức độ) và 1 thuộc tính là mã ngành học (với 11 ngành học đã được khảo sát).

Thực hiện làm sạch, tiền xử lý dữ liệu, loại bỏ những dữ liệu không phù hợp, thiếu

thông tin, sai yêu cầu. Sau đó sử dụng thuật toán ID3 để sinh ra các luật từ dữ liệu

thu thập được.

Phần 2: Tư vấn cho người dùng

Chương trình ứng dụng được xây dựng trên giao diện website, sử dụng ngôn

ngữ lập trình ASP. NET. Đưa các luật được sinh ra từ phần 1 vào CSDL SQL Server

của website, ta có bảng luật lưu trữ các luật chọn ngành học.

Người dùng thực hiện đăng nhập hệ thống, trả lời các câu hỏi trắc nghiệm, chương

trình sẽ so sánh nội dung câu trả lời đó với tập luật, nếu trùng với một luật nào đó, sẽ

xuất ra kết quả ngành học để tư vấn cho người dùng.

Page 55: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

41

3.3.3. Xây dựng và thiết kế giao diện của chương trình

Người dùng sử dụng Internet, đăng nhập vào trang web với địa chỉ sau:

http://lifeyou.net/login.aspx

- Giao diện đăng nhập vào chương trình

Hình 3.2: Giao diện chương trình

Nếu chưa có tài khoản đăng nhập, người dùng thực hiện tạo tài khoản bằng cách

click vào mục Đăng ký. Sau đó thực hiện điền đầy đủ các thông tin trên Phiếu đăng

ký.

- Giao diện Phiếu đăng ký

Hình 3.3: Giao diện Phiếu đăng ký tài khoản sử dụng

Page 56: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

42

+ Các thông tin có dấu (*) là thông tin bắt buộc nhập.

+ Mục “Học tại tỉnh” chứa thông tin các tỉnh thành (dữ liệu gồm 63 tỉnh thành),

sau khi chọn tỉnh, mục “Trường THPT” sẽ hiển thị các trường THPT thuộc tỉnh

đó (dữ liệu gồm 4059 trường THPT trong cả nước theo danh mục của Bộ Giáo

dục và Đào tạo năm 2013).

+ Trong mục “Hãy chọn nhóm ngành bạn dự định học”, mục nhóm ngành 1, 2

chứa thông tin của 114 nhóm ngành đã phân chia trình độ đại học và cao đẳng,

sau khi chọn nhóm ngành, tên ngành học thuộc nhóm ngành đó sẽ hiển thị tại

mục Ngành 1, 2 (dữ liệu gồm 453 ngành học đại học và cao đẳng), dữ liệu này

được lấy từ Thông tư 14/2010/TT-BGDĐT, ngày 27 tháng 04 năm 2010 của Bộ

trưởng Bộ Giáo dục và Đào tạo về việc ban hành Danh mục giáo dục, đào tạo

cấp IV trình độ cao đẳng, đại học.

+ Trong mục “Chọn nhóm khả năng, sở thích phù hợp nhất với bạn (chọn ít nhất

1 hoặc 2 nhóm”, chứa 6 nhóm sở thích nghề nghiệp theo lý thuyết của John

Holland [9] [17]

Sau khi thực hiện đăng ký các thông tin trên “Phiếu đăng ký”, người dùng chọn

vào nút “Đăng ký”. Và thực hiện với bảng câu hỏi trắc nghiệm trong giao diện “Phiếu

khảo sát thông tin”

- Giao diện Phiếu khảo sát thông tin

Page 57: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

43

Page 58: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

44

Hình 3.4: Giao diện Phiếu khảo sát thông tin về sở thích, tích cách

Sau khi thực hiện trả lời các câu trắc nghiệm, người dùng chọn nút “Next”. Xuất

hiện giao diện như sau:

Page 59: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

45

- Giao diện kết quả thực hiện tính tổng điểm từng nhóm sở thích, và chọn ra 2 nhóm

có điểm số cao nhất.

Hình 3.5: Giao diện kết quả thực hiện tính tổng điểm từng nhóm sở thích

+ Trước khi xuất ra kết quả 2 nhóm có điểm số cao nhất, chương trình sẽ thực

hiện kiểm tra, nếu điểm số trên 3 nhóm tương đương ( 2 điểm) hoặc trùng điểm

nhau, chương trình sẽ thực hiện chọn 2 nhóm nào có điểm thành phần là 3 hoặc

4 điểm làm kết quả cuối cùng. (Ví dụ: Ta có 3 nhóm R, I, S trùng điểm nhau (15

điểm), trong đó điểm thành phần của R, I có các điểm số 3, 4, 4, 4 và điểm của

S là 2, 2, 2, 2, 1, 2, 2, 2. Như vậy chương trình sẽ chọn 2 nhóm R, I làm kết quả

cuối cùng)

+ Sau khi chọn ra 2 nhóm có điểm số cao nhất, chương trình sẽ thực hiện so sánh

2 nhóm kết quả này với nội dung đăng ký ban đầu của người dùng. Có 2 trường

hợp sau:

▪ Nếu kết quả 2 nhóm lựa chọn giống với thông tin đăng ký ban đầu sẽ cho kết

quả như hình 3.5.

▪ Nếu kết quả 2 nhóm lựa chọn khác với thông tin đăng ký ban đầu, chương

trình sẽ thông báo cho người dùng “Kết quả của bạn không phù hợp khả năng

Page 60: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

46

ban đầu bạn chọn. Bạn chấp nhận kết quả này không? Nếu có chọn “Tiếp

tục””, kết quả như hình 3.6.

Hình 3.6: Giao diện kết quả thực hiện tính tổng điểm từng nhóm sở thích (thông tin

đăng ký ban đầu khác với kết quả thực hiện khảo sát)

• Nếu chọn “Thực hiện lại” chương trình sẽ thực hiện xóa kết quả thực hiện

trả lời các câu hỏi trắc nghiệm trong CSDL và cho người dùng quay lại

giao diện “Phiếu khảo sát thông tin” và thực hiện lại bước trả lời các câu

hỏi trắc nghiệm.

• Nếu chọn “Tiếp tục” chương trình sẽ xuất ra kết quả của tất cả các ngành

học liên quan đến 2 nhóm sở thích này.

Page 61: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

47

- Giao diện kết quả ngành học của 2 nhóm có điểm số cao nhất (kết quả này ứng với

2 nhóm ở hình 3.5)

Hình 3.7: Giao diện kết quả ngành học của 2 nhóm có điểm số cao nhất

Ở bước này người dùng có thể tham khảo các ngành học phù hợp nhất với tính

cách của mình.

Page 62: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

48

Sau đó chọn vào mục “Tư vấn chọn ngành” để được tư vấn và chương trình sẽ

đưa ra 1 ngành học để tư vấn cho người dùng.

Chương trình sử dụng thuật toán KPDL bằng phương pháp cây quyết định (ID3) để

thực hiện.

- Giao diện kết quả tư vấn chọn ngành học của chương trình, cho ra kết quả 1 ngành

học.

Hình 3.8: Giao diện kết quả tư vấn chọn ngành học của chương trình

Sau khi có kết quả của 1 ngành học do chương trình tư vấn, chương trình sẽ

thực hiện việc tiếp theo là tư vấn một số trường học có đào tạo ngành đó, người sử

dụng thực hiện như sau:

+ Tự chọn khối thi mà mình dự định sẽ đăng ký thi tuyển sinh.

+ Khai báo điểm số trung bình cả năm các môn học Toán, Vật lý, Hóa học, Văn,

Lịch sử, Địa lý, Ngoại ngữ, Sinh của lớp 10, 11, 12 (nếu chưa có điểm cả năm,

chỉ cần lấy điểm trung bình học kỳ 1), tùy theo khối thi mình chọn lựa. (Ví dụ:

Nếu chọn khối A, chỉ cần nhập điểm 3 môn Toán, Lý, Hóa)

Page 63: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

49

+ Tự ước đoán khả năng làm bài thi tuyển sinh ĐH, CĐ của khối thi mình chọn

lựa bằng cách tự nhập điểm ước đoán (điểm số này có giá trị từ 0.1 điểm 1

điểm). Có 2 cách để tự ước đoán điểm số này:

▪ Cách 1: Tự đánh giá khả năng sẽ làm được bài thi tuyển sinh được bao nhiêu

điểm?

▪ Cách 2: Thử giải đề thi của năm gần nhất, rồi lấy tổng điểm của 3 môn ở 2

năm chia cho 60.

+ Sau khi khai báo các thông số cần thiết, chương trình tính điểm thi theo công

thức sau (công thức tính này được tham khảo của ĐH QG Tp.HCM, trong buổi

tập huấn về hướng nghiệp cho các cán bộ làm công tác tư vấn tại các trường

THPT, ĐH, CĐ, TCCN do TS. Lê Thị Thanh Mai trình bày)

▪ Cách tính ĐTB môn A = (môn A Lớp 10 + môn A Lớp 11 + môn A Lớp

12*3)/ 5

▪ Cách tính điểm của Khối A= (ĐTB Toán + ĐTB Lý + ĐTB Hoá)*K

(Trong đó K là Tự ước đoán khả năng làm bài thi tuyển sinh (đề thi TS năm

trước) của khối thi tương ứng)

+ Chọn điểm dao động (1, 2, 3), nếu người dùng chọn điểm dao động 3, và

với kết quả điểm của Khối thi tương ứng được tính là 20 điểm. Thì điểm sẽ nằm

trong khoảng từ 17 điểm đến 23 điểm. Như vậy các trường ĐH, CĐ có điểm

chuẩn của ngành học được tư vấn ở trên trong khoảng điểm từ 17-23 sẽ được

chọn để tư vấn cho người dùng.

- Giao diện kết quả trường ĐH, CĐ có đào tạo cho ngành học được tư vấn.

Hình 3.9: Kết quả trường ĐH, CĐ có đào tạo ngành học được tư vấn

Page 64: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

50

CHƯƠNG 4: THỰC NGHIỆM VÀ ĐÁNH GIÁ

4.1. Dữ liệu thực nghiệm

- CSDL thực nghiệm được khảo sát trên 11 ngành học: Quản trị kinh doanh, Ngôn

ngữ Anh, Sư phạm Toán học, Giáo dục tiểu học, Công nghệ kỹ thuật công trình

xây dựng, Quản lý công nghiệp, Việt Nam học, Công nghệ thông tin, Kế toán,

Tài chính Ngân hàng, Khoa học thư viện.

- Số liệu thu được trong giai đoạn khảo sát thông tin sinh viên các trường Đại học

và Cao đẳng khu vực phía nam: Trường ĐH Quốc tế Hồng Bàng, Trường ĐH

Bách Khoa - ĐHQG Tp.HCM, Trường ĐH Khoa học Tự nhiên - ĐHQG

Tp.HCM, Trường ĐH Mở Tp.HCM, Trường ĐH Sài Gòn, Trường ĐH Sư Phạm

Tp.HCM, Trường CĐ Viễn Đông, Trường CĐ GTVT 3, Trường CĐ Kinh tế -

Kỹ thuật Sài Gòn.

STT Nội dung Số lượng

1 Số phiếu khảo sát ban đầu 4000

2 Số phiếu thu được 2397

3 Số phiếu sau khi tiền xử lý (Dữ liệu đạt yêu cầu) 1536

Bảng 4.1: Số liệu thực hiện khảo sát sinh viên

- Số liệu chi tiết từng ngành khảo sát (sau khi đã tiền xử lý dữ liệu)

STT Mã ngành Tên ngành Số lượng Tỷ lệ

1 5151340101 Quản trị kinh doanh 308 20%

2 5252220201 Ngôn ngữ Anh (Tiếng Anh) 294 19%

3 5252140209 Sư phạm Toán học 171 11%

4 5252140202 Giáo dục Tiểu học 131 9%

5 5151510102 Công nghệ kỹ thuật công trình xây dựng 119 8%

6 5252510601 Quản lý công nghiệp 115 7%

7 5151220113 Việt Nam học 104 7%

8 5252480201 Công nghệ thông tin 86 6%

Page 65: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

51

9 5151340301 Kế toán 82 5%

10 5252340201 Tài chính – Ngân hàng 66 4%

11 5252320202 Khoa học thư viện 60 4%

Tổng 1536 100%

Bảng 4.2: Số liệu chi tiết từng ngành

4.2. Môi trường thực nghiệm

Chương trình được cài đặt và thực nghiệm trên máy tính cá nhân có cấu hình

như sau: Intel ® Dual-Core ™ T4300 @ CPU 2.10 Ghz (2 CPU); bộ nhớ RAM 2

Ghz; hệ điều hành Windows 7 Ultimate 32 - bit (6.1, build 7601) Service Pack 1;

ngôn ngữ lập trình Microsoft Visual C#.Net 2010; Microsoft SQL Server 2008 R2.

4.3. Đánh giá độ chính xác của cây quyết định

- Để đánh giá độ chính xác, luận văn sử dụng phương pháp 10-fold cross -

validation (k = 10). Toàn bộ dữ liệu được chia ngẫu nhiên thành 10 nhóm kích

thước như nhau. Bộ phân loại được huấn luyện trên chín nhóm sau đó được

kiểm tra trên một nhóm còn lại. Lặp lại 10 lần với 10 nhóm dùng để kiểm tra,

sau đó lấy trung bình cộng kết quả.

Hình 4.1: Bảng phân chia dữ liệu test 10-fold cross – validation

Page 66: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

52

- Kết quả đánh giá theo phương pháp 10-fold cross - validation

Fold Training

Set

Test

Set True False Null Accuracy

1 1382 154 141 11 2 92%

2 1382 154 137 16 1 89%

3 1382 154 130 24 0 84%

4 1382 154 143 11 0 93%

5 1382 154 132 19 3 86%

6 1382 154 136 17 1 88%

7 1383 153 125 25 3 82%

8 1383 153 133 19 1 87%

9 1383 153 145 8 0 95%

10 1383 153 131 20 2 86%

Average 88%

Bảng 4.3: Kết quả đánh giá 10-fold cross - validation

4.4. Phân tích, so sánh kết quả và nhận xét

- Qua sự tìm hiểu, tác giả nhận thấy hiện nay cũng có một số trang web sử dụng

bộ câu hỏi trắc nghiệm lý thuyết của John Holland. Nhưng chỉ có trang web của

Đại học Quốc gia Tp.HCM cung cấp bộ công cụ trắc nghiệm hướng nghiệp

miễn phí tại địa chỉ (http://aad.vnuhcm.edu.vn/huongnghiep/) và một phần mềm

tìm kiếm ngành học và trường dựa vào lý thuyết của John Holland, khá hoàn

chỉnh và đầy đủ. Cho nên tác giả dùng nó để nhận xét và so sánh với luận văn

của mình.

Page 67: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

53

Hình 4.2: Chương trình mô phỏng chọn ngành, trường của ĐHQG Tp.HCM

- Nhận xét kết quả trả về ngành học của chương trình trên như sau

STT Nhóm sở

thích 1

Nhóm sở

thích 2

Số lượng kết quả

ngành học được trả về

1 R I 107

2 R A 11

3 R S 10

4 R E 4

5 I A 8

6 I S 43

7 I E 18

8 I C 7

9 A S 20

10 A E 2

11 A C 3

Page 68: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

54

12 S E 13

13 S C 2

14 E C 11

Bảng 4.4: Kết quả chọn ngành, trường của ĐHQG Tp.HCM

- Kết quả trả về trong chương trình tư vấn lựa chọn ngành học

Hình 4.3: Kết quả tư vấn chọn ngành của luận văn

- Thời gian cho kết quả tư vấn chọn ngành

STT Tốc độ đường truyền Internet Thời gian thực hiện

1 54Mbps 46.5 giây

2 7.2Mbps (3G) 47.3 giây

Bảng 4.5: Thời gian thực hiện tư vấn chọn ngành

- So sánh với kết quả của luận văn

STT Tên ngành

PM_ĐHQG_KQ Kết quả của

luận văn

(ngành học)

Nhóm sở

thích

Số

lượng

(ngành)

1 Quản trị kinh doanh I-E 18 1

2 Ngôn ngữ Anh (Tiếng Anh) A-S 20 1

3 Sư phạm Toán học S-C, I-C 9 1

4 Giáo dục Tiểu học A-S 20 1

5 Công nghệ kỹ thuật công trình xây dựng R-I 107 1

6 Quản lý công nghiệp R-E 4 1

7 Việt Nam học I-S 43 1

8 Công nghệ thông tin R-I 107 1

Page 69: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

55

9 Kế toán E-C 11 1

10 Tài chính – Ngân hàng E-C 11 1

11 Khoa học thư viện A-C 3 1

Bảng 4.6: Bảng so sánh kết quả

+ Chương trình của ĐHQG Tp.HCM sử dụng bộ câu hỏi trắc nghiệm về thói

quen, dự định công việc tương lai, tính cách và có 3 mức để đánh giá cho

điểm. Sau khi có kết quả điểm, sử dụng cách đánh giá của John Holland [9]

[17] dựa vào 6 nhóm sở thích R, I, A, S, E, C chọn ra 2 nhóm nào có điểm

cao nhất và cho ra kết quả các ngành thuộc 2 nhóm sở thích đó. Từ kết quả

trả về ngành học trong bảng 4.4 nhận thấy rằng kết quả chương trình của

ĐHQG Tp.HCM cho thấy những hạn chế như sau:

▪ Kết quả trả về rất nhiều ngành, rất khó trong việc lựa chọn 1 trong số rất

nhiều ngành đó.

▪ Không có kiểm tra tính logic của sự lựa chọn trong chương trình. Nghĩa

là, đầu tiên người sử dụng chọn chức năng đăng ký, trong đó có khai báo

chọn 1 hoặc 2 nhóm sở thích phù hợp (có 6 nhóm sở thích) (ví dụ ở bước

này chọn nhóm I và R), sau đó thực hiện khảo sát thì số điểm cao nhất rơi

vào hai nhóm A, S. Như vậy các ngành học được tư vấn cho người dùng

sẽ thuộc nhóm A, S chứ không phải nhóm I, R như đăng ký ban đầu.

▪ Chương trình còn rời rạc, chưa liên kết các bước với nhau, nghĩa là từ lúc

chọn các câu trắc nghiệm, tính điểm và lúc cho ra kết quả các ngành học,

cả hai bước này người dùng phải tự lựa chọn và thực hiện riêng biệt. Nếu

chương trình liên kết các bước với nhau, sẽ thuận tiện hơn.

+ Chương trình của luận văn sử dụng bộ công cụ trắc nghiệm định hướng nghề

nghiệp của John Holland, với 5 mức để đánh giá cho điểm, tạo sự chính xác

hơn trong mỗi nhận định. Luận văn sử dụng bộ câu hỏi này để tạo bảng khảo

sát sinh viên đang theo học các trường ĐH-CĐ, khảo sát trên 11 ngành học

như đã đề cập ở mục 4.1. Sử dụng kỹ thuật KPDL tạo ra các tập luật từ dữ

liệu thu thập được ở trên. Sau đó dùng các tập luật này tư vấn chọn ngành

học cho các dữ liệu mới.

Page 70: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

56

Ngoài ra, luận văn cũng có triển khai thêm tính năng tương tự chương trình

của ĐHQG Tp.HCM nhưng có cải tiến thêm bằng cách liên kết các bước với

nhau, có kiểm tra tính logic của chương trình. Dựa vào kết quả so sánh trong

bảng 4.5, kết quả luận văn có một số ưu điểm sau:

▪ Kết quả trả về chỉ một ngành học.

▪ Luận văn đã liên kết các bước với nhau, nghĩa là sau khi chọn các câu trả

lời trắc nghiệm chương trình sẽ cho ra kết quả ngành học, các bước này

người dùng không phải tự lựa chọn và thực hiện riêng nữa. Thuận tiện hơn

cho người dùng chương trình.

▪ Có kiểm tra tính logic của sự lựa chọn trong chương trình. Nghĩa là, nếu

lựa chọn nhóm sở thích trong lúc đăng ký khác với nhóm sở thích khi thực

hiện khảo sát thì có thông báo nhắc người sử dụng xem xét lại sự lựa chọn

của mình, nếu người dùng đồng ý với kết quả mới thì chọn tiếp tục còn

nếu chọn lại thì thực hiện lại việc khảo sát. Như vậy việc lựa chọn sẽ chính

xác và khách quan hơn.

▪ Việc sử dụng kết quả khảo sát các sinh viên đang theo học các ngành học

do mình lựa chọn để từ đó áp dụng thuật toán KPDL chọn ngành học cho

các dữ liệu mới, tạo nên sự chính xác hơn cho tư vấn ngành học mới.

Page 71: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

57

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

5.1. Kết quả đạt được từ nghiên cứu

- Luận văn đã đưa ra một giải pháp từ việc phân loại dữ liệu trên các phiếu khảo

sát thông tin lựa chọn ngành học, đến việc tiến hành khai thác xử lý chúng để

đưa ra các tri thức cần thiết. Các tri thức này được tối ưu hóa và đem vào sử

dụng một cách hiệu quả trong việc tư vấn chọn ngành học cho dữ liệu mới.

- Giao diện website dễ sử dụng, dễ tiếp cận cho mọi đối tượng quan tâm và bất

kỳ nơi đâu có kết nối Internet.

- Luận văn đã đi sâu vào tính ứng dụng thực tiễn, đưa ra cách thức xử lý và thi

hành các tri thức được chiết xuất một cách hiệu quả.

- Về mặt lý thuyết, nêu được giải pháp ứng dụng kỹ thuật phân lớp dữ liệu vào

bài toán tư vấn chọn ngành học cho học sinh THPT.

- Về mặt thực tiễn, luận văn đã đáp ứng được mục tiêu ban đầu đặt ra, hệ thống

đã khai phá được các thông tin lựa chọn ngành học của sinh viên, nhằm hỗ trợ

các em học sinh mới lựa chọn cho mình một ngành học phù hợp. Công việc tư

vấn và hỗ trợ thông tin tuyển sinh nhất là chọn ngành học. Nếu trước đây đó là

công việc hết sức vất vả thì ngày nay, với sự hỗ trợ của công nghệ mới, đó là

một việc rất đơn giản cho đội ngũ làm công tác tư vấn chọn ngành học. Thuật

toán ID3 hỗ trợ việc lựa chọn ra những kết quả tối ưu, phù hợp nhất trong một

tập hợp dữ liệu khổng lồ. Từ đó, những dữ liệu trả về sẽ được tận dụng tối đa

trong công việc, những nhà tư vấn chỉ việc dùng kết quả đó để thực hiện công

việc tiếp theo của mình: tư vấn cho học sinh về những ngành học phù hợp với

khả năng của bản thân.

5.2. Đóng góp luận văn

Ứng dụng hỗ trợ học sinh các trường THPT trên địa bàn tỉnh Ninh Thuận trong

việc xác định và lựa chọn ngành học.

5.3. Hạn chế

- Luận văn chỉ mới tập trung nghiên cứu trên 11 ngành học.

- Dữ liệu thu thập chưa bao quát hết tất cả các ngành học, chưa có phương pháp

tối ưu hóa dữ liệu khi thực hiện trên dữ liệu lớn.

Page 72: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

58

5.4. Hướng phát triển luận văn

- Thuật toán phân lớp mà luận văn sử dụng sinh ra những mô hình phân lớp dễ

hiểu, nhưng độ chính xác phân lớp vẫn chưa cao. Có thể kết hợp thêm nhiều

phương khác để thực hiện nhằm đạt độ chính xác cao hơn.

- Các hướng nghiên cứu tiếp theo: Xây dựng ứng dụng thành một hệ thống chuyên

gia chuyên nghiệp đóng vai trò như là một chuyên gia tư vấn ngành học cho tất

cả học sinh trong cả nước.

- Xây dựng hệ thống tư vấn cho tất cả các ngành học hiện có.

- Sử dụng các thuật toán thống kê và xác suất cho các tập dữ liệu kết quả tư vấn,

tập dữ liệu huấn luyện, tập dữ liệu lựa chọn nhóm ngành học ban đầu (lúc đăng

ký).

- Tiến hành lấy mẫu lớn cho các ngành học khác để đưa ra tập luật tổng quát hơn.

- Lấy thêm mẫu dữ liệu từ những đối tượng đã tốt nghiệp ĐH, CĐ (loại khá, giỏi)

của một ngành học để xây dựng tập luật tốt hơn.

- Phân tích thêm các dữ liệu đã loại bỏ khỏi dữ liệu phân lớp để có thể đưa ra

phân lớp phù hợp hơn. Ứng dụng các phương pháp cắt tỉa vào dữ liệu để giảm

thời gian chạy, tối ưu tập luật.

- Ngoài kết quả trả về 1 ngành học, sẽ hiển thị thêm kết quả 1 hoặc 2 ngành học

nữa (để làm được việc này, sẽ tiến hành gắn trọng số cho các tập luật) để cho

các em lựa chọn thêm.

- Hiện nay, dữ liệu được lưu trữ ngày một tăng, để ứng dụng KPDL vào các bài

toán này cần tiếp tục nghiên cứu các phương pháp xử lý cho bài toán với dữ liệu

lớn, nghiên cứu thêm một số ứng dụng khác của KPDL.

- Luận văn nghiên cứu thiên về tính ứng dụng trong CSDL tư vấn chọn ngành

học, nếu có điều kiện sẽ tiếp tục phát triển trên các CSDL khác nhằm mục tiêu

tìm ra một quy luật ứng dụng cho các tri thức đã được trích xuất.

Page 73: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

59

KẾ HOẠCH NGHIÊN CỨU

TT Nội dung Thời gian

Giai đoạn 1 Nghiên cứu cơ sở lý thuyết và viết báo cáo sơ lược 01/10/2013-

31/10/2013

Giai đoạn 2 Thu thập số liệu (phiếu khảo sát sinh viên (trực tiếp,

paper, website)), phân tích nghiên cứu các tài liệu, ứng

dụng và tham khảo ý kiến của các chuyên gia liên quan

đến công tác hướng nghiệp cho học sinh để có được các

kinh nghiệm từ thực tiễn.

Thực hiện nhiều biện pháp khác nhau để tiền xử lý dữ

liệu để tiện cho việc phân lớp.

Nghiên cứu bài toán phân lớp, khai thác luật phân lớp

dựa vào luật kết hợp.

Xây dựng và cài đặt ứng dụng. Ứng dụng vào dữ liệu thu

thập được. Chuẩn bị dữ liệu và tiến hành thực nghiệm,

từ đó rút ra những quy luật và những dự đoán về các

ngành nghề phù hợp cho các em lựa chọn và quyết định.

So sánh kết quả đạt được với một số công trình liên quan

để đánh giá hiệu quả thực tiễn của thuật toán, từ đó rút

ra những vấn đề cần cải thiện.

01/11/2013-

28/02/2014

Giai đoạn 3 Kiểm tra và hoàn chỉnh báo cáo theo các yêu cầu đề ra 01/03/2014-

30/03/2014

Page 74: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

60

TÀI LIỆU THAM KHẢO

[1] Lynda Jean Allen, The Appropriateness of Holland’s interest code typology for

South African field guides, Faculty of Health Sciences at the Nelson Mandela

Metropolitan University, 2005.

[2] B.K. Baradwaj, S. Pal. Mining Educational Data to Analyze Students’

Performance. International Journal of Advanced Computer-Science and

Applications. 2(6), 2011.

[3] Bramer, M., Principles of Data Mining. Spring-Verlag London limited, 2007.

[4] Ho Tu Bao, Chapter 3: Data mining with Decision Tree –

http://www.netnam.vn/unescocourse/knowlegde/knowlegd.htm.

[5] Margaret H. Dunham, Yongqiao Xiao, Le Gruenwald, Zahid Hossain, A Survey

of Association Rules, International Journel of Computer TheoryAnd

Engineering, vol.4, No.2 , 2003.

[6] Usama Fayyad, Gregory Piatetsky-Shapiro, and Padhraic Smyth. From Data

Mining to Knowledge Discovery in Databases. AAAI Press. 1996.

[7] Jiawei Han and Micheline Kamber, Data Mining: Concepts and Techniques, 3rd

Edition. Morgan Kaufmann Publishers, 2011.

[8] C. Heiner, N. Heffernan, T. Barnes. Educational Data Mining. In

Supplementary Proceedings of the 13th International Conference of Artificial

Intelligence in Education (AIED), 2007.

[9] Holland’s Theory and Career Choice is from the career key website:

www.careerkey.org/english, 2002.

[10] John L. Holland, Making Vocational Choices: A Theory of Carrers, Englewood

Cliffs, New Jersey: Prentice-Hall, 1973.

[11] Mehmed Kantardzic, Data Mining: Concepts, Models, Methods, and

Algorithms, 2nd Edition, John Wiley & Sons, 2011.

[12] Ron Kohavi, J. Ross Quinlan. Decision Tree Discovery, 1999.

Page 75: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

61

[13] Loan T. T. Nguyen, Bay Vo, Tzung-Pei Hong, Hoang Chi Thanh. CAR-Miner:

An efficient algorithm for mining class-association rules. Expert Systems with

Applications, 40(6), pp. 2305-2311, 2013.

[14] Loan T. T. Nguyen, Bay Vo, Tzung-Pei Hong, Hoang Chi Thanh: Classification

based on association rules: A lattice-based approach. Expert Syst. Appl. 39(13):

11357-11366, 2012.

[15] K. Liu, Y. Xing. A Lightweight Solution to the Educational Data Mining

Challenge. In KDD Cup 2010 Workshop, July 25, 2010.

[16] B. Liu, W. Hsu, Y. Ma. Integrating classification and association rule mining.

The 4th International Conference on Knowledge Discovery and Data Mining,

New York, USA, pp. 80-86, 1998.

[17] MU Career Center’s Guide to Holland Code: Part of the Career and Major

Exploration Guide Series, University of Missouri – MU Career Center, 2010.

[18] Tom M. Mitchell, Machine Learning, McGraw - Hill Science, 1997.

[19] J. R. Quinlan. C4.5: Program for Machine Learning. Morgan Kaufmann

Publishers, San Mateo, CA, 1993.

[20] Payam Refaeilzadeh, Lei Tang, Huan Liu. Encyclopedia of Database Systems.

pp. 532-538. Arizona State University. Springer US, 2009.

[21] Carl Edward Rasmussen, Christopher K.I. Williams. Gausian Processes for

Machine Learning. MIT Press, pp. 130-147. 2006.

[22] Slide Learning from Data: Decision trees, Amos Storkey, School of Informatics

university of Edinburgh, Semester 1, 2004.

[23] Raghu Ramakrishnan, Johannes Gehrke. Database Management Systems, 3rd

Edition. McGraw-Hill, 2003.

[24] Anurag Srivastava, Eui- Hong Han, Vipin Kumar, Vieet Singh. Parallel

Formulations of Decision-Tree Classification Algorithm. Kluwer Academic

Publisher, 1999.

Page 76: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

62

[25] John Shafer, Rakesh Agrawal, Manish Mehta. SPRINT- A Scalable Paralllel

Classifier for Data mining. In Predeeings of the 22nd International Conference

on Very Large Database, India, 1996.

[26] M.R. Tolun, H. Sever, M. Uludag, S.M. Abu-Soud. ILA-2: An inductive

learning algorithm for knowledge discovery. Cybernetics and Systems, 30(7),

pp. 609 – 628, 1999.

[27] Mehmet R. Tolun, Saleh M. Abu-Soud, An Inductive Learning Algorithm for

Production Rule Discovery, IEEE Press, 1999.

[28] M.R. Tolun, S.M. Abu-Soud. ILA: An inductive learning algorithm for

production rule discovery. Expert Systems with Applications, 14(3), pp. 361–

370, 1998.

[29] Thomas, Data Mining: Definittions and decision tree examples, State University

of New York.

[30] Witten, I.H. and E. Frank, Data Mining: Practical Machine Learning Tools and

Techniques. 3rd Edition. Morgan Kaufmann Publishers, 2011.

[31] Mohammed J. Zaki, Ching-Tien Ho, Rekesh Agrawal. Parallel Classification

for Data Mining on Shared-Memory Multiprocessors. IVM Almaden Research

Center, San Jose, CA 95120, 1998.

Page 77: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

63

PHỤ LỤC

A. Bộ công cụ trắc nghiệm định hướng nghề nghiệp của John Holland

- John Lewis Holland (21.10.1919 – 27.11.2008) là giáo sư xã hội học danh dự

tại Trường Đại học Johns Hopkins và là một nhà tâm lý học Mỹ. Ông được biết

đến như là tác giả học thuyết lựa chọn nghề nghiệp hay còn gọi là Mã Holland

(Holland Codes) và thường được viết tắt là RIASEC. [1], [10]

- Trên cơ sở lý thuyết này, John Holland đã xây dựng một bộ câu hỏi dành cho

người muốn tự tìm hiểu mình. Qua nhiều năm phát triển, bộ trắc nghiệm này

giúp cho người ta tự phát hiện được các kiểu người trội nhất đang tiềm ẩn trong

con người mình để tự định hướng khi lựa chọn nghề.

- Lý thuyết này dựa trên 8 luận điểm, trong đó 2 luận điểm đầu là: Hầu như ai

cũng có thể được xếp vào 1 trong 6 kiểu người, 6 kiểu người đó

là Realistic (người thực tế, viết tắt là R), Investigative (người thích nghiên cứu

– I), Artistic (người có tính nghệ sĩ – A), Social (người có tính xã hội –

S), Enterprising (người dám nghĩ dám làm – E) và Conventional (người công

chức – C); có 6 môi trường hoạt động ứng đúng với 6 kiểu người kể trên. Lý

thuyết này về sau lấy 6 chữ cái ghép lại thành tên RIASEC. [9], [17]

- Học thuyết của Holland đã lập luận rằng: “Thiên hướng nghề nghiệp chính là

sự biểu hiện cá tính của mỗi con người” và nó được phân loại thành 6 nhóm và

được diễn tả ở hai phương diện: tính cách con người và môi truờng làm việc.

Phân loại của ông đã được dùng để giải thích cấu trúc của cuộc số nghiên cứu

về định hướng nghề khác nhau dựa trên 2 thang đo mà ông đã phát triển.

- Thuyết Holland không giả định rằng một người chỉ có một trong 6 loại tính cách

trên thế giới. Thay vào đó, ông chỉ ra rằng bất kỳ người nào cũng có thể được

mô tả bằng việc dung hòa một trong 6 loại tính cách theo thứ tự giảm dần. Trên

cơ sở này Bộ quy tắc Holland đã diễn tả 720 mô hình tính cách khác nhau của

con người. Học thuyết này cũng áp dụng trong việc phân loại nghề, nhưng

thường thì chỉ có 2 hoặc 3 quy tắc chi phối được sử dụng để định hướng nghề.

Page 78: ỨNG DỤNG KHAI PHÁ DỮ LIỆU CHỌN NGÀNH NGHỀ …graduate.hiu.vn/Resources/Docs/SubDomain/graduate/LUAN VAN KHO… · NGƯỜI HƯỚNG DẪN ... Trong số các thuật

64

B. Thông tin về ngành học, trường đào tạo, bậc học, khối thi, điểm chuẩn.

- Căn cứ Thông tư 14/2010/TT-BGDĐT, ngày 27 tháng 04 năm 2010 của Bộ

trưởng Bộ Giáo dục và Đào tạo về việc ban hành Danh mục giáo dục, đào tạo

cấp IV trình độ cao đẳng, đại học.

- Những điều cần biết về tuyển sinh đại học, cao đẳng năm 2013. Nhà xuất bản

Giáo dục Việt Nam.

- Trang web của các trường đại học, cao đẳng phía nam.

- Cẩm nang hướng nghiệp tuyển sinh Đại học và Cao đẳng năm 2013. Nhà xuất

bản Đại học Quốc gia Tp.HCM.

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

Giám đốc Trung tâm Tin học

TS. Võ Đình Bảy Nguyễn Đặng Thế Vinh

Trường Đại học Tôn Đức Thắng