Untitled BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC UEH BỘ MÔN KHOA HỌC DỮ LIỆU Đồ án SỬ DỤNG PHẦN MỀM ORGANCE DỰ ĐOÁN TỶ LỆ THÀNH CÔNG TRONG VIỆC TIẾP THỊ QUA ĐIỆN THOẠI THÔNG QUA VIỆC ĐĂNG KÝ TIỀN GỬI NGÂN[.]
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC UEH
BỘ MÔN KHOA HỌC DỮ LIỆU
- -Đồ án
SỬ DỤNG PHẦN MỀM ORGANCE DỰ ĐOÁN TỶ LỆ THÀNH CÔNG TRONG VIỆC TIẾP THỊ QUA ĐIỆN THOẠI THÔNG QUA VIỆC ĐĂNG KÝ TIỀN GỬI NGÂN HÀNG CÓ
KỲ HẠN.
- GV hướng dẫn: Đặng Ngọc Hoàng Thành
- SV thực hiện:
+ Lâm Thị Tú Quyên – 31211026755 +
Trang 2
MỤC LỤC
A CHỌN BỘ DỮ LIỆU 5
B TIỀN XỬ LÝ DỮ LIỆU 6
1 Mô tả dữ liệu 6
2 Làm sạch dữ liệu 7
C KHAI THÁC DỮ LIỆU 7
1 Phân cụm dữ liệu 7
1.1 Giới thiệu về phân cụm dữ liệu 7
1.2 Phân cụm phân cấp (Hierarchical Clustering) bằng phương pháp Diana 7
1.2.1 Khái niệm 7
1.2.2 Phân cụm phân cấp bằng phương pháp Diana và kết quả 8
1.3 Phân cụm phân hoạch bằng thuật toán K-means 9
1.3.1 Khái niệm 9
1.3.2 Phân cụm phân hoạch bằng thuật toán K-means và kết quả 9
1.4 Đánh giá các mô hình phân cụm, chọn mô hình phân cụm tối ưu 10
1.4.1 Đánh giá ngoài (external validation) 10
1.4.2 Nhận xét, chọn mô hình phân cụm tối ưu 11
2 Phân lớp dữ liệu 11
2.1 Giới thiệu về phân lớp dữ liệu 11
2.2 Xây dựng mô hình phân lớp, đánh giá mô hình và phân lớp dữ liệu mới 11
2.2.1 Một số phương pháp phân lớp 11
2.2.2 Xây dựng mô hình phân lớp, kiểm tra mô hình và phân lớp dữ liệu mới 12
2.2.3 Đánh giá và nhận xét 14
D KẾT LUẬN 14
1 Đóng góp thực tiễn của dự án 14
1.1 Phân tích về đặc điểm nhóm khách hàng , cũng như dự đoán khả năng thành công 14
1.2 Dự đoán kết quả về hoạt động tiếp thị 16
2 Hạn chế 16
TÀI LIỆU THAM KHẢO & PHỤ LỤC 17
Trang 3DANH MỤC BẢNG BIỂU
Bảng 1: Bảng kết quả so sánh phân cụm bằng phương pháp Diana với nhãn của dữ liệu 10 Bảng 2: Bảng kết quả so sánh phân cụm bằng thuật toán K-means với nhãn của dữ liệu 10 Bảng 3: Bảng ma trận nhầm lẫn kết quả gắn nhãn ở bộ dữ liệu mới – 500 mẫu 14 Bảng 4: Bảng khác nhau về đặc điểm giữa các cụm 15
Trang 4A CHỌN BỘ DỮ LIỆU
Bộ dữ liệu sử dụng: Bộ dữ liệu “Bank Marketing” – nguồn: [Moro et al., 2014] S Moro, P Cortez and P Rita
Bộ dữ liệu này là kết quả thu được từ chiến dịch marketing của một ngân hàng lớn tại Bồ Đào Nha, họ thu thập và tính toán đưa ra kết quả bởi các cuộc gọi điện thoại đã thực hiện
Khảo sát này được thực hiện với mục tiêu tìm hiểu xem mong muốn của khách hàng Thông qua
2 phương án: có đăng ký (yes) hay không có đăng ký (no) đối với sản phẩm của ngân hàng Và sản phẩm được nêu đến đó là đăng kí gửi tiền có kỳ hạn
* Giải quyết vấn đề số mẫu quá lớn
- Do kích thước bộ dữ liệu “Bank Marketing” quá lớn (41188 mẫu), chính vì vậy sẽ không phân cụm được, nhóm quyết định chọn ra 5000 mẫu để sử dụng cho dự án
- Vì sau khi cho máy học để phân lớp thì cần dữ liệu mới để đánh giá hiệu quả mô hình, nên nhóm quyết định trích 500 mẫu không trùng với 5000 mẫu dùng cho dự án
Như vậy, nhóm sẽ trích ngẫu nhiên 5000 mẫu từ bộ dữ liệu lớn “Bank Marketing” (41188 mẫu)
và chọn 5000 mẫu đầu tiên để dùng cho dự án và 500 mẫu phía sau để dùng thực hành phân lớp mới
Cách chọn mẫu ngẫu nhiên:
Dùng phần mềm Orange để chọn mẫu ngẫu nhiên:
- File input: Bộ dữ liệu “Bank Marketing” (41188 mẫu)
- Data Sampler: Chọn số lượng chọn mẫu ngẫu nhiên là 5500
- Ở các Data table chọn 5000 mẫu đầu cho bảng dữ liệu dùng cho dự án và 500 mẫu sau cùng cho dữ liệu dùng để phân lớp mới
Trang 5B TIỀN XỬ LÝ DỮ LIỆU
1 Mô tả dữ liệu
Bộ dữ liệu có 5000 mẫu
Bộ dữ liệu bao gồm 15 biến và 1 biến mục tiêu:
1 Age là tuổi (biến định lượng)
2 Job là nghề nghiệp của khách hàng (biến định tính – admin: quản trị viên, blue collar: lao
động phổ thông, entrepreneur: doanh nhân, housemaid: người giúp việc, management: nhà quản lý, retired: người về hưu, self-employed: lao động tự do, services: dịch vụ, student: học sinh, technician: kỹ thuật viên, unemployed: thất nghiệp, unknown: chưa biết)
3 Marital là tình trạng hôn nhân (biến định tính – divorced: đã ly hôn, married: đã kết hôn,
single: độc thân, unknown: chưa biết)
4 Education là trình độ học vấn (biến định tính – basic.4y: 4 năm tiểu học, basic.6y: 6 năm
tiểu học, basic.9y: Trung học cơ sở, high.school: Trung học phổ thông, illiterate: không đi học, professional.course: học nghề, university.degree: bậc đại học, unknown: chưa biết)
5 Default là có tín dụng trong tình trạng nợ không (biến định tính – yes: có, no: không,
unknown: chưa biết)
6 Housing là có khoản vay mua nhà không (biến định tính – yes: có, no: không, unknown:
chưa biết)
7 Loan là có khoản vay cá nhân không? (biến định tính – yes: có, no: không, unknown: chưa
biết)
8 Contact là hình thức liên lạc (biến định tính – cellular: điện thoại di động, telephone: điện
thoại để bàn)
9 Month là tháng liên lạc cuối cùng trong năm (biến định tính – jan, feb, mar, apr, may, jun,
jul, aug, sep, oct, nov, dec)
10 Day of week là ngày liên lạc cuối cùng trong tuần (biến định tính – mon: thứ 2, tue: thứ 3,
wed: thứ 4, thu: thứ 5, fri: thứ 6)
11 Duration là thời lượng liên lạc cuối cùng (đơn vị: giây) (biến định lượng)
12 Campaign là số lần liên lạc được thực hiện đối với khách hàng trong chiến dịch này (biến
định lượng)
13 Pdays số ngày kể từ khi khách hàng được liên hệ lần cuối đến lúc thực hiện chiến dịch (biến
định lượng)
Trang 614 Previous là số lần liên lạc đã thực hiện đối với khách hàng trước chiến dịch (biến định
lượng)
15 Poutcome là kết quả của chiến dịch tiếp thị trước đó (biến định tính – failure: thất bại,
nonexistent: không tồn tại, success: thành công)
16 Subscribed là khách hàng đã đăng ký tiền gửi có kỳ hạn chưa (BIẾN MỤC TIÊU) (biến
định tính – yes: có, no: không)
2 Làm sạch dữ liệu
Dữ liệu không có dữ liệu bị thiếu (no missing data)
C KHAI THÁC DỮ LIỆU
1 Phân cụm dữ liệu
1.1 Giới thiệu về phân cụm dữ liệu
Phân cụm dữ liệu là quá trình gom cụm hoặc nhóm các đối tượng hay dữ liệu có đặc điểm tương đồng vào các cụm/nhóm tương ứng
Trong đó:
- Các đối tượng trong cùng một cụm sẽ có những tính chất tương tự nhau
- Các đối tượng thuộc cụm hoặc nhóm khác nhau sẽ có các tính chất khác nhau
1.2 Phân cụm phân cấp (Hierarchical Clustering) bằng phương pháp Diana
1.2.1 Khái niệm
a)
Phân cụm phân cấp (Hierarchical clustering)
Xây dựng một cây phân cấp cho dữ liệu cần gom cụm dựa trên:
- Ma trận khoảng cách giữa các phần tử (similarity matrix hoặc dissimilarity matrix)
• Similarity matrix là số đo mức độ giống nhau của hai đối tượng
• Dissimilarity matrix là số đo mức độ khác nhau của hai đối tượng
Trang 7- Độ đo khoảng cách giữa các cụm (single link, complete link…)
Phương pháp này không cần xác định trước số cụm nhưng cần xác định điều kiện dừng
Các phương pháp điển hình: Agnes, Diana…
b) Phương pháp phân cụm phân cấp Diana
Theo chiến lược top down:
- Bắt đầu với 1 cụm gồm tất cả phần tử
- Ở mỗi bước, chia cụm ban đầu thành 2 cụm: khoảng cách giữa 2 cụm là khoảng cách giữa 2 điểm gần nhất từ hai cụm, hoặc khoảng cách trung bình
- Thực hiện đệ quy trên các cụm mới được tách ra và lặp lại cho đến khi mỗi phần tử là 1 cụm
- Kết quả phát sinh cây phân cấp (dendrogram)
1.2.2 Phân cụm phân cấp bằng phương pháp Diana và kết quả
a)
Dùng phần mềm Orange để phân cụm phân cấp bằng phương pháp Diana và chọn số cụm tốt nhất:
- File input: Bộ dữ liệu sử dụng cho dự án nhưng bỏ qua (skip) biến mục tiêu là subcribed
- Distances: Sử dụng độ đo khoảng cách Euclidean (Euclid=Minkowski (với n=2))
- Hierarchical Clustering: Sử dụng phương pháp tính khoảng cách Single-link và chia làm
2 cụm để được chỉ số Sihouette Cluster dương nhiều nhất
b)
Kết quả
Trang 8Số cụm tốt nhất là 2 (vì chia làm 2 cụm để được chỉ số Sihouette Cluster dương nhiều nhất) Phân cụm bộ dữ liệu của dự án (5000 mẫu) thành 2 cụm gồm C1 (195 mẫu) và C2 (4805 mẫu)
1.3 Phân cụm phân hoạch bằng thuật toán K-means
1.3.1 Khái niệm
a)
Phân cụm phân hoạch
Phân tập dữ liệu có n phần tử cho trước thành k tập con (k<=n), mỗi tập con biểu diễn một cụm Các cụm hình thành trên cơ sở tối ưu hóa giá trị hàm độ đo tương tự (độ đo phân cụm) sao cho:
- Mỗi đối tượng thuộc duy nhất 1 cụm, các phần tử trong cụm có sự tương tự nhau
- Mỗi cụm có ít nhất 1 phần tử
Thuật toán điển hình: K-means, K-mediods, Fuzzy C-means
b) Thuật toán K-means
Thuộc nhóm thuật toán phân cụm dựa trên phân hoạch
Tư tưởng chính:
Ta xem mỗi đối tượng trong tập dữ liệu là một điểm trong không gian d chiều (với d là số lượng thuộc tính của đối tượng):
- Bước 1: Chọn k điểm bất kỳ làm các trung tâm ban đầu của k cụm
- Bước 2: Phân mỗi điểm dữ liệu vào cụm có trung tâm gần nó nhất Nếu các điểm dữ liệu
ở từng cụm vừa được phân chia không thay đổi so với kết quả của lần phân chia trước nó thì ta dừng thuật toán
- Bước 3: Cập nhật lại trung tâm cho từng cụm bằng cách lấy trung bình cộng của tất các các điểm dữ liệu đã được gán vào cụm đó sau khi phân chia ở bước 2
- Bước 4: Quay lại bước 2
1.3.2 Phân cụm phân hoạch bằng thuật toán K-means và kết quả
a)
Dùng phần mềm Orange để phân cụm phân hoạch bằng thuật toán K-means và chọn số cụm tốt nhất:
- File input: Bộ dữ liệu sử dụng cho dự án nhưng bỏ qua (skip) biến mục tiêu là subcribed
Trang 9- K-means: Chạy phân cụm từ 2-5 cụm, so sánh Sihouette Scores được tính ra, chọn chia thành 3 cụm (vì 3 là số cụm có Sihouette Scores cao nhất)
b)
Kết quả:
Số cụm tốt nhất là 3 (vì 3 là số cụm có Sihouette Scores cao nhất)
Phân cụm bộ dữ liệu của dự án (5000 mẫu) thành 2 cụm gồm C1 (4129 mẫu), C2 (677 mẫu) và C3 (194 mẫu)
Sihouette Scores: 0.723
1.4 Đánh giá các mô hình phân cụm, chọn mô hình phân cụm tối ưu
1.4.1 Đánh giá ngoài (external validation)
So sánh với kết quả mẫu (biến mục tiêu):
- Phân cụm phân cấp (Hierarchical Clustering) bằng phương pháp Diana
(Bảng 1: Bảng so sánh kết quả phân cụm bằng phương pháp Diana với nhãn của dữ liệu)
- Phân cụm phân hoạch bằng thuật toán K-means
(Bảng 2: Bảng so sánh kết quả phân cụm bằng thuật toán K-means với nhãn của dữ liệu)
Trang 101.4.2 Nhận xét, chọn mô hình phân cụm tối ưu
Sau khi so sánh ngoài, ta nhận thấy rằng
- Phương pháp phân cụm phân cấp (bằng Diana) chỉ phân dữ liệu làm 2 cụm và trong đó
cụm 2 (C2) có kết quả so sánh trùng với cụm 3 (C3’) của phân cụm phân hoạch (bằng
K-means)
- Phương pháp phân cụm phân hoạch (bằng K-means) phân dữ liệu thành 3 cụm, trong đó
có cụm 2 (C2’) và cụm 3 (C3’) chứa Yes ở tỷ trọng cao
Như vậy có thể thấy, phương pháp phân cụm phân hoạch (bằng K-means) có hiệu quả để phân tích thực tiễn hơn phương pháp còn lại
2 Phân lớp dữ liệu
2.1 Giới thiệu 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 đó (thuộc về lớp nào)
Quá trình gá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 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ấn luyện”)
- 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)
• Bước 2.2: Phân lớp dữ liệu mới
2.2 Xây dựng mô hình phân lớp, đánh giá mô hình và phân lớp dữ liệu mới
2.2.1 Một số phương pháp phân lớp
a)
Phương pháp Hồi quy Logistic (Logistic Regression)
Là một mô hình xác suất dự đoán giá 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ạng vector)
Hàm logistic � (� = 1) = 1
1+� −(� 0+�1�1+�2�2+⋯.
+����)
các thuộc tính cụ thể sẽ thuộc vào lớp y nào
b)
Phương pháp Cây quyết định (Decision Tree)
dự đoán đối tượng xem đối tượng x sở hữu
Trong lý thuyết quản trị, cây quyết định là đồ thị các quyết định cùng các kết quả khả dĩ đi kèm nhằm hỗ trợ quá trình ra quyết định
Trang 11Trong 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
c)
Phương pháp SVM (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ác nhau bằng cách xây dựng một siêu phẳng trong không gian nhiều chiều làm mặ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
2.2.2 Xây dựng mô hình phân lớp, kiểm tra mô hình và phân lớp dữ liệu mới
a)
Xây dựng mô hình (huấn luyện) và đánh giá mô hình (kiểm tra tính đúng đắn của mô hình) Dùng phần mềm Orange để xây dựng mô hình phân lớp bằng phương pháp Hồi quy Logistic (Logistic Regression), Cây quyết định (Decision Tree) và SVM (Support Vector Machine), đánh giá mô hình và chọn phương pháp tốt nhất:
- File input: Bộ dữ liệu sử dụng cho dự án (5000 mẫu), chọn biến mục tiêu (target) là subcribed:
- Test and Score: xem các chỉ số từ các phương pháp (quan tâm chỉ số AUC):
Trang 12- Confusion Matrix: xem ma trận nhầm lẫn từ các phương pháp (quan tâm tổng số nhầm lẫn):
(Ma trận nhầm lẫn)
- Như vậy, phương pháp hồi quy Logistic là tối ưu nhất vì có chỉ số AUC cao nhất (gần
1 nhất) và có độ nhầm lẫn ít nhất trong 3 phương pháp.
b)
Phân lớp dữ liệu mới
Dùng phần mềm Orange phân lớp cho bộ dữ liệu 500 mẫu (trích ra ở mục 1.2.)
- File “Bank Marketing (5000 mẫu)” input: Bộ dữ liệu sử dụng cho dự án (5000 mẫu), chọn biến mục tiêu (target) là subcribed:
Trang 13- File “File 500 mẫu skip nhãn” input: Bộ dữ liệu 500 mẫu đã trích ra ở mục 1.2 nhưng bỏ qua (skip) biến mục tiêu là subcribed:
Kết quả phân lớp dữ liệu mới:
MA TRẬN NHẦM LẪN (TỔNG: 500)
Nhãn được gắn mới bởi mô hình phân lớp
Nhãn ban đầu
(Bảng 3: Bảng ma trận nhầm lẫn kết quả gắn nhãn ở bộ dữ liệu mới – 500 mẫu)
Vậy mô hình phân lớp dữ liệu mới có độ chính xác là: (26 + 415) / 500 = 0.882 = 88.2 %
2.2.3 Đánh giá và nhận xét
Dựa vào ma trận nhầm lẫn sau khi phân lớp 500 mẫu dữ liệu mới không trùng với 4999 mẫu sử dụng, ta nhận thấy rằng:
- Mô hình cho kết quả hợp lý một cách chấp nhận được trên dữ liệu mẫu lẫn dữ liệu mới
Như vậy, có thể đánh giá rằng đây là một mô hình “good fitting” (là trường hợp mô hình cho ra
kết quả hợp lý với cả tập dữ liệu huấn luyện và các giá trị mới, tức mang tính tổng quát)
D KẾT LUẬN
1 Đóng góp thực tiễn
1.1 Phân tích đặc điểm nhóm khách hàng, dự đoán khả năng thành công
Sau khi đánh giá các mô hình phân cụm, nhóm quyết định chọn mô hình phân cụm phân hoạch bằng thuật toán K-means Từ kết quả phân cụm, tìm ra được 3 cụm có tỷ trọng yes / no (trong biến mục tiêu – subcribed – có đăng kí tiền gửi có kỳ hạn hay không?) chênh lệch nhiều
Yes (có) (ở biến mục tiêu – subcribed) tương đương với sự thành công của ngân hàng khi tiếp thị qua điện thoại đối với sản phẩm đăng ký tiền gửi có kỳ hạn, no (không) tương đương với sự thất bại trong chiến dịch này
Trang 14* Phân tích Bảng so sánh kết quả phân cụm bằng thuật toán K-means với nhãn của dữ liệu (Bảng 2), ta thấy rằng:
- Cụm 1 có số lượng mẫu nhiều nhất (4128 mẫu), trong đó Yes (thành công) chiếm 4.6%,
No (thất bại) chiếm 95.4%
- Cụm 2 có số lượng mẫu là 677 mẫu, trong đó Yes chiếm 36.6%, No chiếm 63.4%
- Cụm 3 có số lượng mẫu ít nhất (194 mẫu), trong đó Yes chiếm 63.4%, No chiếm 36.6% Như vậy, có thể kết luận rằng, những khách hàng có đặc điểm tương đồng với Cụm 3 có khả năng sẽ đăng kí tiền gửi kỳ hạn nhất (63.4%), tương tự những khách hàng ở Cụm 2 sẽ có khả năng thành công trung bình (36.6%), và ở Cụm 3 sẽ có khả năng thành công rất thấp (4.6%)
* Sau khi phân tích dữ liệu từ các cụm, nhóm tìm được điểm khác nhau giữa các cụm như sau:
Cụm 1 (4128 mẫu)
(Khả năng thành công rất thấp – 4.6%)
Cụm 2 (677 mẫu)
(Khả năng thành công trung bình – 36.6%)
Cụm 3 (194 mẫu)
(Khả năng thành công cao – 63.4%)
Duration
(Thời lượng ngân hàng đã
gọi cho khách hàng tính
đến lần cuối cùng – đơn
vị: giây)
Mean: 176.10 Minimum: 2 Maximum: 468
Mean: 762.43 Minimum: 470 Maximum: 2420
Mean 297.42 Minimum: 5 Maximum: 1152
Pdays
(Số ngày kể từ khi khách
hàng được liên hệ lần cuối
đến lúc thực hiện chiến
dịch – đơn vị: ngày, 999:
chưa từng gọi trước đó)
Mean: 999 Minimum: 999 Maximum: 999
Mean: 999 Minimum: 999 Maximum: 999
Mean: 5.93 Minimum: 0 Maximum: 21
Campaign
(Số lần liên lạc được thực
hiện đối với khách hàng
trong chiến dịch này –
đơn vị: số lần)
Mean: 2.58 Minimum: 1 Maximum: 42
Mean: 2.45 Minimum: 1 Maximum: 28
Mean: 1.73 Minimum: 1 Maximum: 8
Poutcome
(Kết quả của chiến dịch
tiếp thị trước đó – Failure:
thất bại, Nonexistent:
không tồn tại, Success:
thành công)
Failure: 9.9%
Nonexistent: 90.1%
Success: 0%
Failure: 8.0%
Nonexistent: 92.0%
Success: 0%
Failure: 6.2%
Nonexistent: 0% Success: 93.8%
(Bảng 4: Bảng đặc điểm khác nhau giữa các cụm)