ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
TRƯƠNG ĐÌNH THIÊN
ỨNG DỤNG KỸ THUẬT HỌC MÁY ĐỂ DỰ ĐOÁN
KHẢ NĂNG CHUYỂN VIỆC CỦA NHÂN VIÊN
TRONG NGÀNH CÔNG NGHỆ THÔNG TIN
Chuyên ngành
Mã số
: Khoa học máy tính
: 8480101
TĨM TẮT LUẬN VĂN THẠC SĨ
KHOA HỌC MÁY TÍNH
ĐÀ NẴNG - NĂM 2022
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI
TRƯỜNG ĐẠI HỌC BÁCH KHOA
Người hướng dẫn khoa học: TS. TRƯƠNG NGỌC CHÂU
Phản biện 1: TS. Bùi Thị Thanh Thanh
Phản biện 2: TS. Lâm Tùng Giang
Luận văn đã được bảo vệ trước Hội đồng chấm Luận văn
tốt nghiệp thạc sĩ ngành Khoa học máy tính họp tại Trường Đại
học Bách khoa vào ngày 22 tháng 7 năm 2021
Có thể tìm hiểu luận văn tại:
- Trung tâm học liệu và TT Đại Học Bách khoa_ ĐHĐN
- Thư viện Khoa Công Nghệ Thông Tin, Trường Đại học Bách
Khoa – Đại học Đà Nẵng
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
1
MỞ ĐẦU
1. Lý do chọn đề tài
Nhân viên trong lĩnh vực cơng nghệ thơng tin rất tích cực
trong sự nghiệp của họ. Nhân viên thường xuyên chuyển việc một
cách đột xuất với mật độ chuyển việc cao. Trong trường hợp đó,
cơng ty thường giải quyết tình trạng cạn kiệt nguồn nhân lực. Hiểu
được khả năng di chuyển công việc của nhân viên có thể mang lại lợi
ích cho cơng ty theo nhiều cách khác nhau.
Trong khi hầu hết các nghiên cứu tập trung vào dự đốn chức
danh cơng việc tiếp theo, vấn đề dự báo thời gian làm việc và tỉ lệ
chuyển việc của nhân viên ở cấp độ cá nhân ít được chú ý. Các
phương pháp nghiên cứu trước đây như hệ thống gợi ý
(recommendation system) [1][2], phương pháp khai thác dữ liệu lớn
(data mining) [3], phương pháp dự đốn tuần tự dựa vào xích
Markov (Markov chain) [4] hầu hết sử dụng rất nhiều thông tin từ
nhân viên như mức lương, tình trạng gia đình, khoản cách làm
việc,… đây là các thơng tin nhạy cảm, khó thu thập nên khơng có
tính tổng qt cao. Hơn nữa, các phương pháp trước đây coi các kinh
nghiệm khác nhau của nhân viên là quan trọng như nhau nên các mơ
hình trí tuệ nhân tạo không thể tận dụng mối liên hệ tiềm năng giữa
các kinh nghiệm. Để giải quyết các vấn đề trên, chúng tơi xây dựng
một mơ hình mới với cơ chế chú ý (attention mechanism) và phương
pháp phân tích tỷ lệ sống sót (survival analysis).
Cụ thể hơn, cơ chế chú ý mang lại nhiều hiểu biết hơn cho các
thông tin ẩn đã học. Phương pháp phân tích tỷ lệ sống sót dựa vào
những sự kiện diễn ra trong quá khứ dể dự đoán các sự kiện sẽ diễn
ra trong tương lai bằng phương pháp tính tốn hàm sự sống (survival
function) của đối tượng. Khác với các nghiên cứu trước đây, mơ hình
của chúng tơi có thể sử dụng hiệu quả kinh nghiệm của nhân viên
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
2
trước đó và linh hoạt thích ứng với các thơng tin có tầm quan trọng
khác nhau. Phương pháp của chúng tôi được áp dụng cho 10.000 hồ
sơ trong thế giới thực và cho thấy kết quả đáng kể vượt trội so với
mơ hình cơ sở và các mơ hình được xây dựng trước đó.
2. Mục đích của dự án
- Giải quyết vấn đề thiếu hụt nhân lực bằng cách cung cấp thông tin
cần thiết cho bộ phân nhân sự của công ty để đưa ra những quyết
định kịp thời.
- Giúp việc tuyển dụng nhân tài, giữ chân nhân tài, phát triển nhân tài
dễ dàng hơn ở góc độ cơng ty.
3. Mục tiêu của dự án
- Dự đoán tỉ lệ chuyển việc của nhân viên bằng kỹ thuật học
máy
- Dự đoán chức danh của công việc tiếp theo của nhân viên
bằng kỹ thuật học máy
- Dự đoán thời gian làm việc ở vị trí mới của nhân viên bằng
kỹ thuật học máy
- Áp dụng cơ chế chú ý để tăng độ chính xác của mơ hình
- Áp dụng phân tích tỷ lệ sống sót để dự đốn tỉ lệ chuyển
việc.
- Giúp việc tuyển dụng nhân tài, giữ chân nhân tài, phát triển nhân
tài dễ dàng hơn ở góc độ cơng ty.
4. Phạm vi nghiên cứu
- Ngơn ngữ lập trình Python
- Học sâu (Deep learning)
- Cơ chế chú ý (Attention mechanism)
- Phân tích tỷ lệ sống sót (Survival analysis)
- Sử dụng Tensorflow, Selenium
5. Phương pháp nghiên cứu
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
3
5.1 Phần lý thuyết:
- Lý thuyết về cách áp dụng học sâu để dự đốn cơng việc tiếp theo
- Lý thuyết về phân tích tỷ lệ sống sót (survival analysis)
- Lý thuyết về cơ chế chú ý (attention mechanism)
- Cách đo lường độ chính xác của mơ hình
5.2 Phần lập trình:
- Xây dựng mơ hình dự đốn
- Áp dụng phân tích tỷ lệ sống sót vào mơ hình đề xuất
- Áp dụng cơ chế chú ý vào mơ hình đề xuất
6. Ý nghĩa khoa học và thực tiễn của đề tài
6.1 Ý nghĩa khoa học
Xây dựng một mơ hình hồn tồn mới để giải quyết bài tốn
dự đốn tỉ lệ nghỉ việc. Khơng chỉ vậy, nghiên cứu cịn góp phần chỉ
ra ưu nhược điểm của từng loại thuật toán cũng như tìm ra ưu điểm
vượt trội của cơ chế chú ý trong xử lý dữ liệu tuần tự. Từ đó chỉ ra
một hướng mới cho các nghiên cứu tương tự trong tương lai.
Áp dụng phương pháp phân tích tỉ lệ sống sót, vốn đã được
sử dụng nhiều trong các nghiên cứu y khoa, vào một lĩnh vực hoàn
toàn mới. Phương pháp này có rất nhiều tiềm năng trong việc giải
quyết các bài toán dự báo trong tương lai.
6.2 Ý nghĩa thực tiễn
Luận văn nghiên cứu này giúp các doanh nghiệp có thêm
nhiều cơ sở trong việc giải quyết bài tốn nhân sự, đặc biệt là trong
việc giữ chân nhân tài, chiêu mộ nhân tài và phát triển nhân tài.
Không chỉ vậy, mơ hình đề xuất trong luận văn có thể được
ứng dụng rộng rãi vào các lĩnh vực khác nhau để giải quyết những
bài toán tương tự.
7. Kết cấu của luận văn
•
Chương 1: Lý thuyết và cơng nghệ. Nghiên cứu lý thuyết
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
4
và cơng nghệ được sử dụng trong dự án
•
Chương 2: Hệ thống thu thập dữ liệu. Trình bày các cách
thu thập thông tin từ khuôn mẫu của hồ sơ ứng viên để xây
dựng tập huấn luyện.
•
Chương 3: Phân tích, thiết kế, xây dựng mơ hình. Trình
bày các khó khăn khi xây dựng đề tài, phương pháp thiết kế,
phương pháp xây dựng mơ hình
•
Kết luận. Trình bày các kết quả đạt được, các điểm cần cải
thiện và định hướng của dự án trong tương lai.
Kết luận. Trình bày các kết quả đạt được, các điểm cần cải thiện và
định hướng của dự án trong tương lai.
CHƯƠNG 1: LÝ THUYẾT VÀ CÔNG NGHỆ
1.1 Dự đoán tuần tự
1.2 Mạng nơ-ron
Mạng nơ-ron nhân tạo là một trong những cơng cụ chính
được sử dụng trong học máy. Như phần "thần kinh" trong tên gọi của
chúng, chúng là hệ thống lấy cảm hứng từ não bộ nhằm tái tạo cách
con người học hỏi. Mạng nơ-ron bao gồm các lớp đầu vào và đầu ra,
cũng như (trong hầu hết các trường hợp) một lớp ẩn bao gồm các đơn
vị biến đổi đầu vào thành thứ mà lớp đầu ra có thể sử dụng. Mạng
nơ-ron là một cơng cụ tuyệt vời để tìm kiếm và trích xuất các mẫu
(pattern) phức tạp mà con người không thể làm được.
1.3. Mạng nơ-ron hồi quy
1.3.1 Dữ liệu tuần tự (sequence data)
Dữ liệu có thứ tự và dựa vào thời gian như kinh nghiệm làm
việc được gọi là dữ liệu tuần tự (sequence data) và dữ liệu theo thời
gian (time-series data). Kích thước của dữ liệu tuần tự là không cố
định và có thể thay đổi tùy thuộc vào độ dài của kinh nghiệm làm việc
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
5
của mỗi nhân viên. Việc tái định hình (reshape) dữ liệu để đưa các dữ
liệu tuần tự về cùng một hình (shape) là cần thiết khi làm việc với dữ
liệu tuần tự.
1.3.2 Mơ hình mạng nơ-ron hồi quy
Mạng nơ-ron hồi quy (Recurrent neural network hay RNN)
[5] là một lớp của mạng thần kinh nhân tạo, nơi kết nối giữ các nút
để tạo thành độ thị có hướng dọc theo một tình tự thời gian. Điều này
cho phép mạng thể hiện hành vi động tạm thời. Có nguồn gốc từ
mạng thần kinh truyền thẳng, RNN có thể dùng trạng thái trong (bộ
nhớ) để xử lý các chuỗi đầu vào co độ dài thay đổi. Điều này làm cho
RNN có thể áp dụng cho các tác vụ như nhận dạng chữ viết tay, nhận
dạng tiếng nói, dự đốn thị trường, dự đốn sự kiện
1.3.3 Bộ nhớ dài-ngắn hạn
Bộ nhớ dài-ngắn hạn (Long-short term memory hay LSTM)
[6] là một mạng thần kinh hồi quy (RNN) nhân tạo được sử dụng
trong lĩnh vực học sâu. Không giống như các mạng thần kinh truyền
thẳng tiểu chuẩn, LSTM có chứa các kết nối phản hồi. Mạng không
chỉ xử lý các điểm dữ liệu đơn lẻ (như các hình ảnh) mà cịn xử lý
tồn bộ chuỗi dự liệu (như một video).
1.3.4 Phân loại – Lớp kết nối đầy đủ
Lớp kết nối đầy đủ (Fully-connected layer) hay Perceptron
nhiều lớp (Multi-layer Perceptron) là một cách nhanh nhất để học các
tổ hợp phi tuyến tính của các đối tượng cấp cao như được biểu thị
bằng đầu ra của lớp chập. Lớp kết nối đầy đủ là một hàm phi tuyến
tính trong không gian và được dùng để chuyển các thuộc tính ẩn đã
được học thành các kết quả đầu ra.
1.4 Mơ hình mã hóa – giải mã
Để giải quyết các bài toán với dữ liệu đầu vào là dữ liệu tuần
tự có kích thước khác nhau. Mơ hình mã hóa – giải mã (Encoder-
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
6
Decoder model) đã được đưa ra để giải quyết các bài tốn tuần tự
(seq2seq).
Mơ hình mã hóa – giải mã bao gồm:
1. Mã hóa các dữ liệu đầu vào thành một số biểu diễn trừu
tượng.
2. Thao tác mã hóa chuỗi số.
3. Giải mã chuỗi số thành chuỗi mục tiêu.
1.5 Nhúng từ
Nhúng từ (word embedding) [7] là một không gian vector
dùng để biểu diễn dữ liệu có khả năng miêu tả được mối liên hệ, sự
tương đồng về mặt ngữ nghĩa, ngữ cảnh (context) của dữ liệu. Không
gian này bao gồm nhiều chiều và các từ trong khơng gian đó mà có
cùng văn cảnh hoặc ngữ nghĩa sẽ có vị trí gần nhau. Ví dụ như ta có
hai câu: "Hơm nay ăn táo " và "Hơm nay ăn xồi ".
1.6 Cơ chế chú ý
Từ cách con người đọc ngày tháng, chúng ta khơng đọc tồn
bộ văn bản và sau đó viết ra bản dịch một cách độc lập ở mỗi ký tự.
Một cách trực quan, một người sẽ hiểu rằng các ký tự “Jan” tương
ứng với tháng đầu tiên, “5” tương ứng với ngày và “2016” tương ứng
với năm. Cơ chế chú ý (attention mechanism) đã được đưa ra để cải
thiện mơ hình mã hóa – giải mã. Thực chất cơ chế chú ý là cơ chế
giúp mơ hình có thể tập trung vào các phần quan trọng trên dữ liệu
bằng việc tạo ra một trọng số cho từng chuỗi đầu ra từ RNN, việc đó
giúp mơ hình tập trung hơn vào các phần quan trọng trong chuỗi dữ
liệu đầu vào. Cụ thể hơn những công việc mà nhân viên làm việc
trong thời gian dài sẽ được đánh trọng số cao hơn so với những công
việc làm trong thời gian ngắn. Các cơng việc phổ biến có trọng số cao
hơn so với những cơng việc khác.
1.7 Phân tích tỷ lệ sống sót
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
7
1.7.1 Dữ liệu bị che
Dữ liệu bị che (censored data) là bất kỳ dữ liệu nào mà
chúng ta không biết chính xác thời gian diễn ra sự kiện. Dữ liệu mà
thời gian kết thúc của sự kiện được biết chính xác được gọi là dữ liệu
khơng che (uncensored data).
Có 3 loại dữ liệu che:
•
Dữ liệu che bên phải (right censored data)
•
Dữ liệu che bên trái (left censored data)
• Dữ liệu che theo khoảng thời gian (interval censored data)
Trong bài toán dự đốn tỉ lệ nghỉ việc của nhân viên thì ta phải đối
mặt với dữ liệu che bên phải vì với mỗi nhân viên ta biết được thời
gian kết thúc công việc của nhân viên trong quá khứ nhưng không
biết chính xác thời gian kết thúc của cơng việc hiện tại, nhân viên có
thể tiếp tục làm việc trong một thời gian dài và ta khơng biết chính
xác thời gian kết thúc cơng việc đó. Ví dụ nhân viên A có 3 kinh
nghiệm làm việc: kinh nghiệm 1 làm trong 2 năm, kinh nghiệm 2 làm
trong 3 năm, kinh nghiệm 3 làm được 2 năm và vẫn tiếp tục làm việc
tại thời điểm hiện tại. Các kinh nghiệm 1 và 2 đã biết được thời gian
kết thúc nhưng không biết thời gian kết thúc của kinh nghiệm 3.
1.7.2 Mơ hình phân tích tỷ lệ sống sót
Phân tích tỷ lệ sống sót (survival analysis) cịn là một lĩnh
vực thống kê tập trung vào việc phân tích thời gian dự kiến cho đến
khi một sự kiện nào đó xảy ra. Ban đầu, nhánh thống kê này phát
triển xung quanh việc đo lường tác động của điều trị y tế đối với sự
sống còn của bệnh nhân trong các thử nghiệm lâm sàng. Ví dụ, hãy
tưởng tượng một nhóm bệnh nhân ung thư được áp dụng một hình
thức điều trị mới nhất định. Phân tích tỷ lệ sống sót có thể được sử
dụng để phân tích kết quả của điều trị đó về tuổi thọ của bệnh nhân.
Phân tích tỷ lệ sống sót được sử dụng để lập mơ hình chuỗi thời gian
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
8
đến sự kiện hay vòng đời của sự kiện. Chúng ta có thể sử dụng phân
tích tỷ lệ sống sót để trả lời câu hỏi:
Tỉ lệ nghỉ việc của nhân viên sau một khoảng thời gian nhất định
1.7.3 Phương trình sống sót
Phương trình sống sót cung cấp thêm thơng tin về tỉ lệ nghỉ
việc của nhân viên theo thời gian dựa vào các sự kiện nghỉ việc đã
diễn ra trong quá khứ. Dựa vào phương trình này bộ phân nhân sự có
thể đánh giá tỉ lệ nghỉ việc của nhân viên dựa trên thời gian và đưa ra
những giải pháp phù hợp.
1.7.4 Hàm rủi ro
Hàm rủi ro (hazard function) hay tỉ lệ rủi ro (hazard rate) h(t)
có thể được xem như xác suất của sự kiện có thể xảy ra tức thời tại
thời điểm t nếu sự kiện đó chưa xảy ra trước thời điểm t. Hàm rủi ro
được biểu diễn như sau:
h(t) = lim
∆t→0
P(t ≤T
∆t
≥0
(1)
Trong đó biểu thức ở tử số là xác suất có điều kiện của sự
kiện quan tâm xảy ra trong khoảng thời gian nhất định, miễn là nó
chưa xảy ra trước đó. Δt ở mẫu số là chiều rộng của khoảng thời gian
đã xét. Khi chúng ta chia cái trước cho cái sau, chúng ta sẽ có được
tỷ lệ xuất hiện của sự kiện trên một đơn vị thời gian một cách hiệu
quả. Cuối cùng, bằng cách lấy giới hạn khi độ rộng của khoảng thời
gian bằng 0, ta được tỷ lệ sự kiện xuất hiện tức thời, đó chính là rủi
ro của một sự kiện xảy ra tại một thời điểm cụ thể.
1.7.5 Mơ hình mối nguy theo tỷ lệ của Cox
Mơ hình mối nguy theo tỷ lệ của Cox (Cox's Proportional
Hazards Model) được dùng để mơ hình hóa hàm rủi ro của một đối
tượng. Phụ thuộc vào các vector đầu vào 𝑥𝑖 ∈ 𝑅 𝑝 . Tích số của hàm
rủi ro đường cơ sở không xác định h0 và hàm số mũ của mơ hình
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
9
tuyến tính xiTβ được biểu diễn như sau:
𝑝
ℎ(𝑡|𝑥𝑖1 , … , 𝑥𝑖𝑝 ) = ℎ0 (𝑡) exp (∑ 𝑥𝑖𝑗 𝛽𝑗 )
𝑗=1
⇔
ℎ(𝑡|𝑥 )
log ℎ (𝑡)𝑖
0
= 𝑥𝑖T 𝛽
( 2)
Trong đó β ∈ 𝑅 𝑝 . là các hệ số liên quan đến mỗi đặc trưng
của p và khơng có số hạng chặn nào được đưa vào mơ hình. Điều
quan trọng là hàm nguy hiểm được chia thành hai phần: hàm nguy
hiểm cơ bản h0 chỉ phụ thuộc vào thời gian t, trong khi hàm mũ
không phụ thuộc vào thời gian và chỉ phụ thuộc vào hiệp biến số xi.
Mơ hình nguy cơ tỷ lệ của Cox được huấn luyện bằng cách
tối đa hóa hàm khả năng một phần (partial likelihood function) dựa
trên xác suất mà đối tượng i trải qua sự kiện tại thời điểm ti, cho rằng
có một sự kiện tại thời điểm ti. Như chúng ta thấy, bằng cách chỉ định
hàm rủi ro như trên, hàm rủi ro cơ bản h0 có thể được loại bỏ và
khơng cần xác định để tìm các hệ số β
1.8 Huấn luyện và đánh giá mơ hình
1.8.1 Huấn luyện
Các mơ hình học sâu lớn và hiệu quả rất cần dữ liệu. Họ yêu
cầu đào tạo với hàng nghìn hoặc thậm chí hàng triệu dữ liệu trước khi
đưa ra dự đoán. Việc đào tạo rất tốn kém, cả về thời gian và nguồn
lực.
Có ba chiến lược để huấn luyện một mơ hình:
•
Huấn luyện tồn bộ mơ hình.
•
Huấn luyện một số lớp và để những lớp khác đóng băng.
• Huấn luyện chuyển giao tri thức (transferlearning).
Trong dự án này, chúng tôi đã tạo ra một mô hình hồn tồn mới và
chọn cách huấn luyện tồn bộ mơ hình với các dữ liệu của mình. Từ
đó đánh giá mơ hình một cách tốt hơn và tồn diện. Ngoài ra chúng
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
10
tơi cịn tạo thêm những phiên bản khác nhau của mơ hình và so sánh
chúng với các mơ hình cơ sở và các mơ hình khác đã được thực hiện
bởi các nghiên cứu khác.
1.8.2 Sự quá khớp và chưa khớp
Có hai vấn đề chúng ta thường gặp khi đào tạo mơ hình học
sâu, đó là trang sự q khớp (overfitting) và sự chưa khớp
(underfitting). Sự quá khớp có nghĩa là mơ hình mà chúng tơi đào tạo
đã được đào tạo “quá tốt” và quá khớp với tập dữ liệu đào tạo. Điều
này thường xảy ra khi mơ hình q phức tạp và sẽ rất chính xác trên
dữ liệu đào tạo nhưng có thể sẽ khơng chính xác lắm trên dữ liệu
chưa được đào tạo hoặc dữ liệu mới. Sự chưa khớp trái ngược với sự
q khớp, mơ hình khơng phù hợp với dữ liệu đào tạo và do đó bỏ lỡ
các xu hướng trong dữ liệu. Điều đó cũng có nghĩa là mơ hình khơng
thể được tổng qt hóa thành dữ liệu mới, đây thường là kết quả của
một mô hình rất đơn giản
1.8.3 Đánh giá
1.8.3.1 Xếp hạng phần trăm trung bình
Khi dự đốn cơng việc của một nhân viên, việc lựa chọn
chuẩn xác công việc tiếp theo là không thể, do đó mơ hình sẽ liệt kê
một danh sách các cơng việc có độ ưu tiên khác nhau phù hợp với
từng ứng viên. Phương pháp xếp hạng phần trăm trung bình được mơ
tả như sau. Với mỗi hồ sơ ứng cử viên, mơ hình của chúng tơi sẽ dự
đốn công việc tiếp theo bằng cách xếp hạng tất cả chức danh cơng
việc từ cơng việc có tỉ lệ chính xác cao nhất đến cơng việc có tỉ lệ
chính xác thấp nhất. Xếp hạng phần trăm của chức danh công việc
thực tế được đo lường dựa trên danh sách này
1.8.3.2 Sai số tồn phương trung bình
Sai số tồn phương trung bình (root-mean-square-error hay
RMSE) là chỉ số đánh giá được sử dụng thường xuyên để chỉ ra sự
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
11
khác biệt giữa giá trị thực tế và giá trị mà mơ hình dự đốn
1.8.3.3 Chỉ số phù hợp
Chỉ số phù hợp (concordance index hay c-index) [9] là một
số liệu để đánh giá các dự đoán được thực hiện bởi một mơ hình. Nó
được định nghĩa là tỷ lệ của các cặp phù hợp chia cho tổng số các cặp
đánh giá có thể có.
1.9 Cơng nghệ
1.9.1 Tensorflow
TensorFlow là một thư viện máy học mã nguồn mở để
nghiên cứu và sản xuất. TensorFlow cung cấp các API cho người
mới bắt đầu và các chuyên gia để phát triển cho máy tính để bàn,
thiết bị di động, web và đám mây. Kiến trúc linh hoạt của nó cho
phép dễ dàng triển khai tính tốn trên nhiều nền tảng như CPU hoặc
GPU.
1.9.2 Scikit-Survival
Scikit-Survival là một mơ-đun Python để phân tích sự tồn tại
được xây dựng trên nền tảng của scikit-learning. Nó cho phép thực
hiện phân tích tồn tại trong khi sử dụng sức mạnh của scikit-learning
1.9.3 Selenium
Selenium là một dự án bảo trợ cho một loạt các công cụ và
thư viện cho phép và hỗ trợ tự động hóa các trình duyệt web. Nó cung
cấp các tiện ích mở rộng để mơ phỏng tương tác của người dùng với
các trình duyệt, một máy chủ phân phối để mở rộng phân bổ trình
duyệt và cơ sở hạ tầng để triển khai đặc tả W3C WebDriver cho phép
bạn viết mã có thể hốn đổi cho tất cả các trình duyệt web chính.
1.9.4 FastText
FastText [10] là một thư viện để học cách nhúng từ và phân
loại văn bản do phịng thí nghiệm Nghiên cứu AI của Facebook tạo
ra. Mơ hình cho phép người ta tạo một thuật tốn học khơng giám sát
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
12
hoặc học có giám sát để thu được các biểu diễn véc-tơ cho các từ.
Facebook cung cấp các mơ hình được đào tạo trước cho 294 ngôn
ngữ.
KẾT LUẬN CHƯƠNG 1
Trong chương 1, luận văn đã trình bày những mơ hình cơ
bản của mạng nơ-ron, lý thuyết cơ sở về cơ chế chú ý, phương pháp
phân tích sự sống. Sau đó là phương pháp xây dựng hàm rủi ro, mơ
hình mối nguy theo tỷ lệ của Cox. Cuối cùng là cách đánh giá từng
mơ hình để đưa ra nhận xét chính xác nhất.
Từ những lý thuyết cơ sở và các công nghệ đã trình bày ở
chương 1, luận văn sẽ tiến hành xây dựng mơ hình, phân tích, đánh
giá các kết quả thực tế. Từ đó nhận định những ưu điểm, nhược điểm
của mơ hình đề xuất.
CHƯƠNG 2: HỆ THỐNG THU THẬP DỮ LIỆU
2.1. Dữ liệu mẫu
Để thực hiện việc xây dựng một mạng học sâu, thì bước đầu
tiên phải có một tập dữ liệu phù hợp và đủ lớn vì cần sử dụng rất
nhiều dữ liệu để huấn luyện một mơ hình học sâu.
Để thực hiện việc huấn luyện mơ hình, việc xây dựng một
tập dữ liệu là vơ cùng cần thiết, do đó chúng tơi đã phát triển một
cơng cụ gọi là “CVCrawler” để thu thập các hồ sơ của ứng viên
thông qua các mạng xã hội chuyên nghiệp. Mục tiêu của dự án này là
dự đoán khả năng chuyển việc của nhân viên trong ngành công nghệ
thông tin nên những hồ sơ ứng việc được thu thập là các nhân viên
trong ngành công nghệ thông tin của Việt Nam.
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
13
Hình 2.1: Một hồ sơ ứng viên mẫu trên mạng xã hội
2.2. Thu thập đường dẫn hồ sơ ứng viên
Để thu thập dữ liệu chúng ta cần tìm được những khn mẫu
(pattern) HTML của trang web. Sau đó đặt ra những luật cần thiết
cho Selenium thu thập những dữ liệu này.
2.3. Thu thập tên ứng viên và thông tin liên lạc
Phần này trình bày khn mẫu HTML của tên ứng viên,
thông tin liên lạc và mã Selenium để thu thập những thơng tin đó.
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
14
2.4. Thu thập phần thơng tin thêm
Phần này trình bày khuôn mẫu HTML của phần thông tin
thêm (about section) và mã Selenium để thu thập những thơng tin đó.
2.5. Thu thập phần thông tin về kinh nghiệm làm việc
Phần này trình bày khn mẫu HTML của phần thơng tin về
kinh nghiệm làm việc (Experience) và mã Selenium để thu thập
những thơng tin đó.
2.6. Thu thập phần thơng tin về trình độ học vấn
Phần này trình bày khn mẫu HTML của phần thơng tin về
trình độ học vấn (Education) và mã Selenium để thu thập thơng tin
đó.
2.7. Thu thập phần thơng tin về kỹ năng làm việc
Phần này trình bày khn mẫu HTML của phần thông tin về
kỹ năng làm việc (Skills) và mã Selenium để thu thập thơng tin đó.
2.8. Nhận xét kết quả
Từ công cụ này, chúng tôi đã thu thập hơn 10.000 hồ sơ ứng
viên của nhân viên trong lĩnh vực công nghệ thông tin trên khắp Việt
Nam.
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
15
Hình 2.2: Một kết quả thu thập được bằng “CVCrawler”
KẾT LUẬN CHƯƠNG 2
Trong chương này, luận văn trình bày tính quan trọng của
việc xây dựng cơ sở dữ liệu, cách thu thập dữ liệu bằng mã selenium
và đưa ra nhận xét chung về tập dữ liệu dựa vào kết quả cuối cùng
sau khi thu thập được.
Thơng qua việc phân tích các mẫu dữ liệu, chúng tôi đã xây
dựng được một công cụ tự động thu thập dữ liệu.
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
16
CHƯƠNG 3: PHÂN TÍCH, THIẾT KẾ VÀ XÂY DỰNG
MƠ HÌNH
3.1. Các khó khăn
Ý tưởng áp dụng trí tuệ nhân tạo (Artifact intelligent) để giải
quyết các vấn đề thường gặp trong cuộc sống không phải là mới, tuy
nhiên hầu hết các sản phẩm của các công ty công nghệ quá đặc thù
trong các lĩnh vực khác nhau và chỉ hoạt động trên một môi trường
phức tạp
3.2. Dữ liệu đầu vào
Trong dự án này, dữ liệu được sử dụng là từ công ty Orient và
Neurond. Công ty đã phát triển một công cụ gọi là “CVCrawler”
nhằm mục đích thu thập hồ sơ ứng tuyển (Curriculum Vitae hay CV)
của ứng viên thông qua các trang mạng xã hội. Họ đã cung cấp hơn
10.000 hồ sơ ứng tuyển của ứng viên thuộc lĩnh vực công nghệ thông
tin ở Việt Nam để sử dụng trong dự án này.
Mỗi ứng viên sẽ có một tập kinh nghiệm (experience) và kỹ năng
(skill).
Hình 3.1: Dữ liệu mẫu của một số ứng viên
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
17
3.3 Tiền xử lý dữ liệu
Tiền xử lý dữ liệu (pre-processing) là một bước rất quan
trọng trong việc giải quyết bất kỳ vấn đề nào trong lĩnh vực Học
Máy. Hầu hết các bộ dữ liệu được sử dụng trong các vấn đề liên quan
đến Học Máy cần được xử lý, làm sạch và biến đổi trước khi một
thuật toán Học Máy có thể được huấn luyện trên những bộ dữ liệu
này. Các kỹ thuật tiền xử lý dữ liệu phổ biến hiện nay bao gồm: xử lý
dữ liệu bị khuyết (missing data), mã hóa các biến nhóm (encoding
categorical variables), chuẩn hóa dữ liệu (standardizing data), co giãn
dữ liệu (scaling data),
Vì số lượng chức danh của nhân viên là lớn và được thu thập
từ nhiều nguồn khác nhau bao gồm cả tiếng Anh và tiếng Việt nên
chúng tôi phải áp dụng các kỹ thuật tiền xử lý khác nhau cho các kiểu
dữ liệu khác nhau. Các bước tiền xử lý sau đã được áp dụng:
•
Bỏ từ dừng (stop words) như to/the/of/at/and/&
•
Bỏ dấu ngoặc ()/[]/{}
•
Bỏ dấu câu ./,/-/?/~/
•
Bỏ dấu nháy “/’/
•
Bỏ khoảng trống thừa
•
Chuyển thành chữ viết thường
•
Thay thế từ viết tắt thành từ có nghĩa
Số lượng trước khi loại bỏ hồ sơ trùng lặp và hồ sơ trống: 12.000 hồ
sơ
Số lượng sau khi loại bỏ hồ sơ trùng lặp và hồ sơ trống: 8.000 hồ sơ
3.4 Phân tích dữ liệu
Ở mục này chúng tơi sẽ tập trung vào việc phân tích các hồ
sơ sau bước tiền xử lý, từ đó có được cái nhìn tổng quan về dữ liệu
hiện tại.
Dù loại bỏ một lượng hồ sơ lớn từ lượng dữ liệu ban đầu
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
18
nhưng những hồ sơ cịn lại sẽ có nhiều ý nghĩa hơn trong quá trình
huấn luyện so với các hồ sơ khơng thỏa mãn những tiêu chí của
chúng tơi.
3.5 Xây dựng tập dữ liệu huấn luyện
Sau khi loại bỏ các hồ sơ dư thừa, các thơng tin cịn lại sẽ
được trích xuất và biến đổi để phù hợp với mục đích của bài tốn. Để
xây dựng tập dữ liệu huấn luyện (training dataset), các kinh nghiệm
hiện tại của nhân viên sẽ được sử dụng để làm nhãn (label), các kỹ
năng và kinh nghiệm trước đó của nhân viên sẽ được xem là thơng
tin huấn luyện (feature).
3.6 Xây dựng mơ hình
3.6.1 Xây dựng vấn đề
Trong phần này, chúng tôi sẽ giới thiệu cách xây dựng vấn đề
(problem formulation) bằng cách sử dụng phương trình tốn học và
trình bày các ký hiệu được sử dụng trong luận văn.
3.6.2 Thiết kế hệ thống
Ở mục này, chúng tơi trình bày mơ hình tổng qt được sử
dụng trong dự án, sau đó mơ hình sẽ được giải thích chi tiết hơn ở
các phần tiếp theo. Từ bài tốn ở trên, hệ thống của chúng tơi nhận
dữ liệu đầu vào là tập kinh nghiệm làm việc gồm chức danh của công
việc và thời gian làm việc của ứng viên u từ đó đưa ra kết quả gồm
chức danh tiếp theo của nhân viên tại thời điểm tiếp theo
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
19
Hình 3.3: Biểu diễn đồ họa của mơ hình đề xuất bằng cách sử dụng
cơ chế chú ý trong việc xác định trọng số các trạng thái ẩn từ lớp
LSTM để có được thơng tin tiềm ẩn giữa các trải nghiệm công việc
3.6.3 Nhúng từ
Để xử lý các dạng dữ liệu phong phú (văn bản tự do, tính
năng số và phân loại), dữ liệu được xử lý trước bằng các phương
pháp sau. Sau đó, chúng tơi tính tốn giá trị trung bình của các lần
nhúng cho mọi chiều tương ứng, theo cách này, chúng tôi nhận được
độ dài cố định của vectơ cho văn bản tự do có độ dài khác nhau.
Trong khi đó với nhúng từ của kỹ năng, chúng tơi sử dụng
một lớp gộp (pooling) để trích xuất thơng tin. Nhân viên có thể có
nhiều kỹ năng khác nhau, từ ít nhất một kỹ năng đến hơn 20 loại kỹ
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
20
năng. Để đảm bảo rằng nhúng từ của mỗi nhân viên đều có cùng số
chiều, chúng tơi sử dụng phương pháp gộp các vec-tơ nhúng kỹ năng.
Cụ thể hơn là phương pháp gộp trung bình (average pooling) để có
một vec-tơ kỹ năng duy nhất cho mỗi nhân viên.
Hình 3.4: Biểu diễn nhúng từ của một số chức danh trong không gian
hai chiều
3.6.4 Cơ chế chú ý
Sau khi nhúng từ, các chức danh công việc cùng với kỹ năng
của nhân viên được đưa vào bộ nhớ dài-ngắn hạn để học cách biểu
diễn các thông tin ẩn của các kinh nghiệm làm việc theo thứ tự.
Chúng tôi gọi kết quả đầu ra của bộ nhớ dài-ngắn hạn là ℎ1 ,ℎ2 , ℎ𝑔 .
Tiếp theo cơ chế chú ý được áp dụng để thêm các trọng số cho kết
quả đầu ra, cụ thể hơn cơ chế chú ý đánh trọng số khác nhau cho các
thông tin khác nhau. Thông tin nào quan trọng sẽ có trọng số cao
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
21
hơn, thơng tin nào ít quan trọng sẽ có trọng số thấp hơn.
Cơ chế chú ý Bahdanau [8] đã được áp dụng để cải thiện
hiệu suất của mơ hình mã hóa- mơ hình giải mã. Ý tưởng đằng sau cơ
chế chú ý là cho phép bộ giải mã sử dụng csac phần có liên quan nhất
của chuỗi kinh nghiệm đầu vào một cách linh hoạt, đồng thời kết hợp
các trọng số khác nhau để cung cấp thêm thông tin cho mơ hình dự
đốn.
3.6.5 Mơ-đun dự đốn
3.6.5.1 Mơ-đun dự đốn chức danh công việc tiếp theo
Chúng tôi xây dựng mô-đun dự đốn chức danh của cơng
việc tiếp theo như một bài toán phân loại đa lớp (multiclass
classification). Nhiệm vụ của bài tốn phân lớp là tìm một mơ hình
phân lớp phù hợp để khi có dữ liệu mới thì có thể xác định được dữ
liệu đó thuộc phân lớp nào. Tương tự, khi có một nhân viên mới với
các kinh nghiệm làm việc trong quá khứ, chúng ta sẽ xác định nhân
viên sẽ thuộc phân lớp chức danh công việc nào.
3.6.5.2 Mơ-đun dự đốn thời gian làm việc ở chức danh tiếp theo
Chúng tơi xây dựng mơ-đun dự đốn thời gian làm việc ở
chức danh tiếp theo như một bài toán hồi quy tuyến tính (linear
regression). Hồi quy tuyến tính là một phương pháp phân tích quan
hệ giữa biến phụ thuộc Y với một hay nhiều biến độc lập X. Trong
mô hình của chúng tơi, Y là thời gian làm việc ở chức danh tiếp theo
và X là các thông tin về kinh nghiệm làm việc và kỹ năng của nhân
viên đã được trích xuất bởi bộ nhớ dài-ngắn hạn và cơ chế chú ý.
3.6.5.3 Mơ-đun dự đốn tỉ lệ nghỉ việc tại thời điểm hiện tại
Mô-đun này sử dụng phương pháp phân tích sự sống, là một
mơ hình học khơng có giám sát (unsupervised learning).
Trong q trình phân tích kinh nghiệm làm việc của nhân viên, chúng
tôi nhận ra rằng nếu sử dụng thời gian làm việc trong thời điểm hiện
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
22
tại của nhân viên là kết quả dự đốn thì mơ hình sẽ bị thiên vị (bias).
Mơ-đun dự đốn thời gian sẽ xem các công việc ở thời điểm hiện tại
có thời gian kết thúc sớm hơn. Cụ thể hơn chúng tơi đang đối mặt với
bài tốn với dữ liệu bị che bên phải (right censored data) bởi vì thời
gian làm việc của nhân viên ở thời điểm hiện tại là khơng thể biết
trước được.
3.7 Đánh giá mơ hình
3.7.1 Các mơ hình cơ sở
Mơ hình cơ sở (baseline model) về cơ bản là một mơ hình
đơn giản hoạt động như một tham chiếu trong dự án học máy với
chức năng chính là ngữ cảnh hóa các kết quả của các mơ hình được
đào tạo.
3.7.2 Đánh giá mơ-đun dự đốn chức danh cơng việc tiếp theo
Mơ-đun dự đốn chức danh cơng việc là một bài tốn phân
loại nhiều lớp nên có phương thức đánh giá thường thấy là độ chính
xác (accuracy).
Độ chính xác được tính bằng số lượng chức danh mà mơ
hình dự đốn chính xác chia cho tổng số lượng dự đốn.
3.7.3 Đánh giá mơ-đun dự đốn thời gian làm việc ở chức danh
tiếp theo
Mơ-đun dự đốn thời gian làm việc ở chức danh tiếp theo
của nhân viên được xem như bài tốn hồi quy tuyến tính, vì chỉ dự
đốn một kết quả duy nhất là thời gian làm việc tiếp theo. Do đó
chúng ta có thể sử dụng các phương pháp đơn giản như sai số tồn
phương trung bình (RSME) để so sánh. Sai số tồn phương trung
bình có đơn bị là năm, nên chúng ta có thể hiểu đó là số thời gian sai
so với dự đốn thực tế. Ví dụ, sai số tồn phương trung bình là 0.461
năm có thể hiểu là với mỗi dự đốn mơ hình đưa ra thì lệch 5,5 tháng
3.7.4 Đánh giá mơ-đun dự đoán tỉ lệ nghỉ việc tại thời điểm hiện tại
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ
23
Một vấn đề quan trọng khi đánh giá một mô hình phân tích
sự sống là dữ liệu huấn luyện và dữ liệu kiểm tra đều là kiểu dữ liệu
che bên phải, vì chúng ta khơng thể quan sát được chính xác thời
gian kết thúc sự kiện dù dữ liệu được phân chia như thế nào. Do đó,
mơ hình phải được đánh giá dựa vào các dữ liệu che. Phương thức đo
được sử dụng rộng rãi nhất để đánh giá một mơ hình phân tích sự
sống là chỉ số hịa hợp của Harrell (Harrell’s concordance index hay
c-index). Mặc dù được sử dụng rộng rãi nhưng chỉ số hịa hợp của
Harrell có thể cho ra kết quả không mong muốn nếu dữ liệu của
chúng ta bị che quá nhiều (dữ liệu bị che lớn hơn 90%).
3.7.5. Nhận xét chung
Thông qua tất cả phương thức đánh giá trên và hiệu suất của
các phương pháp cơ sở và mơ hình đề xuất được trình bày ở các
bảng. Mơ hình đề xuất của chúng tơi vượt trội hơn các phương pháp
cơ sở và đạt được kết quả cao nhất. Một quan sát đáng chú ý là hiệu
suất tổng thể của các phương pháp cơ sở tăng đáng kể khi được áp
dụng cơ chế chú ý. Các mơ hình học sâu (LSTM, NEMO) được cải
thiện hiệu suất khi có thêm lớp cơ chế chú ý.
KẾT LUẬN CHƯƠNG 3
Trong chương này, luận văn sẽ trình bày các vấn đề gặp phải
khi xây dựng mơ hình dự đốn, giới thiệu về dữ liệu đầu vào, cách
tiền xử lý, cách phân tích dữ liệu, cách xây dựng tập huấn luyện, cách
xây dựng mơ hình và cuối cùng là cách đánh giá một mơ hình. Từ đó
đưa ra những nhận xét chung về mơ hình đề xuất và tính ưu việt của
cơ chế chú ý.
KẾT LUẬN
Kết quả nhận được
Trong đề tài này, chúng tôi tiến hành nghiên cứ một mô hình
hồn tồn mới để khám phá con đường sự nghiệp của nhân viên ở
THƯ VIỆN TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐẠI HỌC ĐÀ NẴNG.
Lưu hành nội bộ