Đồ án môn học khai thác dữ liệu và ứng dụng đề tài phân tích doanh số bán hàng của doanh nghiệp

Tìm hiểu đồ án khai thác dữ liệu, phân tích doanh số bán hàng cho doanh nghiệp. Ứng dụng thực tiễn giúp tối ưu kinh doanh và đưa ra quyết sách.

Chuyên ngành

Khai thác dữ liệu và Ứng dụng

Người đăng

Ẩn danh

Thể loại

Đồ án môn học

2023

50
2
0

Phí lưu trữ

30 Point

Tóm tắt

I. Hướng dẫn đồ án khai thác dữ liệu và ứng dụng bán hàng

Đồ án môn học về khai thác dữ liệu và ứng dụng trong phân tích doanh số bán hàng là một đề tài thực tiễn, mang lại giá trị cao cho sinh viên ngành Công nghệ thông tin và Khoa học dữ liệu. Việc phân tích dữ liệu bán hàng không chỉ dừng lại ở việc tổng hợp các con số. Nó là quá trình khám phá các mẫu ẩn, xu hướng và mối quan hệ trong dữ liệu để đưa ra các quyết định kinh doanh chiến lược. Một báo cáo đồ án mẫu chất lượng sẽ thể hiện khả năng áp dụng các kiến thức lý thuyết về máy học (machine learning) vào một dataset bán hàng thực tế. Quá trình này bao gồm các bước từ thu thập, tiền xử lý dữ liệu, áp dụng các thuật toán phân tích, đến trực quan hóa dữ liệu để trình bày kết quả một cách tường minh. Các doanh nghiệp hiện đại dựa vào khoa học dữ liệu để hiểu rõ hơn về hành vi khách hàng, tối ưu hóa chiến dịch marketing và dự báo nhu cầu thị trường. Đề tài này giúp sinh viên xây dựng một nền tảng vững chắc, kết nối giữa lý thuyết và thực hành, chuẩn bị cho các vai trò như nhà phân tích dữ liệu hay chuyên gia Business Intelligence. Việc lựa chọn đúng phương pháp và công cụ, như Python cho phân tích dữ liệu cùng các thư viện chuyên dụng, là chìa khóa để hoàn thành xuất sắc đồ án. Nội dung bài viết này sẽ cung cấp một cái nhìn tổng quan, chi tiết về các bước thực hiện, các phương pháp cốt lõi và những ứng dụng thực tiễn dựa trên một đồ án nghiên cứu cụ thể.

1.1. Tầm quan trọng của khoa học dữ liệu trong kinh doanh

Trong bối cảnh cạnh tranh, dữ liệu được xem là tài sản quý giá nhất của doanh nghiệp. Khoa học dữ liệu đóng vai trò then chốt trong việc biến dữ liệu thô thành những hiểu biết sâu sắc, hỗ trợ ra quyết định. Thay vì dựa vào cảm tính, các nhà quản lý có thể sử dụng kết quả phân tích để xác định sản phẩm nào bán chạy nhất, khung giờ nào khách hàng mua sắm nhiều nhất, hoặc các sản phẩm nào thường được mua cùng nhau. Các kỹ thuật như phân khúc khách hàng (customer segmentation) giúp cá nhân hóa các chiến dịch marketing, tăng tỷ lệ chuyển đổi. Hơn nữa, các công cụ Business Intelligence hiện đại như Power BI hay Tableau cho phép tạo ra các bảng điều khiển tương tác, giúp theo dõi hiệu suất kinh doanh theo thời gian thực. Việc áp dụng khai thác dữ liệu giúp doanh nghiệp không chỉ phản ứng với thị trường mà còn chủ động dự đoán xu hướng, từ đó chiếm lĩnh lợi thế cạnh tranh bền vững.

1.2. Cấu trúc một báo cáo đồ án mẫu về phân tích dữ liệu

Một báo cáo đồ án mẫu về phân tích doanh số bán hàng thường được cấu trúc một cách logic để người đọc dễ dàng theo dõi. Cấu trúc chuẩn bao gồm các phần chính sau: Giới thiệu, Cơ sở lý thuyết, Thực hành và Kết luận. Phần Giới thiệu nêu bật vấn đề, mục tiêu và phạm vi của đề tài. Phần Cơ sở lý thuyết trình bày các khái niệm và thuật toán quan trọng như luật kết hợp, thuật toán Apriori, các phương pháp phân loại và dự báo. Phần Thực hành là trọng tâm, mô tả chi tiết về dataset bán hàng được sử dụng, quy trình tiền xử lý dữ liệu, và cách triển khai các thuật toán bằng công cụ cụ thể (ví dụ: Python với thư viện Pandasthư viện Scikit-learn). Phần này cũng cần trình bày các kết quả phân tích thông qua biểu đồ và bảng biểu. Cuối cùng, phần Kết luận tóm tắt những phát hiện chính, đánh giá các hạn chế của mô hình và đề xuất hướng phát triển trong tương lai. Cấu trúc này đảm bảo tính khoa học và toàn diện cho đồ án.

II. Vấn đề cốt lõi khi phân tích doanh số bán hàng thủ công

Việc phân tích doanh số bán hàng theo phương pháp thủ công hoặc sử dụng các công cụ truyền thống như bảng tính đối mặt với nhiều thách thức lớn. Thách thức đầu tiên là khối lượng dữ liệu khổng lồ. Các doanh nghiệp, đặc biệt là trong lĩnh vực thương mại điện tử, tạo ra hàng triệu bản ghi giao dịch mỗi ngày. Việc xử lý một dataset bán hàng lớn như vậy bằng tay là không khả thi và rất dễ xảy ra sai sót. Thách thức thứ hai nằm ở sự phức tạp của dữ liệu. Dữ liệu thô thường không nhất quán, chứa giá trị rỗng, sai định dạng hoặc nhiễu. Quá trình tiền xử lý dữ liệu để làm sạch và chuẩn hóa là một công đoạn tốn nhiều thời gian nhưng lại cực kỳ quan trọng. Nếu bỏ qua bước này, kết quả phân tích sẽ không chính xác. Thách thức lớn nhất là bỏ lỡ các mẫu hình tinh vi. Các mối quan hệ ẩn giữa các sản phẩm, phân khúc khách hàng tiềm năng, hay các yếu tố ảnh hưởng đến quyết định mua hàng thường không thể phát hiện bằng cách quan sát thông thường. Đây là lúc các kỹ thuật khai thác dữ liệumáy học phát huy sức mạnh, giúp tự động hóa quá trình khám phá tri thức từ dữ liệu, mang lại những hiểu biết mà con người khó có thể nhận ra.

2.1. Khó khăn trong việc tiền xử lý dữ liệu bán hàng thô

Dữ liệu bán hàng thô từ các hệ thống giao dịch thường ở trạng thái lộn xộn. Một dataset bán hàng có thể đến từ nhiều nguồn khác nhau, dẫn đến sự không đồng nhất về cấu trúc. Các vấn đề phổ biến bao gồm thiếu dữ liệu (ví dụ: địa chỉ khách hàng không đầy đủ), dữ liệu sai (ví dụ: giá sản phẩm nhập âm), và định dạng không nhất quán (ví dụ: ngày tháng được ghi theo nhiều kiểu). Quá trình tiền xử lý dữ liệu đòi hỏi phải thực hiện nhiều tác vụ phức tạp. Các tác vụ này bao gồm làm sạch dữ liệu để loại bỏ các bản ghi không hợp lệ, điền các giá trị bị thiếu bằng các phương pháp thống kê, và chuyển đổi dữ liệu về cùng một định dạng chuẩn. Ví dụ, cần chuyển đổi các cột chứa giá trị số nhưng đang ở định dạng chuỗi sang kiểu số để thực hiện các phép tính. Đây là một công việc đòi hỏi sự tỉ mỉ và kiến thức về xử lý dữ liệu, và nó chiếm một phần lớn thời gian trong bất kỳ dự án khoa học dữ liệu nào.

2.2. Bỏ lỡ thông tin chi tiết từ hành vi mua sắm của khách

Phân tích thủ công thường chỉ tập trung vào các chỉ số bề mặt như tổng doanh thu hay số lượng sản phẩm bán ra. Cách tiếp cận này bỏ lỡ những hiểu biết sâu sắc về hành vi khách hàng. Ví dụ, một doanh nghiệp có thể không nhận ra rằng 70% khách hàng mua sản phẩm A cũng có xu hướng mua sản phẩm B trong vòng một tuần. Thông tin này rất quan trọng để thiết kế các chương trình khuyến mãi chéo hoặc sắp xếp layout cửa hàng. Tương tự, việc xác định các nhóm khách hàng khác nhau dựa trên thói quen mua sắm (ví dụ: khách hàng mua thường xuyên với giá trị thấp so với khách hàng mua không thường xuyên nhưng giá trị cao) là bất khả thi nếu không có các kỹ thuật phân khúc khách hàng. Các thuật toán máy học có thể tự động phát hiện những mẫu phức tạp này, giúp doanh nghiệp hiểu rõ hơn về từng đối tượng khách hàng và đưa ra các chiến lược kinh doanh phù hợp.

III. Phương pháp khai phá dữ liệu để tìm hiểu hành vi khách

Để vượt qua các thách thức của phân tích thủ công, các phương pháp khai thác dữ liệu tiên tiến được áp dụng để khám phá tri thức ẩn. Một trong những kỹ thuật phổ biến nhất trong phân tích doanh số bán hàngPhân tích giỏ hàng (Market Basket Analysis). Kỹ thuật này nhằm mục đích tìm ra các quy tắc kết hợp, tức là xác định các nhóm sản phẩm thường được mua cùng nhau. Ví dụ kinh điển là mối liên hệ giữa tã và bia. Thông qua phân tích, các siêu thị phát hiện ra rằng những người đàn ông đi mua tã cho con vào cuối tuần thường mua kèm bia. Dựa trên phát hiện này, họ có thể đặt hai sản phẩm này gần nhau để tăng doanh số. Để thực hiện phân tích giỏ hàng, thuật toán Apriori là một lựa chọn kinh điển và hiệu quả. Nó hoạt động bằng cách xác định các tập sản phẩm phổ biến (frequent itemsets) trong các giao dịch. Ngoài ra, để hiểu sâu hơn về khách hàng, kỹ thuật phân khúc khách hàng (customer segmentation) được sử dụng. Bằng cách áp dụng các thuật toán như thuật toán K-Means, doanh nghiệp có thể nhóm các khách hàng có hành vi tương tự vào cùng một cụm, từ đó xây dựng các chiến lược marketing cá nhân hóa hiệu quả hơn.

3.1. Phân tích giỏ hàng để khám phá sản phẩm liên quan

Phân tích giỏ hàng (hay Market Basket Analysis) là một kỹ thuật khai thác dữ liệu được sử dụng rộng rãi trong ngành bán lẻ. Mục tiêu chính là khám phá mối liên hệ giữa các mặt hàng khác nhau dựa trên lịch sử giao dịch của khách hàng. Kết quả của phân tích này là các luật kết hợp có dạng "Nếu khách hàng mua {Sản phẩm A}, thì họ cũng có khả năng mua {Sản phẩm B}". Sức mạnh của một luật được đo bằng hai chỉ số chính: Support (Độ hỗ trợ) và Confidence (Độ tin cậy). Support cho biết tần suất xuất hiện của một nhóm sản phẩm trong tất cả các giao dịch. Confidence cho biết xác suất có điều kiện, ví dụ, nếu khách hàng đã mua A, xác suất họ mua B là bao nhiêu. Ứng dụng của kỹ thuật này rất đa dạng, từ việc tối ưu hóa cách bố trí sản phẩm trên kệ hàng, thiết kế các gói combo, đến xây dựng hệ thống gợi ý sản phẩm trên các trang thương mại điện tử.

3.2. Áp dụng thuật toán Apriori tìm các tập phổ biến

Thuật toán Apriori là thuật toán nền tảng để tìm các tập hợp phổ biến (frequent itemsets) trong một cơ sở dữ liệu giao dịch lớn, là bước đầu tiên trong việc tạo ra các luật kết hợp. Nguyên lý cốt lõi của Apriori là "tính chất đóng xuống" (downward closure property): nếu một tập hợp sản phẩm là phổ biến, thì tất cả các tập con của nó cũng phải phổ biến. Ngược lại, nếu một tập hợp sản phẩm không phổ biến, thì bất kỳ tập hợp nào chứa nó cũng sẽ không phổ biến. Dựa trên nguyên lý này, Apriori giúp cắt tỉa không gian tìm kiếm một cách hiệu quả, tránh phải duyệt qua tất cả các tổ hợp sản phẩm có thể. Thuật toán hoạt động theo từng bước, bắt đầu từ việc tìm các sản phẩm đơn lẻ phổ biến, sau đó kết hợp chúng để tạo ra các cặp sản phẩm, rồi các bộ ba, và cứ thế tiếp tục. Đây là một phương pháp kinh điển và hiệu quả trong khai phá dữ liệu.

3.3. Kỹ thuật phân khúc khách hàng với thuật toán K Means

Phân khúc khách hàng (customer segmentation) là quá trình chia tập hợp khách hàng thành các nhóm nhỏ hơn có các đặc điểm hoặc hành vi tương tự. Mục đích là để doanh nghiệp có thể tiếp cận từng nhóm một cách hiệu quả hơn. Thuật toán K-Means là một trong những thuật toán gom cụm (clustering) phổ biến nhất được sử dụng cho mục đích này. K-Means hoạt động bằng cách phân chia dữ liệu thành K cụm (cluster) định trước, sao cho mỗi điểm dữ liệu thuộc về cụm có tâm (centroid) gần nhất. Ví dụ, doanh nghiệp có thể phân khúc khách hàng dựa trên mô hình phân tích RFM (Recency, Frequency, Monetary). Bằng cách áp dụng K-Means trên dữ liệu RFM, doanh nghiệp có thể xác định các nhóm như "khách hàng VIP", "khách hàng tiềm năng", hay "khách hàng có nguy cơ rời bỏ", từ đó có những hành động chăm sóc phù hợp.

IV. Cách thực thi đồ án phân tích doanh số bán hàng với Python

Việc thực thi một đồ án phân tích doanh số bán hàng trở nên hiệu quả và mạnh mẽ hơn khi sử dụng ngôn ngữ lập trình Python và hệ sinh thái các thư viện phong phú của nó. Quy trình thực hiện điển hình bắt đầu với việc thu thập và nạp dữ liệu. Thư viện Pandas là công cụ không thể thiếu cho bước này, cho phép đọc nhiều định dạng file khác nhau và tạo ra một cấu trúc dữ liệu DataFrame linh hoạt. Sau khi có dữ liệu, bước quan trọng tiếp theo là tiền xử lý dữ liệu. Quá trình này bao gồm làm sạch các giá trị rỗng, chuyển đổi kiểu dữ liệu, và tạo ra các cột mới (feature engineering) để phục vụ cho phân tích. Ví dụ, từ cột ngày tháng giao dịch, có thể trích xuất ra thông tin về tháng, ngày trong tuần, hoặc giờ. Khi dữ liệu đã sạch, bước trực quan hóa dữ liệu được thực hiện bằng các thư viện như Matplotlib hoặc Seaborn. Việc vẽ các biểu đồ giúp nhanh chóng nắm bắt các xu hướng chính. Cuối cùng, các thuật toán máy học từ thư viện Scikit-learn có thể được áp dụng để xây dựng các mô hình dự đoán hoặc phân loại. Việc cung cấp code đồ án rõ ràng, có chú thích đầy đủ là một phần quan trọng để minh chứng cho kết quả nghiên cứu.

4.1. Quy trình xử lý và làm sạch dataset bán hàng thực tế

Trong một dự án thực tế, bước đầu tiên là sử dụng Python cho phân tích dữ liệu. Thư viện Pandas được dùng để đọc một hoặc nhiều file CSV chứa dữ liệu bán hàng hàng tháng và gộp chúng thành một DataFrame duy nhất. Sau đó, cần kiểm tra và xử lý các giá trị bị thiếu (NaN). Một phương pháp phổ biến là loại bỏ hoàn toàn các hàng chứa giá trị rỗng. Tiếp theo, cần đảm bảo các cột có kiểu dữ liệu phù hợp. Ví dụ, cột 'Quantity Ordered' và 'Price Each' cần được chuyển đổi sang kiểu số (numeric) để có thể thực hiện các phép tính toán. Từ đó, một cột 'Sales' mới có thể được tạo ra bằng cách nhân hai cột này. Việc trích xuất thông tin hữu ích từ các cột hiện có cũng rất quan trọng, chẳng hạn như tách thông tin thành phố từ cột địa chỉ để phân tích doanh số theo khu vực. Quá trình này đảm bảo dữ liệu đầu vào cho mô hình phân tích là chính xác và đáng tin cậy.

4.2. Trực quan hóa dữ liệu bán hàng bằng thư viện Matplotlib

Trực quan hóa dữ liệu là một bước không thể thiếu để truyền tải kết quả phân tích một cách hiệu quả. Thư viện Matplotlib trong Python cung cấp một loạt các công cụ mạnh mẽ để tạo ra các biểu đồ tĩnh, động và tương tác. Trong đồ án phân tích doanh số bán hàng, các biểu đồ thường được sử dụng bao gồm: biểu đồ cột (bar chart) để so sánh doanh số giữa các tháng hoặc các thành phố; biểu đồ đường (line chart) để thể hiện xu hướng bán hàng theo giờ trong ngày; và biểu đồ tròn (pie chart) để biểu diễn tỷ trọng doanh thu của các sản phẩm. Việc trực quan hóa giúp trả lời các câu hỏi kinh doanh quan trọng một cách nhanh chóng, ví dụ: "Tháng nào có doanh số cao nhất?" hay "Thời điểm nào trong ngày nên chạy quảng cáo để đạt hiệu quả tốt nhất?". Các biểu đồ cần được trình bày rõ ràng, có đầy đủ tiêu đề, nhãn cho các trục để người xem dễ hiểu.

4.3. Cung cấp code đồ án tìm sản phẩm bán chạy cùng nhau

Để tìm ra các sản phẩm thường được bán cùng nhau, có thể áp dụng logic của Market Basket Analysis ngay trong Python. Phần code đồ án cho tác vụ này thường bao gồm các bước: Đầu tiên, nhóm các sản phẩm theo cùng một mã đơn hàng (OrderID). Sau đó, sử dụng các hàm từ thư viện itertoolscollections để tạo ra các cặp sản phẩm và đếm tần suất xuất hiện của chúng. Bằng cách lặp qua tất cả các đơn hàng có nhiều hơn một sản phẩm, một danh sách các cặp sản phẩm được mua chung và số lần chúng xuất hiện cùng nhau sẽ được tạo ra. Kết quả này chính là nền tảng để xác định các luật kết hợp. Ví dụ, kết quả có thể cho thấy cặp {iPhone, Lightning Charging Cable} xuất hiện nhiều nhất, cung cấp một gợi ý rõ ràng cho việc bán kèm hoặc tạo combo sản phẩm. Đoạn code này là một ví dụ điển hình về việc áp dụng thuật toán vào giải quyết bài toán thực tế.

V. Kết quả phân tích và ứng dụng dự báo doanh thu tương lai

Sau khi hoàn thành các bước khai thác dữ liệu, kết quả thu được mang lại nhiều giá trị thực tiễn. Các phát hiện chính từ việc phân tích dữ liệu bán hàng có thể bao gồm việc xác định được tháng cao điểm, thành phố có doanh thu lớn nhất, hoặc khung giờ vàng để chạy quảng cáo. Những thông tin này giúp doanh nghiệp tối ưu hóa hoạt động vận hành và marketing. Tuy nhiên, giá trị của dữ liệu không chỉ nằm ở việc nhìn lại quá khứ. Một ứng dụng nâng cao và cực kỳ quan trọng là dự báo doanh thu (sales forecasting). Bằng cách sử dụng các mô hình dự báo chuỗi thời gian như ARIMA hoặc các mô hình machine learning phức tạp hơn, doanh nghiệp có thể ước tính doanh số trong tương lai. Điều này hỗ trợ đắc lực cho việc lập kế hoạch tồn kho, quản lý chuỗi cung ứng và phân bổ ngân sách. Để trình bày các kết quả phân tích và dự báo một cách chuyên nghiệp, các công cụ Business Intelligence như Power BITableau là lựa chọn hàng đầu, cho phép tạo ra các báo cáo tương tác và dễ hiểu cho cấp quản lý.

5.1. Những phát hiện chính từ việc phân tích dữ liệu bán hàng

Kết quả phân tích từ một dataset bán hàng cụ thể có thể mang lại những thông tin đáng ngạc nhiên. Phân tích theo tháng có thể chỉ ra rằng tháng 12, với các dịp lễ hội, là tháng có doanh thu cao nhất. Phân tích theo địa lý có thể cho thấy San Francisco là thành phố mang lại doanh thu cao nhất do có mật độ dân số cao và sức mua lớn. Một trong những phát hiện thú vị nhất là phân tích theo giờ, có thể cho thấy hai đỉnh điểm mua sắm trong ngày là khoảng 12 giờ trưa và 7 giờ tối. Thông tin này gợi ý rằng đây là thời điểm lý tưởng để đẩy các chiến dịch quảng cáo trực tuyến. Ngoài ra, việc xác định các sản phẩm thường được mua kèm nhau giúp tạo ra các chiến lược bán chéo hiệu quả, góp phần tăng giá trị trung bình của mỗi đơn hàng.

5.2. Giới thiệu mô hình sales forecasting để dự báo doanh số

Dự báo doanh thu (sales forecasting) là quá trình ước tính doanh thu trong tương lai. Đây là một nhiệm vụ quan trọng giúp doanh nghiệp chuẩn bị nguồn lực và xây dựng chiến lược. Có nhiều phương pháp để thực hiện dự báo. Các mô hình thống kê kinh điển như ARIMA (Autoregressive Integrated Moving Average) rất hiệu quả trong việc phân tích dữ liệu chuỗi thời gian, tức là dữ liệu được ghi nhận theo các khoảng thời gian đều đặn. Bên cạnh đó, các mô hình máy học như hồi quy tuyến tính, Random Forest, hoặc các mạng nơ-ron phức tạp hơn như LSTM (Long Short-Term Memory) cũng có thể được sử dụng. Các mô hình này có khả năng học hỏi từ các mẫu phức tạp và xem xét nhiều yếu tố ảnh hưởng cùng lúc (ví dụ: các chiến dịch khuyến mãi, yếu tố mùa vụ) để đưa ra dự báo chính xác hơn.

5.3. Vai trò của Power BI và Tableau trong báo cáo quản trị

Trong khi Matplotlib rất tốt cho việc phân tích và khám phá dữ liệu ban đầu, các công cụ Business Intelligence (BI) chuyên dụng như Power BITableau đưa việc báo cáo lên một tầm cao mới. Các công cụ này cho phép kết nối với nhiều nguồn dữ liệu khác nhau và tạo ra các bảng điều khiển (dashboard) tương tác. Người dùng có thể dễ dàng lọc, sắp xếp, và đi sâu vào dữ liệu chỉ bằng vài cú nhấp chuột. Thay vì một loạt các biểu đồ tĩnh, nhà quản lý có thể tự mình khám phá dữ liệu, tìm ra các câu trả lời cho những câu hỏi kinh doanh phát sinh. Ví dụ, họ có thể xem hiệu suất bán hàng của một sản phẩm cụ thể tại một khu vực nhất định trong một khoảng thời gian tùy chọn. Việc sử dụng Power BI hoặc Tableau giúp các báo cáo trở nên chuyên nghiệp, trực quan và hỗ trợ ra quyết định nhanh chóng, hiệu quả hơn.

11/09/2025
Đồ án môn học khai thác dữ liệu và ứng dụng đề tài phân tích doanh số bán hàng của doanh nghiệp

Trích đoạn nội dung tài liệu

CHƯƠNG 1 : CO SO LY THUYET |. Phân tích thị trường Mục tiêu của MBA là tìm mối liên hệ (mối quan hệ) giữa các nhóm mục xuất hiện trong cơ sở dữ liệu giao dịch 4 bắt nguồn từ việc phân tích đữ liệu tại điểm bán hàng, như trong các siêu thị 4 nhưng, đã tìm thấy các ứng đụng trong nhiều lĩnh vực khác Khám phá quy tắc kết hợp 4 Loại kỹ thuật PTTT phô biến nhất 4 Tìm tât cả các quy tắc liên kêt sự hiện diện của một tập hợp các phân tử với sự hiện diện của một tập hợp các phần tử khác. 4 Ví dụ: 98% người mua lốp xe và phụ kiện ô tô cũng nhận được dịch vụ ô tô 4 Chúng ta quan tâm đến các quy tắc Không tầm thường (có thê bất ngờ) Có thê hành động Dễ giải thích 1. Luật kết hợp Dạng chung: 4 Body ==> Head 4 Độ hỗ trợ (support) và độ tín cậy (confidence) Thường được báo cáo cùng với các quy tắc Các số liệu cho biết sức mạnh của các liên kết mặt hàng 2.

Examples: {diaper, milk} ==> {beer} [support: 0.5%, confidence: 78%] buys(x, "bread") /\ buys(x, “eggs") ==> buys(x, "milk") [sup: 0.6%, conf: 65%] major(x, "CS") /\ takes(x, "DB") ==> grade(x, "A") [1%, 75%] age(X,30-45) A income(X, 50K-75K) ==> owns(X, SUV) ape= “30-45”, meome=“50K-75K” ==> car=“SUV” 3. Association Rules — Khai niém co ban Let D be database of transactions - e. 1: Transactions « Đặt I là tập hợp các mục xuất hiện trong cơ sở đữ liệu, ví dụ:, I={A,B,C.F} - Mỗi giao tac t la tap con cua | * Một rule là một hàm ÿ nghĩa giữa itemsets X và Y, có dạng X 9 Y, với Xcl, Ycl, va X¬Y=Ø —- @.: {B,C} ô {A} là một rule 4. Association Rules — Basic Concepts s ltemset — Tap một hay nhiều sản phẩm ° E.: {MIIk, Bread, Diaper} — k-itemset * Một Itemset mà k items * Support count (G}) — Tần suất xuất hiện của một tập Itemset (số lượng giao dịch mà nó xuất hiện) — E.

o({Milk, Bread, Diaper}) = 2 Support — Phan cua cac giao dich trong đó một tập mục xuất hién —E. s({Milk, Bread, Diaper}) = 2/5 Frequent ltemset — | itemset ma support >= nguéng minsup Association Rules — Basic Concepts Association Rule X © Y, khi X va Y la nhitng itemsets riéng biét {Milk, Diaper} > {Beer} Đánh giá luật Support (s) Tỷ lệ giao tác chứa X và Y i., support of the itemset X U Y Confidence (c) Tần suất các items trong Y xuất hiện trong giao tác có X (Y và X xuất hiện cùng nhau so với một mình X xuất hiện) Association Rules — Basic Concepts Một cách giải thích khác về độ hỗ trợ và độ tin cậy cho X © Y — Support la xác suất | giao tac chira {X U Y} or Pr(X AY) support(X > Y) = support(X U Y) = o(X u Y) / |DI — Confidence la xac suất có điêu kiện một giao tác có Y với điêu kiện có X or Pr(Y | X) confidence(X 9 Y) = o(X u Y) / o(X) = support(X U Y) / support(X) Support & Confidence - Example Support(X > Y) = support(X Uv Y) = ø(X vu Y)/|D| Confidence(X > Y) = o(X U Y)/ o(X) = support(X U Y) / support(X) Hình 1. 2: Steps in Association Rule Discovery 1. Tim cac tap frequent itemsets (item sets are the sets of items that have minimum support) 2.

Su dung cac tap frequent itemsets dé tạo các association rules Thuật toán vét cạn: +» Liệt kê và tính độ support cho toàn bộ 1temsets + Tao tat ca cac luat tir cc frequent itemsets + Loại bỏ các luật dưới ngưỡng minconf threshold Có bao nhiêu itemsets? Hình 1. Solution: The Apriroi Principle * Support 1s “downward elosed” # Nếu | itemset là frequent (đáp ứng độ support), thì tất cả tap con ciing la frequent o Néu {AB} la | frequent itemset, ca {A} va {B} la frequent itemsets # Điều này là do tính chất anti-monotone cua d6 support VXY:(ŒXcY)=s(X)>s(Y) Cho nên: Nếu I itemset không thỏa ngưỡng minimum support, các tập itemset chứa nó cũng không thỏa ® Dựa vào điều này ta có thể cắt tỉa không gian tìm kiếm) Hình 1. 4: The Apriori Principle Rút gọn dựa vào độ tin cậy Hình 1. Giải thuật Apriori Ck : Candidate itemset of size k Lk : Frequent itemset of size k Hinh 1.6: Join Step: Ck is generated by joining Lk-1with itself Prune Step: Any (k-1)-itemset that is not frequent cannot be a subset of a frequent k- itemset Example of Generating Candidates L3 ={abc, abd, acd, ace, bcd} Self-joining: L3*L3 abcd from abc and abd acde from acd and ace Pruning: acde is removed because ade is not in L3 C4 = {abcd} Apriori Algorithm - An Example Assume minimum support = 2 Tap “frequent” item sets sau củng thuộc về L2 và L3.

Tuy nhién, {2,3}, {2,5}, va {3,5} ton tai trong tap item set lớn hơn là {2, 3, 5}. Cho nên, kết quả tập item sets sau cùng của thuật toán Apriori la {1,3} va {2,3,5}. Đây là tập itemset duy nhat ma tir do chúng ta sẽ tạo ra các luật kết hợp. 7 : Tao Association Rules ttr tap Frequent Itemsets Chỉ các luật kết hợp mạnh được tạo ra Frequent itemsets thoa nguGng minimum support threshold Cac rules manh thoa cac nguéng minimum confidence threshold confidence(A© B) = Pr(B | A) = For each frequent itemset, f, generate all non-empty subsets off For every non-empty subset s off do if support(f)/support(s) > min_confidence then output rule s ==> (f-s) end Generating Association Rules (Example Continued) Item sets: {1,3} va {2,3,5} Nhu da hoc confidence cua rule LHS 0 RHS 1a Support cua itemset (i.

LHS U RHS) chia cho support cua LHS. 8: Frequent Patterns Without Candidate Generation Bottlenecks of the Apriori approach Breadth-first (i., level-wise) search Candidate generation and test (Often generates a huge number of candidates) The FPGrowth Approach (J. Yin, 2000) Depth-first search; avoids explicit candidate generation Basic Idea: Grow long patterns from short ones using locally frequent items only “abc” is a frequent pattern; get all transactions having “abc” *đ” 1s a local frequent item in DB|abc > abcd is a frequent pattern Approach: Use a compressed representation of the database using an FP-tree Once an FP-tree has been constructed, it uses a recursive divide-and-conquer approach to mine the frequent itemsets Extensions: Multiple-Level Association Rules Items often form a hierarchy Items at the lower level are expected to have lower support Rules regarding itemsets at appropriate levels could be quite useful Transaction database can be encoded based on dimensions and levels Hình 1. 9: Mining Multi-Level Associations A top_down, progressive deepening approach First find high-level strong rules: > milk — bread [20%, 60%] Then find their lower-level “weaker” rules: 2% milk > wheat bread [6%, 50%] When one threshold set for all levels; if support too high then it is possible to miss meaningful associations at low level; if support too low then possible generation of uninteresting rules different minimum support thresholds across multi-levels lead to different algorithms (e., decrease min-support at lower levels) Variations at mining multiple-level association rules 4Level-crossed association rules: milk + wonder wheat bread Association rules with multiple, alternative hierarchies: 2% milk > wonder bread Extensions: Quantitative Association Rules Handling quantitative rules may requires discretization of numerical attributes Associations in Text / Web Mining Document Associations Find (content-based) associations among documents in a collection Documents correspond to items and words correspond to transactions Frequent itemsets are groups of docs in which many words occur in common Term Associations Find associations among words based on their occurrences in documents Similar to above, but invert the table (terms as items, and docs as transactions) Associations in Web Usage Mining Association Rules in Web Transactions Discover affinities among sets of Web page references across user sessions 10 Examples 60% of clients who accessed /products/, also accessed / products / software / webminer.htm 30% of clients who accessed /special-offer.html, placed an online order in /products/software/ Actual Example from IBM official Olympics Site: {Badminton, Diving} ==> {Table Tennis} [conf = 69.35%] Applications Use rules to serve dynamic, customized contents to users Prefetch files that are most likely to be accessed Determine the best way to structure the Web site (site optimization) Targeted electronic advertising and increasing cross sales 7.

Associations in Recommender Systems Il. Mining Frequent Patterns II: Mining Sequential & Navigational Patterns 1. Sequential pattern mining Khai phá luật kết hợp không xem xét thứ tự của các giao dich. Trong nhiều ứng dụng, thứ tự lại rất quan trọng.

VD: 11 Trong phân tích thị trường, thật thú vị khi biết liệu mọi I8ƯỜời có mua một số mặt hàng theo trình tự, VD, mua giường trước rồi một thời gian sau mua ga trải giường. Trong khai thác sử dụng Web, rất hữu ích khi tìm các pattern về các đường hướng truy cập của người dùng trong một trang Web từ các chuỗi truy cập trang của người dùng 2. Sequential Patterns Extending Frequent ltemsets Cac Sequential patterns b6 sung thém sé chiéu (dimension) vao frequent itemsets va association rules — thoi gian. Trước, sau, cùng lúc xuất hiện.

Dạng thức: “x% thời gian, khi A xuất hiện trong l transaction, B xuất hiện trong z transactions.” Lưu ý rằng các mục khác có thê xuất hiện giữa A và B, vi vậy các mẫu tuần tự không nhất thiết ngụ ý sự xuất hiện liên tiếp của các mục (về mặt thời gian) Examples Thuê “Star Wars”, sau đó “Emprre Strikes Back”, sau đó “Return of the Jedi” Tập hợp các sự kiện được sắp xếp trong một khoảng thời gian Hầu hết các thuật toán khám phá mẫu tuần tự đều dựa trên phần mở rộng của thuật toán Apriori đề khám phá các tập mục Navigational Patterns Một dạng thức đặc biệt của sequential patterns phi nhận patterns đường hướng truy cập của người dùng web 1 session duoc xem nhu | don vi thoi gian Objective Cho | tap S là tap input data sequences, bai toan mining sequential patterns 1a tim tat cả sequences thỏa độ support tối thiêu Sequence như vậy được gọi là một frequent sequence, hay một sequential pattern Độ support của | sequence ty 1é data sequences trong S c6 chira sequence nay 12 Sequence Databases Một sequence database một danh sách elements hay events Mỗi element co thé là một tập items hay một item lẻ (tập 1 item) Transaction databases và sequence databases Subsequence va super sequence M6Ot sequence la mét danh sach cac events, ky hiéu la<el e2. el > Cho 2 sequences o=<al a2. an > va B=< bl b2. bm > a dugc goi la mét subsequence cua B, ky hiéu la a& B, néu ton tai các số nguyên I< jI <j2 <.<jn <m sao cho al € bj1, a2 € bỊ2,., an C bịn Examples: < (ab), d> là một subsequence cua < (abc), (de)> (3, (4, 5), 8) la m6t subsequence của) (6, (3, 7), 9, (4, 5, 8), 3, 8)) C <a.html> Sequential Pattern Mining la gi? Cho một tập các sequences va support threshold, tim tap frequent subsequences 13 3.

Another Example Transactions duoc xếp theo Customer ID Example (continued) 14 GSP mining algorithm Tương tự Apriori algorithm 4. Sequential Pattern Mining Algorithms Apriori-based method: GSP (Generalized Sequential Patterns: Srikant & Agrawal, 1996) Pattern-growth methods: FreeSpan & PrefixSpan (Han et al., 2000; Pei, et al.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ