Trong tập dữ liệu này, các phần tử sẽ thuộc về một lớp xác định sẵn và lớp ở đây có nghĩa là mỗi giá trị của một thuộc tính có thể dùng như là thuộc tính gán nhãn hay thường hiểu là nhữn
Trang 1ĐẠI HỌC UEH TRƯỜNG KINH DOANH
Môn học: KHOA HỌC DỮ LIỆU
Giảng viên: Võ Hà Quang Định
Trang 2PHÂN TÍCH NỘI DUNG
1.Định nghĩa
1.1 Khai phá dữ liệu là gì?
-Khai phá dữ liệu (Data Mining) là quá trình sắp xếp và phân tích một tập hợp những dữ liệu lớn để xác định các mẫu và thành lập một mối quan hệ nhằm giải quyết nhiều vấn đề thông qua việc phân tích dữ liệu Các MCU khai phá dữ liệu giúp nhiều công ty và các tập đoàn lớn dự đoán những xu thế của tương lai
-Quá trình để khai thác dữ liệu là một quá trình cực kỳ phức tạp vì nó yêu cầu sự đa dạng và đòi hỏi các dữ liệu chuyên sâu và nhiều các kỹ năng tính toán Hơn nữa quy trình khai phá dữ liệu không chỉ giới hạn ở việc trích xuất những dữ liệu mà còn được dùng cho việc làm sạch sẽ, thay đổi, tích hợp dữ liệu hay xử lý các mẫu
1.2 Khái niệm về 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ên một tập dữ liệu đã được gán nhãn trước đó
-Kỹ thuật này dùng nhằm mục đích rút trích các thông tin cần thiết từ kho dữ liệu có sẵn Vì thế, chúng ta sẽ áp dụng các thuật toán khác nhau tùy thuộc vào mục tiêu sử dụng đối với kỹ thuật này Đồng thời kỹ thuật này có vai trò quan trọng trong việc dự báo các quy luật, xu hướng,… bằng cách mô tả các thuộc tính liên quan để đối tượng được phân loại vào một lớp cụ thể
1.2.1 Quy trình phân lớp dữ liệu
- Quy trình phân lớp dữ liệu gồm hai bước như sau: Bước thứ nhất là xây dựng mô hình phân lớp (Learning) và Bước thứ hai là ước lượng độ chính xác của mô hình cùng với đó là phân lớp dữ liệu mới (Classification)
- Xây dựng mô hình phân lớp (Learning): Ở bước xây dựng mô hình dữ liệu nhằm tạo một mô hình có thể miêu tả tập hợp của dữ liệu Ban đầu một tập dữ liệu có cấu trúc, nó sẽ được mô tả bởi những thuộc tính và được tạo ra từ các bộ giá trị có thuộc tính đó Một bộ giá trị sẽ được xem là một phần tử của dữ liệu mẫu hay à dữ liệu mẫu hay đối tượng, Trong tập dữ liệu này, các phần tử sẽ thuộc về một lớp xác định sẵn và lớp ở đây có nghĩa là mỗi giá trị của một thuộc tính có thể dùng như là thuộc tính gán nhãn hay thường hiểu là những thuộc tính khác Sau đó, sử dụng những nguyên tắc phân tích dưới dạng if – then, cây quyết định (Decision tree), hồi quy logistic (Regression Logistics), mạng lưới Neural (Neural Network),
Trang 3Hình 1.1 Quá trình phân lớp dữ liệu – Xây dựng mô hình phân lớp
-Ước lượng độ chính xác của mô hình và phân lớp dữ liệu mới (Classification): Ở bước tiếp theo, chúng ta sẽ dùng dữ liệu đã có ở các giai đoạn và phân tích dữ liệu mới Đầu tiên, độ chính xác có tính dự báo của mô hình phân lớp tạo được ước lượng Độ chính xác của mô hình trên tập dữ liệu thử nghiệm là tỷ lệ phần trăm của các mẫu trong tập dữ liệu kiểm tra được mô hình tính toán chính xác (phù hợp với thực tiễn) Nếu độ chính xác của mô hình là ước tính dựa trên khối lượng mẫu đã qua đào tạo thì kết quả dự đoán thu về sẽ khả quan Chúng ta cần phải có một bộ dữ liệu dự báo độc lập với bộ dữ liệu đã được huấn luyện Nếu độ chính xác của mô hình là có thể chấp nhận thì mô hình được sử dụng để phân lớp những dữ liệu trong tương lai hoặc dữ liệu mà giá trị thuộc tính phân lớp là chưa biết
Trang 4Hình 1.3: Quá trình trình phân lớp - Phân lớp dữ liệu mới
1.2.2 Các phương pháp phân lớp dữ liệu
- Phương pháp 1: Hồi quy Logistic (Logistic Regression) - Phương pháp 2: SVM (Support Vector Machine) - Phương pháp 3: Cây quyết định (Decision Tree) - Phương pháp 4: Neural Network
1.2.3 Phân loại bài toán phân lớp
- Nhiệm vụ của bài toán phân lớp là phân các đối tượng dữ liệu vào n lớp cho trước: thuộc về phân lớp nhị phân nếu n = 2 và phân lớp đa lớp nếu n > 2 Bài toán là phân lớp đơn nhãn nếu mỗi đối tượng dữ liệu chỉ thuộc vào 1 lớp duy nhất và phân lớp đa nhãn nếu thuộc về nhiều lớp khác nhau
2 Kết quả thực hiện dữ liệu qua Orange 2.1 Mô tả bộ dữ liệu.
-Chìa khóa thành công trong bất kỳ tổ chức nào là thu hút và giữ chân nhân tài hàng đầu, việc phân tích nhân sự tại 1 công ty gồm việc xác định yếu tố nào giữ chân nhân viên ở lại công ty và yếu tố nào khiến những người khác rời đi
-Nhằm ứng dụng khai phá dữ liệu trong việc xem xét quyết định nghỉ việc hay không của nhân viên, bộ dữ liệu của bài nghiên cứu được lấy từ trang “kaggle.com” gồm một số chỉ số đo lường như: Age, Education, Job level,… là những biến độc lập và sự biến động của Attrition là biến phụ thuộc (như đã mô tả ở chương 3) của 1470 người trong 1 công ty Để thuận tiện cho phần mềm học và dự báo, bộ dữ liệu được chia thành 2 phần như sau:
Trang 5+ Dữ liệu huấn luyện:Atttrition của một số nhân viên dùng để Training được thể hiện qua một số biến độc lập nêu trên
Hình 2.1.1: Bộ dữ liệu huấn luyện (minh họa MCK của 33 nhân viên đầu tiên)
Nguồn: Chụp từ phần mềm Orange
+ Dữ liệu dự báo: Attrition của nhân viên trong bộ dữ liệu cũng được thể hiện qua một số biến độc lập như dữ liệu huấn luyện, riêng biến phụ thuộc sẽ không được chia 2 loại sẵn mà sẽ thông qua phần mềm Orange, sau khi đã Training bộ dữ liệu huấn luyện, sau đó lựa chọn phương pháp phân loại phù hợp nhất để tiến hành phân loại cho bộ dữ liệu dự báo
Trang 6Hình 2.1.2: Bộ dữ liệu dự báo (minh họa MCK của 33 nhân viên đầu tiên)Nguồn: Chụp từ phần mềm Orange
2.2 Kết quả của dữ liệu huấn luyện
- Đầu tiên, chúng ta sẽ sử dụng phần mềm Orange để đưa bộ dữ liệu huấn luyện vào Sau khi đưa bộ dữ liệu huấn luyện vào, chúng ta sẽ bắt đầu khai báo các thuộc tính của bộ dữ liệu huấn luyện Các thuộc tính của bộ dữ liệu huấn luyện được thiết kế như sau Đối với các biến độc lập ví dụ như Age, Education, Distance from home,… sẽ được khai báo thuộc tính là “feature”, sau đó, chúng ta sẽ khai báo thuộc tính “target” cho biến phụ thuộc là Attrition (Attrition là kết quả huấn luyện cho kết quả nhân viên nghỉ viêc hay không) Attrition sẽ được chia ra thành hai loại “Yes– nghỉ” và “No – không)
Hình 2.2.1 Khai báo thuộc tính cho các biến trong bộ dữ liệu huấn luyệnNguồn: Chụp từ phần mềm Orange
-Sau đó, tôi lựa chọn 3 thuật toán cho quá trình huấn luyện mô hình bao gồm: Decision Tree, SVM và Logistic Regression, khi có kết quả sẽ dùng các chỉ số đánh giá so sánh với nhau để tìm ra mô hình phù hợp nhất với bài nghiên cứu này
Trang 7Hình 2.2.2: Mô tả tổng quan quá trình huấn luyện vào dự báo
Nguồn: Chụp từ phần mềm Orange
Ở đây, bài nghiên cứu sử dụng phương pháp Cross validation: K fold với k = 5 để đánh -giá mô hình nhờ những đặc tính vượt trội của nó so với phương pháp Hold-out như: mô hình sẽ được huấn luyện và dự báo trên nhiều phần dữ liệu khác nhau, không trùng dữ liệu khi huấn luyện giúp mô hình tăng độ chính xác
Hình 2.2.3: Kết quả đánh giá mô hình bằng phương pháp K-fold
Nguồn: Chụp từ phần mềm Orange
Kết quả cho thấy dùng phương pháp (CA, F1,và Recall) thì Logistic Regression chiếm lợi thế hơn hẳn so với thuật toán còn 2 lại, trong đó chỉ số F1- thường được sử dụng phổ biến để đánh giá mô hình có giá trị đạt 0.865 hay 86,5%, phương pháp AUC thì Logistic
Trang 8Regression cũng có chỉ số cao nhất là 0.826 Bên cạnh đó thì giá trị Precision của phương pháp Logistic Regression là 0.867 cao nhất, trong phương pháp tạm thời Logistic Regression là phương pháp tốt nhất.
Tuy nhiên, độ phù hợp của của thuật toán SVM và Logistic Regression đối với bài nghiên cứu này còn được chứng minh thông qua phương pháp đánh giá bằng ma trận nhầm lẫn:
Hình 2.2.4 : Đánh giá mô hình lớp thông qua Ma trận nhầm lẫn (SVM)
Trang 9Hình 2.2.5 : Đánh giá mô hình lớp thông qua Ma trận nhầm lẫn (Tree)
=>Vậy phương pháp Logistic Regression cho độ lỗi nhỏ nhất là 0.12, nên là phương pháp cho bộ phân lớp cho bộ dữ liệu này tốt nhất
ROC:
Trang 10Hình 2.2.7: Đồ thị ROC
Nguồn: Chụp từ phần mềm Orange
Dựa vào đồ thị thì AUC của phương pháp Logistic Regression là lớn nhất và gần 1 nhất nên mô hình này là phương pháp phân lớp tốt nhất cho bộ dữ liệu này tốt nhất 2.3 Kết quả của dự báo
Ta trích 10% dữ liệu từ bộ dữ liệu này để tiến hành dự báo với phương pháp hồi quy logistic Đầu tiên ta skip biến target là biến Attrition để tiến hành dự báo và xuất 10% (147 dữ liệu) từ bộ dữ liệu “dự báo nhân viên có nghỉ làm hay không” để dự báo vowisw phương pháp hồi quy
Hình 2.3.1: Sơ đồ Predictions
Nguồn: Chụp từ phần mềm Orange
Trang 11Hình 2.3.2: Skip biến target
Nguồn: Chụp từ phần mềm Orange
Hình 2.3.3: Lấy 10% dữ liệu để dự báo
Nguồn: Chụp từ phần mềm Orange
Trang 12Hình 2.3.4 Kết quả của dự báo bằng Logistic regression
Nguồn: Chụp từ phần mềm Orange
Hình 2.3.5: Bảng kết quả dự báo excel
Nguồn: Chụp từ phần mềm Excel
Với kết quả này ta có thể khẳng định được rằng: các nhân viên có dự định tiếp tục làm việc cho công ty chiếm đa số và nhiều hơn số lượng nhân viên có dự định nghỉ làm
Trang 133 Kết luận
- Nhìn chung, đề tài đã cơ bản hoàn thành các mục tiêu nghiên cứu đề ra thông qua 2 phương diện:
+ Về lý thuyết, bài nghiên cứu đã trình bày được các cơ sở lý thuyết tổng quan về kỹ thuật KPDL, tập trung chủ yếu vào phương pháp phân lớp dữ liệu sử dụng thuật toán Logistics Regression
+ Về thực nghiệm, áp dụng nền tảng lý thuyết nghiên cứu được vào bài toán ứng dụng dự báo việc nghỉ làm của nhân viên trong 1 công ty thông qua biến phụ thuộc là quyết định “Yes hay No” và biến độc lập gồm một số biến như: Age, Education, Gender,… Bài nghiên cứu đã đề xuất xây dựng 3 mô hình dự đoán dựa trên thuật toán Tree quyết định, SVM và Logistic Regression, từ đó so sánh các mô hình với nhau và chọn ra mô hình tối ưu nhất chính là Logistic Regression Với bộ dữ liệu huấn luyện ban đầu gồm 1470 nhân viên, mô hình cho phép phân tích các yếu tố ảnh hưởng đến việc ra quyết định nghỉ hay không và mức độ tác động của từng yếu tố.
-Hạn chế của đề tài:Mặc dù đã nỗ lực hết mình để hoàn thành bài nghiên cứu, tuy nhiên, trong quá trình làm bài, tôi không thể tránh khỏi một số hạn chế do các yếu tố chủ quan, cũng như khách quan:
+ Do hạn chế về mặt thời gian, làm bài cá nhân và không gian thực hiện, bài làm có thể không được chi tiết và sẽ có thiếu sót
+ Các biến được thu thập trong bài là thuộc năm 2017 nên độ chính xác có thể thay đổi khi áp dụng cho những năm sau