Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
536,54 KB
Nội dung
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TIỂU LUẬN MÔN KHAI THÁC DỮ LIỆU MỘT SỐ PHƯƠNG PHÁP GOM CỤM DỮ LIỆU - THUẬT TOÁN K-MEANS Giảng viên hướng dẫn : PGS.TS Đỗ Phúc Học viên thực hiện : Nguyễn Thị Ngọc Diễm MSHV : CH1101075 Lớp : Cao học khóa 6 Tp Hồ Chí Minh, tháng 11 năm 2012 Mục lục Chương 1: TỔNG QUAN VỀ GOM CỤM DỮ LIỆU 1.1 Định nghĩa gom cụm 1.1.1. Định nghĩa - Gom cụm là kỹ thuật rất quan trọng trong khai phá dữ liệu, nó thuộc lớp các phương pháp Unsupervised Learning trong Machine Learning. Có rất nhiều định nghĩa khác nhau về kỹ thuật này, nhưng về bản chất ta có thể hiểu gom cụm là các qui trình tìm cách nhóm các đối tượng đã cho vào các cụm, sao cho các đối tượng trong cùng một cụm tương tự nhau và các đối tượng khác cụm thì không tương tự nhau. 1.1.2. Mục tiêu - Mục đích của gom cụm là tìm ra bản chất bên trong các nhóm của dữ liệu. Các thuật toán gom cụm đều sinh ra các cụm. Tuy nhiên, không có tiêu chí nào là được xem là tốt nhất để đánh hiệu của của phân tích gom cụm, điều này phụ thuộc vào mục đích của gom cụm như: giảm kích thước dữ liệu, khám phá thông tin hữu ích, phát hiện giá trị ngoại lai. 1.1.3. Ứng dụng - Gom 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. Gom 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ự. 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. Gom 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. 3 - Vấn đề gom 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ề gom cụm dữ liệu và có thể sẽ không bao giờ là một và đi đến thống nhất. Nói một cách đại khái là: Gom cụm dữ liệu, có nghĩa là ta cho một tập dữ liệu và một phương pháp tương tự, chúng ta nhóm dữ liệu lại chẳng hạn như điểm dữ liệu trong cùng một nhóm giống nhau và điểm dữ liệu trong các nhóm khác nhau về sự không đồng dạng. Rõ ràng là vấn đề này được bắt gặp trong nhiều ứng dụng, chẳng hạn như khai phá văn bản, biểu diễn gen, phân loại khách hàng, xử lý ảnh. 1.1.1.Marketing - Xác định các nhóm khách hàng (khách hàng tiềm năng, khách hàng giá trị, phân loại và dự đoán hành vi khách hàng) sử dụng sản phẩm hay dịch vụ của công ty để giúp công ty có chiến lược kinh doanh hiệu quả hơn. Ví dụ: Trong nghiên cứu thị trường, gom 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, gom 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 han 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. 1.1.2.Phân đoạn ảnh - 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). Trong phân đoạn ảnh, gom cụm dữ liệu thường được sử dụng để phát hiện biên của đối tượng trong ảnh. 1.1.3.Sinh học - Phận nhóm động vật và thực vật dựa vào các thuộc tính của chúng. 1.1.4.Trong y tế 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 4 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, gom 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. 1.1.5.Insurance, Finance - Phân nhóm các đối tượng sử dụng bảo hiểm và các dịch vụ tài chính, dự đoán xu hướng của khách hàng, phát hiện gian lận tài chính. 1.1.6.Phân cụm Web - Là phân cụm trên tập các tài liệu được lấy từ Web. Có hai tình huống phân cụm tài liệu. Tình huống thứ nhất là việc phân cụm trên toàn bộ một CSDL có sẵn gồm rất nhiều tài liệu Web. Tình huống thứ hai thường được áp dụng trên một tập tài liệu nhỏ là tập hợp các tài liệu do máy tìm kiếm trả về theo một truy vấn của người dung. 1.2 Các loại dữ liệu trong gom cụm - Trong phân cụm, các đối tượng dữ liệu thường được diễn tả dưới dạng các đặc tính hay còn gọi là thuộc tính ( Khái niệm “các kiểu dữ liệu” và “các kiểu thuộc tính dữ liệu“ được xem là tương đương với nhau). Các thuộc tính này là các tham số để giải quyết vấn đề phân cụm và sự lựa chọn chúng có tác động đáng kể đến kết quả phân cụm. Phân loại các kiểu thuộc tính khác nhau là vấn đề cần giải quyết đối với hầu hết các tập dữ liệu nhằm cung cấp các phương tiện thuận lợi để nhận dạng sự khác nhau của các phần tử dữ liệu. Các thuật toán phân cụm thường sử dụng một trong hai cấu trúc dữ liệu sau: 5 o Ma trận dữ liệu (Data matrix, object-by-variable structure): là mảng n hàng, p cột, trong đó p là số thuộc tính của mỗi đối tượng. Mỗi hàng biểu diễn một đối tượng, các phần tử trong mỗi hàng chỉ giá trị thuộc tính tương ứng của đối tượng đó. Mảng được cho như sau: o Ma trận phi tương tự (Dissimilarity matrix, object-by-object structure): là mảng n hàng, n cột. Phần tử d(i,j) chứa khoảng cách hay độ khác biệt giữa các đối tượng i và đối tượng j, d(i,j) là một số không âm, trong đó nếu d(i,j) xấp xỉ 0 thì hai đối tượng i và j là khá "gần" nhau, nếu d(i,j) càng lớn thì hai đối tượng i, j khá khác nhau. Do d(i,j) = d(j,i) = 0 nên ta có thể biểu diễn ma trận phi tương tự như sau: - Phần lớn các thuật toán phân cụm sử dụng cấu trúc ma trận phi tương tự. Do vậy, nếu dữ liệu cần phân cụm được tổ chức dưới dạng ma trận dữ liệu 6 thì cần biến đổi về dạng ma trận phi tương tự trước khi tiến hành phân cụm. Có hai đặc trưng để phân loại: kích thước miền và hệ đo. Cho một CSDL D chứa n đối tượng trong không gian k chiều; x, y, z là các đối tượng thuộc D: Trong đó với là các đặc trưng hoặc thuộc tính tương ứng của các đối tượng x, y, z. Như vậy sẽ có các kiểu dữ liệu sau: 1.2.1. Biến trị khoảng - Một thành phần quan trọng trong thuật toán phân cụm là phép đo khoảng cách giữa hai điểm dữ liệu. Nếu thành phần của vectơ thể hiện dữ liệu thuộc trong cùng một đơn vị giống nhau thì nó tồn tại khoảng cách Euclidean có thể xác định được nhóm dữ liệu tương tự. Tuy nhiên, không phải lúc nào khoảng cách Euclidean cũng cho kết quả chính xác. - Tuy nhiên chú ý rằng đây không phải vấn đề đồ thị: vấn đề phát sinh từ công thức toán học được sử dụng để kết hợp khoảng cách giữa các thành phần đơn đặc tính dữ liệu vectơ vào trong một độ đo khoảng duy nhất mà có thể được sử dụng cho mục đích gom cụm: các công thức khác nhau dẫn tới những cụm khác nhau. - Các thuật toán cần có các phép đo khoảng cách hoặc độ tương tự giữa hai đối tượng để thực hiện gom cụm. Kiến thức miền phải được sử dụng để để trình bày rõ ràng phép đo khoảng thích hợp cho mỗi ứng dụng. Hiện nay, phép đo có nhiều mức độ khác nhau tùy theo từng trường hợp. - Khoảng cách Minkowski được định nghĩa như sau: Trong đó x, y là hai đối tượng với n là số lượng thuộc tính, và là kích thước của dữ liệu. - Khoảng cách Euclidean: Là khoảng cách giữa hai đối tượng trong trường hợp đặc biệt q=2. - Khoảng cách Manhattan: Là khoảng cách giữa hai đối tượng trong trường hợp đặc biệt q=1. 7 - Khoảng cách Chebychev: Trong trường hợp q = ∞, hữu ích để định nghĩa các đối tượng phi tương tự nếu chúng khác nhau chỉ trong một kích thước biến đổi. - Tính chất của distance(i,j): o distance (i,j) >= 0 o distance (i,i) = 0 o distance (i,j) = distance (j,i) o distance (i,j) <= distance (i,h) + distance (h,j) 1.2.2. Biến khoảng tỉ lệ - Có nhiều cách khác nhau để tính độ tương tự giữa các thuộc tính tỉ lệ. Một trong những số đó là sử dụng công thức tính logarit cho mỗi thuộc tính , ví dụ , đóng vai trò như thuộc tính khoảng. Phép biến đổi logarit này thích hợp trong trường hợp các giá trị của thuộc tính là số mũ. - Trong thực tế, khi tính độ tương tự dữ liệu, chỉ xem xét một phần các thuộc tính đặc trưng đối với các kiểu dữ liệu hoặc là đánh trọng số cho tất cả các thuộc tính dữ liệu. Trong một số trường hợp, loại bỏ đơn vị đo củacác thuộc tính dữ liệu bằng cách chuẩn hóa chúng, hoặc gán trọng số cho mỗi thuộc tính giá trị trung bình, độ lệch chuẩn. Các trọng số này có thể sử dụng trong các độ đo khoảng cách trên, ví dụ với mỗi thuộc tính dữ liệu đã được gán trọng số tương ứng wi (1 ≤ i ≤ k), độ tương đồng dữ liệu được xác định như sau: - Có thể chuyển đổi giữa các mô hình cho các kiểu dữ liệu trên, ví dụ như dữ liệu kiểu hạng mục có thể chuyển đổi thành dữ liệu nhị phân hoặc ngược lại. Giải pháp này rất tốn kém về chi phí tính toán, do vậy, cần phải cân nhắc khi áp dụng cách thức này. - Tóm lại, tùy từng trường hợp dữ liệu cụ thể mà có thể sử dụng các mô hình tính độ tương tự khác nhau. Việc xác định độ tương đồng dữ liệu thích hợp, chính xác đảm bảo khách quan là rất quan trọng, góp phần xây dựng thuật toán gom cụm dữ liệu có hiệu quả cao trong việc đsảm bảo chất lượng cũng như chi phí tính toán. 1.2.3. Biến nhị phân 8 - Cho các biến danh nghĩa, “phép đo khoảng cách” là 0 nếu các trường hợp có cùng giá trị danh nghĩa, và 1 nếu các trường hợp có các giá trị danh nghĩa khác nhau, hoặc với độ đo tương tự 1 (nếu các trường hợp có cùng giá trị danh nghĩa) và 0 (nếu không giống nhau). - Do đó nếu xem xét p biến định danh, có thể đánh giá độ tương tự của các trường hợp bằng số các biến mà có giá trị giống nhau. Nói chung định nghĩa với một biến nhị phân mới từ mỗi biến danh nghĩa, bằng việc nhóm các nhãn danh nghĩa thành hai lớp, một nhãn là 1, nhãn khác là 0. Xây dựng và xem xét bảng ngẫu nhiên các sự kiện có thể xảy ra và định nghĩa các thuộc tính của đối tượng i, j bằng các biến số nhị phân 0 và 1. Ví dụ ta có bảng tham số sau: j 1 0 i 1 a b a+b 0 c d c+d a+c b+d p=a+b+c+d Trong đó: o a là tổng số các thuộc tính có giá trị 1 trong hai đối tượng i, j o b là tổng số các thuộc tính có giá trị 1 trong i và giá trị 0 trong j o c là tổng số các thuộc tính có giá trị 0 trong i và giá trị 1 trong jx o d là tổng số các thuộc tính có giá trị 0trong hai đối tượng i, j o p là tổng tất cả các thuộc tính của hai đối tượng i, j - Giá trị đối xứng: Một thuộc tính nhị phân là đối xứng nếu kết quả là cả hai đều quan trọng. - Giá trị bất đối xứng: Một thuộc tính nhị phân là không đối xứng nếu các kết quả của các trạng thái không quan trọng. - Các phép đo độ tương tự của các trường hợp với dữ liệu thuộc tính nhị phân được thực hiện bằng các cách sau: o Hệ số đối sánh đơn giản: . cả hai đối tượng có vai trò như nhau, nghĩa là chúng đối xứng và có cùng trọng số. 9 o Hệ số Jaccard (không đối xứng): . Tham số này loại bỏ các đối sánh 0-0. Ví dụ: Name Gender Fever Cough Test-1 Test-2 Test-3 Test-4 Jack M Y N P N N N Marry F Y N P N P N Jim M Y P N N N N Ta có thuộc tính Gender đối xứng. Tất cả các thuộc tính còn lại không đối xứng. Đặt Y và P là 1 và N là 0, ta có bảng tham số cho Jack và Marry như sau: Mary 1 0 Jack 1 2 0 2 0 1 3 4 3 3 6 Tương tự ta tính được: 1.2.4. Biến thứ tự - Thuộc tính thứ tự có 2 loại: rời rạc và liên tục o Thuộc tính thứ tự rời rạc là thuộc tính danh nghĩa với các giá trị được sắp xếp một cách có ý ngshĩa. o Thuộc tính thứ tự liên tục là dữ liệu liên tục trên quy mô không rõ. Ví dụ: thứ tự của bảng xếp hạng trong một môn thể thao (vàng, bạc, đồng) là quan trọng hơn giá trị của họ. Được sử dụng để ghi lại các đánh giá chủ quan của các đặc tính nhất định mà không thể đo lường một cách khách quan. - Phép đo độ phi tương tự giữa các đối tượng dữ liệu với thuộc tính thứ tự được thực hiện như sau: Giả sử i là thuộc tính thứ tự có giá trị ( là kích thước miền giá trị): 10 [...]... với một số cụm cố định và không sử dụng cùng một khái niệm mật độ cho các cụm 18 Chương 3: ỨNG DỤNG THUẬT TOÁN K-MEANS VÀO GOM CỤM DỮ LIỆU 3.1 Thuật toán K-MEANS 3.1.1 Ý tưởng - Ý tưởng chính của phương pháp này là phân một tập dữ liệu có n phần tử cho trước thành k nhóm dữ liệu sao cho mỗi phần tử dữ liệu chỉ thuộc về một nhóm dữ liệu và mỗi nhóm dữ liệu có tối thiểu một phần tử dữ liệu Các thuật toán. .. các phương pháp được dùng trong phân cụm dữ liệu gồm 6 phương pháp là: Phương pháp dựa trên phân hoạch, phương pháp phân cấp, phương pháp gom cụm dữ liệu mờ, phương pháp dựa vào lưới, phương pháp dựa trên mật độ, phương pháp dựa trên mô hình Cuối cùng là phần giới thiệu chi tiết về thuật toán K_MEANS và cài đặt thử nghiệm thuật toán K_MEANSs gom n điểm vào k cụm trong hệ trục tọa độ hai chiều 25 TÀI LIỆU... chúng ta cần đưa vào khái niệm bài toán gom cụm mờ Trong các phương pháp gom cụm đã giới thiệu trong chương trước, mỗi phương pháp gom cụm phân hoạch một tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên và mỗi đối tượng dữ liệu chỉ thuộc về một cụm dữ liệu, phương pháp này chỉ phù hợp với việc khám phá ra các cụm có mật độ cao và rời nhau, với đường biên giữa các cụm được xác định tốt Tuy nhiên,... trọng số mũ để xây dựng thuật toán gom cụm mờ và được chứng minh độ hội tụ của các thuật toán là cực tiểu cục - bộ Các thuật toán điển hình theo phương pháp gom cụm dữ liệu mờ gồm: FCM (Fuzzy C-means), Thuật toán εFCM (ε- Insensitive Fuzzy C-means) 2.4 Phương pháp dựa vào lưới - Phương pháp gom cụm dựa trên lưới thích hợp với dữ liệu nhiều chiều, và chủ yếu được dùng để gom cụm cho dữ liệu không gian Phương. .. biên giữa các cụm có thể mờ, các cụm có thể chồng lên nhau, nghĩa là một số các đối tượng dữ liệu thuộc về nhiều các cụm khác nhau, do đó mô hình này không mô tả được dữ liệu thực Vì vậy người ta đã áp dụng lý thuyết về tập mờ trong gom cụm dữ liệu để giải quyết cho trường hợp này Cách thức kết hợp này được gọi là Gom cụm - mờ Gom cụm mờ là phương pháp gom cụm dữ liệu mà cho phép mỗi điểm dữ liệu thuộc... lượng gom cụm dữ liệu 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ủa cụm tự nhiên thì kết quả gom cụm của thuật toán 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ế Trên thực tế người ta chưa có một giải pháp. .. phép mỗi điểm dữ liệu thuộc về hai hoặc nhiều cụm thông qua bậc thành viên Ruspini (1969) giới thiệu khái niệm phân hoạch mờ để mô tả cấu trúc cụm của tập dữ liệu và đề xuất một thuật toán để tính toán tối ưu phân hoạch mờ Dunn (1973) mở rộng phương pháp gom cụm và đã phát triển thuật toán gom cụm mờ Ý tưởng của thuật toán là xây đựng một phương pháp gom cụm mờ dựa trên tối thiểu hóa hàm mục tiêu Bezdek... tượng dữ liệu, mặt khác phương pháp này không trộn/hòa nhập các ô như phân cấp 16 - Các thuật toán điển hình theo phương pháp dựa trên lưới gồm: STING (STatistical Information Grid), WaveCluster, CLIQUE (CLustering In QUEst) 2.5 Phương pháp dựa trên mật độ - Phương pháp dựa trên mật độ gom cụm các đối tượng dữ liệu dựa trên mối quan hệ của các đối tượng dữ liệu với các điểm lân cận của các điểm dữ liệu. .. loại thư theo xã/phường để gửi thư Đó chính là một ứng dụng của bài toán gom cụm rõ - Vậy bài toán gom cụm rõ là gì? Ta có thể định nghĩa bài toán gom cụm rõ như sau: Cho tập dữ liệu mẫu X, ta kiểm tra các điểm dữ liệu xem nó giống với đặc điểm của nhóm nào nhất thì ta gán điểm dữ liệu đó vào trong nhóm đó Nhưng trong thực tế không phải lúc nào bài toán gom cụm rõ cũng áp dụng được Chẳng hạn, ta có phé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 lại bước 2 và bước b cho đến khi các trọng tâm của cụm không thay đổi - Thuật toán K-MEANS được chứng minh là hội tụ và có độ phức tạp tính toán là: O((n.k.d).τ.Τflop) Trong đó, n là số đối tượng dữ liệu, k là số cụm dữ liệu, d là số chiều của vector đối tượng dữ liệu, τ là số vòng lặp, . vào khái niệm bài toán gom cụm mờ. Trong các phương pháp gom cụm đã giới thiệu trong chương trước, mỗi phương pháp gom cụm phân hoạch một tập dữ liệu ban đầu thành các cụm dữ liệu có tính tự nhiên. phương pháp này là phân một tập dữ liệu có n phần tử cho trước thành k nhóm dữ liệu sao cho mỗi phần tử dữ liệu chỉ thuộc về một nhóm dữ liệu và mỗi nhóm dữ liệu có tối thiểu một phần tử dữ liệu. . tập mờ trong gom cụm dữ liệu để giải quyết cho trường hợp này. Cách thức kết hợp này được gọi là Gom cụm mờ. - Gom cụm mờ là phương pháp gom cụm dữ liệu mà cho phép mỗi điểm dữ liệu thuộc về