Tải bản đầy đủ (.pdf) (20 trang)

Ứng dụng thuật toán học máy svm trong tư vấn hướng nghiệp cho học sinh trung học phổ thôn (tt)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1013.48 KB, 20 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
-----------------------------------

TRẦN VĂN HẢI

ỨNG DỤNG THUẬT TOÁN HỌC MÁY SVM
TRONG TƯ VẤN HƯỚNG NGHIỆP CHO
HỌC SINH TRUNG HỌC PHỔ THÔNG

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

60.48.01.01

TÓM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI – 2017


Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: TS. Đào Đình Khả
(Ghi rõ học hàm, học vị)

Phản biện 1: …………………………………………………………………………
Phản biện 2: …………………………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công
nghệ Bưu chính Viễn thông
Vào lúc: …… giờ …… ngày …… tháng …… năm ……



Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông


1

LỜI MỞ ĐẦU
Việt Nam là nước có dân số đông, số lượng người trong độ tuổi lao động lớn, cung cấp
nguồn nhân lực dồi dào cho quá trình công nghiệp hóa, hiện đại hóa đất nước. Tuy nhiên,
trong những năm gần đây tình trạng nhiều sinh viên ra trường không tìm được việc làm hoặc
phải làm việc không đúng với chuyên môn đang diễn ra khá phổ biến. Điều này đã gây ra sự
lãng phí nguồn nhân lực lao động của xã hội. Một phần nguyên nhân là do việc đào tạo ngành
nghề còn nhiều bất hợp lý, việc phân bố nguồn nhân lực giữa các vùng miền còn chưa đồng
đều. Bên cạnh đó, nguyên nhân của thực trạng trên còn nằm ở việc phần lớn học sinh bậc học
phổ thông lựa chọn ngành nghề chủ yếu là theo cảm tính, theo xu thế hoặc do tác động từ gia
đình, cha mẹ, bạn bè, … không xác định được khả năng, năng lực bản thân có phù hợp với
ngành nghề hay không từ đó dẫn tới việc học tập và làm việc không hiệu quả, gây lãng phí
lớn cho bản thân, gia đình và xã hội.
Tư vấn hướng nghiệp là một vấn đề cần phải được quan tâm, nhất là ở cấp bậc phổ
thông. Khi được định hướng đúng đắn về nghề nghiệp, mỗi người sẽ yên tâm với nghề mình
lựa chọn, có thái độ tích cực, chủ động học tập, rèn luyện để có thể hoạt động tốt lĩnh vực
nghề nghiệp trong tương lai. Đối với học sinh ở bậc phổ thông, tư vấn hướng nghiệp sẽ giúp
các em định hướng ngành nghề một cách có cơ sở, có nhận thức đúng đắn về nghề nghiệp,
phát huy được tối đa khả năng của bản thân, khơi dậy niềm đam mê của các em đối với công
việc mình lựa chọn từ đó góp phần ổn định cuộc sống của bản thân trong tương lai đồng thời
đáp ứng được nhu cầu xã hội, tránh lãng phí trong đào tạo và sử dụng hợp lý nguồn nhân lực
góp phần vào việc phát triển kinh tế – xã hội của đất nước.
Trong việc chọn nghề, để có thể lựa chọn được một ngành nghề phù hợp ta phải dựa
vào khả năng, năng lực bản thân cũng như sở thích và tính cách của từng người. Do đó, đối

với công tác tư vấn hướng nghiệp cho học sinh trung học phổ thông, cần phải có một phương
pháp phân loại để phân nhóm các em học sinh dựa trên các yếu tố này, từ đó mới có thể đưa
ra sự tư vấn, định hướng nghề nghiệp một cách chính xác cho các em. Nói cách khác, để có
thể giải quyết được vấn đề về công tác tư vấn hướng nghiệp cho học sinh trung học phổ thông
ta cần phải giải quyết được bài toán phân loại học sinh. Đây là bài toán nhằm mục đích phân
lớp các em học sinh vào các nhóm ngành nghề khác nhau dựa trên các đặc trưng về khả năng,
năng lực, sở thích cũng như tính cách của từng em.


2

Ngày nay, đối với các bài toán phân loại, việc sử dụng các mô hình tính toán dựa trên
các phương pháp học máy ngày càng được áp dụng một cách rộng rãi và đạt được nhiều thành
công to lớn. Trong đó, phương pháp học máy Support Vector Machine (SVM) là một trong
những phương pháp được sử dụng phổ biến nhất do tính hiệu quả và độ chính xác cao khi xử
lý đối với bộ dữ liệu lớn, rất thích hợp để ứng dụng trong bài toán phân loại học sinh.
Với các lý do và mục tiêu như trên, tôi xin chọn đề tài nghiên cứu “Ứng dụng thuật
toán học máy SVM trong tư vấn hướng nghiệp cho học sinh trung học phổ thông”.
Mục tiêu cụ thể được trình bày trong luận văn như sau:
- Phát biểu bài toán về tư vấn hướng nghiệp cho học sinh trung học phổ thông.
- Nghiên cứu học máy và thuật toán học máy SVM.
- Áp dụng học máy và thuật toán học máy SVM cho bài toán tư vấn hướng nghiệp cho
học sinh trung học phổ thông.
- Cài đặt thử nghiệm thuật toán học máy SVM cho bài toán tư vấn hướng nghiệp cho
học sinh trung học phổ thông.
Nội dung của luận văn được trình bày trong 3 chương như sau:
- Chương 1: Tổng quan về học máy và bài toán tư vấn hướng nghiệp cho học sinh trung
học phổ thông.
- Chương 2: Xây dựng mô hình tư vấn hướng nghiệp cho học sinh trung học phổ thông
dựa trên phương pháp Support Vector Machine.

- Chương 3: Thực nghiệm và kết quả.

CHƯƠNG 1: TỔNG QUAN VỀ HỌC MÁY VÀ BÀI TOÁN TƯ VẤN
HƯỚNG NGHIỆP CHO HỌC SINH THPT
1.1. Tổng quan về học máy
1.1.1. Giới thiệu về học máy
Học máy (machine learning) là khả năng của chương trình máy tính sử dụng kinh
nghiệm, quan sát hoặc dữ liệu trong quá khứ để cải thiện công việc của mình trong tương lai
thay vì chỉ thực hiện theo đúng các quy tắc đã được lập trình sẵn. Chẳng hạn, máy tính có thể
học cách dự đoán dựa trên các ví dụ, hay học cách tạo ra các hành vi phù hợp dựa trên quan
sát trong quá khứ.


3

Ví dụ như chương trình có thể dựa vào dữ liệu trong quá khứ để phân loại thư điện tử
xem có phải thư rác (spam) hay không và tự động xếp thư vào thư mục tương ứng. Thư rác ở
đây được hiểu là các thư điện tử có chứa các nội dung quảng cáo hay các loại hàng miễn phí
cho dùng thử được chuẩn bị từ trước và gửi đồng loạt tới nhiều địa chỉ. Khái niệm “rác” đến
từ ý nghĩa là những thư này thường bị loại bỏ hơn là được sự lưu tâm của người nhận.

1.1.2. Ứng dụng của học máy
Ngày nay, học máy có ứng dụng rộng rãi trong nhiều ngành nghề khoa học và sản xuất,
đặc biệt là những ngành cần phân tích khối lượng dữ liệu khổng lồ, dưới đây là một số ứng
dụng cụ thể của việc áp dụng các phương pháp học máy:
- Máy tìm kiếm
- Dịch tự động
- Phân loại văn bản tự động
- Phát hiện và nhận dạng mặt người
- Chuẩn đoán y khoa

- Các hệ tư vấn, khuyến nghị

1.1.3. Phân loại các phương pháp học máy
1.1.3.1. Học có giám sát
Học có giám sát (supervised learning) là dạng học máy trong đó tập dữ liệu huấn luyện
đầu vào được cho trước dưới dạng các ví dụ với các giá trị đầu ra hay giá trị đích. Nhiệm vụ
của một thuật toán học có giám sát là dựa trên dữ liệu huấn luyện cần phải xây dựng được mô
hình hay hàm đích để dự đoán giá trị đầu ra (giá trị đích) cho các trường hợp mới.

1.1.3.2. Học không giám sát
Học không giám sát (unsupervised learning) là một phương pháp học máy nhằm tìm
ra một mô hình mà phù hợp với tập dữ liệu quan sát. Học không giám sát khác học có giám
sát ở chỗ các ví dụ được cung cấp nhưng không có giá trị đầu ra hay giá trị đích.

1.1.3.3. Học bán giám sát
Học bán giám sát (semi-supervised learning) là dạng kết hợp giữa học có giám sát và
học không giám sát. Trong đó, nó kết hợp các ví dụ có gán nhãn và không gán nhãn để sinh
ra một hàm hoặc một bộ phân loại thích hợp.


4

1.2. Tổng quan về phương pháp Support Vector Machine
1.2.1. Giới thiệu về Support Vector Machine
Support Vector Machine (SVM) là một phương pháp phân loại xuất phát từ lý thuyết
thống kê. Phương pháp này thực hiện phân lớp dựa trên nguyên lý tối thiểu rủi ro cấu trúc
SRM (Structural Risk Minimisation). SVM sẽ cố gắng tìm cách phân loại dữ liệu sao cho lỗi
xảy ra trên tập kiểm tra là nhỏ nhất.
SVM dạng chuẩn nhận dữ liệu đầu vào và phân loại chúng vào hai lớp khác nhau. Do
đó SVM còn được gọi là một thuật toán phân loại nhị phân, tuy nhiên nó vẫn có thể được mở

rộng cho phân lớp đa lớp. Với một bộ các ví dụ luyện tập thuộc hai thể loại cho trước, thuật
toán huấn luyện SVM xây dựng một mô hình SVM để phân loại các ví dụ khác vào hai thể
loại đó.

1.2.1.1. Ý tưởng của phương pháp
Cho trước một tập dữ liệu huấn luyện gồm n ví dụ, mỗi ví dụ được biểu diễn là một
điểm trong không gian véc-tơ. Phương pháp SVM sẽ tìm ra một siêu phẳng quyết định tốt
nhất có thể để chia không gian này thành hai lớp riêng biệt tương ứng là lớp “+” và lớp “-”.
Chất lượng của siêu phẳng này được quyết định bởi khoảng cách của điểm dữ liệu gần nhất
của mỗi lớp đến siêu phẳng này.
Trường hợp không thể phân chia các ví dụ bằng một siêu phẳng, phương pháp SVM
sẽ ánh xạ không gian ban đầu của các ví dụ sang một không gian khác thường là có số chiều
cao hơn, sau đó tìm siêu phẳng tốt nhất trong không gian này.

1.2.1.2. Cơ sở lý thuyết
Cho tập huấn luyện T = {(x1,y1), (x2,y2), …, (xn,yn)} trong đó xi ϵ Rn là các véc-tơ đặc
trưng và yi ϵ {-1, +1} là nhãn phân loại tương ứng của các xi. Giả sử ta chọn tập các đặc trưng
là D = {d1, d2, …, dn} thì véc-tơ đặc trưng xi = {xi1, xi2, …, xin} trong đó xij ϵ Rn. Đối với bài
toán phân lớp nhị phân, nhãn yi sẽ có hai giá trị -1 hoặc +1.
Ta cần tìm một siêu phẳng có lề lớn nhất phân tách các điểm yi = -1 và yi = +1. Mỗi
siêu phẳng có thể được biểu diễn dưới dạng
𝑓 (𝑥) = 〈𝑤. 𝑥〉 + 𝑏 = 0
Một ví dụ xi sẽ có nhãn phân loại yi được xác định như sau:


5

𝑦𝑖 = 𝑠𝑖𝑔𝑛𝑓 (𝑥𝑖 ) = 𝑠𝑖𝑔𝑛(𝑤
⃗⃗ . ⃗⃗⃗
𝑥𝑖 + 𝑏) = {


+1,
−1,

𝑤
⃗⃗ . ⃗⃗⃗
𝑥𝑖 + 𝑏 ≥ 0
𝑤
⃗⃗ . ⃗⃗⃗
𝑥𝑖 + 𝑏 < 0

1.2.2. SVM tuyến tính và SVM phi tuyến
1.2.2.1. SVM tuyến tính
1.2.2.1.1. SVM tuyến tính với tập dữ liệu phân tách được
Hai lề của siêu phẳng 𝑓(𝑥) = 〈𝑤. 𝑥〉 + 𝑏 = 0 sẽ là:
- Lề cộng: 〈𝑤. 𝑥〉 + 𝑏 = +1
- Lề trừ: 〈𝑤. 𝑥〉 + 𝑏 = −1
Độ rộng lề:
𝑚 = 𝑑+ + 𝑑− =

1
1
2
+
=
‖𝑤‖ ‖𝑤‖ ‖𝑤‖

Thuật toán SVM nhằm mục đích tìm một siêu phẳng tối ưu sao cho độ rộng của lề là
lớn nhất, điều đó tương đương với việc giải quyết bài toán tối ưu sau:
2


Tìm w và b sao cho m = ‖𝑤‖ đạt cực đại, với ràng buộc:
{

〈𝑤. 𝑥𝑖 〉 + 𝑏 ≥ 1,
〈𝑤. 𝑥𝑖 〉 + 𝑏 ≤ −1,

𝑦𝑖 = +1
𝑦𝑖 = −1

∀𝑖 = 1, 2, … , 𝑛
Với mọi ví dụ huấn luyện xi bài toán trên tương đương với bài toán cực tiểu hóa có
ràng buộc sau:
min‖𝑤‖
𝑤,𝑏

Với ràng buộc 𝑦𝑖 (〈𝑤. 𝑥𝑖 〉 + 𝑏) ≥ 1 ∀𝑖 = 1, 2, … , 𝑛
1

Bài toán này rất khó giải, do đó ta cần chuyển mục tiêu từ ‖𝑤‖ sang ‖𝑤‖2 .
2

1
min ‖𝑤‖2
𝑤,𝑏 2
Với ràng buộc 𝑦𝑖 (〈𝑤. 𝑥𝑖 〉 + 𝑏) ≥ 1, ∀𝑖 = 1, 2, … , 𝑛
Biểu thức Lagrange là:


6

𝑛

1
𝐿𝑃 = ||𝑤||2 − ∑ 𝛼𝑖 [𝑦𝑖 (〈𝑤. 𝑥𝑖 〉 + 𝑏 − 1)]
2
𝑖=1

Với αi ≥ 0 là các hệ số nhân Lagrange
Biểu thức đối ngẫu Lagrange là:
𝑛

𝑛

𝑖=1

𝑖,𝑗=1

1
𝐿𝐷 = ∑ 𝛼𝑖 − ∑ 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 〈𝑥𝑖 𝑥𝑗 〉
2
Bài toán đối ngẫu Lagrange:
𝑛

𝑛

𝑖=1

𝑖,𝑗=1

1

𝑚𝑎𝑥 ∑ 𝛼𝑖 − ∑ 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 〈𝑥𝑖 𝑥𝑗 〉
𝛼
2
Với ràng buộc
𝑛

{

∑ 𝛼𝑖 𝑦𝑖 = 0
𝑖=1

𝛼𝑖 ≥ 0, 𝑖 = 1, … , 𝑛

Công thức siêu phẳng quyết định ranh giới phân lớp:
𝑓 (𝑥) = 〈𝑤. 𝑥〉 + 𝑏 = ∑ 𝛼𝑖 . 𝑦𝑖 〈𝑥𝑖 . 𝑥〉 + 𝑏 = 0
𝑥𝑖 𝑆𝑉

Đối với một ví dụ cần phân lớp chúng ta chỉ cần tính giá trị:
𝑠𝑖𝑔𝑛(〈𝑤. 𝑥〉 + 𝑏) = 𝑠𝑖𝑔𝑛( ∑ 𝛼𝑖 . 𝑦𝑖 〈𝑥𝑖 . 𝑥〉 + 𝑏)
𝑥𝑖 𝑆𝑉

1.2.2.1.2. SVM tuyến tính với tập dữ liệu có nhiễu
Để làm việc với các dữ liệu nhiễu, ta cần nới lỏng các điều kiện bằng cách sử dụng các
biến Slack 𝜉𝑖 ≥ 0 như sau:
〈𝑤. 𝑥𝑖 〉 + 𝑏 ≥ 1 − 𝜉𝑖 nếu yi = +1
〈𝑤. 𝑥𝑖 〉 + 𝑏 ≤ −1 + 𝜉𝑖 nếu yi = -1
Đối với một ví dụ nhiễu (lỗi) thì 𝜉𝑖 ≥ 1 và ∑ 𝜉𝑖 sẽ là giới hạn trên của lỗi trong tập dữ
liệu huấn luyện.



7

Ta cần phải tích hợp lỗi trong hàm mục tiêu tối ưu bằng cách gán giá trị chi phí cho
các lỗi vào hàm mục tiêu mới. Bài toán tối ưu nguyên gốc chuyển thành:
𝑛

1
min ‖𝑤‖2 + 𝐶(∑ 𝜉𝑖 )𝑘
𝑤,𝑏,𝜉 2
𝑖=1

Với các ràng buộc
{

𝑦𝑖 (〈𝑤. 𝑥𝑖 〉 + 𝑏) ≥ 1 − 𝜉𝑖 ,
∀𝑖 = 1, 2, … , 𝑛
𝜉𝑖 ≥ 0,
∀𝑖 = 1, 2, … , 𝑛

Trong đó, C > 0 là tham số xác định mức độ chi phí đối với các lỗi. Giá trị C càng lớn
thì mức độ chi phí lỗi càng cao. Nó ảnh hưởng đến độ cực đại biên và làm giảm số lượng các
biến phụ 𝜉𝑖 . Giá trị k = 1 thường được sử dụng để có biểu thức đối ngẫu đơn giản hơn.
Ta có biểu thức Lagrange là:
𝑛

𝑛

𝑛

𝑖=1


𝑖=1

𝑖=1

1
𝐿𝑃 = ‖𝑤‖2 + 𝐶 (∑ 𝜉𝑖 ) − ∑ 𝛼𝑖 [𝑦𝑖 (〈𝑤. 𝑥𝑖 〉 + 𝑏) − 1 + 𝜉𝑖 ] − ∑ 𝜇𝑖 𝜉𝑖
2

Với αi, µi ≥ 0 là các hệ số nhân Lagrange.
Biểu thức đối ngẫu Lagrange là:
𝑛

𝑛

𝑖=1

𝑖,𝑗=1

1
L𝐷 = ∑ 𝛼𝑖 − ∑ 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 〈𝑥𝑖 𝑥𝑗 〉
2
Vậy bài toán đối ngẫu Lagrange là:
𝑛

𝑛

𝑖=1

𝑖,𝑗=1


1
max ∑ 𝛼𝑖 − ∑ 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 〈𝑥𝑖 𝑥𝑗 〉
𝛼
2
Với các ràng buộc
𝑛

∑ 𝛼𝑖 𝑦𝑖 = 0

{

𝑖=1

0 ≤ 𝛼𝑖 ≤ 𝐶, 𝑖 = 1, … , 𝑛
Siêu phẳng phân tách dữ liệu:
𝑛

𝑓 (𝑥) = 〈𝑤. 𝑥〉 + 𝑏 = ∑ 𝛼𝑖 𝑦𝑖 〈𝑥𝑖 . 𝑥〉 + 𝑏 = 0
𝑖=1

Để phân lớp một ví dụ mới ta cũng chỉ cần tính sign(〈𝑤. 𝑥〉 + 𝑏) như với trường hợp
tập dữ liệu huấn luyện có thể phân tách được.


8

1.2.2.2. SVM phi tuyến
Ngoài các trường hợp về tập dữ liệu có thể phân tách tuyến tính được, ta còn có thể
gặp những tập dữ liệu huấn luyện có ranh giới quyết định là không tuyến tính nên rất khó giải

quyết. Phương pháp được đưa ra ở đây là ta sẽ ánh xạ các véc-tơ dữ liệu x từ không gian n
chiều vào một không gian mới m chiều (m > n), gọi là không gian đặc trưng (feature space).
Không gian đặc trưng này phải đảm bảo sao cho dữ liệu huấn luyện sau khi ánh xạ sẽ trở nên
tuyến tính và phân tách dữ liệu sẽ ít lỗi hơn không gian ban đầu.
Sau quá trình chuyển đổi không gian biểu diễn, bài toán tối ưu trở thành:
𝑛

1
min ‖𝑤‖2 + 𝐶 ∑ 𝜉𝑖
𝑤,𝑏,𝜉 2
𝑖=1

Với ràng buộc:
{

𝑦𝑖 (〈𝑤. Φ(𝑥𝑖 )〉 + 𝑏) ≥ 1 − 𝜉𝑖 ,
∀𝑖 = 1, 2, … , 𝑛
𝜉𝑖 ≥ 0,
∀𝑖 = 1, 2, … , 𝑛

Bài toán đối ngẫu Lagrange tương ứng là:
𝑛

𝑛

𝑖=1

𝑖,𝑗=1

1

max ∑ 𝛼𝑖 − ∑ 𝛼𝑖 𝛼𝑗 𝑦𝑖 𝑦𝑗 〈Φ(𝑥𝑖 )Φ(𝑥𝑗 )〉
𝛼
2
Với ràng buộc:
𝑛

∑ 𝛼𝑖 𝑦𝑖 = 0

{

𝑖=1

0 ≤ 𝛼𝑖 ≤ 𝐶, 𝑖 = 1, … , 𝑛
Siêu phẳng phân tách dữ liệu:
𝑛

𝑓 (Φ(𝑥)) = 〈𝑤. Φ(𝑥)〉 + 𝑏 = ∑ 𝛼𝑖 𝑦𝑖 〈Φ(𝑥𝑖 ). Φ(𝑥)〉 + 𝑏 = 0
𝑖=1

Việc ánh xạ từ không gian ban đầu sang không gian đặc trưng mới có nhiều chiều hơn
sẽ làm cho dữ liệu trở thành phân chia tuyến tính. Tuy nhiên, việc ánh xạ như vậy sẽ đòi hỏi
cần phải tính toán các đặc trưng mới. Số lượng đặc trưng như vậy có thể rất lớn thậm chí là
vô cùng. Việc tính số lượng đặc trưng mới nhiều như vậy sẽ gặp vấn đề về chi phí, thời gian
và không thực tế. Để tránh việc tính toán các đặc trưng trong không gian mới, SVM sử dụng
các hàm nhân (kernel function).


9

Do không cần xây dựng tường mình ánh xạ Φ và sử dụng hàm nhân nên biểu thức siêu

phẳng phân tách có thể được viết lại như sau:
𝑛

𝑓(Φ(𝑥)) = ∑ 𝛼𝑖 𝑦𝑖 𝐾(𝑥𝑖 , 𝑥) + 𝑏 = 0
𝑖=1

1.2.3. SVM trong phân lớp đa lớp
1.2.3.1. Chiến lược One-against-Rest
Giả sử ta cần phải phân loại tập dữ liệu huấn luyện vào n lớp khác nhau. Chiến lược
này sẽ sử dụng n-1 bộ phân lớp và chuyển bài toán phân loại n lớp thành n bài toán phân lớp
nhị phân. Trong đó bộ phân lớp nhị phân thứ i (i = 1, 2, …, n-1) được xây dựng để phân tách
các ví dụ thuộc lớp i với tất cả các lớp còn lại.
Hàm quyết định phân lớp của lớp thứ i có dạng:
𝑓𝑖 (𝑥) = 〈𝑤𝑖 . 𝑥〉 + 𝑏𝑖 = 0
Khi đó, siêu phẳng phân chia tối ưu sẽ có dạng fi(x) = 0, các véc-tơ hỗ trợ thuộc lớp i
thỏa mãn fi(x) = 1. Nếu véc-tơ dữ liệu x thỏa mãn điều kiện fi(x) > 0 đối với duy nhất một lớp
i thì x sẽ được phân vào lớp thứ i.

1.2.3.2. Chiến lược One-against-One
Khác với chiến lước OAR, chiến lược OAO sẽ kết hợp từng đôi một các lớp với nhau
để phân loại, sau đó sử dụng phương pháp lựa chọn theo đa số để kết hợp các bộ phân loại
với nhau và xác định kết quả phân loại cuối cùng. Chiến lược này sẽ cần phải sử dụng n(n1)/2 bộ phân loại đối với trường hợp đầu ra có n nhãn.
Hàm quyết định phân lớp của lớp thứ i đối với lớp thứ j là:
𝑓𝑖𝑗 (𝑥) = 〈𝑤𝑖𝑗 . 𝑥〉 + 𝑏𝑖𝑗 = 0
𝑓𝑖𝑗 (𝑥) = −𝑓𝑗𝑖 (𝑥)
Đối với một véc-tơ x ta tính:
𝑛

𝑓𝑖 (𝑥) = ∑ 𝑠𝑖𝑔𝑛(𝑓𝑖𝑗 (𝑥))
𝑗≠𝑖,𝑗=1


Trong đó: 𝑠𝑖𝑔𝑛(𝑥) = {

1, 𝑥 > 0
0, 𝑥 ≤ 0


10

Ví dụ x sẽ được phân vào lớp i khi: arg max 𝐷𝑖 (𝑥)
𝑖=1,…,𝑛

1.3. Bài toán tư vấn hướng nghiệp cho học sinh trung học phổ thông
1.3.1. Giới thiệu về tư vấn hướng nghiệp
1.3.1.1. Khái niệm tư vấn hướng nghiệp
Tư vấn hướng nghiệp được hiểu là hệ thống những biện pháp tâm lí, giáo dục và một
số biện pháp khác được các chuyên viên tư vấn hướng nghiệp, các thầy/cô giáo làm nhiệm vụ
tư vấn hướng nghiệp, … (gọi chung là tư vấn viên) sử dụng nhằm phát hiện, đánh giá sở thích
nghề nghiệp, khả năng về thể chất, trí tuệ của học sinh, sinh viên, thanh, thiếu niên, … (gọi
chung là người được tư vấn); đối chiếu các khả năng thực có của mỗi em với những yêu cầu
của bậc học cao hơn hoặc những yêu cầu của nghề đặt ra đối với người lao động, có cân nhắc
đến nhu cầu nhân lực của địa phương và xã hội. Từ đó, giúp cho người được tư vấn tự tìm ra
giải pháp và từng bước giải quyết vấn đề để chọn được hướng học hoặc chọn nghề phù hợp.

1.3.1.2. Mục đích của tư vấn hướng nghiệp
- Phát hiện và giúp các em đánh giá đúng sở thích nghề nghiệp, khả năng của bản thân;
hiểu rõ hơn yêu cầu của nghề và nhu cầu lao động của xã hội.
- Góp phần xác định con đường tiếp tục phát triển nhân cách và sự phù hợp nghề của
các em trong tương lai.


1.3.1.3. Nhiệm vụ của tư vấn hướng nghiệp
- Phát hiện và đánh giá được những sở thích, khả năng nghề nghiệp hiện có của học
sinh.
- Khuyến khích, động viên học sinh tự giáo dục, rèn luyện và phát triển những khả
năng còn thiếu.
- Hướng dẫn/hỗ trợ học sinh chuẩn bị sẵn sàng về tâm lí cũng như những hiểu biết thực
tế đối với nghề nghiệp mà các em định chọn.
- Giúp học sinh tìm ra giải pháp và từng bước giải quyết vấn đề để chọn được hướng
học hoặc chọn nghề phù hợp.

1.3.1.4. Các loại hình tư vấn hướng nghiệp


11

- Tư vấn hướng nghiệp theo nhóm: là loại hình tư vấn hướng nghiệp mà trong đó, nhiều
học sinh cùng lớp hoặc cùng khối lớp được tư vấn hướng nghiệp trong cùng thời gian, không
gian nhất định. Tùy điều kiện, khả năng của từng cơ sở giáo dục và người làm tư vấn hướng
nghiệp, có thể tổ chức tư vấn hướng nghiệp nhóm nhỏ hoặc nhóm lớn.
- Tư vấn hướng nghiệp cá nhân: là loại hình tư vấn dành cho một số ít em học sinh cần
hỗ trợ đặc biệt. Khi tư vấn hướng nghiệp cá nhân, tư vấn viên làm việc với từng học sinh có
nhu cầu được tư vấn đặc biệt. Thông thường, tư vấn hướng nghiệp cá nhân đòi hỏi tư vấn viên
phải có kiến thức, kinh nghiệm về tâm lí và tư vấn, có hiểu biết về văn hóa, phong tục của đối
tượng tư vấn và có khả năng sư phạm.
- Tư vấn tuyển sinh: là một loại hình tư vấn hướng nghiệp, trong đó học sinh được
cung cấp thông tin về các cơ sở đào tạo sau khi tốt nghiệp trung học phổ thông, từ trường
nghề, trung cấp nghề đến các trường cao đẳng, đại học để các em có thêm thông tin trước khi
đăng ký tuyển sinh vào các cơ sở đào tạo.

1.3.2. Cơ sở lý thuyết tư vấn hướng nghiệp

1.3.2.1. Mô hình lý thuyết cây nghề nghiệp
Mô hình lý thuyết cây nghề nghiệp được lập ra để giải thích vai trò quan trọng của mối
tương quan chặt chẽ giữa sở thích, khả năng cá tính và giá trị nghề nghiệp của một người với
khả năng tuyển dụng đối với họ sau khi tốt nghiệp chương trình đào tạo. Mô hình này khá
đơn giản, nhưng nếu hiểu rõ nội dung cơ bản của mô hình sẽ giúp người được tư vấn tránh
được những quan niệm nhầm lẫn về hướng nghiệp đang xảy ra tương đối phổ biến ở nước ta.
Sở thích, khả năng, cá tính và giá trị nghề nghiệp của mỗi người đóng vai trò rất quan
trọng trong việc chọn hướng học, chọn nghề phù hợp và nó được coi là phần “rễ” của cây
nghề nghiệp. Rễ có khỏe thì cây mới khỏe và ra hoa, kết trái như mong muốn của người trồng
cây. Vì vậy, muốn lựa chọn nghề nghiệp phù hợp, trước hết phải hiểu rõ sở thích, khả năng,
cá tính và giá trị nghề nghiệp của bản thân và phải dựa vào chính những hiểu biết này để lựa
chọn nghề nghiệp. Nói cách khác là phải chọn nghề theo “rễ” vì đây là yếu tố có ảnh hưởng
mang tính quyết định tới sự kết trái của cây nghề nghiệp. Thực tế đã chứng minh, những
người quyết tâm chọn nghề và theo đuổi nghề phù hợp với “rễ” sẽ có nhiều khả năng thu được
những “quả ngọt” trong hoạt động nghề nghiệp như: có cơ hội việc làm cao, được nhiều người
tôn trọng, lương cao, công việc ổn định …


12

1.3.2.2. Lý thuyết mật mã Holland
Lý thuyết mật mã Holland đưa ra một số luận điểm rất có giá trị trong hướng nghiệp,
trong đó có 2 luận điểm cơ bản là:
- Nếu một người chọn được công việc phù hợp với tính cách của họ thì họ sẽ dễ dàng
phát triển và thành công trong nghề nghiệp. Nói cách khác, những người làm việc trong môi
trường tương tự như tính cách của mình hầu hết sẽ thành công và hài lòng với công việc.
- Hầu như ai cũng có thể được xếp vào 1 trong 6 kiểu tính cách và có 6 môi trường
hoạt động tương ứng với 6 kiểu tính cách, đó là: Nhóm kĩ thuật (KT); Nhóm nghiên cứu (NC);
Nhóm nghệ thuật (NT); Nhóm xã hội (XH); Nhóm quản lí (QL); Nhóm nghiệp vụ (NV).


1.3.3. Các kỹ năng và liệu pháp tư vấn hướng nghiệp
1.3.3.1. Sáu kỹ năng tư vấn hướng nghiệp
- Hành vi quan tâm: bao gồm kỹ năng thực hiện hành vi quan tâm và kỹ năng lắng
nghe của tư vấn viên dành cho người được tư vấn, thể hiện qua âm thanh giọng nói, ngôn ngữ
cơ thể, vẻ mặt, cách dùng từ ngữ, sự lắng nghe chăm chú.
- Kỹ năng đặt câu hỏi: tư vấn viên cần phải có kỹ năng đặt câu hỏi để thu thập những
thông tin cần thiết từ người được tư vấn, đồng thời hiểu rõ hơn tâm tư, hoàn cảnh, mong muốn
cũng như vấn đề thật sự của người được tư vấn. Kỹ năng đặt câu hỏi bao gồm khả năng dùng
các loại câu hỏi thường dùng trong tư vấn hướng nghiệp như câu hỏi mở, câu hỏi đóng, câu
hỏi thăm dò, câu hỏi dẫn dắt/đoán trước...
- Kỹ năng phản hồi cảm xúc: kỹ năng phản hồi cảm xúc là kỹ năng hỏi và nhắc lại cảm
xúc của người được tư vấn. Cảm xúc ở đây kể cả tiêu cực và tích cực, từ buồn, chán, bực bội,
hờn giận đến vui vẻ, bình an, hy vọng.
- Kỹ năng đối mặt: kỹ năng đối mặt được dùng trong các trường hợp người được tư
vấn có rất nhiều mâu thuẫn với bản thân. Những mâu thuẫn này là nguyên nhân chính và cũng
là rào cản đối với sự phát triển nghề nghiệp của họ.
- Kỹ năng tập trung: kỹ năng này được áp dụng trong trường hợp người được tư vấn
có nhiều vấn đề cần làm rõ và giải quyết trước khi đưa ra quyết định chọn hướng học hoặc
chọn ngành nghề.


13

- Kỹ năng phản hồi ý tưởng: kỹ năng phản hồi ý tưởng là kỹ năng hỏi và nhắc lại ý
tưởng, câu chuyện của người được tư vấn. Kỹ năng phản hồi ý tưởng thường được sử dụng
cùng với kỹ năng đặt câu hỏi.

1.3.3.2. Hai liệu pháp tư vấn hướng nghiệp
- Liệu pháp kể chuyện (tư vấn tường thuật): nhấn mạnh vào sử dụng loại các câu hỏi
mở để người được tư vấn tin cậy tâm sự câu chuyện của họ. Liệu pháp này giúp cho người

được tư vấn lắng nghe cảm xúc, nắm được sự thật trong câu chuyện mà người được tư vấn
đang kể.
- Liệu pháp tập trung vào giải pháp: chú trọng đến việc giải quyết những khó khăn tại
thời điểm hiện tại và tương lai, thay cho việc suy nghĩ và hối tiếc về quá khứ. Liệu pháp này
giúp người được tư vấn xây dựng mục tiêu của mình và từng bước xác định các bước để đạt
được mục tiêu ấy.

1.3.4. Mô tả bài toán tư vấn hướng nghiệp cho học sinh THPT
Bài toán tư vấn hướng nghiệp cho học sinh trung học phổ thông là bài toán nhằm mục
đích giúp cho học sinh có thể tự nhận ra khả năng của bản thân, từ đó xác định được ngành
nghề phù hợp với mình. Dó đó, quá trình giải quyết bài toán tư vấn hướng nghiệp còn được
xem như quá trình hình thành và phát triển các năng lực tự hướng nghiệp cho học sinh. Để
làm được điều này, người làm công tác tư vấn phải nắm vững được cơ sở lý thuyết cũng như
vận dụng linh hoạt các kỹ năng và liệu pháp tư vấn hướng nghiệp thì mới có thể đạt được hiệu
quả trong việc giúp các em học sinh xác định ngành nghề phù hợp với bản thân mình.
Nhằm mục đích hỗ trợ các tư vấn viên trong việc giải quyết bài toán tư vấn hướng
nghiệp và nâng cao hiệu quả của việc tư vấn hướng nghiệp cho học sinh trung học phổ thông,
luận văn mong muốn xây dựng mô hình phân loại đối tượng học sinh và dự đoán xu hướng
nghề nghiệp của các em dựa theo phương pháp học máy, qua đó giúp các em có lựa chọn
ngành nghề phù hợp với bản thân một cách chủ động và có tính khoa học. Trong khuôn khổ
của luận văn, quá trình phân loại sẽ được giới hạn trong bài toán giúp các em học sinh lựa
chọn ngành học, ngành thi vào bậc học đại học phù hợp với bản thân.


14

CHƯƠNG 2: XÂY DỰNG MÔ HÌNH TƯ VẤN HƯỚNG NGHIỆP
CHO HỌC SINH THPT DỰA TRÊN PHƯƠNG PHÁP SUPPORT
VECTOR MACHINE
2.1. Đặt vấn đề bài toán

Với mục đích nhằm nâng cao hiệu quả của công tác tư vấn hướng nghiệp tại các trường
trung học phổ thông, luận văn mong muốn xây dựng mô hình bài toán tư vấn hướng nghiệp
dựa trên một phương pháp nghiên cứu cụ thể, có tính khoa học, qua đó hỗ trợ các tư vấn viên
trong công tác tư vấn hướng nghiệp cho các em học sinh và giúp các em có thể đưa ra lựa
chọn ngành nghề một cách phù hợp nhất với bản thân mình. Cụ thể ở đây, luận văn sẽ xây
dựng mô hình bài toán tư vấn hướng nghiệp cho học sinh trung học phổ thông dựa trên phương
pháp học máy Support Vector Machine (SVM).
Vây, bài toán đặt ra là: cho trước một mẫu dữ liệu về thông tin học sinh, sử dụng
phương pháp SVM để xác định mẫu đó thuộc nhóm ngành nghề phù hợp đã có nào?

2.2. Mô hình bài toán
Với cơ sở dữ liệu về thông tin cá nhân, kết quả học tập năm lớp 12, dữ liệu hồ sơ tư
vấn của học sinh và dữ liệu trúng tuyển vào các nhóm ngành của các thí sinh trong kỳ thi
trung học phổ thông quốc gia, luận văn mong muốn xây dựng được một mô hình phân lớp
nhóm ngành nghề dựa trên phương pháp học máy SVM để giúp các em học sinh có thể xác
định được các nhóm ngành nghề phù hợp với các em từ đó gợi ý, định hướng cho các em
trong việc lựa chọn ngành học, ngành thi trong quá trình đăng ký nguyện vọng xét tuyển vào
đại học.

Hình 2.1. Mô hình phân lớp nhóm ngành nghề

2.3. Quy trình phân lớp
Đối với bài toán phân lớp nhóm ngành nghề dựa trên phương pháp SVM, quy trình
phân lớp được thực hiện theo các bước như sau:


15

- Bước 1: Thu thập dữ liệu thông tin học sinh
- Bước 2: Tiền xử lý dữ liệu

- Bước 3: Phân chia dữ liệu thành tập dữ liệu HL và KC
- Bước 4: Xây dựng mô hình phân lớp theo phương pháp SVM trên tập HL
- Bước 5: Sử dụng mô hình phân lớp có được để phân loại với tập dữ liệu KC
- Bước 6: Phân tích và đánh giá kết quả của mô hình phân lớp

Hình 2.2. Quy trình phân lớp nhóm ngành nghề

CHƯƠNG 3: THỰC NGHIỆM VÀ KẾT QUẢ
3.1. Công cụ thực nghiệm
Công cụ thực nghiệm: phần mềm Weka version 3.8.1.
Chương trình được thực hiện với SMO Classifier trong bộ thư viện
MultiClassClassifier của Weka.
Máy tính tiến hành thực nghiệm:
- OS: Microsoft Windows 10 64bits
- CPU: Intel Core i3-2350M, 2.3GHz
- RAM: 4GB

3.2. Chuẩn bị dữ liệu
Dữ liệu chuẩn bị cho việc tiến hành thực nghiệm được trích xuất từ học bạ, hồ sơ tư
vấn và nguyện vọng đăng ký xét tuyển đại học năm 2016 của các em học sinh thuộc 17 trường
trung học phổ thông trên địa bàn tỉnh Ninh Bình. Qua quá trình tiền xử lý tâp dữ liệu thu được
bao gồm 3603 mẫu đối tượng học sinh thuộc 08 nhóm ngành nghề khác nhau.


16

Số lượng mẫu các nhóm ngành nghề tập dữ liệu 1 (1800 mẫu)
STT

Tên nhóm ngành nghề


SL

Mẫu

Mẫu

mẫu

HL

KC

1

Nhóm ngành Khoa học tự nhiên – Kỹ thuật

294

205

89

2

Nhóm ngành Công nghệ thông tin

242

169


73

3

Nhóm ngành Tài chính – Kế toán

316

221

95

4

Nhóm ngành Quản trị kinh doanh

241

168

73

5

Nhóm ngành Công nghệ sinh học – Môi trường

218

152


66

6

Nhóm ngành Khoa học xã hội – Nhân văn

227

158

69

7

Nhóm ngành Ngoại giao – Ngoại ngữ

142

99

43

8

Nhóm ngành Du lịch – Nhà hàng – Khách sạn

120

84


36

Số lượng mẫu các nhóm ngành nghề tập dữ liệu 2 (3603 mẫu)
STT

Tên nhóm ngành nghề

SL

Mẫu

Mẫu

mẫu

HL

KC

1

Nhóm ngành Khoa học tự nhiên – Kỹ thuật

589

414

175


2

Nhóm ngành Công nghệ thông tin

485

330

155

3

Nhóm ngành Tài chính – Kế toán

632

437

195

4

Nhóm ngành Quản trị kinh doanh

482

351

131


5

Nhóm ngành Công nghệ sinh học – Môi trường

436

309

127

6

Nhóm ngành Khoa học xã hội – Nhân văn

455

326

129

7

Nhóm ngành Ngoại giao – Ngoại ngữ

284

191

93


8

Nhóm ngành Du lịch – Nhà hàng – Khách sạn

240

164

76

3.3. Thực hiện thực nghiệm
Quy trình thực hiện thực nghiệm được tiến hành theo các bước sau:


17

- Bước 1: Khởi động Weka
- Bước 2: Tải dữ liệu tập huấn luyện
- Bước 3: Chọn tab Classify
- Bước 4: Tải dữ liệu tập kiểm chứng
- Bước 5: Chọn MultiClassClassifier, các thông số classifier chọn SMO và method
chọn 1-against-all (chiến lược OAR) hoặc 1-against-1 (chiến lược OAO)
- Bước 6: Chọn Start
- Bước 7: Lưu lại thời gian xây dựng mô hình, bảng phân tích độ chính xác và bảng
kết quả phân lớp các nhóm ngành nghề.

3.4. Kết quả thực nghiệm
3.4.1. Kết quả thực nghiệm với tập dữ liệu 1 (1800 mẫu)
So sánh giữa hai chiến lược OAO và OAR với tập dữ liệu 1
Chiến lược


Độ chính xác phân lớp (%)

Thời gian xây dựng mô hình (giây)

OAO

89,8

4,2

OAR

74,1

4,9

3.4.2. Kết quả thực nghiệm với tập dữ liệu 2 (3603 mẫu)
So sánh giữa hai chiến lược OAO và OAR với tập dữ liệu 2
Chiến lược

Độ chính xác phân lớp (%)

Thời gian xây dựng mô hình (giây)

OAO

91,7

6,1


OAR

75,4

18,6

3.5. Phân tích và đánh giá kết quả
- Tỷ lệ dự đoán đúng theo chiến lược OAO đều cao hơn khá nhiều so với chiến lược
OAR (89,8% so với 74,1% đối với tập dữ liệu 1800 mẫu và 91,7% so với 75,4% đối với tập
dữ liệu 3603 mẫu).
- Với tập dữ liệu có số mẫu càng lớn thì độ chính xác càng cao ở cả hai chiến lược
OAO và OAR (tăng 1,9% đối với chiến lược OAO và 1,3% đối với chiến lược OAR).
- Thời gian xây dựng mô hình của hai chiến lược không có sự khác biệt đáng kể khi
thực hiện trên tập dữ liệu 1800 mẫu (chiến lược OAO là 4,2 giây và OAR là 4,9 giây). Tuy


18

nhiên, khi thực hiện trên tập dữ liệu 3603 mẫu (số mẫu tăng gấp đôi) thì thời gian xây dựng
mô hình của chiến lược OAR tăng lên khá nhiều (18,6 giây) trong khi chiến lược OAO thời
gian xây dựng mô hình tăng không đáng kể (6,1 giây).
Qua sự so sánh độ chính xác và thời gian xây dựng mô hình của hai chiến lược, có thể
thấy, chiến lược OAO luôn cho tỷ lệ dự đoán đúng cao hơn và thời gian xây dựng mô hình
thấp hơn so với chiến lược OAR. Do đó có thể kết luận, đối với bài toán phân lớp ngành nghề,
chiến lược OAO là phù hợp hơn so với chiến lược OAR.

KẾT LUẬN
Những đóng góp của luận văn
Qua nghiên cứu và thực nghiệm, luận văn đã đạt được một số kết quả như sau:

- Nghiên cứu tổng quan về học máy, các phương pháp học máy cơ bản và các ứng
dụng trong thực tiễn của học máy.
- Tìm hiểu về vấn đề tư vấn hướng nghiệp, các loại hình tư vấn hướng nghiệp và những
yếu tố quyết định mức độ phù hợp trong việc lựa chọn ngành nghề.
- Nghiên cứu thuật toán SVM và ứng dụng vào bài toán phân lớp nhóm ngành nghề
nhằm hỗ trợ việc tư vấn hướng nghiệp cho học sinh trung học phổ thông.
- Tiến hành thu thập dữ liệu đối tượng học sinh trung học phổ thông, thực hiện xây
dựng mô hình phân lớp và thực hiện thực nghiệm, đánh giá kết quả. Bước đầu cho thấy ứng
dụng SVM vào phân lớp nhóm ngành nghề đã đạt hiệu quả khả quan.
Hướng phát triển của luận văn
Tuy đã đạt được một số kết quả khả quan nhưng luận văn vẫn còn những hạn chế nhất
định do điều kiện về kiến thức khoa học của học viên cũng như về thời gian nghiên cứu. Dưới
đây là một số hướng nghiên cứu tiếp theo của luận văn do học viên đặt ra:
- Nghiên cứu sâu về vấn đề tư vấn hướng nghiệp để lựa chọn được thêm các đặc trưng
mang tính quyết định cho việc lựa chọn ngành nghề.
- Tiếp tục nghiên cứu thêm về thuật toán SVM và một số thuật toán học máy khác để
tăng độ chính xác của việc phân lớp.
- Mở rộng các nhóm ngành nghề và đa dạng hóa các đối tượng cần phân lớp.
- Phát triển bài toán phân nhóm ngành nghề thành ứng dụng để hỗ trợ công tác tư vấn
hướng nghiệp.



×