ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
CHƯƠNG TRÌNH ĐÀO TẠO THẠC SĨ CNTT QUA MẠNG
MÔN KHAI PHÁ DỮ LIỆU VÀ KHO DỮ LIỆU
ĐỀ TÀI:
Giảng viên: PGS.TS. Đỗ Phúc
Học viên: Nguyễn Mai Thương - MSHV: CH1101124
Tp.HCM, Tháng 11/2012
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
LỜI MỞ ĐẦU
hân đoạn là quá trình phân chia vùng không gian hình ảnh vào một số
khu vực không bị chồng chéo và phải có sự đồng nhất. Sự thành công của
một hệ thống phân tích hình ảnh phụ thuộc rất nhiều vào chất lượng phân
đoạn hình ảnh.
P
Trong việc phân tích các hình ảnh y tế cho máy tính hỗ trợ chẩn đoán và điều trị,
quá trình phân đoạn thường được yêu cầu như là một giai đoạn sơ bộ. Tuy nhiên,
các phân vùng trong hình ảnh y tế thì thực sự rất phức tạp nên việc phân đoạn
chính xác là rất quan trọng cho việc phát hiện các khối u, phù nề, và mô hoại tử để
từ đó có thể đề ra phương pháp điều trị thích hợp.
Trong công nghệ về hình ảnh y tế, một số công cụ phổ biến cho việc chẩn đoán
hiện nay gồm X-Ray, máy tính chụp cắt lớp (CT), chụp ảnh cộng hưởng từ (MRI),
và máy xa hình (PET)… Trong đó, MRI là kỹ thuật quan trọng nhất trong chẩn
đoán hình ảnh nhằm phát hiện sớm những thay đổi bất thường trong các mô và các
cơ quan. Nó có lợi thế độc đáo hơn các phương pháp khác vì có thể cung cấp hình
ảnh đa phổ của các mô với một loạt các tương phản dựa trên ba tham số của MR là
ρ, T1, T2. Vì vậy, phần lớn các nghiên cứu phân đoạn trong hình ảnh y tế đều tập
trung chủ yếu vào hình ảnh của máy MR.
Theo tiến bộ của khoa học hiện nay, hình ảnh bộ não con người khi chụp bằng
máy MR được thể hiện trực quan và chất lượng nhờ vào X-quang. Tuy nhiên, các
nghiên cứu tiên tiến hơn trong y tế đòi hỏi hình ảnh phải có sự thông tin định
lượng, chẳng hạn như kích thước của não tâm thất sau một chấn thương não hoặc
khối lượng tương đối của các tâm thất đến não. Các phương pháp chụp hay đánh
giá một cách tự động đôi khi thất bại, kết quả không chính xác và đòi hỏi phải có
sự can thiệp đánh giá của con người. Điều này thường hay xảy ra do các hạn chế
về thu thập hình ảnh, các biến đổi không ngừng của bệnh lý học và sinh học. Vì
vậy, điều quan trọng là cần có một phương pháp đáng tin cậy để đo các cấu trúc
khác nhau trong não. Một trong những phương pháp này chính là phân đoạn hình
ảnh để cô lập đối tượng và khu vực hình ảnh cần quan tâm.
CH1101124 - Nguyễn Mai Thương Trang 2
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Trong phần bài thu hoạch này em xin trình bày 3 thuật toán phân cụm hình ảnh
đang được sử dụng rộng rãi và hiệu quả trong y tế là K-means, Fuzzy C-Means
(FCM) và Rough Fuzzy C-Means (RFCM); so sánh thực nghiệm kết quả phân tích
hình ảnh của các thuật toán lược dịch dựa trên bài phân tích Rough-Fuzzy
Clustering Algorithm for Segmentation of Brain MR của 2 tác giả Pradipta Maji và
Sankar K. Pal thuộc Machine Intelligence Unit, Indian Statistical Random Versus
Discriminant Analysis Based Institute, Kolkata, 700 108, India. Trong phần cài đặt
chương trình, em xin trình bày cài đặt 2 thuật toán K-means và Fuzzy C-Means để
minh họa cho quá trình phân cụm.
Vì thời gian nghiên cứu có hạn nên không tránh khỏi sai sót, mong được sự góp ý,
phê bình từ thầy cô và các bạn.
Em xin chân thành cảm ơn:
- Trường Đại Học Công Nghệ Thông Tin TP HCM và phòng khoa học máy tính
đã tạo điều kiện cho em được nghiên cứu và học tập.
- Thầy PGS.TS. Đỗ Phúc đã tận tâm giảng dạy và giúp đỡ em trong suốt quá
trình học tập và nghiên cứu về lý thuyết phân cụm dữ liệu.
- Các anh chị học viên của lớp CH6 đã giúp đỡ em trong suốt quá trình học, trau
đổi, thực hiện đồ án và hoàn thành các bài tập.
Em xin chân thành cảm ơn !
CH1101124 - Nguyễn Mai Thương Trang 3
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
CÁC THUẬT NGỮ DÙNG TRONG BÀI VIẾT
Centroid: trọng tâm, trung tâm khối lượng
Cluster: cụm
Cluster analysis: phân tích cụm
Fuzzy cluster: cụm mờ
Pixel: điểm ảnh
Membership: tính liên thuộc, độ liên thuộc
Membership function: hàm liên thuộc
Noisy data: dữ liệu nhiễu
Objective function: hàm mục tiêu
Outliers: các phần tử biên
Segmentation: phân đoạn hóa
Rough set: tập thô
Fuzzy factor: tham số mờ hóa
Partition: sự phân hoạch
Rough Fuzzy C-Means (RFCM) algorithm: thuật toán Rough Fuzzy C-Means cho
việc gom cụm thô mờ.
Fuzzy C-Means (FCM) algorithm: thuật toán Fuzzy C-Means cho việc gom cụm
mờ.
CH1101124 - Nguyễn Mai Thương Trang 4
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
MỤC LỤC
CH1101124 - Nguyễn Mai Thương Trang 5
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
CHƯƠNG I: TỐNG QUAN VỀ PHÂN CỤM DỮ LIỆU
I. Phân cụm dữ liệu
1. Clustering
Phân cụm (clustering) dữ liệu là phương pháp nhóm tập hợp các dữ liệu lớn thành
các tập nhỏ hơn có dữ liệu tương tự nhau.
Ví dụ: Tập hợp các quả bóng có nhiều màu sắc như Hình 1.1.
Hình 1.1
Khi đó, những quả bóng có cùng màu sắc được phân cụm vào các nhóm dữ liệu
nhỏ hơn. Kết quả:
Hình 1.2 Kết quả sau khi phân cụm
2. Hard clustering
Phân cụm cứng là phương pháp gán mỗi vector đặc trưng vào một và chỉ một cụm
với độ liên thuộc bằng 1 và xác định rõ ranh giới giữa các cụm (sử dụng trong
phân cụm rõ).
Hình 2.1 Hard clustering
3. Fuzzy Clustering
CH1101124 - Nguyễn Mai Thương Trang 6
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Phân cụm mờ cho phép mỗi vector đặc trưng có thể thuộc về một hoặc nhiều cụm
với độ liên thuộc khác nhau (có giá trị nằm giữa 0 và 1) và có sự mơ hồ hoặc mờ
ranh giới giữa các cụm.
Hình 3.1 Phân cụm mờ
4. Các yêu cầu đối với phân cụm
• Có khả năng mở rộng: Nhiều thuật toán phân cụm làm việc tốt với những tập dữ
liệu nhỏ chứa ít hơn 200 đối tượng, tuy nhiên, một cơ sở dữ liệu (CSDL) lớn có
thể chứa tới hàng triệu đối tượng. Việc phân cụm với một tập dữ liệu lớn có thể
làm ảnh hưởng tới kết quả. Vậy làm cách nào để chúng ta có thể phát triển các
thuật toán phân cụm có khả năng mở rộng cao đối với các CSDL lớn.
• Khả năng thích nghi với các kiểu thuộc tính khác nhau: Nhiều thuật toán được
thiết kế cho việc phân cụm dữ liệu có kiểu khoảng (kiểu số). Tuy nhiên, nhiều ứng
dụng có thể đòi hỏi việc phân cụm với nhiều kiểu dữ liệu khác nhau, như kiểu nhị
phân, kiểu tường minh (định danh - không thứ tự), và dữ liệu có thứ tự hay dạng
hỗn hợp của những kiểu dữ liệu này.
• Khám phá các cụm với hình dạng bất kỳ: Nhiều thuật toán phân cụm xác định các
cụm dựa trên các phép đo khoảng cách Euclidean và khoảng cách Manhattan. Các
thuật toán dựa trên các phép đo như vậy hướng tới việc tìm kiếm các cụm hình
cầu với mật độ và kích cỡ tương tự nhau. Tuy nhiên, một cụm có thể có bất cứ
một hình dạng nào. Do đó, việc phát triển các thuật toán có thể khám phá ra các
cụm có hình dạng bất kỳ là một việc làm quan trọng.
CH1101124 - Nguyễn Mai Thương Trang 7
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
• Tối thiểu lượng tri thức cần cho xác định các tham số đầu vào: Nhiều thuật toán
phân cụm yêu cầu người dùng đưa vào những tham số nhất định trong phân tích
phân cụm (như số lượng các cụm mong muốn).
• Khả năng thích nghi với dữ liệu nhiễu: Hầu hết những CSDL thực đều chứa đựng
dữ liệu ngoại lai, dữ liệu lỗi, dữ liệu chưa biết hoặc dữ liệu sai. Một số thuật toán
phân cụm nhạy cảm với dữ liệu như vậy và có thể dẫn đến chất lượng phân cụm
thấp.
• Ít nhạy cảm với thứ tự của các dữ liệu vào: Một số thuật toán phân cụm nhạy cảm
với thứ tự của dữ liệu vào, ví dụ như với cùng một tập dữ liệu, khi được đưa ra
với các thứ tự khác nhau thì với cùng một thuật toán có thể sinh ra các cụm rất
khác nhau. Do đó, việc quan trọng là phát triển các thuật toán mà ít nhạy cảm với
thứ tự vào của dữ liệu.
• Số chiều lớn: Một CSDL hoặc một kho dữ liệu có thể chứa một số chiều hoặc một
số các thuộc tính. Nhiều thuật toán phân cụm áp dụng tốt cho dữ liệu với số chiều
thấp, bao gồm chỉ từ hai đến 3 chiều. Người ta đánh giá việc phân cụm là có chất
lượng tốt nếu nó áp dụng được cho dữ liệu có từ 3 chiều trở lên. Nó là sự thách
thức với các đối tượng dữ liệu cụm trong không gian với số chiều lớn, đặc biệt vì
khi xét những không gian với số chiều lớn có thể rất thưa và có độ nghiêng lớn.
• Phân cụm ràng buộc: Nhiều ứng dụng thực tế có thể cần thực hiện phân cụm dưới
các loại ràng buộc khác nhau. Một nhiệm vụ đặt ra là đi tìm những nhóm dữ liệu
có trạng thái phân cụm tốt và thỏa mãn các ràng buộc.
• Dễ hiểu và dễ sử dụng: Người sử dụng có thể chờ đợi những kết quả phân cụm dễ
hiểu, dễ lý giải và dễ sử dụng. Nghĩa là, sự phân cụm có thể cần được giải thích ý
nghĩa và ứng dụng rõ ràng.
5. Các kỹ thuật phân cụm
• Phương pháp phân cụm phân hoạch
• Phương pháp phân cụm phân cấp
• Phương pháp phân cụm dựa trên mật độ
• Phương pháp phân cụm dựa trên lưới
• Phương pháp phân cụm dựa trên mô hình
• Phương pháp phân cụm có dữ liệu ràng buộc
Hiện nay, các phương pháp phân cụm trên đã và đang được phát triển và áp dụng
nhiều trong các lĩnh vực khác nhau và đã có một số nhánh nghiên cứu được phát triển
trên cơ sở của các phương pháp đó như:
CH1101124 - Nguyễn Mai Thương Trang 8
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
• Phân cụm thống kê: Dựa trên các khái niệm phân tích hệ thống, nhánh nghiên cứu
này sử dụng các độ đo tương tự để phân hoạch các đối tượng, nhưng chúng chỉ áp
dụng cho các dữ liệu có thuộc tính số.
• Phân cụm khái niệm: Kỹ thuật này được phát triển áp dụng cho dữ liệu hạng mục,
chúng phân cụm các đối tượng theo các khái niệm mà chúng xử lí.
• Phân cụm mờ: Sử đụng kỹ thuật mờ để PCDL. Các thuật toán thuộc loại này chỉ ra
lược đồ phân cụm thích hợp với tất cả các hoạt động đời sống hang ngày, chúng
chỉ xử lí các dữ liệu thực không chắc chắn.
• Phân cụm mạng Kohonen: Loại phân cụm này dựa trên khái niệm của các mạng
nơron. Mạng Kohonen có tầng nơron vào và các tầng nơron ra. Mỗi nơron của
tầng vào tương ứng với mỗi thuộc tính của bản ghi, mỗi một nơron vào kết nối với
tất cả các nơron của tầng ra. Mỗi liên kết được gắn liền với một trọng số nhằm xác
định vị trí của nơron ra tương ứng.
II. Một số ứng dụng của phân cụm dữ liệu
1. Biểu diễn dữ liệu gene
Phân cụm là một trong những phân tích được sử dụng thường xuyên nhất trong biểu
diễn dữ liệu gene (Yeung et al., 2003; Eisen at al., 1998).
Dữ liệu biểu diễn gene là một tâp hợp các phép đo được lấy từ DNA (còn gọi là DNA
chip hay gene chip) là một tấm thủy tinh hoặc nhựa trên đó có gắn các đoạn DNA
thành các hàng siêu nhỏ. Các nhà nghiên cứu sử dụng các con chip như vậy để sàng
lọc các mẫu sinh học nhằm kiểm tra sự có mặt hàng loạt trình tự cùng một lúc. Các
đoạn DNA gắn trên chip được gọi là probe (mẫu dò). Trên mỗi điểm của chip có hàng
ngàn phân tử probe với trình tự giống nhau. Một tập hợp dữ liệu biểu diễn gene có thể
được biểu diễn thành một ma trận giá trị thực:
Trong đó:
- n là số lượng các gen
- d là số lượng mẫu hay điều kiện thử
- là thước đo biểu diễn mức gen i trong mẫu j
CH1101124 - Nguyễn Mai Thương Trang 9
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Bởi vì các biểu ma trận gốc chứa nhiễu, giá trị sai lệch, hệ thống biến thể, do đó tiền
xử lý là đòi hỏi cần thiết trước khi thực hiện phân cụm.
Dữ liệu biểu diễn gen có thể được phân cụm theo hai cách. Cách thứ nhất là nhóm các
các mẫu gen giống nhau, ví dụ như gom các dòng của ma trận D. Cách khác là nhóm
các mẫu khác nhau trên các hồ sơ tương ứng, ví dụ như gom các cột của ma trận D.
2. Phân cụm dữ liệu trong sức khỏe tâm lý
Phân cụm dữ liệu áp dụng trong nhiều lĩnh vực sức khỏe tâm lý, bao gồm cả việc thúc
đẩy và duy trì sức khỏe, cải thiện cho hệ thống chăm sóc sức khỏe, và công tác phòng
chống bệnh tật và người khuyết tật (Clatworthy et al., 2005).
Trong sự phát triển hệ thống chăm sóc sức khỏe, phân cụm dữ liệu được sử dụng để
xác định các nhóm của người dân mà có thể được hưởng lợi từ các dịch vụ cụ thể
(Hodges và Wotring, 2000).
Trong thúc đẩy y tế, nhóm phân tích được sử dụng để lựa chọn nhắm mục tiêu vào
nhóm sẽ có khả năng đem lại lợi ích cho sức khỏe cụ thể từ các chiến dịch quảng bá
và tạo điều kiện thuận lợi cho sự phát triển của quảng cáo. Ngoài ra, phân cụm dữ liệu
được sử dụng để xác định các nhóm dân cư bị rủi ro do phát triển y tế và các điều kiện
những người có nguy cơ nghèo.
3. Phân cụm dữ liệu đối với hoạt động nghiên cứu thị trường
Trong nghiên cứu thị trường, phân cụm dữ liệu được sử dụng để phân đoạn thị trường
và xác định mục tiêu thị trường (Chrisoppher, 1969; Saunders, 1980, Frank and
Green, 1968).
Trong phân đoạn thị trường, phân cụm dữ liệu thường được dùng để phân chia thị
trường thành nhưng cụm mang ý nghĩa, chẳng hạn như chia ra đối tượng nam giới từ
21-30 tuổi và nam giới ngoài 51 tuổi, đối tượng nam giới ngoài 51 tuổi thường không
có khuynh hướng mua các sản phẩm mới.
4. Phân cụm dữ liệu đối với hoạt động Phân đoạn ảnh
CH1101124 - Nguyễn Mai Thương Trang 10
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Phân đoạn ảnh là việc phân tích mức xám hay màu của ảnh thành các lát đồng nhất
(Comaniciu and Meer, 2002).
Phân cụm dữ liệu là một công cụ thiết yếu của khai phá dữ liệu, khai phá dữ liệu là
quá trình khám phá và phân tích một khối lượng lớn dữ liệu để lấy được các thông tin
hữu ích (Berry and Linoff, 2000).
Phân cụm dữ liệu cũng là một vấn đề cơ bản trong nhận dạng mẫu (pattern
recognition). Nhìn chung, Thông tin hữu dụng có thể được khám phá từ một khối
lượng lớn dữ liệu thông qua phương tiện tự động hay bán tự động (Berry and Linoff,
2000).
Trong khai phá dữ liệu gián tiếp, không có biến nào được chọn ra như một biến đích,
và mục tiêu là để khám phá ra một vài mối quan hệ giữa tất cả các biến. Trong khi đó
đối với khai phá dữ liệu gián tiếp một vài biến lại được chọn ra như các biến đích.
Phân cụm dữ liệu là khai phá dữ liệu gián tiếp, bởi vì trong khai phá dữ liệu, ta không
đảm bảo chắc chắn chính xác cụm dữ liệu mà chúng ta đang tìm kiếm, đóng vai trò gì
trong việc hình thành các cụm dữ liệu đó, và nó làm như thế nào.
Vấn đề phân cụm dữ liệu đã được quan tâm một cách rộng rãi, mặc dù chưa có định
nghĩa đồng bộ về phân cụm dữ liệu và có thể sẽ không bao giờ là một và đi đến thống
nhất. (Estivill-Castro,2002; Dubes, 1987; Fraley and Raftery, 1998).
CH1101124 - Nguyễn Mai Thương Trang 11
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
CHƯƠNG II: CÁC THUẬT TOÁN PHÂN CỤM DỮ LIỆU
I. Thuật toán K-means
1. Khái niệm
K-means là phương pháp tiếp cận phân hoạch tập dữ liệu thành các cụm là các tập rõ,
bằng cách xác định trước số cụm k, sau đó xếp từng điểm dữ liệu vào một trong k cụm
sao cho độ phân biệt trong các k cụm là thấp nhất.
Cho k là số cụm sau khi phân hoạch (, với n là số điểm hay số đối tượng trong không
gian dữ liệu).
2. Các bước của thuật toán K-means
Gồm bốn bước:
1. Chọn ngẫu nhiên k điểm làm trọng tâm (centroid) ban đầu của k cụm.
2. Tính khoảng cách từ các điểm đến trọng tâm để gán (hoặc gán lại) từng điểm vào
cụm có trọng tâm gần điểm đang xét nhất. Nếu không có phép gán lại nào thì
dừng. Vì không có phép gán lại nào có nghĩa là các cụm đã ổn định và thuật toán
không thể cải thiện làm giảm độ phân biệt hơn được nữa.
Công thức Euclide dùng để tính khoảng cách (t là số lần lặp):
3. Tính lại trọng tâm cho từng cụm theo công thức.
4. Quay lại bước 2.
Minh họa thuật toán với k=2. Hình 4.1 mô phỏng về hình dạng cụm dữ liệu được
khám phá bởi K-means.
CH1101124 - Nguyễn Mai Thương Trang 12
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Hình 4.1 Mô phỏng về hình dạng cụm dữ liệu được khám phá bởi K-means.
Ví dụ: Cho tập điểm
x1={1,3} ={x11,x12}
x2={1.5 , 3.2 }={x21,x22}
x3 ={1.3 ,2.8}={x31,x32}
x4={3, 1}={x41,x42}
Dùng k-means để gom cụm với k = 2
Bước 1 : Khởi tạo ma trận phân hoạch U có 4 cột ứng với 4 điểm và 2 dòng ứng với 2
cụm,
Bước 2: U = (), 1 ≤ i ≤ 2 và 1 ≤ j ≤4
Cho n= 0 (số lần lặp), tạo U0
x1 x2 x3 x4
U0= c1 1 0 0 0
c2 0 1 1 1
Bước 3: Tính vector trọng tâm:
Do có hai cụm C1, C2 nên có hai vector trọng tâm v1, v2
CH1101124 - Nguyễn Mai Thương Trang 13
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Các tính vector trọng tâm:
Với vector v1 cho cụm 1:
14131211
41*1431*1321*1211*11
11
mmmm
xmxmxmxm
v
+++
+++
=
1
0001
3*03.1*05.1*01*1
=
+++
+++
=
14131211
42*1432*1322*1212*11
12
mmmm
xmxmxmxm
v
+++
+++
=
3
0001
1*08.2*02.3*03*1
=
+++
+++
=
Vậy v1 = (1,3)
Với vector v2 cho cụm 2:
24232221
41*2431*2321*2211*21
21
mmmm
xmxmxmxm
v
+++
+++
=
93.1
3
8.5
1110
3*13.1*15.1*11*0
==
+++
+++
=
24232221
42*2432*2322*2212*21
22
mmmm
xmxmxmxm
v
+++
+++
=
33.2
3
7
1110
1*18.2*12.3*13*0
==
+++
+++
=
Vậy v1 = (1.93,2.33)
Gom các đối tượng vào cụm
Tính khoảng cách Euclide từ từng điểm đến cụm c1, c2 chọn cụm có khoảng cách
gần nhất để đưa đối tượng vào cụm
22
)1212()1111()1,1( vxvxvxd −+−=
=
0)33()11(
22
=−+−
22
)2212()2111()2,1( vxvxvxd −+−=
=
14.1)33.23()93.11(
22
=−+−
Gộp x1 vào cụm c1 vì d(x1,v1) < d(x1,v2)
Tính toán tương tự ta có:
CH1101124 - Nguyễn Mai Thương Trang 14
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
d(x2,v1) = 0.54 < d(x2,v2) =0.97 xếp x2 vào cụm c1
d(x3,v1) = 0.36 < d(x3,v2) =0.78 xếp x3 vào cụm c1
d(x4,v1) = 2.83 > d(x4,v2) =1.70 xếp x4 vào cụm c2
Tăng n lên 1
Ma trận phân hoạch Un sẽ là :
x1 x2 x3 X4
U1= c1 1 1 1 0
c2 0 0 0 1
Lặp cho đến khi | Un – Un-1| < epsilon thì dừng, nếu sai thì quay về bước 3.
3. Ưu và nhược điểm của thuật toán:
a) Ưu điểm:
• Tương đối nhanh, độ phức tạp của thuật toán là O(t.k.n), trong đó:
n: số điểm trong không gian dữ liệu
k: số cụm cần phân hoạch
t: số lần lặp (t là khá nhỏ so với n)
• K-means phù hợp với các cụm có dạng hình cầu
b) Nhược điểm:
• Không đảm bảo đạt được tối ưu toàn cục và kết quả đầu ra phụ thuộc nhiều
vào việc chọn k điểm khởi đầu. Do đó có thể phải chạy lại thuật toán với
nhiều bộ khởi đầu khác nhau để có được kết quả đủ tốt.
• Cần phải xác định trước số cụm.
• Khó xác định số cụm thực sự mà không gian dữ liệu đang có. Do đó có thể
phải thử với các giá trị k khác nhau.
• Khó phát hiện các loại cụm phức tạp và nhất là các dạng cụm không lồi.
• Không thể xử lý nhiễu và mẫu cá biệt.
• Chỉ có thể áp dụng khi tính được trọng tâm.
II. Thuật toán Fuzzy C-Means
CH1101124 - Nguyễn Mai Thương Trang 15
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Fuzzy C-Means là phương pháp phân cụm dữ liệu mờ. Phương pháp này (được phát
triển bởi Dunn năm 1973 và được hoàn thiện bởi Bezedk vào năm 1981) thường được
sử dụng trong việc nhận dạng mẫu.
Phân hoạch mờ xem các cụm là các tập mờ và một điểm dữ liệu sẽ có mức độ thuộc
về (membership) một cụm là giá trị số thực nằm trong đoạn [0,1]. Nguyên tắc của
thuật toán dựa vào việc tối thiểu hàm mục tiêu.
1. Hàm mục tiêu
Tập nền X= {x
1
, ,x
j
,…,xn} gồm n đối tượng (object) và tập V= {v
1
,…,v
i
,…,v
c
} gồm
c phần tử trọng tâm (centroid), sao cho x
j
∈ℜ
m
, v
i
∈ℜ
m
, và v
i
∈X. Phân hoạch X vào
c cụm theo công thức:
Công thức (3.2.1)
Trong đó: là tham số mờ hóa, v
i
là trọng tâm của của phần tử thứ i tương ứng với
cụm β
i
, là hàm liên thuộc của x
j
trong cụm β
i
, và ||.|| là khoảng cách, sao cho
Công thức (3.2.2)
Với
; với
Công thức (3.2.3)
Khi đó
Công thức (3.2.4)
2. Các bước của thuật toán Fuzzy C-Means
Phương pháp này bắt đầu bằng việc ngẫu nhiên chọn đối tượng c
i
nào đó của cụm c.
Các độ liên thuộc được tính dựa trên quan hệ khoảng cách từ x
j
đến các trọng tâm theo
công thức (3.2.3). Sau khi xác định được độ liên thuộc của các đối tượng, các trọng
CH1101124 - Nguyễn Mai Thương Trang 16
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
tâm mới của cụm sẽ được tính toán theo công thức (3.2.2). Quá trình dừng khi các
trọng tâm đã được tính toán hết.
Các bước như sau:
1. Gán giá trị ban đầu cho v
i
, với i=1,2, ,c. Chọn các giá trị cho và ngưỡng ℰ.
Đặt biến đếm tuần tự t=1.
2. Tính độ liên thuộc theo công thức (3.2.3) cho c cụm và n đối tượng.
3. Tính v
i
theo công thức (3.2.2).
4. Tiếp tục các bước từ 2 đến 4, tăng biến đếm t cho đến khi thỏa điều kiện dừng
Một số ví dụ áp dụng thuật toán Fuzzy C-Means
Hình 2.1 So sánh kết quả xử lý hình ảnh sử dụng thuật toán K-means cho hình trước
và thuật toán Fuzzy C-Means cho hình sau với việc phân thành 2 cụm A và B
Trong Hình 2.1, dựa vào kết quả sau khi phân cụm, ta có thể thấy dấu tròn được đánh
dấu màu đỏ thuộc về cụm B nhiều hơn là cụm A.
Hình 2.2 Kết quả xử lý hình ảnh sử dụng thuật toán Fuzzy C-Means
3. Ưu và nhược điểm của thuật toán
CH1101124 - Nguyễn Mai Thương Trang 17
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
a) Ưu điểm
• Fuzzy c-means phù hợp với các vấn đề nhận dạng trong không gian đa
chiều.
• Có khả năng tìm được tối ưu toàn cục (đây là điểm mạnh hơn K-means)
• Fuzzy C-Means cho kết quả tốt với dữ liệu bị chồng chéo. Hiệu năng tương
đương K-means với độ phức tạp là O(t.k.n).
b) Nhược điểm
• Công thức tính toán khá phức tạp.
• Tốc độ hội tụ tùy thuộc vào trạng thái ban đầu của ma trận thành viên U và
tham số mờ hóa .
• Mặc dù Fuzzy C-Means là một phương pháp phân cụm rất hữu ích, tuy
nhiên, các kết quả về độ liên thuộc lại không luôn đúng với các mức độ của
dữ liệu, và nó có thể không chính xác trong một môi trường bị nhiễu. Trong
thực tế, phân tích dữ liệu, nhiễu loạn và chênh lệch là những điều không thể
tránh khỏi. Do đó, cần làm giảm bớt điểm yếu của thuật toán Fuzzy C-
Means và có sự phân tích hình ảnh tốt hơn tùy thuộc vào mức độ dữ liệu.
III. Thuật toán Rough-Fuzzy C-Means
”Bằng việc kết hợp mờ và các tập thô, kế đến là giới thiệu thuật toán C-Means, ta có
thuật ngữ Rough Fuzzy C-Means (RFCM)” (lược dịch theo Maji va Pal, 2007a, c) đã
mô tả.
Rough Fuzzy C-Means (RFCM) là phương pháp phân cụm các dữ liệu thô mờ. Nó
cho phép một dữ liệu có thể được cùng lúc nằm ở hai hay nhiều cụm dữ liệu khác
nhau.
Thuật toán RFCM thêm vào các khái niệm về độ liên thuộc mờ của các tập mờ, các
không gian xấp xỉ dưới và trên của tập thô vào trong thuật toán Fuzzy C-Means cho
phép xử lý hiệu quả các phân vùng có dữ liệu chồng chéo và các tập thô mờ.
1. Tập thô (Rough Sets)
CH1101124 - Nguyễn Mai Thương Trang 18
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Lý thuyết của tập thô bắt đầu với khái niệm về một không gian xấp xỉ, theo đó, luôn
là một cặp <U,R>, với U là tập nền (hay vũ trụ) và R là tập quan hệ tương đương, như
vậy R có tính chất phản xạ, đối xứng, và bắc cầu. Quan hệ R chia tập U thành các lớp
(class) theo cách mà 2 thành phần x, y có thể cùng 1 lớp nếu . Biểu diễn bằng phép
chia U/R như sau:
Trong đó: X
i
là 1 lớp tương đương của R, i = 1,2, ,m. Nếu 2 thành phần cùng thuộc
về một lớp tương đương thì khi đó x và y được gọi là không thể phân biệt. Các lớp
tương đương của R và tập rỗng là các tập cơ sở trong không gian xấp xỉ <U,R>.
Phương trình đặc trưng X: được định nghĩa gồm 1 cặp xấp xỉ dưới và trên như sau:
Trong đó: xấp xỉ dưới là hợp của các tập cơ sở và là tập con của X. xấp xỉ trên là hợp
của các tập cơ sở giao với X khác rỗng. Khoảng cách ]được gọi là đại diện cho tập X
trong không gian xấp xỉ <U,R> hoặc đơn giản hơn, nó có thể gọi là tập thô của X.
Các tính chất:
1. Tập được gọi là xác định trong <U,R> nếu .
2. Với bất kì , X được gọi là chứa trong Y, viết là , nếu
3. X và Y được gọi là 2 tập thô bằng nhau trong <U,R>, viết là , nếu
2. Hàm mục tiêu
Cho và là các xấp xỉ dưới và trên của cụm , với B()={} diễn tả vùng ranh giới của
cụm . Các phân vùng RFCM của tập n đối tượng được phân vào các cụm c theo công
thức:
Công thức (4.1.1)
Với
Và
CH1101124 - Nguyễn Mai Thương Trang 19
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Trong đó: v
i
là trọng tâm thứ i của cụm , tham số w và tương ứng với quan hệ dưới
ranh giới và ngay vùng ranh giới, với w + =1.
Trong RFCM, mỗi cụm được biểu diễn bởi một trọng tâm, mộ vùng rõ có độ xấp xỉ
thấp và vùng ranh giới mờ (Fuzzy boundary). Theo định nghĩa của vùng xấp xỉ và
ranh giới thấp của tập thô, nếu một đối tượng
thì khi đó . Nghĩa là chỉ nằm trong duy
nhất. Vì vậy, trọng lượng của các đối tượng trong vùng xấp xỉ thấp của 1 cụm sẽ độc
lập với các trọng tâm của các cụm khác. Ngoài ra, các đối tượng trong vùng xấp xỉ
thấp có các ảnh hưởng giống nhau với các trọng tâm và cụm tương ứng.
Nếu thì khi đó đối tượng thuộc và cũng có khả năng sẽ thuộc vào 1 cụm nào khác.
Các đối tượng ở vùng ranh giới phải có các ảnh hưởng khác nhau đến các trọng tâm
và cụm khác. Như vậy, trong RFCM, giá trị của độ liên thuộc của các đối tượng trong
vùng xấp xỉ thấp sẽ là . Hay nói cách khác, dữ liệu khi được RFCM sẽ phân thành 2
lớp: vùng xấp xỉ thấp và vùng ranh giới. Chỉ các đối tượng trong vùng ranh giới mới
là đối tượng mờ.
3. Cluster Prototypes
Mỗi một trọng tâm mới trong cụm được tính toán dựa vào trọng số trung bình của
vùng xấp xỉ có độ rõ thấp và vùng ranh giới mờ theo công thức:
Công thức (4.1.2)
CH1101124 - Nguyễn Mai Thương Trang 20
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Với
Và
Như vậy, các cụm mẫu (cluster prototypes) phụ thuộc vào tham số w, và tham số mờ
hóa . Giá trị của tham số w, trong khoảng .
Các tính chất:
1. , với U là tập các đối tượng.
2.
3.
4.
5.
6.
4. Các bước của thuật toán Rough Fuzzy C-Means
Việc tối ưu hóa xấp xỉ J
RF
bằng RFCM theo công thức (4.1.1) được dựa trên xử lý tuần
tự các công thức (3.2.3) và (4.1.2). Việc xử lý tuần tự được gọi là tối ưu hóa xen kẽ.
Xử lý bắt đầu bằng việc chọn ngẫu nhiên đối tượng c là trọng tâm của cụm c nào đó.
Giá trị thành viên của các đối tượng này được tính theo công thức (3.2.3).
Đặt là đại diện cho cụm mờ với trọng tâm v
i
. Sau khi tính toán giá trị cho c cụm và n
đối tượng, giá trị của mỗi đối tượng x
j
sẽ được sắp xếp. Gọi và lần lượt là các giá trị
thành viên cao thứ nhất và thứ hai của x
j
. Ta sẽ tiến hành so sánh hai giá trị này với
giá trị ngưỡng cho phép .
Nếu , khi đó hay . Ngược lại, và . Sau khi gán các đối tượng này vào các xấp xỉ
thấp hơn hoặc vùng ranh giới của các cụm khác nhau dựa trên , hàm thành viên lúc
này đã được thay đổi. Các giá trị của được gán là 1 cho các đối tượng trong vùng xấp
xỉ thấp hơn, còn các giá trị ranh giới thì được giữ nguyên. Các thành phần trong cụm
được tính theo công thức (4.1.2).
CH1101124 - Nguyễn Mai Thương Trang 21
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Các bước chính của thuật toán RFCM như sau:
1. Gán giá trị khỏi tạo v
i
, i = 1,2, ,c. Chọn các giá trị cho tham số mờ hóa ,
ngưỡng và Đặt biến đếm tuần tự t=1.
2. Tính dựa trên công thức (3.2.3) với c cụm và n đối tượng.
3. Nếu và là hai thành viên có độ cao nhất của x
j
và thì và . Hơn nữa, x
j
không
thuộc bất cứ ranh giới biên thấp nào.
4. Ngược lại, và theo tính chất của tập thô, .
5. Khi thay đổi giá trị cần xem xét vùng biên và thấp hơn biên của c cụm mờ và n
đối tượng.
6. Tính các độ phụ thuộc của các phần tử trong cụm theo công thức (4.1.2)
7. Lặp lại các bước từ 2 đến 7, tăng t sau mỗi bước cho đến khi .
5. Hiệu suất
Hiệu suất (performance) của RFCM phụ thuộc vào giá trị của ngưỡng Giá trị của
ngưỡng trong phạm vi bài này là:
Trong đó: n là tổng số các đối tượng, và là các thành viên cao thứ nhất và thứ hai của
x
j
. Như vậy, giá trị của đại diện cho trung bình của 2 thành viên khác nhau cao nhất
trong tập dữ liệu. Một phân đoạn thực sự tốt nếu giá trị của càng cao.
Ví dụ áp dụng thuật toán RFCM:
Hình 5.1 là ảnh CT phân tích của một bệnh nhân bị nhồi máu trước và sau khi phân
cụm RFCM.
Hình 5.1 Ảnh gốc và ảnh đã được phân cụm theo thuật toán RFCM.
CH1101124 - Nguyễn Mai Thương Trang 22
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
CHƯƠNG III: CÁC PHƯƠNG PHÁP ĐÁNH GIÁ HÌNH ẢNH
I. Phân lớp điểm ảnh Pixel trong hình ảnh MR
Trong phần này, chúng ta sẽ xem xét kết quả của hai thuật toán mờ là Fuzzy C-Means
và RFCM trên phân lớp điểm ảnh (pixel) chụp não của máy MR. Theo tính chất của
ảnh y tế, kết quả sẽ là sự phân đoạn dựa trên các giá trị vùng xám (gray pixel). Dữ liệu
để kiểm tra gồm có trên 100 ảnh MR với kích cỡ khác nhau và độ phân giải ảnh 16 bit
được kiểm tra với thuật toán Fuzzy C-Means và RFCM. Tất cả các ảnh được thu thập
từ trung tâm Advanced Medicare and Research Institude, Salt Lake, Kolkata, India.
Việc so sánh hiệu suất của C-Means và RFCM được dựa trên kết quả các chỉ số DB,
Dunn, và .
1. Chỉ số Davies-Bouldin (DB)
Davies-Bouldin (DB) là công thức tính tỉ lệ của tổng khoảng cách cụm bên trong đến
đường phân cách giữa các cụm
Trong đó 1<= i, k <=c. Chỉ số DB tối thiểu hóa khoảng cách từ bên trong các cụm
S(v
i
) và tối đa khoảng cách giữa các cụm d(v
i
,v
k
). Với tập dữ liệu đã cho và c giá trị,
các giá trị khoảng cách bên trong cụm và giữa các cụm càng cao thì giá trị DB nhận
được càng nhỏ. Một phân đoạn tốt thì giá trị DB phải càng nhỏ.
2. Chỉ số Dunn
Dunn cũng được thiết kế để phân biệt tập hợp các cụm có gọn gàng hay sắp xếp tốt
hay không. Công thức Dunn:
Để là một phân cụm tốt thì giá trị của Dunn càng cao càng tốt.
3. Chỉ số
Chỉ số được định nghĩa là tỉ lệ của tổng các biến đổi (variation) và bên trong các biến
đổi, được cho bởi công thức
CH1101124 - Nguyễn Mai Thương Trang 23
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Trong đó: n
i
là số các đối tượng trong cụm thứ i (i=1,2, ,c), n là tổng số các đối
tượng, x
ij
là đối tượng thứ j trong cụm i, v
i
là thành viên của cụm thứ i. Giá trị của tỉ
lệ thuận với c.
4. Các đánh giá theo chỉ số
Xem xét một ví dụ dưới đây, Hình 4.1 là ảnh của máy MR (số hiệu I-20497774), kích
thước ảnh 256x180, phân giải 16 bit gray. Theo đó, số các đối tượng trong tập dữ liệu
ảnh là 46080.
Hình 4.1 Ảnh MR I-20497774
Bảng 5.4 mô tả giá trị các chỉ số DB, Dunn và của FCM và RFCM. Từ kết quả của
chỉ số DB và Dunn cho thấy cả hai FCM và RFCM có kết quả tốt nhất khi c=4
(background, gray matter, white matter, và cerebro-spinal fluid). Còn giá trị của thì tỉ
lệ thuận với c.
Từ đó cho thấy, hiệu suất của RFCM thì tốt hơn của FCM.
CH1101124 - Nguyễn Mai Thương Trang 24
Khai phá dữ liệu và kho dữ liệu PGS.TS. Đỗ Phúc
Bảng 5.4 mô tả giá trị các chỉ số DB, Dunn và của FCM và RFCM
Hình 4.1 cho thấy các điểm phân tán của các thành viên cao thứ nhất và thứ hai của tất
cả các đối tượng trong tập dữ liệu của I-20497774 được lặp từ vị trí đầu đến cuối, xét
điểm w=0.95, = 2.0 và c = 4. Đường chéo đại diện cho vùng mà hai thành viên cao
nhất của đối tượng bằng nhau. Quan sát thấy rằng mặc dù khoảng cách trung bình
giữa 2 thành viên cao nhất là rất thấp ngay từ lần lặp đầu tiên ( =0.145), nhưng sau đó
chúng trở nên cao hơn rất nhiều ở lần lặp cuối ( =0.672).
Hình 4.1 mô tả giá trị thành viên cao nhất trong lần lặp thứ 1 và sau 20 lần
lặp
CH1101124 - Nguyễn Mai Thương Trang 25