Do đó một vấn đề đặt ra là làm thế nào để có thể tìm kiếm vàkhai thác tri thức từ nguồn dữ liệu như vậy Bài toán Khai phá dữ liệu văn bảnkhông chỉ tập trungvào một hay một nhóm các
Trang 1Đại Học Quốc Gia Tp Hồ Chí Minh Trường Đại Học Công Nghệ Thông Tin
Báo cáo cuối kỳ môn Công Nghệ Tri Thức
Kỹ Thuật Gom Nhóm Văn Bản Trong Lĩnh Vực Khai Phá Tri Thức
Trang 2LỜI GIỚI THIỆU
Ngày nay, nhu cầu lưu trữ và xử lý thông tin có mặt ở khắp mọi nơi Khi các môhình dữ liệu phát triển ở mức độ cao hơn, các thông tin lưu trữ dưới dạng dữ liệuphong phú đa dạng hơn, người ta nhận ra còn rất nhiều tri thức còn tiềm ẩn trong
dữ liệu mà các mức phân tích trước đó không phát hiện ra Khi các thông tin phảnánh môitrường thay đổi thì con người không nhận ra để điều chỉnh các phân tích
và đưara các phân tích mới Các tri thức đó có thể là hướng kinh doanh, các dưbáo thị trường, cũng có thể là mối quan hệ giữa các trường hay nội dung dữ liệu
mà con người không hình dung ra được khi tiến hành mô hình hoá các hệ thống
Vì thế, ngành nghiên cứu về Phát hiện tri thức trong cơ sở dữ liệu (KnowledgeDiscovery in Database) ra đời với bài toán Khai phá dữ liệu (Data Mining) làmtrung tâm nghiên cứu Nhưng phần lớn thông tin mà chúng ta lưu trữ và trao đổihằng ngày lại được lưu trữ dưới các dạng dữ liệu bán cấu trúc (semi-structureddata) hoặc phi cấu trúc (non-structured data) Ví dụ như trong các nhà xuất bản, hệthống các trang web trên một website, tập các công văn, giấy tờ, báo cáo, thư tínđiện tử trong một công ty Thậm chí ta có thể nhậnthấy rằng trong một hệquảntrịcơ sở dữ liệu (nơi mà dữ liệu được lưu trữ có cấu trúc) thì dữ liệu kiểu text vẫnchiếm một tỷ lệ cao Do đó một vấn đề đặt ra là làm thế nào để có thể tìm kiếm vàkhai thác tri thức từ nguồn dữ liệu như vậy Bài toán Khai phá dữ liệu văn bảnkhông chỉ tập trungvào một hay một nhóm các thông tin được lưu trữ dưới dạngvăn bản, vấn đề đặt ra là làm thế nào có thể Khai phá được các thông tin theo lịch
sử, từ quá khứ hướng dư đoán tương lai Những tri thức tưởng trừng như vô íchtrong quá khứ nhưng có thể được phát hiện để sử dụng cho các mục đích sau này.Một số bài toán quan trọng trong Khai phá dữ liệu văn bản hay được xétđến như làcác bài toán “Text Clustering”, “Text Classification”, “Text Sumarization”, … Trong đồ án nhỏ này chúng em xin giới thiệu một số kỹ thuật gom nhóm văn bản(document clustering) và giới thiệu, áp dụng thuật toán K-means trong gom nhómvăn bản
Trang 3Phần 1: Giới Thiệu
1 Công Nghệ Tri Thức:
Khái niệmcông nghệ tri thức (knowledge engineering)được ra đời vào năm
1983 Đây là một ngành kỹ thuật hướng đến mục tiêu tích hợp tri thức vào các hệthống máy tính nhdằm giải quyết các vấn đề phức tạp đòi hỏi một mức độ cao trithức của con người
Hiện tại, công nghệ tri thức được liên tưởng đến các quá trình xây dưng, bảo
dưỡng và phát triển các hệ thống cơ sở tri thức (knowledge-based systems) Nó
có điểm chung rất lớn với ngành công nghệ phần mềm, và được sử dụng trong rấtnhiều lĩnh vưc của khoa học máy tính như: trí tuệ nhân tạo, khai phá tri thức, hệchuyên gia, hệ hỗ trợ ra quyết định và hệ thống thông tin địa lý
Một số tác vụ cụ thể của công nghệ tri thức trong quá trình phát triển các hệ cơ sởtri thức như sau:
- Đánh giá và ước định vấn đề
- Phát triển một cấu trúc cho hệ thống cơ sở tri thức
- Thu nhặt và cấu trúc các thông tin, tri thức có liên quan và mức độ ưu tiên
- Hiện thưc tri thức có cấu trúc vào cơ sở tri thức
- Kiểm tra và xác thưc các tri thức đã được thêm vào
- Tích hợp và bảo dưỡng hệ thống
- Chỉnh sửa và đánh giá hệ thống
2 Máy Học:
Máy học (machine learning), là một nhánh của trí tuệ nhân tạo, là một lĩnh vưc
khoa học quan tâm đến việc thế kế và phát triển các thuật toán cho phép máy tính
có được các hành vi dưa trên dữ liệu có tính chất kinh nghiệm Nguồn dữ liệu này
có thể đến từ các bộ cảm biến hoặc cơ sở dữ liệu.Một hướng tập trung nghiên cứuchính trong lĩnh vưc này là để máy tính có thể tư động học nhằm nhận ra các kiểumẫu phức tạp và đưa ra các quyết định thông minh dưa trên dữ liệu phù hợp vớimẫu mà nó đã biết
Trang 4Mục tiêu chung của quá trình khai phá tri thức là để rút trích được tri thức từ mộttập dữ liệu có sẵn và chuyển đổi chúng thành cấu trúc mà con người có thể hiểuđược cho mục tiêu sử dụng tương lai Bên cạnh các bước phân tích thô, nó còn baogồm các khía cạnh của quản lý dữ liệu và cơ sở dữ liệu, tiền sử lý dữ liệu, mô hìnhhóa, suy diễn, đưa ra các thước đo đánh giá, xem xét độ phức tạp, hậu xử lý cáccấu trúc tìm được và biểu diễn trưc quan, v.v…
Trang 5Quá trình gom nhóm hướng tới phát hiện ra các nhóm tư nhiên, và từ đó giới thiệumột cái nhìn tổng quan của các phân lớp (chủ đề) trong một tập hợp tài liệu vănbản Trong lĩnh vưc trí tuệ nhân tạo, đây được xem là một phương pháp máy họckhông giám sát Gom nhóm không nên bị nhầm lẫn với quá trình phân lớp.Trongmột vấn đề phân lớp văn bản, số lượng phân lớp (và các tính chất của nó) đượcbiết trước, và các tài liệu văn bản được phân phối vào các lớp này.Ngược lại, trongmột vấn đề gom nhóm, bất kỳ cả số lượng, thuộc tính, hoặc tính chất thành viêncủa các phân lớp đếu không được biết trước.Sư phân biết này được minh họa ởhình 1 Phân lớp nên được xem là một ví dụ của phương pháp máy học có giámsát.
Trang 6trình gom nhóm có khả năng sẽ sinh ra cả các phân nhóm tách biệt hoặc các phânnhóm giao (chồng) lên nhau.Trong các phân nhóm giao nhau, có khả năng một tàiliệu sẽ xuất hiện trong nhiều nhóm.Câu hỏi đặt ra là điều gì cấu thành nên mộtphương pháp gom nhóm hiệu quả?Và hướng tập trung chủ yếu của các nhà nghiêncứu tìm câu trả lời cho câu hỏi này là công thức của các thuật toán và cách đánhgiá chúng.
2 Phân loại thuật toán.
a) Phân loại theo đặc tính của thuật toán:
Các thuật toán gom nhóm có thể phân ra làm hai loại: các thuật toán tách biệt(discriminative) và các thuật toán sản sinh (generative)
Một cách hiểu chung, các thuật toán tách biệt thao tác so sánh độ tương đồng theotừng cặp cho mỗi tài liệu văn bản, và dưa trên những sư tương đồng này sẽ tối ưumột hàm tiêu chuẩn để tạo ra một cách gom nhóm tối ưu.Đầu ra của các thuật toánnày thường là các phân nhóm dữ liệu tách biệt
Ở một hướng khác, các thuật toán sản sinh giả định rằng có một sư phân phối xácsuất trong dữ liệu.Và công việc của chúng là cố gắng tìm trọng tâm của các phânnhóm sao cho các trọng tâm này phù hợp với sư phân phối dữ liệu một cách tốiđa.Sản phẩm của các thuật toán loại này là các phân nhóm giao chồng nhau
b) Phân loại theo mô hình biểu diễn dữ liệu:
Thách thức đấu tiên trong một bài toán gom nhóm là xác định đặc tính nào củamột tài liệu được dùng để tạo ra tính phân loại Nói một cách khác, chúng ta tìmmột mô hình biểu diễn dữ liệu cho văn bản Dó đó bên cạnh cách phân loại trên, ta
có thể phân loại thuật toán dưa theo cách chúng lưa chọn mô hình biểu diễn dữliệu cho quá trình xử lý
Phần lớn các cách tiếp cận gom nhóm hiện tại chọn biểu diễn mỗi tài liệu như làmột vectơ đại diện cho một điểm ở không gian n chiều Từ đó có thể thu gọn mộttài liệu văn bản thành một dạng biểu diễn phù hợp cho các tiếp cận gom nhóm dữliệu truyền thống
Một cách nhìn thay thế cho cách biểu diễn vectơ không gian được tạo ra bằng cáctừ/cụm từ và tài liệu văn bản như là một tra trận kề ( adjacency matrix ) Một matrận kề, trong lý thuyết đồ thị, định nghĩa sư kết nối của các đỉnh trong một đồthị.Dưới mô hình vectơ, các kết quả này thuộc dạng đồ thị có trọng số.Và việcgom nhóm trên đồ thị như thế này đưa vấn đề chuyển thành bài toán cắt đa đường
Trang 7(multiway cut problem), nơi các đường cắt tìm ra các phân nhóm đỉnh đồ thị với
sư làm đứt gãy các cạnh nối giữa cách đỉnh càng ít càng tốt
Một kết quả khác từ việc lưa chọn biểu diễn bằng vectơ, ma trận từ ngữ-tài liệuđược tạo ra có thể rất lớn.Và hiện nay có một xu hướng tạo ra một phiên bản tối
ưu gần đúng có xếp hạng thấp (low-rank) của một ma trận và từ đó tạo ra mộtphương pháp phân loại tối ưu cho cùng tập dữ liệu
Một điểm yếu tiềm tàng của mô hình vector là nó mã hóa không có thông tin vềthứ tư của từ ngữ Do vậy gần đây có một số xu hướng thay thế cách biểu diễnkhác, ngoài thông tin về định nghĩa sư tương đồng, cách biểu diễn mới còn baogồm thêm thông tin xuất hiện của các từ/cụm từ, tần suất xuất hiện cùng với nhauhoặctheo một chuỗi nào đó
3 Các phương pháp đánh giá.
Các thuật toán gom nhóm có thể được đánh giá theo nhiều cách khác nhau Khôngmay là có rất ít sư đồng thuận về cách nào là cách tốt nhất Sư lưa chọn phươngpháp nào thường dưa trên lĩnh vưc mà nghiên cứu được thưc hiện Ví dụ, một nhànghiên cứu AI có lẽ yêu thích phương pháp thông tin cùng chung (mutualinformation), trong khi một số nhà nghiên cứu từ lĩnh vưc IR sẽ chọn phương phápF-measure Các phương pháp đánh giá sẽ được bàn luận tại đây
Có hai ý niệm trưc giác về hiệu năng của các thuật toán gom nhóm là độ chính xác
(precision) vàđộ triệu tập (recall).Trong lĩnh vưc IR, độ triệu tập được định nghĩa
như là tỉ lệ giữa các tài liệu văn bản có liên quan (đến phân nhóm được bổ
nhiệm)đã được truy xuấtra so với tất cả các tài liệu có liên quan hiện có tồn tại trong toàn bộ tập tài liệu được xét.Trong khi đó, độ chính xác là tỉ lệ giữa những tài liệu đã được truy xuất và có liên quan so với tất cả tài liệu đã được truy
xuất.Bởi vì rất tầm thường để có được độ triệu tập một cách hoàn hảo bằng cách
truy xuất toàn bộ tài liệu cho bất kỳ truy vấn nào, cho nên F-measure, một thước
đo thược kết hợp cả độ triệu tập và độ chính xác, được giới thiệu Ta quy ước R là
độ triệu tập, P là độ chính xác, thì công thức F-measure tổng quát được định nghĩanhư sau:
những biến thể tồn tại đánh trọng số chúng khác nhau, ví dụ như độ chính xác cao
Trang 8hơn hai lần so với độ triệu tập, hoặc ngược lại(chúng được gán nhãn lần lược là
F0.5, F2)
Để mở rộng công thức này cho quá trình gom nhóm dữ liệu, chúng ta giả địnhrằng có sư tồn tại của một tập các phân lớp tham khảo (được dư đoán trước), vàcác phân nhóm được tìm thấy (đầu ra của các thuật toán gom nhóm) được đối xửnhư các tài liệu được truy xuất từ các phân lớp này Thì công thức ở điều kiện nàynhư sau:
trong đó nlà tổng số tài liệu, và argmax là hàm tìm tham số j sao cho F đạt được
giá trị tối đa
Trong khi F-measure chỉ ra được chất lượng tổng quát của quá trình gom nhómtrong khuôn khổ hiệu suất truy vấn, nó không chỉ ra được sư cấu thành của bảnthân các nhóm Hai thước đo bổ sung là là độ thuần khiết (purity) của nhóm vàentropy Purity đo lấy phần trăm của các thành viên thuộc phân lớp nổi trội hơntrong trong một nhóm (lớn hơn thì tốt hơn), trong khi entropy tìm kiếm sư phânphối xác xuất của các tài liệu từ mỗi phân lớp liên quan trong mỗi nhóm (nhỏ hơn
là tốt hơn) Và chúng có công thức như sau:
Nếu số lượng phân nhóm bằng với số lượng của các thể loại tài liệu, và một sưtương ứng có thể thiết lập, thì các thước đo trên có thể được áp dụng với một vàithành công.Tuy nhiên, nếu có một sư không nhất quán giữa số lượng phân lớptham khảo và các phân nhóm được tìm ra bởi thuật toán, thì các chính xác này đôikhi không thật sư chỉ ra được chất lượng của các phân nhóm
Đã có những bằng chứng chỉ ra rằng trong những trường hợp này thông tin cùngchung (MI) là một thước đo ưu thế hơn so với độ thuần khiết hoặc entropy Trongthưc tế, MI được tối giản về các độ dài đơn vị (normalized MI –NMI) Theo định
Trang 9nghĩa, ta quy ước n h là số tài liệu trong phân lớp h, n l là số mẫu trong phân nhóm l,
NMI có giới hạn trong khoảng [0, 1], trong đó giá trị của số 1 đại diện sư so khớptuyệt đối giữa các phân nhóm và các phân lớp Nhắc lại, động lưc của NMI là nó
là một thước đo độ chính xác cho quá trình gom nhóm mà có thể chịu được sư bấtthống nhất giữa số lượng các phân nhóm tìm thấy và số lượng các phân lớp thamkhảo Có một số lượng đáng kể các bài viết về gom nhóm văn bản đều giả định
một số phân nhóm cho trước k, và vì thế trong những trường hợp này cách đo
truyền thống có thể được sử dụng
Một cách nhìn khác về chất lượng của một thuật toán gom nhóm là sư ổn định củacác phần phân chia nó tạo ra qua nhiều lần chạy.Một hướng tiếp cận nổi bật để đo
độ ổn định là tìm hiệu năng trung bình Trong thuật ngữ thông tin cùng cung (MI),kết quả tạo ra được gọi là ANMI (average normalized mutual information): cho là
một tập của r số lần gom nhóm, và là một lần chạy gom nhóm cụ thể, thì ANMI
được định nghĩa như:
Trong khi các ma trận nhầm lẫn ( confusion matrix) không xuất hiện thườngxuyên trong các bài viết về gom nhóm như các phương pháp khác miêu tả ở trên,nhưng chúng xuất hiện đủ để có một chú thích ngắn ở đây Một ma trận nhầm lẫn
là một công cụ biểu diễn trưc quan cung cấp một sư tổng hợp về lỗi phân nhóm tạobởi hệ thống
B220
Bảng 1: Một ma trận nhầm lẫn cho các phân lớp:
A (4 phần tử), B (4 phần tử), C (8 phần tử)
Bảng 1 có thể diễn giải như sau: thuật toán gom nhóm không thể phân biệt giữaphân nhóm A và phân nhóm B, nhưng phân biệt các đối tượng trong phân lớp Cmột cách hoàn hảo
Trang 10Tất cả phương pháp miêu tả ở trên đều được dùng cho loại phân nhóm tách biệt.Riêng đối với các thuật toán gom nhóm sử dụng logic mờ, một phương pháp thôngdụng để đánh giá đầu ra của một thuật toán gom nhóm mờ là sinh ra các phânnhóm tách biệt rõ ràng từ một kết quả đầu ra mờ ( quá trình này được gọi là quá
trình cứng hóa - hardeningcác phân nhóm), bằng cách đưa ra một giá trị ngưỡng
cho mưc độ thành viên của các tài liệu Có nghĩa là các tài liệu nào có mức độthành viên vượt một ngưỡng giá trị của một nhóm nào đó thì được coi thuộc phânnhóm đó, và nếu một tài liệu đều vượt ngưỡng của hai phân nhóm, thì nó sẽ thuộc
cả hai
4 Một số thuật toán tiêu biểu:
a) K- means và các mở rộng:
* Thuật toán k-means:
Trong lĩnh vưc khai phá dữ liệu, thuật toán gom nhóm k-means là một phương
pháp của phân tích nhóm.Mục tiêu của thuật toán là chia n đối tượng mục tiêu(được biểu diễn thành các điểmtrong không gian đa chiều) thành k nhóm, trong
đó mỗi đối tượng mục tiêu thuộc về nhóm cótrung điểm gần nó nhất.K-means làthuật toán tiêu biểu cho loại thuật toán gom nhóm tách biệt (discriminativealgorithms)
Phiên bản thông dụng nhất của k-means sử dụng một kỹ thuật tinh chỉnh tuầnhoàn.Vì sư tính phổ biến rộng của nó mà thuật ngữ k-means thường được liêntưởng đến phiên bản này, nhưng chính xác hơn thì đây là thuật toán Lloyd (mangtên của người phát minh), cái tên được giới khoa học máy tính nhắc đến thườngxuyên hơn.Chi tiết thuật toán này như sau:
hai bước sau:
- Bước gán nhóm: gán mỗi đối tượng mục tiêu vào nhóm có trung điểm gần nónhất
phân vào được hai nhóm khác nhau
- Bước tinh chỉnh: mỗi nhóm tính toán các trung điểm mới bằng trọng tâm đượctính từ các đối tượng mục tiêu được phân vào trong nhóm đó
Trang 11Thuật toán được cho rằng đã hội tụ và dừng lại một khi các sư phân bổ không cònthay đổi nữa.
* Các dạng mở rộng của k-means:
Trong lĩnh vưc gom nhóm văn bản, để phù hợp với kiểu dữ liệu đặc thù, thuật toánk-means truyền thống được biến đổi thành các dạng phù hợp hơn:
- Thuật toán k-means cầu (spherical k-means): đây là thuật toán tương tư với
thuật toán k-means truyền thống Khi sử dụng thuật toán này, dữ liệu văn bảnđược chuyển thành các vectơ đa chiều và được tối giản hóa.Thêm nữa, nó sử dụnghàm cosin thay vì khoảng cách Euclid để tìm tính tương đồng cho các đổi tượngcần phân nhóm
Mặc dù nó phổ biến, một phần do tính dễ cài đặt, nhưng k-means cầu có nhiềuđiểm hạn chế như: nó phụ thuộc phần lớn vào sư khởi tạo ngẫu nhiên các nhómmột cách chung chung; điều đó có thể dẫn đến thuật toán hội tụ về các điểm tối ưuđịa phương; các phân nhóm sẽ có thể chứa nhiều thành phần ngoại lại và nhiễu; và
độ phức tạp của nó là O(nkl), trong đó n là số lượng tài liệu văn bản trong tập dữ liệu, k là số nhóm mong muốn, và l là số vòng lặp Thuật toán nàythông thường
phù hợp áp dụng cho các tập dữ liệu văn bản lớn và ít thay đổi
- Thuật toán k-meanscầu trực tuyến (online spherical k-means): đây là thuật
tăng tốc quá trình gom nhóm trong khi vẫn đạt được độ chính xác tương tư hoặctốt hơn
Với khuôn mẫu học cạnh tranh trưc tuyến, các văn bản được truyền đến liêntục.Hoàn toàn trái ngược với một thuật toán chạy hoàn toàn trên một tập dữ liệumột lần như thuật toán k-means cầu.Khi các văn bản được đưa vào quá trình phânnhóm, các nhóm sẽ cạnh tranh để giành lấy dữ liệu đầu vào để được phân bổ chonhóm của mình Và nhóm chiến thắng sẽ tư điều chỉnh mình dưa vào một tỉ lệ họcnhất định để có thể phản ứng mạnh hơn cho các dữ liệu đầu vào tiếp theo.Thuậttoán này thường được áp dụng để phân nhóm bản sau khi được trả về từ một trìnhtìm kiếm, hoặc truy xuất thông tin (ví dụ Google)
- Thuật toán k-means nhân hay kernel kmeans:Hình 2 minh họa một tập dữ liệu
mà k-means không thể gom nhóm chính xác bởi vì các điểm không tách biệt một
Trang 12cách tuyến tính Ý tưởng đằng sau kernel kmeans là tìm một ánh xạ cho các điểmnày đến một không gian nhiều chiều hơn, nơi mà các dữ liệu văn bản có sư khácbiệt một cách tuyến tính.
Hình 2: (a) cho thấy một hình dạng phân bố dữ liệu không lồi mà thuật toán k-means gặp vấn đề khi gom nhóm Trong (b) là thuật toán kernel kmeans đã thành công phân biệt rõ hai nhóm như là kết quả của việc chiếu các vectơ văn bản lên một không gian có nhiều
chiều hơn.
b) Các thuật toán sản sinh (generative algorithm):
Trong nhóm này tiêu biểu có thuật toán c-meansmờ (fuzzy c-means), một thuật
toán rất nhạy cảm với các phần tử ngoại lai Trong các tập dữ liệu văn bản pha tạp,các phần tử ngoại lai này xuất hiện rất thường xuyên Do vậy, bằng cách tạo ra cácgiả định về sư phân phối xác xuất của dữ liệu, các phương pháp thống kê hiệu quảcao có thể được áp dụng để khám phá ra các nhóm cùng sư hiện diện của dữ liệunhiễu, đồng thời chấp nhận tính chất thành viên của một tài liệu văn bản trongnhiều phân nhóm khác nhau
Các phương pháp tách biệt dưa trên độ tương đồng tài liệu theo từng cặp theo định
tính trước và lưu trong một ma trận.Theo một cách khác, các mô hình sản sinh ởđây không cần những ma trận như vậy, mà sử dụng một thủ tục tuần hoàn lần lượtlặp giữa các bước ước lượng mô hình xác suất và gán văn bản
Trang 13Một vài thuật toán và mô hình xác xuất được sử dụng trong nhóm thuật toán sảnsinh như:
- Mô hình Gauss
- Thuật toán toán ưu hóa mong đợi (expectation maximization)
- Mô hình von Mises-Fisher
- Thuật toán k-means dưa trên mô hình xác suất (model-based kmeans)
c) Các thuật toán gom nhóm phổ (spectral clustering algorithms):
Một ma trận là một dạng biểu diễn tư nhiên cho thông tin liền kề giữa các đỉnh, và
do đó mô hình vectơ có thể được diễn dịch như là một đồ thị Gom nhóm phổ baohàm tìm các đường cắt trong đồ thị này để sinh ra các phân nhóm có chất lượngtốt
Bài toán này bây giờ trở thành đi tìm các đường cắt tốt trên đồ thị, kết quả tạo ramột số các hàm tiêu chuẩn (criterion function) mà các thuật toán gom nhóm phổhướng tới tối ưu Chúng bao gồm cắt tỉ lệ đa đường (multiway ration cut), cắt tốigiản (normalized cut), và cắt min-max Trên các đồ thị nơi mà các nhóm đượcphân biệt một cách tốt đẹp, thì tất cả kỹ thuật trên đều có xu hướng hiệu suất tương
tư nhau.Tuy nhiên, khi có một sư trùng lắp đáng kể giữa các nhóm, điều điển hìnhxảy ra với dữ liệu văn bản, thì các đường cắt min-max sẽ thưc hiện tốt hơn
Một số thuật toán tiêu biểu thuộc nhóm này như:
- Thuật toán chia nhỏ và gọp lại (divide and merge algorithm)
- Đồng gom nhóm mờ (fuzzy clustering)
Trang 14Phần 3: Demo Thực Hiện Gom Nhóm Văn Bản
Bằng Thuật Toán K-Means
1 Cụ thể thuật toán K-means
a) Phát biểu bài toán phân lớp với K-means:
Input
Số cụm: K
Output
Thuật toán hoạt động trên 1 tập vectơ d chiều, tập dữ liệu X gồm N phần tử:
K-Mean lặp lại nhiều lần quá trình:
- Gán dữ liệu
- Cập nhật lại vị trí trọng tâm
- Quá trình lặp dừng lại khi trọng tâm hội tụ và mỗi đối tượng là 1 bộ phận của 1cụm
cụm Cj
Hàm trên không âm, giảm khi có 1 sư thay đổi trong 1 trong 2 bước: gán dữ liệu
và định lại vị trí tâm
Thuật toán:
- Bước 1 - Khởi tạo