Giới thiệu dự án
Trong kỷ nguyên chuyển đổi số và bùng nổ dữ liệu thương mại, các hệ thống bán lẻ và chuỗi phân phối hàng hóa quy mô lớn xử lý hàng triệu giao dịch mỗi ngày. Lượng dữ liệu tích lũy từ các hệ thống máy tính tiền (Point of Sale - POS) và quản lý kho vận tạo nên các kho dữ liệu (Data Warehouse) khổng lồ nhưng phần lớn tồn tại ở dạng "ngủ đông", chưa được khai thác tối ưu. Theo các nghiên cứu trong lĩnh vực Business Intelligence, việc khai thác hiệu quả dữ liệu giao dịch giỏ hàng (Market Basket Data) có thể giúp tăng trưởng doanh thu bán chéo (Cross-selling) từ 15% đến 30% và cải thiện tỷ lệ luân chuyển hàng tồn kho đáng kể.
Tuy nhiên, các phương pháp thống kê cổ điển hay truy vấn quan hệ truyền thống (SQL Queries) chỉ giải quyết được các bài toán thống kê mô tả bề mặt (doanh số theo ngày, số lượng mặt hàng đã bán), hoàn toàn bất lực trong việc tự động tìm ra các mối quan hệ ẩn, phi tuyến tính và bất ngờ giữa các sản phẩm được mua cùng nhau trong cùng một giỏ hàng. Đồ án khóa luận tốt nghiệp "Khai phá dữ liệu với luật kết hợp và ứng dụng trong trợ giúp ra quyết định" do sinh viên Anoulak Sidaralak thực hiện dưới sự hướng dẫn của ThS. Lê Thị Nguyên An tại Khoa Công nghệ Thông tin, Trường Đại học Quảng Nam, tập trung giải quyết triệt để bài toán này.
QUY TRÌNH KHÁM PHÁ TRI THỨC (KDD PIPELINE)
+----------------+ +------------------+ +--------------------+
| Dữ liệu thô | ---> | Tiền xử lý & | ---> | Khai phá Dữ liệu |
| (CSDL POS) | | Rời rạc hóa | | (Apriori/FP-Growth)|
+----------------+ +------------------+ +--------------------+
|
+----------------+ +------------------+ v
| Ra quyết định | <--- | Đánh giá mẫu & | <-----------------+
| kinh doanh | | Trích xuất luật |
+----------------+ +------------------+
Mục tiêu của đề tài
- Hệ thống hóa cơ sở lý thuyết: Nghiên cứu toàn diện về quy trình Khám phá tri thức từ Cơ sở dữ liệu (Knowledge Discovery in Databases - KDD) và lý thuyết khai phá luật kết hợp (Association Rule Mining - ARM).
- Phân tích và tối ưu hóa giải thuật: Nghiên cứu sâu thuật toán cổ điển Apriori và thuật toán cấu trúc cây nén FP-Growth (Frequent Pattern Growth), đánh giá độ phức tạp tính toán và chi phí quét bộ nhớ.
- Thử nghiệm thực nghiệm: Xây dựng kịch bản thử nghiệm khai phá tập mục phổ biến và sinh luật kết hợp trên tập dữ liệu thương mại (
supermarket.csv) bằng môi trường phần mềm Weka 3.8, cung cấp các luật có độ tin cậy cao để hỗ trợ doanh nghiệp ra quyết định trưng bày hàng hóa, khuyến mãi liên kết và quản lý cung ứng.
Phạm vi và Giới hạn
- Phạm vi nghiên cứu: Dữ liệu giao dịch giỏ hàng dạng nhị phân (Boolean/Binary transaction data) mô phỏng theo mô hình đại siêu thị Metro Cash & Carry.
- Giới hạn kỹ thuật: Chưa tích hợp trực tiếp luật kết hợp mờ (Fuzzy Association Rules) cho các biến liên tục và dữ liệu luồng thời gian thực (Real-time stream mining).
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Trước khi áp dụng khai phá luật kết hợp, các doanh nghiệp thường dựa vào 3 giải pháp chính để phân tích hành vi khách hàng:
| Tiêu chí so sánh |
Hệ thống Thống kê Truy vấn (OLAP / SQL) |
Giải thuật Apriori (Cổ điển) |
Giải thuật FP-Growth (Cải tiến) |
| Bản chất trích xuất |
Thống kê tần suất đơn lẻ, báo cáo tổng hợp tĩnh |
Tìm mối quan hệ $X \Rightarrow Y$ dựa trên sinh tập ứng viên |
Khai thác tập phổ biến không cần sinh ứng viên qua cây tiền tố |
| Số lần quét CSDL ($D$) |
$1$ lần cho mỗi câu truy vấn cụ thể |
$k$ lần (với $k$ là độ dài tập mục phổ biến lớn nhất) |
Cố định đúng 2 lần quét CSDL |
| Chi phí bộ nhớ (RAM) |
Thấp, chỉ giữ kết quả gom nhóm |
Rất cao khi $C_k$ bùng nổ theo hàm mũ $O(2^d)$ |
Tối ưu hóa nhờ nén dữ liệu vào cây FP-Tree $O(n)$ |
| Khả năng tự động hóa |
Kém, phụ thuộc hoàn toàn vào giả thuyết của con người |
Hoàn toàn tự động phát hiện mẫu tiềm ẩn |
Tự động phát hiện mẫu với tốc độ xử lý vượt trội |
Phân loại yêu cầu theo mô hình MoSCoW
- Must have: Thuật toán xử lý tập mục phổ biến với ngưỡng hỗ trợ tối thiểu ($minsup$) và độ tin cậy tối thiểu ($minconf$); khả năng lọc bỏ tập con không phổ biến (Apriori Pruning Property).
- Should have: Cơ chế nén dữ liệu giao dịch thành FP-Tree; công cụ trực quan hóa kết quả luật kết hợp qua chỉ số Lift, Leverage và Conviction.
- Could have: Module tự động đề xuất phân bổ kệ hàng dựa trên luật kết hợp sinh ra.
- Won't have (lần này): Khai phá dữ liệu phân tán trên cụm máy chủ đa nút.
Thiết kế hệ thống
Hệ thống xử lý và khai phá dữ liệu hỗ trợ ra quyết định được thiết kế gồm 4 tầng chức năng chính:
+-----------------------------------------------------------------------+
| 1. TẦNG NGUỒN DỮ LIỆU (DATA SOURCE LAYER) |
| - CSDL Giao dịch (TID, List of Items) |
| - CSDL Khách hàng hội viên (Member ID, Demographics) |
+-----------------------------------------------------------------------+
|
v
+-----------------------------------------------------------------------+
| 2. TẦNG TIỀN XỬ LÝ (PREPROCESSING LAYER) |
| - Data Cleaning (Loại bỏ nhiễu, xử lý khuyết thiếu) |
| - Binarization (Chuyển đổi giao dịch thành ma trận Boolean 0/1) |
| - Dictionary Mapping (Ánh xạ ItemID <-> Tên hàng hóa) |
+-----------------------------------------------------------------------+
|
v
+-----------------------------------------------------------------------+
| 3. TẦNG THUẬT TOÁN KHAI PHÁ (MINING CORE ENGINE) |
| - Apriori Engine: `apriori-gen`, Breadth-First Search, Hash Tree |
| - FP-Growth Engine: FP-Tree Construction, Conditional Pattern Base |
| - Rule Generator: Lọc theo minsup, minconf, lift, conviction |
+-----------------------------------------------------------------------+
|
v
+-----------------------------------------------------------------------+
| 4. TẦNG ỨNG DỤNG RA QUYẾT ĐỊNH (DECISION SUPPORT UI) |
| - Phân tích giỏ hàng (Market Basket Analysis) |
| - Đề xuất sắp đặt layout siêu thị & Combo khuyến mãi |
+-----------------------------------------------------------------------+
Ngăn xếp công nghệ (Technology Stack)
- Môi trường phân tích & thực nghiệm: Weka Data Mining Software (Version 3.8.1, Architecture: Java-based GUI & CLI).
- Môi trường thực thi lõi: Java Runtime Environment (JRE SE 8u131 / JDK 1.8).
- Định dạng dữ liệu đầu vào: ARFF (Attribute-Relation File Format) và CSV (Comma-Separated Values).
- Hệ quản trị CSDL thử nghiệm: MySQL 5.7 / File-based Database.
Methodology
Đề tài tuân thủ quy trình chuẩn CRISP-DM (Cross-Industry Standard Process for Data Mining) với 5 giai đoạn lặp:
- Business Understanding: Xác định bài toán tối ưu hóa danh mục mặt hàng tại chuỗi siêu thị bán lẻ.
- Data Understanding & Data Preparation: Rút trích 4.000+ giao dịch hóa đơn, tiền xử lý và nhị phân hóa các trường dữ liệu giỏ hàng.
- Modeling: Áp dụng lần lượt Apriori và FP-Growth để tìm tập $L_k$ và trích xuất luật $R: X \Rightarrow Y$.
- Evaluation: Đánh giá luật qua các độ đo: Độ hỗ trợ ($Support$), Độ tin cậy ($Confidence$), Độ nâng ($Lift$).
- Deployment: Xây dựng tài liệu hướng dẫn ra quyết định quản trị chuỗi cung ứng và bố trí quầy kệ.
Implementation và kết quả
Development process
1. Cơ sở toán học của Luật kết hợp
Cho $I = {i_1, i_2, \dots, i_m}$ là tập hợp $m$ khoản mục (items) và $D = {T_1, T_2, \dots, T_n}$ là tập hợp $n$ giao dịch (transactions), trong đó mỗi $T_k \subseteq I$.
Một luật kết hợp là một biểu thức có dạng:
$$R: X \Rightarrow Y \quad (X, Y \subset I \text{ và } X \cap Y = \emptyset)$$
Hai chỉ số đo lường cốt lõi:
- Độ hỗ trợ (Support): Tần suất xuất hiện đồng thời của cả $X$ và $Y$ trong toàn bộ cơ sở dữ liệu $D$:
$$sup(X \Rightarrow Y) = P(X \cup Y) = \frac{|{T \in D \mid (X \cup Y) \subseteq T}|}{|D|}$$
- Độ tin cậy (Confidence): Xác suất có điều kiện một giao dịch chứa $Y$ khi đã chứa $X$:
$$conf(X \Rightarrow Y) = P(Y \mid X) = \frac{sup(X \cup Y)}{sup(X)} = \frac{|{T \in D \mid (X \cup Y) \subseteq T}|}{|{T \in D \mid X \subseteq T}|}$$
Số lượng luật kết hợp tiềm năng tối đa $R$ được sinh ra từ $d$ hạng mục được tính theo công thức:
$$R = 3^d - 2^{d+1} + 1$$
(Ví dụ: với tập chỉ gồm $d = 6$ hạng mục, số lượng luật tối đa có thể lên tới $R = 3^6 - 2^7 + 1 = 602$ luật).
2. Thuật toán Apriori
Thuật toán hoạt động theo nguyên lý Anti-monotonicity (Tính đơn điệu nghịch): "Mọi tập con của một tập mục phổ biến đều phải là tập mục phổ biến; ngược lại, nếu một tập mục không phổ biến thì mọi tập cha chứa nó cũng chắc chắn không phổ biến".
Algorithm: Apriori
Input: Database D, minsup threshold
Output: L - Frequent itemsets in D
1: L_1 = {large 1-itemsets};
2: for (k = 2; L_{k-1} != empty; k++) do
3: C_k = apriori-gen(L_{k-1}); // Sinh tập ứng viên bằng Join & Prune
4: for each transaction T in D do
5: C_T = subset(C_k, T); // Lấy các ứng viên có trong T
6: for each candidate c in C_T do
7: c.count++;
8: end for
9: end for
10: L_k = {c in C_k | c.count >= minsup};
11: end for
12: return Union(L_k);
Hàm sinh ứng viên apriori-gen(L_{k-1}):
- Bước kết nối (Join step): Nối $p \in L_{k-1}$ và $q \in L_{k-1}$ nếu chúng có chung $(k-2)$ phần tử đầu:
$$(p[1] = q[1]) \land (p[2] = q[2]) \land \dots \land (p[k-1] < q[k-1])$$
- Bước cắt tỉa (Prune step): Kiểm tra nếu có bất kỳ tập con $(k-1)$-mục nào của ứng viên $c = p \cup q$ không thuộc $L_{k-1}$, lập tức loại bỏ $c$ khỏi $C_k$.
3. Thuật toán FP-Growth (Frequent Pattern Growth)
FP-Growth khắc phục hoàn toàn nhược điểm quét đĩa liên tục của Apriori bằng cách nén toàn bộ cơ sở dữ liệu vào cây mẫu phổ biến FP-Tree (Frequent Pattern Tree) và khai phá theo phương pháp chia để trị (Divide-and-Conquer):
Procedure FP_Growth(Tree, alpha)
1: if Tree contains a single path P then
2: for each combination beta of the nodes in path P do
3: generate pattern (beta U alpha) with support = min(node.support in beta);
4: end for
5: else
6: for each item a_i in the header table of Tree do
7: generate pattern beta = a_i U alpha with support = a_i.support;
8: construct beta's conditional pattern base;
9: construct beta's conditional FP-tree (Tree_beta);
10: if Tree_beta != empty then
11: call FP_Growth(Tree_beta, beta);
12: end if
13: end for
14: end if
MINH HỌA CẤU TRÚC FP-TREE VÀ HEADER TABLE
Header Table FP-Tree Structure
+------+-------+ +-------------+
| Item | Count | | Root (null)|
+------+-------+ +-------------+
| I2 | 7 | ----------> / \
| I1 | 6 | / \
| I3 | 6 | I2:7 I1:2
| I4 | 2 | / /
| I5 | 2 | I1:4 I4:1
+------+-------+ / \ |
I3:2 I4:1 I3:2
Testing và validation
Thử nghiệm được thiết lập trên tập dữ liệu chuẩn supermarket.csv gồm các phiên giao dịch mua hàng bán lẻ với các thông số cấu hình:
- Ngưỡng $minsup$ thử nghiệm: Quét dải giá trị từ $0.1$ ($10%$) đến $0.5$ ($50%$).
- Ngưỡng $minconf$ thử nghiệm: Cố định dải từ $0.6$ ($60%$) đến $0.9$ ($90%$).
- Số lượng luật trích xuất ($numRules$): 10 luật tối ưu theo chỉ số Confidence giảm dần.
Kết quả đạt được
Trên bộ dữ liệu thực nghiệm với $minsup = 0.5$ ($50%$) và $minconf = 0.6$ ($60%$), hệ thống đã trích xuất thành công các luật kết hợp then chốt:
=== Run information ===
Scheme: weka.associations.Apriori -N 10 -T 0 -C 0.6 -D 0.05 -U 1.0 -M 0.5 -S -1.0
Instances: 4627
Attributes: 217 (binary flags for product categories)
Best rules found:
1. {bread=t, cheese=t} ==> {butter=t} conf:(1.00) sup:(0.50) lift:(1.33)
2. {eggs=t} ==> {butter=t} conf:(1.00) sup:(0.50) lift:(1.33)
3. {biscuits=t, tea=t} ==> {sugar=t} conf:(0.85) sup:(0.52) lift:(1.42)
4. {frozen foods=t} ==> {ice cream=t} conf:(0.73) sup:(0.51) lift:(1.21)
- Luật 1 (
{Bánh mì, Phô mai} => {Bơ}): Độ tin cậy đạt 100%, độ hỗ trợ 50%. Điều này chỉ ra rằng $100%$ khách hàng mua đồng thời bánh mì và phô mai sẽ mua thêm bơ trong cùng giỏ hàng.
- Luật 2 (
{Trứng} => {Bơ}): Độ tin cậy 100%, độ hỗ trợ 50%. Xác nhận mối tương quan tiêu dùng tuyệt đối giữa nhóm thực phẩm bữa sáng.
- Hiệu năng thuật toán: FP-Growth hoàn thành việc sinh tập phổ biến trong 0.12 giây, nhanh hơn 4.8 lần so với Apriori (0.58 giây) trên cùng tập dữ liệu khi hạ $minsup$ xuống $15%$.
Đổi mới và đóng góp
Cải tiến kỹ thuật
- Đánh giá đa chiều về thuật toán: Làm rõ sự khác biệt về bản chất giữa phương pháp duyệt không gian trạng thái theo chiều rộng (BFS - Apriori) và phương pháp khai phá đệ quy trên cây tiền tố (FP-Growth).
- Khắc phục nút thắt I/O: Chứng minh bằng toán học và thực nghiệm rằng FP-Growth giảm chi phí đọc ghi đĩa từ $k$ lần xuống cố định $2$ lần, triệt tiêu hoàn toàn bước sinh tập ứng viên khổng lồ $C_k$.
SO SÁNH THỜI GIAN THỰC THI THEO MINSUP
Thời gian (s)
^
0.8 | / \ (Apriori bùng nổ thời gian khi minsup giảm)
0.6 | / \ [Apriori]
0.4 | / \_____
0.2 | /____________\ [FP-Growth - Ổn định và tối ưu]
0.0 +------------------------------------------->
50% 40% 30% 20% 10% (Minsup)
| Tiêu chí kỹ thuật |
Giải thuật Apriori |
Giải thuật FP-Growth |
| Cấu trúc dữ liệu |
Mảng phẳng / Hash Tree |
Frequent Pattern Tree (FP-Tree) |
| Độ phức tạp thời gian |
$O(2^d \times |
D |
| Không gian bộ nhớ |
Bùng nổ khi $k$ lớn do lưu trữ $C_k$ |
$O(\text{kích thước tập mục phổ biến})$ |
| Khả năng mở rộng (Scalability) |
Kém khi dữ liệu lớn hoặc $minsup$ thấp |
Xuất sắc trên tập dữ liệu lớn và mẫu dài |
Đóng góp cho ngành bán lẻ
- Tối ưu hóa sơ đồ mặt bằng (Store Layout Optimization): Bố trí các mặt hàng có luật kết hợp mạnh ở khoảng cách hợp lý (hoặc đặt cạnh nhau để kích thích mua nhanh, hoặc đặt ở hai đầu quầy để tăng độ bao phủ di chuyển của khách).
- Chiến lược định giá & Khuyến mãi gói (Bundle Promotion): Áp dụng giảm giá sản phẩm tiền đề $X$ để kích cầu sản phẩm hệ quả $Y$ có biên lợi nhuận cao hơn.
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng thực tế (Use Cases)
- Chuỗi đại siêu thị bán buôn / bán lẻ: Phân tích hành vi mua sắm của nhóm khách hàng cá nhân và khách hàng doanh nghiệp; tự động phân loại giỏ hàng theo chu kỳ mua sắm (cuối tuần, dịp lễ tết).
- Hệ thống gợi ý trong E-commerce (Recommendation Engines): Tích hợp luật kết hợp vào tính năng "Frequently Bought Together" (Khách hàng thường mua cùng) trên website bán lẻ trực tuyến.
- Quản trị tồn kho thông minh (Smart Inventory): Dự báo nhu cầu nhập hàng chéo - khi nhập mặt hàng $X$, tự động cân đối lượng tồn kho mặt hàng $Y$ theo hệ số tương quan $conf(X \Rightarrow Y)$.
Kiến trúc triển khai & Phân tích ROI
- Mô hình triển khai: Engine khai phá luật kết hợp chạy theo lịch định kỳ (Batch Job hàng đêm) trích xuất dữ liệu từ Data Warehouse, cập nhật bảng luật (Rules Table) vào CSDL Redis/PostgreSQL để hệ thống POS và ERP truy xuất thời gian thực với độ trễ $< 10\text{ms}$.
- Phân tích hiệu quả kinh tế (ROI):
- Giảm chi phí tồn kho chết cho các mặt hàng phụ trợ: ước tính 12 - 18%.
- Tăng giá trị giỏ hàng trung bình (Average Order Value - AOV): tăng từ 8% đến 15% sau 3 tháng áp dụng cross-selling dựa trên luật kết hợp.
- Thời gian hoàn vốn đầu tư hệ thống (Payback Period): Dự kiến từ 4 đến 6 tháng.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật
- Vấn đề rời rạc hóa thuộc tính liên tục: Thuật toán hiện tại chủ yếu xử lý biến nhị phân ($0/1$). Các thuộc tính định lượng như độ tuổi, thu nhập, thời gian mua sắm phải trải qua bước tiền xử lý chia khoảng thủ công, dễ dẫn đến mất mát thông tin biên.
- Hiện tượng luật dư thừa (Rule Redundancy): Khi đặt ngưỡng $minsup$ quá thấp, hệ thống sinh ra hàng nghìn luật mang tính hiển nhiên (Trivial Rules) hoặc tương đương nhau, gây quá tải cho bộ phận quản trị khi phân loại.
Hướng phát triển
- Luật kết hợp mờ (Fuzzy Association Rules): Áp dụng hàm liên thuộc của logic mờ để xử lý các khoảng giá trị định lượng liên tục (ví dụ: "Doanh số cao", "Thời gian gọi nhiều").
- Khai phá luật kết hợp phân tán: Tích hợp thuật toán FP-Growth song song (PFP) trên nền tảng Apache Spark / MapReduce để xử lý dữ liệu Big Data quy mô hàng trăm triệu giao dịch.
- Khai phá luật kết hợp theo chuỗi thời gian (Sequential Pattern Mining): Kết hợp yếu tố thứ tự thời gian giữa các lần mua hàng lặp lại của từng khách hàng.
Đối tượng hưởng lợi
+-------------------------------------------------------------------------+
| ĐỐI TƯỢNG HƯỞNG LỢI |
+-------------------------------------------------------------------------+
| Sinh viên & Giảng viên | Nguồn tài liệu học tập chuẩn về KDD, code |
| | mẫu và quy trình kiểm thử Weka chi tiết |
+--------------------------+----------------------------------------------+
| Kỹ sư & Developers | Nắm vững cấu trúc dữ liệu FP-Tree, kỹ thuật |
| | tối ưu join/prune để tích hợp vào backend |
+--------------------------+----------------------------------------------+
| Doanh nghiệp bán lẻ | Bộ quy tắc ra quyết định bố trí hàng hóa, |
| | tăng doanh số cross-selling thực tế |
+--------------------------+----------------------------------------------+
| Nhà nghiên cứu KPDL | Nền tảng mở rộng sang khai phá luật mờ, |
| | luật nhiều mức và tính toán phân tán |
+-------------------------------------------------------------------------+
Câu hỏi thường gặp
1. Yêu cầu phần cứng và phần mềm tối thiểu để triển khai hệ thống là gì?
- Phần mềm: Môi trường Java JRE 8 trở lên, công cụ phân tích dữ liệu Weka 3.8+ hoặc thư viện
mlxtend / pyspark.ml.fpm trong Python.
- Phần cứng: Tối thiểu 4GB RAM và CPU Dual-Core cho tập dữ liệu $< 100.000$ giao dịch. Với tập dữ liệu trên 1 triệu giao dịch, khuyến nghị tối thiểu 16GB RAM để lưu trữ toàn bộ cây FP-Tree trong bộ nhớ.
2. Làm thế nào để giải quyết tình trạng bùng nổ bộ nhớ khi chạy Apriori trên tập dữ liệu lớn?
Cần chuyển sang sử dụng giải thuật FP-Growth để tránh tạo tập ứng viên $C_k$. Ngoài ra, có thể tăng nhẹ ngưỡng $minsup$ ban đầu, hoặc áp dụng kỹ thuật lấy mẫu ngẫu nhiên (Sampling) và phân vùng dữ liệu (Partitioning) để tìm tập phổ biến cục bộ trước khi hợp nhất.
3. Làm sao để phân biệt luật hữu ích và luật ngẫu nhiên/hiển nhiên?
Không chỉ dựa vào Support và Confidence, cần sử dụng chỉ số Độ nâng (Lift):
$$\text{Lift}(X \Rightarrow Y) = \frac{conf(X \Rightarrow Y)}{sup(Y)} = \frac{P(X \cup Y)}{P(X) \times P(Y)}$$
- $\text{Lift} = 1$: $X$ và $Y$ hoàn toàn độc lập.
- $\text{Lift} > 1$: $X$ và $Y$ có mối tương quan thuận (Luật có giá trị kinh doanh thực sự).
- $\text{Lift} < 1$: $X$ và $Y$ có tính thay thế hoặc loại trừ lẫn nhau.
4. Hệ thống có thể tích hợp trực tiếp vào phần mềm bán hàng hiện có không?
Có. Hệ thống có thể đóng gói dưới dạng RESTful Web API (sử dụng Spring Boot hoặc FastAPI). Sau khi mô hình khai phá sinh ra bảng luật kết hợp, API sẽ cung cấp endpoint nhận giỏ hàng hiện tại của khách [Item1, Item2] và trả về danh sách các sản phẩm gợi ý [Item3, Item4] với thời gian phản hồi dưới $20\text{ms}$.
5. Chi phí đầu tư và lộ trình hoàn vốn khi ứng dụng giải pháp này là bao nhiêu?
Với giải pháp sử dụng mã nguồn mở (Java, Weka Engine, Python MLlib), chi phí đầu tư ban đầu gần như bằng $0$ cho phần mềm bản quyền, chỉ phát sinh chi phí nhân sự triển khai và máy chủ lưu trữ. Lộ trình hoàn vốn thường đạt được sau 4 - 6 tháng thông qua việc gia tăng doanh thu từ gợi ý giỏ hàng.
Kết luận
Đồ án khóa luận tốt nghiệp "Khai phá dữ liệu với luật kết hợp và ứng dụng trong trợ giúp ra quyết định" đã hoàn thành xuất sắc các mục tiêu nghiên cứu đặt ra:
- Làm chủ lý thuyết: Xây dựng bức tranh toàn cảnh về quy trình khám phá tri thức trong CSDL (KDD) và hệ thống toán học của luật kết hợp.
- Thực thi và Đánh giá thuật toán: So sánh chi tiết thuật toán Apriori và FP-Growth, chứng minh tính ưu việt của cấu trúc cây tiền tố nén FP-Tree về tốc độ tính toán ($O(n)$) và hiệu năng bộ nhớ.
- Giá trị ứng dụng thực tiễn: Khai phá thành công các quy luật mua sắm đặc thù trên dữ liệu siêu thị, mang lại công cụ hỗ trợ ra quyết định đắc lực cho các nhà quản trị trong việc sắp xếp quầy hàng, hoạch định khuyến mãi và gia tăng năng lực cạnh tranh trong kỷ nguyên số.