trực quan hóa, phân tích thống kê, huấn luyện mô hình học máy trong một môi trường duy nhất.- Tính linh hoạt: Orange cho phép người dùng tích hợp các công cụ mở rộng và thưviện của Pytho
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC KINH TẾ TP HỒ CHÍ MINH
TRƯỜNG CÔNG NGHỆ VÀ THIẾT KẾ
-🙦🙦🙦
-ĐỒ ÁN MÔN HỌC ĐỀ TÀI: Dự đoán khách hàng tiềm năng và điều chỉnh chiến lược tiếp thị của ngân hàng bằng phần mềm Orange Học phần: Khoa Học Dữ Liệu Mã LHP: 23D1INF50905922 Nhóm Sinh Viên: 1 Trần Đình Hà (Nhóm trưởng) 31211027134 2 Ngô Thị Vân Anh 31211021191
3 Huỳnh Hai Him 31211021588
4 Đào Mai Loan 31211023912
5 Phan Vũ Anh Minh 31211025643
Khóa: K47 Giảng Viên: TS Đặng Ngọc Hoàng Thành
TP Hồ Chí Minh, Ngày 05 tháng 05 năm 2023
Trang 2LỜI CẢM ƠN
Đầu tiên, chúng em muốn bày tỏ lòng cảm ơn đến thầy Đặng Ngọc HoàngThành, thầy đã dành nhiều thời gian và tâm huyết để giúp chúng em có kiến thứctrong môn Khoa học dữ liệu và có kiến thức hoàn thiện tiểu luận này Những ý kiếnđóng góp, nhận xét chân thành và sự hỗ trợ tận tình của thầy đã giúp bọn em xácđịnh và nghiên cứu các vấn đề quan trọng một cách chính xác hơn
Trước khi sử dụng phần mềm Orange, chúng em đã gặp nhiều khó khăntrong việc phân tích dữ liệu và đưa ra kết luận chính xác Tuy nhiên, khi được thầyhướng dẫn sử dụng Orange, chúng em đã tìm thấy giải pháp cho những khó khăn
đó Phần mềm cung cấp cho bọn em nhiều công cụ hữu ích để khám phá và phântích dữ liệu một cách dễ dàng và chính xác
Cuối cùng, muốn cảm ơn đến những cá nhân và tổ chức đã cung cấp tài liệu
và thông tin cần thiết để bọn em có thể thực hiện nghiên cứu này Các tài liệu này
đã cung cấp cho chúng em những thông tin quan trọng và giúp có thể phân tích vàđưa ra kết luận chính xác
Một lần nữa, chúng em xin chân thành cảm ơn thầy Đặng Ngọc HoàngThành đã giúp đỡ trong quá trình hoàn thành tiểu luận này mặc dù thời gian và kiếnthức hạn hẹp
1
Trang 3MỤC LỤC
CHƯƠNG 1 TỔNG QUAN 5
1.1 Tổng quan về bài toán phân lớp dữ liệu 5
1.1.1 Đ nh nghĩa ị 5
1.1.2 ng d ng Ứ ụ 5
1.2 Giới Thiệu Về Python và Phần Mềm Orange 6
1.3 Lý do chọn lựa đề tài 7
1.3.1 Dẫẫn nh p ậ 7
1.3.2 Tẫầm quan tr ng c a chiếến l ọ ủ ượ c tếếp th hi u qu và tm kiếếm khách hàng tếầm năng trong kinh ị ệ ả doanh 8
1.3.3 Tẫầm quan tr ng c a vi c phẫn tch d li u khách hàng ọ ủ ệ ữ ệ 8
1.3.4 Lý do 9
1.3.5 M c tếu đếầ tài ụ 9
1.3.6 Đốếi t ượ ng và ph m vi nghiến c u ạ ứ 9
1.3.7 Cống c s d ng ụ ử ụ 9
1.3.8 Ý nghĩa nghiến c u ứ 10
CHƯƠNG 2: CÁC MÔ HiNH PHÂN LkP Dl LIÊnU 10
2.1 Mô hình phân lớp trên phần mềm Orange 10
2.1.1 Mố h5nh Logistc Regression (hốầi quy logistc) 11
2.1.2 Mố h5nh Decision Tree 12
2.1.3 Mố H5nh Support Vector Machine 13
2.1.4 Mố h5nh Neural Network 14
2.2 Quy Trình Phân Lớp Dữ Liệu 15
2.2.1 Phẫn Chia D Li u ữ ệ 15
2.2.2 Phẫn L p D Li u ớ ữ ệ 15
2.2.3 Đánh Giá Tính Hi u Qu ệ ả 16
CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 21
3.1 Mô tả dữ liệu 21
3.2 Phân tích yêu cầu người dùng 23
3.2.1 Xác đ nh và phẫn tch yếu cẫầu ng ị ườ i dùng .23
3.3 Bộ dữ liệu 25
2
Trang 43.3.1 N p d li u
3.3.2 Quan sát d li u ữ ệ 25
3.3.3 Tiếần x lý d li u ử ữ ệ 26
3.3.4 L a ch n và tr5nh bày d li u phù h p v i yếu cẫầu ng ự ọ ữ ệ ợ ớ ườ i dùng: 29
3.4 Kết quả thực nghiệm 32
3.4.1 Xẫy d ng mố h5nh cho bài toán 1: ự 32
3.4.2 Xẫy d ng mố h5nh cho bài toán 2: ự 37
3.5 Đánh giá kết quả phân tích, trực quan hóa kết quả, thảo luận và các đề xuất hỗ trợ quyết định 41
3.5.1 Kếết qu đánh giá ph ả ươ ng pháp c a Test & Score – bài toán 1: ủ 42
3.5.2 Đánh giá mố h5nh d a trến kếết qu Confusion Matrix – bài toán 1: ự ả 43
3.5.3 Đánh giá mố h5nh d a trến kếết qu ROC Analysis – bài toán 1: ự ả 44
3.5.4 Kếết qu d báo bài toán 1: ả ự 46
3.5.5 Kếết qu đánh giá ph ả ươ ng pháp c a Test & Score – bài toán 2: ủ 47
3.5.6 Đánh giá mố h5nh d a trến kếết qu Confusion Matrix – bài toán 2: ự ả 48
3.5.7 Đánh giá mố h5nh d a trến kếết qu ROC Analysis – bài toán 2: ự ả 49
3.5.8 Kếết qu d báo bài toán 2: ả ự 51
CHƯƠNG 4: KẾT LUẬN 52
4.1 Kết quả đạt được 52
4.2 Những hạn chế tồn tại 52
4.3 Hướng phát triển đề tài 53
TÀI LIỆU THAM KHẢO 54
PHỤ LỤC 55
Danh m 甃⌀c hình ảnh
H5nh nh 1a : Các mô hình phân lớp trên phần mềm Orange 13 H5nh nh 2: a Mô h nh Logistic Regression (h i quy logistic) 13
3
Trang 5H5nh nh 26a : Mô h nh tính điểm số các thuật toán 39
H5nh nh 31a : Hộp thoại Test and Score và kết quả định lượng 44H5nh nh 32a : Kết quả thuật toán Neural Network 45H5nh nh 33a : Kết quả thuật toán Random Forest 45H5nh nh 34a : Kết quả thuật toán Logistic Regression 46H5nh nh 35a : Đường cong ROC Analysis - Target “nono” 47H5nh nh 36a : Đường cong ROC Analysis - Target “yes” 47H5nh nh 37a : Mô hình sử dụng thuật toán Logistic Regeression để dự báo dữ liệu bài toán 1 48H5nh nh 38a : Hộp thoại Test and Score và kết quả định lượng 49H5nh nh 39a : Kết quả thuật toán Neural Network 50H5nh nh 40a : Kết quả thuật toán Logistic Regression 51H5nh nh 41a : Kết quả thuật toán Decision Tree 51H5nh nh 42a : Đường cong ROC Analysis - Target “failure” 52H5nh nh 43a : Đường cong ROC Analysis - Target “success” 53H5nh nh 44a : Mô h nh sử dụng thuật toán Decision Tree để dự báo dữ liệu bài toán 2 53
4
Trang 6Danh m 甃⌀c bảng biểu
B ng 1 a : Tóm tắt dữ liệu 21
B ng 2a : Dữ liệu gốc 26
B ng 3a : Dữ liệu sau khi được tiền xử lý 28
B ng 4a : Dữ liệu sau khi được điều chỉnh phù hợp 29
B ng 5a : Dữ liệu sau khi lọc 32
B ng 6a : Quan sát dữ liệu Data Train 35
B ng 7a : Quan sát dữ liệu Data Forecast 35
B ng 8a : Quan sát dữ liệu Data Train 39
B ng 9a : Quan sát dữ liệu Data Forecast 39
B ng 10a : Kết quả dự báo bài toán 1 46
B ng 11a : Kết quả dự báo bài toán 2 52
CHƯƠNG 1 TỔNG QUAN 1.1 Tổng quan về bài toán phân lớp dữ liệu
1.1.1 Định nghĩa
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 về lớp nào) cho đối tượng dữ liệu chính là quá trình phân lớp dữ liệu
Một trong những hướng nghiên cứu chính của khai phá dữ liệu đó là phân lớp dữ liệu (Classification) Việc phân tích dữ liệu bao gồm: phân lớp và dự đoán với mục đích tạo ra một mô hình mô tả lớp dữ liệu có vai trò quan trọng hay dự đoán xu thế tương lai của dữ liệu Quá trình phân lớp dự đoán giá trị của những nhãn xác định(categorical label) hay những giá trị rời rạc (discrete value) Đối với khái niệm về thuật ngữ “Phân lớp dữ liệu” chúng ta có thể hiểu đó là quá trình phân bổ 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
1.1.2 Ứng d 甃⌀ng
Trong những năm gần đây, phân lớp dữ liệu đã thực sự thu hút được một lượng lớn các nhà nghiên cứu trong nhiều lĩnh vực đa dạng khác nhau: học máy (Machine Learning), hệ chuyên gia (Expert System), thống kê (Statistics), Ngoài ra, việc phân lớp
dữ liệu còn có vai trò quan trọng trong một số ngành Đối với ngành Tài chính -Ngân hàng thì phân lớp dữ liệu được ứng dụng để dự báo giá chứng khoán, xếp hạng tín dụng
cá nhân, đánh giá rủi ro tài chính Với ngành Sale & Marketing thì được ứng dụng vào
5
Trang 7việc dự báo doanh thu, dự báo khách hàng trung thành Còn đối với ngành Kinh tế thìđược ứng dụng để xem xét những dự báo khủng hoảng kinh tế, dự báo cung cầu.
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, được tạo ra vào những năm 1980 bởi
Guido van Rossum Nó là một ngôn ngữ lập trình đa năng và được sử dụng rộng rãi trongnhiều lĩnh vực như khoa học dữ liệu, máy học, trí tuệ nhân tạo, phát triển web, và nhiềuứng dụng khác Python có cú pháp đơn giản, dễ đọc và dễ hiểu, và có một cộng đồng lớnvới rất nhiều thư viện hỗ trợ cho việc phát triển các ứng dụng
Orange là một phần mềm mã nguồn mở được sử dụng để thực hiện các tác vụ
phân tích dữ liệu và học máy Nó cung cấp cho người dùng một giao diện đồ họa thânthiện để xử lý dữ liệu, mô hình hóa, đánh giá và trực quan hóa các kết quả Orange đượcviết bằng Python và có rất nhiều tính năng hữu ích như tạo biểu đồ, xây dựng mô hình,kiểm tra độ chính xác, và tìm kiếm các mô hình phù hợp nhất cho dữ liệu của bạn Nócũng cung cấp nhiều công cụ hỗ trợ cho việc khai phá dữ liệu và phân tích dữ liệu trongthời gian thực Orange rất phổ biến trong cộng đồng khoa học dữ liệu và học máy, vàđược sử dụng rộng rãi trong các nghiên cứu và ứng dụng thương mại
Python và Orange đều là các công cụ được sử dụng trong lĩnh vực phân tích dữliệu và học máy, tuy nhiên, chúng có những đặc điểm riêng biệt như sau:
Đặc điểm của Python:
- Ngôn ngữ lập trình phổ biến: Python là một ngôn ngữ lập trình phổ biến với cú
pháp đơn giản, dễ đọc và dễ hiểu, thuận tiện cho người mới bắt đầu học lập trình
- Cộng đồng phát triển lớn: Python có một cộng đồng phát triển đông đảo, với
nhiều thư viện mở rộng phong phú như NumPy, Pandas, Scikit-learn, v.v Hỗ trợ cho việc
xử lý dữ liệu và học máy
- Đa năng: Python là một ngôn ngữ đa năng, có thể được sử dụng trong nhiều lĩnh
vực khác nhau, không chỉ trong phân tích dữ liệu mà còn trong web development,machine learning, data science, artificial intelligence, và nhiều lĩnh vực khác
- Tính nhất quán: Python là ngôn ngữ lập trình có tính nhất quán cao, có cấu trúc
rõ ràng và chuẩn mực Điều này giúp cho việc phát triển và duy trì mã nguồn dễ dàng,đồng thời cũng tạo điều kiện cho việc hợp tác trong nhóm
Đặc điểm của Orange:
- Giao diện đồ họa: Orange cung cấp giao diện đồ họa trực quan, cho phép người
dùng thực hiện các tác vụ phân tích dữ liệu một cách trực quan, không cần viết mã lệnh.Điều này làm cho Orange dễ tiếp cận và sử dụng đối với người dùng không có kỹ nănglập trình
- Công c 甃⌀ đa nhiệm: Orange cung cấp nhiều công cụ phân tích dữ liệu và học máy
tích hợp sẵn, cho phép người dùng thực hiện nhiều tác vụ khác nhau như xử lý dữ liệu,
6
Trang 8trực quan hóa, phân tích thống kê, huấn luyện mô hình học máy trong một môi trườngduy nhất.
- Tính linh hoạt: Orange cho phép người dùng tích hợp các công cụ mở rộng và thư
viện của Python, tận dụng tính linh hoạt của Python để mở rộng tính năng và khả năngcủa Orange
- Hỗ trợ đa nền tảng: Orange là một phần mềm đa nền tảng, có thể chạy trên nhiều
hệ điều hành như Windows, macOS và Linux, đồng thời hỗ trợ nhiều ngôn ngữ lập trìnhkhác nhau, bao gồm cả Python
- Học máy giám sát và không giám sát: Orange cung cấp một loạt các công cụ học
máy giám sát và không giám sát, cho phép người dùng huấn luyện và đánh giá các môhình học máy khác nhau cho các tác vụ phân tích dữ liệu khác nhau, từ dự đoán đơn giảnđến phân tích đa chiều phức tạp
- Hỗ trợ trực quan hóa: Orange cung cấp các công cụ trực quan hóa dữ liệu mạnh
mẽ, giúp người dùng hiểu dữ liệu và kết quả phân tích dễ dàng hơn thông qua đồ thị, biểu
đồ và các định dạng trực quan khác
- Tính mở rộng: Orange là một phần mềm mã nguồn mở, cho phép người dùng tùy
chỉnh và mở rộng tính năng của nó thông qua việc phát triển các plugin hoặc tích hợp vớicác công nghệ khác
- Cộng đồng phát triển: Orange có một cộng đồng người dùng và phát triển đông
đảo, cung cấp hỗ trợ, tài liệu và tài nguyên đa dạng cho người dùng
Tóm lại, Python và Orange là hai công cụ phổ biến trong lĩnh vực phân tích dữ liệu
và học máy, với những đặc điểm riêng biệt như tính đa năng, tính nhất quán của Python
và tính trực quan, đa nhiệm, hỗ trợ đa nền tảng của Orange Sự kết hợp giữa Python vàOrange có thể giúp người dùng thực hiện các tác vụ phân tích dữ liệu và học máy mộtcách hiệu quả và linh hoạt
1.3 Lý do chọn lựa đề tài
1.3.1 Dẫn nhập
Ngân hàng hoạt động kinh doanh trong lĩnh vực tài chính - tiền tệ đây là lĩnh vựcđặc biệt nhạy cảm tác dụng trực tiếp đến mọi ngành nghề, mọi hoạt động, mọi chủ thểtrong nền kinh tế Sản phẩm kinh doanh của ngân hàng là các dịch vụ gắn liền với sự chuchuyển tiền tệ trong nền kinh tế, đáp ứng các giao dịch phát sinh của các chủ thể mà cácgiao dịch này cần thiết sử dụng tiền để đo lường tính toán giá trị thanh toán Hoạt độngkinh doanh của ngân hàng phụ thuộc vào lòng tin và mức độ tín nhiệm của khách hàngđối với ngân hàng điều này giúp ngân hàng có thể dễ dàng huy động vốn từ công chúng
và sử dụng nguồn vốn này để cho vay Chính vì vậy để có những chiến lược tốt cho ngânhàng phát triển, tăng nguồn vốn cũng như cung ứng ra thị trường, thì Ngân hàng cần cóđược sự tin tưởng, sự tín nhiệm từ khách hàng Trong đó, ngân hàng cần dự đoán kháchhàng tiềm năng và điều chỉnh chiến lược tiếp thị của ngân hàng
7
Trang 91.3.2 Tầm quan trọng của chiến lược tiếp thị hiệu quả và tìm kiếm khách hàng tiềm năng trong kinh doanh
Ngày nay, xã hội đang phát triển rất nhanh với nhu cầu ngày càng đa dạng, đồngthời môi trường cạnh tranh giữa các doanh nghiệp trở nên khốc liệt hơn bao giờ hết Vìvậy, việc đẩy mạnh các chiến lược tiếp thị đóng một vai trò quan trọng trong việc thúcđẩy lợi nhuận của công ty Tiếp thị không chỉ là một mối quan hệ đơn thuần giữa doanhnghiệp và khách hàng, mà còn là một quá trình tương tác hai chiều, mang lại lợi ích cho
cả hai bên Nếu công ty có một chiến lược tiếp thị hiệu quả, nó sẽ giúp tăng độ nhận diện
và sự nhận biết của người tiêu dùng về doanh nghiệp, công ty một cách trực quan, dễdàng và thu hút
Điều này giúp cho người tiêu dùng có thể hiểu rõ giá trị của sản phẩm và dịch vụ
mà doanh nghiệp cung cấp, từ đó tăng sự sẵn lòng sử dụng sản phẩm, dịch vụ của công ty.Đồng thời, việc tiếp thị còn giúp cho người tiêu dùng có thể thể hiện những nhu cầu,mong muốn của bản thân tới công ty, giúp cho doanh nghiệp có thể đáp ứng tốt hơn vớinhu cầu của khách hàng
Ngoài ra, một chiến lược tiếp thị hiệu quả còn giúp cho doanh nghiệp thu hút đượcnhiều khách hàng tiềm năng trong tương lai Bằng cách đưa ra các giải pháp, đề xuất và
kế hoạch tiếp thị cho từng tệp khách hàng, sản phẩm, dịch vụ tương ứng, doanh nghiệp cóthể tăng cơ hội tiếp cận với các khách hàng tiềm năng, và đưa ra những sản phẩm và dịch
vụ phù hợp với nhu cầu của họ Việc đẩy mạnh chiến lược tiếp thị sẽ giúp cho doanhnghiệp tăng cường quan hệ với khách hàng, tăng doanh thu và tiếp cận với nhiều kháchhàng tiềm năng Do đó, đây là một yếu tố quan trọng trong việc phát triển kinh doanh củacác công ty
1.3.3 Tầm quan trọng của việc phân tích dữ liệu khách hàng
Với sự xuất hiện của Internet of Things, còn được gọi là Internet vạn vật, đã mở ramột kỷ nguyên mới cho việc sử dụng dữ liệu trong đa ngành, đa phương diện, đặc biệt làcác ngành liên quan đến kinh tế và kinh doanh Sự phát triển nhanh chóng và mạnh mẽcủa dữ liệu số, cùng với sự gia tăng tốc độ tăng trưởng của hệ thống thông tin, đã tạo nên
sự cần thiết của phân tích dữ liệu cho các doanh nghiệp Việc khai thác, phân tích dữ liệu
đã trở nên không thể thiếu đối với các ngành nghề Một loạt các dữ liệu khổng lồ từ kháchhàng, hoạt động kinh doanh, đối tác, không thể xử lý bằng sức người, do đó việc số hoácác dữ liệu để có thể đánh giá hay phân tích chiến lược Chính vì thế ngày nay, nhiều phầnmềm cũng như công cụ ra đời như Excel, R, Python, Power BI, đã góp phần hỗ trợtrong việc phân tích dữ liệu Từ đó, các doanh nghiệp có nguồn tài nguyên dồi dào để hiểu
về chính mình, không chỉ với người tiêu dùng mà còn trong nội bộ doanh nghiệp.Phân tích dữ liệu khách hàng sẽ giúp doanh nghiệp hiểu rõ các thông tin, phân tíchđầy đủ và rõ ràng dữ liệu về nhân khẩu học, tâm lý học, hành vi và nhiều yếu tố khác Từcác kết quả phân tích này, doanh nghiệp có thể đánh giá trực tiếp và chi tiết về mối quan
hệ với khách hàng, qua đó có được bức tranh toàn diện về đa dạng tệp khách hàng, baogồm cả khách hàng mới và cũ, và đặc biệt là dự đoán được các tệp khách hàng tiềm năngcần chú ý chăm sóc của doanh nghiệp
8
Trang 10Nếu một doanh nghiệp thực sự muốn tạo ra nhiều đột phá, việc hiểu được kháchhàng thông qua phân tích dữ liệu là không thể thiếu trong quá trình xây dựng chiến lượctiếp thị Với sự thay đổi liên tục của thị trường trong xã hội hiện đại, mỗi doanh nghiệpcần thường xuyên thực hiện phân tích khách hàng để duy trì sự cạnh tranh và phát triểnbền vững.
1.3.4 Lý do
Nhận thức được tầm quan trọng của việc phân tích data khách hàng để biết đượckhách hàng tiềm năng và điều chỉnh chiến lược tiếp thị của ngân hàng, với bộ dữ liệu mànhóm đã thu thập được, nhóm sẽ sử dụng Orange để xây dựng quy trình khai thác dữ liệutrực quan Dữ liệu sau khi được phân tích bở Orange, nhóm sẽ đưa ra một số ý kiến nhậnxét và kết luận của từng cửa sổ phân tích, đánh giá độ hiệu quả và để ngân hàng có thể
đưa ra các quyết định phù hợp.Và đó là lý do nhóm đã chọn đề tài: “ Dự đoán khách hàng tiềm năng và điều chỉnh chiến lược tiếp thị của ngân hàng bằng phần mềm Orange “
1.3.5 M 甃⌀c tiêu đề tài
Nhóm thực hiện đề tài này với các mục đích sau:
- Áp dụng các lý thuyết đã học vào thực tế để giải quyết các vấn đề và bài toán cụthể
- Sử dụng các phương pháp phân tích như phân lớp dữ liệu để giải quyết bài toán và
so sánh các phương pháp để tìm ra phương pháp tối ưu nhất cho việc dự báo dữ liệu
- Đánh giá kết quả của phương pháp được chọn để đảm bảo tính chính xác và hiệuquả của quá trình dự báo dữ liệu
1.3.6 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: đề tài nghiên cứu tập trung vào đối tượng là khách hàng đãnhận được sự tư vấn tiếp thị từ một tổ chức ngân hàng tại Bồ Đào Nha
Phạm vi nghiên cứu: bao gồm việc phân tích bộ dữ liệu được tổng hợp từ các chiếndịch tiếp thị trực tiếp (qua phương thức gọi điện thoại) của tổ chức ngân hàng này Bộ dữliệu này có liên quan đến các thông tin về khách hàng, các chiến dịch tiếp thị và kết quảcủa các chiến dịch này Dữ liệu được thu thập vào tháng 6 năm 2014 bởi S Moro, P.Cortez và P Rita và có thể được truy xuất tại: http://archive.ics.uci.edu/
1.3.7 Công c 甃⌀ sử d甃⌀ng
Các bài toán đặt ra được nhóm xử lý thông qua Phần mềm Orange – một trongnhững phần mềm được sử dụng phổ biến được sử dụng bởi sự vận dụng dễ dàng Trongviệc khai thác và phân tích dữ liệu, hai lĩnh vực Data Mining và Machine Learning đượcđánh giá là rất phức tạp Để giúp người dùng có thể dễ dàng thực hiện các tác vụ này,nhiều phần mềm đã được phát triển Trong số đó, phần mềm Orange là một trong nhữngcông cụ được sử dụng rộng rãi nhờ tính năng đơn giản và hữu ích Orange được phát triểnbằng Python và có thể tích hợp nhiều công cụ trong quá trình khai phá dữ liệu Tuy nhiên,
9
Trang 11điểm nổi bật của Orange là giao diện thân thiện với người dùng Các bước thực hiện trởnên rõ ràng và dễ hiểu hơn, đồng thời giúp cho quá trình phân tích dữ liệu trở nên nhanhchóng và dễ dàng hơn Ngay cả với những người dùng mới tiếp cận với phần mềm,Orange cũng đem lại trải nghiệm tốt nhất.
1.3.8 Ý nghĩa nghiên cứu
Trong thời gian gần đây, sự phát triển và áp dụng hệ thống thông tin trong việc giảiquyết các vấn đề của doanh nghiệp ngày càng được đặc biệt quan tâm Đặc biệt là trongbối cảnh cạnh tranh khốc liệt hiện nay, các nhà quản lý cần phải sử dụng phân tích dữ liệu
để nâng cao độ cạnh tranh, tạo cơ hội và định vị vị thế của công ty trên thị trường
Vì vậy, đề tài này sẽ giúp cho tổ chức Ngân hàng tại Bồ Đào Nha có thể phân tíchkhách hàng một cách tổng thể và đa chiều, từ đó có được cái nhìn tổng quan về người tiêudùng khi thực hiện các hoạt động tiếp thị Từ đó, các nhà quản lý sẽ có thể điều chỉnhchiến lược tiếp thị một cách hiệu quả và đạt được mục tiêu tăng doanh số, doanh thu
CHƯƠNG 2: CÁC MÔ HiNH PHÂN LkP Dl LIÊnU
2.1 Mô hình phân lớp trên phần mềm Orange
2.1.1 Mô hình Logistic Regression (hồi quy logistic)
Khái niê ƒm: 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)
10Hinh nh a 1: Các mô h nh phân lPp trên phRn mềm Orange
H5nh nh a 2: Mô h nh Logistic Regression (h i quy logistic)
Trang 12Các loại hồi quy logistic:
● Hồi quy logistic nhị phân
Hồi quy logistic nhị phân phù hợp với các vấn đề phân lớp nhị phân chỉ có hai kếtquả có thể xảy ra Biến phụ thuộc chỉ có thể có hai giá trị, chẳng hạn như có và khônghoặc 0 và 1
Dù hàm logistic tính toán một phạm vi giá trị giữa 0 và 1, mô hình hồi quy nhịphân vẫn sẽ làm tròn kết quả đến các giá trị gần nhất Nói chung, kết quả dưới 0,5 sẽ đượclàm tròn thành 0 và kết quả trên 0,5 sẽ được làm tròn thành 1, do đó hàm logistic trả vềmột kết quả nhị phân
● Hồi quy logistic đa thức
Hồi quy đa thức có thể phân tích các vấn đề có một số kết quả có thể xảy ra, miễn
là số kết quả hữu hạn
Hồi quy logistic đa thức hoạt động bằng cách ánh xạ các giá trị kết quả cho các giá trịkhác nhau giữa 0 và 1 Hàm logistic có thể trả về một khoảng dữ liệu liên tục như 0,1,0,11, 0,12, v.v., do đó hồi quy đa thức cũng nhóm đầu ra đến các giá trị gần nhất có thể
có
● Hồi quy logistic thứ tự
Hồi quy logistic thứ tự, hay mô hình logit có thứ tự, là một loại hồi quy đa thức đặc biệtcho các vấn đề trong đó các số đại diện cho các bậc chứ không phải là giá trị thực tế
2.1.2 Mô hình Decision Tree.
Khái niê ƒm : Trong lý thuyết quản trị, cây quyết định là đồ thị các quyết định cùngcác kết quả khả dĩ đi kèm nhằm hỗ trợ quá trình ra quyết định Trong lĩnh vực khai phá
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
11
Trang 13Đầu vào
+ Dữ liệu: dữ liệu đầu vào
+ Tiền xử lý: phương pháp tiền xử lý
Đầu ra
+ Learner: thuật toán quyết định Tree
Mô hình: mô hình Decision Tree là một thuật toán đơn giản phân chia dữ liệu thành cácnút bởi các lớp dữ liệu Nó là tiền thân của Random Forest Tree trong phần mềm Orangeđược thiết kế bên trong và có thể xử lý cả bộ dữ liệu rời rạc và liên tục Nó cũng có thểđược sử dụng cho cả nhiệm vụ phân loại và hồi quy
Ưu điểm:
+ Dễ hiểu
+ Không đòi hỏi viê ƒc chuẩn hóa dữ liê ƒu.
+ Có thể xử lý trên nhiều kiểu dữ liê ƒu khác nhau
+ Xử lý tốt mô ƒt lượng dữ liê ƒu lớn trong thời gian ngắn.
Nhược điểm:
+ Khó giải quyết trong tình huống dữ liê ƒu phụ thuô ƒc thời gian.
+ Chi phí xây dựng mô hình cao.
12Hinh nh a 3: Mô h nh Decision Tree
Trang 142.1.3 Mô Hình Support Vector Machine.
Định nghĩa : 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 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âydự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.Support Vector Machine (SVM) là một kỹ thuật máy học phân tách không gian thuộc tínhvới một siêu phẳng, do đó tối đa hóa các điểm dữ liệu của tất cả các lớp Kỹ thuật nàythường mang lại kết quả dự đoán tối cao
Đối với hồi quy, SVM thực hiện hồi quy tuyến tính trong không gian tính năng với kíchthước cao bằng cách sử dụng ε-insensitive Độ chính xác ước tính của nó phụ thuộc tốtvào các tham số C, ε và kernel
Hoạt động cho cả nhiệm vụ phân loại và hồi quy
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
Ưu điểm:
13Hinh nh a 4: Mô H nh Support Vector Machine
Trang 17- Kết quả của bước này là mô hình phân lớp đã được huấn luyện (trình phân lớp).
Bước 2: Sử d 甃⌀ng mô hình (lựa chọn thuật toán phân lớp).
- Đá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ênlúc đưa vào mô hình phân lớp, ta “lờ” đi thuộc tính đã được gán nhã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ính gán nhãn của
dữ liệu đầu vào và kết quả phân lớp của mô hình
- 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)
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ựa vào những gìđược huấn luyện ở bước 1
2.2.3 Đánh Giá Tính Hiệu Quả
Các phương pháp đánh giá mô hình phân lớp: là phương pháp kiểm tra hiệu quảcủa mô hình phân lớp để xem có hiệu quả không Một mô hình lý tưởng là mô hình khôngquá đơn giản, không quá phức tạp, không quá nhạy cảm với nhiễu (tránh underfitting vàoverfitting)
Underfitting (chưa khớp): Mô hình được coi là chưa khớp nếu nó chưa được phù
hợp với tập dữ liệu huấn luyện và cả các mẫu mới khi dự đoán
16H5nh nh a 7: Ví dụ về K-fold cross Validation
H5nh nh 8: Ví dụ về mô h nh Underfitting
Trang 18Nguyên nhân:
- Có thể là do mô hình chưa đủ độ phức tạp cần thiết để bao quát được tập dữ liệu
- Tồn tại nhiều điểm dữ liệu mà mô hình không phân loại được đúng dẫn đến đọ chínhxác mô hình thấp
Good fitting (Phù hợp): 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 Ngoài thực tế mô hình tốt
là 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
17
H5nh nh a 9: : Ví dụ về mô h nh overfitting
H5nh nh a 10: Ví dụ về mô h nh Good
fitting
Trang 19TN (true negative): số dự báo chính xác một cách gián tiếp, là khi mô hình dự
đoán đúng một người không bị ung thư, tức là việc không chọn trường hợp bị ung thư làchính xác
Ví d 甃⌀ về ma trận nhầm lẫn
FP (False positive – Type 1 Error): số lượng các dự đoán sai lệch, là khi mô hình
dự đoán một người bị ung thư nhưng người đó hoàn toàn khỏe mạnh
FN (False negative – Type 2 Error): số lượng các dự đoán sai lệch một cách gián
tiếp, là khi mô hình dự đoán một người không bị ung thư nhưng người đó bị ung thư, tức
là việc không chọn trường hợp bị ung thư là sai
2.2.3.2 Độ chính xác (Accuracy)
Định nghĩa: là tỷ lệ số mẫu được phân lớp đúng trong toàn bộ tập dữ liệu.
acc = ��+�� � /
=> Error rate = 1 – acc là độ lỗi của mô hình Accuracy chỉ cho chúng ta biết được tỷ lệ
dữ liệu được phân loại đúng mà không chỉ ra được cụ thể mỗi loại được phân loại như thếnào, lớp nào được phân loại đúng nhiều nhất và dữ liệu thuộc lớp nào thường bị phân loạinhầm vào lớp khác
18Hinh nh a 11: Ma trận nhRm lẫn
Trang 202.2.3.3 Độ chính xác (Precision)
Cho biết trong số m mẫu được phân vào lớp I thì có tỷ lệ bao nhiêu mẫu đúng
(tránh nhầm lẫn với tính chính xác accuracy)
Precision = �� ��+�� / 2.2.3.4 Độ phủ (Recall)
Hay còn gọi là độ nhạy (sensitivity) hay TPR (True Positive Rate)
Recall = �� ��+�� / 2.2.3.5 F1 – score
Giá trị trung bình điều hòa (harmonic mean) của hai độ đo Precision và Recall
F1 có giá trị gần với giá trị nào nhỏ hơn giữa 2 giá trị Precision và Recall F1 sẽ có
giá trị lớn nếu cả 2 giá trị Precision và Recall đều lớn
2.2.3.6 ROC và AUC
ROC (Receiver Operating Characteristic): là một độ thị được sử dụng khá phổ
biến trong đánh giá các mô hình phân loại nhị phân Đường cong này được tạo ra bằng
cách biểu diễn tỷ lệ dự báo True Positive Rate (TPR) dựa trên tỷ lệ dự báo False Positive
Rate (FPR) tại các ngưỡng khác nhau Một mô hình hiệu quả khi có FPR thấp và TPR cao
hay ROC càng tiệm cận với điểm (0;1) trong đồ thị thì mô hình càng hiệu quả
19Hinh nh a 12: Ví dụ về ROC
Trang 21AUC (Area Under the Curve): là diện tích nằm dưới đường cong ROC Giá trị
này là một số dương nhỏ hơn hoặc bằng 1 Giá trị này càng lớn thì mô hình càng tốt
CHƯƠNG 3: KẾT QUẢ THỰC NGHIỆM 3.1 Mô tả dữ liệu
Tên dữ liệu: Dữ liệu tiếp thị ngân hàng
Tóm tắt dữ liệu: Dữ liệu liên quan đến các chiến dịch tiếp thị trực tiếp (gọi điệnthoại) của một tổ chức ngân hàng Bồ Đào Nha Mục tiêu phân loại là để dự đoán xemkhách hàng có đăng ký một khoản tiền gửi có kỳ hạn hay không (biến y)
B ng a 1: Tóm tắt dữ liệuNguồn dữ liệu: [Moro và cộng sự, 2014] S Moro, P Cortez và P Rita Phươngpháp tiếp cận dựa trên dữ liệu để dự đoán sự thành công của tiếp thị qua điện thoại củangân hàng Hệ thống hỗ trợ quyết định, Elsevier, 62:22-31, tháng 6 năm 2014
20H5nh nh a 13: Ví dụ về AUC
Trang 22Thông tin dữ liệu: Dữ liệu liên quan đến các chiến dịch tiếp thị trực tiếp của một tổchức ngân hàng ở Bồ Đào Nha Các chiến dịch tiếp thị được thực hiện thông qua các cuộcgọi điện thoại và thông thường cần phải tiếp cận với khách hàng nhiều hơn một lần để xácđịnh xem sản phẩm (khoản tiền gửi có kỳ hạn) sẽ được đăng ký ('yes') hay không ('no’).Thông tin thuộc tính:
khách hàng Categorical Phân loại: 'admin','bluecollar','entrepreneur','h
ousemaid','management','retired','selfemployed','services','student','technician','unemployed','unknown'
or widowed)Education Trình độ học
vấn của khách
hàng
Categorical Phân loại:
'basic.4y','basic.6y','basic.9y','high.school','illiliterate','
professional.course ','university.degree','unknown'
Categorical Phân loại: 'no', 'yes', 'unknown’
Contact Loại hình liên
lạc Categorical Phân loại: ‘cellura’,’telephone’Month Tháng liên lạc Categorical Phân loại: 'jan', 'feb', 'mar', , 'nov',
21
Trang 23Categorical Phân loại: 'mon','tue','wed','thu','fri'
gọi cuối cùng
(đơn vị: giây)
Numeric Lưu ý: thuộc tính này ảnh hưởng
lớn đến mục tiêu đầu ra (ví dụ: nếu thời lượng = 0 thì y = 'không').Campaign Số lượng liên hệ
được thực hiện
trong chiến dịch
này và cho
khách hàng này
Numeric Số, bao gồm liên hệ cuối cùng
chưa từng được liên hệ
Previous Số lượng liên hệ
Numeric Số liệu theo quý
Cons.price.idx Chỉ số giá tiêu
Cons.conf.idx Chỉ số niềm tin
người tiêu dùng Numeric Số liệu theo tháng
22
Trang 24Euribor3m Tỷ giá chào bán
liên ngân hàng
Euro
Numeric Số liệu theo ngày
Nr.employed Số lượng nhân
đăng ký tiền gửi
có kỳ hạn chưa?
Categorical Nhị phân: 'yes', 'no'
3.2 Phân tích yêu cầu người dùng
3.2.1 Xác định và phân tích yêu cầu người dùng
Trong ngành tài chính, việc lưu trữ thông tin khách hàng là rất quan trọng và ngày càng được đánh giá cao hơn trong thời đại công nghệ hiện nay Các tiến bộ về công nghệ, đặc biệt là trong lĩnh vực mạng công nghiệp 4.0, đang thúc đẩy sự phát triển của các doanh nghiệp và làm tăng sức cạnh tranh, đồng thời cung cấp cho họ nhiều cơ hội để tạo
ra giá trị và không bị tụt lại phía sau
Vì vậy, nhóm của chúng em đã lấy một bộ dữ liệu từ một ngân hàng và sử dụngphần mềm Orange để phân tích thông tin, từ đó đưa ra những nhận định và đề xuất cácgiải pháp mới nhằm nâng cao hiệu quả hoạt động Trong quá trình này, chúng em sử dụngcác cuộc điện thoại khảo sát từ ngân hàng để tiếp thị và dự đoán xem liệu khách hàng đãđăng ký tiền gửi có kỳ hạn hay chưa
Dưới đây là hai bài toán mà nhóm của chúng em đặt ra để giải quyết:
Bài toán 1: Dự đoán xác suất khách hàng đã đăng ký gửi tiền có kỳ hạn dựa trên
các thông tin sẵn có, bao gồm lịch sử giao dịch của khách hàng, các chiến dịch tiếp thịtrước đó, và các yếu tố kinh tế - xã hội ảnh hưởng đến hành vi tiêu dùng của khách hàng Kết quả của bài toán này sẽ giúp ngân hàng đánh giá mức độ thành công của cácchiến dịch tiếp thị, đưa ra các phương án tiếp thị hiệu quả và tối ưu hóa chiến lược tiếp thịcho từng đối tượng khách hàng
Để giải quyết bài toán này, cần thu thập các dữ liệu về lịch sử giao dịch của kháchhàng bao gồm thông tin về các khoản tiền gửi có kỳ hạn trước đó Ngoài ra, cần thu thậpcác thông tin về chiến dịch tiếp thị đã thực hiện trước đó với khách hàng Cuối cùng, cầnthu thập các thông tin về tình hình kinh tế - xã hội
Sau khi có đủ dữ liệu, ngân hàng có thể sử dụng các phương pháp dự đoán như họcmáy, mô hình logistic regression hoặc mô hình cây quyết định để xây dựng một mô hình
dự đoán Mô hình sẽ được đào tạo trên tập dữ liệu đã có và sau đó được sử dụng để dự
23
Trang 25đoán xác suất khách hàng đã đăng ký gửi tiền có kỳ hạn Từ đó cho thấy được độ thànhcông của các chiến dịch đối với khách hàng đó, các yếu tố của kinh tế xã hội cũng nhưcủa khách hàng ảnh hưởng như thế nào tới việc khách hàng đăng ký tiền gửi và giúp chongân hàng đề ra các phương án tiếp thị hiệu quả đối với từng đối tượng khách hàng khácnhau.
Bài toán 2: Dự đoán thành công của chiến dịch tiếp thị dựa trên thông tin khách
Sau khi có đủ dữ liệu, ta có thể sử dụng các phương pháp học máy để dự đoán độthành công của chiến dịch đối với từng khách hàng Từ đó, ta có thể đề xuất các phương
án tiếp thị hiệu quả cho từng khách hàng, bao gồm việc tiếp tục giữ nguyên chiến dịchhiện tại hoặc đề xuất các thay đổi chiến dịch tiếp thị để tối ưu hóa kết quả tiếp thị
Để đảm bảo tính hiệu quả của mô hình, ta cần đảm bảo đủ dữ liệu và các thông tincần thiết để đào tạo mô hình Cũng như bài toán 1, ta cần xác định các chỉ số đánh giá để
đo lường hiệu quả của mô hình, bao gồm độ chính xác, độ nhạy và độ đặc hiệu Từ đó, ta
có thể cải thiện mô hình và đưa ra các phương án tiếp thị hiệu quả hơn cho các kháchhàng
Trang 26Hinh nh a 14: : Bộ dữ liệu Bank Marketing
3.3.2 Quan sát dữ liệu
Quan sát dữ liệu bảng biểu bằng Data table
Bước 1: Nối DATASETS vào Data table
Bước 2: Double-click vào ta sẽ quan sát được dữ liệu
H5nh nh a 15: Mô h nh quan sát dữ liệu
25
Trang 27B ng a 2: Dữ liệu gốc
Từ Data table, ta có thể thấy có 4119 mẫu dữ liệu, 20 biến, 4.8% dữ liệu bị thiếu
Vì vậy nhóm sẽ tiền xử lý dữ liệu này để giúp đảm bảo dữ liệu đầu vào là đầy đủ, chínhxác và hợp lệ; từ đó cải thiện độ tin cậy và chất lượng của kết quả phân tích
3.3.3 Tiền xử lý dữ liệu
Nhóm sử dụng Preprocess để tiến hành xử lý dữ liệu bị thiếu
Bước 1: Mở hộp thoại Preprocess
Bước 2: Chọn Impute Missing Values
Bước 3: Chọn phương pháp Average/Most frequent
Bước 4: Sử dụng Data table để quan sát dữ liệu sau khi được tiền xử lý
Hinh nh a 16: Mô h nh tiền xử lý dữ liệu
26