1. Trang chủ
  2. » Giáo Dục - Đào Tạo

KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM

44 59 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 44
Dung lượng 3,15 MB

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

Nội dung

Trong đó, phân cụm dữ liệu là một trong những kĩ thuật khai thác thôngtin phổ biến được triển khai đa dạng trong các lĩnh vực ngành nghề từ kinh tế,giáo dục cho đến bảo hiểm, kế hoạch đô

Trang 1

TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN

KHOA TOÁN KINH TẾ -o0o -

CHUYÊN

ĐỀ THỰC TẬP

Chuyên ngành Toán Tài chính

Đề tài:

KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN K MEANS VỚI

TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE

ANIME47.COM

Sinh viên thực hiện : Phạm Hà Anh

Mã sinh viên : 11160366

Lớp : Toán tài chính 58 Giảng viên hướng dẫn : ThS Phạm Thị Nga

Hà Nội, tháng 12 năm 2019

LỜI CẢM ƠN

Trang 2

Lời đầu tiên cho phép em xin được gửi lời cảm ơn chân thành nhất đếnTrường Đại học Kinh Tế Quốc Dân, Khoa Toán Kinh tế đã luôn tạo điều kiện vàmôi trường tốt nhất để em học tập và rèn luyện cũng như tham gia các hoạt độngtrong suốt những năm học vừa qua.

Em xin chân thành cảm ơn sự hướng dẫn, chỉ dạy tận tình của cô Th SPhạm Thị Nga đã tạo điều kiện giúp em hoàn thành chuyên đề tốt nghiệp củamình

Trong quá trình nghiên cứu do bản thân còn có nhiều thiếu hụt về mặt kiếnthức và kinh nghiệm thực tế cũng như áp lực về mặt thời gian nên em không thểtránh khỏi những hạn chế, thiếu sót Vì vậy, em rất mong nhận được sự góp ý từquý thầy cô để em hoàn thiện hơn

MỤC LỤC

DANH MỤC BẢNG

Trang 3

DANH MỤC HÌNH VẼ

MỞ ĐẦU 1

Chương 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 4

1.1 MỘT SỐ KHÁI NIỆM 4

1.1.1 Khai phá dữ liệu 4

1.1.2 Quy trình tiến hành khai phá dữ liệu 4

1.1.3 Các phương pháp khai phá dữ liệu 5

1.2 CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU PHỔ BIẾN 6

1.2.1 Một số khái niệm 6

1.2.2 Các thuật toán phân cụm dữ liệu phổ biến 10

Chương 2 THUẬT TOÁN PHÂN CỤM DỮ LIỆU K-MEANS CLUSTERING 15

2.1 KHÁI QUÁT VỀ THUẬT TOÁN K-MEANS 15

2.1.1 Giới thiệu 15

2.1.2 Thuật toán 15

2.1.3 Ví dụ cụ thể 16

2.2 MỐI QUAN HỆ GIỮA K-MEANS VÀ THÀNH PHẦN CHÍNH PCA ……….18

2.2.1 Phân tích thành phần chính PCA 18

2.2.2 Mối quan hệ giữa K-means và thành phần chính PCA 18

Chương 3 ỨNG DỤNG THUẬT TOÁN K-MEANS TRONG VIỆC PHÂN NHÓM NGƯỜI DÙNG 21

3.1 BÀI TOÁN 21

3.2 ỨNG DỤNG PHÂN NHÓM NGƯỜI DÙNG WEBSITE PHIM ANIME47.COM 22

3.2.1 Thu thập dữ liệu 22

3.2.2 Tiền xử lí dữ liệu 23

3.2.3 Phân tích kết quả 27

3.2.4 Khuyến nghị 39

Trang 4

KẾT LUẬN 41 TÀI LIỆU THAM KHẢO 42

DANH MỤC BẢNG

Bảng 1 1 Quy trình khai phá dữ liệu 4Bảng 1 2 Quy trình phân cụm dữ liệu 7Bảng 1 3 Giải thích các giá trị tham số 11

Trang 5

Bảng 1 4 Ưu điểm và nhược điểm của thuật toán BIRCH 12

Bảng 3 1 Thông tin về các biến trong bộ số liệu 1 22

Bảng 3 2 Thông tin về các biến trong bộ số liệu 2 22

Bảng 3 3 Top 5 thể loại phim mà người dùng nhóm 1 yêu thích 34

Bảng 3 4 Top 5 thể loại phim mà người dùng nhóm 2 yêu thích 36

Bảng 3 5 Top 5 thể loại phim mà người dùng nhóm 3 yêu thích 37

Bảng 3 6 Top 5 thể loại phim mà người dùng nhóm 4 yêu thích 39

DANH MỤC HÌNH VẼ Hình 1 1 Phân cụm phân cấp theo phương pháp giảm dần 11

Hình 2 1 Thuật toán K means 16

Hình 2 2 Phân tích thành phần chính PCA 19

Hình 2 3 Phân tích thành phần chính PCA 19

Trang 6

Hình 3 1 Minh họa bộ số liệu 1 22

Hình 3 2 Minh họa bộ số liệu 2 23

Hình 3 3 Đồ thị Elbow Method 29

Hình 3 4 Đồ thị Silhoutee Score 30

Hình 3 5 Đồ thị các cụm dữ liệu dưới không gian 3 chiều 32

Hình 3 6 Thể loại phim mà người dùng nhóm 1 yêu thích 34

Hình 3 7 Thể loại phim mà người dùng nhóm 2 yêu thích 36

Hình 3 8 Thể loại phim mà người dùng nhóm 3 yêu thích 37

Hình 3 9 Thể loại phim mà người dùng nhóm 4 yêu thích 39

Trang 7

MỞ ĐẦU

1 Lí do lựa chọn đề tài

Thời đại 4.0 mở ra nhiều cơ hội cũng như thách thức bởi sự phát triển vàảnh hưởng của thông tin số đến mọi hoạt động trong cuộc sống, cũng đồng nghĩavới việc lượng dữ liệu thu thập và lưu trữ được là ngày càng lớn Sự bùng nổthông tin đã dẫn đến một yêu cầu thực tế hết sức cần thiết đó là cần mang đếnnhững công cụ giải thuật mới để có thể khám phá các tri thức một cách tối ưu vàhiệu quả nhất Và với các yêu cầu đó, kĩ thuật khai phá dữ liệu (Data mining)xuất hiện và ngày càng trở nên phổ biến

Trong đó, phân cụm dữ liệu là một trong những kĩ thuật khai thác thôngtin phổ biến được triển khai đa dạng trong các lĩnh vực ngành nghề từ kinh tế,giáo dục cho đến bảo hiểm, kế hoạch đô thị, v.v… Rõ ràng, mọi dữ liệu trongcuộc sống đều cần được phân loại để con người có thể tạo ra những quyết địnhhợp lí và chính xác nhất Cụ thể, đối với lĩnh vực phim ảnh, một ngành có lượng

dữ liệu khổng lồ, ta cần xử lý, phân loại để có quản lý và ứng dụng các kế hoạch

marketing phù hợp nhất Đó là lý do em lựa chọn đề tài “Khai phá dữ liệu bằng

thuật toán K means với tình huống phân loại người dùng website anime47.com.”

2 Tổng quan về nghiên cứu

Bức tranh nghiên cứu về thuật toán phân cụm K-means Clustering có thểđược nhìn qua hai góc độ trong nước và ngoài nước

Các tài liệu nghiên cứu khoa học nước ngoài có sự tìm hiểu và phát triểnkhá đa dạng về thuật toán phân cụm K means, từ các nghiên cứu học thuật về lýthuyết đến các nghiên cứu ứng dụng thuật toán vào đời sống Về khía cạnh lý

thuyết, bài nghiên cứu “Research on K-Value Selection Method of K-Means

Clustering Algorithm” của Chunhui Yuan and Haitao Yang trên Multidisciplinary

Scientific Journal đã khái quát hóa một bức tranh tổng quan về thuật toán K

means và cách xác định số cụm k Về ứng dụng thuật toán, có thể kể đến một số

nghiên cứu như: Bài viết “Application of K-Means Clustering algorithm for

prediction of Students’ Academic Performance” (International Journal of

Computer Science and Information Security, Vol 7, No 1, 2010) đã ứng dụng kỹthuật phân cụm K means trong dự đoán kết quả học tập của sinh viên và đưa racác giải pháp, khuyến nghị; H.W Shina và S.Y Sohnb phân loại thị trường chứng

khoán qua bài nghiên cứu “Segmentation of stock trading customers according

Trang 8

to potential value”; hay bài toán phân nhóm khách hàng trong “Customer Segmentation using K-means Clustering”, University of Petroleum & Energy

Studies Nhìn chung, trong hầu hết các nghiên cứu, thuật toán K means đều chothấy hiệu quả ưu việt trong phân nhóm đối tượng, và có thể áp dụng trong nhiềulĩnh vực khác nhau

Ở Việt Nam, tính đến thời điểm hiện tại, thuật toán K- means Clusteringđược tìm hiểu và nghiên cứu khá nhiều, tuy nhiên phổ biến nhất là những ứngdụng mang đậm tính chuyên ngành công nghệ thông tin như phân vùng ảnh hayphân mức web Cùng với đó, việc áp dụng thuật toán K-means trong phân loạikhách hàng trở nên ngày càng phổ biến bởi tính đơn giản, dễ sử dụng và tốc độ

thực hiện nhanh Ví dụ tiêu biểu có thể kể đến bài nghiên cứu “Phân loại hành vi

khách hàng sử dụng dịch vụ di động dựa trên thuật toán K-means” của tác giả Lê

Minh Hải, thuộc Học viện Công nghệ bưu chính viễn thông Rõ ràng, việc tìm

hiểu về thuật toán phân cụm K means với hướng nghiên cứu phân nhóm ngườidùng là hoàn toàn cần thiết

3 Mục tiêu nghiên cứu

Mục tiêu của đề tài là phân nhóm người dùng website phimAnime47.com Từ đó nhận xét, kết luận về đặc điểm đối với từng nhóm kháchhàng, đưa ra những chiến lược marketing và quảng cáo phù hợp và hiệu quả

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

Đối tượng nghiên cứu của chuyên đề là thuật toán K means và ứng dụngtrong phân nhóm người dùng website anime47.com

5 Phương pháp nghiên cứu và số liệu

Chuyên đề sử dụng phương pháp định lượng trong nghiên cứu Cụ thể tácgiả sử dụng phần mềm Python nhằm phân tích, khai phá dữ liệu và phân nhómngười dùng website, từ đó đưa ra các đề xuất, khuyến nghị phù hợp với từngnhóm khách hàng

Bộ số liệu sử dụng bao gồm thông tin đánh giá điểm phim của 20 000người dùng website anime47.com, không bao gồm các thông tin cá nhân củakhách hàng như giới tính, độ tuổi, nghề nghiệp, …

6 Những đóng góp mới của chuyên đề

Trang 9

Bài chuyên đề đã đạt được một số điểm mới đáng ghi nhận như: (1) Ứngdụng thuật toán K means vào một tình huống hữu dụng trên thực tế là phân nhómkhách hàng nhằm đưa ra các đề xuất, khuyến nghị phù hợp với từng nhóm đốitượng; (2) Tác giả đã ứng dụng được phần mềm Python trong nghiên cứu.

7 Kết cấu của chuyên đề

Bên cạnh phần mở đầu và kết luận, bài chuyên đề được kết cấu thành bachương chính, cụ thể như sau:

Chương 1 Tổng quan về khai phá dữ liệu

Chương 2 Thuật toán phân cụm dữ liệu K means Clustering

Chương 3 Ứng dụng thuật toán K means trong việc phân nhóm người dùng

Trang 10

Chương 1 TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

1.1 MỘT SỐ KHÁI NIỆM

1.1.1 Khai phá dữ liệu

Vào năm 1989, lần đầu tiên Fayyad, Piatestsky-Shapiro và Smyth đã địnhnghĩa khái niệm phát hiện tri thức trong cơ sở dữ liệu (Knowledge Discovery inDatabase) là quy trình tìm kiếm các thông tin hữu ích từ tập dữ liệu lớn Hay nóicách khác, khai phá dữ liệu là một bước quan trọng trong quá trình khám phá trithức Quy trình khai phá dữ liệu sử dụng các thuật toán có sẵn để tìm ra các mẫu(hay các mô hình) từ tập tữ liệu

Mục tiêu của việc khai phá dữ liệu là tìm kiếm các thông tin, tri thức tiềm

ẩn trong dữ liệu để từ đó, mang lại các tri thức thiết yếu cho đa dạng các lĩnh vựctrong cuộc sống Chính xác hơn, việc phân loại, sắp xếp các tập dữ liệu để xácđịnh các mẫu và thiết lập các mối liên hệ nhằm quyết định các nghiệp vụ nhờphân tích dữ liệu được gọi là “khai phá dữ liệu”

1.1.2 Quy trình tiến hành khai phá dữ liệu

Với một lượng thông tin lớn, sử dụng thông tin như thế nào rõ ràng có ảnhhưởng vô cùng quan trọng Từ các dữ liệu sẵn có, ta cần phải xác định những trithức tiềm ẩn có giá trị, tìm ra xu hướng và những yếu tố tác động đến dữ liệu đó.Đây chính là việc khai phá tri thức dữ liệu Cụ thể, quy trình khai phá dữ liệuđược thực hiện qua các bước sau:

Bảng 1 1 Quy trình khai phá dữ liệu Nội dung Mục tiêu

Bước 1 Thu thập dữ liệu Đây được coi là một trong những bước quan

trọng vì rõ ràng, để có thể khám phá tri thức thìcần phải có dữ liệu để khám phá Thu thập dữliệu bao gồm các quá trình lựa chọn lĩnh vựckhám phá, xây dựng các thuộc tính biểu diễn vàcác phương thức cập nhật thông tin

Bước 2 Tiền xử lí dữ liệu Là việc loại bỏ, giảm bớt độ nhiễu và các phần tử

ngoại lai trong bộ dữ liệu,Bước 3 Chuyển đổi dữ Là việc chuẩn hóa bộ số liệu để chuyển sang

Trang 11

liệu dạng mà thích hợp với mô hình khám phá dữ liệu

ở các bước sau Các kĩ thuật chuyển đổi dữ liệuthường được sử dụng có thể kể đến như giảmkích thước của bộ số liệu, đưa dữ liệu sang một

hệ trục tọa độ mới, chuyển dạng dữ liệu, …Bước 4 Khai phá dữ liệu Là bước dùng các kĩ thuật phân tích để khai thác

các tri thức có được từ các bước trên Đây đượccoi là bước phức tạp và có ảnh hưởng nhất đếnquy trình khai phá tri thức Một số kĩ thuật khaiphá dữ liệu thường được áp dụng có thể kể đếnlà: rừng ngẫu nhiên, chuỗi thời gian, … Từ đó, ta

có thể lựa chọn (các) giải thuật khai phá dữ liệuphù hợp

(Nguồn: Tác giả tổng hợp)

1.1.3 Các phương pháp khai phá dữ liệu

Vì áp dụng nhiều kĩ thuật từ đa dạng các lĩnh vực như máy học (MarchineLearning) và trí tuệ nhân tạo, khai phá dữ liệu có thể được chia thành hai nhómphương pháp khác nhau như sau:

Các phương pháp khai phá dữ liệu theo quan điểm của máy học được chia thành các dạng sau:

o Supervised Learning – Học có giám sát: Là quy trình xây dựng và tối ưu

mô hình dự báo dựa vào tiêu chuẩn dữ liệu được xác định trước Ví dụ như phân chia số lượng học sinh trong một lớp học dựa theo giới tính

o Unsupervised Learning – Học không giám sát: Là quy trính phân chia vàđịnh danh dữ liệu bằng dữ liệu đầu vào không được xác định thông tintrước

o Semi-Supervised Learning – Học nửa giám sát: Là quy trình phân chia đốitượng dữ liệu thành các nhóm con dựa vào một số thông tin cho trước(thông tin về các nhóm không đầy đủ như phương pháp học có giám sát)

Trang 12

o Reinforcement learning – Học củng cố: Là dạng bài toán giúp cho hệthống tự động xác định hành vi dựa trên hoàn cảnh sao cho lợi ích đạtđược là tối ưu nhất Những ứng dụng phổ biến của phương pháp học củng

cố có thể kể đến như Lí thuyết trò chơi (Game Theory) hay các thuật toáncần xác định bước đi tiếp theo để đạt được điểm số cao nhất

Các phương pháp khai phá dữ liệu theo các lớp bài toán cần giải quyết có thể được chia thành:

o Classfication and Prediciton – Phân lớp và dự báo: là quy trình phân lớpđối tượng đến một trong các lớp đã biết trước Các bài toán thuộc dạngphân lớp và dự báo cũng được coi là phương pháp học có giám sát

o Clustering – Phân cụm dữ liệu: Phân nhóm các đối tượng thành các cụm

dữ liệu Các bài toán thuộc dạng phân cụm dữ liệu cũng được coi là

phương pháp học không giám sát

o Association rules – Luật kết hợp: là phương pháp tìm các luật biểu diễn trithức ở dạng luật điều kiện dựa trên xác suất (độ phổ biến và độ tin cậy)của luật Ứng dụng của luật kết hợp thường trong việc đưa ra các chiếnlược kinh doanh, marketing sản phẩm,…

o Time series analyst - Phân tích chuỗi thời gian: là quá trình phân tích dữ liệu có thuộc tính biến đổi theo thời gian Bài toán phân tích chuỗi thời gian thường được áp dụng trong thị trường chứng khoán, kinh tế, sinh học

1.2 CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU PHỔ BIẾN

1.2.1 Một số khái niệm

1.2.1.1 Phân cụm dữ liệu

Một trong những hướng nghiên cứu chính của khai phá dữ liệu có thể kểđến đó là phân cụm dữ liệu Phân cụm là việc tìm kiếm, phát hiện các cụm, cácmẫu dữ liệu ẩn và quan trọng trong tập dữ liệu để từ đó mang đến các thông tin,tri thức có giá trị, từ đó ảnh hưởng đến việc ra quyết định Thực tế luôn xuất hiệnnhững như yêu cầu về một cơ sở dữ liệu mà ở đó, ta có thể phân loại để tạo ra cácquyết định nghiệp vụ chính xác và tối ưu nhất Một số lĩnh vực mà phân cụm dữliệu thường được áp dụng có thể kế đến như marketing, giáo dục, y tế,…

Cụ thể hơn, định nghĩa về phân cụm có thể diễn giải như sau Dựa trên độtương tự hay phi tương tự giữa các đối tượng, quy trình chia tách tập dữ liệu

Trang 13

thành các cụm dữ liệu được gọi là phân cụm dữ liệu Quy trình phân cụm đốitượng dữ liệu được tiến hành sao cho mức độ tương tự giữa các đối tượng trongcùng một cụm là lớn nhất và mức độ tương tự giữa các đối tượng trong các cụmkhác nhau là nhỏ nhất Đặc điểm của mỗi cụm dựa vào đặc trưng chung của tất

cả đối tượng dữ liệu thuộc cụm đó

1.2.1.2 Quy trình phân cụm dữ liệu

Bài toán phân cụm dữ liệu gồm các bước chính có thể mô tả như sau:

Bảng 1 2 Quy trình phân cụm dữ liệu Nội dung Mục tiêu

Bước 1 Chọn lựa đặc trưng Các đặc trưng cần phải được xác định sao

cho hợp lí nhất để từ đó có thể “mã hóa”thông tin tối ưu nhất Mục tiêu chính củaviệc chọn lựa chính là để giảm tối đa sựlặp lại thông tin giữa các đặc trưng

Bước 2 Thiết lập hàm tính độ

tương tự

Là độ đo khoảng cách tương tự hay phitương tự giữa hai vector đặc trưng Tất cảcác vector đặc trưng cần phải được đảmbảo đóng góp tính toán như nhau trongviệc đo độ tương tự và không có đặctrưng nào lấn át đặc trưng nào

Bước 3 Thiết lập các tiêu

Bước 5 Lựa chọn thuật toán

phân cụm phù hợp

Để làm rõ cấu trúc của tập dữ liệu, ta cầnxác định được một thuật toán phân cụmriêng biệt và phù hợp với bộ dữ liệu nhất.Bước 6 Thiết lập các tiêu

chuẩn biểu diễn vàđánh giá kết quả phâncụm

Để có các kết luận chính xác và hợp lýnhất, ta cần kết hợp các kết quả phân loại

và bằng chứng thực nghiệm với nhau

Trang 14

(Nguồn: Tác giả tổng hợp)

1.2.1.3 Cách thức đo lường dữ liệu

Trước khi tiến hành phân cụm, ta cần xác định “khoảng cách” giữa các đốitượng, hoặc nói cách khác, chính là đo lường dữ liệu Đây là các hàm để tính độtương tự hay phi tương tự giữa các đối tượng dữ liệu

o Không gian metric

Các độ đo tương tự hay phi tương tự được xác định trong không gian độ

đo metric Một không gian metric là một tập trong đó có xác định các “khoảngcách” giữa từng cặp đối tượng, dựa trên những tính chất cơ bản của khoảng cáchhình học Một tập dữ liệu Z được coi là không gian metric nếu:

Khoảng cách của i, j với mỗi cặp i,j thuộc Z là một số thực d(i,j) được xácđịnh theo một quy tắc nào đó

Khoảng cách đo bằng độ khác biệt giữa cá thể i và cá thể j là một số thựcd(i, j) sao cho thỏa mãn:

d(i, j) 0d(i, j) = 0 nếu i = j d(i, j) = d(j, i)

d(i, j) ≤ d(i, k) + d(k, j) với

o Một số mẫu dữ liệu thông dụng có thể kể đến như:

Mẫu dữ liệu thuộc tính giá trị số: Đây là mẫu dữ liệu có thuộc tính là

các giá trị cụ thể có thể áp dụng trực tiếp các công thức tính toán độ đo khoảngcách như:

o Khoảng cách Minkowski: d(x,y) =

o Khoảng cách Euclide: d(x, y) = , đây được coi là trườnghợp đặc biệt của khoảng cách Minkowski với q = 2

o Khoảng cách Manhwatan: d(x, y) = , đây được coi là trườnghợp đặc biệt của khoảng cách Minkowski với q =1

o Tương tự Cosine (Cosine Similiraty):

Trang 15

Similiraty = = = Trong đó Ai, Bi lần lượt là các thuộc tính của đối tượng A và B Nếu Cosinesimilarity bằng 1 thì A và B giống nhau hoàn toàn, ngược lại bằng -1 khi khácnhau hoàn toàn.

Mẫu dữ liệu có thuộc tính nhị phân: Là dạng mẫu dữ liệu chỉ bao gồm 2

giá trị 1 và 0, với ới giá trị 1 được định nghĩa là đúng và giá trị 0 được định nghĩa

là sai Hệ số đo lường thông dụng thường được áp dụng cho thuộc tính nhị phân

là hệ số đo lường Jaccard:

Trong đó, A và B là hai đối tượng chứa các thuộc tính nhị phân

Mẫu dữ liệu có thuộc tính định danh: Với miền giá trị rời rạc không

phân chia thứ tự, mẫu dự liệu định danh được coi là dạng tổng quát hóa của mẫu

dữ liệu nhị phân Nếu x và y là hai đối tượng có dạng định danh, ta có thể xácđịnh theo dạng nhị phân như sau: i = j, và i ≠ j Độ đo phi tương tự giữa i và jđược định nghĩa là d(i, j) = , với p là tổng số thuộc tính và m là số thuộc tínhgiống nhau

1.2.1.4 Phân loại phân cụm dữ liệu

Thông thường các phương pháp phân cụm được chia thành 2 nhóm, có thểtóm tắt ngắn gọn như sau:

o Phân cụm phân cấp: Là phương pháp tạo nên một cây phân cụm trong đó

số cụm được giảm hoặc tăng dần mà kết quả phân chia k lớp nhận được từviệc ghép 2 lớp nào đó từ k+1 lớp

o Phân cụm phân hoạch: Là phương pháp xác định trước số cụm k Từ n cáthể cần tạo ra k nhóm sao cho các cá thể cùng nhóm khác biệt ít hơn các

cá thể khác nhóm

Trong thực tế, hai phương pháp phân cụm phân cấp và phân cụm phânhoạch thường được kết hợp cùng với nhau Kết quả của phân cụm phân hoạch làkết quả của mỗi bước phân cụm phân cấp Qua mỗi lớp của phân cụm phân cấp,

Trang 16

các ràng buộc sẽ thay đổi để tiến hành ở các nhóm khác nhau của phân cụm phânhoạch.

1.2.2 Các thuật toán phân cụm dữ liệu phổ biến

1.2.2.1 Thuật toán BIRCH

Như đã trình bày ở phần trước, phương pháp phân chia tập dữ liệu thànhmột cấu trúc có dạng hình cây phân cụm được xác định theo phương pháp tăngdần (Bottom up) hoặc giảm dần (Top down) gọi là phân cụm phân cấp Một trongnhững thuật toán áp dụng phương pháp giảm dần là thuật toán phân cụm có tên làBalanced Iterative Reducing and Clustering Using Hierarchies, hay viết tắt làBIRCH

BIRCH được mô tả cụ thể như sau Cây phân cấp giảm dần được tạo xuấtphát từ cụm lớn nhất bao gồm tất cả các đối tượng Mỗi một cụm được chia thànhcác cụm nhỏ hơn sau mỗi một vòng lặp thành công Thuật toán kết thúc khi có ncụm thỏa mãn điều kiện dừng

(Nguồn: Tác giả minh họa)

Hình 1 1 Phân cụm phân cấp theo phương pháp giảm dần

Thuật toán BIRCH xuất phát với ý tưởng không cần giữ lại tất cả đốitượng dữ liệu của các cụm mà chỉ cần quan tâm đến các tham số thống kê Vớimỗi cụm dữ liệu, thuật toán chỉ giữ lại một bộ ba tham số (n, LS, SS) - được gọi

là đặc trưng của cụm (Cluster Features- CF) với:

Trang 17

Bảng 1 3 Giải thích các giá trị tham số

n Số đối tượng dữ liệu quan sát với

o Branching Factor – Nhân tố nhánh: Nhân tố nhánh B có mục đích chọnlựa số lượng nút con tối đa của mỗi nút lớn

o Threshold – Ngưỡng: Ngưỡng T nhằm xác định khoảng cách tối đa giữabất kì một cặp đối tượng nào trong nút lá của cây CF, hay chính là đườngkính của các cụm con được giữ tại các nút lá

Như vậy, đầu vào của thuật toán BIRCH là tập dữ liệu có n điểm (n đối tượng) và các giá trị ngưỡng T, k còn đầu ra là k cụm dữ liệu chứa các đối tượng

Cụ thể, quy trình thực hiện thuật toán BIRCH như sau:

o Bước 1 Với tất cả các đối tượng dữ liệu sẵn có, đầu tiền ta thiết lập mộtcây CF bắt đầu Mỗi một đối tượng được phân vào nút lá gần nhất và sẽtạo thành một cụm con Nút lá được tách khi đường kính của cụm lớn hơnngưỡng T Khi một đối tượng được phân vào nút lá, các nút khác sẽ đượccập nhật lại thông tin

o Bước 2 Tiến hành thiết lập một cây CF nhỏ hơn nếu như cây CF hiện tạikhông có đủ bộ nhớ trong Kích thước của cây CF ảnh hưởng bởi tham số

T, vì vậy việc chọn một tham số T lớn hơn sẽ làm hoà nhập một số cáccụm con thành một cụm, điều này làm cho cây CF nhỏ hơn

o Bước 3 Tiến hành phân cụm: Cây CF lúc này sẽ bao gồm các nút lá lưutrữ các tham số thống kê (bộ ba) của các cụm con

o Bước 4 Sau khi phân cụm xong, ta tiến hành xác định các trung tâm củacụm để sắp xếp lại các đối tượng dữ liệu Mục đích của bước 4 là để nhóm

Trang 18

lại dữ liệu ban đầu và loại bỏ các phần tử ngoại lai Lý thuyết cộng CFđược áp dụng khi triển khai ghép hai cụm vào làm một.

Các phép tính khoảng cách giữa các cụm thường được sử dụng trong thuậttoán BIRCH là khoảng cách Euclide, Manhatta, Ta có thể tóm tắt ưu điểm vànhược điểm của thuật toán BIRCH thông qua bảng sau:

Bảng 1 4 Ưu điểm và nhược điểm của thuật toán BIRCH

Ưu điểm o BIRCH có độ phức tạp là O(n), với n là số đối tượng

o BIRCH là thuật toán áp dụng tốt đối với tập dữ liệu có sốlượng lớn và đặc biệt phù hợp với tập dữ liệu tăng dần theothời gian

o BIRCH có tốc độ phân cụm nhanh nhờ sử dụng cây CF (vì chỉduyệt toàn bộ dữ liệu một lần)

1.2.2.2 Thuật toán K means

K-Means là thuật toán thuộc lớp bài toán phân cụm dữ liệu phân hoạch.Thuật toán K-Means được Macqueen đề xuất năm 1967 và từ đó cho đến nay vẫnđược phổ biến và áp dụng rộng rãi, bởi đây là một thuật toán cơ bản, đơn giảnnhưng hiệu quả trong việc phân cụm dữ liệu

Ý tưởng của thuật toán là sử dụng trung tâm của các cụm để tính khoảngcách giữa đối tượng và điểm trung tâm, với số cụm k được cho sẵn Các phéptính khoảng cách thường được dùng trong thuật toán phân cụm K-Means làkhoảng cách Minkowski và các biến thể của Minkowski là Euclide vàManhattan

o Ưu điểm:

Thuật toán K means có độ phức tạp là O(tkn), trong đó t là số lần lặp, k là

số cụm, n là số đối tượng Thông thường k<<n và t<<n thường kết thúc tại mộtđiểm tối ưu cục bộ

Trang 19

Thuật toán K means được coi là thuật toán phân cụm đơn giản, áp dụng tốtđối với tập dữ liệu có số lượng lớn.

o Nhược điểm:

Do kết quả phân cụm phụ thuộc vào việc xác định số k bắt đầu, thuật toán

K means Clustering cho ra các kết quả khác nhau với mỗi cách chọn k cụm khácnhau, từ đó rõ ràng sẽ mang đến các đánh giá khác nhau Vì vậy, thuật toánkhông bảo đảm tối ưu đầu ra

Số cụm k cần phải được xác định trước Vì vậy, việc lựa chọn k nhỏ sẽ dẫnđến việc tạo nên các nhóm không rõ ràng, ngược lại nếu chọn k lớn sẽ ảnh hưởngđến tốc độ thực hiện cũng như chia nhỏ các cụm dữ liệu quá mức

Thuật toán khó áp dụng đối với các loại dữ liệu có cấu trúc phức tạp, ví dụnhư do việc phân cụm dựa trên khoảng cách giữa trung tâm và các điểm dữ liệunên thuật toán không xử lý được với các dạng cụm dữ liệu có hình dạng khônglồi

Do việc tính toán trực tiếp và sử dụng độ đo khoảng cách nên những phần

tử ngoại lai và nhiễu khó được xử lý trong thuật toán phân cụm K-Means

Tuy nhiên, do tính hiệu quả và đơn giản của thuật toán K-Means nên hiệnnay vẫn có nhiều nghiên cứu để khắc phục các nhược điểm của thuật toán K-Means và phát triển tiếp tục lên như thuật toán K-Median, K-Medoids, …

Trang 20

Chương 2 THUẬT TOÁN PHÂN CỤM DỮ LIỆU K-MEANS

o Phân nhóm tài liệu web

o Xác định và lọc tài liệu file

dữ liệu chứa các đối tượng

Cụ thể, thuật toán K means Clustering được áp dụng như sau:

o Bước 1: Bước bắt đầu, xác định số cụm k.

o Bước 2: Xác định trọng tâm của cụm

o Bước 3: Tính khoảng cách từ các đối tượng dữ liệu đến tâm cụm, nhóm

từng đối tượng dữ liệu vào cụm nếu khoảng cách đến tâm đó là gần nhất

o Bước 4: Bước kiểm tra Nếu không có thay đổi về cụm thì thuật toán

dừng Nếu có, quay về bước 2

Trang 21

(Nguồn: Tác giả minh họa)

Hình 2 1 Thuật toán K means

Trang 22

Ta tiến hành tính toán khoảng cách Euclidean từ các dữ liệu đến tâm cụm.Sau đó nhóm từng đối tượng vào cụm nếu khoảng cách đến cụm đó là nhỏ nhất.

Sample D(sample, k1) D(sample, k2) Phân thành cụm

=

=169

=

=58Lặp lại tượng tự bước trên, ta tính toán lại khoảng cách đến tâm cụm mới

và tiếp tục nhóm từng đối tượng vào cụm

Sample D(sample, k1) D(sample, k2) Phân thành cụm

 Tâm cụm không thay đổi Thuật toán dừng

2.2 MỐI QUAN HỆ GIỮA K-MEANS VÀ THÀNH PHẦN CHÍNH PCA

2.2.1 Phân tích thành phần chính PCA

Một trong những thuật toán thuộc phương pháp học không giám sátthường hay được sử dụng đó là thuật toán phân tích thành phân chính (PrincipalComponents Analysis - PCA) PCA được định nghĩa là phương pháp sử dụngphép biến đổi trực giao để chiếu các đối tượng dữ liệu từ một không gian p chiềuthành một không gian con r chiều (không gian có số chiều nhỏ hơn, r<p)

Ngày đăng: 10/12/2021, 12:41

HÌNH ẢNH LIÊN QUAN

Bảng 1. 1 Quy trình khai phá dữ liệu - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 1. 1 Quy trình khai phá dữ liệu (Trang 10)
Bảng 1. 2 Quy trình phân cụm dữ liệu - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 1. 2 Quy trình phân cụm dữ liệu (Trang 13)
Hình 1. 1 Phân cụm phân cấp theo phương pháp giảm dần - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 1. 1 Phân cụm phân cấp theo phương pháp giảm dần (Trang 16)
Bảng 1. 3 Giải thích các giá trị tham số - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 1. 3 Giải thích các giá trị tham số (Trang 17)
Hình 2. 2 Phân tích thành phần chính PCA - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 2. 2 Phân tích thành phần chính PCA (Trang 23)
Hình 2. 3 Phân tích thành phần chính PCA - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 2. 3 Phân tích thành phần chính PCA (Trang 24)
Bảng 3. 1 Thông tin về các biến trong bộ số liệu 1 - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 3. 1 Thông tin về các biến trong bộ số liệu 1 (Trang 26)
Bảng 3. 2 Thông tin về các biến trong bộ số liệu 2 - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 3. 2 Thông tin về các biến trong bộ số liệu 2 (Trang 27)
Hình 3. 2 Minh họa bộ số liệu 2 - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 3. 2 Minh họa bộ số liệu 2 (Trang 27)
Bảng crosstable gồm 20000 dòng tương đương với 20000 người dùng, và - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng crosstable gồm 20000 dòng tương đương với 20000 người dùng, và (Trang 30)
Hình 3. 3 Đồ thị Elbow Method - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 3. 3 Đồ thị Elbow Method (Trang 32)
Hình 3. 4 Đồ thị Silhoutee Score - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 3. 4 Đồ thị Silhoutee Score (Trang 33)
Hình 3. 5 Đồ thị các cụm dữ liệu dưới không gian 3 chiều - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 3. 5 Đồ thị các cụm dữ liệu dưới không gian 3 chiều (Trang 35)
Hình 3. 6 Thể loại phim mà người dùng nhóm 1 yêu thích - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Hình 3. 6 Thể loại phim mà người dùng nhóm 1 yêu thích (Trang 37)
Bảng 3. 3 Top 5 thể loại phim mà người dùng nhóm 1 yêu thích - KHAI PHÁ DỮ LIỆU BẰNG THUẬT TOÁN k MEANS VỚI TÌNH HUỐNG PHÂN LOẠI NGƯỜI DÙNG WEBSITE ANIME47 COM
Bảng 3. 3 Top 5 thể loại phim mà người dùng nhóm 1 yêu thích (Trang 37)

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