1. Trang chủ
  2. » Luận Văn - Báo Cáo

Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (tt)

61 124 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 61
Dung lượng 1,88 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc (Luận văn thạc sĩ)

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

TP HỒ CHÍ MINH - 2018

Trang 2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: TS TÂN HẠNH

(Ghi rõ học hàm, học vị)

Phản biện 1: ………

Phản biện 2: ………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc

sĩ tại Học viện Công nghệ Bưu chính Viễn thông

Vào lúc: giờ ngày tháng năm

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Trang 3

Ngoài ra, trong kinh doanh yếu tố khách hàng đóng vai trò hết sức quan trọng và quyết định đến sự thành bại của doanh nghiệp nói chung và các chiến lược kinh doanh của doanh nhiệp nói riêng, khi thông tin đang trở thành yếu tố quyết định trong kinh doanh thì vấn đề tìm ra các thông tin hữu ích trong các CSDL khổng lồ ngày càng trở thành mục tiêu quan trọng của các doanh nghiệp Vì vậy một trong những giải pháp hữu hiệu nhất nhằm khắc phục các vấn đề nêu trên là tiến hành triển khai xây dựng một hệ thống khai phá dữ liệu, khai thác quản lý nguồn khách hàng nói trên Đó là một hệ thống được thiết kế giúp cho lãnh đạo doanh nghiệp nắm bắt được nguồn thông tin khách hàng hữu ích và các tri thức chiết xuất được từ CSDL trên sẽ là một nguồn tài liệu hỗ trợ cho lãnh đạo xây dựng chiến lược kinh doanh Chính vì những lý do nêu trên, tôi quyết định

chọn đề tài “Phân loại nhóm khách hàng bằng luật kết hợp cho hệ thống bán hàng Chay Âu Lạc”

Trang 4

CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 1.1 Tổng quan về tình hình nghiên cứu đề tài

Tại chay Âu Lạc, có rất nhiều mặt hàng, ví dụ như thực phẩm đóng hộp chay, đóng gói chay, … khách hàng khi đi đến siêu thị sẽ bỏ vào giỏ mua hàng của họ một số mặt hàng nào đó, và chúng ta muốn tìm hiểu các khách hàng thường mua những mặt hàng nào đồng thời, chúng ta thậm chí không quan tâm khách hàng cụ thể là ai Nhà quản

lý dùng những thông tin này để điều chỉnh việc nhập hàng về siêu thị, hay đơn giản là để

bố trí sắp xếp các mặt hàng gần nhau, hoặc bán các mặt hàng đó theo một gói hàng, giúp cho khách hàng đỡ mất công tìm kiếm và lựa chọn mặt hàng đễ dàng hơn

Khi phân tích các giao dịch khách hàng thông qua giỏ hàng mua bán bằng cách sử dụng thuật toán data mining như: Apriori, Kmeans … sẽ giúp chúng có thể biết được những sản phẩn nào sẽ được mua chung một giỏ hàng với nhau và đây cũng cách để biết một sản phẩm nào đó sẽ được mua chung với một sản phẩm khác Khi đã có thông tin, chúng ta có thể thực hiện một số công việc để tăng số lượng khách hàng mua những sản phẩm đó lên Các công việc có thể là thay đổi cách bố trí sản phẩm cho việc tăng doanh

số Chúng ta có thể xem các sản phẩm trong giỏ hàng sản phẩm nào có nhiều lợi nhuận hơn, có thể đưa ra các hình thức khuyến mãi để khuyến khích mua những loại sản phẩm này

Ngoài ra, chúng ta đang sống trong một nền kinh tế mà khách hàng là thượng đế Một thực tế là hiện nay, không chỉ có một hay vài người bán mà có rất nhiều người bán cùng một sản phẩm Khách hàng có nhiều sự lựa chọn hơn Điều cần làm của một nhà quản lý, người lãnh đạo giỏi chính là làm sản phẩm của bạn đặc biệt hơn sản phẩm các doanh nghiệp khác và thuyết phục khách mua hàng Từ những dữ liệu bán hàng, chúng ta hoàn toàn có thể phân loại được những đối tượng khách hàng khác nhau, độ tuổi khác nhau, nghề nghiệp khác nhau, …

Từ những dữ liệu phân tích được, khách hàng sẽ được phân loại theo: nhóm khách hàng (doanh nghiệp, các nhân), độ tuổi, sở thích, … từ đó nhà quản lý sẽ chủ động hơn trong việc đưa ra các quyết định sản xuất, kinh doanh hướng tới nhóm khách hàng đó

Trang 5

Mặt khác, giữa một chuỗi các doanh nghiệp cùng bán dòng sản phẩm với chất lượng, giá thành và kiểu dáng tương tự, việc chăm sóc khách hàng lúc này đóng vai trò quyết định Vì vậy việc phân loại nhóm khách hàng thật sự rất cần thiết và cấp bách Luận văn sẽ đi sâu vào tìm hiểu các thuật toán: Apriori, Kmeans, … cài đặt và ứng dụng thuật toán vào thực tế tại công ty thực phẩm chay Âu Lạc

Đồng thời, luận văn cũng tìm hiểu và đề xuất cải tiến giải thuật để tối ưu cho phân tích thị trường, phân loại khách hàng và cho ra kết quả phân tích chính xác hơn

1.2 Mục đích nghiên cứu

Xây dựng ứng dụng phân loại nhóm khách hàng cho phép:

- Xác định các luật kết hợp giữa các sản phẩm

- Phân loại nhóm khách hàng theo độ tuổi, địa lý, …

- Mối quan hệ giữa các nhóm khách hàng với các sản phẩm

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

Đối tượng nghiên cứu:

- Đối tượng nghiên cứu được sử dụng trong bài luận này là tập dữ liệu được trích xuất từ dữ liệu bán hàng năm 2016 và 2017 tại Âu Lạc

Phạm vi nghiên cứu:

- Tập trung nghiên cứu các thuật toán: Apriori, Kmeans trong data mining

- Cài đặt và áp dụng vào thực tế tại Âu Lạc

- Tìm hiểu công cụ R để thực nghiệm và đối chiếu so sánh kết quả với phần mềm tự phát triển

1.4 Phương pháp nghiên cứu

- Nghiên cứu lý luận: tập trung nghiên cứu các vấn đề cơ bản về khai phá dữ liệu, tổng hợp tài liệu, phân tích và xử lý dữ liệu

- Phương pháp nghiên cứu tài liệu: Phân tích và tổng hợp các tài liệu về khai phá

dữ liệu sử dụng thuật toán về Apriori, Kmeans

Trang 6

- Phương pháp thực nghiệm: Ứng dụng kết hợp kỹ thuật phân loại và mô hình cây quyết định để phân loại khách hàng

1.5 Cấu trúc của luận văn

Toàn bộ nội dung luận văn được chia thành 3 chương:

Chương 1: Tổng quan đề tài: Chương này sẽ trình bảy tổng quan về đề tài bao

gồm mục tiêu nghiên cứu, đối tượng và phạm vi nghiên cứu, phương pháp nghiên cứu và giới thiệu về Chay Âu Lạc

Chương 2: Lý thuyết dự đoán dựa trên khai phá dữ liệu: Chương này trình bày

tìm hiểu về các quy trình bán hàng và tình hình bán hàng tại hệ thống chay Âu Lạc Từ tình hình đó đưa ra vấn đề cần giải quyết, và việc phân tích xây dựng hệ thống

Chương 3: Xây dựng và thực nghiệm: Chương cuối này sẽ trình bày quá trình

phân tích chức năng và tổ chức tổng thể hệ thống Qua đó, đặc tả việc xây dựng hệ thống

và thực nghiệm hệ thống

1.6 Giới thiệu thực phẩm Chay Âu Lạc

Hơn 20 năm hình thành và phát triển, thương hiệu thực phẩm chay “Âu Lạc” đã khẳng định được uy tính của mình trên thị trường trong nước và quốc tế Thương hiệu thực phẩm chay Âu Lạc đã tạo được uy tín hàng đầu Việt Nam về dây chuyền sản xuất thực phẩm chay Với phương châm “chất lượng hàng đầu”, công ty cam kết luôn cung cấp những sản phẩm chất lượng cao nhất Bên cạnh đó, vệ sinh an toàn thực phẩm cũng

là tiêu chí hàng đầu mà Âu Lạc đặt ra trước khi đưa sản phẩm ra thị trường Công ty luôn quan tâm đến sức khỏe của người tiêu dùng và công nghệ thân thiện với môi trường xanh Các nhóm sản phẩm chính của công ty gồm có: sản phẩm lạnh, sản phẩm ăn liền, sản phẩm khô, sản phẩm gia vị, sản phẩm nước, sản phẩm đóng hộp

Trang 7

Hình 1: Cửa hàng chay Âu Lạc

Thực phẩm chay Âu Lạc hiện không chỉ có mặt trên khắp các chợ, siêu thị, nhà hàng Việt Nam, mà còn xuất khẩu sang các nước Mỹ, Canada, Úc, Đức, Anh… Sản phẩm công ty đa dạng phong phú và không ngừng cải tiến, nâng cao chất lượng Công ty thực phẩm chay Âu Lạc đã đạt được nhiều thành tích và danh hiệu uy tín trong nước Công ty luôn nỗ lực phấn đấu để xứng đáng với sự tin cậy của khách hàng, các đối tác trong và ngoài nước

Với hệ thống siêu thị và chuỗi cửa rộng khắp cả nước, hệ thống phân phối chuyên nghiệp, thực phẩm chay Âu Lạc hiện tại đang là công ty tiên phong trong việc sản xuất, phân phối trực tiếp đến người tiêu dùng

Trang 8

Hiện nay, chay Âu Lạc đã có 87 show room phủ rộng khắp cả nước và đang tiến hành mở rộng chuỗi phân phối thực phẩm chay của mình qua các nước láng giếng như Campuchia, Lào, …

Hình 2: Quy trình bán hàng tại chay Âu Lạc

Trang 9

CHƯƠNG 2: LÝ THUYẾT DỰ ĐOÁN DỰA TRÊN KHAI PHÁ DỮ LIỆU

Trong chương này, luận văn sẽ trình bày các cơ sở lý thuyết làm nền tảng để xây dựng ứng dụng, bao gồm những nội dung sau:

- Giới thiệu tổng quan về kỹ thuật khai phá dữ liệu

- Ứng dụng của khai phá dữ liệu trong lĩnh vực bán hàng

- Trình bày tổng quan về thuật toán Apriori, Kmeans và sử dụng Apriori, Kmeans trong việc tìm luật kết hợp và phân loại nhóm khách hàng

2.1 Khái niệm dự đoán

Khai phá dữ liệu (Data mining) là quá trình tìm kiếm các mẫu mới, những thông tin tiềm ẩn mang tính dự đoán trong các khối dữ liệu lớn

Khai phá dữ liệu là một lĩnh vực liên ngành, nơi hội tụ của nhiều học thuyết và công nghệ

Hình 3: Mối tương quan của khai phá dữ liệu với các ngành khác

Trang 10

Sự phát triển nhanh chóng của các các công nghệ trong thời đại hiện nay đã và đang tạo ra nguồn dữ liệu khổng lồ, ẩn chứa bên trong là vô số dữ liệu có ích cho cuộc sống (sức khoẻ, môi trường, tình hình kinh tế, …) Và cùng với khoa học ngày càng phát triển

đã cho ra đời ngành Khoa học dữ liệu và trong đó Khai thác dữ liệu là lĩnh vực phát triển nhanh chóng nhất Khai thác dữ liệu là quá trình tìm kiếm các mẫu từ tập dữ liệu lớn và phân tích dữ liệu từ những quan điểm khác nhau Nó cho phép người dùng trong doanh nghiệp phân tích dữ liệu từ nhiều góc độ khác nhau và tóm tắt các nhận xét trên mạng xã hội

Khái niệm về khai phá dữ liệu hay khám phá tri thức (Knowledge Discovery) có rất nhiều cách diễn đạt khác nhau nhưng về bản chất đó là quá trình tự động trích xuất thông tin có giá trị (Thông tin dự đoán - Predictive Information) ẩn chứa trong khối lượng dữ liệu khổng lồ trong thực tế

Một cách nhìn đơn giản về Khai thác dữ liệu:

Hình 4: Minh hoạ khai thác dữ liệu

(Nguồn: https://www.linkedin.com/)

 Chuẩn bị dữ liệu để cho máy tính “học” (Data)

 Xây dựng mô hình thông qua dữ liệu đầu vào (Algorithm)

 Đánh giá mô hình vừa mới xây dựng (Model)

Data mining nhấn mạnh 2 khía cạnh chính đó là khả năng trích xuất thông tin có ích

tự động (Automated) và thông tin mang tính dự đoán (Predictive).Khai phá dữ liệu

Trang 11

2.2 Khai phá dữ liệu

2.2.1 Quá trình khai phá tri thức từ dữ liệu

Hình 5: Quy trình khai phá tri thức

(Nguồn: https://www.slideshare.net/BasitRafiq/)

Quy trình là chuỗi lặp lại các thao tác:

Làm sạch dữ liệu (Data cleaning): Loại bỏ nhiễu và những giá trị không nhất

quá

Tích hợp dữ liệu (Data intergation): Dữ liệu của nhiều nguồn có thể tổ hợp

lại

Lựa chọn dữ liệu (Data selection): Những dữ liệu phù hợp với phân tích

được trích rút từ nguồn dữ liệu ban đầu

Chuyển đổi dữ liệu (Data transformation): Dữ liệu được chuyển đổi hay

được hợp nhất về dạng thích hợp cho việc khai phá

Khai phá dữ liệu (Data mining): Là tiến trình chính, trong đó các phương

pháp tính toán được áp dụng nhằm trích ra các mẫu dữ liệu

Đánh giá mẫu (Pattem evyalution): Dựa trên các phương pháp đo nhằm xác

định độ chuẩn xác và lợi ích từ các mẫu biểu diễn tri thức

Trang 12

Biễu diễn tri thức (Knowledge presentation): Sử dụng kỹ thuật biểu diễn và

hiển thị tri thức được tổng hợp cho người dùng

2.2.2 Mục tiêu của khai phá dữ liệu

Có thể phân thành 2 loại chính đó là Dự đoán (Predictive) và Mô tả (Descriptive)

o Association Rule Discovery - phát hiện luật kết hợp

Một số thuật toán phổ biến được dùng trong khai phá dữ liệu

 Descision tree: Cây quyết định (Classification Task)

 Nearest Neighbor: Láng giềng gần nhất (Classification Task)

 Neural Network: Mạng Neural (Classification and Clustering Task)

 Rule Induction: Luật quy nạp (Classification Task)

 K-Means: Thuật toán K-Means (Clustering Task)

2.2.3 Các bài toán thông dụng trong khai phá dữ liệu

Trong khai phá dữ liệu, các bài toán có thể phân thành bốn loại chính: Phân lớp (Classification): Là bài toán thông dụng nhất trong khai phá dữ liệu Với một tập các dữ liệu huấn luyện cho trước và sự huấn luyện của con người, các giải thuật phân loại sẽ học ra bộ phân loại (classifier) dùng để phân các dữ liệu mới vào một trong những lớp (còn gọi là loại) đã được xác định trước Nhận dạng cũng là một bài toán thuộc kiểu phân lớp

Dự đoán (Prediction): Với mô hình học tương tự như bài toán Phân lớp, lớp bài toán

Dự đoán sẽ học ra các bộ dự đoán Khi có dữ liệu mới đến, bộ dự đoán sẽ dựa trên thông tin đang có để đưa ra một giá trị số học cho hàm cần dự đoán Bài toán tiêu biểu trong nhóm này là dự đoán giá sản phẩm để lập kế hoạch trong kinh doanh

Trang 13

Luật kết hợp (Association Rule): Các giải thuật tìm luật kết hợp tìm kiếm các mối liên kết giữa các phần tử dữ liệu, ví dụ như nhóm các món hàng thường được mua kèm với nhau trong siêu thị

Phân cụm (Clustering): Các kỹ thuật Phân cụm sẽ nhóm các đối tượng dữ liệu có tính chất giống nhau vào cùng một nhóm Có nhiều cách tiếp cận với những mục tiêu khác nhau trong phân cụm Các tài liệu giới thiệu khá đầy đủ và chi tiết về các cách tiếp cận trong phân cụm Các kỹ thuật trong bài toán này thường được vận dụng trong vấn đề phân hoạch dữ liệu tiếp thị hay khảo sát sơ bộ các dữ liệu

2.2.4 Các Cơ sở dữ liệu phục vụ cho việc khai phá dữ liệu

Dựa vào những kiểu dữ liệu mà kỹ thuật khai phá áp dụng, có thể chia dữ liệu thành các loại khác nhau

- Cơ sở dữ liệu quan hệ

- Cơ sở dữ liệu giao tác

- Cơ sở dữ liệu không gian

- Cơ sở dữ liệu có yếu tố thời gian

- Cơ sở dữ liệu đa phương tiện

2.3 Dự đoán dựa trên khai phá dữ liệu

2.3.1 Ứng dụng của khai phá dữ liệu

Khai phá dữ liệu tuy là một lĩnh vực mới nhưng đã thu hút được sự quan tâm của rất nhiều nhà nghiên cứu, nhờ có nhiều những ứng dụng trong thực tiễn, các ứng dụng điển hình, có thể liệt kê như sau:

- Phân tích dữ liệu và hỗ trợ ra quyết định (Analysis & decision support)

- Điều trị trong y học (Medical): mối liên hệ giữa triệu chứng, chuẩn đoán

và phương pháp điều trị (chế độ dinh dưỡng, thuốc men, phẫu thuật)

- Phân lớp văn bản, tóm tắt văn bản và phân lớp các trang Web (Text mining & Web mining)

Trang 14

- Tin sinh học (Bio-informatics): Tìm kiếm, đối sánh các hệ gen và thông tin di truyền, mối liên hệ giữa một số hệ gen và một số bệnh di truyền

2.3.2 Các thách thức trong khai phá dữ liệu

Tuy đã có rất nhiều các giải pháp và phương pháp được ứng dụng trong khai phá dữ liệu nhưng trên thực tế quá trình này vẫn gặp không ít khó khăn và thách thức như:

- Cơ sở dữ liệu lớn

- Số chiều các thuộc tính lớn

- Thay đổi dữ liệu và tri thức có thể làm cho các mẫu đã phát hiện không còn phù hợp

- Dữ liệu bị thiếu hoặc bị nhiễu

- Quan hệ giữa các trường phức tạp

- Giao tiếp với người sử dụng và kết hợp với các tri thức đã có

- Tích hợp với các hệ thống khác

2.3.3 Các khái niệm cơ bản trong thuật toán Apriori và Kmeans

Một số khái niệm về xác suất

- Việc biến cố ngẫu nhiên xảy ra hay không trong kết qủa của một phép thử là điều không thể biết hoặc đoán trước được Tuy nhiên bằng những cách khác nhau ta có thể định lượng khả năng xuất hiện của các biến cố, gọi là xác suất xuất hiện của biến cố

Trang 15

- Xác suất của một biến cố là một con số đặc trưng khả năng xuất hiện biến cố khi thực hiện phép thử

- Khi thực hiện nhiều lần lặp lại một cách độc lập một phép thử, ta có thể tính ra tần suất xuất hiện của một biến cố nào đó Tần suất thể hiện khả năng xuất hiện của biến cố, với cách tiếp cận này, ta có thể định nghĩa xác suất theo cách thống kê

Định nghĩa xác suất

Giả sử phép thử C thỏa mãn điều kiện:

- Không gian mẫu bao gồm tập số tập hữu hạn các phần tử

- Các kết quả xảy ra cùng khả năng

Khi đó ta có định nghĩa xác suất xảy ra biến cố A là

Các tính chất

(1) Với mọi biến cố A: 0 ≤ P(A) ≤ 1

(2) Xác suất xuất hiện biến cố không thể bằng 0, biến cố chắc chắn bằng 1

Qui tắc xác suất biến cố đối

Với mọi biến cố A

Xác suất có điều kiện

Trang 16

- Xác suất biến cố B xảy ra trong điều kiện biết rằng biến cố A đã xảy ra, được gọi là xác suất của B đối với điều kiện A Kí hiệu P(B|A)

- Tính chất: Nếu P(A)>0 thì

Qui tắc nhân xác suất

- Nếu A,B là hai biến cố độc lập

P(AB) = P(A).P(B)

- Trường hợp tổng quát

P(AB)=P(A).P(B|A)

Định nghĩa luật kết hợp

Khái niệm luật kết hợp được phát biểu lần đầu tiên bởi R Agrawal (1993), và được

hơn 6000 ý kiến tán thành thông qua Google Scholar Trong quyển “Mining Association Rules Between Sets of Items in Large Databases”, R Agrawal đã đưa ra

một định nghĩa về luật kết hợp như sau:

Định nghĩa 1: Cho tập I = {i 1 ,i 2 , … ,i n } là tập n thuộc tính nhị phân gọi là các phần

tử (tên tiếng anh là item) Cho D = {t 1 ,t 2 , … ,t m } là tập các giao tác gọi là cơ sở dữ liệu Mỗi giao tác trong D có một ID duy nhất và chứa tập các mục trong I Một luật được định nghĩa sự kéo theo có dạng X Y trong đó X,Y I và X Y = Tập các mục gọi là tập mục (itemset) X gọi là phần mệnh đề điều kiện(phần bên trái) và

Y gọi là mệnh đề kết quả của luật tương ứng

Ví dụ, trong siêu thị, ta có tập các mục I = {milk, bread, butter, beer} và một cơ sở

dữ liệu chứa các mục (tại mỗi giao tác, giá trị 1 là có mục, giá trị 0 là không có) như sau:

Trang 17

Bảng 1: Table transaction Apriori

Transaction ID milk bread butter beer

Dựa trên ví dụ này, ta có thể suy ra luật {butter, bread}  {milk}, có nghĩa là khi

khách hàng muc butter và bread thì người đó cũng sẽ mua milk

Khái niệm này được xem như tổng quát nhất cho phát biểu về luật liên kết

Các khái niệm quan trọng về luật kết hợp

Để chọn ra các luật có ích từ tập các luật có thể có, ta cần ràng buộc những số đo đảm bảo ý nghĩa Hai ràng buộc được xem là quan trọng nhất, đó là giá trị độ phổ biến và

độ tin cậy tối thiểu

Độ phổ biến

Độ phổ biến (tên tiếng anh là Support – một số tài liệu dịch là độ hỗ trợ) của một

tập mục X được định nghĩa là tỷ lệ các giao tác có chứa tập mục này trong cơ sở

dữ liệu với tổng số các giao tác

Ví dụ, tập mục {milk, bread, butter} có độ phổ biến là 1/5 = 0.2 hay 20% số giao tác

Trang 18

Định nghĩa 2: Độ phổ biến của một tập mục X trong cơ sở dữ liệu D là tỷ số giữa các bản ghi T D có chứa tập X và tổng số bản ghi trong D (hay là phần trăm của các bản ghi trong D có chứa tập mục X), ký hiệu là Support(X) hay Supp(X)

Ta có: 0 ≤ Supp(X) ≤ 1 với mọi tập mục X

Định nghĩa 3: Độ phổ biến của một luật kết hợp XY là tỷ lệ giữa số lượng các bản ghi chứa tập hợp XY, so với tổng số các bản ghi trong D Ký hiệu supp(XY)

Khi chúng ta nói rằng độ hỗ trợ của một luật là 50%, nghĩa là có 50% tổng số giao tác chứa XY Như vậy, độ hỗ trợ mang ý nghĩa thống kê của luật

Trong một số trường hợp, chúng ta chỉ quan tâm đến những luật có độ phổ biến cao (Ví dụ như luật kết hợp xét trong cửa hàng tạp phẩm) Nhưng cũng có trường hợp, mặc dù độ phổ biến của luật thấp, ta vẫn cần quan tâm (ví dụ luật kết hợp liên quan đến nguyên nhân gây ra sự đứt liên lạc ở các tổng đài điện thoại)

Độ tin cậy

Định nghĩa 4: Độ tin cậy của luật X Y là xác suất xuất hiện Y với điều kiện X có trong tất cả các giao tác

Conf(XY) = Supp(XY)/Supp(X)

Ta có thêm định nghĩa khác để hiểu rõ hơn về độ tin cậy:

Định nghĩa 6: Độ tin cậy của một luật kết hợp XY là tỷ lệ giữa số lượng các bản ghi trong D chứa XY với số bản ghi trong D có chứa tập hợp X Ký hiệu độ tin cậy của một luật là Conf(r) Ta có 0 ≤ conf(r) ≤ 1

Trang 19

Nói rằng độ tin cậy của một luật là 90%, có nghĩa là có tới 90% số bản ghi chứa X chứa luôn cả Y Hay nói theo ngôn ngữ xác suất là: “ Xác suất có điều kiện để sảy

ra sự kiện Y đạt 90%” Điều kiện ở đây chính là: “Xảy ra sự kiện X”

Như vậy, độ tin cậy của luật thể hiện sự tương quan giữa X và Y Độ tin cậy đo

sức nặng của luật, và người ta hầu như chỉ quan tâm đến những luật có độ tin cậy cao Một luật kết hợp đi tìm các nguyên nhân dẫn tới hỏng hóc của hệ thống tổng đài, hay đề cập đến những mặt hàng thường hay được khách hàng mua kèm với mặt hàng chính mà độ tin cậy thấp sẽ không có ích cho công tác quản lý

Một số định nghĩa về tập hợp

Trước khi đi sâu tìm hiểu các thuật toán khai phá luật kết hợp, ta cần biết một số kiến thức liên quan đến tập hợp

Định nghĩa 7: Tập mục X được gọi là tập mục thường xuyên nếu có supp(X)

minSup, với minSup là ngưỡng độ hỗ trợ cho trước Kí hiệu các tập này là FI Tính chất 1: Giả sử A,B  I là hai tập mục với A  B thì Supp(A)  Supp(B) Như vậy, những bản ghi nào chứa tập hợp B thì cũng chứa tập hợp A

Tính chất 2: Giả sử A, B là hai tập mục, A,B  I, nếu B là tập mục thường xuyên

Trang 20

t(X) = t(X’) (với t(X) và t(X’) tương ứng là tập các giao tác chứa tập mục X và X’) Ký hiệu tập phổ biến đóng là FCI

Định nghĩa 9: Nếu X là tập mục thường xuyên và không tập cha nào của X là tập mục thường xuyên, ta nói rằng X là một tập mục thường xuyên lớn nhất Ký hiệu tập tất cả các tập phổ biến lớn nhất là MFI

Quá trình thực hiện

Các luật kết hợp yêu cầu đáp ứng giá trị độ phổ biến tối thiểu (gọi tắt là minSup) và độ tin cậy tối thiểu (gọi tắt là minConf) Việc sinh ra luật kết hợp thường chia làm 2 bước

riêng biệt:

- Đầu tiên, giá trị minSup được áp dụng để tìm ra các tập mục xuất hiện thường

xuyên trong cơ sở dữ liệu

- Bước thứ hai là từ những tập này, áp dụng giá trị minConf để tạo ra luật

Trong khi bước thứ hai chỉ cần áp dụng trực tiếp thì ta cần quan tâm một số vấn đề trong bước thứ nhất Việc tìm tất cả các tập thường xuyên trong cơ sở dữ liệu rất khó,

nó bao gồm công việc tìm ra tất cả các tập có thể xảy ra (kết hợp các mục lại) Tập

hợp các tập mục gọi là tập cha I có kích thước 2n – 1 (n là số lượng mục) Kích thước của tập cha này sẽ tăng theo hàm số mũ dựa trên số lượng mục n trong I, ta có một nhận xét một tập mục thường xuyên thì tất cả những tập con của nó phải là những tập thường xuyên Thông qua nhận xét này, các có nhiều thuật toán tìm ra các tập mục

thường xuyên khá hiệu quả như Apriori, Eclat

Trang 21

Hình 6: Quá trình tập các tập mục thường xuyên

Để cụ thể hóa, dựa trên quá trình thực hiện này thành bài toán khai phá luật kết hợp, bài toán này được chia thành hai bài toán con tương tự như 2 bước ở trên:

Bài toán 1: Tìm tất cả các tập mục thường xuyên FI trong cơ sở dữ liệu D

Bài toán 2: Sử dụng tập FI tìm được ở bài toán 1 để đưa ra các luật tin cậy Ý tưởng

chung là nếu gọi ABCD và AB là các tập mục phổ biến, thì chúng ta có thể các luật AB

 CD với tỷ lệ độ tin cậy:

Nếu conf  minConf thì luật được giữ lại (thỏa mãn độ hỗ trợ tối thiểu vì ABCD là thường xuyên)

Trên thực tế, hầu hết thời gian của quá trình khai thác luật kết hợp là thực hiện trong bài

toán 1 Nhưng khi có những mẫu rất dài (mẫu chứa nhiều mục) xuất hiện trong dữ liệu,

việc sinh ra toàn bộ các tập phổ biến (FI) hay các tập đóng (FCI) là không thực tế Hơn nữa, có nhiều ứng dụng mà chỉ cần sinh tập phổ biến lớn nhất (MFI) là đủ, như khám phá mẫu tổ hợp trong các ứng dụng sinh học

Trang 22

Có rất nhiều nghiên cứu về các phương pháp sinh tất cả các tập mục thường xuyên và tập phổ biến lớn nhất một cách có hiệu quả Khi các mẫu thường xuyên bắt đầu nhiều, có từ

15 đến 20 mục) thì tập FI, thậm chí cả tập FCI trở nên rất lớn và hầu hết các phương pháp truyền thống phải đếm quá nhiều tập mục mới có thể thực hiện được Các thuật toán dựa trên thuật toán Apriori – đếm tất cả 2k tập con của mỗi tập k mục mà chúng quét qua, và

do đó không thích hợp với các tục mục dài được Các phương pháp khác sử dụng

“lookaheads” để giảm số lượng tập mục được đếm Tuy nhiên, hầu hết các thuật toán này

đều sử dụng tìm kiếm theo chiều rộng, ví dụ: tìm tất cả các tập k-1 mục trước khi tính đến các tập k mục

Để hiểu rõ hơn quá trình này, ta xem qua ví dụ sau

Ví dụ: Giả sử ta có cơ sở dữ liệu mua hàng D gồm hai thuộc tính Transaction ID (khóa), Items Bought Với minSup=50% và minConf=50%:

Dựa trên tần suất xuất hiện, ta so sánh với minSup của các mục thuộc tập{A,B,C,D,E,F},

ta tìm được các tập mục thường xuyên {A=75%,B=50%,C=50%}, sau lần kết các mục lại

ta còn lại tập 2 mục là {{A,C}=50%}

Ta tính:

Conf(AC)=Sup(AC)/Sup(A)=0,5/0,75=0,667=66,7% > minConf

Trang 23

Conf(CA)= Sup(AC)/Sup(C)=0,5/0,5=1=100% > minConf

Vậy kết quả, ta tìm ra 2 luật{AC,CA}

Khai phá luật kết hợp

Năm 1993, Agrawal giới thiệu về khai phá luật kết hợp với mục đích trích xuất tương quan thú vị, các mục phổ biến, mối quan hệ hay các cấu trúc giữa các bộ của các mục trong Cơ sở dữ liệu Đến nay, khai phá luật kết hợp được ứng dụng trong nhiều lĩnh vực như thương mại, y học, vật lý, hóa học…

Một số khái niệm

Cho D là CSDL giao dịch I ={ I1, I2, , Im} là tập hợp gồm m đối tượng riêng biệt

T là một giao dịch chứa tập các đối tượng (T ⊆ I)

Định nghĩa 1

Luật kết hợp là một mệnh đề kéo theo có dạng X ⇒ Y, trong đó X, Y ⊆ I với X ∩ Y

= φ X và Y được gọi là các tập mục (itemset) X là tập nguyên nhân, Y là tập kết quả Hai độ đo quan trọng trong luật kết hợp là độ hỗ trợ (support) và độ tin cậy (confdence)

Độ hỗ trợ của tập mục X trong D là tỷ lệ giữa các giao dịch T ⊆ D chứa X với tổng

số giao dịch trong D Ký hiệu: support(X) hay supp(X):

Trang 24

(3) Cho tập mục X ⊆ I và độ hỗ trợ tối thiểu minsup ∈ (0,1]

2.3.4 Thuật toán Apriori

Thuật toán Apriori được Agrawal và Srikant đề xuất năm 1994 Apriori sử dụng phương pháp kết tập, mỗi lần duyệt dữ liệu sẽ sinh ra tập Li chứa các tập i mục thỏa minsup Ở lần duyệt đầu tiên, Apriori tìm các mục phổ biến, i lần duyệt CSDL tiếp theo,

nó thực hiện kết tập chúng lại với nhau để tìm ra các tập mục phổ biến đưa vào Li Để kiểm tra mỗi tập mục phổ biến thuộc Li thuật toán phải quét toàn bộ CSDL đây chính là hạn chế của thuật toán

Nội dung thuật toán Apriori:

Đầu vào: CSDL giao dịch D, minsup

Đầu ra: L – các tập mục phổ biến trong D

Các bước thực hiện:

L1={các mục phổ biến}

for (k=2; Lk-1 ≠φ; k++) do{

Ck = {tập ứng cử viên tạo từ Lk-1}

foreach giao dịch T ∈ D do{

Nếu ứng viên c ∈ Ck có trong T, tăng count của c lên

Trang 25

2.3.5 Thuật toán Kmeans

Giới thiệu thuật toán K-means

Thuật toán K-means clustering do MacQueen giới thiệu trong tài liệu “J.Some Methods for Classification and Analysis of Multivariate Observations” năm 1967

K-means Clustering là một thuật toán dùng trong các bài toán phân loại/nhóm n đối tượng thành k nhóm dựa trên đặc tính/thuộc tính của đối tượng (k £n nguyên, dương)

Về nguyên lý, có n đối tượng, mỗi đối tượng có m thuộc tính, ta phân chia được các đối tượng thành k nhóm dựa trên các thuộc tính của đối tượng bằng việc áp dụng thuật toán này

Coi mỗi thuộc tính của đối tượng (đối tượng có m thuộc tính) như một toạ độ của không gian m chiều và biểu diễn đối tượng như một điểm của không gian m chiều

ai =( xi1, xi2, xim) (1)

ai (i=1…n) - đối tượng thứ i

xij (i=1…n, j=1 m) - thuộc tính thứ j của đối tượng i

Phương thức phân loại/nhóm dữ liệu thực hiện dựa trên khoảng cách Euclidean nhỏ nhất giữa đối tượng đến phần tử trung tâm của các nhóm

Trang 26

Phần tử trung tâm của nhóm được xác định bằng giá trị trung bình các phần tử trong nhóm

xis - thuộc tính thứ s của đối tượng ai

xjs - thuộc tính thứ s của phần tử trung tâm cj

Trang 27

Thuật toán K-means

Thuật toán k-means bao gồm các bước cơ bản sau:

Input: Số cụm k và các trọng tâm cụm {mj}kj=1

Output: Các cụm C[i] (1 ≤ i ≤ k) và hàm tiêu chuẩn E đạt giá trị tối thiểu

Begin

Bước 1: Khởi tạo

Chọn k trọng tâm {mj}kj=1 ban đầu trong không gian Rd (d là số chiều của

dữ liệu) Việc lựa chọn này có thể là ngẫu nhiên hoặc theo kinh nghiệm

Bước 2: Tính toán khoảng cách

Đối với mỗi điểm Xi (1 ≤ i ≤ n), tính toán khoảng cách của nó tới mỗi trọng tâm mj (1 ≤ j ≤ k) Sau đó tìm trọng tâm gần nhất đối với mỗi điểm

Bước 3: Cập nhật lại trọng tâm

Đối với mỗi 1 ≤ j ≤ k, cập nhật trọng tâm cụm mj bằng cách xác định trung bình cộng các vectơ đối tượng dữ liệu

Điều kiện dừng:

Lặp lại các bước 2 và 3 cho đến khi các trọng tâm của cụm không thay đổi End

Trang 28

Hình 7: Sơ đồ thuật toán K-means clustering

Thuật toán k-means trên được chứng minh là hội tụ và có độ phức tạp tính toán là:

Ưu điểm: là một phương pháp đơn giản, hiệu quả, tự tổ chức, được sử dụng trong tiến

trình khởi tạo trong nhiều thuật toán khác, hiệu xuất tương đối, thường kết thúc ở tối ưu cục bộ, có thể tìm được tối ưu toàn cục

Nhược điểm: số cụm k phải được xác định trước, chỉ áp dụng được khi xác định được trị

trung bình, không thể xử lý nhiễu và outliers, không thích hợp nhằm khám phá các dạng không lồi hay các cụm có kích thước khác nhau, đây là thuật toán độc lập tuyến tính

Trang 29

- Việc khởi tạo phần tử trung tâm của nhóm ban đầu ảnh hưởng đến sự phân chia đối tượng vào nhóm trong trường hợp dữ liệu không lớn

- Số nhóm k luôn phải được xác định trước

- Không xác định được rõ ràng vùng của nhóm, cùng 1 đối tượng, nó có thể được đưa vào nhóm này hoặc nhóm khác khi dung lượng dữ liệu thay đổi

- Điều kiện khởi tạo có ảnh hưởng lớn đến kết quả Điều kiện khởi tạo khác nhau

có thể cho ra kết quả phân vùng nhóm khác nhau

- Không xác định được mức độ ảnh hưởng của thuộc tính đến quá trình tạo nhóm

- Như vậy, với dữ liệu nhỏ, thuật toán có thể có những hạn chế Để khắc phục những hạn chế này, nên sử dụng thuật toán kmean trong trường hợp dữ liệu lớn

2.3.6 Kết luận

Đối với thuật toán Apriori và Kmeans:

Trong trường hợp CSDL lớn hoặc độ hỗ trợ nhỏ, thuật toán Apriori gặp phải hai vấn

đề lớn:

- Sinh ra số lượng lớn các tập ứng cử

- Phải duyệt CSDL nhiều lần để xác định tập mục phổ biến từ tập ứng cử viên Đối với thuật toán K-means: do K-means phân tích phân cụm đơn giản nên có thể

áp dụng đối với tập dữ liệu lớn Tuy nhiên, nhược điểm của K-means là chỉ áp dụng với

dữ liệu có thuộc tính số và khám phá ra các cụm có dạng hình cầu, K-means còn rất nhạy cảm với nhiễu và các phần tử ngoại lai trong dữ liệu Hơn nữa, chất lượng phân cụm dữ liêu k của thuật toán K-means phụ thuộc nhiều vào các tham số đầu vào như: số cụm k và

k trọng tâm khởi tạo ban đầu Trong trường hợp các trọng tâm khởi tạo ban đầu mà quá lệch so với các trọng tâm cụm tự nhiên thì kết quả phân cụm của K-means là rất thấp, nghĩa là các cụm dữ liệu được khám phá rất lệch so với các cụm trong thực tế

Trang 30

CHƯƠNG 3 XÂY DỰNG VÀ THỰC NGHIỆM

Trong chương này, luận văn sẽ tập trung thực hiện các công việc sau:

- Nghiên cứu phân tích chức năng tổng thể và xây dựng hệ thống

- Đặc tả chi tiết việc xây dựng hệ thống

- Thử nghiệm hệ thống

Ngày đăng: 24/08/2018, 16:42

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. TS. Đỗ Phúc (2009), Giáo trình Khai thác dữ liệu, Trường Đại học Công nghệ Thông tin - Đại học quốc gia TP. HCM Sách, tạp chí
Tiêu đề: Giáo trình Khai thác dữ liệu
Tác giả: TS. Đỗ Phúc
Năm: 2009
[2]. Hoàng Kiếm, Đỗ Văn Nhơn, Đỗ Phúc (2002), Giáo trình các hệ cơ sở tri thức, NXB Đại học Quốc gia TP. Hồ Chí Minh Sách, tạp chí
Tiêu đề: Giáo trình các hệ cơ sở tri thức
Tác giả: Hoàng Kiếm, Đỗ Văn Nhơn, Đỗ Phúc
Nhà XB: NXB Đại học Quốc gia TP. Hồ Chí Minh
Năm: 2002
[3]. Nguyễn Văn Tuấn (2006), Phân tích dữ liệu và tạo biểu đồ bằng R, NXB Khoa học kỹ thuật Sách, tạp chí
Tiêu đề: Phân tích dữ liệu và tạo biểu đồ bằng R
Tác giả: Nguyễn Văn Tuấn
Nhà XB: NXB Khoa học kỹ thuật
Năm: 2006
[5]. Jiawei Han, Jian Pei, and Yiwen Yin (2000), Mining Frequent Patterns without Candidate Generation, Simon Fraser University Sách, tạp chí
Tiêu đề: Mining Frequent Patterns without Candidate Generation
Tác giả: Jiawei Han, Jian Pei, and Yiwen Yin
Năm: 2000
[6]. Jeetesh Kumar Jain, Nirupama Tiwari, Manoj Ramaiya (2013), A Survey: On Association Rule Mining, (IJERA) ISSN: 2248-9622 Sách, tạp chí
Tiêu đề: A Survey: On Association Rule Mining
Tác giả: Jeetesh Kumar Jain, Nirupama Tiwari, Manoj Ramaiya
Năm: 2013
[7]. Agrawal R. and Srikant R (1994), Fast algorithm for mining associantion rules in large databases, VLDB 94 Proceedings of the 20th International Conference on Very Large Data Bases, Pages 487-499 Sách, tạp chí
Tiêu đề: Fast algorithm for mining associantion rules in large databases
Tác giả: Agrawal R. and Srikant R
Năm: 1994
[4]. Jiawei Han, Micheline Kamber, Jian Pei (2011), Data Mining Concepts and Techniques (Third Edition) Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w