Tải bản đầy đủ (.pdf) (29 trang)

Nghiên cứu phát triển thuật toán gom cụm mờ (tt)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (712.69 KB, 29 trang )

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

NGUYỄN NHƯ ĐỒNG

NGHIÊN CỨU PHÁT TRIỂN
THUẬT TOÁN GOM CỤM MỜ

Chuyên ngành: hệ thống thông tin
Mã số: 8.48.01.04

TÓM TẮT LUẬN VĂN THẠC SĨ

TP.HCM - 2018


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. NGUYỄN PHƯƠNG
(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


1

TÓM TẮT LUẬN VĂN
Chương 1 giới thiệu lí do chọn đề tài, trình bày tính khoa học và khả thi của đề tài
trong thời đại công nghệ thông tin hiện nay.
Để giải quyết bài toán mà đề tài đã đặt ra, chương 2 sẽ tìm hiểu khái quát những kiến
thức cơ sở về khai phá dữ liệu và các thuật toán gom cụm mờ. Từ đó đề xuất lựa chọn ra
một thuật toán thích hợp.
Sau khi đã tìm hiểu các thuật toán cơ sở để làm nền tảng khoa học, chương 3 tiếp
theo sẽ trình bày chi tiết hơn về ý tưởng, nội dung thuật toán gom cụm K-Means mờ sử
dụng trọng số Entropy (FKMUE) và phương pháp đánh giá cụm Calinski-Harabasz index.
Từ đó hướng đến việc đề xuất một giải pháp mới hiệu quả hơn bằng cách kết hợp hai
phương pháp này lại với nhau. Kết quả thực nghiệm với tập cơ sở dữ liệu Iris cũng được
thực hiện trong chương này để đánh giá kết quả gom cụm của mô hình đề xuất.
Sau khi minh chứng tính khả thi của mô hình đề xuất. Trong chương tiếp theo
(chương 4), luận văn tiến đến việc xây dựng một ứng dụng thực tế bằng cách áp dụng mô
hình đề xuất vào bài toán quản lý môn học và kết quả học tập của sinh viên trường Cao đẳng
Kỹ Nghệ II.
Và cuối cùng là tổng kết, phần này trình bày các kết quả đã đạt được cũng như những
vấn đề còn tồn tại và hướng phát triển trong tương lai.


2

Chương 1 - TỔNG QUAN
1.1 Tính cấp thiết của đề tài
Ngày nay, ứng dụng công nghệ thông tin đã phục vụ cho hầu hết các lĩnh vực trong

đời sống như viễn thông, kinh tế, y tế, giáo dục, ... Những ứng dụng đó mang lại cho con
người nhiều tiện ích trong cuộc sống, đáp ứng mọi nhu cầu từ đơn giản đến phức tạp. Việc
ứng dụng công nghệ thông tin trong cuộc sống cũng dẫn đến việc hình thành một khối lượng
dữ liệu khổng lồ, ngày càng lớn dần theo thời gian. Đây được xem là kho tri thức tiềm tàng,
đòi hỏi người sử dụng phải biết khai thác, chọn lọc dữ liệu có ích cho mình. Các tri thức rút
trích được có thể vận dụng để cải thiện hiệu quả hoạt động của hệ thống thông tin ban đầu.
Khai thác tri thức trong cơ sở dữ liệu đang là một xu hướng phát triển của nền công
nghệ thông tin hiện nay, vì nó có khả năng ứng dụng vào nhiều bài toán thực tế khác nhau.
Khai thác dữ liệu (Data Mining) [3] là bước quan trọng trong quá trình này, giúp người sử
dụng thu được những tri thức hữu ích từ các nguồn dữ liệu khổng lồ. Khai thác dữ liệu 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. Với ưu điểm trên, khai thác dữ liệu đã được ứng dụng rộng rãi trong các lĩnh
vực thương mại, tài chính, điều trị y học, giáo dục, …
Hiện nay, trong các trường đại học, cao đẳng, công nghệ thông tin đã được ứng dụng
trong việc quản lý hồ sơ sinh viên cũng như điểm số của các môn học trong từng học kỳ,
cho nên dữ liệu lưu trữ theo thời gian là rất lớn. Việc áp dụng khai thác dữ liệu trên dữ liệu
này là cần thiết, nhằm phục vụ cho việc quản lý, hỗ trợ sinh viên cũng như nâng cao chất
lượng giảng dạy của trường.
Với những lí do đã nêu, người nghiên cứu chọn đề tài “ Nghiên cứu phát triển
thuật toán gom cụm mờ ”

1.2 Tổng quan về vấn đề nghiên cứu:
Cùng với sự phát triển của xã hội, lượng thông tin phục vụ cho cuộc sống không ngừng tăng
lên. Sự tích lũy dữ liệu, do đó, diễn ra càng nhiều. Người ta uớc đoán rằng, luợng thông tin
trên toàn cầu tăng gấp đôi sau khoảng hai năm và theo đó số luợng cũng như kích cỡ của
các



sở


dữ

liệu

(CSDL)

cũng

tăng

lên

một

cách

nhanh

chóng.

Trong nhiều lĩnh vực, những nhà quản lý đang “ngập” trong dữ liệu, nhưng lại cảm thấy
“thiếu” tri thức và thông tin hữu ích. Lượng dữ liệu khổng lồ này thực sự là một nguồn “tài
nguyên” rất giá trị bởi thông tin là yếu tố then chốt trong mọi hoạt động vì thông tin giúp
những ngƣ ời điều hành và quản lý có một cái nhìn sâu sắc, chính xác, khách quan trước khi


3
ra quyết định. Khai phá dữ liệu – khai thác những thông tin tiềm ẩn mang tính dự đoán từ
những CSDL lớn – là một hướng tiếp cận mới với khả năng giúp các đơn vị, tổ chức chú

trọng vào những thông tin có nhiều ý nghĩa từ những tập hợp dữ liệu lớn (databases, data
warehouses, datarepositories) mang tính lịch sử. Những công cụ khai phá dữ liệu có thể dự
đoán những xu hướng trong tương lai và do đó cho phép các tổ chức, doanh nghiệp ra
những quyết định kịp thời đƣợc định hướng bởi tri thức mà khai phá dữ liệu đem lại. Sự
phân tích dữ liệu một cách tự động và mang tính dự báo của khai phá dữ liệu có ưu thế hơn
hẳn so với sự phân tích thông thường dựa trên những sự kiện trong quá khứ của các hệ hỗ
trợ ra quyết định (Decision support systems – DSSs) truyền thống trước đây. Công cụ khai
phá dữ liệu cũng có thể trả lời những câu hỏi trong lĩnh vực kinh doanh mà trước đây được
xem là tốn nhiều thời gian để xử lý.
Ta có thể coi khai phá dữ liệu giống như một quá trình phát hiện các mẫu mới đáp ứng được
các yêu cầu, các tương quan mới có ý nghĩa, các xu hướng khai thác trong các khối dữ liệu
của kho dữ liệu, sử dụng các kỹ thuật và các khái niệm của các lĩnh vực đã được nghiên cứu
từ trước như: học máy, nhận dạng, thống kê, hồi quy, xếp loại, phân nhóm, các mô hình đồ
thị, các mạng Bayes…
Khai phá dữ liệu được sử dụng để tạo ra giả thuyết. Ví dụ nh để xác định các yếu tố rủi ro
khi cho vay tín dụng, kỹ thuật khai phá dữ liệu phải phát hiện được những người có thu
nhập thấp và nợ nhiều là những người sẽ có mức rủi ro cao, ngoài ra kỹ thuật này cũng có
thể phát hiện ra những quy luật mà nhà phân tích có thể chưa tìm ra ví dụ như tỷ lệ giữa thu
nhập trên nợ và tuổi cũng là các yếu tố xác định mức rủi ro. Để làm được điều này, khai phá
dữ liệu sử dụng các thông tin trong quá khứ để học. Nó sẽ tìm kiếm các thông tin này trong
các

CSDL



sử

dụng


chúng

để

tìm

ra

các

mẫu

đáng

quan

tâm.

Nếu xét về mặt ý tưởng và mục đích ứng dụng, khai phá dữ liệu là một nhu cầu tất yếu đáp
lại sự mong mỏi của giới kinh doanh thì về mặt kỹ thuật, đó thực sự là một khó khăn và là
sự thách thức đối với những nhà khoa học. Khai phá dữ liệu được xây dựng dựa trên việc sử
dụng các giải thuật mới, được định hướng theo nhucầu kinh doanh để có thể giải quyết tự
động các bài toán kinh doanh bằng các kỹ thuật dễ dùng và có thể hiểu được. Các kỹ thuật
đang được nghiên cứu và sử dụng hiện nay bao gồm cây quyết định (CART, CHAID, AID),
mạng neuron, phương pháp láng giềng gần nhất, các luật suy diễn…
Khai phá dữ liệu không thuộc một ngành công nghiệp nào. Nó sử dụng các kỹ thuật
thông minh để khai phá các tri thức tiềm ẩn trong dữ liệu. Hiện nay trên thế giới đã có rất


4

nhiều ngành công nghiệp sử dụng kỹ thuật khai phá dữ liệu để phục vụ cho hoạt động của
mình và đã bước đầu thành công như ngành tài chính, y học, hoá học, bảo hiểm, sản xuất,
giao thông, hàng không… Các kết quả đạt được cho thấy mặc dù kỹ thuật khai phá dữ liệu
hiện nay vẫn còn nhiều vấn đề nổi cộm, nhưng với những tri thức mà chuyên gia con người
cũng chưa cung cấp được thì khai phá dữ liệu có một tiềm năng to lớn trong việc tạo ra
những lợi nhuận đáng kể trong nền kinh tế.
Với tất cả những ưu thế trên, khai phá dữ liệu đã chứng tỏ được tính hữu
dụng của nó trong môi trường kinh doanh đầy tính cạnh tranh ngày nay. Giờ đây,
khai phá dữ liệu đã và đang trở thành một trong những hướng nghiên cứu chính của
lĩnh vực khoa học máy tính và công nghệ tri thức.
1.3 Mục đích nghiên cứu:
Luận văn thực hiện nhằm mục đích vào việc tìm hiểu, nghiên cứu kiến thức về khai
thác dữ liệu mà cụ thể hơn đó là các phương pháp gom cụm mờ và phương pháp đánh giá
cụm. Từ đó đề xuất một mô hình kết hợp giữa hai phương pháp này.

1.4 Nội dung nghiên cứu
Với mục đích của đề tài đặt ra là tìm hiểu một số thuật toán gom cụm mờ trên dữ liệu
đầu vào hiệu quả. Từ đó đánh giá so sánh với thuật toán đề xuất.

1.5 Phương pháp nghiên cứu
Nghiên cứu lý thuyết: Dựa trên nguồn tài liệu tạp chí khoa học trong và ngoài nước,
tham khảo thêm một số nguồn tài liệu khác có liên quan đến đề tài.
Nghiên cứu thực nghiệm: Thông qua việc nghiên cứu lý thuyết, xây dựng chương
trình thử nghiệm.


5

Chương 2 - CƠ SỞ LÝ THUYẾT
2.1 Khai thác dữ liệu

2.1.1 Giới thiệu
Khoảng hơn một thập kỷ trở lại đây, lượng thông tin được lưu trữ trên các thiết bị điện
tử (đĩa cứng, CD-ROM, băng từ, .v.v.) không ngừng tăng lên. Sự tích lũy dữ liệu này xảy ra
với một tốc độ bùng nổ. Người ta ước đoán rằng lượng thông tin trên toàn cầu tăng gấp đôi
sau khoảng hai năm và theo đó số lượng cũng như kích cỡ của các cơ sở dữ liệu cũng tăng lên
một cách nhanh chóng. Nói một cách hình ảnh là chúng ta đang “ngập” trong dữ liệu nhưng
lại “đói” tri thức. Câu hỏi đặt ra là liệu chúng ta có thể khai thác được gì từ những “núi” dữ
liệu tưởng chừng như “bỏ đi” ấy không? Khai thác dữ liệu [3] ra đời như một hướng giải
quyết hữu hiệu cho câu hỏi vừa đặt ra ở trên, giúp khai thác những thông tin hữu ích từ những
kho dữ liệu được tích trữ trong suốt quá trình hoạt động của một công ty, tổ chức nào đó.

2.1.2 Các nhiệm vụ chính của khai thác dữ liệu
Khai thác dữ liệu được chia nhỏ thành hai mục đich chính như sau:


Khai thác dữ liệu mô tả

● Khai thác dữ liệu dự đoán

2.1.2.1 Phân lớp dữ liệu
Mục tiêu của phương pháp phân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ liệu.
Quá trình phân lớp dữ liệu thường gồm hai bước: Xây dựng mô hình và sử dụng mô hình để
phân lớp dữ liệu.

2.1.2.2 Phương pháp hồi quy
Phương pháp hồi quy khác với phân lớp dữ liệu ở chỗ: Hồi quy dùng để dự đoán về
các giá trị liên tục còn phân lớp dữ liệu chỉ dùng để dự đoán về các giá trị rời rạc.

2.1.2.3 Phương pháp gom cụm mờ
Sử dụng kỹ thuật mờ để gom cụm dữ liệu, các thuật toán thuộc loại này chỉ ra lược

đồ gom cụm thích hợp với tất cả các hoạt động đời sống hằng ngày, chúng chỉ xử lý dữ liệu
thực không chắc chắn.


6
2.1.2.4 Khai thác luật kết hợp
2.1.2.5 Gom cụm dữ liệu
2.2 Kỹ thuật gom cụm trong khai thác dữ liệu
2.2.1 Tổng quan về kỹ thuật gom cụm
o Biểu diễn dữ liệu.
o Xây dựng hàm tính độ tương tự.
o Xây dựng các tiêu chuẩn gom cụm.
o Xây dựng mô hình cho cấu trúc cụm dữ liệu.
o Xây dựng thuật toán gom cụm và xác lập các điều kiện khởi tạo.
o Xây dựng các thủ tục biểu diễn và đánh giá kết quả gom cụm.

2.2.2 Ứng dụng của gom cụm dữ liệu
o Thương mại
o Sinh học
o Phân tích dữ liệu không gian
o Lập quy hoạch đô thị
o Nghiên cứu trái đất
o Địa lý
o

Khai phá Web

2.2.3 Các yêu cầu đối với kỹ thuật gom cụm dữ liệu
o Có khả năng mở rộng
o


Thích nghi với các kiểu dữ liệu khác nhau

o

Khám phá ra các cụm với hình thù bất kỳ

o Tối thiểu lượng tri thức cần cho xác định các tham số vào

2.2.4 Phân loại các kiểu dữ liệu
2.2.4.1 Phân loại kiểu dữ liệu dựa trên kích thước miền
o Thuộc tính liên tục
o

Thuộc tính rời rạc

o Lớp các thuộc tính nhị phân

2.2.4.2 Phân loại kiểu dữ liệu dựa trên hệ đo
2.2.5 Độ đo tương tự, phi tương tự
2.2.6 Một số phương pháp gom cụm dữ liệu


7
2.2.6.1 Gom cụm phân cấp
Phương pháp Bottom up
Phương pháp Top Down
2.2.6.2 Gom cụm dựa trên mật độ
2.2.6.3 Gom cụm dựa trên lưới
2.2.6.4 Gom cụm dựa trên mô hình

2.2.6.5 Gom cụm phân hoạch
2.3 Thuật toán k-means
Thuật toán K-Means bao gồm các bước cơ bản như sau:
INPUT: Một cơ sở dữ liệu gồm n đối tượng và số các cụm k.
OUTPUT: Các cụm Ci (i=1,..,k) sao cho hàm tiêu chuẩn F đạt giá trị tối thiểu.
Bước 1: Khởi tạo
Chọn k đối tượng mj (j=1...k) là trọng tâm ban đầu của k cụm từ tập 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 tượng Xi (1 ≤ i ≤ n) , tính toán khoảng cách từ nó tới mỗi trọng tâm
mj với j=1,..,k, sau đó tìm trọng tâm gần nhất đối với mỗi đối tượng.
Bước 3: Cập nhật lại trọng tâm
Đối với mỗi j=1,..,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ủa các vector đối tượng dữ liệu.
Bước 4: Điều kiện dừng
Lặp các bước 2 và 3 cho đến khi các trọng tâm của cụm không thay đổi

2.4 Thuật toán k-means mờ
Các thực thể trong thế giới thực hay các khái niệm trừu tượng thường là các đối
tượng phức tạp. Các đối tượng này chứa một tập nhất định các thông tin về đối tượng và các
hành vi của chính đối tượng đó. Thông tin về đối tượng được gọi là thuộc tính đối tượng và
được xác định bởi giá trị cụ thể. Chúng ta có thể thấy rằng, tùy thuộc vào mục tiêu gom cụm
mà tính chất quan trọng của mỗi thuộc tính là khác nhau. Do đó, chúng ta cần đánh giá tính
quan trọng của từng thuộc tính trong đối tượng để thu được kết quả gom cụm tốt hơn. Cụ
thể là cung cấp một giá trị trọng số ω trong độ đo F để thể hiện mức độ quan trọng của
thuộc tính. Phương pháp này được gọi là gom cụm mờ [18]-[19] và độ đo F được tính như
sau:


8


(2.1)
Trong đó:

o n: số phần tử trong cụm
o m: số thuộc tính của phần tử.
o k: số cụm
o cli : phần tử trung tâm của cụm ( 1<= i <=n ).

2.4.1 Các bước trong thuật toán gom cụm mờ
INPUT: Một cơ sở dữ liệu gồm n đối tượng và số các cụm k.
OUTPUT: Các cụm Ci (i=1,..,k) sao cho hàm tiêu chuẩn F đạt giá trị
tối thiểu.
Bước 1: Khởi tạo
Chọn k đối tượng mj (j=1...k) là trọng tâm ban đầu của k cụm từ
tập dữ liệu (việc lựa chọn này có thể là ngẫu nhiên hoặc theo kinh nghiệm).
Khởi tạo trọng số ωli = 1/m (1<= i <=n, 1<= l <=m)
Bước 2: Tính toán τ theo công thức

(2.2)
Bước 3: Tính hàm F theo công thức

(2.3)
Bước 4: Cập nhật lại trọng tâm C theo công thức

(2.4)
Bước 5: Cập nhật lại ω theo công thức


9


(2.5)
Bước 6: Điều kiện dừng
Lặp lại các bước 2 đến bước 5 cho đến khi hàm F là nhỏ nhất

2.4.2 Nhận xét
Dựa vào công thức tính ω như trên, ta nhận thấy trong một số trường hợp giá trị ω
có thể không tính toán được khi mẫu số bằng 0.
Để giải quyết vấn đề này nhóm tác giả Liping Jing [10] đề xuất thuật toán “An
Entropy Weighting K-Means Algorithm (EWKM)” nhằm khắc phục hạn chế khi tính toán ω
bằng cách xây dựng hàm F cải tiến như sau:

(2.6)

Mặc dù phương pháp EWKM đã giải quyết được vấn đề mẫu số bằng 0 khi tính toán
giá trị ω nhưng nó vẫn còn hạn chế đó là chưa tách được các lớp một cách rõ rệt. Điều này
dẫn đến kết quả là phần tử giữa các cụm có thể nằm gần nhau gây nên sự chồng chéo và
không chính xác

2.5 Kết luận
Các thuật toán K-Means và K-Means mờ được khảo sát cho đến thời điểm này là một
bước đột phá trong lĩnh vực gom cụm dữ liệu nhưng vẫn còn tồn tại một số khuyết điểm.
Theo thời gian, để khắc phục hạn chế của K-Means mờ, nhiều thuật toán cải tiến đã lần lượt
ra đời và một trong những thuật toán cải tiến gần đây nhất được biết đến đó thuật toán gom
cụm K-Means mờ sử dụng trọng số Entropy (Fuzzy K-Means Algorithm For Clustering
Using Entropy - FKMUE) của hai tác giả Taoying Li và Yan Chen [12]-[20]. Mục tiêu của
thuật toán này là điều chỉnh hàm chí phí F trong công thức (2.6) bằng cách thêm vào một
biến liên quan đến khoảng cách trung bình giữa các phần tử và khoảng cách trung bình giữa
các cụm với nhau. Điều này không những giúp cho các mẫu trong cùng một cụm gom lại
gần nhau mà còn hướng đến việc phân chia các cụm cách xa nhau nhất.



10

Chương 3 - MÔ HÌNH KẾT HỢP K-MEANS MỜ SỬ DỤNG
TRỌNG SỐ ENTROPY VÀ ĐÁNH GIÁ CỤM
DỰA TRÊN CHỈ SỐ
3.1 Xây dựng thuật toán
3.1.1 Một số ký hiệu và định nghĩa
Định nghĩa: Các ký hiệu sử dụng
Cho một tập các đối tượng dữ liệu, ta có:


n: số phần tử trong tập dữ liệu.



m: số thuộc tính của một phần tử.



k: số cụm.



xji : giá trị phần tử thứ j tại thuộc tính thứ i (1<= i <=m, 1<= j <=n).



cli : giá trị phần tử trung tâm cụm thứ l tại thuộc tính thứ i (1<= i <=m, 1<= l




ωli: trọng số của thuộc tính i trong cụm l (1<= i <=m, 1<= l <=k).

<=k).
τlj: độ thuộc của phần tử thứ j trong cụm l (1<= j <=n, 1<= l <=k)

3.1.2 Gom cụm K-Means mờ sử dụng trọng số Entropy (FKMUE)
Tất cả các thuật toán gom cụm được trình bày trong chương 1 chỉ mới thỏa mãn mục
tiêu đó là làm sao cho khoảng cách giữa các phần tử trong cùng một cụm gom lại gần nhau.
Tuy nhiên vẫn còn có một mục tiêu khác mà hầu hết các thuật toán này bỏ qua đó là làm sao
để khoảng cách giữa hai phần tử bất kỳ từ hai cụm khác nhau tách xa nhau nhất. Để khắc
phục nhược điểm này nhóm tác giả Taoying Li đã đề xuất phương pháp gom cụm K-Means
mờ sử dụng trọng số Entropy (FKMUE) [12]-[20] như sau:

(3.1)

Trong đó :

: giá trị trung bình của tất cả mẫu trong tập cơ sở dữ liệu,

là giá trị trung bình


11
của thuộc tính thứ i trong mẫu

và nó được tính bằng công thức sau :


(3.2)
Mục tiêu chính của công thức (3.1) là hướng đến việc phân chia các cụm sao cho
khoảng cách giữa các mẫu trong cùng một cụm tiến về gần nhau còn khoảng cách giữa các
cụm thì tách xa nhau nhất có thể. Để đạt được điều này, chúng ta tìm cách tối ưu hàm F
bằng cách làm giảm giá trị F xuống đến mức thấp nhất dựa vào 3 giá trị T, W và C. Vì T, W
và C là ba giá trị biến thiên và sẽ thay đổi dựa trên mức độ phân bổ của các mẫu trong cụm,
do đó để tìm kiếm các giá trị này trước tiên chúng ta thực hiện tìm kiếm giá trị W thích hợp
bằng cách cố định T và C. Tiếp theo tìm giá trị C bằng cách cố định T và W. Cuối cùng là
tìm giá trị T bằng cách cố định C và W. Quá trình trên sẽ được lặp lại cho đến khi không thể
giảm F thêm nữa.
Lý thuyết : Cho T và C cố định, F đạt giá trị nhỏ nhất nếu và chỉ nếu trọng số

(3.3)

Trong đó:

(3.4)

Chứng minh: Áp dụng kỹ thuật nhân Lagrange [10]-[19], giá trị F đạt giá trị nhỏ
nhất khi

(3.5)
Trong đó

là các vec-tơ. Vì các cụm độc lập với nhau do đó :

(3.6)




12

(3.7)
Lần lượt lấy đạo hàm của

theo



, ta có

(3.8)

(3.9)

Từ công thức (3.9), ta có

(3.10)

(3.11)

Thay (3.10) vào (3.8), ta được

(3.12)

(3 .13)

Tương tự như quá trình tìm kiếm

, chúng ta có thể tìm kiếm giá trị T bằng cách cố


định W và C. Như chúng ta đã biết mẫu thứ j sẽ thuộc cụm l khi khoảng cách từ nó đến tâm
của cụm l là nhỏ nhất. Do đó :

(3.14)


13
nghĩa là đối tượng j thuộc cụm l, ngược lại
Sau khi có được W và T, chúng ta dễ dàng tính được C bằng cách tính trung bình của
các phần tử trong cùng một cụm theo công thức sau:

(3.15)

Trong đó 1≤ l ≤k và 1 ≤ i ≤ m
Toàn bộ quá trình của phương pháp FKMUE có thể được mô tả theo các bước sau
o Bước 1: Cho trước các giá trị đầu vào m, n, k, γ, số lần lặp tối đa S và trọng số
của mỗi thuộc tính
o Bước 2: Chọn k đối tượng ngẫu nhiên từ các mẫu ban đầu để làm tâm của k cụm
o Bước 3: Tìm giá trị T theo công thức

(3.14)

o Bước 4: Tính giá trị F(T,W,C) theo công thức

(3.1)

o Bước 5: Cập nhật giá trị C theo công thức

(3.15)


o Bước 6: Cập nhật giá trị W theo công thức

(3.13)

o Bước 7: Lặp lại bước 3 đến bước 6 cho đến khi F(T,W,C) không giảm được nữa
hoặc số lần lặp bằng S

3.1.3 Phương pháp đánh giá cụm Calinski-Harabasz index
Các thuật toán gom cụm mờ được xem là kỹ thuật học không giám sát. Mục tiêu của
chúng là phân tích mức độ tương quan giữa các dữ liệu và nhóm chúng lại thành từng cụm
có tính chất tương tự với nhau. Một trong những thách thức của phương pháp này là rất khó
để kết luận kết quả đầu ra sau khi thực hiện gom cụm là tốt hay xấu. Vì vậy tiêu chí để đo
lường, đánh giá việc chọn số cụm sao cho hiệu quả là một bài toán cần thiết và vô cùng
quan trọng trong kỹ thuật gom cụm. Gần đây một số phương pháp đã được đề xuất để giải
quyết vấn đề này, cụ thể như là phương pháp dựa vào tính ổn định (Stability based methods)
[23]-[24], phương pháp dựa vào mô hình tương thích (Model fitting based methods) [25],
phương pháp chỉ số giá trị gom cụm (Clustering validity indices - CVI) [22]. Trong số các
phương pháp này, CVI được xem là phương pháp phổ biến và sử dụng rộng rãi vì nó tận
dụng ưu điểm từ các giải pháp đo lường gom cụm đã tồn tại trước đó. Chính vì vậy, trong
luận văn này tôi sử dụng phương pháp CVI, cụ thể hơn là phương pháp Calinski-Harabasz
index [26] như sau:


14
o Bước 1: Biểu diễn các mẫu dưới dạng các vector cột.
o Bước 2: Tính giá trị trung bình của mỗi cụm (i)):

(3.16)
với D là số mẫu của cụm l

o Bước 3: Tính giá trị trung bình của tất cả các mẫu trong tất cả các cụm ():

(3.17)
o Bước 4: với K là số cụm, D là
o Bước 5: Tính “ma trận phân tán bên trong” (Within-class scatter matrix) (Sw): số
mẫu của lớp l, N là tổng số mẫu của tất cả các cụm

(3.18)

o Bước 6: Tính “ma trận phân tán bên cạnh” (Between-class scatter matrix) (Sb):

(3.19)

o Bước 7: Tính giá trị sCH

(3.20)

Quá trình trên sẽ được lặp lại với các giá trị K khác nhau cho đến khi nào tìm ra K có
giá trị sCH lớn nhất. Khi đó K được xem là số cụm tốt nhất

3.1.4 Mô hình kết hợp K-Means mờ sử dụng trọng số Entropy và đánh giá
cụm Calinski-Harabasz Index
Trong phần này sẽ trình bày một phương pháp mới cho việc gom cụm dựa vào sự kết
hợp thuật toán K-Means mờ sử dụng trọng số Entropy và phương pháp đánh giá cụm
Calinski-Harabasz index. Ưu điểm của phương pháp này không những phân chia cụm hiệu
quả, có độ chính xác cao mà còn có khả năng đo lường cụm, đánh giá cụm nhằm tìm ra
được số cụm tối ưu đủ đáp ứng cho các nhu cầu thực tiễn. Một cách cụ thể, phương pháp
của tôi được chia ra làm 2 giai đoạn như sau:



Giai đoạn 1: Sử dụng thuật toán FKMUE để gom cụm tập dữ liệu đầu vào.



Giai đoạn 2: Sau khi phân hoạch dữ liệu thành từng cụm bằng thuật toán

FKMUE, sử dụng độ đo Calinski-Harabasz để đánh giá tính hiệu quả ứng với số cụm vừa
tìm được. Quá trình trên sẽ được lặp đi lặp lại cho các cụm khác nhau và số cụm có giá trị


15
SCH lớn nhất được chọn làm kết quả sau cùng.
Toàn bộ thuật toán này có thể được mô hình bằng sơ đồ như hình 3.1
Gom cụm dữ liệu
FKMUE với I=2

CalinskiHarabasz

SCH2

Gom cụm dữ liệu
FKMUE với I=3

index
CalinskiHarabasz

SCH3

index
CalinskiHarabasz


SCH4

Gom cụm dữ liệu
FKMUE với
I=4
Gom cụm dữ liệu
FKMUE với I=5

index
CalinskiHarabasz

SCH5

Gom cụm dữ liệu
FKMUE với I=6

index
CalinskiHarabasz

SCH6

…………………

Gom cụm dữ liệu
FKMUE với I=k

index

CalinskiHarabasz


Số cụm tối ưu
=Max(SCH2), với
2≤ i ≤ k

……


SCHk

indexFKMUE và Calinski-Harabasz index
Hình 3.1 Mô hình kết hợp giữa phương pháp

Nhận xét
Hầu hết các thuật toán gom cụm mờ cho đến thời điểm này thường mang tính chất
ngẫu nhiên khi chọn tâm ban đầu cho các cụm. Vì vậy trong một số trường hợp có thể xảy
ra hiện tượng tâm của các cụm được chọn nằm cạnh nhau hoặc có tính chất tương tự nhau.
Điều này dẫn đến kết quả là chi phí lặp lại cho số lần phân chia cụm là rất lớn làm giảm hiệu
năng của hệ thống. Để giải quyết vấn đề này người nghiên cứu đã làm một số điều chỉnh
cho việc chọn tâm cho k cụm ban đầu bằng cách tính toán khoảng cách sao cho tâm của cụm
tiếp theo có khoảng cách xa nhất so với tâm của các cụm đã chọn trước đó. Ngoài ra do dữ
liệu trong thực tế thường không đồng nhất và hay bị dư thừa nên thường dẫn đến việc gom
cụm có độ chính xác không cao. Để loại bỏ những thuộc tính dư thừa, không tham gia vào
quá trình gom cụm cũng như đảm bảo dữ liệu luôn được nhất quán người nghiên cứu tiến
hành chuẩn hóa dữ liệu về gốc tọa độ theo công thức như sau:

(3.21)


16

Toàn bộ mô hình đề xuất gom cụm và đánh giá cụm của học viên được tóm tắt
lại như sau
o

Bước 1: Cho trước các giá trị đầu vào m, n, l, maxValue = 0, K, γ, và số lần. lặp

tối đa s và trọng số ban đầu của các thuộc tính như sau

.

o Bước 2: Chuẩn hóa thuộc tính của các mẫu về gốc tọa độ theo công thức
(3.21).
o Bước 3: Đưa tất cả các mẫu sau khi được chuẩn hóa vào tập H và gán tập C
(chứa tâm của mỗi cụm) ban đầu là rỗng.
o Bước 4: Chọn ngẫu nhiên một mẫu bất kỳ trong H và đưa vào C, đồng thời loại
bỏ mẫu này ra khỏi H. Mẫu này được xem là tâm của cụm đầu tiên.
o Bước 5: Tìm một mẫu tiếp theo trong H đặt vào C sao cho khoảng cách từ mẫu
này đến tất cả các mẫu trong C là xa nhất.
o Bước 6: Nếu số tâm trong C bẳng với k chuyển sang bước 7, ngược lại quay
sang bước 5.
o Bước 7: Tính giá trị T theo công thức (3.14) và giá trị F(T,W,C) theo công thức
(3.1).
o Bước 8: Cập nhật C theo công thức (3.15) và W theo công thức (3.13).
o Bước 9: Lặp lại bước 7 và bước 8 cho đến khi F không thể nhỏ hơn được nữa
hoặc số lần lặp bằng S, khi đó chuyển sang bước 10.
o Bước 10: Đánh giá số cụm vừa tìm theo công thức (3.20) để được giá trị sCH.
o Bước 11: So sánh giá trị sCH với maxValue. Nếu sCH lớn hơn maxValue thì gán
maxValue = sCH.
o Bước 12: Tăng giá trị l = l +1. Nếu l ≤ K thì chuyển sang bước 3. Ngược lại số
cụm được chọn l là số cụm có giá trị sCH lớn nhất


3.2 Nhận xét mô hình - thuật toán đề xuất
Trong chương này tôi đã trình bày một phương pháp mới cho việc gom cụm bằng
cách kết hợp thuật toán FKMUE và Calinski-Harabasz index. So với các thuật toán KMeans mờ truyền thống tính chất mờ thường đi kèm với cả đối tượng vì vậy không phản
ánh rõ mức độ quan trọng của thuộc tính khi xem xét gom cụm đối tượng. Trái lại thuật toán
K-Means mờ với trọng số entropy chú trọng đến tính chất mờ trên từng thuộc tính, cho phép
người dùng điều chỉnh để tăng hệ số mờ với các thuộc tính quan trọng và giảm giá trị với
các thuộc tính không cần thiết. Thêm vào đó sự điều chỉnh của hàm F để làm gia tăng


17
khoảng cách giữa các cụm và thu hẹp giữa các mẫu trong cụm đã góp phần rất lớn vào mức
độ chính xác, giúp cho các cụm rõ ràng và có nhiều ý nghĩa hơn. Cuối cùng tính hiệu quả
của phương pháp còn được đo lường qua tiêu chuẩn đánh giá cụm bằng phương pháp
Calinski-Harabasz index, giúp cho kết quả gom cụm được chính xác, có ý nghĩa và tin cậy
hơn. Với những ưu điểm vừa được trình bày ở trên, có thể thấy rằng phương pháp đề xuất
của tôi có đủ tính khả thi cho bài toán gom cụm dữ liệu, đáp ứng nhu cầu ứng dụng thực tiễn
trong nhiều lĩnh vực khác nhau.

3.3 Thực nghiệm
Trong phần này, sẽ trình bày các kết quả thử nghiệm của thuật toán đã trình bày trong
luận văn để so sánh với thuật toán gom cụm mờ truyền thống

3.3.1 Thiết lập thử nghiệm
Để kiểm tra tính đúng đắn của thuật toán, học viên thực hiện thử nghiệm thuật toán
theo tiêu chí sau
● Tỷ lệ lỗi của thuật toán gom cụm mờ đề xuất và tỉ lệ lỗi của thuật toán gom cụm
mờ truyền thống.

3.3.2 Dữ liệu thử nghiệm thuật toán gom cụm mồ đề xuất

a) Tập cơ sở dữ liệu Iris
Tập cơ sở dữ liệu Iris là một trong những tập cơ sở dữ liệu nổi tiếng dùng làm thực
nghiệm cho các bài toán gom cụm và nhận dạng mẫu. Với số lượng 150 mẫu trong đó mỗi
mẫu bao gồm 4 thuộc tính:
1. Chiều dài của đài hoa (sepal length)
2. Chiều rộng đài hoa (sepal width)
3. Chiều dài cánh hoa (petal length)
4. Chiều rộng cánh hoa (petal width)
Các mẫu được phân chia làm 3 lớp như sau:
-

Từ mẫu 1 đến mẫu 50 thuộc lớp Iris Setosa

-

Từ mẫu 51 đến mẫu 100 thuộc lớp Iris Versicolour

-

Từ mẫu 101 đến mẫu 100 thuộc lớp Iris Virginica

Để đánh giá độ chính xác của thuật toán gom cụm thì đánh giá tỷ lệ lỗi được tính như sau:
Tỷ lệ lỗi = (số mẫu gom cụm sai/ Tổng số mẫu kiểm tra)x100%


18
Đánh giá độ chính xác của thuật toán gom cụm thông qua tỷ lệ lỗi. Tỷ lệ lỗi càng nhỏ, thuật
toán có độ chính xác càng cao, có tính phù hợp
Để tiến hành thực nghiệm, trước tiên tôi khởi tạo một số tham số đầu vào cho tập dữ liệu
Iris bao gồm: số thuộc tính m =4, số mẫu n=150, số cụm k=3, giá trị mờ γ = 1.5, Ngoài ra để

kiểm tra mức độ đóng góp của các thuộc tính vào kết quả gom cụm, học viên lần lượt thay
đổi trọng số ω của từng thuộc tính sao cho tổng giá trị của các trọng số này luôn luôn là 1.
Sở dĩ tôi thay đổi trọng số cho các thuộc tính là để thấy được mức độ đóng góp của từng
thuộc tính vào kết quả gom cụm. Việc làm này hoàn toàn phù hợp với các bài toán ứng dụng
thực tiễn vì trong khi phân nhóm đối tượng, dựa vào mục đích hướng đến mà chúng ta có
những quyết định nên chọn thuộc tính nào là quan trọng nhất và ngược lại
Bảng 3.1: Bảng tỷ lệ lỗi thuật toán gom cụm mờ đề xuất
ω
Trường

Số mẫu

Số mẫu

Tỷ lệ

Thuộc

Thuộc

Thuộc

Thuộc

tính 1

tính 2

tính 3


tính 4

1

0.4

0.4

0.1

0.1

150

82

55%

2

0.1

0.1

0.4

0.4

150


7

4,6%

3

0.1

0.4

0.4

0.1

150

16

10.6%

4

0.4

0.1

0.1

0.4


150

12

8%

5

0.25

0.25

0.25

0.25

150

7

4.6%

hợp

lỗi

sai

Từ kết quả thống kê tỷ lệ lỗi trong Bảng 1 ta thấy quá trình gom cụm tốt nhất khi ω = {0.1,
0.1, 0.4, 0.4} với tỷ lệ chính xác là 96% và quá trình phân cụm xấu nhất khi ω = {0.4, 0.4,

0.1, 0.1} với tỷ lệ chính xác là 45%. Điều này cho thấy, trọng số của các thuộc tính đóng
góp rất lớn vào tính chính xác của quá trình phân cụm. Ngoài ra với tỷ lệ phân cụm chính
xác lên đến 96% nếu chọn các thuộc tính phù hợp cho chúng ta kết luận rằng phương pháp
phân cụm mờ với trọng số Entropy cải tiến là phương pháp gom cụm chính xác, hiệu quả,
mang lại hiệu quả khi áp dụng cho các bài toán ứng dụng thực tiễn.


19
Bảng 3.2: Kết quả đánh giá cụm bằng phương pháp Calinski-Harabasz index
Tỉ lệ đánh giá

Số cụm

STT

1.1438

3

1

0.8229

4

2

0.7417

5


3

0.7221

6

4

0.6879

7

5

Nhận xét: Từ các kết quả trên cho thấy, với tập cơ sở dữ liệu Iris, số cụm n =3 là tối
ưu nhất vì có tỉ lệ là 1.1438
Kết luận: Cụm tốt nhất khi thuộc tính m=4, n=150, số cụm k=3, giá trị mờ γ = 1.5
Số thứ tự cụm

Số phần tử sai

Tỉ lệ lỗi từng cụm

Cụm 1

0

0%


Cụm 2

3

2%

Cụm 3

4

2.6%

3.3.3 Dữ liệu thử nghiệm thuật toán fuzzy k-means
-Tập cơ sở dữ liệu Iris
Tập cơ sở dữ liệu Iris là một trong những tập cơ sở dữ liệu nổi tiếng dùng làm thực
nghiệm cho các bài toán gom cụm và nhận dạng mẫu. Với số lượng 150 mẫu trong đó mỗi
mẫu bao gồm 4 thuộc tính:
1.Chiều dài của đài hoa (sepal length)
2.Chiều rộng đài hoa (sepal width)
3.Chiều dài cánh hoa (petal length)
4.Chiều rộng cánh hoa (petal width)
Các mẫu được phân chia làm 3 lớp như sau:
-

Từ mẫu 1 đến mẫu 50 thuộc lớp Iris Setosa

-

Từ mẫu 51 đến mẫu 100 thuộc lớp Iris Versicolour


-

Từ mẫu 101 đến mẫu 100 thuộc lớp Iris Virginica

Để đánh giá độ chính xác của thuật toán gom cụm thì đánh giá tỷ lệ lỗi được tính như sau:
Tỷ lệ lỗi = (số mẫu gom cụm sai/ Tổng số mẫu kiểm tra)x100%


20
Đánh giá độ chính xác của thuật toán gom cụm thông qua tỷ lệ lỗi. Tỷ lệ lỗi càng nhỏ, thuật
toán có độ chính xác càng cao, có tính phù hợp
Để tiến hành thực nghiệm, trước tiên tôi khởi tạo một số tham số đầu vào cho tập dữ liệu
Iris bao gồm: số thuộc tính m =4, số mẫu n=150, số cụm k=3, giá trị mờ γ = 1.5.
Kết luận: Cụm tốt nhất khi thuộc tính với m=4, n=150, số cụm k=3, giá trị mờ
γ = 1.5
Số thứ tự cụm

Số phần tử sai

Tỉ lệ lỗi từng cụm

Cụm 1

0

0%

Cụm 2

11


7%

Cụm 3

11

7%

So sánh thuật toán gom cụm mờ đề xuất với thuật toán fuzzy k-means

3.4

Cụm 1 Cả hai thuật toán gom cụm mờ giống nhau về tỉ lệ lỗi (0%)
Cụm 2 tỉ lệ lỗi của thuật toán gom cụm mờ đề xuất thấp hơn thuật toán fuzzy k-means
Cụm 3 tỉ lệ lỗi của thuật toán gom cụm mờ đề xuất thấp hơn thuật toán fuzzy k-means

3.5 Kết luận
Trong chương này tôi đã trình bày kết quả thực nghiệm cho việc kết hợp phương
pháp gom cụm K-Means mờ với trọng số Entropy và đánh giá cụm Calinski-Harabasz
index. Các kết quả đầu ra cho thấy, với việc chọn hệ số phù hợp phương pháp gom cụm mới
với trọng số Entropy là phương pháp hiệu quả có độ chính xác cao. Ngoài ra để nâng cao độ
tin tưởng cho hệ thống gom cụm tôi đã sử dụng phương pháp đánh giá cụm CalinskiHarabasz index như là thước đo tính chính xác cho đầu ra khi chọn số cụm. Việc kết hợp
này có thể được xem là một giải pháp đúng đắn mang lại tính hiệu quả cao cho quá trình
gom cụm.


21

Chương 4 - VẬN DỤNG MÔ HÌNH ĐỀ XUẤT VÀO ỨNG DỤNG

THỰC TIỄN
4.1 Giới thiệu ứng dụng
4.2 Yêu cầu chức năng
Ứng dụng bao gồm 2 chức năng chính là gom cụm môn học và gom cụm sinh viên.
Bảng 4.1: Yêu cầu chức năng của phần mềm ứng dụng
STT

Yêu cầu chức năng của phần mềm

Ghi chú (nếu cần)

1.

Nhập cơ sở dữ liệu đầu vào

2.

Hiển thị cơ sở dữ liệu

Hiển thị theo dạng bảng

3.

Nhập số cụm, hệ số mờ, trọng số khởi tạo

Người dùng có thể thay

cho từng thuộc tính

đổi các giá trị này


4.

Thực thi thuật toán

5.

Hiển thị kết quả gom cụm

Hiển thị dưới dạng bảng

6.

Hiển thị kết quả đánh giá cụm

Hiển thị dưới dạng bảng

4.3 Yêu cầu chất lượng
4.4 Các bước thực hiện
Các bước thực hiện như sau:
1. Nhập cơ sở dữ liệu đầu vào
2. Nhập số cụm k, hệ số mờ γ, trọng số ω cho mỗi thuộc tính
3. Thực hiện chức năng gom cụm môn học/ gom cụm sinh viên
4. Thực hiện chức năng đánh giá cụm, ta thu được trọng số Ti
5. Tiếp tục quay lại bước 2 với giá trị k khác, ta thu được trọng số Ti+1
6. Kết quả thu được tương ứng với số cụm mà có giá trị T lớn nhất


22
4.5 Gom cụm môn học

Dữ liệu đầu vào có cấu trúc như sau:
Bảng 4.2: Minh họa cơ sở dữ liệu đầu vào môn học
Điểm 9 và 10

Điểm 7 và 8

Điểm 5 và 6

Dưới 5

Môn học

0.08

0.1

0.8

0.02

Môn 1

0.05

0.2

0.7

0.05


Môn 2

0.1

0.2

0.6

0.1

Môn 3

0.1

0.3

0.4

0.2

Môn 4

0.2

0.3

0.5

0.1


Môn 5

Dữ liệu đầu ra:
1. Cụm 1: Môn 1, Môn 3
2. Cụm 2: Môn 4
3. Cụm 3: Môn 2, Môn 5
❖ Vùng hiển thị kết quả gom cụm môn học


23

Hình 4.1: Kết quả gom cụm môn học
Qua kết quả gom cụm trên, ta thấy các môn được phân thành 3 cụm tốt hơn khi phân
làm 4 cụm. Các môn được phân vô 1 cụm có các thuộc tính gần giống nhau, từ đó ta có
những phân tích nhận xét, để cải tiến chương trình dạy và học ngày càng tốt hơn
Ví dụ, như các môn thuộc nhóm 3 có tỉ lệ điểm dưới 5 cao nhất, do đó chúng ta phải
xem xét lại chương trình giảng dạy, chất lượng giảng dạy của giáo viên, khả năng tiếp thu
của học sinh, từ đó đưa ra biện pháp phù hợp. Tương tự nhóm 1, tỉ lệ 5, 6 rất cao, chứng tỏ
sinh viên tiếp thu môn học chưa tốt, cần thay đổi phương pháp giảng dạy.
Nhóm 2 là nhóm các môn học sinh có kết quả học tập tốt nhất. Nếu trong nhóm này
có các môn tự chọn, thì có thể khuyến khích sinh viên chọn các môn trong nhóm này, để đạt
kết quả học tập tốt hơn.


×