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

Đề tài dự Đoán ứng viên Được tuyển dụng dựa trên các công cụ khoa học dữ liệu của phần mềm orange

29 0 0
Tài liệu đã được kiểm tra trùng lặp

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Dự Đoán Ứng Viên Được Tuyển Dụng Dựa Trên Các Công Cụ Khoa Học Dữ Liệu Của Phần Mềm Orange
Tác giả Trần Vĩnh Kỳ, Văn Ngọc My, Trần Trí Dũng, Huỳnh Gia Huy
Người hướng dẫn Đặng Ngọc Hoàng Thành
Trường học Đại Học Kinh Tế TP. Hồ Chí Minh
Chuyên ngành Khoa Học Dữ Liệu
Thể loại Đồ Án Môn Học
Năm xuất bản 2023
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 29
Dung lượng 3,84 MB

Nội dung

Dưới đây là một tổng quan về bài toán phân lớp dữ liệu: - Đầu vào Input:  Tập dữ liệu huấn luyện: Bao gồm các mẫu dữ liệu đã được gán nhãn lớphoặc nhãn đã biết trước.. Với giaodiện đồ h

Trang 1

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

ĐẠI HỌC KINH TẾ TP HỒ CHÍ MINH

Gỉang viên: Đặng Ngọc Hoàng Thành

TP Hồ Chí Minh – Ngày 21 Tháng 3 năm 202

Trang 2

MỤC LỤC

LỜI MỞ ĐẦU 3

CHƯƠNG 1: TỔNG QUAN 3

1.1 Tổng quan về bài toán phân lớp dữ liệu: 3

1.2 Giới thiệu về Python và phần mềm Orange: 4

1.3 Lý do lựa chọn đề tài: 5

CHƯƠNG 2: CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU 6

2.1 Các mô hình phân lớp dữ liệu 6

2.1.1 Mô hình Logistic Regression 6

2.1.2 Mô Hình Decision Tree 6

2.1.3 Mô Hình Support Vector Machine 7

2.1.4 Mô Hình Neural Network 8

2.2 Quy Trình Phân Lớp Dữ Liệu 9

2.2.1 Tiền Xử Lý Dữ Liệu 9

2.2.2 Phân Lớp Dữ Liệu 10

2.2.3 Đánh Giá Tính Hiệu Quả 12

CHƯƠNG 3 CÁC KẾT QUẢ THỰC NGHIỆM 12

3.1 Mô tả bài toán: 12

3.2 Mô tả dữ liệu: 12

3.3 Phân lớp dữ liệu 13

3.3.1 Xử lý dữ liệu 13

3.3.2 Sử dụng mô hình phân lớp dữ liệu 16

CHƯƠNG 4: KẾT LUẬN 25

4.1 Các Kết Quả Đạt Được 25

4.2 Những Hạn Chế và Hướng Phát Triển 25

LỜI KẾT 26

TÀI LIỆU THAM KHẢO 26

Trang 3

LỜI MỞ ĐẦU

Lời đầu tiên, nhóm chúng em xin gửi lời cảm ơn chân thành đến thầy ĐặngNgọc Hoàng Thành Trong quá trình học tập, dưới sự chỉ dẫn tận tình của thầycùng với sự tìm hiểu nhiệt tình, năng nổ và làm việc ăn ý của nhóm đã giúpchúng em có cái nhìn sâu sắc về phần mềm Orange nói riêng và môn khoa học

dữ liệu nói chung Thông qua đồ án này, nhóm em xin trình bày về những kiếnthức và kỹ năng mà nhóm em đã thu hoạch được trong suốt quá trình học tập.Lần đầu tiếp cận nguyên cứu đề tài nên trong quá trình thực hiện đồ án sẽ cónhững thiếu sót Vì vậy, chúng em rất mong nhận được những lời nhận xét từthầy để góp phần hoàn thiện đồ án kết thúc môn học tốt nhất

Trang 4

CHƯƠNG 1: TỔNG QUAN

1.1 Tổng quan về bài toán phân lớp dữ liệu:

Bài toán phân lớp dữ liệu là một trong những bài toán cơ bản và quan trọngtrong lĩnh vực khoa học dữ liệu Mục tiêu của bài toán này là dự đoán lớp hoặcnhãn của các mẫu dữ liệu mới dựa trên thông tin đã được học từ các mẫu dữliệu đã biết trước

Dưới đây là một tổng quan về bài toán phân lớp dữ liệu:

- Đầu vào (Input):

 Tập dữ liệu huấn luyện: Bao gồm các mẫu dữ liệu đã được gán nhãn (lớphoặc nhãn đã biết trước)

 Tập dữ liệu kiểm tra: Bao gồm các mẫu dữ liệu mà chúng ta muốn dự đoánlớp hoặc nhãn tương ứng

- Thuật toán Phân lớp (Classification Algorithms):

 Logistic Regression

 Support Vector Machines (SVM)

 Decision Trees và Random Forests

 K-Nearest Neighbors (KNN)

 Neural Networks

 Naive Bayes

 Ensemble Methods (ví dụ: AdaBoost, Gradient Boosting)

- Huấn luyện (Training):

 Sử dụng tập dữ liệu huấn luyện để xây dựng mô hình phân lớp

 Thuật toán sẽ học từ các mẫu dữ liệu đã biết trước để tìm ra mối quan hệgiữa các đặc trưng và nhãn

- Đánh giá (Evaluation):

 Sử dụng các phương pháp đánh giá như ma trận nhầm lẫn (confusionmatrix), độ chính xác (accuracy), độ chính xác cân bằng (balancedaccuracy), độ chính xác đa lớp (multiclass accuracy), độ chính xác nhóm(group accuracy) để đánh giá hiệu suất của mô hình

 Có thể sử dụng kỹ thuật chia tập dữ liệu thành tập huấn luyện và tập kiểmtra để đánh giá hiệu suất mô hình

- Tinh chỉnh (Fine-tuning):

 Tối ưu hóa các tham số của mô hình để cải thiện hiệu suất dự đoán trên tập

Trang 5

và nhiều ứng dụng khác trong thực tiễn.

1.2 Giới thiệu về Python và phần mềm Orange:

Python là một ngôn ngữ lập trình thông dịch, mạnh mẽ và dễ học, được sửdụng rộng rãi trong nhiều lĩnh vực khác nhau bao gồm phân tích dữ liệu, trí tuệnhân tạo, phát triển web và nhiều ứng dụng khác Điều đặc biệt về Python là cúpháp gần gũi, dễ đọc, giúp cho việc phát triển và bảo trì mã nguồn trở nên dễdàng hơn so với nhiều ngôn ngữ lập trình khác Python cũng có một cộng đồnglớn mạnh mẽ, cung cấp hàng ngàn thư viện và khung phần mềm cho nhiều mụcđích khác nhau

Orange là một phần mềm mã nguồn mở được thiết kế để hỗ trợ trong quá trìnhkhai phá dữ liệu và phân tích dữ liệu một cách trực quan và dễ hiểu Với giaodiện đồ họa người dùng (GUI) thân thiện, Orange cung cấp một loạt các công

cụ và tính năng để thực hiện các nhiệm vụ như phân tích dữ liệu, trực quan hóa

dữ liệu, xây dựng mô hình dự đoán và nhiều công việc khác mà không yêu cầukiến thức chuyên sâu về lập trình hay khoa học dữ liệu

Một số điểm nổi bật về Orange:

 Giao diện trực quan (GUI): Orange cung cấp một giao diện đồ họa ngườidùng (GUI) dễ sử dụng, cho phép người dùng thực hiện các thao tác phântích dữ liệu một cách trực quan

 Công cụ và tính năng đa dạng: Orange cung cấp một loạt các công cụ vàtính năng cho việc phân tích dữ liệu, bao gồm trực quan hóa dữ liệu, tiền

xử lý dữ liệu, xây dựng và đánh giá mô hình dự đoán và nhiều hơn nữa

 Orange hỗ trợ nhiều định dạng dữ liệu khác nhau bao gồm dữ liệu bảng, dữliệu văn bản, hình ảnh và âm thanh

 Orange có một cộng đồng lớn với tài liệu phong phú và hỗ trợ từ cộngđồng người dùng

Orange và Python thường được sử dụng cùng nhau để thực hiện các dự án phântích dữ liệu và khoa học dữ liệu, giúp người dùng tiết kiệm thời gian và côngsức trong việc thực hiện các nhiệm vụ phức tạp

1.3 Lý do lựa chọn đề tài:

Trang 6

Việc dự đoán ứng viên được tuyển dụng là một trong những vấn đề quan trọngtrong quản lý nhân sự và tuyển dụng Áp dụng khoa học dữ liệu và các công cụcủa Orange vào việc này có thể giúp cải thiện quy trình tuyển dụng, giảm thiểusai sót và tăng cường khả năng lựa chọn ứng viên phù hợp Việc sử dụng phầnmềm Orange cho phân tích dữ liệu cung cấp khả năng thực hiện phân tích và

dự đoán một cách nhanh chóng Điều này có thể hỗ trợ quy trình tuyển dụngbằng cách cung cấp phản hồi về các ứng viên một cách hiệu quả trong thời gianngắn.Đồng thời phần mềm Orange cung cấp các công cụ trực quan hóa dữ liệumạnh mẽ, giúp hiểu rõ hơn về thông tin từ các dữ liệu nhân sự Việc trực quanhóa dữ liệu có thể giúp cho việc xác định các mẫu và xu hướng quan trọngtrong dữ liệu tuyển dụng trở nên dễ dàng hơn Bên cạnh đó áp dụng khoa học

dữ liệu vào quy trình tuyển dụng có thể giúp tối ưu hóa quy trình này, từ việcthu thập thông tin ứng viên đến việc đưa ra quyết định cuối cùng Điều này cóthể giúp tăng cường hiệu suất của quy trình tuyển dụng và giảm thiểu chi phícũng như thời gian Và khi đã xây dựng được một hệ thống dự đoán hiệu quảchúng ta có thể mở rộng ứng dụng này để áp dụng vào các lĩnh vực khác như

dự đoán hiệu suất lao động, dự đoán nhu cầu nhân sự trong tương lai và nhiềuứng dụng khác trong quản lý nhân sự Tóm lại, việc lựa chọn đề tài này kết hợpgiữa nhu cầu thực tiễn trong lĩnh vực tuyển dụng, tiềm năng của công nghệkhoa học dữ liệu và phần mềm Orange để cải thiện quy trình tuyển dụng vàquản lý nhân sự

Trang 7

CHƯƠNG 2: CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU

2.1 Các mô hình phân lớp dữ liệu

2.1.1 Mô hình Logistic Regression

Logistic Regression (Hồi quy Logistic) là một mô hình xác xuất dự đoángiá trị đầu ra rời rạc từ một tập các giá trị đầu vào (biểu diễn dưới dạngvector)

Có ba dạng hồi quy Logistic:

1 Hồi quy Logistic nhị phân: biến phụ thuộc chỉ có hai kết quả/ lớp cóthể xảy ra

2 Hồi quy Logistic đa thức: biến phụ thuộc chỉ có hai hoặc ba kết quả/lớp trở lên có thể có mà thứ tự được sắp xếp ngẫu nhiên

3 Hồi quy Logistic thông thường: biến phụ thuộc chỉ có hai hoặc nhiềuhơn ba kết quả/ lớp có thể có được sắp xếp theo đúng thứ tự

Hình 1.2 Minh họa mô hình Logistic Regression

2.1.2 Mô Hình Decision Tree

Trong lý thuyết quản trị, cây quyết định là đồ thị các quyết định cùng cáckết quả khả dĩ đi kèm nhằm hỗ trợ quá trình ra quyết định

Trang 8

Trong lĩnh vực khai thác dữ liệu, cây quyết định là phương pháp nhằm mô

tả, phân loại và tổng quát hóa tập dữ liệu cho trước

Hình 2.2 Minh họa xây dựng mô hình cây quyết định

2.1.3 Mô Hình Support Vector Machine

SVM là một thuật toán có giám sát, SVM nhận dữ liệu vào, xem chúng nhưnhững các vector trong không gian và phân loại chúng vào các lớp khácnhau bằng cách xây dựng một siêu phẳng trong không gian nhiều chiều làmmặt phân cách các lớp dữ liệu

Để tối ưu kết quả phân lớp thì phải xác định siêu phẳng (hyperplane) cókhoảng cách đến các điểm dữ liệu (margin) của tất cả các lớp xa nhất cóthể SVM có nhiều biến thể phù hợp với các bài toán phân loại khác nhau

Phân lớp đa lớp (biên giữa các lớp là tuyến tính)

Kernel SVM Dữ liệu là phi tuyến

Trang 9

Hình 3.2 Minh họa mô hình SVM

2.1.4 Mô Hình Neural Network

Phương pháp Neural Network là mạng lưới Nơ-ron nhân tạo Đây là chuỗithuật toán nhằm tìm kiếm quan hệ trong tập hợp dữ liệu hệ thống dựa theocách thức hoạt động não bộ con người Neural Network thích ứng với mọiđiều chỉnh từ đầu vào, cho ra kết quả đầu ra tốt nhất, nó có các đặc điểmnhư sau:

- Mạng lưới nơ-ron nhân tạo hoạt động như nơ-ron trong não bộ con người.Trong đó, mỗi nơ-ron là một hàm toán học, có chức năng thu thập và phânloại dữ liệu, thông tin theo cáu trúc chi tiết

- Neural Network tương đồng với những phương pháp thống kê theo đồ thịđường cong hoặc phân tích hồi quy Neural Network bao hàm các nút mạngliên kết với nhau

- Mỗi nút là một tập hợp các tri giác, cấu tạo tương tự hàm hồi quy đa tuyếntính, được sắp xếp liên kết với nhau Các lớp này sẽ thu thập thông tin, sau

đó phân loại và phát tín hiệu đầu ra tương ứng

Trang 10

Hình 4.2 Minh họa mô hình Neural Network

2.2 Quy Trình Phân Lớp Dữ Liệu

2.2.1 Tiền Xử Lý Dữ Liệu

Là quá trình xử lý dữ liệu thô/gốc (raw/original data) nhằm cải thiện chấtlượng dữ liệu (quality of data) và do đó, cải thiện chất lượng của kết quảkhai phá

- Dữ liệu thô/gốc: có thể có cấu trúc hoặc không có cấu trúc; nằm ở nhiềuđịnh dạng khác nhau (tập tin hoặc CSDL)

- Chất lượng dữ liệu (data quality): tính chính xác, tính hiện hành, tính toànvẹn, tính nhất quán

Trang 11

Hình 5.2 Các giai đoạn tiền xử lý dữ liệu

Làm sạch dữ liệu (data cleaning/ cleansing): loại bỏ nhiễu (remove noise),hiệu chỉnh những phần dữ liệu không nhất quán (correct datainconsistencies), bao gồm:

 Tóm tắt hóa dữ liệu

 Xử lý dữ liệu bị thiếu (missing data)

 Xử lý dữ liệu bị nhiễu (noisy data)

2.2.2 Phân Lớp Dữ Liệu

Là quá trình phân một đối tượng dữ liệu vào một hay nhiều lớp (loại) đãcho trước nhờ một mô hình phân lớp Mô hình này được xây dựng dựa trênmột tập dữ liễu đã được gán nhãn trước đó (thuộc về lớp nào) Quá trìnhgán nhãn (thuộc lớp nào) cho đối tượng dữ liệu chính là quá trình phân lớp

dữ liệu

Trang 12

Hình 6.2 Minh họa mô hình phân lớp dữ liệu

Quá trình phân lớp dữ liệu gồm 2 bước chính:

 Bước 1: Xây dựng mô hình (hay còn gọi là giai đoạn “học” hoặc “huấnluyện”)

+ Dữ liệu đầu vào: là dữ liệu mẫu đã được gán nhãn và tiền xử lý+ Các thuật toán phân lớp: cây quyết định, hàm số toán học, tậpluật…

+ Kết quả của bước này là mô hình phân lớp đã được huấnluyện (trình phân lớp)

 Bước 2: Sử dụng mô hình chia thành 2 bước nhỏ

Bước 2.1: Đánh giá mô hình (kiểm tra tính đúng đắn của môhình)

- Dữ liệu đầu vào: là một tập dữ liệu mẫu khác đã được gán nhãn và tiền xử lý.Tuy nhiên lúc đưa vào mô hình phân lớp ta “lờ” đi thuộc tính đã được gánnhãn

- Tính đúng đắn của mô hình sẽ được xác định bằng cách so sánh thuộc tínhgán nhãn của dữ liệu đầu vào và kết quả phân lớp của mô hình

Bước 2.2: Phân lớp dữ liệu mới

- Dữ liệu đầu vào: là dữ liệu “khuyết” thuộc tính cần dữ đoán lớp (nhãn)

Trang 13

- Mô hình sẽ tự động phân lớp (gán nhãn) cho các đối tượng dữ liệu này dựavào những gì được huấn luyện ở bước 1.

2.2.3 Đánh Giá Tính Hiệu Quả

Một số ứng dụng, tính hiệu quả mô hình phân lớp:

Trang 14

CHƯƠNG 3 CÁC KẾT QUẢ THỰC NGHIỆM

3.1 Mô tả bài toán:

Dự đoán ứng viên được tuyển dụng dựa trên các thông tin có trong bộ dữ liệu

sẽ giúp cho công ty sàng lọc được các ứng viên phù hợp với những tiêu chí màcông ty mong muốn và đề ra

3.2 Mô tả dữ liệu:

- Được lưu với tên là Job_Placement_Data.csv

- Dữ liệu thô bao gồm 215 mẫu dữ liệu (instances) và 13 biến (features)

Hình 1.3 Tập dữ liệu

Trang 15

3.3 Phân lớp dữ liệu

3.3.1 Xử lý dữ liệu

- Sử dụng Data Sampler để phân tách dữ liệu từ file ban đầu thành hai fileriêng biệt theo tỷ lệ 70-30

Hình 2.3 Lấy mẫu dữ liệu

- Lấy file dữ liệu lớn (70%) làm tập dữ liệu training

Trang 16

Hình 3.3 Mẫu dữ liệu TrainingTập dữ liệu sau khi phân tách có 151 mẫu dữ liệu và 12 biến (không có dữ liệu

bị lỗi) Được lưu với tên Job_Placement_Data.tab

- Lấy file dữ liệu nhỏ (30%) làm tập dữ liệu Test

Trang 17

Hình 4.3 Mẫu dữ liệu TestTập dữ liệu này có 64 mẫu dữ liệu với 12 biến (không có dữ liệu bị lỗi)

Hình 5.3 Mô hình lấy mẫu dữ liệu

3.3.2 Sử dụng mô hình phân lớp dữ liệu

3.3.2.1 Lựa chọn mô hình phân lớp

Bước 1: Sử dụng tập dữ liệu Training, sau đó chọn Status là biến phụ thuộc(Target)

Trang 18

Hình 6.3 Tập dữ liệu TrainingBước 2: Sử dụng các mô hình phân lớp như Logistic Regression, Tree, SVM,Neural Network để dự đoán ứng viên được tuyển dụng

Bước 3: Sử dụng các phương pháp đánh giá để chọn ra mô hình phân lớp đạthiệu quả nhất

Kết quả đánh giá Test and Score

Với k=5

Trang 19

Hình 7.3 Kết quả khi chia mẫu dữ liệu thành 5 phần

 Nhận xét:

Tại mục Evaluation results for target, nhìn qua kết quả định lượng của 4 môhình thì ta có thể thấy rằng mô hình Neural Network có nhiều giá trị đạt kết quảcao nhất Cụ thể như:

- Diện tích đường cong (AU) là 0.906

Trang 20

Hình 8.3 Kết quả ma trận nhầm lẫn của mô hình SVM

 Nhận xét:

- Tỷ lệ nhầm lẫn giữa ứng cử viên được tuyển dụng (Placed) trong dự đoán so với thực tế là không được tuyển dụng (Not Placed) là khoảng 15.0%

- Tỷ lệ nhầm lẫn giữa ứng cử viên không được tuyển dụng (Not Placed)trong dự đoán so với thực tế là được tuyển dụng (Placed) là khoảng21.1%

Hình 9.3 Kết quả ma trận nhầm lẫn của mô hình Neural Network

Trang 21

- Tỷ lệ nhầm lẫn giữa ứng cử viên được tuyển dụng (Placed) trong dựđoán so với thực tế là không được tuyển dụng (Not Placed) là khoảng12.7%

- Tỷ lệ nhầm lẫn giữa ứng cử viên không được tuyển dụng (Not Placed)trong dự đoán so với thực tế là được tuyển dụng (Placed) là khoảng19.5%

Hình 10.3 Kết quả ma trận nhầm lẫn của mô hình Decision Tree

 Nhận xét:

- Tỷ lệ nhầm lẫn giữa ứng cử viên được tuyển dụng (Placed) trong dựđoán so với thực tế là không được tuyển dụng (Not Placed) là khoảng13.3%

- Tỷ lệ nhầm lẫn giữa ứng cử viên không được tuyển dụng (Not Placed)trong dự đoán so với thực tế là được tuyển dụng (Placed) là khoảng35.8%

Trang 22

Hình 11.3 Kết quả ma trận nhầm lẫn của mô hình Logistic Regression

 Nhận xét:

- Tỷ lệ nhầm lẫn giữa ứng cử viên được tuyển dụng (Placed) trong dựđoán so với thực tế là không được tuyển dụng (Not Placed) là khoảng12.3%

- Tỷ lệ nhầm lẫn giữa ứng cử viên không được tuyển dụng (Not Placed)trong dự đoán so với thực tế là được tuyển dụng (Placed) là khoảng24.4%

- Tỷ lệ nhầm lẫn giữa ứng cử viên không được tuyển dụng (Not Placed)trong dự đoán so với thực tế là được tuyển dụng (Placed) là khoảng19.5% (thấp thứ nhất)

Và mô hình nào có các chỉ số sai lầm càng thấp thì mô hình đó sẽ càng hiệuquả Vậy mô hình Neural Network là mô hình hiệu quả nhất

ROC Analysis

Trang 23

Hình 12.3 Đường cong ROC với biến phụ thuộc (Target) là Placed

Hình 13.3 Đường cong ROC với biến phụ thuộc (Target) là Not Placed

Trang 24

 Nhận xét:

Đường cong ROC càng tiệm cận với điểm (0;1) thì mô hình càng hiệu quả vàthông qua hai hình trên chúng ta đều thấy được đường cong ROC của mô hìnhNeural Network là tiệm cận điểm này nhất với hình thứ nhất là đường màuxanh lá và hình thứ hai là đường màu cam

*Kết luận cho phương pháp hiệu quả nhất

Mô hình phân lớp Neural Network là phương pháp hiệu quả nhất để dự đoán

- Mô hình có nhiều giá trị đạt kết quả cao nhất

Ngày đăng: 15/02/2025, 22:20

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN