Giới thiệu dự án
Thị trường bán lẻ hiện đại tại Việt Nam đang chứng kiến sự dịch chuyển cấu trúc sâu sắc dưới tác động của công nghệ số và sự thay đổi hành vi tiêu dùng hậu đại dịch Covid-19. Theo báo cáo nghiên cứu hành vi người tiêu dùng của McKinsey (2023), hơn 65% người tiêu dùng tại Việt Nam đã chuyển đổi phương thức mua sắm sang các kênh trực tuyến hoặc tích hợp đa kênh (omnichannel). Trong giai đoạn cao điểm giãn cách, tổng mức bán lẻ toàn ngành chỉ tăng 4.67% (mức thấp nhất trong 5 năm 2016–2020), khiến các chuỗi đại siêu thị chịu tổn thất lớn; điển hình như hệ thống Co.opmart từng ghi nhận sụt giảm doanh thu lên tới 50% trong 2 tháng đầu năm 2020, tương đương mức hụt thu hơn 1.000 tỷ đồng. Khi hoạt động kinh doanh trực tiếp tại điểm bán phục hồi với lưu lượng đạt trung bình 330 lượt khách/ngày tại mỗi điểm bán, thách thức lớn nhất của các nhà quản trị là khai thác khối dữ liệu giao dịch khổng lồ bị phân mảnh để nâng cao giá trị giỏ hàng và giữ chân khách hàng trung thành.
Vấn đề cốt lõi (Problem Statement) tại các chuỗi siêu thị như Co.opmart nằm ở việc tổ chức sắp xếp không gian quầy kệ và thiết lập chính sách khuyến mãi chéo (cross-promotions) còn phụ thuộc nặng nề vào cảm tính hoặc các báo cáo thống kê doanh số đơn biến. Cách tiếp cận này bỏ qua sự phụ thuộc ngầm định giữa các danh mục sản phẩm được mua đồng thời trong cùng một phiên giao dịch. Khi dữ liệu giao dịch bán lẻ tích lũy tới hàng trăm nghìn bản ghi mỗi quý nhưng không có công cụ phân tích tự động, doanh nghiệp đối mặt với hai rủi ro: lãng phí diện tích sàn thương mại do bố trí các nhóm hàng bổ trợ quá xa nhau, và giảm tỷ lệ chuyển đổi khi các gói combo sản phẩm không đánh trúng nhu cầu thực tế của khách hàng.
Dự án nghiên cứu này xác định 4 mục tiêu cụ thể:
- Thu thập, chuẩn hóa và tiền xử lý toàn diện bộ dữ liệu nhật ký giao dịch máy POS (Point of Sale) gồm gần 180.000 bản ghi thô và 22 trường thuộc tính trong Quý I năm 2024 tại siêu thị Co.opmart GoldSilk.
- Thiết kế và triển khai luồng xử lý phân tích giỏ hàng (Market Basket Analysis – MBA) ứng dụng kỹ thuật khai phá luật kết hợp (Association Rule Mining – ARM).
- Cài đặt thực nghiệm, tối ưu hóa tham số và đối sánh hiệu năng chuyên sâu giữa hai giải thuật kinh điển: Apriori và FP-Growth (Frequent Pattern-Growth) trên không gian dữ liệu giao dịch thực tế.
- Trích xuất các luật kết hợp có giá trị cao dựa trên các thước đo thống kê (Support, Confidence, Lift) để đề xuất giải pháp sắp đặt layout gian hàng và chiến lược cross-merchandising có tính khả thi cao.
Phương pháp tiếp cận dựa trên quy trình khám phá tri thức từ cơ sở dữ liệu (Knowledge Discovery in Databases – KDD), chuyển đổi dữ liệu phi cấu trúc theo hóa đơn thành ma trận thưa One-Hot Boolean, từ đó sinh các tập mục thường xuyên (Frequent Itemsets) và tạo luật. Phạm vi nghiên cứu tập trung vào 28.199 giao dịch hoàn thành (Trạng thái == 'Hoàn thành') trong Quý I/2024 tại Co.opmart GoldSilk, sử dụng ngôn ngữ lập trình Python và thư viện chuyên dụng mlxtend.
| Thông số dự án |
Giá trị định lượng |
| Quy mô dữ liệu thô |
~180.000 bản ghi giao dịch (22 thuộc tính) |
| Dữ liệu giao dịch hoàn chỉnh |
28.199 transactions đã làm sạch |
| Không gian danh mục sản phẩm |
970 thuộc tính phân loại chuẩn hóa |
| Ngưỡng hỗ trợ tối thiểu ($min_sup$) |
0.005 (0.5%) |
| Tập mục thường xuyên thu được |
301 itemsets |
| Tiêu chí lọc luật giá trị |
$min_lift \ge 1.0$, sắp xếp theo $Confidence$ |
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Tại Co.opmart cũng như nhiều chuỗi bán lẻ tại Việt Nam, các phương pháp phân tích kinh doanh truyền thống chủ yếu dựa trên báo cáo SQL tổng hợp định kỳ (doanh số theo nhóm ngành, SKU bán chạy nhất) hoặc dựa vào kinh nghiệm quản lý sàn của giám sát bán hàng.
| Tiêu chí |
Báo cáo thống kê truyền thống |
Khai phá dữ liệu với Apriori |
Khai phá dữ liệu với FP-Growth |
| Bản chất phân tích |
Đơn biến / Thống kê mô tả |
Đa biến / Khai phá luật kết hợp |
Đa biến / Khai phá luật kết hợp |
| Phát hiện quan hệ ngầm |
Không thể |
Rất tốt (dựa trên $k$-itemsets) |
Rất tốt (dựa trên cây FP-Tree) |
| Số lần quét CSDL |
1 lần quét truy vấn |
$k+1$ lần quét (rất tốn I/O) |
Cố định 2 lần quét CSDL |
| Sử dụng bộ nhớ |
Thấp |
Tăng theo số lượng ứng viên $C_k$ |
Tối ưu nhờ nén cấu trúc cây |
| Khả năng mở rộng (Scale) |
Kém khi phân tích kết hợp |
Kém khi $min_sup$ nhỏ |
Rất cao với Big Data |
Phân tích yêu cầu hệ thống theo mô hình MoSCoW:
- Must have: Module ETL làm sạch 22 trường thuộc tính POS; bộ chuyển đổi
TransactionEncoder nhị phân hóa giao dịch; engine khai phá luật sinh tập mục thường xuyên với tham số động ($min_sup$, $min_conf$).
- Should have: Bộ lọc luật nâng cao theo chỉ số $Lift > 1$ và $Conviction$; trực quan hóa tần suất sản phẩm dạng biểu đồ phân phối.
- Could have: Module tự động ánh xạ luật kết hợp vào sơ đồ mặt bằng (Planogram Mapping).
- Won't have (trong pha này): Hệ thống đề xuất thời gian thực (Real-time Streaming Recommendations) tại quầy thanh toán POS.
Thiết kế hệ thống
Kiến trúc giải pháp được thiết kế theo mô hình luồng dữ liệu KDD 5 lớp:
[POS Database Co.opmart] (180.000 records, .xlsx/.csv)
[Lớp 1: Tiền xử lý & Làm sạch dữ liệu]
- Lọc trạng thái giao dịch: Hoàn thành
- Chuẩn hóa kiểu dữ liệu: to_datetime()
- Ghép Department + Sub-Department -> Danh mục chuẩn
[Lớp 2: Biến đổi cấu trúc giao dịch]
- Gom nhóm theo Mã HĐ -> Transaction Matrix (28.199 x N)
- One-Hot Encoding (TransactionEncoder) -> Sparse Boolean DataFrame
[Lớp 3: Engine Khai phá luật kết hợp]
[Lớp 4: Đánh giá & Trích xuất luật]
- Tính toán Support, Confidence, Lift, Leverage
- Lọc luật: min_sup = 0.005, min_lift >= 1.0
[Lớp 5: Tri thức ứng dụng kinh doanh]
- Tối ưu hóa trưng bày quầy hàng (Shelf Layout)
- Thiết kế Combo Khuyến mãi & Cross-Selling
Chi tiết Technology Stack:
- Ngôn ngữ cốt lõi: Python 3.10.12
- Thư viện cấu trúc & tính toán:
pandas v2.1.4, numpy v1.26.2
- Thư viện khai phá dữ liệu:
mlxtend v0.23.0 (Machine Learning Extensions)
- Thư viện trực quan hóa:
matplotlib v3.8.2, seaborn v0.13.0
- Môi trường phát triển: JupyterLab v4.0.9 trên nền tảng máy trạm Linux x86_64
Cấu trúc lược đồ dữ liệu đầu vào trích xuất từ POS (22 thuộc tính):
- Nhóm định danh:
Mã đơn hàng (String, quy chuẩn 17 ký tự), Mã HĐ (Int/String), Mã quầy (Int), Mã thu ngân (String), Mã khách hàng (String/Nullable).
- Nhóm thời gian:
Thời gian đặt hàng, Thời gian trích bill, Thời gian thanh toán tại POS (Datetime).
- Nhóm phân loại hàng hóa:
SKU (Barcode), Department (Mã danh mục chính), Sub Department (Mã danh mục phụ), Tên sản phẩm (Varchar).
- Nhóm tài chính & đo lường:
Số lượng (Float), Khối lượng (Float), Giá gốc, Giá bán, Tiền trước thuế, Thuế suất, Tiền thuế, Tiền sau thuế (Decimal VNĐ).
- Nhóm điều kiện:
Loại đơn hàng (String), Trạng thái (Categorical: Hoàn thành, Đã hủy, Hủy chưa thanh toán, Đã đóng).
Methodology
Dự án áp dụng quy trình tiêu chuẩn KDD kết hợp khung làm việc linh hoạt với 4 mốc tiến độ (Milestones):
- Cột mốc M1 (Tuần 1-2): Khảo sát nghiệp vụ bán lẻ Co.opmart, tích hợp dữ liệu 3 tháng đầu năm 2024, xây dựng quy tắc làm sạch dữ liệu khuyết thiếu.
- Cột mốc M2 (Tuần 3-4): Thực hiện chuẩn hóa danh mục đa tầng (
Department + Sub Department), xây dựng mảng giao dịch và chuyển đổi mã hóa One-Hot.
- Cột mốc M3 (Tuần 5-6): Triển khai thực nghiệm song song thuật toán Apriori và FP-Growth với dải tham số $min_sup \in [0.003, 0.03]$, đo lường thời gian thực thi và mức độ chiếm dụng bộ nhớ RAM.
- Cột mốc M4 (Tuần 7-8): Trích xuất top 15 luật kết hợp có độ tin cậy và lực nâng cao nhất, thẩm định tính ứng dụng với bộ phận quản lý siêu thị.
Đánh giá rủi ro kỹ thuật:
- Rủi ro tràn bộ nhớ (Memory Out-of-Bound): Xảy ra khi $min_sup < 0.003$ trên thuật toán Apriori do sinh bùng nổ tổ hợp ứng viên $2^k$. Giải pháp: Thiết lập ngưỡng chặn tối ưu $min_sup = 0.005$ và chuyển giao xử lý hoàn toàn sang FP-Growth.
- Rủi ro luật nhiễu/luật hiển nhiên (Trivial Rules): Các luật chứa các mặt hàng thiết yếu có support quá cao nhưng $Lift \le 1.0$. Giải pháp: Áp dụng bộ lọc ràng buộc kép $Lift > 1.0$ và loại bỏ các mặt hàng bao bì/túi đựng phi hàng hóa.
Implementation và kết quả
Development process
Quá trình tiền xử lý và chuyển đổi dữ liệu được thực thi nghiêm ngặt qua 3 giai đoạn lập trình:
Giai đoạn 1: Đọc, lọc đơn hàng hoàn thành và chuẩn hóa dữ liệu thời gian:
import pandas as pd
import numpy as np
from mlxtend.preprocessing import TransactionEncoder
from mlxtend.frequent_patterns import apriori, fpgrowth, association_rules
import time
# 1. Đọc dữ liệu từ file tổng hợp Quý 1
df = pd.read_excel('Quy1.xlsx')
# 2. Chuẩn hóa trường thời gian
datetime_cols = ['Thời gian đặt hàng', 'Thời gian trích bill', 'Thời gian thanh toán tại POS']
for col in datetime_cols:
df[col] = pd.to_datetime(df[col], errors='coerce')
# 3. Lọc các giao dịch hợp lệ
df_clean = df[df['Trạng thái'] == 'Hoàn thành'].copy()
# 4. Tạo mã danh mục chuẩn hóa để giảm không gian tập mục
df_clean['Ma_Danh_Muc'] = df_clean['Department'].astype(str) + "_" + df_clean['Sub Department'].astype(str)
Giai đoạn 2: Tái cấu trúc bộ dữ liệu thành ma trận giao dịch (Transaction Array):
# Gom nhóm danh sách sản phẩm theo từng Mã Hóa Đơn
transactions_series = df_clean.groupby('Mã HĐ')['Tên sản phẩm'].apply(lambda x: list(np.unique(x)))
transactions_list = transactions_series.tolist()
# Nhị phân hóa ma trận bằng TransactionEncoder
te = TransactionEncoder()
te_ary = te.fit(transactions_list).transform(transactions_list)
df_transformed = pd.DataFrame(te_ary, columns=te.columns_)
# Loại bỏ cột rác hoặc giá trị không xác định (nan) nếu có
if 'nan' in df_transformed.columns:
df_transformed.drop(columns=['nan'], inplace=True)
print(f"Kích thước ma trận giao dịch sau xử lý: {df_transformed.shape}")
# Kết quả: 28,199 dòng (giao dịch) x 970 cột (sản phẩm/danh mục)
Giai đoạn 3: Thực thi khai phá tập mục thường xuyên và tạo luật kết hợp:
# Thực thi giải thuật FP-Growth với min_support = 0.005
start_time = time.time()
frequent_itemsets = fpgrowth(df_transformed, min_support=0.005, use_colnames=True)
fpgrowth_execution_time = time.time() - start_time
# Sinh luật kết hợp với điều kiện ngưỡng tự tin tối thiểu min_threshold = 0.1
rules = association_rules(frequent_itemsets, metric="confidence", min_threshold=0.1)
# Lọc các luật có ý nghĩa kinh doanh cao (Lift > 1.0) và sắp xếp theo Confidence
actionable_rules = rules[rules['lift'] >= 1.0].sort_values(by='confidence', ascending=False)
Testing và validation
Hiệu năng của thuật toán Apriori và FP-Growth được kiểm thử và đo lường trực tiếp trên tập dữ liệu 28.199 đơn hàng với dải thay đổi của tham số $min_support$:
| Giá trị $min_support$ |
Số lượng luật sinh ra |
Thời gian chạy Apriori (s) |
Thời gian chạy FP-Growth (s) |
Tỷ lệ cải thiện tốc độ |
| 0.030 (3.0%) |
4 |
0.82 |
0.24 |
70.7% |
| 0.010 (1.0%) |
48 |
3.45 |
0.61 |
82.3% |
| 0.007 (0.7%) |
142 |
8.92 |
0.89 |
90.0% |
| 0.005 (0.5%) |
301 |
24.15 |
1.12 |
95.3% |
| 0.003 (0.3%) |
1.210 |
Memory Error / Crash |
2.45 |
$\infty$ (Ổn định tuyệt đối) |
Kết quả thực nghiệm khẳng định: Khi hạ thấp ngưỡng $min_support$ xuống mức 0.003 để tìm kiếm các quan hệ hiếm giữa các mặt hàng chuyên biệt, thuật toán Apriori hoàn toàn bị sập do hiện tượng quá tải không gian bộ nhớ trong bước sinh tổ hợp ứng viên $C_k$. Ngược lại, FP-Growth duy trì thời gian thực thi ổn định ở mức 2.45 giây nhờ cấu trúc cây nén tiền tố FP-Tree và cơ chế khai phá đệ quy trên cây điều kiện (Conditional FP-Tree).
Kết quả đạt được
Phân tích thống kê tần suất đơn lẻ trên toàn bộ 28.199 giao dịch xác định 3 nhóm sản phẩm dẫn đầu về doanh số bán lẻ tại Co.opmart GoldSilk:
- Bánh các loại (Confectionery): 8.319 lượt mua.
- Nước ngọt & Đồ uống giải khát: 7.551 lượt mua.
- Sữa và các chế phẩm từ sữa: 5.875 lượt mua.
Thiết lập ngưỡng chọn lọc tối ưu $min_support = 0.005$ và $min_confidence = 0.2$, hệ thống đã trích xuất 301 tập mục thường xuyên và lọc ra các luật kết hợp thương mại tiêu biểu:
| STT |
Mệnh đề tiền đề ($Antecedents$) |
Mệnh đề kết luận ($Consequents$) |
Support |
Confidence |
Lift |
Ý nghĩa tương quan |
| 1 |
{Mì Hảo Hảo lẩu kim chi} |
{Xúc xích tiệt trùng} |
0.0082 |
0.684 |
3.42 |
Tương quan rất mạnh (Ăn liền kèm) |
| 2 |
{Thịt heo xay} |
{Hành lá, Củ hành tím} |
0.0095 |
0.612 |
2.85 |
Nguyên liệu chế biến món ăn |
| 3 |
{Bánh quy bơ} |
{Sữa tươi tiệt trùng} |
0.0145 |
0.548 |
2.15 |
Bữa phụ dinh dưỡng |
| 4 |
{Nước rửa chén} |
{Nước xả vải} |
0.0112 |
0.495 |
2.68 |
Tiêu dùng hóa phẩm gia đình |
| 5 |
{Bia lon các loại} |
{Đậu phộng da cá / Snack} |
0.0078 |
0.521 |
3.10 |
Đồ uống có cồn & Món nhắm |
Đổi mới và đóng góp
Nghiên cứu mang lại những cải tiến kỹ thuật và giá trị thực tiễn rõ nét so với các công bố và cách tiếp cận trước đây:
- Chuẩn hóa ngữ nghĩa danh mục bán lẻ: Khác với các nghiên cứu xử lý chuỗi ký tự nguyên bản dễ làm phân mảnh dữ liệu (ví dụ: cùng một sản phẩm nhưng khác biệt về quy cách đóng gói 500ml, 1kg hay tên thương hiệu phụ), giải pháp đã xây dựng bộ quy tắc hợp nhất
Department + Sub Department kết hợp giữ lại các thương hiệu dẫn đầu hành vi (như "Hảo Hảo"), giúp cô đọng ma trận thuộc tính từ hơn 12.000 SKU xuống còn 970 thuộc tính phân loại chuẩn, giảm 91.9% kích thước không gian tìm kiếm.
- Khắc phục triệt để điểm nghẽn hiệu năng của thuật toán Apriori: Bằng việc so sánh đa thuật toán (AIS, SETM, Apriori, Aprioritid, Apriori Hybrid, FP-Growth), nghiên cứu đã chứng minh trên thực nghiệm dữ liệu Co.opmart rằng FP-Growth giảm hơn 95% thời gian xử lý so với Apriori tại $min_sup = 0.005$, đồng thời giải quyết bài toán sập bộ nhớ khi quét dữ liệu quy mô lớn.
- Mô hình hóa động lực liên kết mua sắm bằng chỉ số Lift: Nghiên cứu không chỉ dừng lại ở chỉ số $Support$ và $Confidence$ vốn dễ bị thiên vị bởi các mặt hàng có tần suất bán quá lớn, mà sử dụng $Lift > 1.0$ làm bộ lọc trọng tâm, đảm bảo các tập luật được phát hiện phản ánh chính xác hành vi phụ thuộc nhân quả thay vì xuất hiện ngẫu nhiên.
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng nghiệp vụ
- Tối ưu hóa sơ đồ mặt bằng và quầy kệ (Visual Merchandising & Planogram): Dựa trên luật {Mì ăn liền} $\rightarrow$ {Xúc xích} ($Lift = 3.42$) và {Bánh quy} $\rightarrow$ {Sữa tươi} ($Lift = 2.15$), siêu thị bố trí các kệ trưng bày phụ (End-cap display) hoặc đặt các quầy hàng này đối diện nhau trong cùng một lối đi (Aisle). Cách sắp đặt này rút ngắn thời gian tìm kiếm của khách hàng và kích hoạt hành vi mua ngẫu hứng (Impulse Buying).
- Thiết kế gói sản phẩm khuyến mãi chéo (Cross-Bundle Packaging): Đóng gói combo sản phẩm kèm voucher giảm giá trực tiếp (ví dụ: Giảm 15% cho nước xả vải khi mua kèm nước rửa chén). Chiến lược này giúp gia tăng giá trị đơn hàng trung bình (Average Order Value – AOV).
- Gợi ý thông minh trên ứng dụng Co.opmart Online: Tích hợp engine luật kết hợp vào giỏ hàng trực tuyến. Khi khách hàng thêm "Thịt heo xay", hệ thống tự động hiển thị gợi ý "Gia vị & Hành củ" ngay tại màn hình thanh toán.
Yêu cầu triển khai và Đánh giá hiệu quả kinh tế (ROI)
- Cấu hình phần cứng tối thiểu:
- CPU: Intel Core i5 / AMD Ryzen 5 (4 Cores, 8 Threads) hoặc tương đương.
- RAM: Tối thiểu 16GB DDR4 (đáp ứng nén FP-Tree cho tập 500.000 giao dịch).
- Storage: 20GB không gian trống SSD chuẩn NVMe để lưu trữ staging data và cache log.
- Môi trường phần mềm: Linux OS (Ubuntu 22.04 LTS / Rocky Linux 9), Python 3.10+, Docker container hóa để tích hợp qua RESTful API.
Tuần 1-3: Kết nối Pipeline dữ liệu tự động từ máy chủ POS Co.opmart
Tuần 4-6: Triển khai Engine FP-Growth trên môi trường Staging/Docker
Tuần 7-9: Thử nghiệm A/B Testing layout quầy kệ tại Co.opmart GoldSilk
Tuần 10-12: Đo lường chuyển đổi doanh thu, đóng gói API cho App Online
Dự toán hiệu quả kinh tế:
- Chi phí đầu tư: Chi phí nhân lực và hạ tầng tính toán thấp do sử dụng nền tảng mã nguồn mở (Open-source Stack).
- Lợi ích tài chính kỳ vọng: Tăng trưởng từ 8% đến 12% giá trị trung bình trên mỗi giỏ hàng thông qua bán chéo; giảm thiểu 15% thời gian tồn kho đối với các mặt hàng có tốc độ luân chuyển chậm khi được ghép cặp cùng các sản phẩm bán chạy.
Hạn chế và hướng phát triển
Dự án đã đạt được các mục tiêu khoa học và ứng dụng đề ra, tuy nhiên vẫn tồn tại một số hạn chế kỹ thuật cần được nhìn nhận:
- Tính tĩnh của dữ liệu theo thời gian (Temporal Invariance): Dữ liệu nghiên cứu giới hạn trong Quý I năm 2024 (chứa giai đoạn đột biến tiêu dùng Tết Nguyên Đán), chưa phản ánh được sự biến thiên của luật kết hợp theo chu kỳ mùa vụ trong cả năm hoặc sự thay đổi theo từng khung giờ trong ngày (sáng/chiều/tối).
- Bỏ sót yếu tố giá trị kinh tế của món hàng (Utility-blindness): Thuật toán FP-Growth truyền thống coi trọng số của mọi sản phẩm là tương đương, chưa tích hợp biên độ lợi nhuận (Profit Margin) để ưu tiên sinh ra các luật mang lại lợi nhuận biên cao nhất cho siêu thị.
- Khuyết thiếu thông tin nhân khẩu học: Do các giao dịch vãng lai không có mã định danh thành viên (
Mã khách hàng bị khuyết), hệ thống chưa thể phân đoạn luật kết hợp chi tiết theo độ tuổi, giới tính hay mức thu nhập.
Hướng phát triển tiếp theo:
- Nghiên cứu áp dụng thuật toán Khai phá tập mục có độ hữu dụng cao (High Utility Itemset Mining – HUIM) nhằm kết hợp giá bán và lợi nhuận biên vào quá trình đánh giá luật.
- Ứng dụng khai phá mẫu tuần tự (Sequential Pattern Mining với giải thuật PrefixSpan) để phân tích hành vi mua sắm lặp lại theo chu kỳ tuần/tháng của khách hàng có thẻ thành viên.
- Đóng gói hệ thống thành microservice chuẩn FastAPI, tích hợp trực tiếp vào hệ thống hoạch định tài nguyên doanh nghiệp (như ERP Fast Business Online) để tự động cập nhật luật định kỳ theo ngày.
Đối tượng hưởng lợi
- Sinh viên & Người học ngành CNTT, Hệ thống thông tin, Kinh tế số: Cung cấp tài liệu tham khảo toàn diện, minh họa sống động về việc ứng dụng lý thuyết khai phá dữ liệu vào bài toán phân tích kinh doanh thực tế thay vì các bộ dữ liệu đồ chơi (toy datasets).
- Kỹ sư dữ liệu & Lập trình viên: Cung cấp mẫu mã nguồn hoàn chỉnh về kỹ thuật tiền xử lý dữ liệu POS kích thước lớn, xử lý ma trận thưa với
TransactionEncoder và giải pháp tối ưu bộ nhớ khi chạy thuật toán luật kết hợp.
- Doanh nghiệp bán lẻ & Quản lý siêu thị: Nhận được bộ giải pháp trực tiếp có thể ứng dụng ngay vào việc quy hoạch lại sơ đồ quầy kệ và thiết kế các chiến dịch tiếp thị bán chéo với tỷ lệ thành công cao.
- Nhà nghiên cứu khoa học dữ liệu: Đóng góp thêm bằng chứng thực nghiệm về hiệu năng vượt trội của cấu trúc cây tiền tố (Prefix-Tree) so với thuật toán sinh ứng viên truyền thống trên dữ liệu bán lẻ tại thị trường đang phát triển.
Câu hỏi thường gặp
1. Yêu cầu kỹ thuật tối thiểu để triển khai pipeline phân tích này trên hệ thống siêu thị là gì?
Hệ thống yêu cầu máy chủ chạy hệ điều hành Linux (Ubuntu 20.04/22.04 LTS), cài đặt Python 3.9+ cùng các thư viện pandas, numpy, mlxtend. Về phần cứng, cần tối thiểu 16GB RAM để xử lý tập dữ liệu từ 200.000 đến 500.000 hóa đơn. Dữ liệu POS đầu vào cần được trích xuất định kỳ dưới dạng cấu trúc bảng (CSV/Parquet/Database View) chứa tối thiểu 3 trường: Mã hóa đơn, Tên/Mã sản phẩm và Trạng thái hoàn thành.
2. Giới hạn mở rộng (Scalability limits) của giải pháp là gì và khắc phục ra sao khi dữ liệu lên tới hàng triệu đơn hàng?
Khi quy mô giao dịch vượt quá 10 triệu bản ghi, việc xử lý đơn luồng trên RAM bằng mlxtend sẽ gặp hiện tượng nghẽn bộ nhớ. Giải pháp mở rộng là chuyển đổi pipeline sang môi trường điện toán phân tán Apache Spark (sử dụng module pyspark.ml.fpm.FPGrowth), cho phép phân tán việc xây dựng cây FP-Tree trên cụm máy chủ (Cluster), đảm bảo thời gian tính toán tuyến tính theo quy mô dữ liệu.
3. Làm thế nào để tích hợp kết quả luật kết hợp vào các hệ thống quản trị hiện có như ERP FAST hay POS?
Kết quả các luật kết hợp sau khi khai phá sẽ được xuất ra dưới định dạng JSON/RESTful API hoặc lưu trữ trực tiếp vào bảng trung gian trong CSDL SQL Server/PostgreSQL của ERP. Hệ thống POS hoặc ERP sẽ truy vấn bảng này theo mã SKU đầu vào để hiển thị danh sách các sản phẩm gợi ý bán chéo (Consequents) ngay trên màn hình của nhân viên thu ngân hoặc giao diện người dùng trên web/app.
4. Chi phí bảo trì và tần suất cập nhật lại mô hình luật kết hợp là bao lâu?
Chi phí bảo trì hệ thống rất thấp do toàn bộ công nghệ lõi đều là mã nguồn mở. Về tần suất vận hành, mô hình nên được thiết lập chạy tự động (Cron job) định kỳ 1 tuần/lần hoặc 1 tháng/lần để cập nhật sự dịch chuyển trong xu hướng mua sắm của khách hàng, đồng thời có thể chạy các phiên riêng biệt để phân tích các dịp lễ hội, sự kiện khuyến mãi lớn.
5. Dự toán thời gian hoàn vốn (ROI Timeline) khi áp dụng giải pháp này cho một chi nhánh siêu thị?
Với chi phí đầu tư ban đầu chủ yếu là nhân lực thiết lập hệ thống nội bộ, điểm hòa vốn và sinh lời thường đạt được trong khoảng 3 đến 6 tháng sau khi áp dụng thay đổi cách trưng bày hàng hóa và triển khai các gói combo khuyến mãi, mang lại mức tăng trưởng doanh thu dự kiến từ 8% đến 12% trên các nhóm ngành hàng mục tiêu.
Kết luận
Đề tài khóa luận "Áp dụng phương pháp khai phá luật kết hợp để hỗ trợ kinh doanh tại siêu thị Co.opmart" đã chứng minh tính hiệu quả vượt bậc của việc chuyển hóa dữ liệu giao dịch bán lẻ thô thành tri thức kinh doanh có giá trị thực tiễn cao. Thông qua việc làm sạch và phân tích 28.199 đơn hàng hoàn chỉnh trong Quý I năm 2024, dự án không chỉ cung cấp cái nhìn chi tiết về xu hướng tiêu dùng thực tế tại Co.opmart GoldSilk mà còn khẳng định ưu thế kỹ thuật vượt trội của giải thuật FP-Growth so với Apriori về cả tốc độ xử lý (nhanh hơn trên 95%) lẫn sự ổn định tài nguyên bộ nhớ. Các luật kết hợp phát hiện được là cơ sở khoa học vững chắc để ban quản lý siêu thị tái cấu trúc không gian quầy kệ, xây dựng chính sách khuyến mãi liên kết và nâng cao năng lực cạnh tranh trong kỷ nguyên số hóa bán lẻ.