Professional Documents
Culture Documents
22C1INF50905942 TIỂU LUẬN CUỐI KỲ
22C1INF50905942 TIỂU LUẬN CUỐI KỲ
22C1INF50905942 TIỂU LUẬN CUỐI KỲ
TIỂU LUẬN
BỘ MÔN KHOA HỌC DỮ LIỆU
Đề tài: Nghiên cứu các dữ liệu từ khách hàng làm mục tiêu đánh giá
và dự báo các khách hàng đã hoặc chưa đăng ký tiền gửi có kỳ hạn
2.1.5 Ứng dụng của khai phá dữ liệu trong đời sống 12
2.1.6 Công cụ khai phá dữ liệu được sử dụng trong bài nghiên cứu12
3
DANH MỤC BẢNG BIỂU - HÌNH VẼ VÀ BIỂU ĐỒ.
Biểu thức 2.1 Công thức tính của Phương pháp hồi quy Logistic
Hình 2.2 Mô hình phân lớp nhị phân - sử dụng phương pháp hồi quy logistic
Hình 2.6.1 Mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong
tương lai
Hình 2.6.2 Mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong
tương lai
Hình 3.2 Mô tả tổng quan quá trình huấn luyện vào dự báo
Hình 3.3 Kết quả đánh giá mô hình bằng phương pháp K - fold
Hình 3.4 Ma trận nhầm lẫn của thuật toán Neural Network
Hình 3.5 Ma trận nhầm lẫn của thuật toán Decision Tree
Bảng 3.2 Kết quả dự đoán của 4 thuật toán ở bộ dữ liệu Test (41 đối tượng khảo sát
đầu tiên)
4
CHƯƠNG 1. TỔNG QUAN
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.
- 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.1: Đánh giá mô hình (kiểm tra tính đúng đắn của mô hình)
5
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. Nếu:
- Mỗi đối tượng dữ liệu chỉ thuộc vào một lớp duy nhất: Phân lớp đơn nhãn
- Một đối tượng dữ liệu có thể cùng lúc thuộc về nhiều lớp khác nhau: Phân lớp đa nhãn
- Kinh tế học:
6
1.2.1 Python
Python là ngôn ngữ lập trình hướng đối tượng, cấp cao, mạnh mẽ, được tạo ra bởi
Guido van Rossum. Python có cú pháp đơn giản và dễ sử dụng, do đó nó trở thành một
trong những ngôn ngữ lập trình nhập môn tốt nhất cho người mới bắt đầu.Python có cấu
trúc dữ liệu cao cấp mạnh mẽ và cách tiếp cận đơn giản nhưng hiệu quả đối với lập trình
hướng đối tượng. Cú pháp lệnh của Python là điểm cộng vô cùng lớn vì sự rõ ràng, dễ
hiểu và linh động, làm cho nó nhanh chóng trở thành một ngôn ngữ lý tưởng để viết
script và phát triển ứng dụng trong nhiều lĩnh vực, ở hầu hết các nền tảng.
Orange là phần mềm dùng để khai thác dữ liệu theo phương diện mã nguồn mở. Orange
giúp cho người dùng có một giao diện lập trình sinh động và trực, dễ theo dõi chi tiết để
phân tích dữ một một cách nhân nhất, chính xác, cụ thể. Orange là gói phần mềm dựa
trên những công cụ dùng để trực quan hóa dữ liệu, khai thác và phân tích dữ liệu chính
xác thông qua ngôn ngữ lập trình. Orange cũng là một phần mềm kết hợp công cụ khai
phá dữ liệu và học máy, và cung cấp những trực quan tương tác, thẩm mỹ cho người
dùng phần mềm, nó được viết bằng Python.
Orange là phần mềm hướng tới mục tiêu tự động hóa. Đây là một trong những phần
mềm khai phá dữ liệu tiện dụng, dễ dàng trong việc sử dụng nhờ giao diện nhỏ gọn, các
toolbox được sắp xếp một cách mạch lạc, hợp lý, bất kỳ ai cũng có thể sử dụng. Vì vậy,
Orange là phần mềm mà chúng tôi sẽ sử dụng trong bài nghiên cứu.
Kể từ khi đại dịch Covid -19 ập đến, nền kinh tế trên toàn thế giới lâm vào tình trạng trì
trệ, bức tranh về doanh nghiệp gia nhập và rút khỏi thị trường ngày càng rõ nét. Các ngân
hàng đối mặt với lượng chi phí cao để duy trì nhưng thu về lượng doanh thu “nhỏ giọt”.
7
Hệ thống các ngân hàng thương mại bị ảnh hưởng không nhỏ khi mà các doanh nghiệp
cũng như đời sống người dân bị tác động nặng nề. Năm 2020 vừa qua, ngành Ngân hàng
với vai trò là trung gian tài chính lớn nhất, giao dịch thường xuyên nhất với các chủ thể
kinh tế đã luôn sát cánh cùng doanh nghiệp và người dân để cùng nhau vượt qua khó
khăn và thúc đẩy kinh tế phát triển.
Tiền gửi có kỳ hạn là một nguồn thu nhập chính của ngân hàng. Tiền gửi có kỳ hạn là
một khoản đầu tư bằng tiền mặt được tổ chức tại một tổ chức tài chính. Tiền của người
dân được đầu tư với lãi suất thỏa thuận trong một khoảng thời gian hoặc kỳ hạn cố định.
Ngân hàng có nhiều kế hoạch tiếp cận để bán tiền gửi có kỳ hạn cho khách hàng của họ
như tiếp thị qua email, quảng cáo, tiếp thị qua điện thoại và tiếp thị kỹ thuật số.
Đại dịch chính là nguyên nhân làm cho chi phí tăng cao khiến cho con người ta phải ồ ạt
rút tiền để có thể trang trải cho cuộc sống. Chính vì những gánh nặng như thế, một vấn đề
cấp thiết được đặt ra đó là làm sao để có thể tiếp cận khách hàng nhưng vẫn tuân thủ các
quy định phòng dịch hay làm cách nào có thể cắt giảm chi phí trong thời kỳ cả nền kinh
tế đều có dấu hiệu của sự chững lại. Tất cả điều đó đều đang đưa lên một giải pháp: chiến
lược tiếp thị ngân hàng.
Các chiến dịch tiếp thị qua điện thoại vẫn là một trong những cách hiệu quả nhất để tiếp
cận với mọi người. Tuy nhiên, họ yêu cầu đầu tư rất lớn vì các trung tâm cuộc gọi lớn
được thuê để thực sự thực hiện các chiến dịch này. Do đó, điều quan trọng là phải xác
định trước những khách hàng có nhiều khả năng chuyển đổi nhất để họ có thể được nhắm
mục tiêu cụ thể thông qua cuộc gọi.
Dữ liệu được thu thập liên quan đến các chiến dịch tiếp thị trực tiếp (gọi điện thoạ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 xem liệu khách
hàng có đăng ký một khoản tiền gửi có kỳ hạn hay không. Dựa trên mô hình đã được
huấn luyện trong quá trình nghiên cứu, đưa ra kết luận về mức độ ảnh hưởng của chiến
dịch tiếp thị trực tiếp đối với khách hàng.
8
CHƯƠNG 2: CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU
Quá trình để khai phá dữ liệu là một quá trình rất phức tạp đòi hỏi dữ liệu cần phải
chuyên sâu và yêu cầu nhiều kỹ năng tính toán khác nhau. Hơn nữa, khai phá dữ liệu
không chỉ giới hạn trong việc trích xuất các dữ liệu mà còn sử dụng để làm sạch, chuyển
đổi, tích hợp dữ liệu và phân tích các mẫu.
Bước 1: Làm sạch dữ liệu. Đây là bước đầu tiên trong quy trình khai phá dữ liệu.
Bước này được đánh giá là khá quan trọng vì những dữ liệu bẩn nếu được sử dụng trực
9
tiếp trong khai phá dữ liệu có thể sẽ gây ra kết quả nhầm lẫn, dự báo và tạo ra các kết quả
không được chính xác.
Bước 2: Tích hợp dữ liệu. Ở bước này, có thể giúp cho dữ liệu của chúng ta cải
thiện về độ chính xác cũng như tốc độ của quá trình khai phá dữ liệu.
Bước 3: Làm giảm dữ liệu. Mục đích ở bước này là giúp kích thước của dữ liệu có
khối lượng nhỏ hơn nhưng nó vẫn đảm bảo và vẫn duy trì về tính toàn vẹn.
Bước 4: Chuyển đổi dữ liệu. Trong bước này, dữ liệu được chuyển thành một dạng
phù hợp với quy trình khai phá dữ liệu. Dữ liệu được hợp nhất để quy trình khai phá dữ
liệu có thể hiệu quả hơn và các mẫu dễ hiểu hơn.
Bước 5: Khai thác dữ liệu. Ở bước này, chúng ta đi khai thác dữ liệu là để xác
định các mẫu và một lượng lớn dữ liệu từ những suy luận.
Bước 6: Đánh giá mẫu. Bước này bao gồm việc xác định các mẫu đại diện cho
nhiều kiến thức dựa trên những thước đo, cho biết những kiến thức nào là cần thiết, kiến
thức nào là dư thừa và sẽ bị loại bỏ. Các phương pháp trực quan hóa và tóm tắt dữ liệu
được sử dụng để người dùng có thể hiểu được bộ dữ liệu của mình.
Bước 7: Trình bày thông tin. Dữ liệu sẽ được diễn giải lại dưới các báo cáo, hoặc
các báo cáo dạng bảng,… và sau đó gửi cho bên bộ phân xử lý thông tin này.
10
Nguồn: insight.isb.edu.vn
Hồi quy (Regression): Mục đích chính của phương pháp hồi quy này là dùng để
khám phá và ánh xạ dữ liệu.
Phân cụm (Clustering): Phương pháp phân cụm giúp việc mô tả dữ liệu trở nên
dễ dàng hơn bằng các xác định tập hợp hữu hạn các cụm với nhau.
Tổng hợp (Summarization): Phương pháp này cho phép người làm tìm kiếm một
mô tả nhỏ gọn.
2.1.5. Ứng dụng của khai phá dữ liệu trong đời sống
Khai phá dữ liệu được ứng dụng rất nhiều trong đời sống xã hội tiêu biểu ở một số
những linh vực như sau: phân tích thị trường – chứng khoán, phát hiện gian lận, quản trị
rủi ro doanh nghiệp, bán lẻ, trí tuệ nhân tạo, thương mại điện tử, phòng chống tội phạm,
… và còn rất nhiều các lĩnh vực khác.
2.1.6. Công cụ khai phá dữ liệu được sử dụng trong bài nghiên cứu – Orange
Orange là phần mềm dùng để khai thác dữ liệu theo phương diện mã nguồn mở.
Orange giúp cho người dùng có một giao diện lập trình sinh động và trực, dễ theo dõi chi
tiết để phân tích dữ một một cách nhân nhất, chính xác, cụ thể. Orange là gói phần mềm
dựa trên những công cụ dùng để trực quan hóa dữ liệu, khai thác và phân tích dữ liệu
chính xác thông qua ngôn ngữ lập trình. Orange cũng là một phần mềm kết hợp công cụ
khai phá dữ liệu và học máy, và cung cấp những trực quan tương tác, thẫm mỹ cho người
dùng phần mềm, nó được viết bằng Python.
Orange là phần mềm hướng tới mục tiêu tự động hóa. Đây là một trong những
phần mềm khai phá dữ liệu tiện dụng, dễ dàng trong việc sử dụng nhờ giao diện nhỏ gọn,
các toolbox được sắp xếp một cách mạch lạc, hợp lý, bất kỳ ai cũng có thể sử dụng. Vì
vậy, Orange là phần mềm mà tôi sẽ sử dụng trong bài nghiên cứu.
Phân lớp dữ liệu (clasification) là một trong các hướng nghiên cứu chính của việc
khai phá dữ liệu. Ban đầu, tập dữ liệu có cấu trúc, nó được mô tả bằng các 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 coi là một phần tử
của dữ liệu, ngoài ra còn thể thể là các mẫu, đối tượng,... Trong tập dữ liệu này, mỗi phần
tử dữ liệu thuộc về một lớp định trước, lớp ở đây có nghĩa là các giá trị của một thuộc
12
tính được chọn làm các thuộc tính gắn nhãn hay còn gọi là các thuộc tính phân lớp. Sau
đó, sử dụng các quy tắc phân lớp dưới dạng if – then, cây quyết định (Decision tree), hồi
quy logistic (Regression Logistic), Mạng lưới Neural (Neural Network),…
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 (discrete target variable) từ một tập các giá trị đầu vào (được
thể hiện dưới dạng vector). Phương pháp này được sử dụng để dự đoán xác suất của quan
sát vào các loại biến phụ thuộc hay một hoặc nhiều biến độc lập có thể các biến này là
liên tục hay được phân loại.
Chúng ta có thể biểu diễn công thức của phương pháp hồi quy Logistic như sau:
d
z=∑ wi xi
i=0
1
P ( y )=sigmoid ( z ) =
1+ e−z
Biểu thức 2.1 Công thức tính của Phương pháp hồi quy Logistic
Trong đó:
w là trọng số, ban đầu sẽ được khởi tạo ngẫu nhiên, sau đó sẽ được điều chỉnh lại cho phù
hợp.
Hình 2.2 Mô hình phân lớp nhị phân sử dụng phương pháp hồi quy logistic
13
Nguồn: Tác giả tổng hợp
Mô hình Decision Tree (Cây quyết định) là một cây phân cấp có cấu trúc được dùng
để phân lớp các đối tượng dựa vào dãy các luật. Các thuộc tính của đối tượng có thể
thuộc các kiểu dữ liệu khác nhau như Nhị phân (Binary) , Định danh (Nominal), Thứ tự
(Ordinal), Số lượng (Quantitative) trong khi đó thuộc tính phân lớp phải có kiểu dữ liệu
là Binary hoặc Ordinal.
Ưu điểm:
- Dễ hiểu
Khuyết điểm:
- Khó giải quyết trong tình huống dữ liệu phụ thuộc thời gian
14
Nguồn: Tác giả tổng hợp
SVM là một thuật toán giám sát, nhưng hầu như nó được dùng cho phân loại. Ở
thuật toán này, chúng ta sẽ vẽ đi đồ thị dữ liệu là các điểm trong chiều (ta xác định là các
tính năng mà chúng ta có sẵn) với giá trị của mỗi tính năng sẽ là một phần liên kết.
SVM nhận dữ liệu vào, xem các dữ liệu đầu vào là các vector không gian, sau đó
chúng được phân loại vào các lớp khác nhau thông qua 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.
Để chúng ta có thể tối ưu được 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 dạng phù hợp với nhiều bài toán về phân loại. Để hiểu rõ sâu hơn,
chúng ta đi tìm các khái niệm về Margin cũng như là Support Vector.
Margin: là khoảng cách giữa siêu phẳng trong trường hợp không gian hai chiều là
đường thẳng đến hai điểm dữ liệu gần nhất tương ứng với hai phân lớp.
SVM tối ưu bằng cách tối đa hóa giá trị margin này, từ đó sẽ tìm ra một siêu phằng
đẹp nhất và thích hợp nhất cho phân hai lớp dữ liệu. Vì thế, SVM có thể làm giảm thiếu
việc phân lớp bị sai (misclassification) đối với dữ liệu điểm mới đưa vào.
15
Support Vectors: bài toán của chúng ta trở thành tìm ra 2 đường biên của 2 lớp dữ
liệu sao cho khoảng cách giữa 2 đường này là lớn nhất. Siêu phẳng cách đều 2 biên đó
chính là siêu phẳng cần tìm. Các điểm xanh, đỏ nằm trên hai đường biên (màu xanh lá)
được gọi là các support vector, vì chúng có nhiệm vụ hỗ trợ để tìm ra siêu phẳng (màu
cam).
Neural Network còn có tên gọi khác là Mạng Neural nhân tạo là một chuỗi thuật
toán được đưa ra để dùng xác định các mối quan hệ trong tập hợp các dự liệu cụ thể,
thông qua việc bắt chước bộ não của con người. Nói một cách dễ hiểu hơn có thể là nhân
tạo về bản chất. Neural Network có khả năng tương thích với mọi thứ ngay từ khi chúng
ta thay đổi dữ liệu đầu vào. Nó có thể đưa ra các kết quả một cách tốt nhất mà chúng ta
không cần phải xây dựng các tiêu chí đầu ra.
16
Phân lớp dữ liệu là quá trình phân các đối tượng vào một hay nhiều lớp đã cho trước
nhờ vào 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 cho đối tượng dữ liệu chính là quá trình phân lớp dữ liệu. Phân
lớp và dự đoán là một trong hai dạng của phân tích dữ liệu nhằm rút ra một mô hình mô
tả các lớp dữ liệu quan trọng hoặc dự đoán xu hướng của dữ liệu trong tương lai.
Quy trình phân lớp dữ liệu gồm hai bước như sau:
Quá trình huấn luyện nhằm xây dựng một mô hình mô tả một tập dữ liệu sẵn có.
+ Đầu vào của quá trình này là một tập dữ liệu mẫu đã được gán nhãn và tiền xử lý, mỗi
phần tử dữ liệu được giả định thuộc về một lớp phân trước, lớp ở đây là giá trị của một
thuộc tính được chọn làm thuộc tính gán nhãn hay thuộc tính phân lớp. Mỗi bộ giá trị
được gọi chung là một phần tử dữ liệu, có thể là các mẫu, ví dụ, đối tượng, hay trường
hợp.
+ Kết quả của bước này là mô hình phân lớp đã được huấn luyện.
17
Nguồn: Nguyễn Thị Thùy Linh – Trường Đại học Công Nghệ (Đại học Quốc Gia Hà
Nội)
Bước 2.1: Đánh giá mô hình (kiểm tra tính đúng đắn của mô hình)
+ Đầu vào là một tập dữ liệu mẫu được chọn ngẫu nhiên và độc lập với các mẫu trong tập
dữ liệu huấn luyện, cũng đã được gán nhãn và tiền xử lý. Tuy nhiên thuộc tính đã được
gán nhãn này bị “lờ” khi được đưa vào mô hình tiến hành phân lớp.
+ 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 từ mô
hình, ta dễ dàng xác định được tính đúng đắn của mô hình. Holdout là một kỹ thuật đơn
giản để ước lượng tính đúng đắn này dựa trên tỷ lệ phần trăm các các mẫu trong tập dữ
liệu dự báo được mô hình phân lớp đúng (so với thực tế). Kết quả của bước này là mô
hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong tương lai, hoặc những dữ
liệu mà giá trị của thuộc tính phân lớp là chưa biết nếu của mô hình phù hợp và có độ
chính xác cao.
Hình 2.6.1: Mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong
tương lai
Thuộc tính bị
18 “lờ”
đi
Nguồn: Nguyễn Thị Thùy Linh – Trường Đại học Công Nghệ (Đại học Quốc Gia Hà
Nội)
+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.
Hình 2.6.2: Mô hình sẽ được sử dụng để phân lớp những dữ liệu cần thiết trong
tương lai
Nguồn: Nguyễn Thị Thùy Linh – Trường Đại học Công Nghệ (Đại học Quốc Gia Hà
Nội)
19
Các phương pháp đánh giá mô hình phân lớp dùng để kiểm tra tính hiệu quả của mô
hình phân lớp trên dữ liệu có đặc thù cụ thể, từ đó quyết định có sử dụng mô hình đó hay
không.
Một mô hình lý tưởng là một mô hình không quá đơn giản, không quá phức tạp và
không quá nhạy cảm với nhiễu (tránh underfitting và overfitting).
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. 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.
Trong tất cả các giả thiết có thể giải thích được một hiện tượng, ta nên chọn giả thiết đơn
giản nhất (Occam’s Razor).
=> Do đó trong tất cả các model “đúng”, chọn model đơn giản nhất.
Underfitting (chưa khớp): Mô hình được coi là chưa khớp nếu nó chưa 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. Nguyê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ính xác mô hình thấp.
20
Overfitting (quá khớp): là hiện tượng mô hình tìm được quá khớp với dữ liệu
huấn luyện. Điều này dẫn đến việc dự đoán cả nhiễu nên mô hình không còn tốt khi phân
lớp trên dữ liệu mới. Quá khớp xảy ra khi lượng dữ liệu huấn luyện quá nhỏ trong khi độ
phức tạp của mô hình quá cao nên mặc dù độ chính xác cao nhưng không thể mô tả được
xu hướng tổng quát của dữ liệu mới (Còn được gọi là High Variance).
Bài nghiên cứu sử dụng 4521 dữ liệu khách hàng được lấy từ (tháng 5 năm 2008 đến
tháng 11 năm 2010) làm mục tiêu đánh giá và dự báo các khách hàng đã hoặc chưa đăng
ký tiền gửi có kỳ hạn. Việc dự đoán như vậy là nghiệp vụ rất quan trọng trong các Ngân
hàng bởi vì độ chính xác và tin cậy trong việc phân tích dữ liệu qua đó Ngân hàng có thể
biết được khoản tiền đã ký gửi, những khoản tiền nào gần đến ngày đáo hạn và hơn hết là
biết được thông tin khách hàng để dễ dàng tiếp cận tạo ra một nguồn cho cho các Ngân
hàng để cho vay với một lãi suất nhất định.
Bài nghiên cứu này sử dụng 4521 dữ liệu khách hàng được lấy từ (tháng 5 năm 2008 đến
tháng 11 năm 2010) bao gồm 16 biến độc lập (Age, Job,Marital, Education, Default,
Balance, Housing, Loan, Contact, Day, Month, Duration, Campaign, Pday, Previous,
Poutcome). Qua đó, ta biết được những biến độc lập này tác động đến biến phụ thuộc như
thế nào trong một mô hình nghiên cứu nhất định.
3.2 Nguồn số liệu, phương pháp thu thập dữ liệu và nghiên cứu
Nguồn số liệu: Nhằm ứng dụng khai phá dữ liệu trong việc thực hiện các mục tiêu
tiếp thị của các ngân hàng (Marketing Target), bộ dữ liệu của bài nghiên cứu được lấy
từ trang https://www.kaggle.com/ gồm 17 yếu tố như Age, Job, Marital, Education,
Default, Balance, Housing, Loan, Contact, Day, Month, Duration, Campaign, Pday,
Previous, Poutcome, Y. Đây được xem là một trong những nguồn dữ liệu đáng tin cậy để
thu thập dữ liệu để phân tích Bài nghiên cứu này được lấy dữ liệu của 4521 khách hàng
với một bộ dữ liệu cụ thể như sau:
Công việc
Giáo dục
Education
(phân loại: “unknown”, “secondary”, “primary”, “tertiary”)
23
Ngày liên hệ cuối cùng trong tháng
Day
(Số)
Số liên hệ được thực hiện trong chiến dịch này và cho khách hàng này
Campaign
(Số, bao gồm liên hệ cuối cùng)
Số ngày trôi qua sau khi khách hàng được liên hệ lần cuối từ 1 chiến
Pday dịch trước đó
(Số, “-1” có nghĩa là khách hàng chưa được liên hệ trước đó)
Số lượng địa chỉ liên hệ được thực hiện trước chiến dịch này và cho
Previous khách hàng này
(Số)
Phương pháp thu thập dữ liệu: bộ dữ liệu của bài nghiên cứu được lấy từ trang
https://www.kaggle.com. Vì nguồn dữ liệu có dạng chuẩn gốc là .csv nên sau khi tải bộ
dữ liệu chúng ta chuyển đổi bộ dữ liệu sang dạng thích hợp trong excel để có thể đưa vào
phần mềm orange.
24
Phương pháp nghiên cứu: Đầu tiên chúng ta sẽ đưa bộ dữ liệu gồm 4521 khách
hàng (được lấy từ tháng 5 năm 2008 đến tháng 11 năm 2010) vào phần mền Orange và
khai báo các thuộc tính cho các biến. Trong đó các biến độc lập gồm Age, Job, Marital,
Education, Default, Balance, Housing, Loan, Contact, Day, Month, Duration, Campaign,
Pday, Previous, Poutcome được khai báo thuộc tính là feature; biến phụ thuộc Y được
gán nhãn thành 2 loại: “yes”, “no” được khai báo thuộc tính là target.
Đầu tiên, chúng ta sử dụng phần mềm Orange để đưa bộ dữ liệu mà mình đã thu thập
vào. Sau khi đưa bộ dữ 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 như: Age, Job, Marital, Education, Default, Balance, Housing,
Loan, Contact, Day, Month, Duration, Campaign, Pday, Previous, Poutcome 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 kết quả
huấn luyện là “Y” (Khách hàng đã đăng ký tiền gửi có kỳ hạn chưa). Biến “Y” có hai loại
“YES – Có” và “NO – chưa”
25
Nguồn: Phần mềm từ Orange
Sau khi đã chọn các thuộc tính, chúng ta sẽ chọn 4 thuật toán cho quá trình huấn luyện
mô hình bao gồm: Decision Tree, SVM, Neural Network và Logistic Regression, sau 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.
Hình 3.2 Mô tả tổng quan quá trình huấn luyện vào dự báo
26
Ở đâ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. Và vì đây là bộ dữ liệu nhỏ nên dùng
phương pháp K-fold sẽ thích hợp hơn so với Hold-out ( Phương pháp thường được sử
dụng trên các bộ dữ liệu lớn).
Hình 3.3 Kết quả đánh giá mô hình bằng phương pháp K-fold
Và thông qua phương pháp đánh giá bằng ma trận nhầm lẫn ta cũng thu được các kết quả
như sau:
Hình 3.4 Ma trận nhầm lẫn của thuật toán Neural Network
27
Hình 3.5 Ma trận nhầm lẫn của thuật toán Decision Tree
Dùng cả 4 thuật toán như trên dữ liệu Train chúng ta sẽ thu được kết quả dự đoán như sau
ở bộ dữ liệu Test:
Bảng 3.2: Kết quả dự đoán của 4 thuật toán ở bộ dữ liệu Test (41 đối tượng khảo sát
đầu tiên)
28
3.4 Phân Tích và Đánh Giá
Thông qua các kết quả trên cho thấy dù bất kì phương pháp nào được sử dụng để đánh
giá (CA, F1, Precision và Recall) thì Logistic Regression vẫn chiếm lợi thế hơn hẳn so
với 3 thuật toán kia, các chỉ số đạt được là CA 0.902 ( 90,2% ), F1 0.887 ( 88,7%),
Precision 0.887 ( 88,7% ), Recall 0.902 ( 90,2% ) và đặc biệt phương pháp AUC đạt được
con số lên đến 0.888 ( 88.8% ) (Hình 3.3)
Và đặc biệt, độ phù hợp của của thuật toán 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
3.4, 3.5, 3.6).
Có 4000 người thuộc lớp “No” trong đó lượng mẫu được phân lớp đúng lên đến 3912
và có 88 mẫu bị phân lớp nhầm
29
Thông qua các phương pháp đánh giá được sử dụng nói trên, chúng ta thấy được rằng:
Đối với bộ dữ liệu sử dụng trong bài nghiên cứu này, thuật toán Logistic Regression cho
ra mô hình rất phù hợp và sẽ được ứng dụng để dự báo khả năng.
Vì vậy dựa vào thuật toán Logistic Regression thì chúng ta có thể thấy kết quả dự đoán
dữ liệu Test ở Hình cho thấy rằng:
Những cá nhân nào có chỉ số Logistic Regression thuộc phân lớp “No” từ 0.5 trở lên sẽ
được phân loại là “No”.
Ngược lại, chỉ số Logistic Regression thuộc phân lớp “Yes” từ 0.5 trở lên thì sẽ được
phân loại là “Yes”.
30
- Về thực nghiệm, áp dụng nền tảng lý thuyết nghiên cứu được những khoản tiền nào gần
đến ngày đáo hạn và hơn hết là biết được thông tin khách hàng để dễ dàng tiếp cận tạo ra
một nguồn cho các Ngân hàng để
cho vay với một lãi suất cố định, thông qua biến phụ thuộc là sử dụng “4521 dữ liệu
khách hàng được lấy từ (tháng 5 năm 2008 đến tháng 11 năm 2010)” và biến độc lập gồm
16 biến: Age, Job,Marital, Education, Default, Balance, Housing, Loan, Contact, Day,
Month, Duration, Campaign, Pday, Previous, Poutcome. Bài nghiên cứu đã đề xuất xây
dựng 4 thuật toán cho quá trình huấn luyện mô hình bao gồm: Decision Tree, SVM,
Neural Network và Logistic Regression, sau khi có kết quả cho ra các chỉ số để đánh giá
so sánh với nhau thì mô hình Logistic Regression là phù hợp nhất.
Với việc triển khai áp dụng kết quả này trong việc biết được các khoản tiền nào gần đến
ngày đáo hạn và biết được thông tin khách hàng tìềm năng gửi tiền cho Ngân hàng để tạo
ra một nguồn để cho vay với một lãi suất cố định. Cụ thể, các “khách hàng đã đăng ký
tiền gửi có kỳ hạn chưa” được gán biến “Y” cho ra hai kết quả “YES – Có” và “NO –
chưa”. Trong 4000 trường hợp NO thì lượng mẫu được phân lớp đúng lên đến 3912 và có
88 mẫu bị phân lớp nhầm. Qua đó, Ngân hàng sẽ biết được chính xác sẽ có 3912 khách
hàng chưa có kỳ hạn.
4.2. Hạn chế và giải pháp
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:
Thứ nhất, do hạn chế về mặt thời gian (hoàn thành trong khoảng 1 tháng) và
không gian thực hiện, phương pháp thu nhập dữ liệu từ trang
https://www.kaggle.com để đảm bảo dữ liệu có dạng chuẩn gốc và thuận tiện.
Tính đại diện cùng với khả năng suy rộng cho tổng thể của mẫu chưa được tuyệt
đối vì chỉ số F1 khi sử dụng thuật toán Logistic Regression chỉ khoảng 88,7%.
Thứ hai, các biến được thu thập trong bài là dữ liệu thu thập từ tháng 5 năm 2008
đến tháng 11 năm 2010 nên độ chính xác có thể thay đổi khi áp dụng cho những
năm sau.
31
Trên cơ sở những hạn chế khiến bài nghiên cứu chưa thật sự hoàn thiện, tôi xin đề xuất
một số hướng phát triển đề tài trong tương lai như sau:
Thứ nhất, hạn chế lớn nhất của bài nghiên cứu này là số lượng và sự đồng nhất
trong việc chọn mẫu chưa cao nên tính đại diện còn hạn chế. Nhóm mong trong
các đề tài tiếp theo sẽ khắc phục được hạn chế này bằng cách đầu tư thu thập dữ
liệu của nhiều khách hàng hơn nữa để thu được số lượng mẫu thích hợp nhất.
Đồng thời triển khai dự đoán, kiểm chứng thực tế và đánh giá kết quả một cách
thường xuyên để tăng độ chính xác.
Thứ hai, hi vọng các đề tài nghiên cứu trong thời gian tới sẽ phát hiện ra nhiều mô
hình phù hợp hơn nhằm đi đến kết luận chính xác về các yếu tố thật sự có ảnh
hưởng đến Ngân hàng. Bài nghiên cứu nghiên về lĩnh vực tài chính trong khi đó
những lĩnh vực về công nghệ thông tin sẽ được truyền tải không chặt chẽ qua phần
cơ sở lý thuyết và việc sử dụng các công cụ như Orange còn một số lỗi kỹ thuật
nhất định.
32
TÀI LIỆU THAM KH ẢO
[1]. HSBC, “Quy định về tiền gửi tiết kiệm và tiền gửi có kỳ hạn”. Link:
https://cdn.hsbc.com.vn/content/dam/hsbc/hbvn/documents/vi/accounts/regulations-
savings-and-time-deposit.pdf
[2]. ISB Insight, “Data Mining là gì? Các công cụ khai phá dữ liệu phổ biến nhất hiện
nay”. Link:
https://insight.isb.edu.vn/data-mining-la-gi-cac-cong-cu-khai-pha-du-lieu/
[3]. Marketing24h, “Marketing ngân hàng là gì? Một vài xu hướng mới trong Marketing
ngân hàng”. Link:
https://marketing24h.vn/marketing-ngan-hang-la-gi/
https://tech-vn.com/logistic-regression-la-gi
33
PHIẾU ĐÁNH GIÁ NHÓM
TIỂU LUẬN CUỐI KỲ – KHOA HỌC DỮ LIỆU
LỚP HỌC PHẦN: 22C1INF50905942
34