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

Gom Văn bản bằng Thuật toán K-Means

28 1,2K 6

Đ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 28
Dung lượng 0,98 MB

Nội dung

Gom Văn bản bằng Thuật toán K-Means MỤC LỤC MỤC LỤC 1 1 CHƯƠNG I 3 GOM CỤM DỮ LIỆU 3 - Gom cụm Expectation-Maximization (EM) 11 Gom cụm với mạng neural 11 CHƯƠNG II 12 THUẬT TOÁN K-MEANS 12 CHƯƠNG III 17 DEMO THỰC HIỆN GOM VĂN BẢN 17 BẰNG THUẬT TOÁN K-MEANS 17 CHƯƠNG IV 27 KẾT LUẬN 27 TÀI LIỆU THAM KHẢO 28 Gom Văn bản bằng Thuật toán K-Means LỜI NÓI ĐẦU Khai phá dữ liệu (Data Mining) là quá trình khám phá các tri thức mới và các tri thức có ích ở dạng tiềm năng trong nguồn dữ liệu lớn đã có (các kho dữ liệu). Khai phá dữ liệu là một bước đặc biệt trong toàn bộ quá trình phát hiện các tri thức có ích từ các tập dữ liệu lớn, sử dụng các giải thuật đặc biệt để chiết suất ra các mẫu (pattern) (hay các mô hình) từ dữ liệu. Với mục đích tìm hiểu để nâng cao khả năng Khai phá dữ liệu, tiểu luận này là sự trình bày khái quát về gom cụm dữ liệu và thuật toán K-means, đồng thời trình bày Demo thực hiện gom văn bản bằng thuật toán K-means. Em xin chân thành cảm ơn PGS.TS. Đỗ Phúc-Giảng viên môn học Khai phá dữ liệu đã truyền đạt những kiến thức vô cùng quý báu, em cũng xin cảm ơn sự giúp đỡ, dạy bảo tận tình của các thầy cô giáo và những bạn học trong suốt quá trình học tập cũng như thực hiện và hoàn thành luận văn. Do thời gian và khả năng có hạn nên bài luận văn còn nhiều hạn chế trong thời gian tới em sẽ tiếp tục nghiên cứu các vấn đề trong môn học mà trong bài luận văn này chưa đề cập đến. em rất mong nhận được sự góp ý của các thầy cô và các bạn quan tâm. Em xin chân thành cảm ơn! Trần Xuân Thái 2 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG I GOM CỤM DỮ LIỆU 1. Khái niệm Gom cụm là quá trình nhóm các đối tượng vật lý hoặc trừu tượng thành các nhóm hay các lớp đối tượng khác nhau. Một cụm là một tập các đối tượng dữ liệu trong đó các đối tượng ở trong cùng một cụm thì giống nhau và khác với các đối tượng thuộc cụm khác. 2. Một số ứng dụng điển hình - Kinh doanh: phát hiện ra nhóm khách hàng. - Sinh học: phân loại động, thực vật, phân loại gen. - Địa lí: nhận ra các vùng đất giống nhau dựa vào CSDL quan sát trên trái đất, phân nhóm nhà,… - Phân chia tài liệu Web. 3. Thế nào là gom cụm tốt - Một phương pháp tốt sẽ tạo ra các cụm có chất lượng cao với tương tự cao cho trong lớp ( intra- class), tương tự thấp giữa các lớp ( inter- class). - Chất lượng của kết quả gom cụm phụ thuộc vào : độ đo tương tự sử dụng và việc cài đặt độ đo tương tự. - Chất lượng của phương pháp gom cụm cũng được đo bởi khả năng phát hiện các mẫu bị che ( hidden patterns). 4. Các yêu cầu của gom cụm trong khai phá dữ liệu - Scalability: Có thể thay đổi kích cỡ. - Khả năng làm việc với các loại thuộc tính khác nhau. - Khám phá ra các cụm có hình dạng bất kì. - Các yêu cầu tối thiểu cho tri thức lĩnh vực nhằm xác định các tham biến nhập - Khả năng làm việc với dữ liệu có chứa nhiễu ( outliers). - Không nhạy cảm với thứ tự các bản ghi nhập vào. - Khả năng làm việc với dữ liệu nhiều chiều. - Có thể diễn dịch và khả dụng 5. Các kiểu dữ liệu trong gom cụm dữ liệu 5.1. Cấu trúc dữ liệu Các thuật toán gom cụm hầu hết sử dụng hai cấu trúc dữ liệu điển hình sau: - Ma trận dữ liệu ( two modes ) 3 Gom Văn bản bằng Thuật toán K-Means Biểu diễn n đối tượng và p biến ( là các phép đo hoặc các thuộc tính ) của đối tượng, có dạng ma trận nxp. Ma trận bất tương tự ( One modes): Lưu trữ một tập các trạng thái ở gần nhau mà chúng sẵn có ở tất cả các cặp n đối tượng. Được biểu thị bởi một bảng n x n. Với d(i,j) là sự khác nhau hoặc sự bất tương tự giữa các đối tượng i và j. Nói chung, d(i,j) là số không âm và gần bằng 0 khi đối tượng i và j là tương tự nhau mức cao hoặc “gần” với đối tượng khác. Khi d(i,j) = d(j,i) và d(i,i) = 0, chúng ta có ma trận một chiều. Ma trận dữ liệu thường được gọi là ma trận dạng 2, trái lại ma trận bất tương tự được gọi là ma trận dạng 1, khi đó các dòng và các cột biểu diễn các thực thể khác nhau trước, các thực thể giống nhau biểu diễn sau. Nhiều thuật toán gom cụm hoạt đông trên ma trận bất tương tự. Nếu dữ liệu được trình bầy dưới dạng một ma trận dữ liệu, đầu tiên nó có thể được chuyển vào ma trận bất tương tự trước khi áp dụng các thuật toán gom cụm như vậy. Không có định nghĩa duy nhất về sự tương tự và bất tương tự giữa các đối tượng dữ liệu mà định nghĩa này tuỳ thuộc vào loại dữ liệu khảo sát, loại tương tự cần thiết.“Sự tương tự / bất tương tự được đánh giá như thế nào?”. Thông thường được biểu diễn qua độ đo khoảng cách d(i,j). Lý tưởng, mọi độ đo khoảng cách phải thoả mãn các điều kiện sau: 4 Gom Văn bản bằng Thuật toán K-Means - d(i,j)>=0 - d(i,j)=0 nếu i=j - d(i,j)=d(j,i) - d(x,z)<=d(x,y) + d(y,z) 5.2. Các kiểu dữ liệu 5.2.1. Các biến trị khoảng ( interval- valued variables) Định nghĩa: Biến trị khoảng là các phép đo liên tục của các thang đo tuyến tính, thô. Ví dụ: trọng lượng, chiều cao, chiều ngang, chiều dọc, tuổi, nhiệt độ thời tiết. Các đơn vị đo có thể ảnh hưởng đến phân tích cụm. Vì vậy để tránh sự phụ thuộc vào đơn vị đo, cần chuẩn hoá dữ liệu. Các bước chuẩn hoá dữ liệu - Tính sai số tuyệt đối trung bình: |)| |||(| 1 21 fnffffff mxmxmx h x −++−+−= với ) ( 1 21 nffff xxx h m +++= - Tính độ đo chuẩn: f fif if s mx z − = Một nhóm các độ đo khoảng cách phổ biến cho tỉ lệ theo khoảng là khoảng cách Minkowski. )|| |||(|),( 2211 q q jpip q ji q ji xxxxxxjid −++−+−= với i = (x i1 , x i2 , x ip ) và j=(x j1 , x j2 , ,x jp ) là các đối tượng dữ liệu p- chiều và q là số nguyên dương. + Nếu q = 1, độ đo khoảng cách là Mahattan || ||||),( 2211 jpipjiji xxxxxxjid −++−+−= + Nếu q = 2, độ đo khoảng cách là khoảng cách Euclidean. 22 22 2 11 || |||(|),( jpipjiji xxxxxxjid −++−+−= 5 Gom Văn bản bằng Thuật toán K-Means 5.2.2. Các biến nhị phân ( binary variables ) Định nghĩa: Biến nhị phân là biến chỉ có hai trạng thái là 0 hoặc 1. Các biến nhị phân được mô tả là đối xứng và bất đối xứng. Việc xử lý các biến nhị phân giống như các biến tỉ lệ khoảng có thể dẫn đến không đưa ra được kết quả phân cụm. Vì vậy phải có phương pháp tính toán khác. Giả sử ta có bảng dữ liệu nhị phân sau: Object j Object i 1 0 Sum 1 a b a+b 0 c d c+d Sum a+c b+d p Biến nhị phân đối xứng và bất đối xứng - Một biến nhị phân là đối xứng nếu đồng thời các trạng thái của nó có tầm quan trọng như nhau và mang cùng một trọng số. Do đó, không có sự ưu tiên khi kết quả đưa ra phải được mã hoá là 0 hoặc 1. Ví dụ thuộc tính giới tính có 2 trạng thái là male và female. Tính tương tự giữa các biến nhị phân đối xứng được gọi là tính tương tự bất biến, trong đó kết quả không thay đổi khi 1 hoặc tất cả các biến nhị phân được mã hoá khác nhau. Với các tính giống nhau bất biến, một hệ số được biết đến nhiều nhất để xác định sự khác nhau giữa đối tượng i và j là hệ số đối sánh đơn giản, được định nghĩa như sau: dcba cb jid +++ + =),( - Một biến 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 có tầm quan trọng như nhau. Chẳng hạn kết quả âm tính và dương tính khi khám bệnh. Theo thói quen, chúng ta sẽ mã hoá kết quả quan trọng nhất, thường là kết quả ít xẩy ra bằng 1 (HIV dương tính) và bằng 0 cho kết quả khác (HIV âm tính). Trong hai biến nhị phân được đưa ra, việc chấp nhận biến giá trị 1(khẳng định) được xem như “monary” (như là có một trạng thái). Tính tương tự giữa các biến này được gọi là tương tự không bất biến. Với sự tương tự không bất biến, hệ số được biết đến nhiều nhất là hệ số Jaccard, trong đó số phép so sánh phủ định coi như không quan trọng và do đó được bỏ qua khi tính toán. 6 Gom Văn bản bằng Thuật toán K-Means cba cb jid ++ + =),( Ví dụ: Bảng hồ sơ bệnh nhân Name Gender Fever Cough Test-1 Test-2 Test-3 Test-4 Jack M Y N P N N N Mary F Y N P N P N Jim M Y P N N N N Có 8 thuộc tính Name, Gender, Fever, Cough, Test-1, Test-2, Test-3, Test-4 trong đó: - Gender là thuộc tính nhị phân đối xứng - Các thuộc tính còn lại là nhị phân bất đối xứng Ta gán các trị Y và P bằng 1 và trị N được gán bằng 0. Tính khoảng cách giữa các bệnh nhân dựa vào các bất đối xứng dùng hệ số Jacard ta có: 75.0 211 21 ),( 67.0 111 11 ),( 33.0 102 10 ),( = ++ + = = ++ + = = ++ + = marryjimd jimjackd marryjackd Như vậy, theo tính toán trên Jim và Marry có khả năng mắc bệnh giống nhau nhiều nhất vì d(jim, marry)=0.75 là lớn nhất. 5.2.3. Các biến định danh ( nominal variables) Định nghĩa: Biến định danh là mở rộng của biến nhị phân với nhiều hơn hai trạng thái. Ví dụ: thuộc tính màu sắc: đỏ, vàng, xanh, lục. Có hai phương pháp để tính toán sự tương tự giữa hai đối tượng: - Phương pháp 1: Đối sánh đơn giản với m là số lần đối sáng, p là tổng số các biến p mp jid − =),( - Phương pháp 2: Dùng một số lượng lớn các biến nhị phân. + Tạo biến nhị phân mới cho từng trạng thái định danh. 7 Gom Văn bản bằng Thuật toán K-Means + Các biến thứ tự có thể là liên tục hay rời rạc + Thứ tự của các trị là quan trọng, ví dụ hạng. + Có thể xử lý như tỉ lệ khoảng như sau: Thay thế x if bởi hạng của chúng ánh xạ phạm vi của từng biến vào đoạn [0,1] bằng cách thay thế đối tượng i trong biến thứ f bởi }, ,1{ fif Mr ∈ Tính sự khác nhau dùng các phương pháp cho biến tỉ lệ theo khoảng 1 1 − − = f if if M r z 5.2.4. Các biến thang đo tỉ lệ Định nghĩa: Là các biến có độ đo dương trên thang phi tuyến, xấp xỉ thang đo mũ. Ví dụ: Ae Bt hay Ae -Bt . Các phương pháp tính độ tương tự: - Xử lý chúng như các biến thang đo khoảng - áp dụng các biến đổi logarithmic - Xử lý chúng như dữ liệu thứ tự liên tục - Xử lý chúng theo hạng như thang đo khoảng. 5.2.5. Các biến có kiểu hỗn hợp Một cơ sở dữ liệu có thể chứa đồng thời cả sáu loại biến. Khi đó có thể dùng công thức được gán trọng để kết hợp các hiệu quả: ∑ ∑ = = = p f f ij p f f ij f ij d jid 1 )( 1 )()( ),( δ δ với 0= f ij δ nếu x if hoặc x jf missing hoặc x if =x jf =0 trường hợp khác 1= f ij δ Đóng góp của biến f vào khoảng cách d(i,j): - Nếu f là biến nhị phân hay định danh: 0 )( = f ij d nếu x if =x jf các trường hợp khác 1 )( = f ij d - Nếu f là dựa trên khoảng cách: dùng khoảng cách được chuẩn hoá. 8 Gom Văn bản bằng Thuật toán K-Means - Nếu f là thứ tự thang đo tỉ số tính các hạng r if và xử lý z if như thang đo khoảng 1 1 − − = f if if M r z 6. Các phương pháp gom cụm Có rất nhiều các phương pháp gom cụm khác nhau. Việc lựa chọn phương pháp nào tuỳ thuộc vào kiểu dữ liệu, mục tiêu và trình ứng dụng cụ thể. Nhìn chung, có thể chia thành các phương pháp sau: 6.1. Phương pháp phân hoạch Cho một cơ sở dữ liệu D chứa n đối tượng, tạo phân hoạch thành tập có k cụm sao cho: - Mỗi cụm chứa ít nhất một đối tượng - Mỗi đối tượng thuộc về một cụm duy nhất - Cho trị k, tìm phân hoạch có k cụm sao cho tối ưu hoá tiêu chuẩn phân hoạch được chọn. Các phương pháp phân hoạch Phương pháp heuristic điển hình được biết đến là k-means và k-medoids 6.1.1. Phương pháp gom cụm k-means ( MacQueen’67) Input: Số các cụm k và cơ sở dữ liệu chứa n đối tượng Thuật giải: gồm 4 bước - Phân hoạch đối tượng thành k tập con ( cụm). - Tính các điểm hạt giống centroid ( trung bình của các đối tượng trong cụm ) cho từng cụm trong phân hoạch hiện hành. - Gán mỗi đối tượng cho cụm centroid gần nhất - Quay về bước 2, chấm dứt khi không còn phép gán mới. Điểm mạnh của phương pháp gom cụm k- means - Có thể scalable trong khi xử lý dữ liệu lớn - Hiệu suất tương đối: O(nkt) với n là số đối tượng, k là số cụm, t là số lần lặp. Thông thường k, t << n. - Thường kết thúc ở tối ưu cục bộ; có thể tìm được tối ưu toàn cục, dùng kĩ thuật thuật giải di truyền. Điểm yếu của phương pháp k- means - Có thể áp dụng chỉ khi xác định được trị trung bình - Cần chỉ định trước số các cụm- k. - Không thể xử lý nhiễu và outliers. 9 Gom Văn bản bằng Thuật toán K-Means - Không thích hợp đối với các cụm có dạng nồi hay các cụm có kích thước khác nhau. - Các biến đổi của phương pháp k- means - Các biến thể của phương pháp k- means khác nhau ở việc chọn k centroids đầu tiên, tính toán sự khác nhau và ở chiến lược tính centroids của cụm. 6.1.2. Phương pháp k- medoids Input: Một cơ sở dữ liệu n đối tượng và số các cụm k. Thuật toán: Gồm 4 bước: - Chọn bất kì k đối tượng làm medoids ban đầu để đại diện cho các đối tượng - Gán từng đối tượng cho cụm có medoid gần nhất. - Chọn nonmedoid và thay thế các medoids nếu cải thiện được tình trạng gom cụm. - Quay về bước 2, dừng khi không còn phép gán mới. 6.2. Phương pháp phân cấp (Hierachical methods) Phân cấp: Tạo phân cấp cụm chứ không phải phân hoạch các đối tượng. Khác với phân hoạch, phân cấp không cần số cụm k ở đầu vào và dùng ma trận khoảng cách làm tiêu chuẩn gom cụm. Trong phương pháp phân cấp có thể dùng điều kiện dừng. Ví dụ: số cụm. Cây các cụm Phân cấp cụm thường được biểu diễn dưới dạng cây các cụm và được gọi là dendrogram. Trong đó: - Các lá của cây biểu diễn từng đối tượng - Các nút trong biểu diễn các cụm Có hai phương pháp tạo cây phân cấp: top-down và bottom- up - Phương pháp Bottom up ( từ dưới lên): Thay thế từng đối tượng trong cụm của nó. Trộn theo từng bước hai cụm giống nhau nhất cho đến khi chỉ còn một cụm hay thoả mãn điều kiện thì dừng. - Phương pháp Top- down ( từ trên xuống): Bắt đầu từ cụm lớn nhất chứa tất cả các đối tượng. Chia cụm phân biệt nhất thành các cụm nhỏ hơn và tiếp diễn cho đến khi có n cụm thoả mãn điều kiện dừng. Đo khoảng cách: Có 3 cách được dùng để đo khoảng cách là: - Phương pháp liên kết đơn ( người láng giềng gần nhất) )},({min),( , yxdjid þCi CyCx ∈∈ = 10 [...]... thiết Thuật toán ISOD T năm 1967sử dụng hiệu quả cho cả tiền và hậu xử lý trên k-means 16 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG III DEMO THỰC HIỆN GOM VĂN BẢN BẰNG THUẬT TOÁN K-MEANS 1 Cụ thể thuật toán K-Means 1.1 Phát biểu bài toán phân lớp với K-means Input Tập các đối tượng X = {xi| i = 1, 2, …, N}, Số cụm: K Output Các cụm Ci( i = 1 ÷ K) tách rời và hàm tiêu chuẩn E đạt giá trị tối thiểu Thuật. .. A6 cụm 3: A2, A7 22 Gom Văn bản bằng Thuật toán K-Means Trọng tâm mới: C1(3.66, 9); C2(7, 4.33); C3 (1.5, 3.5) Cập nhật trọng tâm sau lần lặp thứ 2 và thứ 3 2 Áp dụng thuật toán K-means vào phân lớp văn bản 2.1 Giới thiệu: Để áp dụng thuật toán K-mean vào phân lớp văn bản ta cần phải thực hiện vector hóa văn bản mỗi văn bản được biểu diễn dưới dạng vector , việc vector hóa văn bản sử dụng mô hình vector... em xem trọng số của các hạn là tần số xuất hiện của hạn đó trong văn bản 2.4 Xác định các hạn (term) trong văn bản Xác định các hạn trong văn bản chính là việc xác định các từ trong văn bản. Tách từ trong văn bản là một bải toán khó, đặc biệt trong tiếng Việt Đối với 24 Gom Văn bản bằng Thuật toán K-Means việc xácđịnh các hạn trong văn bản thì các từ tối nghĩa sẽ được loại bỏ đầu tiên, các từ tối nghĩa... diện 25 Gom Văn bản bằng Thuật toán K-Means Giao diện chương trình 3.2 Hướng dẫn sử dụng chương trình demo - Thực thi tập tin exe chương trình - Nhấn nút Browser để chọn đến thư mục chứa các tập tin dữ liệu văn bản cho kiểm tra gom nhóm - Nhập số phân nhóm ban đầu vào ô textbox Set K và nhấn nút Apply để ghi nhận - Nhấn nút Start để bắt đầu thực thi gom nhóm 26 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG... 11 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG II THUẬT TOÁN K-MEANS 1 Khái niệm K-means là thuật toán gom cụm theo phương pháp phân hoạch và đã được sử dụng rộng rãi Cho tập các đối tượng, mục tiêu gom cụm hay phân mảnh là chia tập đối tượng này thành nhiều nhóm hay “cụm” sao cho các đối tượng trong một cụm có khuynh khuynh hướng tương tự nhau hơn so với đối tượng khác nhóm Nói cách khác, các thuật toán. .. của thuật toán K-means là: O(k) + t(O(kn) + O(n) + O(n)) = O(tkn) 4 Ưu điểm - Hiệu suất tượng đối: do t, k . thiết. Thuật toán ISOD T năm 1967sử dụng hiệu quả cho cả tiền và hậu xử lý trên k-means. 16 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG III DEMO THỰC HIỆN GOM VĂN BẢN BẰNG THUẬT TOÁN K-MEANS 1 của cụm đó nhất dựa trên độ đo khoảng cách. 11 Gom Văn bản bằng Thuật toán K-Means CHƯƠNG II THUẬT TOÁN K-MEANS 1. Khái niệm K-means là thuật toán gom cụm theo phương pháp phân hoạch và đã được. có thể dùng thuật toán di truyền để tìm tối ưu toàn cục. 14 Gom Văn bản bằng Thuật toán K-Means 5. Một số hạn chế của thuật toán k-means Sự hội tụ chỉ là tối ưu cục bộ và thuật toán khá nhạy

Ngày đăng: 09/04/2015, 21:31

TỪ KHÓA LIÊN QUAN

w