Download as pdf or txt
Download as pdf or txt
You are on page 1of 53

BỘ 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:
PHÂN TÍCH QUY TRÌNH GIAO HÀNG ĐÚNG HẠN
HAY KHÔNG DỰA TRÊN BỘ DỮ LIỆU
E-COMMERCE SHIPPING DATA BẰNG PHẦN MỀM ORANGE

Học phần: Khoa Học Dữ Liệu


Nhóm sinh viên thực hiện:
Họ và tên sinh viên Mã số sinh viên

LÊ MAI PHƯƠNG DUYÊN 31211020937

NGUYỄN TIẾN HUY 31211027200

TRẦN NGUYỄN NGỌC PHÁT 31211027319

DƯƠNG AN THƠ 31211027023

TRƯƠNG MINH TIẾN 31211027340

Chuyên Ngành: HỆ THỐNG THÔNG TIN KINH DOANH Khóa: K47


Giảng Viên: TS. Đặng Ngọc Hoàng Thành

TP. Hồ Chí Minh, Ngày 19 tháng 5 năm 2023


MỤC LỤC

DANH MỤC HÌNH - BẢNG ........................................................................................................ 3

LỜI CẢM ƠN ................................................................................................................................ 5


BẢNG ĐÁNH GIÁ HOẠT ĐỘNG NHÓM .................................................................................6

CÁC BÀI TOÁN LIÊN QUAN .................................................................................................... 7


CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI .................................................................................... 8
1.1. Tổng quan về bài toán phân lớp dữ liệu ......................................................................... 8

1.2. Giới thiệu phần mềm Orange .......................................................................................... 9


1.3. Lý do chọn đề tài ............................................................................................................. 12

1.4. Mục tiêu nghiên cứu ....................................................................................................... 12

1.5. Đối tượng và phạm vi nghiên cứu ................................................................................. 13


CHƯƠNG 2. CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU ............................................................ 13
2.1. Các mô hình phân lớp dữ liệu ....................................................................................... 14

2.1.1. Mô hình Logistic Regression ................................................................................... 14


2.1.2. Mô hình Decision Tree ............................................................................................ 15

2.1.3. Mô hình Support Vector Machine ........................................................................... 16


2.1.4. Mô hình Neural Network ......................................................................................... 18

2.2. Quy trình phân lớp dữ liệu ............................................................................................ 20

2.2.1. Tiền xử lý dữ liệu .....................................................................................................20

2.2.2. Phân lớp dữ liệu ....................................................................................................... 21


2.2.3. Đánh giá tính hiệu quả ............................................................................................. 22

2.2.3.1. Tổng quan về đánh giá tính hiệu quả .............................................................. 22


2.2.3.2. Các phương pháp đánh giá hiệu suất của bài toán phân lớp ........................... 23
CHƯƠNG 3. QUY TRÌNH THỰC HIỆN & CÁC KẾT QUẢ THỰC NGHIỆM ................27

3.1. Bộ dữ liệu ......................................................................................................................... 27

3.1.1. Mô tả dữ liệu ............................................................................................................ 27


3.1.2. Tiền xử lý dữ liệu .....................................................................................................28

Nhóm 3 - Khoa học dữ liệu | 1


3.2. Thực nghiệm và kết quả ................................................................................................. 30

3.2.1. Bài toán 1: Phát hiện các đặc điểm đặc thù liên quan đến sự thành công và thất bại
của quy trình giao hàng dựa vào lược đồ và các công cụ thống kê ................................... 30

*** KẾT LUẬN:


ĐẶC ĐIỂM CHUNG CỦA NHỮNG ĐƠN HÀNG GIAO TRỄ HẸN ............................ 40

3.2.2. Bài toán 2: Bài toán phân lớp


Dự đoán rủi ro giao hàng đúng hạn hay trễ hạn của công ty bán hàng điện tử. ................ 41

*** Quy trình ..................................................................................................................... 41


3.3. Phân Tích và Đánh Giá .................................................................................................. 43
3.3.1. Phân tích dựa trên Test and Score ........................................................................... 43

3.3.2. Phân tích dựa trên ma trận nhầm lẫn (Confusion Matrix) ....................................... 45
3.3.3. Phân tích dựa trên ROC Analysis ............................................................................ 47

3.3.4. Lựa chọn mô hình .................................................................................................... 48


CHƯƠNG 4. KẾT LUẬN ........................................................................................................... 50

4.1. Các Kết Quả Đạt Được ...................................................................................................50


4.2. Những Hạn Chế và Hướng Phát Triển ......................................................................... 50

TÀI LIỆU THAM KHẢO .......................................................................................................... 49

DANH MỤC HÌNH - BẢNG

Nhóm 3 - Khoa học dữ liệu | 2


Hình 1. Giới thiệu về phân lớp dữ liệu
8

Hình 2. Giao diện công cụ Data


10

Hình 3. Giao diện công cụ Visualize


10

Hình 4. Giao diện công cụ Model


10

Hình 5. Giao diện công cụ Evaluate 10


Hình 6. Giao diện công cụ Unsupervised 10
Hình 7. Giao diện Add-ons 11
Hình 8. Giao diện Logistic Regression 13
Hinh 9. Kiến trúc của một mạng neuron 17
Hình 10. Các kỹ thuật trong tiền xử lý dữ liệu 19
Hình 11. Xây dựng mô hình huấn luyện 20
Hình 12. Mô hình phân lớp dữ liệu 21
Hình 13. Minh hoạ 3 trường hợp có thể xảy ra khi đánh giá mô hình 21
Hình 14. Confusion Matrix 22
Hình 15. Đường cong ROC 23
Hình 16. Mẫu dữ liệu gốc đã qua xử lý 27
Hình 17. Quy trình tiền xử lý dữ liệu và phân tách thành dữ liệu Train và Forecast 27
Hình 18. Biểu đồ phân bố đơn hàng tại các kho chứa khác nhau 28
Hình 19. Biểu đồ phân bố các đơn hàng theo phương thức vận chuyển 29
Hình 20. Biểu đồ cuộc gọi chăm sóc khách hàng trực tuyến 30
Hình 21. Biểu đồ thể hiện giá trị đơn hàng 31
Hình 22. Biểu đồ phân bố đơn hàng dựa trên số lần mua hàng trước đó của khách hàng 32
Hình 23. Biểu đồ đánh giá của khách hàng về công ty 33
Hình 24. Biểu đồ phân bố đơn hàng theo mức độ quan trọng của sản phẩm 34
Hình 25. Biểu đồ phân bố đơn hàng theo giới tính khách hàng 35
Hình 26. Biểu đồ phân bố đơn hàng được áp dụng khuyến mãi 36

Nhóm 3 - Khoa học dữ liệu | 3


Hình 27. Biểu đồ phân bố đơn hàng theo khối lượng sản phẩm 37
Hình 28. Mô hình Orange xử lý dữ liệu và lựa chọn phương pháp dự báo 39
Hình 29. Kết quả Test&Score đối với target 0 (giao trễ hẹn) 40
Hình 30. Kết quả Test&Score đối với average over classes 41
Hình 31. Ma trận nhầm lẫn với phương pháp Logistic Regression 43
Hình 32. Ma trận nhầm lẫn với phương pháp Tree 43
Hình 33. Ma trận nhầm lẫn với phương pháp SVM 44
Hình 34. Đồ thị biểu diễn đường cong ROC với giá trị biến Target là 0 45
Hình 35. Dự đoán bộ dữ liệu “E-commerce Shipping Data” bằng Logistic Regression 46

Bảng 1. Mô tả dữ liệu các biến có trong dataset 25

Nhóm 3 - Khoa học dữ liệu | 4


LỜI CẢM ƠN
Kính gửi Thầy Đặng Ngọc Hoàng Thành,
Xin gửi lời cảm ơn chân thành nhất đến Thầy vì đã dành thời gian và tâm huyết để truyền
đạt kiến thức của môn Khoa Học Dữ Liệu cho chúng em trong suốt học kỳ vừa qua. Thầy
là người thầy rất tận tâm và nhiệt tình, luôn sẵn sàng giải đáp các thắc mắc của chúng em
và hướng dẫn chúng em hiểu bài tập một cách chi tiết và rõ ràng nhất. Mỗi buổi học của
Thầy đều là một trải nghiệm quý giá, đem lại cho chúng em không chỉ kiến thức mà còn
cả những kinh nghiệm thực tế trong lĩnh vực Khoa Học Dữ Liệu. Không chỉ giáo dục,
Thầy còn truyền cả niềm đam mê và sự say mê cho môn học này cho chúng em, khiến
cho chúng em luôn có động lực để học tập và phát triển bản thân hơn.
Chúng em sẽ mãi nhớ và trân trọng những kiến thức và kinh nghiệm mà Thầy đã truyền
đạt cho chúng em trong suốt thời gian qua. Chúng em sẽ cố gắng áp dụng những kiến
thức này vào thực tế và phát triển bản thân một cách tốt nhất.
Một lần nữa, nhóm em xin chân thành cảm ơn Thầy Đặng Ngọc Hoàng Thành vì những
gì Thầy đã làm cho chúng em. Chúc Thầy luôn mạnh khỏe và thành công trong sự nghiệp
giáo dục của mình.
Trân trọng,

Nhóm 3 - Khoa học dữ liệu | 5


BẢNG ĐÁNH GIÁ HOẠT ĐỘNG NHÓM
MỨC ĐỘ HOÀN
STT TÊN MSSV THỰC HIỆN
THÀNH

- Làm docs báo cáo


- Lý thuyết Neural Network
1 Lê Mai Phương Duyên 31211020937 - Những hạn chế và hướng 100%
phát triển
- Kết luận
- Thuyết trình
- Danh mục hình, bảng
2 Nguyễn Tiến Huy 31211027200 100%
- Lý thuyết SVM
- Nhận xét bài toán 1
- Thuyết trình
- Tổng quan về đề tài
Trần Nguyễn Ngọc
3 31211027319 - Phân tích bài toán 1 100%
Phát
- Phân tích và đánh giá ROC
Analysis bài toán 2
- Làm slide
- Lý thuyết LR
4 Dương An Thơ 31211027023 - Phân tích và đánh giá 100%
Confusion Matrix bài toán 2
- Các kết quả đạt được
- Thuyết trình
- Lý thuyết Tree
5 Trương Minh Tiến 31211027340 - Tiền xử lý dữ liệu 100%
- Phân tích và đánh giá
Test&Score bài toán 2

Nhóm 3 - Khoa học dữ liệu | 6


CÁC BÀI TOÁN LIÊN QUAN
Bài toán 1:
Phát hiện các đặc điểm đặc thù thành công của việc giao đơn hàng. Ở bài toán này nhóm
đã phân tích các đặc tính liên quan đến việc đơn hàng có được giao thành công hay thất
bại, từ đó đưa ra những đề xuất cho công ty. Việc ban quản trị công ty có được những đặc
tính này thông qua khách hàng là rất quan trọng và cần thiết để công ty có thể cải thiện
việc giao hàng đúng hạn cho khách hàng từ đó có tạo chỗ đứng vững chắc trong lòng
khách hàng.
Bài toán 2:
Sử dụng các kỹ thuật phân lớp để dự đoán những đơn hàng sẽ bị giáo trễ hạn. Từ đó phân
tích và đánh giá số liệu giữa các kỹ thuật để lựa chọn mô hình hiệu quả nhất để có thể dự
đoán chính xác bộ dữ liệu.

Nhóm 3 - Khoa học dữ liệu | 7


CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI

1.1. Tổng quan về bài toán phân lớp dữ liệu

Bài toán phân lớp là quá trình phân lớp 1 đối tượng dữ liệu vào 1 hay nhiều lớp đã cho
trước nhờ 1 mô hình phân lớp (model).

● Mô hình này được xây dựng dựa trên 1 tập dữ liệu được xây dựng trước đó có gán
nhãn (hay còn gọi là tập huấn luyện).
● Quá trình phân lớp là quá trình gán nhãn cho đối tượng dữ liệu.

Bài toán phân lớp (classification) và bài toán gom cụm (cluster) là 2 bài toán lớn trong
lĩnh vực Machine Learning (ML) nói riêng và Data
Science nói chung.

Hình 1. Giới thiệu về phân lớp dữ liệu

Có nhiều bài toán phân lớp dữ liệu như phân lớp nhị
phân (binary classification), phân lớp đa lớp (multiclass
classification), phân lớp đa trị.

● Bài toán phân lớp nhị phân là bài toán gán nhãn
dữ liệu cho đối tượng vào 1 trong 2 lớp khác
nhau dựa vào việc dữ liệu đó có hay không có
các đặc trưng (feature) của bộ phân lớp.
● Bài toán phân lớp đa lớp là quá trình phân lớp dữ liệu với số lượng lớp lớn hơn 2.
Như vậy với từng dữ liệu phải xem xét và phân lớp chúng vào những lớp khác
nhau chứ không phải là 2 lớp như bài toán phân lớp nhị phân. Và thực chất bài
toán phân lớp nhị phân là 1 bài toán đặt biệt của phân lớp đa lớp.

Ứng dụng của bài toán này được sử dụng rất nhiều và rộng rãi trong thực tế ví dụ như bài
toán nhận dạng khuôn mặt, nhận diện giọng nói, phát hiện email spam, …

Dưới đây là các bước chính trong quá trình phân lớp dữ liệu:

● Xác định các lớp hoặc nhóm: Đầu tiên, chúng ta cần xác định các lớp hoặc nhóm
mà chúng ta muốn phân loại các quan sát vào. Ví dụ, trong bài toán phân loại hình
ảnh, các lớp có thể là các loại đối tượng khác nhau như chó, mèo, ô tô, xe đạp, v.v.

Nhóm 3 - Khoa học dữ liệu | 8


● Thu thập dữ liệu: Tiếp theo, chúng ta cần thu thập dữ liệu cho từng lớp. Dữ liệu
này có thể được thu thập thông qua các phương pháp khác nhau, bao gồm cả thu
thập dữ liệu thủ công và tự động.
● Tiền xử lý dữ liệu: Trước khi chúng ta có thể phân lớp dữ liệu, chúng ta cần tiền
xử lý dữ liệu để chuẩn bị cho các bước tiếp theo. Các bước tiền xử lý có thể bao
gồm chuẩn hóa dữ liệu, xử lý giá trị bị khuyết và trích xuất đặc trưng.
● Huấn luyện mô hình phân lớp: Tiếp theo, chúng ta cần huấn luyện một mô hình
phân lớp để phân loại các quan sát vào các lớp tương ứng. Có nhiều loại mô hình
phân lớp khác nhau, bao gồm cây quyết định, học máy, mạng nơ-ron và SVM
(Support Vector Machine).
● Đánh giá và điều chỉnh mô hình: Sau khi huấn luyện mô hình, chúng ta cần đánh
giá hiệu suất của nó bằng cách sử dụng các phương pháp đánh giá mô hình như
chia tập dữ liệu, ma trận nhầm lẫn và độ chính xác, ROC, AUC. Nếu mô hình của
chúng ta không hoạt động tốt, chúng ta có thể điều chỉnh nó bằng cách thay đổi
các siêu tham số.

1.2. Giới thiệu phần mềm Orange


Phần mềm Orange biết đến bởi việc tích hợp các công cụ khai phá dữ liệu mã nguồn mở
và học máy thông minh, đơn giản, được lập trình bằng Python với giao diện trực quan và
tương tác dễ dàng. Với nhiều chức năng, phần mềm này có thể phân tích được những dữ
liệu từ đơn giản đến phức tạp, tạo ra những đồ họa đẹp mắt và thú vị và còn giúp việc
khai thác dữ liệu và học máy trở nên dễ dàng hơn cho cả người dùng mới và chuyên gia.
Orange cung cấp nhiều tính năng hữu ích cho phân tích dữ liệu và trực quan hóa, bao
gồm:
● Xử lý và chuẩn hóa dữ liệu: Orange cung cấp nhiều công cụ để xử lý và chuẩn hóa
dữ liệu, bao gồm lọc, tách, chuyển đổi và rút trích đặc trưng dữ liệu.
● Phân tích dữ liệu: Orange cung cấp các công cụ để phân tích dữ liệu bằng cách sử
dụng các phương pháp thống kê, học máy và khai thác dữ liệu, bao gồm phân tích
cụm, phân tích thành phần chính, hồi quy và phân loại.
● Mô hình hóa dữ liệu: Orange cung cấp nhiều công cụ để xây dựng và đánh giá mô
hình dữ liệu bằng cách sử dụng các phương pháp học máy và khai thác dữ liệu,
bao gồm cây quyết định, hồi quy tuyến tính, mạng nơ-ron và SVM.
● Trực quan hóa dữ liệu: Orange cung cấp nhiều công cụ để trực quan hóa dữ liệu
bằng cách sử dụng các biểu đồ và đồ thị, bao gồm biểu đồ đường, biểu đồ cột và
biểu đồ phân tán.

Nhóm 3 - Khoa học dữ liệu | 9


Các công cụ (widgets) cung cấp các chức năng cơ bản như đọc dữ liệu, hiển thị
dữ liệu dạng bảng , lựa chọn thuộc tính đặc điểm của dữ liệu, huấn luyện dữ liệu để dự
đoán, so sánh các thuật toán máy học , trực quan hóa các phần tử dữ liệu, …

● Data: Dùng để rút trích, biến đổi, và nạp dữ liệu (ETL process)
● Visualize: dùng để biểu diễn biểu đồ (chart) giúp quan sát dữ liệu được tốt hơn.
● Model: gồm các hàm máy học (machine learning) phân lớp dữ liệu với Tree,

Logistics Regression, SVM,...


Hình 2. Giao diện công cụ Data Hình 3. Giao diện công cụ Visualize Hình 4. Giao diện công cụ Model
● Evaluate: Là các phương pháp đánh giá mô hình như : Test&Score, Prediction,
Confusion.

Nhóm 3 - Khoa học dữ liệu | 10


● Unsupervised: Gồm các hàm máy học (machine learning) gom nhóm dữ liệu như:
Distance, K-
means,...

Hình 5.
Giao diện công cụ

Hình 6.
Giao diện công cụ
Unsupervised

● Add ons: Giúp


mở rộng các
chức năng

nâng cao như xử lý dữ liệu lớn (Big Data) với Spark, xử lý ảnh với Deep learning,
xử lý văn bản, phân tích mạng xã hội,.. Đây có lẽ là điểm cộng của Orange so với
các phần mềm khai phá dữ liệu khác.

Nhóm 3 - Khoa học dữ liệu | 11


Hình 7. Giao diện Add-ons

1.3. Lý do chọn đề tài


Kể từ sau dịch Covid-19, giao hàng đang là xu thế nổi lên nhanh chóng và xâm chiếm thị
trường. Các dịch vụ giao hàng nổi lên như một hiện tượng, từ đồ ăn, điện máy, quần áo
hay thậm chí là thú cưng đã hoàn toàn thay đổi thói quen mua sắm của người tiêu dùng
toàn thế giới.
Nhóm chúng em quyết định chọn đề tài phân tích, dự báo liệu đơn hàng của một công ty
bán đồ điện máy có giao đúng hạn hay không vì đây là một vấn đề quan trọng đối với sự
thành công của doanh nghiệp này nói riêng và rất nhiều doanh nghiệp trong xã hội hiện
tại nói chung.
Đơn hàng được giao đúng hạn là một yếu tố quan trọng để giữ vững lòng tin của khách
hàng. Nếu công ty không đảm bảo được việc giao hàng đúng thời hạn, khách hàng có thể
mất niềm tin vào công ty và chuyển sang sử dụng sản phẩm và dịch vụ của các đối thủ
cạnh tranh. Bên cạnh đó, giao hàng đúng hạn cũng giúp tăng tính cạnh tranh của công ty
trong ngành. Các công ty cạnh tranh có thể có chất lượng sản phẩm tương đương nhưng
khả năng giao hàng đúng hạn lại là yếu tố quan trọng để khách hàng chọn lựa.
Bằng cách phân tích và dự báo, nhóm hy vọng có thể đưa ra các giải pháp để giảm thiểu
rủi ro giao hàng chậm trễ và cải thiện hiệu quả hoạt động kinh doanh của công ty. Việc
phân tích và dự báo giúp công ty nắm bắt được tình hình sản xuất và lưu kho, từ đó đưa
ra kế hoạch vận chuyển hợp lý và đảm bảo giao hàng đúng hạn.
Từ việc phân tích và dự báo, công ty có thể tối ưu hoá các quy trình sản xuất và vận
chuyển để giảm thiểu thời gian chờ đợi của khách hàng và cải thiện chất lượng dịch vụ.
Tóm lại, việc phân tích, dự báo và cải thiện quy trình giao hàng của công ty bán đồ điện
máy sẽ giúp tăng tính cạnh tranh và giữ vững lòng tin của khách hàng, từ đó giúp công ty
đạt được sự thành công trong lĩnh vực kinh doanh của mình.
1.4. Mục tiêu nghiên cứu
Mục tiêu chung của việc nghiên cứu tập dữ liệu này là nhằm sử dụng các phương pháp
thống kê, phân tích dữ liệu để xác định và dự báo những đơn đặt hàng bị giao trễ. Từ đó,
phân tích lý do, tìm ra nguyên nhân để công ty giao hàng có thể cải tiến quá trình làm
việc nhằm nâng cao chất lượng dịch vụ.
Đề tài của nhóm cũng đã đặt ra rõ ràng 2 mục tiêu chính cần giải quyết song song với 2
bài toán yêu cầu:

Nhóm 3 - Khoa học dữ liệu | 12


● Mục tiêu thứ nhất - Phát hiện điểm đặc thù của dữ liệu: mục tiêu này đòi hỏi một
quá trình phân tích và tìm hiểu các thông tin quan trọng, đáng chú ý của bộ dữ liệu.
Các công cụ có thể áp dụng để hỗ trợ là: Pivot Table, hàm của Excel, Orange và
các dạng lược đồ, biểu đồ…
● Mục tiêu thứ hai - Dự đoán khả năng các đơn hàng bị trễ hẹn thông qua các biến
độc lập có trong bài như: hình thức giao hàng, giá thành sản phẩm, khối lượng đơn
hàng,.. Ở mục tiêu này ta áp dụng bài toán phân lớp là kiến thức đã được học trong
lớp.
1.5. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của bài là 10.999 đơn hàng của các khách hàng khác nhau với
các thông tin lưu trữ về đơn hàng như: kho chứa, khối lượng, hình thức giao hàng, được
khách hàng tra cứu thông tin bao nhiêu lần,...
Phạm vi nghiên cứu của bài luận sẽ được chứa trong tập dữ liệu lưu trữ của công ty
về thông tin các đơn hàng.

Nhóm 3 - Khoa học dữ liệu | 13


CHƯƠNG 2. CÁC MÔ HÌNH PHÂN LỚP DỮ LIỆU

2.1. Các mô hình phân lớp dữ liệu

2.1.1. Mô hình Logistic Regression


Hồi quy logistic là một kỹ thuật phân tích dữ liệu sử dụng toán học
để tìm ra mối quan hệ giữa hai yếu tố dữ liệu. Sau đó, kỹ thuật này
sử dụng mối quan hệ đã tìm được để dự đoán giá trị của những yếu
tố đó dựa trên yếu tố còn lại. Dự đoán thường cho ra một số kết quả
hữu hạn, như có hoặc không.

Ví dụ: giả sử bạn muốn đoán xem khách truy cập trang web của bạn sẽ nhấp vào nút
thanh toán trong giỏ hàng của họ hay không. Phân tích hồi quy logistic xem xét hành vi
của khách truy cập trước đây, chẳng hạn như thời gian dành cho trang web và số lượng
các mặt hàng trong giỏ hàng. Quá trình phân tích này xác định rằng, trước đây, nếu khách
truy cập dành hơn năm phút trên trang web và thêm hơn ba mặt hàng vào giỏ hàng, họ sẽ
nhấp vào nút thanh toán. Nhờ vào thông tin này, sau đó, hàm hồi quy logistic có thể dự
đoán hành vi của một khách mới truy cập trang web.

Regularization là một kỹ thuật được sử dụng trong


các mô hình học máy nhằm giảm thiểu tình trạng
overfitting (quá khớp) trong quá trình huấn luyện
mô hình.

L1: tạo ra các trọng số thưa thớt (sparse


weights) bằng cách đưa một số trọng số về 0.

L2: regularization sẽ giảm thiểu giá trị của


các trọng số mà không đưa chúng về 0.

Strength (C): Đây là tham số quyết định mức độ


ảnh hưởng của regularization đến quá trình huấn
luyện. Nếu giá trị C càng nhỏ thì mô hình sẽ càng
có xu hướng đưa các trọng số về 0, và ngược lại.

Nhóm 3 - Khoa học dữ liệu | 14


Hình 8. Giao diện Logistic Regression

Balance class distribution: Đây là tham số quyết định cách xử lý mất cân bằng dữ liệu
giữa các lớp. Nếu tính năng này được kích hoạt, mô hình sẽ cố gắng cân bằng số lượng
mẫu giữa các lớp bằng cách tăng hoặc giảm trọng số của từng mẫu trong quá trình huấn
luyện.

Ưu điểm:
● Mô hình Logistic dễ thực hiện, dễ đào tạo. Nó rất nhanh trong việc phân loại các
bản ghi không xác định.
● Hoạt động tốt khi tập dữ liệu có thể phân tách tuyến tính.
● Có thể giải thích các hệ số của mô hình như là các chỉ số về tầm quan trọng của
tính năng.
Nhược điểm: Mô hình Logistic vẫn tồn tại nhược điểm, đó là mô hình phụ thuộc vào
mức độ chính xác của nguồn thông tin thu nhập và khả năng dự báo cũng như trình độ
phân tích của cán bộ tín dụng. Ngoài ra, mô hình Logistic bản chất là mô hình kinh tế
lượng, vì vậy khi hệ số xác định ở mức nhỏ thì mô hình có thể dự báo kém chính xác.

2.1.2. Mô hình Decision Tree


Cây ra quyết định là một phương pháp trong Machine Learning và Data
Mining được sử dụng để dự đoán giá trị đầu ra cho một tập dữ liệu mới
bằng cách xây dựng một cây quyết định từ tập dữ liệu huấn luyện. Cây ra
quyết định cũng được sử dụng để phân loại và phân tích dữ liệu. Nó có thể
áp dụng cho cả dữ liệu phân loại (categorical data) và dữ liệu số (numeric data). Một cây
quyết định là một cấu trúc cây có nút và nhánh. Mỗi nút đại diện cho một thuộc tính
(attribute), trong khi mỗi nhánh là một giá trị (value) của thuộc tính đó. Các lá (leaf) của
cây đại diện cho các lớp (class) hoặc giá trị dự đoán (prediction) của một mẫu dữ liệu. Để
phân lớp một mẫu dữ liệu, ta sẽ bắt đầu từ nút gốc của cây và tiến hành kiểm tra giá trị
của thuộc tính tại nút đó để di chuyển đến nút con phù hợp. Tiếp tục thực hiện đến khi đạt
được lá của cây, nơi mà sẽ cho ra lớp (class) hoặc giá trị dự đoán của mẫu dữ liệu đó.
Việc phân lớp dựa trên cây quyết định có thể được áp dụng trong nhiều lĩnh vực như
phân loại ảnh, phân tích văn bản, dự đoán giá cổ phiếu và nhiều ứng dụng khác. Tuy
nhiên, nếu cây quyết định bị quá khớp với dữ liệu huấn luyện, thì kết quả phân loại có thể
không chính xác trên dữ liệu mới. Do đó, việc đánh giá và kiểm tra độ chính xác của cây
quyết định trên dữ liệu kiểm tra là rất quan trọng. Phương pháp cây ra quyết định bao
gồm các bước sau:

Nhóm 3 - Khoa học dữ liệu | 15


- Chọn thuộc tính tốt nhất để tách dữ liệu: Thuộc tính tốt nhất là thuộc tính có khả năng
tách dữ liệu thành các tập con tốt nhất. Để chọn thuộc tính tốt nhất, có thể sử dụng các
phương pháp như Information Gain, Gini Index và Chi-Squa-red Test.
- Tách dữ liệu theo thuộc tính đã chọn: Sau khi chọn thuộc tính tốt nhất, dữ liệu được
tách thành các tập con dựa trên giá trị của thuộc tính này.
- Lặp lại quá trình cho các tập con: Quá trình lựa chọn thuộc tính và tách dữ liệu được lặp
lại cho các tập con, cho đến khi các tập con chỉ chứa các trường hợp của một lớp hoặc đạt
đến một tiêu chí dừng.
- Tạo cây quyết định: Các tập con được sử dụng để xây dựng cây quyết định. Các tập con
là các nút trong cây quyết định, trong khi các thuộc tính được sử dụng để tách dữ liệu là
các cạnh của cây.
- Kiểm tra và tinh chỉnh cây quyết định: Cây quyết định được kiểm tra để đảm bảo rằng
nó có thể dự đoán chính xác giá trị đầu ra cho các tập dữ liệu mới. Nếu cây quyết định
không hoạt động tốt, các thay đổi được thực hiện để tinh chỉnh cây. Phương pháp cây ra
quyết định là một phương pháp đơn giản và hiệu quả để dự đoán giá trị đầu ra cho các tập
dữ liệu mới. Nó được sử dụng rộng rãi trong nhiều lĩnh vực, bao gồm công nghệ thông
tin, tài chính, y tế, và nhiều lĩnh vực khác.
Ư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

2.1.3. Mô hình Support Vector Machine


Giới thiệu
Support Vector Machine (SVM) là một mô hình phân loại hoạt động
bằng việc xây dựng một siêu phẳng (hyperplane) có (n - 1) chiều trong
không gian n chiều của dữ liệu sao cho siêu phẳng này phân loại các
lớp một cách tối ưu nhất. Ở không gian 2 chiều thì siêu phẳng này là 1
đường thẳng phân cách chia mặt phẳng không gian thành 2 phần

Nhóm 3 - Khoa học dữ liệu | 16


tương ứng 2 lớp với mỗi lớp nằm ở 1 phía của đường thẳng.

Tổng quát về SVM


Nếu các điểm dữ liệu thuộc 2 lớp có thể phân cách trực tiếp bằng 1 đường thẳng, SVM sẽ
tìm kiếm siêu phẳng phân cách tốt nhất giữa các lớp. Nếu không thể phân cách bằng 1
đường thẳng, ta có thể sử dụng phương pháp kernels để biến đổi đại số và thêm chiều
không gian mới để phân loại được các điểm dữ liệu. SVM có các tham số cần điều chỉnh
như kernel, regularization, gamma và margin để tối ưu mô hình và đạt được độ chính xác
cao trong việc phân loại dữ liệu. Việc bạn ưu tiên chọn các tham số này sẽ phụ thuộc vào
bài toán của bạn và mức độ quan tâm đến việc phân loại chính xác hoặc tốc độ tính toán.
Các tham số trong SVM

Kernel: Đây là quá trình xây dựng siêu phẳng phân cách trong SVM thông qua các
phép biến đổi đại số. Có 3 loại kernel được sử dụng là linear, polynomial và
exponential. Việc chọn kernel phù hợp sẽ giúp tính toán đường phân cách ở những
chiều không gian cao hơn.
Regularization: Tham số này được gọi là tham số C trong thư viện sklearn và nó
điều chỉnh việc có nên bỏ qua các điểm dữ liệu bất thường trong quá trình tối ưu
mô hình SVM. Nếu tham số này có giá trị lớn, quá trình tối ưu sẽ chọn một siêu
phẳng sao cho siêu phẳng này phân cách tất cả các điểm dữ liệu một cách tốt nhất,
từ đó khoảng cách giữa siêu phẳng tới các điểm dữ liệu của 2 lớp sẽ có giá trị nhỏ
(small-margin). Ngược lại, khi tham số này có giá trị nhỏ, siêu phẳng sẽ được xây
dựng sao cho khoảng cách với các điểm dữ liệu của 2 lớp có giá trị lớn (large-
margin), kể cả khi siêu phẳng này sẽ phân loại sai nhiều điểm dữ liệu hơn.
Gamma: Tham số này xác định việc sử dụng bao nhiêu điểm dữ liệu cho việc xây
dựng siêu phẳng phân cách. Với giá trị gamma nhỏ, các điểm dữ liệu nằm xa
đường phân cách sẽ được sử dụng trong việc tính toán đường phân cách. Ngược lại,
với giá trị gamma lớn, chỉ những điểm nằm gần đường phân cách mới được sử
dụng để tính toán.
Margin: Margin trong SVM là khoảng cách giữa siêu phẳng phân cách và các
điểm dữ liệu gần nó nhất. Khoảng cách này đối với các điểm dữ liệu gần nhất của
cả 2 lớp càng lớn thì mô hình càng phân loại chính xác. Việc có margin tốt hay ko
tốt được xác định bởi khoảng cách giữa siêu phẳng phân cách với các điểm dữ liệu
và cơ cấu của các điểm dữ liệu của 2 lớp.
Ưu điểm: ● Linh hoạt
● Xử lý trên không gian số chiều cao Nhược điểm:
● Tiết kiệm bộ nhớ ● Bài toán số chiều cao

Nhóm 3 - Khoa học dữ liệu | 17


● Chưa thể hiện rõ tính xác suất
2.1.4. Mô hình Neural Network
Giới thiệu
Neural Network là một mô hình tính toán được lấy cảm hứng từ cách
hoạt động của não bộ người và động vật, được thiết kế để tự động học
và cải thiện thông qua các kết nối giữa các "neuron" (đơn vị xử lý)
trong mạng. Mục đích của Neural Network là giúp máy tính có thể tự
động học các mẫu và quy luật từ dữ liệu đầu vào, từ đó có thể phân
loại hoặc dự đoán các kết quả mới.
Cấu tạo mô hình Neural Network
Kiến trúc của một mạng neural đơn giản (Neural Network) có phân loại các thành phần
chính như sau:
● Input (đầu vào): Đây là tập hợp các biến đầu vào được sử dụng để huấn luyện hoặc
dự đoán cho mô hình mạng neuron, thường được biểu diễn dưới dạng vector.
● Output (đầu ra): Đây là kết quả mà mô hình mạng neuron sinh ra sau khi xử lý các
biến đầu vào. Đầu ra có thể là một giá trị số hoặc một vector.
● Layers (tầng): Mạng neuron được tổ chức theo dạng các tầng. Mỗi tầng gồm nhiều
neuron và các neuron trong cùng một tầng thường có cùng số lượng đầu vào và
đầu ra. Các tầng được kết nối với nhau để tạo thành một mạng neuron hoàn chỉnh.
● Hidden layers (tầng ẩn): Đây là các tầng nằm giữa đầu vào và đầu ra của mô hình
mạng neuron. Các tầng ẩn này không được trực tiếp kết nối với đầu vào hoặc đầu

ra, mà thông qua các tầng trung gian khác.

Nhóm 3 - Khoa học dữ liệu | 18


Hình 9. Kiến trúc của một mạng Neural

Lưu ý: Mỗi một Neural Network chỉ có duy nhất 1 Input Layer và 1 Output Layer
nhưng lại có thể có rất nhiều Hidden Layers.
Bắt đầu từ lớp Input, thông tin sẽ được truyền qua các lớp ẩn (Hidden layers) cho
đến lớp Output, và mỗi lớp sẽ tập trung vào việc học các đặc trưng khác nhau của
dữ liệu. Trong quá trình học, mạng neural sẽ được đào tạo bằng cách điều chỉnh
các trọng số kết nối giữa các neural để đạt được kết quả tốt nhất cho bài toán đang
được giải quyết.
Ưu điểm
● Khả năng học tập và tự điều chỉnh: Neural network có khả năng tự động học và
điều chỉnh các trọng số của mạng để giải quyết các vấn đề phức tạp.
● Xử lý thông tin phi cấu trúc: Neural network có khả năng xử lý thông tin phi cấu
trúc như hình ảnh, âm thanh và văn bản.
● Tính linh hoạt: Neural network có thể được áp dụng cho nhiều loại bài toán khác
nhau, từ phân loại đến dự đoán và định giá.
● Độ chính xác cao: Neural network có khả năng xử lý và phân tích dữ liệu với độ
chính xác cao.
● Tốc độ xử lý nhanh: Trong một số trường hợp, neural network có thể xử lý dữ liệu
nhanh hơn so với các kỹ thuật truyền thống.
Nhược điểm
● Đòi hỏi số lượng dữ liệu lớn: Neural network cần một lượng dữ liệu huấn luyện
lớn để có hiệu suất tối ưu.
● Đòi hỏi tài nguyên máy tính cao: Neural network yêu cầu tài nguyên máy tính lớn
để huấn luyện và chạy.
● Độ khó hiểu: Neural network thường là một hệ thống phức tạp và khó hiểu, đặc
biệt khi các mô hình có nhiều lớp.
● Dễ bị overfitting: Neural network có thể bị overfitting khi không được điều chỉnh
cẩn thận.
● Không tin cậy với dữ liệu mới: Neural network có thể không đưa ra kết quả chính
xác với dữ liệu mới nếu nó không được huấn luyện đúng cách hoặc dữ liệu mới có
sự khác biệt lớn so với dữ liệu huấn luyện.

Nhóm 3 - Khoa học dữ liệu | 19


2.2. Quy trình phân lớp dữ liệu
2.2.1. Tiền xử lý dữ liệu
Tiền xử lý dữ liệu là quá trình chuyển đổi dữ liệu thô sang định dạng dễ hiểu. Đây cũng
là một bước quan trọng trong khai thác dữ liệu vì chúng ta không thể làm việc với dữ liệu
thô. Chất lượng của dữ liệu nên được kiểm tra trước khi áp dụng thuật toán học máy hoặc
khai thác dữ liệu.
- Dữ liệu thô/gốc: có thể có cấu trúc hoặc không có cấu trúc; nằm ở nhiều định dạng
khác nhau (tập tin hoặc CSDL)
- Chất lượng dữ liệu (data quality): tính chính xác, tính hiện hành, tính toàn vẹn,

Nhóm 3 - Khoa học dữ liệu | 20


Hình 10. Các kỹ thuật trong tiền xử lý dữ liệu
2.2.2. Phân lớp dữ liệu
Phân lớp dữ liệu là bài toán học có giám sát, chứa biến phục thuộc y (target y) và biến
độc lập x. Tổng quát thì giải bài toán phân lớp nghĩa là quá trình gán nhãn các đối tượng
hay phân các đối tượng vào một hay nhiều lớp cho trước thông qua mô hình phân lớp. Để
xây dựng mô hình này cần một tập dữ liệu đã được gán nhãn trước đó.
Thực hiện bài toán phân lớp gồm hai bước chính:
Bước 1: Giai đoạn “huấn luyện” mô hình
Dữ liệu ban đầu sau khi đã được làm sạch qua bước tiền xử lý dữ liệu sẽ đi vào quá trình
xây dựng mô hình. Những thuật toán phổ biến phân lớp gồm hồi quy logistic, cây quyết

định, SVM, …) và kết quả cho ra cuối cùng là mô hình phân lớp
Hình 11. Xây dựng mô hình huấn luyện
Bước 2: Giai đoạn sử dụng mô hình

Nhóm 3 - Khoa học dữ liệu | 21


Bước 2.1: Đánh giá mô hình (kiểm tra tính đúng đắn)
Sử dụng một tập dữ liệu mẫu khác đã được gán nhãn và tiền xử lý đưa vào mô hình phân
lớp nhưng ta xem như “lờ” đi thuộc tính đã được gán nhãn. Mô hình được đánh giá là tốt
khi cho kết quả tương đồng cao khi so sánh thuộc tính gán nhãn của dữ liệu thực mà bị
“lờ” đi ban đầu với kết quả phân lớp của mô hình.

Hình 12. Mô hình phân lớp dữ liệu


Bước 2.2: Sử dụng 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ả


2.2.3.1. Tổng quan về đánh giá tính hiệu quả
Là các phương pháp nhằm 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.

Nhóm 3 - Khoa học dữ liệu | 22


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).


Hình 13. Minh hoạ 3 trường hợp có thể xảy ra khi đánh giá mô hình
● Underfitting (chưa khớp): là hiện tượng mô hình 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:
○ 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.
● 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).
● 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.

2.2.3.2. Các phương pháp đánh giá hiệu


suất của bài toán phân lớp
★ Ma trận nhầm lẫn - Confusion matrix

Ma trận nhầm lẫn (confusion matrix) sử


dụng các giá trị dự đoán và thực tế để

Nhóm 3 - Khoa học dữ liệu | 23


tính toán số lượng các điểm dữ liệu được phân loại đúng hoặc sai.
Ma trận nhầm lẫn có cấu trúc 2x2 hoặc nxn (với n là số lớp cần phân loại).
Hình 14. Confusion Matrix
Ma trận nhầm lẫn bao gồm:
- TP (True Positive): Số lượng điểm dữ liệu được dự đoán đúng trong số
các điểm dữ liệu thuộc lớp dương (positive class).
- TN (True Negative): Số lượng điểm dữ liệu được dự đoán đúng trong số
các điểm dữ liệu thuộc lớp âm (negative class)
- FP (False Positive): Số lượng điểm dữ liệu được dự đoán sai trong số các
điểm dữ liệu thuộc lớp âm (negative class).
- FN (False Negative): Số lượng điểm dữ liệu được dự đoán sai trong số các
điểm dữ liệu thuộc lớp dương (positive class).
Ngoài ra ta còn phải quan tâm đến một số khái niệm sau:
Precision(độ chính xác): Được định nghĩa là tỉ lệ số điểm True positive trong số
những điểm được phân loại là positive
��
��������� =
(�� + ��)
Recall (độ phủ): Còn gọi là độ phủ hay độ nhạy (sensitivity) hay TPR (True
Positive Rate)
��
������ =
(�� + ��)
F1-score: Giá trị trung bình điều hòa (harmonic mean) của hai độ đo Precision và
Recall
(��������� � ������)
�� = 2
(��������� + ������)

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.

Nhóm 3 - Khoa học dữ liệu | 24


★ ROC và AUC analysis

Hình 15. Đường cong ROC


ROC (Receiver Operating Characteristic): là một biểu đồ phổ biến cho việc
đánh giá hiệu suất của các mô hình phân loại nhị phân. Đường cong ROC được tạo
ra bằng cách biểu diễn TPR (true positive rate) và FPR (false positive rate) ở nhiều
ngưỡng khác nhau, với TPR được đặt trên trục tung và FPR được đặt trên trục
hoành. Một mô hình phân loại hiệu quả sẽ có giá trị FPR thấp và TPR cao, theo đó
đường cong ROC của mô hình sẽ tiến gần đến điểm (0,1) trong đồ thị.

AUC (Area Under the Curve): là diện tích nằm dưới đường cong ROC, được sử
dụng để đánh giá hiệu suất của một mô hình phân loại nhị phân. Giá trị AUC là
một con số dương có giá trị từ 0 đến 1, và giá trị càng gần 1 thì mô hình càng tốt.
Để tính toán giá trị AUC, ta tính toán diện tích nằm giữa đường cong ROC và trục
hoành, sau đó chuẩn hóa về khoảng [0,1]. Giá trị AUC cho biết khả năng của mô
hình phân loại trong việc phân biệt giữa nhãn positive và negative, và đồng thời
cũng cho biết tỉ lệ giữa TPR và FPR của mô hình.

Nhóm 3 - Khoa học dữ liệu | 25


Nhóm 3 - Khoa học dữ liệu | 26
CHƯƠNG 3.
QUY TRÌNH THỰC HIỆN & CÁC KẾT QUẢ THỰC NGHIỆM

3.1. Bộ dữ liệu
3.1.1. Mô tả dữ liệu
Bộ dữ liệu được lấy từ trang Web Kaggle: E-Commerce Shipping Data | KAGGLE
Bộ dữ liệu có 10999 dòng, gồm 12 biến và 1 biến mục tiêu:

STT THUỘC TÍNH Ý NGHĨA KIỂU DỮ LIỆU ROLE


1 ID Mã khách hàng Số Thực SKIP

Công ty có một kho lớn được chia thành


2 Warehouse block Chuỗi FEATURE
các khối như A, B, C, D, F.

Công ty vận chuyển sản phẩm theo nhiều


3 Mode of shipment cách khác nhau như tàu, máy bay và Chuỗi FEATURE
đường bộ.

Số lần gọi điện thoại từ khách hàng để hỏi


4 Customer care calls Số Nguyên FEATURE
thông tin về vận chuyển

5 Customer rating Đánh giá của khách hàng Số Nguyên FEATURE

6 Cost of the product Giá sản phẩm tính bằng đô la Mỹ ($) Số Nguyên FEATURE

7 Prior purchases Số lần mua hàng trước đó Số Nguyên FEATURE

Công ty đã phân loại sản phẩm theo các


8 Product importance mức độ quan trọng khác nhau như thấp, Chuỗi FEATURE
trung bình, cao

9 Gender Giới tính: Nam và Nữ Chuỗi FEATURE


10 Discount offered Chương trình giảm giá Số Nguyên FEATURE

11 Weight in gms Trọng lượng sản phẩm (Gram) Số Nguyên FEATURE

Đây là biến mục tiêu, trong đó 1 cho biết


12 Reached on time sản phẩm đến đúng giờ và 0 cho biết sản Chuỗi TARGET
phẩm KHÔNG đúng giờ.

Nhóm 3 - Khoa học dữ liệu | 27


Bảng 1. Mô tả dữ liệu các biến có trong dataset

Một công ty thương mại điện tử quốc tế muốn khám phá những thông tin quan trọng từ
cơ sở dữ liệu khách hàng của họ. Lĩnh vực chính của công ty này là kinh doanh về các
mặt hàng sản phẩm công nghệ điện tử. Họ muốn sử dụng một số kỹ thuật về phân tích để
nghiên cứu về khách hàng của mình.

3.1.2. Tiền xử lý dữ liệu


Bước 1: Xác định biến phụ thuộc và biến độc lập
+ Biến phụ thuộc: Reached.on.Time_Y.N (Đúng giờ hay không?)
+ Biến độc lập: các thuộc tính còn lại của bộ dữ liệu
Bước 2: Trong quá trình lựa chọn bộ dữ liệu để thực hiện đề tài, nhóm đã chọn lọc và lựa
chọn bộ dữ liệu nên không xảy ra tình trạng thiếu sót dữ liệu. Bộ dữ liệu có 10999 dòng
và 12 thuộc tính. Tuy nhiên ở biến mục tiêu “Reached.on.Time_Y.N” , nhóm chúng em
xin phép đổi ngược lại là 0 là đơn hàng giao trễ hẹn và 1 là đơn hàng giao đúng hẹn
theo đúng quy chuẩn chung.
Bước 3: Tuy nhiên để tránh những dữ liệu bị nhiễu nhóm tiến hành sử dụng Outliers
Widget để giúp phát hiện và loại bỏ các giá trị ngoại lai.
Sau đó, bộ dữ liệu còn 10020 dòng và đã phù hợp để thực hiện phân tích nên nhóm sẽ
không rút gọn dữ liệu nữa.

Nhóm 3 - Khoa học dữ liệu | 28


Hình 16. Mẫu dữ liệu gốc đã qua xử lý
Bước 3: Nhóm loại ra cột thuộc tính không cần thiết cho đề tài nghiên cứu là ID (Mã
khách hàng) vì đây là dữ liệu không ảnh hưởng đến việc giao hàng đúng hay trễ hẹn.
Bước 4: Phân tách dữ liệu (để thực hiện dự báo): Từ file dữ liệu gốc, nhóm sử dụng công
cụ Data Sampler để tách dữ liệu thành 2 file riêng lẻ như sau. File 75% (được lưu với tên
là “EShipping Training 75%”) để làm dữ liệu mẫu huấn luyện mô hình phân lớp dữ liệu
và 25% (được lưu với tên là “EShipping Forecasting 25%”) còn lại để làm dữ liệu dự báo
cho nghiên cứu. Sau đó lưu lại thành 2 File mới
+ EShipping Training.xlsx: gồm 75% dữ liệu từ dữ liệu gốc

+ EShipping Forecasting.xlsx: 25% còn lại của dữ liệu gốc để làm dữ liệu dự báo

Nhóm 3 - Khoa học dữ liệu | 29


Hình 17. Quy trình tiền xử lý dữ liệu và phân tách thành dữ liệu Train và Forecast
3.2. Thực nghiệm và kết quả
3.2.1. Bài toán 1: Phát hiện các đặc điểm đặc thù liên quan đến sự thành công
và thất bại của quy trình giao hàng dựa vào lược đồ và các công cụ thống kê
● WAREHOUSE BLOCK (KHO CHỨA)

Hình 18. Biểu đồ phân bố đơn hàng tại các kho chứa khác nhau

Qua biểu đồ trên ta có thể thấy rằng, tỉ lệ đơn hàng trễ hạn và đơn hàng đúng hạn của các
kho là tương đương nhau và không có sự khác biệt. Chính vì vậy có thể nhận thấy, việc
phân bố đơn hàng tại các kho chứa khác nhau không ảnh hưởng quá nhiều vào thời gian
giao hàng đến tay người tiêu dùng.

Tuy nhiên có một điểm đáng chú ý đó chính là lượng hàng được phân bố tại kho chứa F.
Qua biểu đồ trên ta có thể thấy rằng lượng hàng được phân bố tại kho chứa F xấp xỉ gấp 2
lần lượng hàng tại các kho chứa khác, đồng thời số lượng đơn hàng trễ hẹn tại kho chứa
này cao vượt trội so với những kho còn lại (2194 đơn). Điều này có thể dẫn đến tình trạng
quá tải của kho chứa: kho chứa quá tải, các sản phẩm sẽ được xếp chồng lên nhau hoặc

Nhóm 3 - Khoa học dữ liệu | 30


đặt ở những vị trí khó tìm kiếm. Điều này có thể dẫn đến việc tìm kiếm sản phẩm chậm
và giao hàng muộn.
● MODE OF SHIPMENT (PHƯƠNG THỨC VẬN CHUYỂN)

Hình 19. Biểu đồ phân bố các đơn hàng theo phương thức vận chuyển

Qua biểu đồ trên ta có thể nhận thấy rằng, công ty sử dụng hình thức giao bằng đường
thủy nhiều nhất. Số đơn hàng giao trễ bằng hình thức này cũng nhiều nhất, đường thủy có
tổng cộng 4459 đơn hàng giao trễ so với tổng đơn hàng giao trễ ở cả 3 phương tiện giao
là 6863. Vì vậy, các đơn hàng giao trễ có xác suất tới 65% sẽ xuất hiện ở hình thức giao
đường thủy. Thêm vào đó, tất cả các phương thức vận chuyển đều có tỉ lệ đơn hàng trễ
hạn cao ở mức 58% - 60%. Chính vì vậy, sự phân bố đơn hàng cho các phương thức vận
chuyển khác nhau cũng không ảnh hưởng nhiều đến tính đúng hạn và trễ hạn của đơn
hàng. Tuy nhiên, việc tỉ lệ đơn hàng trễ hạn cao ở tại cả 3 phương thức có thể đến từ các
nguyên nhân sau:
+ Công ty có khả năng cao là giao hàng ở những nơi xa so với kho chứa (nên mới
giao hàng bằng đường thủy). Vì vậy nên mới có nhiều đơn trễ như vậy.
+ Hình thức giao đường thủy của công ty được sử dụng nhiều nhất. Như vậy cũng
chịu áp lực nhiều và phát sinh đơn trễ nhiều như vậy. Chính vì vậy, công ty nên

Nhóm 3 - Khoa học dữ liệu | 31


phát triển ở 2 hình thức giao khác, đặc biệt là hàng không để vận chuyển đơn hàng
xa để giải quyết vấn đề trễ đơn.
+ Ngoài ra, có thể có 1 số lý do khách quan khác như: thời tiết xấu, mất hàng, thủ
tục hải quan rườm rà,...

● CUSTOMER CARE CALL (CHĂM SÓC KHÁCH HÀNG TRỰC TUYẾN)

Hình 20. Biểu đồ cuộc gọi chăm sóc khách hàng trực tuyến

Qua biểu đồ trên ta có thể thấy được rằng, những đơn hàng được chăm sóc trực tuyến từ
6 đến 7 cuộc sẽ có tỉ lệ trễ hẹn thấp hơn rất nhiều so với các đơn hàng được hỗ trợ và
chăm sóc với tần suất ít hơn (2,3, 4 và 5). Từ 2-5 cuộc gọi, tỉ lệ giao hàng trễ đều chiếm
60-65%, trong khi đó nếu khách hàng gọi từ 6-7 cuộc gọi, tỉ lệ này chỉ còn 50%. Ngoài ra,
có rất ít khách hàng gọi 2 lần và thậm chí không có ai gọi 1 lần hoặc không gọi. Từ đây,
thấy được rằng dịch vụ giao hàng của công ty thật sự không ổn. Khách hàng có xu hướng
gọi nhiều. Và công ty chỉ giao đúng hạn hơn, nếu khách hàng chủ động gọi rất nhiều và
nhắc nhở.

Nhóm 3 - Khoa học dữ liệu | 32


● COST (GIÁ TRỊ ĐƠN HÀNG)

Hình 21. Biểu đồ thể hiện giá trị đơn hàng

Các đơn hàng giá rẻ từ 100-130$, tỉ lệ đơn trễ chiếm vượt trội lên tới 100% và giảm dần
đến mức giá trung bình từ hơn 130$-275$, tỉ lệ trễ đơn chỉ còn khoảng từ 60%-68%. Cuối
cùng, đối với các đơn hàng cao cấp, có mức giá cao từ 280$ đến hơn 300$, tỷ lệ này chỉ
còn 50%. Thậm chí, có thể thấy rằng mức giá từ 300-305$, số đơn hàng giao đúng hạn
còn vượt qua số đơn hàng giao trễ. Từ đây ta có thể thấy, mặc dù phần lớn đơn hàng
khách đặt ở mức giá tầm trung (130-275$) thì tỉ lệ giữa đơn giao trễ và đúng hạn sẽ gần
ngang nhau. Nhưng, công ty có khuynh hướng tập trung giao những đơn hàng mắc tiền
hơn để thu lại doanh thu lớn hơn. Và sẽ không để tâm tới giao những đơn hàng chi phí
thấp dẫn đến kết quả là luôn giao trễ.

Nhóm 3 - Khoa học dữ liệu | 33


● PRIOR PURCHASES (SỐ LẦN MUA HÀNG TRƯỚC ĐÓ)

Hình 22. Biểu đồ phân bố đơn hàng dựa trên số lần mua hàng trước đó của khách hàng

Qua biểu đồ trên ta có thể thấy được rằng, công ty không có lượng khách hàng mối
(khách quen) ổn định. Số lượng đơn hàng sử dụng dịch vụ từ 6 lần trở lên là rất ít. Điều
này cũng bắt nguồn một phần từ việc ở những đơn hàng đầu tiên, tỷ lệ lượng đơn trễ hẹn
là rất cao, chiếm từ 55%-60%. Chính vì vậy công ty cần có sự cải thiện ở cả mặt sản
phẩm lẫn khâu giao hàng để có được lượng khách hàng quen thuộc nhất định.

Nhóm 3 - Khoa học dữ liệu | 34


● CUSTOMER RATING (ĐÁNH GIÁ CỦA KHÁCH HÀNG VỀ CÔNG TY)

Hình 23. Biểu đồ đánh giá của khách hàng về công ty

Từ biểu đồ trên, ta có thể thấy, tỷ lệ đơn hàng giao đúng hạn và trễ hạn ở các mức đánh
giả của khách hàng là gần như ngang nhau. Do đó, biến customer_rating sẽ không mang
tính dự báo cao.
⇒ Không sử dụng biến customer rating để cho bài toán phân lớp

Nhóm 3 - Khoa học dữ liệu | 35


● PRODUCT IMPORTANCE (MỨC ĐỘ QUAN TRỌNG CỦA SẢN PHẨM)

Hình 24. Biểu đồ phân bố đơn hàng theo mức độ quan trọng của sản phẩm

Dựa trên thống kê trên, ta có thể tính toán tỷ lệ phần trăm của các trường hợp được giao
đúng hạn và không đúng hạn trong tổng số đơn hàng theo mức độ quan trọng của sản
phẩm như sau:
- Tỷ lệ đơn hàng đúng hạn cho sản phẩm mức độ quan trọng Thấp: 40.9%
- Tỷ lệ đơn hàng đúng hạn cho sản phẩm mức độ quan trọng Trung bình: 41.0%
- Tỷ lệ đơn hàng đúng hạn cho sản phẩm mức độ quan trọng Cao: 35.0%
Tỷ lệ đơn hàng được giao đúng hạn cho sản phẩm Mức độ quan trọng Thấp và Trung
bình là tương đối gần nhau, khoảng 40.9% và 41.0%. Trong khi đó, tỷ lệ đơn hàng được
giao đúng hạn cho sản phẩm mức độ quan trọng Cao thấp hơn nhiều, chỉ chiếm khoảng
35.0%. Và nó có thể đến từ nguyên nhân như: đơn hàng mức độ quan trọng Cao cần phải
được chăm sóc đặc biệt khi giao hàng, vì vậy công ty có thể không ưu tiên vận chuyển
hoặc nếu vận chuyển thì cũng cần phải giám sát đơn hàng kỹ hơn nên dẫn tới giao trễ.
Điều này cho thấy rằng công ty cần có sự cải thiện trong quá trình giao hàng đối với sản

Nhóm 3 - Khoa học dữ liệu | 36


phẩm quan trọng hơn để đảm bảo chất lượng dịch vụ và tăng sự hài lòng của khách hàng.
Đặc biệt là cải thiện đối với đơn hàng mức độ quan trọng cao, tỉ lệ giao hàng đúng hạn
còn thấp hơn so với các mức độ khác.

● GENDER (GIỚI TÍNH KHÁCH HÀNG)

Hình 25. Biểu đồ phân bố đơn hàng theo giới tính khách hàng

Dựa trên biểu đồ ta thấy được, không có sự khác biệt đáng kể giữa tỷ lệ đơn hàng được
giao đúng hạn giữa nam và nữ. Cả hai giới đều có tỷ lệ giao hàng đúng hạn và không
đúng hạn tương đối gần nhau.
Tuy nhiên, vẫn còn một phần đáng lo ngại là tỷ lệ đơn hàng không được giao đúng hạn
của cả hai giới tính đều khá cao. Do đó, công ty nên cân nhắc và đưa ra các giải pháp để
cải thiện chất lượng dịch vụ giao hàng sao cho tốt hơn, nâng cao sự hài lòng của khách
hàng và tăng doanh số bán hàng.

⇒ Không sử dụng biến giới tính để cho bài toán phân lớp

Nhóm 3 - Khoa học dữ liệu | 37


● DISCOUNT OFFERED (KHUYẾN MÃI)

Hình 26. Biểu đồ phân bố đơn hàng được áp dụng khuyến mãi

Từ kết quả trên, ta có thể thấy được rằng:


+ Giá trị khuyến mãi áp dụng cho các đơn hàng giao trễ hẹn là nhiều hơn hẳn so với
các đơn hàng giao đúng hẹn. Toàn bộ các đơn hàng giao đúng hẹn đều có giá trị
khuyến mãi áp dụng dao động từ 1-10$. Trong khi đó, nhiều đơn hàng giao trễ hẹn
cũng có mức khuyến mãi tập trung phần lớn từ 1-10$, tuy nhiên toàn bộ các đơn
hàng khuyến mãi từ 10-60$ đều giao trễ hẹn. Đây có thể đến từ nguyên nhân công
ty ưu tiên việc giao hàng cho các đơn ít khuyến mãi hơn để có thể nâng cao doanh

Nhóm 3 - Khoa học dữ liệu | 38


số và lợi nhuận bởi vì toàn bộ các đơn giao đúng hẹn đều nằm trong khoảng
khuyến mãi ít.

● WEIGHT IN GMS (KHỐI LƯỢNG)

Hình 27. Biểu đồ phân bố đơn hàng theo khối lượng sản phẩm
Nhận thấy rằng
+ Trong nhóm đơn hàng nhẹ (1-2kg), có 67%-70% đơn hàng giao trễ hẹn.
+ Toàn bộ đơn hàng nằm trong nhóm có khối lượng trung bình (2-4kg), 100% giao
trễ hẹn.
+ Tuy nhiên, những đơn từ 4-6kg thì đơn hàng giao đúng hạn chiếm khoảng 60%, số
lượng đơn giao trễ không nhiều bằng.
+ Những đơn hàng 6-8kg chiếm số lượng rất ít chỉ 11 đơn.
Từ kết quả phân tích, ta có thể quan sát thấy 2 vấn đề: số lượng các đơn hàng bị trễ xấp xỉ
bằng số lượng các đơn hàng giao đúng hẹn và khối lượng các đơn hàng giao trễ hẹn phân
phối đều hơn khối lượng của các đơn đúng hẹn. Đây có thể đến từ nguyên nhân:

Nhóm 3 - Khoa học dữ liệu | 39


+ Hệ thống giao hàng của công ty chưa tốt nên dẫn đến hậu quả nhiều đơn bị trễ như
vậy.
+ Do công ty đã làm chủ được quy trình giao hàng, bảo quản và quản lý phương tiện
giao các sản phẩm có khối lượng nhỏ(1-2kg) và lớn (4-6kg) chứ không phải các
sản phẩm có khối lượng vừa phải (2-4kg).
+ Các đơn hàng có khối lượng lớn (4-6kg) được ưu tiên giao nhiều hơn các đơn
hàng nhỏ (1kg-2kg), đây có thể đến từ việc ưu tiên của công ty do thông thường,
đơn hàng lớn thì lợi nhuận sản phẩm và giao hàng sẽ cao hơn. Hoặc, quy trình
giao hàng của công ty phục vụ được cho việc giao hàng lớn nhiều hơn, ví dụ như:
xe tải lớn,..
+ Trong nhóm giao trễ hẹn thì sản phẩm nhỏ chiếm nhiều nhất, đây có thể là mảng
còn yếu của công ty và cần cải thiện trong quá trình giao hàng. Và thêm vào đó,
các sản phẩm có khối lượng vừa phải từ 2-4kg toàn được giao trễ, vì vậy công ty
cần phải xem xét cải thiện chất lượng giao hàng ở các sản phẩm này.

*** KẾT LUẬN:


ĐẶC ĐIỂM CHUNG CỦA NHỮNG ĐƠN HÀNG GIAO TRỄ HẸN
- Tất cả các kho đều có số lượng đơn hàng trễ nhiều tương đương nhau. Vì vậy,
việc quản lý ở các kho đều cần cải thiện đồng đều để công ty có thể giao hàng
nhanh hơn.
- 65% sẽ xuất hiện ở hình thức giao hàng đường thuỷ (do công ty tập trung chủ
yếu ở hình thức này). Đường bộ và đường hàng không chưa được công ty tận dụng
và phát triển, nên thử nghiệm phát triển nhằm cải thiện tình trạng đơn giao trễ.
- Khách hàng không tin tưởng dịch vụ giao hàng công ty nên gọi để nhắc nhở nhiều
(đều 2 cuộc trở lên). Khách hàng chỉ được giao đúng hẹn nhiều hơn nếu chủ động
gọi nhắc nhiều (6-7 cuộc). Những khách hàng chỉ gọi điện và nhắc nhở không
quá nhiều (2,3,4 cuộc) sẽ có tỉ lệ nhận đơn trễ nhiều hơn.
- Khách hàng đặt hàng giá rẻ (100-120$), xác suất nhận trễ là 100%, đơn hàng
trung bình (140-275$) có xác nhận trễ 60%-68% và đặt hàng giá càng cao (280-
300$) thì tỉ lệ trễ càng thấp khoảng 50%.
- Đơn hàng trễ xuất hiện nhiều ở khách hàng vãng lai (đặt từ 2,3,4 đơn trước
đó). Công ty không có nhiều khách quen, có thể đến từ nguyên nhân chất lượng
sản phẩm hoặc cũng có thể dịch vụ giao hàng của công ty còn làm trễ nhiều đơn.
- Đơn hàng trễ xuất hiện nhiều ở mức độ quan trọng thấp và trung bình do phần lớn
đơn hàng nằm ở 2 mức độ quan trọng này. Tuy nhiên, nếu đặt đơn hàng có mức
độ quan trọng Cao thì khách hàng dễ nhận đơn trễ hơn (65% so với 60% của
2 mức độ trên).
- Đơn hàng đặt có nhiều khuyến mãi (10-60$) chắc chắn sẽ trễ (100%). Đặt
hàng có khuyến mãi thấp 0-10$ thì tỉ lệ trễ sẽ khoảng 50%.

Nhóm 3 - Khoa học dữ liệu | 40


- Đặt hàng khối lượng nhẹ thì tỉ lệ trễ hàng cao. Cụ thể là: đơn hàng có khối
lượng nhẹ (1-2kg) thì tỉ lệ trễ hàng chiếm 67%-70%, đơn hàng có khối lượng trung
bình sẽ chắc chắn trễ. Công ty ưu tiên giao đơn hàng khối lượng nặng (4-6kg) nên
tỉ lệ đơn hàng giao trễ ở mức này chỉ còn trong 43.1%
3.2.2. Bài toán 2: Bài toán phân lớp - Dự đoán rủi ro giao hàng đúng hạn hay
trễ hạn của công ty bán hàng điện tử.
*** Quy trình
Bước 1: Sau khi đã tiền xử lý dữ liệu, chọn File “EShipping Training” vào phần mềm
Orange, chọn cột “Reached.on.Time_Y.N" làm target.
Bước 2: Nối file “EShipping Training” với Test and Score và dùng 3 phương pháp
Tree, SVM, Logistic Regression. Trong đó Test and Score nối với Confusion Matrix và
ROC Analysis để thực hiện đánh giá độ mức độ giao hàng có đúng hạn hay không.
Bước 4: Chọn File “EShipping Forecasting”, sau đó nối với Prediction (sử dụng
Remaining Data). Lựa chọn phương pháp tốt nhất ở trên với Prediction (ở đây là phương
pháp Hồi quy Logicstic)
Bước 5: Xem kết quả dự báo qua Data Table (Predicted)

Nhóm 3 - Khoa học dữ liệu | 41


Hình 28. Mô hình Orange xử lý dữ liệu và lựa chọn phương pháp dự báo

Nhóm 3 - Khoa học dữ liệu | 42


3.3. Phân Tích và Đánh Giá

3.3.1. Phân tích dựa trên Test and Score


Hình 29. Kết quả Test&Score đối với target 0 (giao trễ hẹn)

Nhóm 3 - Khoa học dữ liệu | 43


Hình 30. Kết quả Test&Score đối với average over classes

● Đối với target 0:


Xét dựa trên chỉ số AUC: ta thấy rằng mô hình Tree là 0.634, mô hình SVM là 0.658 và
mô hình Logistic Regression là 0.715.
Xét dựa trên chỉ số CA: ta thấy rằng mô hình Tree là 0.648, mô hình SVM là 0.607 và
mô hình Logistic Regression là 0.650.
Xét dựa trên chỉ số F1: ta thấy rằng mô hình Tree là 0.705, mô hình SVM là 0.644 và
mô hình Logistic Regression là 0.638.
Xét dựa trên chỉ số Precision: ta thấy rằng mô hình Tree là 0.703, mô hình SVM là 0.699
và mô hình Logistic Regression là 0.829.

Xét trên chỉ số Recall: ta thấy rằng mô hình Tree là 0.708, mô hình SVM là 0.597 và mô
hình Logistic Regression là 0.519.

Nhóm 3 - Khoa học dữ liệu | 44


⇒ Từ đó ta có thể thấy mô hình Logistic Regression có chỉ số AUC , CA và Precision
cao nhất, tuy nhiên mô hình Tree lại có chỉ số F1 và Recall cao nhất. Như vậy ta có thể
kết luận được rằng mô hình Logistic Regression là hiệu quả nhất.
● Đối với average over classes:
Xét dựa trên chỉ số AUC: ta thấy rằng mô hình Tree là 0.634, mô hình SVM là 0.657 và
mô hình Logistic Regression là 0.715.
Xét dựa trên chỉ số CA: ta thấy rằng mô hình Tree là 0.648, mô hình SVM là 0.607 và
mô hình Logistic Regression là 0.650.
Xét dựa trên chỉ số F1: ta thấy rằng mô hình Tree là 0.648, mô hình SVM là 0.611 và
mô hình Logistic Regression là 0.647.
Xét dựa trên chỉ số Precision: ta thấy rằng mô hình Tree là 0.648, mô hình SVM là 0.623
và mô hình Logistic Regression là 0.713.
Xét trên chỉ số Recall: ta thấy rằng mô hình Tree là 0.648, mô hình SVM là 0.507 và mô
hình Logistic Regression là 0.650.
⇒ Từ đó ta có thể thấy mô hình Logistic Regression có ⅘ chỉ số cao nhất.
Vậy ta có thể thấy rằng mô hình Logistic Regression hiệu quả nhất.

3.3.2. Phân tích dựa trên ma trận nhầm lẫn (Confusion Matrix)

Nhóm 3 - Khoa học dữ liệu | 45


Hình 31. Ma trận nhầm lẫn với phương pháp Logistic Regression
Mô hình dự đoán Giao đúng hạn nhưng thực tế giao đúng hạn có 84,2% và thực tế trễ hạn
là 48,1%
Mô hình dự đoán Giao trễ hạn nhưng thực tế giao đúng hạn có 15,8% và thực tế giao trễ
hạn là 51,9%

Hình 32. Ma trận nhầm lẫn với phương pháp Tree


Mô hình dự đoán Giao đúng hạn nhưng thực tế giao đúng hạn có 56% và thực tế trễ hạn
là 29,2%
Mô hình dự đoán Giao trễ hạn nhưng thực tế giao đúng hạn có 44% và thực tế giao trễ
hạn là 70,8%

Nhóm 3 - Khoa học dữ liệu | 46


Hình 33. Ma trận nhầm lẫn với phương pháp SVM
Mô hình dự đoán Giao đúng hạn nhưng thực tế giao đúng hạn có 62,2% và thực tế trễ hạn
là 40,3%
Mô hình dự đoán Giao trễ hạn nhưng thực tế giao đúng hạn có 37,8% và thực tế giao trễ
hạn là 59,7 %
Dựa vào ma trận nhầm lẫn:
- Sai lầm loại 1 là dự đoán giao trễ hạn nhưng thực tế là giao đúng hạn. Điều này
khiến công ty cần cẩn trọng trong việc xem xét kỹ hơn các yếu tố như: hình thức
giao hàng, khối lượng đơn hàng, số lượng cuộc gọi từ khách hàng,... Để công ty có
thể tìm ra nguyên nhân chính xác là gì và đưa ra các phương án khắc phục.
- Sai lầm loại 2 là dự đoán giao đúng hạn nhưng thực tế giao trễ hạn. Điều này là vô
cùng nghiêm trọng vì nó khiến công ty lầm tưởng rằng trong hầu hết các đơn hàng
không có sai sót. Vì thế họ sẽ ít quan tâm và không giám sát chặt chẽ thời gian
giao hàng dẫn đến việc nhiều đơn hàng bị giao trễ ngày càng nhiều. Khách hàng sẽ
cảm thấy bất mãn không muốn hợp tác và công ty sẽ bị giảm doanh thu.

⇒ Như vậy, sai lầm loại 2 gây ra hậu quả nghiêm trọng hơn so với sai
lầm loại 1.

Đối với sai lầm loại 2, ta thấy mô hình Tree cho kết quả sai lầm nhỏ hơn so với 2 mô
hình còn lại. Còn xét trên sai lầm loại 1, mô hình Logistic Regression cho kết quả nhỏ
nhất trong 3 mô hình. Tuy nhiên nếu xét số tổng sai lầm của 2 loại, mô hình Logistic
Regression và mô hình Tree cho ra kết quả xấp xỉ bằng nhau.
⇒ Theo kết quả đánh giá thì mô hình Logistic Regression và mô hình Tree có hiệu quả
như nhau.

3.3.3. Phân tích dựa trên ROC Analysis


Quan sát kết quả AUC từ widget Test&Score, ta có thể thấy Logistics Regression có khả
năng dự báo cao nhất khi kết quả AUC là cao nhất.

Nhóm 3 - Khoa học dữ liệu | 47


Hình 34. Đồ thị biểu diễn đường cong ROC với giá trị biến Target là 0
Từ kết quả trên, kết hợp với kết quả từ widget ROC Analysis, rõ ràng ở đồ thị ROC theo
giá trị biến Target 0, đường cong của Logistics Regression tiếp cận gần điểm 1 trên trục
tung nhiều nhất, hay nói cách khác, đường cong ROC của Logistics Regression có giá trị
TP Rate cao nhất.

3.3.4. Lựa chọn mô hình


Dựa trên những kết quả thu được và sự phân tích, ta thấy sử dụng mô hình Logistics
Regression cho việc dự đoán bộ dữ liệu “E-commerce Shipping Data” là chính xác nhất.

Nhóm 3 - Khoa học dữ liệu | 48


Hình 35. Dự đoán bộ dữ liệu “E-commerce Shipping Data” bằng Logistic Regression

Nhóm 3 - Khoa học dữ liệu | 49


CHƯƠNG 4. KẾT LUẬN

4.1. Các Kết Quả Đạt Được


Ngành nghề thương mại điện tử đang rất phát triển nên song song với đó đề tài “Phân
tích dữ liệu lô hàng được giao đúng hạn hay không dựa trên bộ dữ liệu E-
Commerce Shipping Data bằng phần mềm Orange” cũng cần được chú trọng quan
tâm bởi đây là một yếu tố quan trọng trong thành công của các hoạt động kinh doanh của
Công ty.
Ngay từ ban đầu nhóm chúng em đã đề ra 2 mục tiêu chính là Phát hiện điểm đặc thù
của dữ liệu và lập ra mô hình dự báo các đơn hàng giao trễ hẹn dựa trên đặc điểm
của dữ liệu. Sau khi xử lý bộ dữ liệu còn 10020 mẫu, chúng em cơ bản đã hoàn thành
mục tiêu cụ thể như sau:
● Xác định được các yếu tố quan trọng ảnh hưởng đến quyết định giao hàng của
công ty và những đơn hàng giao trễ thường sẽ có những đặc điểm chung như sau:
là đơn hàng của những khách hàng vãng lai, đơn hàng giá rẻ, áp dụng khuyến mãi
cao, khối lượng nhẹ và mức độ quan trọng tầm thấp/ trung bình. Ngoài ra ta có
thể thấy công ty cần cải thiện quản lý kho để giao hàng nhanh hơn. Hình thức
giao hàng đường thuỷ chiếm rất cao, đường bộ và đường hàng không cần được
phát triển.
● Dự đoán rủi ro giao hàng đúng hạn hay trễ hạn của công ty bán hàng điện tử thông
qua bài toán phân lớp. Và chúng em cũng đã lựa chọn được mô hình để dự đoán
bộ dữ liệu chính xác nhất là Logistic Regression.
Thông qua dự án của nhóm, chúng em hi vọng mô hình này có thể giúp ích cho công ty
bán hàng điện tử trong việc phân tích và cải thiện dịch vụ giao hàng hiện tại để có thể làm
hài lòng khách hàng hơn, từ đó nâng cao độ tin cậy trong mắt người mua hàng. Đồng thời
làm gia tăng tính cạnh tranh của doanh nghiệp trong thị trường liên tục biến đổi với các
đối thủ mạnh, nếu công ty có dịch vụ giao hàng tốt hơn so với đối thủ, khách hàng sẽ lựa
chọn mua hàng từ công ty. Điều này lại ảnh hưởng tích cực đến việc giữ chân khách hàng,
thu hút khách hàng và tăng doanh số bán hàng.

4.2. Những Hạn Chế và Hướng Phát Triển


Hạn chế và khó khăn trong quá trình thực hiện dự án:
● Tính chính xác của dữ liệu chưa được kiểm chứng: Các dữ liệu được thu thập có
thể không chính xác hoàn toàn từ đó gây sai lệch trong quá trình thực hiện bài toán
phân lớp.

Nhóm 3 - Khoa học dữ liệu | 50


● Khả năng dự báo chính xác của các mô hình được sử dụng trong bài vẫn chưa quá
tốt mặc dù nhóm đã tiền xử lý lại dữ liệu và kiểm tra tính tương quan giữa các biến
độc lập. Nguyên nhân có thể đến từ:
+ Dataset chưa có dữ liệu đủ lớn để mô hình có thể dự báo tốt hơn.
+ Không đủ các biến độc lập để có thể mô tả biến phụ thuộc một cách chính
xác.
+ 3 loại mô hình được giảng dạy, nhóm đã áp dụng vào bài nhưng có thể đây
vẫn chưa phải là mô hình tốt nhất để dự báo.

● Lựa chọn mô hình phân lớp hiệu quả nhất gặp vấn đề: trước khi đưa ra lựa chọn
mô hình cuối cùng để dự đoán chính xác nhất bộ dữ liệu, chúng em phải phân tích
và đánh giá dựa trên 3 công cụ và cho ra những kết quả không đồng nhất.
○ Test and Score: Mô hình Logistic Regression hiệu quả nhất.
○ Confusion Matrix: Mô hình Decision Tree hiệu quả nhất.
○ ROC analysis: Mô hình Logistic Regression hiệu quả nhất.
⇒ Gây khó khăn trong việc đưa ra quyết định.
● Trong biến Target có 2 class là 0 và 1, dữ liệu chênh lệch lên đến 20%. Khi kiểm
tra các chỉ số trong Test and Score, cần phải cẩn thận hơn bằng cách thêm bước
tách nhãn dữ liệu. Kết quả dự báo trong bài của 2 nhãn gần tương đương nhau và
chúng đều xấp xỉ giá trị trung bình.
● Không thể hoàn toàn đảm bảo chính xác của kết quả: dù sử dụng Orange để phân
tích khả năng trễ hẹn của các đơn hàng là một công cụ tiên tiến, nhưng không thể
đảm bảo chính xác tuyệt đối.

Hướng phát triển của dự án:


● Mở rộng thuộc tính: thêm vào dự án các yếu tố có thể ảnh hưởng đến quy trình
giao hàng của công ty (ví dụ: địa chỉ, hình thức thanh toán…) để có thể phân tích
sâu hơn đặc điểm chung của các đơn hàng bị trễ hạn.
● Có thể sử dụng thêm các scripts Python vào Orange để mở rộng khả năng phân
tích và cải thiện độ chính xác của kết quả phân tích.
● Nghiên cứu thêm về tính xác thực và an toàn dữ liệu: Vì một số dữ liệu của khách
hàng là nhạy cảm, cần nghiên cứu thêm về tính xác thực và an toàn dữ liệu để đảm
bảo an toàn và bảo vệ quyền riêng tư của khách hàng.

Nhóm 3 - Khoa học dữ liệu | 51


TÀI LIỆU THAM KHẢO
1. Prachi Gopalani, Product Shipment Delivered on time or not? To Meet E-
Commerce Customer Demand, Available at:
https://www.kaggle.com/datasets/prachi13/customer-analytics (Accessed: May
17th, 2023).
2. ThS. Đặng Ngọc Hoàng Thành, Slide bài giảng chương 1, 2, 3, 4 và các tài liệu
tham khảo môn Khoa học dữ liệu, 2023.
3. Bioinformatics Laboratory, U.of L. (no date) Test and score, Orange Data Mining
- Data Mining. Available at: Orange Data Mining - Test and Score (Accessed:
May 26th, 2023).
4. Bioinformatics Laboratory, U.of L. (no date) Confusion Matrix, Orange Data
Mining - Data Mining. Available at: Orange Data Mining - Confusion Matrix
(Accessed: May 26th, 2023).

Nhóm 3 - Khoa học dữ liệu | 52

You might also like