Tải bản đầy đủ (.pdf) (57 trang)

PHÂN NHÓM DỮ LIỆU KHÁCH HÀNG SỬ DỤNG THUẬT TOÁN KMEANS

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.96 MB, 57 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
···🙞🙞🙞🙞🙞···

ĐỒ ÁN CHUYÊN NGÀNH
NGÀNH: KHOA HỌC MÁY TÍNH
ĐỀ TÀI: PHÂN NHĨM DỮ LIỆU KHÁCH HÀNG SỬ DỤNG
THUẬT TỐN K-MEANS

GVHD

:

TS. Nguyễn Mạnh Cường

Sinh viên

:

Phạm Việt Anh - 2020605676
Nguyễn Trọng Thành - 2020603700

Hà Nội – 2023

1


TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
···🙞🙞🙞🙞🙞···


ĐỒ ÁN CHUYÊN NGÀNH
NGÀNH: KHOA HỌC MÁY TÍNH
ĐỀ TÀI: PHÂN NHĨM DỮ LIỆU KHÁCH HÀNG SỬ DỤNG
THUẬT TỐN K-MEANS

GVHD

:

TS. Nguyễn Mạnh Cường

Sinh viên

:

Phạm Việt Anh - 2020605676
Nguyễn Trọng Thành - 2020603700

Hà Nội – 2023

2


KẾ HOẠCH THỰC HIỆN TIỂU LUẬN, BÀI TẬP LỚN, ĐỒ ÁN
Tên Lớp:

20231IT6052002

Tên Nhóm:


Nhóm 15

Tên chủ đề:

Phân nhóm dữ liệu khách hàng sử dụng thuật tốn K-means

Tuần

Người thực hiện

1

Cả nhóm

2

Cả nhóm

3

Nguyễn Trọng Thành

4,5

Cả nhóm

6

Phạm Việt Anh


7

Cả nhóm

8

Cả nhóm

9

Cả nhóm

Khóa: 15

Nội dung công việc

Kết quả đạt
được
Chọn đề tài nghiên cứu Xác định được đề
và phân công công việc tài nghiên cứu và
trong tuần tiếp theo
chuẩn bị cho
cơng việc tuần tới
Tìm hiểu bài tốn, thu
Đã hồn thành
thập dữ liệu, tiền xử lý
các cơng việc đã
dữ liệu, cài đạt mơi
được đạt ra
trường

Hồn thiện chương 1
Đã hoàn thành
của bài tập lớn
viết chương 1 của
bài tập lớn
Tìm hiểu về các kỹ
Hiểu rõ về các kỹ
thuật sử dụng trong bài thuật hiện có và
tốn và tìm hiểu chi tiết kỹ thuật chính sẽ
kỹ thuật chính sử dụng sử dụng trong bài
trong bài toán
toán

Phương pháp
thực hiện
Tổng hợp và đánh
giá

Hoàn thiện chương 2

Đã hoàn thành
viết báo cáo
chương 2
Viết code và chạy thử
Hồn thành được
chương trình demo
sản phầm demo
Tổng hợp và đánh giá, Hoàn thành
so sánh kết quả nhận chương trình mà
được sản phẩm demo

bài tốn đặt ra
Hồn thiện xây dựng
chương trình

Tổng hợp và thực
nghiệm

Hồn thiện phần cịn lại Hồn thành báo
của báo cáo bài tập lớp cáo bài tập lớp

Tổng hợp và thực
nghiện

Sưu tầm dữ liệu,
nghiên cứu tài liệu
và tổng hợp
Thực nhiệm và
tổng hợp
Sưu tầm dữ liệu,
nghiên cứu tài liệu
và tổng hợp

Thực Nghiệm
Thực nghiệm,
tổng hợp, đánh
giá

Ngày 3 Tháng 1 Năm 2024
XÁC NHẬN CỦA GIẢNG VIÊN
(Kí ghi rõ họ tên)

Nguyễn Mạnh Cường
3


BÁO CÁO HỌC TẬP CÁ NHÂN/NHĨM
Tên Lớp:

20231IT6052002

Tên Nhóm:

Nhóm 15

Tên chủ đề:

Phân nhóm dữ liệu khách hàng sử dụng thuật tốn K-means

Tuần

Người thực hiện

1

Cả nhóm

2

Cả nhóm

3


Nguyễn
Thành

4,5

Khóa: 15

Nội dung cơng việc

Chọn đề tài nghiên
cứu và phân cơng
cơng việc trong tuần
tiếp theo
Tìm hiểu bài toán,
thu thập dữ liệu, tiền
xử lý dữ liệu, cài đạt
mơi trường
Trọng Hồn thiện chương 1
của bài tập lớn

Cả Nhóm

6

Phạm Việt Anh

7

Cả nhóm


8

Cả nhóm

9

Cả nhóm

Kết quả đạt được

Kiến nghị với
giảng viên
hướng dẫn

Xác định được đề tài
nghiên cứu và chuẩn
bị cho cơng việc tuần
tới
Đã hồn thành các
cơng việc đã được đạt
ra
Đã hoàn thành viết
chương 1 của bài tập
lớn
Hiểu rõ về các kỹ
thuật hiện có và kỹ
thuật chính sẽ sử
dụng trong bài tốn


Tìm hiểu về các kỹ
thuật sử dụng trong
bài tốn và tìm hiểu
chi tiết kỹ thuật chính
sử dụng trong bài
tốn
Hồn thiện chương 2 Đã hoàn thành viết
báo cáo chương 2
Viết code và chạy thử Hồn thành được sản
chương trình demo
phầm demo
Tổng hợp và đánh Hoàn thành chương
giá, so sánh kết quả trình mà bài tốn đặt
nhận được sản phẩm ra
demo
Hồn thiện xây dựng
chương trình
Hồn thiện phần cịn Hồn thành báo cáo
lại của báo cáo bài bài tập lớp
tập lớp
Ngày 4 Tháng 1 Năm 2024
XÁC NHẬN CỦA GIẢNG VIÊN
(Kí ghi rõ họ tên)
1


LỜI CẢM ƠN
Trước khi báo cáo được trình bày, chúng em xin được gửi lời cảm ơn chân thành đến
thầy Nguyễn Mạnh Cường - giảng viên khoa Công nghệ Thông tin, Trường Đại học Công
nghiệp Hà Nội.

Thầy đã hướng dẫn chúng em trong quá trình thực hiện bài tập lớn mơn học Đồ án
chun ngành với chủ đề “Phân nhóm dữ liệu khách hàng sử dụng thuật toán K-means”.
Thầy đã truyền đạt cho chúng em những kiến thức về môn học cũng như các kiến thức xoay
quanh.
Thầy cũng luôn sẵn sàng trả lời các thắc mắc của chúng em, hỗ trợ chúng em trong
việc giải quyết các vấn đề phát sinh trong quá trình thực hiện bài tập lớn. Nhờ có sự hướng
dẫn và hỗ trợ tận tình của thầy, chúng em đã hiểu sâu hơn về quy trình kiểm thử phần mềm
và có thể áp dụng kiến thức đó vào thực tiễn trong tương lai.
Chúng em xin chân thành cảm ơn thầy đã tận tình hướng dẫn và giúp đỡ chúng em
trong quá trình học tập và hy vọng sẽ có cơ hội được học tập và nghiên cứu thêm từ thầy
trong tương lai. Chúng em hiểu rằng trong q trình hồn thành bài báo cáo mơn học,
khơng tránh khỏi thiếu sót và chúng em sẵn sàng chấp nhận mọi góp ý, phản hồi từ thầy để
hồn thiện bài báo cáo của mình.
Kính chúc thầy sức khỏe, hạnh phúc và thành công trong sự nghiệp truyền đạt kiến
thức cho thế hệ trẻ!

2


MỤC LỤC
LỜI CẢM ƠN ............................................................................................................................... 2
DANH MỤC HÌNH ẢNH ............................................................................................................. 4
DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT ......................................................................... 6
LỜI NÓI ĐẦU .............................................................................................................................. 7
CHƯƠNG I. TỔNG QUAN VỀ ĐỀ TÀI ...................................................................................... 9
1.1 Tổng quan về học máy và phân cụm dữ liệu .................................................................................. 9
1.2 Bài toán phân loại khách hàng ..................................................................................................... 12
1.3 Phát biểu bài toán ......................................................................................................................... 17
1.4 Ứng dụng thực tế của bài tốn...................................................................................................... 19
1.5 Khó khăn, thách thức của bài toán phân loại khách hàng .......................................................... 19

Kết luận chương 1 ............................................................................................................................... 20

CHƯƠNG II. CÁC KỸ THUẬT GIẢI QUYẾT BÀI TOÁN ........................................................ 21
2.1 Phương hướng tiếp cận bài toán ................................................................................................... 21
2.2 Một số kỹ thuật giải quyết bài toán .............................................................................................. 21
2.3 Hồi quy logistic (Logistic Regression) .......................................................................................... 22
2.4 Máy vector hỗ trợ (Support Vector Machines) ............................................................................ 23
2.5 Cây quyết định (Decision Trees) ................................................................................................... 25
2.6 Random Forests và Gradient Boosting ........................................................................................ 26
2.7 Phân cụm (Clustering) .................................................................................................................. 27
2.8 Phân tích chuỗi thời gian (Time Series Analysis) ......................................................................... 29
2.9 Mạng nơ-ron sâu (Deep Neural Networks) .................................................................................. 30
2.10 Phân loại dựa trên văn bản (Text Classification) ....................................................................... 31
2.11

Phân tích cảm xúc (Sentiment Analysis) ............................................................................... 32

2.12

Lựa chọn thuật toán ............................................................................................................... 33

Kết luận chương 2 ............................................................................................................................... 33

CHƯƠNG III: THỰC NGHIỆM................................................................................................ 34
3.1 Dữ liệu thực nghiệm ...................................................................................................................... 34
3.2 Quy trình thực nghiệm ................................................................................................................. 35
Tổng kết chương 3 .............................................................................................................................. 50

Kết luận ...................................................................................................................................... 52
TÀI LIỆU THAM KHẢO ........................................................................................................... 54

3


DANH MỤC HÌNH ẢNH
Hình 1.1: Tổng quan về học máy ................................................................................................... 9
Hình 1.2: Dữ liệu trong lĩnh vực học máy .....................................................................................10
Hình 1.3: Mơ hình học máy ..........................................................................................................10
Hình 1.4: Các loại mơ hình học máy .............................................................................................11
Hình 1.5: Mơ hình hồi quy (Regression) .......................................................................................11
Hình 1.6: Phân cụm dữ liệu...........................................................................................................12
Hình 1.7: Phân nhóm khách hàng..................................................................................................13
Hình 1.8: Các phương thức thu thập dữ liệu ..................................................................................14
Hình 1.9: Tiền xử lý dữ liệu ..........................................................................................................14
Hình 1.10: Thuật tốn phân nhóm .................................................................................................15
Hình 1.11: Các thơng số đánh giá hiueje suất của mơ hình ............................................................16
Hình 1.12: Áp dụng mơ hình để phân nhóm khách hàng ...............................................................16
Hình 1.13: Một mẫu dữ liệu ..........................................................................................................17
Hình 1.14: Đầu ra của bài tốn phân nhóm....................................................................................18
Hình 2.1: Mơ hình hồi quy (Regression) .......................................................................................22
Hình 2.2: Mơ hình SVM ...............................................................................................................24
Hình 2.3: Mơ hình cây quyết định .................................................................................................25
Hình 2.4: Mơ hình Random Forests và Gradient Boosting ............................................................26
Hình 2.5: Mơ hình phân cụm (Clustering) .....................................................................................28
Hình 2.6: Mơ hình phân tích chuỗi thời gian (Time Series Analysis) .............................................29
Hình 2.7: Mơ hình mạng nơ-ron sâu (Deep Neural Networks) ......................................................30
Hình 2.8: Mơ hình phân loại dựa trên văn bản (Text Classification) ..............................................31
Hình 2.9: Mơ hình phân tích cảm xúc (Sentiment Analysis) ..........................................................32
Hình 3.1: Đầu vào của bước tiền xử lý ..........................................................................................35
Hình 3.2: Đầu ra của bước tiền xử lý ............................................................................................36
Hình 3.3: Kiểm tra dữ liệu khuyết .................................................................................................36

Hình 3.4: Kết quả kiểm tra dữ liệu khuyết .....................................................................................37
Hình 3.5: Số dữ liệu khuyết trong bộ dữ liệu .................................................................................37
Hình 3.6: Xóa đi các hàng có chứa dữ liệu khuyết.........................................................................37
Hình 3.7: Kiểm tra lại xem cịn dữ liệu khuyết khơng ...................................................................37
Hình 3.8: Thống kê dữ liệu ...........................................................................................................38
Hình 3.9: Bảng thống kê dữ liệu ...................................................................................................38
Hình 3.10: Hàm hiển thị ma trận tương quan trên biểu đồ Heatmap ..............................................39
Hình 3.11: Biểu đồ heatmap biểu thị ma trận tương quan ..............................................................40
Hình 3.12: Hàm vẽ biểu đồ Histogram ..........................................................................................41
Hình 3.13: Biểu đồ histogram cho các thông số: Age, Annual Income và Spending Score.............41
Hình 3.14: Hàm tạo biểu đồ tương quan giữa các thuộc tính .........................................................42
Hình 3.15: Biểu đồ tương quan giữa các thuộc tính .......................................................................42
Hình 3. 16: Hàm chọn cột giá trị cho thuật tốn K-means .............................................................42
Hình 3.17: Giá trị của X ................................................................................................................43
Hình 3.18: Tính chỉ số WCSS cho từng điểm dữ liệu ....................................................................44
Hình 3.19: Hàm vẽ biểu đồ Elbow ................................................................................................44
Hình 3.20: Biểu đồ Elbow.............................................................................................................45
Hình 3.21: Áp dụng thuật tốn K-means .......................................................................................46
4


Hình 3.22: Đầu ra sau khi áp dụng thuật tốn K-means .................................................................46
Hình 3.23: File mới chứa kết quả sau khi chạy thuật tốn được sinh ra..........................................47
Hình 3.24: Trả về cột CustomerID và nhãn tương ứng ..................................................................47
Hình 3.25: Hàm vẽ biểu đồ trực quan hóa kết quả .........................................................................48
Hình 3.26: Biểu đồ hiển thị kết quả sau khi chạy K-means ............................................................49

5



DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT

Ký hiệu và từ viết tắt

Từ viết đầu đủ

NLP

Natural Language Processing

SVM

Support Vector Machines

DNN

Deep Neural Network

WCCS

Within-Cluster Sum of Squares

6


LỜI NÓI ĐẦU
Ngày nay, việc thấu hiểu và phục vụ khách hàng một cách tốt nhất không chỉ là một
mục tiêu mà còn là một yếu tố quyết định thành công cho hầu hết các doanh nghiệp. Để đạt
được điều này, việc phân loại khách hàng đã trở thành một phần khơng thể thiếu lĩnh vực
tiếp thị và phân tích dữ liệu. Tuy nhiên, để phân loại khách hàng một cách hiệu quả, nhà

quản trị cần áp dụng các phương pháp và thuật toán phù hợp. Một trong những thuật toán
quan trọng và mạnh mẽ nhất được sử dụng trong việc phân loại khách hàng là thuật toán KMeans.
Với sự phát triển nhanh chóng của khoa học dữ liệu và các cơng cụ phân tích dữ
liệu, việc tận dụng nguồn dữ liệu khổng lồ từ hành vi mua hàng và nhân khẩu học của
khách hàng đã trở nên dễ dàng hơn bao giờ hết. Chúng ta có khả năng áp dụng các thuật
tốn và mơ hình để phân tích dữ liệu này và tạo ra sự thấu hiểu sâu hơn về khách hàng của
mình.
Trong bài tập lớn này, chúng ta sẽ khám phá chi tiết về thuật toán K-Means và cách
áp dụng nó cho bài tốn phân loại khách hàng. Chúng ta sẽ tìm hiểu cách sử dụng K-Means
để xác định và phân loại khách hàng thành các nhóm dựa trên các đặc điểm, hành vi hoặc
thuộc tính cụ thể. Bằng cách này, chúng ta có thể tối ưu hóa chiến lược tiếp thị, nâng cao
trải nghiệm cá nhân của khách hàng và tránh lãng phí tài nguyên.
Nội dung quyển báo cáo sẽ bao gồm các chương như sau:
Chương 1: Tổng quan về đề tài
Trong chương 1, chúng em trình bày sơ qua về chuyên ngành học máy, các loại học
máy, một số thuật toán phổ biến trong học máy và ứng dụng của nó trong thực tế. Sau đó,
chúng em trình bày về bài tốn đã được đặt ra là phân loại khách hàng, ứng dụng của bài
toán và các khó khăn, thách thức.
Chương 2: Các kỹ thuật giải quyết bài toán
Sau khi đã phát biểu và xác định rõ ràng được yêu cầu của bài toán, chúng em trình
bày các kỹ thuật giải quyết bài tốn hiện có, ưu nhược điểm của chúng. Từ đó, chúng em
đưa ra giải pháp để xử lý bài toán đã được đặt ra.
Chương 3: Thực nghiệm
Trong chương này, chúng em sẽ trình bày các bước để giải quyết bài toán, như là:
tiền xử lý dữ liệu, phân tích mơ tả dữ liệu và phần chương trình để xử lý bài tốn.
7


Kết luận
Trong phần này, chúng em tổng kết những gì đã đạt được, những thiếu sót và từ đó,

chúng em rút ra bài học kinh nghiệm sau khi đã hoàn thành đề tài
Chúng em mong rằng bài báo cáo này có thể giúp người đọc hiểu hơn về bộ mơn
học máy, thuật toán K-means và bài toán phân loại khách hàng.

8


CHƯƠNG I. TỔNG QUAN VỀ ĐỀ TÀI
1.1 Tổng quan về học máy và phân cụm dữ liệu
Học máy (Machine Learning) là một lĩnh vực của trí tuệ nhân tạo (AI) mà nó tập trung
vào việc phát triển các thuật tốn và mơ hình có khả năng học từ dữ liệu và cải thiện hiệu
suất mà không cần phải được lập trình cụ thể cho mỗi nhiệm vụ. Mục tiêu chính của học máy
là tạo ra các mơ hình dự đốn hoặc quyết định một cách tự động thông qua việc tiếp cận và
phân tích dữ liệu.

Hình 1.1: Tổng quan về học máy

Một số khái niệm quan trọng trong lĩnh vực Học Máy
 Dữ liệu: Là nguồn thơng tin chính cho học máy. Dữ liệu được sử dụng để huấn
luyện mô hình và kiểm thử hiệu suất của nó.

9


Hình 1.2: Dữ liệu trong lĩnh vực học máy

 Mơ hình học máy: Là một hệ thống tốn học được thiết kế để học từ dữ liệu. Các
mơ hình này có thể được sử dụng để dự đốn, phân loại hoặc nhận diện mẫu trong
dữ liệu mới.


Hình 1.3: Mơ hình học máy

 Thuật toán học máy: Là các phương pháp tốn học được áp dụng để huấn luyện
mơ hình từ dữ liệu. Các thuật tốn này có thể thuộc loại học giám sát (supervised
learning), học không giám sát (unsupervised learning), hoặc kết hợp cả hai

10


Hình 1.4: Các loại mơ hình học máy

 Học giám sát (Supervised learning): Trong loại học này, mơ hình được huấn luyện
trên một tập dữ liệu có chứa các cặp đầu vào và đầu ra mong muốn.
 Học không giám sát (Unsupervised learning): Trái ngược với học giám sát, trong
học khơng giám sát, mơ hình phải học từ dữ liệu mà khơng có đầu ra mong muốn.
 Phân loại (Classification): Là một loại nhiệm vụ học máy trong đó mơ hình được
huấn luyện để dự đốn lớp hoặc nhãn của một đối tượng dựa trên đặc trưng của
nó.
 Hồi quy (Regression): Là loại nhiệm vụ học máy mà mục tiêu là dự đoán một giá
trị số (liên tục), chẳng hạn như dự đoán giá nhà dựa trên các đặc trưng khác nhau.

Hình 1.5: Mơ hình hồi quy (Regression)
11


Phân cụm dữ liệu (clustering) là một phương pháp trong học máy và thống kê, nơi mà
mục tiêu là chia dữ liệu thành các nhóm, cụm hoặc phân khúc dựa trên sự tương đồng giữa
các điểm dữ liệu. Mục đích chính của phân cụm là tìm ra cấu trúc ẩn trong dữ liệu mà không
yêu cầu sự giám sát (không cần nhãn cho dữ liệu).


Hình 1.6: Phân cụm dữ liệu

Với mục tiêu là phân cụm dữ liệu giúp nhận biết và phân loại các nhóm tự nhiên trong
dữ liệu mà không cần biết trước thông tin về nhãn. Điều này có thể giúp hiểu rõ hơn về cấu
trúc của dữ liệu và tạo ra các nhóm có ý nghĩa. Thuật toán đặc biệt phổ biến và hiệu quả khi
phân chia dữ liệu thành các cụm dựa trên sự tương đồng giữa các điểm dữ liệu

1.2 Bài toán phân loại khách hàng
Bài toán phân loại khách hàng là một bài toán quan trọng trong lĩnh vực khai thác dữ liệu
và machine learning. Mục tiêu của bài toán là xác định và phân loại khách hàng vào các nhóm
dựa trên các đặc trưng và thơng tin khách hàng có sẵn. Điều này giúp các doanh nghiệp hiểu
rõ hơn về khách hàng của mình, tạo ra các chiến lược tiếp thị và dịch vụ phù hợp để tối ưu
hóa kinh doanh.

12


Hình 1.7: Phân nhóm khách hàng

Ví dụ về quy trình phân loại khách hàng:
1. Thu thập dữ liệu: Thu thập các dữ liệu liên quan đến khách hàng, bao gồm thơng
tin cá nhân (tuổi, giới tính, địa chỉ, nghề nghiệp), hành vi mua hàng trước đây,
thông tin giao dịch, tương tác với sản phẩm hoặc dịch vụ, phản hồi từ khách hàng,
vv.

13


Hình 1.8: Các phương thức thu thập dữ liệu


2. Chuẩn bị dữ liệu: Tiền xử lý dữ liệu bằng cách loại bỏ các dữ liệu thiếu, điều chỉnh
định dạng dữ liệu và thực hiện các biến đổi cần thiết cho phân loại. Đồng thời,
chuyển đổi các đặc trưng phi số thành dạng số học nếu cần thiết.

Hình 1.9: Tiền xử lý dữ liệu
14


3. Xây dựng mơ hình phân loại: Chọn một thuật toán phân loại phù hợp như học máy,
mạng neural, hoặc các thuật toán phân loại khác. Sử dụng tập dữ liệu đã chuẩn bị
để huấn luyện mơ hình phân loại, điều chỉnh các siêu tham số và đánh giá hiệu
suất mơ hình.

Hình 1.10: Thuật tốn phân nhóm

4. Đánh giá và tinh chỉnh: Đánh giá hiệu suất của mơ hình sử dụng các phương pháp
đánh giá như độ chính xác, độ phủ, F1-score. Tinh chỉnh mơ hình bằng cách thay
đổi siêu tham số hoặc sử dụng kỹ thuật tối ưu hóa.

15


Hình 1.11: Các thơng số đánh giá hiueje suất của mơ hình

5. Áp dụng mơ hình: Sử dụng mơ hình đã huấn luyện để phân loại khách hàng mới
dựa trên đặc trưng và thơng tin có sẵn. Cung cấp dự đốn về nhóm hoặc loại khách
hàng mà khách hàng thuộc về.

Hình 1.12: Áp dụng mơ hình để phân nhóm khách hàng


16


6. Theo dõi và cải thiện: Theo dõi hiệu suất và phản hồi từ mơ hình phân loại. Đánh
giá và cải thiện mơ hình theo thời gian để đảm bảo tính chính xác và hiệu quả của
q trình phân loại khách hàng.
Q trình phân loại khách hàng có thể sử dụng nhiều phương pháp và thuật toán khác
nhau tùy thuộc vào yêu cầu cụ thể của doanh nghiệp và dữ liệu có sẵn.

1.3 Phát biểu bài tốn
Đầu vào của bài toán: Một tập hợp các mẫu dữ liệu, mỗi mẫu dữ liệu thể hiện thông tin
về một khách hàng. Thông tin này bao gồm các đặc trưng như là: giới tính, tuổi tác, thu nhập
thường niên, mức độ chi tiêu của khách hàng hoặc dữ liệu vị trí địa lý.

Hình 1.13: Một mẫu dữ liệu

Bằng cách kết hợp và phân tích các đặc trưng này, mơ hình phân loại có thể học cách
phân biệt giữa các loại khách hàng khác nhau. Điều này có thể hỗ trợ các doanh nghiệp trong
việc tùy chỉnh chiến lược tiếp thị, dịch vụ khách hàng, và quản lý mối quan hệ với khách
hàng để tối ưu hóa trải nghiệm của họ.
Đầu ra của bài toán: Đầu ra của bài toán là việc phân loại khách hàng thành các nhóm dựa
trên sự tương đồng giữa các mẫu dữ liệu. Mỗi khách hàng sẽ thuộc vào một nhóm cụ thể.
Điều này có nghĩa là chúng ta sẽ biết được rằng khách hàng nằm trong nhóm nào, giúp hiểu
hơn về khách hàng của mình và phục vụ họ một cách tốt hơn. Đầu ra có thể bao gồm:
 Nhãn lớp: Mỗi khách hàng được gán một nhãn hoặc mã số để đại diện cho loại
khách hàng tương ứng.
 Xác suất hoặc điểm số: Thay vì chỉ cung cấp một nhãn duy nhất, mơ hình cũng có
thể xuất ra xác suất hoặc điểm số cho mỗi khách hàng thuộc vào từng loại. Điều
17



này có thể hữu ích khi muốn đánh giá mức độ chắc chắn của mơ hình về dự đốn
của nó
 Phân phối xác suất: Đối với bài toán phân loại có nhiều hơn hai nhóm, đầu ra có
thể là một phân phối xác suất cho mỗi khách hàng trên tất cả các lớp.
 Mã số khách hàng: Đôi khi, thay vì chỉ là nhãn lớp, đầu ra có thể là một mã số duy
nhất đại diện cho mỗi khách hàng. Mã số này có thể tương ứng với một trong các
phân khúc khách hàng cụ thể.
 Dự đốn khác

Hình 1.14: Đầu ra của bài tốn phân nhóm

Kỳ vọng của bài tốn: Kỳ vọng chính trong bài tốn phân loại khách hàng là tạo ra các
nhóm khách hàng có sự tương đồng dựa trên các đặc trưng cụ thể. Các nhóm này khơng được
xác định trước, mà được hình thành dựa trên sự gom nhóm tự động của thuật tốn. Kết quả
của bài toán sẽ giúp hiểu rõ hơn về đặc điểm và hành vi của từng nhóm khách hàng, từ đó có
thể thực hiện các chiến lược tiếp thị hoặc phục vụ tùy chỉnh để tối ưu hóa dịch vụ hoặc sản
phẩm.

18


1.4 Ứng dụng thực tế của bài toán
Bài toán phân loại khách hàng là một trong những ứng dụng thực tế phổ biến của khai
phá dữ liệu và machine learning. Việc hiểu rõ về khách hàng của một doanh nghiệp và khả
năng tối ưu hóa dịch vụ hoặc sản phẩm dựa trên thơng tin này có thể mang lại lợi ích lớn cho
doanh nghiệp và khách hàng. Dưới đây là một số ứng dụng mà bài tốn này có thể làm được:
 Tối ưu hóa chiến lược tiếp thị: Khi phân loại khách hàng thành các nhóm dựa trên
các đặc trưng như hành vi mua sắm, sở thích sản phẩm, hoặc độ tuổi, có thể tùy
chỉnh chiến lược tiếp thị của mình cho từng nhóm. Điều này giúp tối ưu hóa các

chiến dịch tiếp thị, giảm phí quảng cáo khơng cần thiết, và tăng hiệu suất tiếp thị.
 Cải thiện dịch vụ khách hàng: Bằng cách hiểu rõ hơn về nhu cầu và mong muốn
của từng nhóm khách hàng, có thể cải thiện dịch vụ của mình. Ví dụ, có thể cung
cấp các sản phẩm hoặc ưu đãi tùy chỉnh cho từng nhóm, cải thiện trải nghiệm khách
hàng, và tạo ra một môi trường kinh doanh thuận lợi hơn.
 Phát triển sản phẩm mới: Khi biết rằng có các nhóm khách hàng có nhu cầu cụ thể,
có thể phát triển sản phẩm hoặc dịch vụ mới dựa trên các nhu cầu này. Điều này
giúp mở rộng thị trường của mình và tạo ra cơ hội kinh doanh mới.
 Dự đoán hành vi tương lai: Sau khi phân loại khách hàng, có thể sử dụng dữ liệu
lịch sử để dự đốn hành vi tương lai của từng nhóm. Ví dụ, có thể dự đốn khi nào
họ có thể mua sắm tiếp theo hoặc nâng cấp dịch vụ.
 Chăm sóc khách hàng cá nhân hóa: Thơng qua phân loại khách hàng, có thể tạo ra
các chiến lược chăm sóc khách hàng cá nhân hóa. Bằng cách cung cấp nội dung
hoặc ưu đãi phù hợp với từng nhóm, có thể tăng tính tương tác và trung thực của
khách hàng.

1.5 Khó khăn, thách thức của bài toán phân loại khách hàng
Bài toán phân loại khách hàng là một phần quan trọng trong lĩnh vực tiếp thị và phục
vụ khách hàng. Dưới đây là một số khó khăn và thách thức phổ biến mà có thể gặp khi thực
hiện bài tốn này:
 Dữ liệu khơng đồng nhất: Dữ liệu về khách hàng có thể đến từ nhiều nguồn khác
nhau và không đồng nhất về định dạng và cấu trúc. Điều này có thể làm cho việc
tổng hợp và xử lý dữ liệu trở nên khó khăn.
 Số lượng biến đổi: Có nhiều yếu tố có thể được sử dụng để phân loại khách hàng,
bao gồm độ tuổi, giới tính, hành vi mua sắm, tương tác trực tuyến và nhiều yếu tố
khác. Quản lý và xử lý nhiều biến đổi có thể là một thách thức.
19


 Dữ liệu thiếu và nhiễu: Dữ liệu thường bị thiếu thông tin hoặc chứa nhiễu. Việc xử

lý dữ liệu bị thiếu hoặc nhiễu có thể ảnh hưởng đến hiệu suất của mơ hình phân
loại.
 Lựa chọn mơ hình: Chọn mơ hình phù hợp cho bài tốn phân loại khách hàng là
một quyết định quan trọng. Khơng có mơ hình duy nhất phù hợp cho mọi tình
huống, và việc chọn sai mơ hình có thể ảnh hưởng đến hiệu suất của bài tốn.
 Hiệu suất mơ hình: Đánh giá và cải thiện hiệu suất của mơ hình là một thách thức.
Cần sử dụng các phương pháp đánh giá chính xác và kỹ thuật tinh chỉnh mơ hình
để đảm bảo mơ hình hoạt động hiệu quả.
 Tính riêng tư và bảo mật: Bảo vệ thông tin cá nhân của khách hàng là một ưu tiên
quan trọng. Việc xử lý dữ liệu khách hàng mà không vi phạm quy định về bảo mật
và quyền riêng tư có thể là một thách thức.
 Đối tượng cụ thể: Một số thách thức có thể phụ thuộc vào loại hình kinh doanh và
mục tiêu cụ thể của việc phân loại khách hàng. Ví dụ, việc phân loại khách hàng
trong ngành thực phẩm có thể khác với việc phân loại khách hàng trong lĩnh vực
tài chính.
 Thay đổi trong thời gian: Hành vi và nhu cầu của khách hàng có thể thay đổi theo
thời gian. Việc duy trì mơ hình phân loại khách hàng có khả năng thích nghi với
sự biến đổi này là một thách thức.
Để vượt qua những khó khăn và thách thức này, quan trọng là có chiến lược rõ ràng, quản
lý dữ liệu cẩn thận, sử dụng cơng nghệ và mơ hình phù hợp, và thường xuyên cập nhật và cải
thiện quy trình phân loại khách hàng.

Kết luận chương 1
Trong chương 1, chúng em đã nêu tổng quan về học máy và bài tốn phân cụm dữ liệu.
Từ đó chúng em phát biểu bài toán đã lựa chọn, ứng dụng thực tế cũng như khó khăn và
thách thức của bài tốn.

20



CHƯƠNG II. CÁC KỸ THUẬT GIẢI QUYẾT BÀI TOÁN
2.1 Phương hướng tiếp cận bài tốn
Q trình giải quyết bài tốn phân loại khách hàng thường bao gồm việc thu thập dữ liệu
phù hợp, tiền xử lý dữ liệu, xây dựng mơ hình và đánh giá hiệu suất của mơ hình. Sự lựa
chọn của kỹ thuật phụ thuộc vào loại dữ liệu, mục tiêu cụ thể và nguồn lực có sẵn của doanh
nghiệp.

2.2 Một số kỹ thuật giải quyết bài toán
Hiện tại, có rất nhiều các kỹ thuật được tạo ra để giải bài toán phân loại khách hàng. Dù
hiệu năng của từng cách giải, từng thuật tốn có thể chênh lệch nhưng nhìn chung, vẫn là đưa
ra lời giải một cách chính xác nhất có thể cho bài tốn. Hiện nay có rất nhiều các kỹ thuật để
giải bài tốn, dưới đây là những cách giải phổ biến và cơ bản nhất:

 Nhóm học máy (Machine Learning)
 Hồi quy logistic (Logistic Regression): Sử dụng để phân loại khách hàng thành
hai hoặc nhiều lớp dựa trên các biến độc lập
 Máy vector hỗ trợ (Support Vector Machines): Phân loại dữ liệu bằng cách xác
định các ranh giới quyết định tối ưu giữa các lớp khách hàng.
 Cây quyết định (Decision Trees): Xây dựng cây quyết định để phân loại khách
hàng dựa trên các quyết định tương ứng với các đặc điểm khách hàng.
 Random Forests và Gradient Boosting: Sử dụng các kỹ thuật tập hợp nhiều
cây quyết định để cải thiện độ chính xác của phân loại.
 Nhóm khai phá dữ liệu (Data Mining)
 Phân cụm (Clustering): Sử dụng để phân chia khách hàng thành các nhóm dựa
trên sự tương tự về các đặc điểm hoặc hành vi.
 Phân tích chuỗi thời gian (Time Series Analysis): Được sử dụng khi muốn phân
loại khách hàng dựa trên thời gian hoặc xu hướng thời gian.
 Nhóm học sâu (Deep Learning)

21



 Mạng nơ-ron sâu (Deep Neural Networks): ác mạng nơ-ron sâu có khả năng
học các biểu đồ phức tạp và có thể được sử dụng để phân loại khách hàng dựa
trên dữ liệu lớn và phức tạp.
 Nhóm xử lý ngôn ngữ tự nhiên (NLP)
 Phân loại dựa trên văn bản (Text Classification): Sử dụng để phân loại khách
hàng dựa trên phản hồi của họ hoặc các văn bản khác
 Phân tích cảm xúc (Sentiment Analysis): Xác định tâm trạng hoặc ý kiến của
khách hàng từ các bình luận hoặc đánh giá của họ.

Tuy nhiên, như đã nói ở trên, chúng ta có thể kết hợp nhiều cách giải vào cùng một
bài toán tùy thuộc theo độ phức tạp và nhu cầu của người giải.

2.3 Hồi quy logistic (Logistic Regression)
2.3.1 Mô tả:
 Hàm logistic được sử dụng để chuyển đổi tổng trọng số của các đặc điểm
đầu vào thành xác suất rơi vào một lớp cụ thể. Sử dụng một tập hợp các
trọng số (weights) và một hệ số chặn (bias) để tạo ra một phương trình tuyến
tính, sau đó áp dụng hàm logistic cho kết quả để thu được xác suất dự đốn.

Hình 2.1: Mơ hình hồi quy (Regression)
22


×