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

Khéo tay hay làm Khéo tay hay làm Khéo tay hay làmkl ha nhat minh

69 3 0

Đ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 69
Dung lượng 1,23 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục tiêu chính của đề tài là phát triển ứng dụng tự động gom cụm các xuất bản của cùng một tác giả ứng dụng cho cơ sở dữ liệu khoa học DBLP, tập trung vào việc xác định những thuộc tính

Trang 1

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THÔNG TIN & TOÁN ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP

Khoá: 12

TP Hồ Chí Minh năm 2012

Trang 2

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM

TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG KHOA CÔNG NGHỆ THÔNG TIN & TOÁN ỨNG DỤNG

LUẬN VĂN TỐT NGHIỆP

Khoá: 12

TP Hồ Chí Minh năm 2012

Trang 3

LỜI CẢM ƠN

Để hoàn thành luận văn tốt nghiệp này, chúng tôi xin gởi lời cảm ơn sâu sắc nhất đến Tiến sĩ Nguyễn Thanh Hiên đã dành rất nhiều thời gian và tâm huyết hướng dẫn nghiên cứu và động viên nhóm chúng tôi trong suốt thời gian nghiên cứu qua Chúng tôi tin rằng, bằng những lời lẽ thông thường sẽ không đủ để chuyển tải hết lòng biết ơn với những công sức và tâm huyết Thầy đã bỏ ra để giúp chúng tôi hoàn thành luận văn tốt nghiệp Dù vậy, chúng tôi cũng muốn viết ra đây, và gởi đến Thầy, lời cảm ơn chân thành nhất Chúng em cảm ơn thầy!

Bên cạnh đó, chúng tôi cũng rất cảm ơn những giảng viên trong Khoa công nghệ thông tin, Trường đại học Tôn Đức Thắng, đã tận tình giảng dạy và trang bị cho chúng tôi thật nhiều kiến thức bổ ích trong các năm học qua, góp phần rất lớn vào việc nghiên cứu luận văn tốt nghiệp này

Cuối cùng chúng tôi xin gởi lòng biết ơn sâu sắc đến người thân, bạn bè luôn bên cạnh động viên, hỗ trợ về mặt tinh thần để chúng tôi vượt qua khó khăn và hoàn thành luận văn tốt nghiệp

Mặc dù chúng tôi đã có nhiều cố gắng hoàn thiện luận văn bằng tất cả sự nhiệt tình và năng lực của bản than, tuy nhiên, không thể tránh khỏi những thiếu xót Chúng tôi mong nhận được những đóng góp quí báu của quý thầy cô và các bạn

TP Hồ Chí Minh, tháng 7 năm 2012 Nhóm sinh viên thực hiện

Hà Minh Nhật

Lâm Minh Khánh Hùng

Trang 4

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

Trang 5

NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN

Trang 6

có cấu trúc Con người mong muốn có những thông tin ở dạng thực thể, bản ghi hoặc những trích dẫn hơn là đọc lướt từng trang trên internet hoặc ngồi tìm từng trích dẫn trong cơ sở dữ liệu khoa học để tìm ra thông tin mình mong muốn

Một trong những đối tượng tìm kiếm được quan tâm nhất hiện nay là tìm kiếm

Con người Cụ thể là tìm kiếm thông tin của một người hoặc tìm kiếm những trích

dẫn của một tác giả mà họ quan tâm Tuy nhiên, khi thực hiện thu thập thông tin của một người hoặc muốn tìm kiếm tác giả nào đã xuất bản tác phẩm nào, chúng ta vấp phải thách thức là những người khác nhau có cùng tên, tên được viết tắt hoặc các thông tin lưu trữ vào cơ sở dữ liệu không đầy đủ dẫn đến việc tìm kiếm không theo

ý muốn

Vì vậy, đối với hệ thống cơ sở dữ liệu khoa học DBLP việc phân cụm những xuất bản hoặc những trích dẫn của cùng một tác giả có một ý nghĩa rất quan trọng Chính vì vậy mà chúng tôi đã chọn đề tài: “Phát triển hệ thống tự đồng gom cụm những xuất bản của cùng một tác giả”

Mục tiêu chính của đề tài là phát triển ứng dụng tự động gom cụm các xuất bản của cùng một tác giả ứng dụng cho cơ sở dữ liệu khoa học DBLP, tập trung vào việc xác định những thuộc tính nào để phân cụm cũng như tập trung giải quyết các vấn đề trong việc phân cụm trích dẫn trong các cơ sở dữ liệu lớn

Trang 7

MỤC LỤC

LỜI CẢM ƠN i

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ii

NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN iii

LỜI MỞ ĐẦU iv

MỤC LỤC v

DANH MỤC THUẬT NGỮ VIẾT TẮT xi

Chương 1: 1

TỔNG QUAN 1

1.1 Phát biểu vấn đề 1

1.1.1 Động cơ nghiên cứu 1

1.1.2 Mục đích của luận văn 2

1.1.3 Đối tượng của luận văn 2

1.2 Các công trình liên quan 2

1.2.1 CiteSeer 2

1.2.2 DBLP 3

1.2.3 ACM Portal 3

1.3 Phạm vi và nội dung nghiên cứu của luận văn 4

1.4 Kế hoạch thực hiện 5

1.5 Cấu trúc của luận văn 6

Chương 2: 7

CƠ SỞ KIẾN THỨC 7

2.1 Giới thiệu 7

2.2 Phương pháp học có giám sát và học không giám sát 8

2.3.1 Chuẩn đo 9

2.3.2 Đo khoảng cách giữa hai điểm dữ liệu 9

2.3.3 Đo khoảng cách giữa hai cụm 12

2.4 Các giải thuật phân cụm dữ liệu 13

2.4.1 Thuật toán phân cụm phân hoạch: K-means 13

2.4.2 Thuật toán phân cụm dựa vào mật độ: DBSCAN 15

Trang 8

2.4.3 Thuật toán phân cụm phân cấp – HAC 21

Chương 3: 26

PHÂN CỤM CÁC XUẤT BẢN 26

CỦA CÙNG MỘT TÁC GIẢ 26

3.1 Giới thiệu 26

3.2 Lựa chọn thuộc tính 27

3.3 Độ tương tự Cosine 27

3.4 Giải thuật phân cụm HAC 31

3.5 Kết luận 37

Chương 4: 39

PHẦN MỀM THỰC NGHIỆM 39

VÀ ĐÁNH GIÁ 39

4.1 Giới thiệu 39

4.2 Cấu trúc cơ sở dữ liệu 39

4.3 Chương trình thử nghiệm 41

4.4 Kết quả thực nghiêm 44

4.5 Kết luận 54

TÀI LIỆU THAM KHẢO 55

Trang 9

DANH MỤC CÁC BẢNG

Bảng 1.1: Kế hoạch thực hiện của luận văn 5

Bảng 3.1: Danh sách các từ có trong hai văn bản 28

Bảng 3.2: Ma trận khoảng cách của hai tài liệu văn bản 28

Bảng 3.3: Danh sách các từ có trong hai tên tác giả 29

Bảng 3.4: Ma trận khoảng cách của hai tên tác giả 29

Bảng 3.5: Ma trận khoảng cách của một danh sách tên có từ Ricardo 32

Bảng 3.6: Ma trận khoảng cách được cập nhật sau khi gom 5 cụm thành 4 cụm 34

Bảng 3.7: Ma trận khoảng cách cập nhật lại sau khi gom cụm 4 cụm thành 3 cụm 35

Bảng 3.8: Ma trận khoảng cách cập nhật lại sau khi đã gom 3 cụm thành 2 cụm 36

Bảng 4.1: Cấu trúc một bản ghi trong cơ sở dữ liệu khoa học DBLP 40

Bảng 4.2: Danh sách tên tác giả và độ tương tự 42

Bảng 4.3: Kết quả tính F-measure giữa gom cụm bằng tay và gom cụm bằng hệ thống 48

Bảng 4.4: Giao các tên giữa cụm 1 của hệ thống gom với tất cả các cụm gom bằng tay 49

Bảng 4.5: Giao các tên giữa cụm 2 của hệ thống gom với tất cả các cụm gom bằng tay 50

Bảng 4.6: Giao các tên giữa cụm 3 của hệ thống gom với tất cả các cụm gom bằng tay 50

Trang 10

Bảng 4.7: Giao các tên giữa cụm 4 của hệ thống gom với tất cả các cụm

Trang 11

DANH MỤC CÁC HÌNH

Hình 2.1: Vùng lân cận của p với ngưỡng Eps 15

Hình 2.2: Quan hệ tới được trực tiếp theo mật độ 16

Hình 2.3: Quan hệ tới được theo mật độ 17

Hình 2.4: Quan hệ kết nối theo mật độ 17

Hình 2.5: Đối tượng Nhiễu 18

Hình 2.6: Ví dụ về kỹ thuật phân cụm phân cấp 21

Hình 2.7: Ví dụ về phương pháp phân cụm bottom up và top-down 22

Hình 2.8: Đo khoảng cách giữa hai cụm với Single link 23

Hình 2.9: Đo khoảng cách giữa hai cụm với Complete link 23

Hình 2.10: Đo khoảng cách giữa hai cụm với Average link 24

Hình 3.1: Cây phân cụm ở mức 0 45

Hình 3.2: Cây phân cụm ở mức 1 34

Hình 3.3: Cây phân cụm ở mức 2 35

Hình 3.4: Cây phân cụm ở mức 3 36

Hình 3.5: Cây phân cụm ở mức 4 37

Hình 4.1: Giao diện của hệ thống 43

Hình 4.2: Quan hệ giữa hai cụm 44

Hình 4.3: Cây phân cụm được thực hiện bằng tay 47

Hình 4.4: Cây phân cụm được thực hiện bằng hệ thống 48

Trang 12

DANH MỤC CÁC GIẢI THUẬT

Giải thuật 2.1: Giải thuật phân cụm K-means 14 Giải thuật 2.2: Giải thuật phân cụm DBSCAN 20 Giải thuật 2.3: Giải thuật phân cụm HAC 22 Giải thuật 3.1: Giải thuật phân cụm HAC áp dụng cho phân cụm tên tác giả 32

Trang 13

DANH MỤC THUẬT NGỮ VIẾT

TẮT

Thuật

Project

Dự án tài liệu tham khảo và thư viện kỹ thuật số

Applications with Noise

Phân cụm không gian dựa vào mật độ áp dụng với nhiễu

Trang 14

Chương 1:

TỔNG QUAN

1.1 Phát biểu vấn đề

1.1.1 Động cơ nghiên cứu

Ngày nay, vấn đề truy tìm thông tin trên Internet hay trong các Thư viện kỹ thuật số đã được các nhà nghiên cứu đặc biệt quan tâm Dữ liệu trong thư viện số hay trên internet đang gia tăng rất nhanh Việc tìm kiếm những thông tin hữu ích và đúng yêu cầu ngày càng tăng và trở nên cấp thiết Hiện nay, trong Thư viện kỹ thuật

số hoặc Cơ sở dữ liệu khoa học số lượng ấn phẩm và số lượng tác giả tăng vọt, dữ liệu được lưu trữ có khả năng xảy ra một trong ba vấn đề sau:

Điều này có thể xảy ra do bốn vấn đề sau: do các tên tác giả hoặc tên đồng tác giả được viết tắt, do lỗi chính tả, do thay đổi tên sau khi kết hôn hoặc

do việc sử dụng bút danh Ví dụ, tác giả cuốn “Latent Dirichlet Allocation” xuất bản dưới tên “David Michel Blei” nhưng cũng tác giả đó xuất bản cuốn “Text Mining: Theory and Applications” dưới tên “Blei David Michel”

một tên có thể của nhiều người Điển hình với tên “George” có thể đây là tên của tổng thống thứ 43 của Hoa kỳ “George Walker Bush”, hoặc đây có thể là tên của tổng thống thứ 41 của Hoa kỳ “George H W Bush”, nhưng đây cũng có thể là tên của tổng thống đầu tiên của Hoa kỳ “George Washington”, hoặc đây cũng có thể là tên của một nhà nghiên cứu chuyên nghiên cứu về các phương pháp phân tích dữ liệu và vấn đề phân cụm –

“George Adam”

ghi trong cơ sở dữ liệu thường gồm có những thuộc tính như tên tác giả, tên đồng tác giả, tiêu đề, năm xuất bản, số trang, khối lượng xuất bản, số lượng xuất bản Tuy nhiên, có thể do nhân viên nhập liệu không nhập đầy

đủ tất cả những thông tin này mà bỏ xót một số thuộc tính Điển hình chỉ

Trang 15

nhập những thuộc tính bắt buộc như tên tác giả, tên đồng tác giả, tiêu đề, năm xuất bản mà không nhập những thông tin khác như khối lượng hay số lượng xuất bản, …

Để giải quyết những vấn đề này và giúp cho người tìm kiếm xác định được tác giả nào đã viết tác phẩm nào và ngược lại Chúng tôi đã chọn đề tài “Phát triển hệ thống tự động gom cụm các xuất bản của cùng một tác giả”, ứng dụng cho cơ sở dữ liệu khoa học DBLP Đây là chủ đề đã được nhiều nhà nghiên cứu quan tâm nhưng

họ vẫn chưa giải quyết triệt để Do đó, chúng tôi quyết định nghiên cứu chủ đề này

để giải quyết những vấn đề đang gặp phải trong cơ sở dữ liệu khoa học hiện nay

1.1.2 Mục đích của luận văn

Mục đích chính của luận văn là phát triển ứng dụng tự động gom cụm các xuất bản của cùng một tác giả ứng dụng cho cơ sở dữ liệu khoa học DBLP Để gom cụm đúng theo yêu cầu Trước tiên, phải lựa chọn chính xác các thuộc tính theo yêu cầu

để phân cụm trong cơ sở dữ liệu khoa học Tiếp theo, phải tính toán độ tương tự giữa các thuộc tính Và cuối cùng, gom các thuộc tính đã chọn vào thành một cụm

sử dụng giải thuật phân cụm HAC Giải thuật này thuộc lĩnh vực học tập không giám sát trong học máy và thường được sử dụng để phân cụm trong những cơ sở dữ liệu lớn

1.1.3 Đối tượng của luận văn

Khi người dùng có nhu cầu tìm kiếm những ấn phẩm hoặc những bài báo khoa học của một tác giả mà họ quan tâm trong cơ sở dữ liệu khoa học DBLP Người dùng chỉ cần nhập vào một tên bất kỳ mà họ muốn tìm Hệ thống sẽ tự động tính toán và tự động gom cụm những xuất bản của một tác giả nếu tác giả đó có trong hệ thống để giúp cho người dùng tìm kiếm thông tin dễ dàng Tuy nhiên, những tác giả cùng các tác phẩm trong cơ sở dữ liệu không được quản lý bằng một mã số duy nhất

mà được lưu trữ dưới dạng một Bản ghi, nên việc tính toán và gom cụm sẽ không chính xác tuyệt đối mà chỉ hiển thị kết quả tương đối

1.2 Các công trình liên quan

1.2.1 CiteSeer

Citeseer1 là một Công cụ tìm kiếm và là Thư viện kỹ thuật số để lưu trữ các sách, tạp chí, bài báo khoa học chủ yếu trong các lĩnh vực khoa học máy tính Đây

là hệ thống lập chỉ mục trích dẫn tự động đầu tiên Mục tiêu của CiteSeer là thu thập

dữ liệu khoa học trên các trang web công cộng và sử dụng một chỉ số trích dẫn để cho phép người dùng dễ dàng tìm kiếm được các trích dẫn chính xác của một tác giả Tuy nhiên, hệ thống này có một số hạn chế trong thiết kế kiến trúc nên đã được Tiến sĩ Isaac Councill và Tiến sĩ C Lee Giles của trường cao đẳng Thông tin khoa học và Công nghệ, Đại học bang Pennsylvania phát triển lên thành hệ thống CiteseerX

1

http://en.wikipedia.org/wiki/CiteSeer

Trang 16

CiteseerX2 tiếp tục hỗ trợ các mục tiêu vạch ra bởi Citeseer và cho phép người dùng tìm kiếm tài liệu hoặc tìm kiếm các tác phẩm của một tác giả nào đó có trong

hệ thống mà chỉ cần người dùng biết tên tác giả hoặc tên tác phẩm, hệ thống sẽ tự động gom cụm và hiển thị kết quả theo yêu cầu và còn hỗ trợ liên kết cho phép người dùng truy vấn thông tin họ muốn tìm kiếm trên các trang khác như Bing, Ask, CSB, Yahoo, Scholar, Libra Hiện nay, nó còn cung cấp thêm một tính năng nữa đó

là Bảng tìm kiếm, tính năng này cho phép người dùng biết được tài liệu họ muốn tìm kiếm nằm trong bảng nào Hiện tại, hệ thống này đã lưu trữ hơn 2 triệu tài liệu, gần 2 triệu tác giả và hơn 40 triệu trích dẫn

DBLP3 cũng là một hệ thống lưu trữ tài liệu về lĩnh vực khoa học máy tính của

trường đại học Trier, Đức Ban đầu nó là một hệ thống cơ sở dữ liệu và lập trình logic và đã tồn tại ít nhất từ những năm 1980 Hệ thống này chỉ lưu trữ những tài liệu đã được đăng trên các tạp chí khoa học quốc tế kèm theo những thông tin liên quan như thông tin về nhà xuất bản, thông tin về tạp chí, thông tin về hội nghị,…của bất kỳ nhà nghiên cứu của bất kỳ quốc gia nào Hiện nay, DBLP đã lập chỉ mục với hơn 2 triệu bài viết với gần 2 triệu tác giả và có nhiều liên kết tới trang chủ của các nhà khoa học máy tính

gồm có các thuộc tính như loại bản ghi, tên tác giả, tên đồng tác giả, tiêu đề, số lượng xuất bản, nhà xuất bản, số trang, các siêu liên kết, … Hệ thống này cho phép người dùng tìm kiếm những xuất bản của một tác giả khi biết tên của tác giả Người dùng chỉ cần nhập vào một tên hoặc một từ trong một tên họ quan tâm, hệ thống sẽ

tự động gom cụm tất cả những tên tác giả có từ hoặc có tên tương tự với tên người dùng nhập vào và hiển thị kết quả cho người dùng lựa chọn Và mỗi tên tác giả hiển thị sẽ được gom những xuất bản của tác giả đó một cách tự động và được sắp xếp giảm dần theo năm Hệ thống này còn hỗ trợ người dùng tìm kiếm tác phẩm của tác giả người dùng muốn tìm trên các trang lưu trữ dữ liệu hoặc trang tìm kiếm khác như CiteSeerX, Google Scholar, pobzone.org, Bip TeX

1.2.3 ACM Portal

gồm có hai thành phần chính đó là Thư viện kỹ thuật số ACM và trang Trích dẫn trực tuyến của tài liệu về ngành khoa học máy tính Trong đó, Thư viên kỹ thuật số ACM là một nguồn tài nguyên trực truyến rất hữu ích cho những người quan tâm đến ngành khoa học máy tính và chúng còn phục vụ cho các thành viên của hiệp hội hay những nhà nghiên cứu máy tính có được các ấn phẩm, các bài báo khoa học Còn Trang trích dẫn trực tuyến dùng để cung cấp các quyền truy cập đến một ngân hàng trích dẫn khoảng lồ mà các trích dẫn này có thể có hoặc không có trong ACM

Trang 17

Thư viện kỹ thuật số ACM là kho lưu trữ các trích dẫn và các văn bản đầy đủ của các tạp chí, bản tin và hội nghị ACM, hoặc các tài liệu của các nhà xuất bản khác mà ACM đã thỏa thuận và hợp tác Thành viên của thư viện kỹ thuật số ACM

có thể truy cập vào trang www.computingreviews.com, đây là trang dịch vụ đánh giá trực tuyến hàng đầu cho sách và bài viết trên tất cả các lĩnh vực của khoa học máy tính Thư viện kỹ thuật số này còn lưu trữ tất cả các văn bản của hội nghị, các

ấn phẩm khoa học được xuất bản trước những năm 1950, hơn 50 000 thư mục trích dẫn và hơn 1 000 trang văn bản

Còn trang Trích dẫn trực tuyến thì cung cấp các quyền truy cập đến một ngân hàng khổng lồ với hơn 750.000 thư mục trích dẫn không có trong thư viện ACM Bao gồm các tạp chí, sách, bài báo và luận án của các công trình khoa học máy tính Trang trích dẫn này khác với thư viện kỹ thuật số ở chỗ: Thư viện kỹ thuật số là kho lưu trữ văn bản đầy đủ của những giấy tờ được xuất bản bởi ACM, trong khi trang trích dẫn là một bộ sưu tập các trích dẫn và những bản tóm tắt của các công trình được xuất bản bởi ACM hoặc các nhà xuất bản khác mà có thỏa thuận hoặc hợp tác với ACM

1.3 Phạm vi và nội dung nghiên cứu của luận văn

Phân cụm dữ liệu là một đề tài rất thực tế đã được nhiều nhà nghiên cứu quan tâm trong lĩnh vực khai phá dữ liệu và học máy Trong khuôn khổ luận văn này, chúng tôi nghiên cứu vấn đề phân cụm dữ liệu để phát triển hệ thống tự động gom cụm những xuất bản của cùng một tác giả ứng dụng trong cơ sở dữ liệu khoa học DBLP Nội dung nghiên cứu của chúng tôi có thể được chia thành các nội dung sau:

được nhiều nhà nghiên cứu quan tâm và đã được ứng dụng trong nhiều lĩnh vực Tuy nhiên, tùy từng nhà nghiên cứu hoặc tùy vào từng ứng dụng

mà lựa chọn những thuộc tính để phân cụm cho phù hợp

 Tìm hiểu cách tính toán độ tương tự giữa các thuộc tính Hiện nay có nhiều cách để tính toán độ tương tự giữa các thuộc tính nhưng tùy vào từng kiểu dữ liệu của thuộc tính mà chọn cách tính độ tương tự cho phù hợp và mang lại hiệu quả

phân cụm nhưng chúng tôi chỉ tìm hiểu và so sánh ba giải thuật điển hình: giải thuật K-means, giải thuật DBSCAN, giải thuật HAC Ba giải thuật này phổ biến và áp dụng được cho nhiều loại dữ liệu

gom những xuất bản của một tác giả vào thành một cụm mà còn gom những tên tác giả có độ tương tự cao vào thành một cụm vì hai tên có độ tương tự cao rất có khả năng là cùng một người) theo kỹ thuật phân cụm HAC

Trang 18

 Viết chương trình thực nghiệm và thực hiện việc đánh giá kết quả theo yêu cầu của luận văn Việc đánh giá này giúp cho biết được chất lượng gom cụm của chương trình đạt đến mức nào để có thể tiếp tục nâng cấp trong tương lai

1.4 Kế hoạch thực hiện

Bảng 1.1: Kế hoạch thực hiện của luận văn

GIAN

1

1

Tìm hiểu về cơ sở dữ liệu DBLP Cách khai thác

dữ liệu trong DBLP bằng Proximity Cấu trúc file XML DTD, Tìm hiểu về phân cụm dữ liệu và viết đề cương luận văn

19/3-9/4

2

3

2

phương pháp học không giám sát Tìm hiểu về những độ tương tự cho dữ liệu văn bản như Cosine, Jaccard

10/4-16/4

5

3

Cosine để tìm kiếm những tác giả mà có độ tương tự lớn hơn một ngưỡng tùy chọn

Tìm hiểu những giải thuật phân cụm như means, DBSCAN, HAC Nêu được ưu, nhược điểm của những giải thuật trên và viết báo cáo giữa kỳ

12

Trang 19

1.5 Cấu trúc của luận văn

Mục tiêu của chương này là phát biểu vấn đề nghiên cứu, trong đó chúng tôi giới thiệu động cơ nghiên cứu, phát biểu khái quát mục tiêu và đối tượng nghiên cứu của luận văn, trình bày những công trình liên quan, phạm vi, nội dung nghiên cứu và kế hoạch thực hiện của luận văn, các chương còn lại được tổ chức như sau

Chương 2 – Cơ sở kiến thức

Chương này trình bày kiến thức nền tảng được sử dụng trong luận văn Trước tiên, chúng tôi trình bày khái quát về phương pháp học có giám sát và phương pháp học không giảm sát vì hai phương pháp này liên quan đến vấn đề phân cụm dữ liệu

và mục tiêu của luận văn Sau đó, chúng tôi sẽ trình bày một số độ đo khoảng cách hiện nay được nhiều nhà nghiên cứu áp dụng để tính độ tương tự của dữ liệu và cuối cùng chúng tôi sẽ giới thiệu một số giải thuật phân cụm điển hình để có thể cung cấp thêm một số kiến thức để xây dựng ứng dụng thực nghiệm cho luận văn này

Chương 3 – Phân cụm các xuất bản của cùng một tác giả

Chương này giới thiệu quá trình phân cụm các xuất bản của cùng một tác giả dựa trên quá trình phân cụm dữ liệu hiện nay Đầu tiên, chúng tôi giới thiệu về việc lựa chọn thuộc tính và chúng tôi đã chọn thuộc tính tên để phân cụm Sau đó, chúng tôi tính toán độ tương tự giữa các tên để xác định những cặp tên tương tự để tạo ra một danh sách các tên mà có độ tương tự với tên nhập vào lớn hơn một ngưỡng, ngưỡng này được chúng tôi tính toán bằng tay Và cuối cùng, chúng tôi chọn giải thuật gom cụm HAC để gom cụm những tên tác giả và tác phẩm theo yêu cầu của luận văn

Chương 4 – Phần mềm thực nghiệm và đánh giá kết quả

Chương này chúng tôi giới thiệu cấu trúc dữ liệu của cơ sở dữ liệu khoa học DBLP Tiếp theo, giới thiệu về phần mềm thực nghiệm Và cuối cùng, chúng tôi trình bày kết quả thực nghiệm và đánh giá chất lượng việc gom cụm của hệ thống

Trang 20

Chương 2:

CƠ SỞ KIẾN THỨC

2.1 Giới thiệu

Chúng tôi đang quan tâm đến việc giải quyết bài toán về phân cụm dữ liệu, cụ

thể hơn là gom cụm những xuất bản của cùng một tác giả ứng dụng trong cơ sở dữ liệu khoa học DBLP Trước đây, đã có nhiều công trình nghiên cứu về vấn đề phân cụm dữ liệu, điển hình như: phân cụm dữ liệu văn bản hay phân cụm trang web Những công trình này đã được nhiều nhà nghiên cứu giải quyết và nghiên cứu thông qua các kỹ thuật học máy hay lĩnh vực khai phá dữ liệu Kỹ thuật này tạo ra các chương trình máy tính bằng việc phân tích những tập dữ liệu

Nhiệm vụ phân cụm dữ liệu này được tiến hành thủ công Đầu tiên, người thực hiện sẽ phân tích các nội dung của dữ liệu, tiếp theo gán tài liệu với một lớp thích hợp, gọi là gán nhãn dữ liệu và sau đó sử dụng một mô hình dự đoán để đưa ra kết qua tương ứng Các kỹ thuật này thường dựa vào một bộ dữ liệu huấn luyện Do đó, chất lượng của các cụm muốn cao thì phải phụ thuộc vào các bộ dữ liệu huấn luyện phù hợp Tuy nhiên, trong DBLP có rất nhiều dữ liệu và các trích dẫn được tạo ra hằng ngày, các dữ liệu không được quản lý bằng mã số duy nhất Do đó, không thể

có các chuyên gia ngày nào cũng định nghĩa ra bộ dữ liệu huấn luyện mới để gán cho từng dữ liệu theo cách này

Để giải quyết vấn đề trên, các kỹ thuật phân cụm đã được sử dụng, sự thu hút của phân tích cụm là việc nó có thể tìm thấy các cụm trực tiếp từ dữ liệu đưa vào

mà không cần như các bộ dữ liệu huấn luyện Nghĩa là, từ một tên tác giả có thể tìm thấy được tất cả những tên tương tự tên tác giả muốn tìm và tìm được tất cả những tác phẩm của tất cả những tác giả đó mà không cần biết trong cơ sở dữ liệu có bao nhiêu tên tác giả

Trong chương này, chúng tôi trình bày những kiến thức cơ bản được sử dụng trong khuôn khổ luận văn Phần 2.2 trình bày khái niệm về phương pháp học có giám sát và phương pháp học không giám sát Phần 2.3 trình bày những độ đo khoảng cách Phần 2.4 sẽ trình bày một số giải thuật phân cụm dữ liệu điển hình và cuối cùng Phần 2.5 tóm lược những vấn đề đã trình bày trong chương này Sau đây, chúng tôi sẽ đi vào chi tiết nội dung của từng phần

Trang 21

2.2 Phương pháp học có giám sát và phương pháp học không giám sát

Hiện nay có rất nhiều kỹ thuật dùng để phân cụm dữ liệu tự động có thể được

áp dụng hiệu quả trong các tập dữ liệu quy mô lớn Hai cách tiếp cận thông thường dựa trên những loại kiến thức của học máy đó là: phương pháp học có giám sát [2,

4, 8] và phương pháp học không giám sát [2, 3, 5, 6, 8, 9, 10] Hai phương pháp này

có hai qui trình thực hiện và mục tiêu khác nhau nhưng lại có điểm chung là để gom cụm dữ liệu

trong tập dữ liệu huấn luyện đều được gán nhãn với kết quả chính xác (chẳng hạn

,

là quá trình phân chia một tập dữ liệu thành các cụm dữ liệu tương tự nhau mà chưa biết trước các tập dữ liệu huấn luyện và các dữ liệu trong tập này đều không được gán nhãn Do đó, nhiệm vụ trong việc học này là khó khăn hơn

nghĩa là khi đưa vào một dữ liệu bất kỳ, dựa vào việc gán nhãn dữ liệu và tập dữ liệu huấn luyện, nó sẽ dự đoán đầu ra tương ứng Còn mục tiêu của việc học không giám sát6 dùng để tìm ra một mô hình phân cụm phù hợp với các kiểu dữ liệu Trong cơ sở dữ liệu khoa học, phân cụm là việc gom cụm các bản ghi lại với nhau dựa trên một số đặc điểm giống nhau của chúng và mỗi cụm tương ứng với một tên tác giả mà chưa biết trước được dữ liệu đầu vào và tất cả các bản ghi trong cơ sở dữ liệu đều không được gán nhãn

Nói chung, phương pháp học có giám sát mang lại kết quả tốt hơn phương pháp học không giám sát Bởi vì trong học có giám sát, các dữ liệu trong tập dữ liệu huấn luyện đều được gán nhãn, do đó, với một giá trị đầu vào nó sẽ dự đoán chính xác dữ liệu đầu ra Tuy nhiên, phương pháp này không phù hợp với các cơ sở dữ liệu lớn vì thông thường dữ liệu trong đó không được gán nhãn, do đó, khó có thể

dự đoán được đầu ra Còn học không giám sát thì độ chính xác trong phân cụm không đạt giá trị cao như học có giám sát vì dữ liệu đầu vào của nó là một biến ngẫu nhiên hoặc một tên tác giả không biết trước Tuy nhiên, phương pháp này được áp dùng cho cơ sở dữ liệu lớn vì dữ liệu đầu vào không cần biết trước

Trong khuôn khổ luận văn này, chúng tôi phát triển hệ thống tự động gom cụm các xuất bản của một tác giả ứng dụng trong cơ sở dữ liệu khoa học DBLP Đây là một vấn đề gom cụm dữ liệu trong một cơ sở dữ liệu lớn, mà tất cả các bản ghi trong nó đều không được gán nhãn Do đó, chúng tôi nghiên cứu kỹ thuật phân cụm thuộc phương pháp học không giám sát để giải quyết bài toán phân cụm trong luận văn Tiếp theo, chúng tôi sẽ trình bày một số độ đo khoảng cách để có thêm kiến thức về từng độ đo và để quyết định xem nên lựa chọn độ đo nào thích hợp cho khuôn khổ luận văn này

Trang 22

2.3 Độ đo khoảng cách

Độ đo khoảng cách là một vấn đề quan trọng trong phân cụm dữ liệu [1] Hiện nay có rất nhiều độ đo được sử dụng để phân cụm Tuy nhiên, trong nhiều trường hợp, lựa chọn sai độ đo có thể ảnh hưởng phần lớn đến kết quả của phân cụm Sự tương tự giữa hai đối tượng được định nghĩa như một độ đo mức độ mà hai đối tượng là như nhau Có hai vấn đề chính liên quan đến vấn đề này là: (a) Làm thế nào để đo khoảng cách giữa hai điểm dữ liệu, và (b) làm thế nào để đo khoảng cách giữa hai cụm

2.3.1 Chuẩn đo

Không phải mọi độ đo khoảng cách đều là chuẩn đo Chuẩn đo là một tiêu chuẩn được con người đặt ra để dựa vào đó mà đánh giá độ đo nào đủ tiêu chuẩn để được đưa vào áp dụng trong phân cụm dữ liệu [18] Giả sử cho x và y là hai đối tượng bất kỳ và d(x,y) là khoảng cách giữa x và y Để hội đủ điều kiện là một độ đo, thì độ đo d phải đáp ứng bốn điều kiện sau:

 Khoảng cách giữa hai điểm bất kỳ phải là không âm Nghĩa là d(x,y) >= 0

tượng giống hệt nhau, đó là, d (x, y) = 0 khi và chỉ khi x = y

 Khoảng cách phải là đối xứng, có nghĩa là, khoảng cách từ x đến y là tương tự như khoảng cách từ y để x, tức là d (x, y) = d (y, x)

d (x, z) ≤ d (x, y) + d (y, z)

2.3.2 Đo khoảng cách giữa hai điểm dữ liệu

Trong các thư viện kỹ thuật số hoặc cơ sở dữ liệu khoa học DBLP, các thuộc tính trong mỗi bản ghi của tác giả thường được lưu trữ dưới dạng chuỗi, thường chỉ

có thuộc tính năm xuất bản, khối lượng hay số lượng xuất bản thì lưu trữ dưới dạng

số Trong khuôn khổ của chương cơ sở kiến thức này, chúng tôi muốn trình bày những độ đo khác nhau có thể áp dụng cho những kiểu dữ liệu khác nhau để người đọc có thể có một cái nhìn tổng quan về từng loại độ đo hoặc giúp họ làm tài liệu tham khảo cho những ứng dụng khác Sau đây, chúng tôi sẽ trình bày chi tiết một số

độ đo cụ thể để tính toán khoảng cách giữa các thuộc tính trong một bản ghi

Khoảng cách chỉnh sửa chuỗi

Khoảng cách chỉnh sửa chuỗi được sử dụng rộng rãi trong nhiều ứng dụng, đặc biệt là trong tích hợp dữ liệu, nó là giá trị nhỏ nhất của việc thêm vào, xóa và

thay thế cần thiết để chuyển đổi chuỗi này thành chuỗi khác [18] Giả sử D(s, t, i, j)

là khoảng cách chỉnh sửa giữa hai chuỗi s[1 i] và t[1 j] Chúng tôi ký hiệu s i là kí

tự thứ i của s và t j là kí tự thứ j của t Khoảng cách D(s,t,i,j) được xác định đệ qui, trong đó D(s,t,0,0) = 0 và

Trang 23

( )

{

( ) ( ) ( )

(2.1)

Sau đây là ví dụ về chỉnh sửa khoảng cách giữa hai chuỗi s = “Willlaim” và chuỗi t = “William” bằng các thao tác chỉnh sửa như sau:

Copy chữ cái tiếp theo trong s vào vị trí tiếp theo trong t

Chèn thêm chữ cái tiếp theo trong t mà không xuất hiện trong s

Thay thế chữ cái khác trong t cho chữ cái tiếp theo trong s

Xóa chữ cái tiếp theo trong s, có nghĩa là không copy nó vào t

Tuy nhiên, khoảng cách chỉnh sửa có thể không nhận ra được tên một người

mà được viết theo hai kiểu khác nhau (ví dụ, “Hà Minh Nhật” với “Minh Nhật Hà”) Để xử lý vấn đề này, khoảng cách giữa các hoán vị khác nhau của một tên tác giả được tính toán và giá trị tối thiểu được trả lại Một giải pháp khác là sử dụng N-gram, tức là, tính toán có bao nhiêu ký tự lặp lại liên tục ở hai tên tác giả Ngoài ra,

có thể xác định sự giống nhau giữa hai tên tác giả bằng các giải pháp của độ đo tương tự Tiếp theo đây, chúng tôi sẽ trình bày các giải pháp của độ đo tương tự cho

dữ liệu ở dạng văn bản

Độ tương tự cho dữ liệu văn bản

Trước khi phân cụm, độ đo tương tự hoặc độ đo khoảng cách phải được xác định trước Độ đo này phản ánh mức độ gần gũi, hay tách rời của các đối tượng mục tiêu và phải tương ứng với các đặc điểm được cho là để phân biệt các cụm trong các

dữ liệu [1], [11] Trong nhiều trường hợp, những đặc điểm này phụ thuộc vào dữ liệu hoặc phụ thuộc vào bối cảnh của vấn đề, và không có độ đo nào là tốt nhất cho tất cả các loại của vấn đề phân cụm

Hơn nữa, lựa chọn một độ tương tự thích hợp cũng rất quan trọng trong phân tích cụm, đặc biệt đối với những thuật toán phân cụm cụ thể Ví dụ, thuật toán phân cụm dựa trên mật độ, như DBSCAN, chúng dựa rất nhiều vào việc tính toán độ tương tự thuật toán này cho thấy các cụm như các khu vực dày đặc trong những bộ

dữ liệu, và mật độ của một điểm cho trước của một đối tượng lần lượt ước tính với các phần tử của đối tượng lân cận, giá trị này được xác định là độ đo tương tự của chúng Vì vậy, hiểu biết hiệu quả những độ đo khác nhau là rất quan trọng trong việc lựa chọn độ đo nào là tốt nhất cho từng trường hợp

Nói chung, độ đo tương tự giữa hai đối tượng là một giá trị số, mà giá trị số này phụ thuộc vào yếu tố của các thuộc tính của hai đối tượng và các độ đo của chính nó Việc tính toán độ tương tự giữa hai đối tượng với đối tượng là tài liệu văn

Trang 24

bản, thì thường sử dụng độ tương tự Euclidean, Cosine, Jaccard là phù hợp Sau đây, chúng tôi sẽ trình bày chi tiết những độ đo tương tự này để giúp người đọc có thêm một số kiến thức cơ bản về độ đo và giúp cho chúng tôi lựa chọn độ đo thích hợp cho khuôn khổ luận văn này

Khoảng cách Euclidean

Khoảng cách Euclidean là một độ đo tiêu chuẩn cho các vấn đề hình học

Đó là khoảng cách giữa hai điểm thông thường và có thể được đo một cách dễ dàng với một độ đo trong không gian hai hoặc ba chiều Khoảng cách Euclidean đáp ứng tất cả bốn điều kiện trên và do đó là một độ đo thực sự

Khoảng cách Euclidean giữa hai tài liệu r i và r j được biểu diễn trong không gian là vector từ ⃗⃗⃗ , ⃗⃗⃗ được tính toán bằng:

( ⃗⃗⃗ ⃗⃗⃗ ) √(∑ | | )

Trong đó, chúng tôi sử dụng giá trị tfidf như là trọng số từ, đó là

( ) Tần số trọng lượng tfidf của một từ t trong một tài liệu d được

Mỗi tài liệu r m được biểu diễn là một vector từ ⃗⃗⃗⃗ trong không gian Độ

tương tự cosine giữa hai tài liệu r i và r j được tính toán bằng:

( ) ⃗⃗ ⃗⃗

⃗⃗ | ⃗⃗ |

Trong đó, w ti , w tj là trọng số của từ t trong vector r i , r j ; V là từ mà chứa

tất cả những từ trong tài liệu √∑ , √∑ là độ lớn của w ti , w tj

Nếu độ tương tự cosine là 1, góc giữa r i , r j là 0o, tức là, hai tài liệu giống

nhau hoàn toàn Ngược lại, nếu độ tương tự cosine là 0, thì góc giữa r i và r j

90o, nghĩa là hai tài liệu không tương tự nhau

Trang 25

Hệ số Jaccard

Hệ số Jaccard hoặc chỉ số Jaccard là một độ đo tương tự thường được dùng để so sánh sự giống nhau và sự đa dạng giữa hai tài liệu Hệ số Jaccard

so sánh tổng trọng số từ của những từ chung với tổng trọng số của những từ

mà có mặt ở một trong hai tài liệu nhưng không có trong những từ chung [1]

Hệ số Jaccard giữa hai tài liệu r i , r j được tính bằng kích thước của việc giao giữa hai tài liệu chia cho kính thước hội của hai tài liệu

( ) | |

Khoảng cách Jaccard là bổ sung cho hệ số Jaccard Nó được tính bằng cách lấy 1 trừ đi hệ số Jaccard:

( ) ( ) | |

| |Trong trường hợp hai đối tượng có n thuộc tính ở dạng nhị phân, nghĩa là mỗi thuộc tính có thể có giá trị là 0 hoặc 1 thì hệ số Jaccard8 được tính như sau:

( )

Trong đó, f11 đại diện cho tổng số các thuộc tính có giá trị là 1 trong cả hai đối tượng; f01 đại diện cho tổng số các thuộc tính trong đó thuộc tính của đối tượng thứ nhất có giá trị là 0 và thuộc tính của đối tượng thứ hai có giá trị

là 1; f10 đại diện cho tổng số các thuộc tính trong đó thuộc tính của đối tượng thứ nhất có giá trị là 1 và thuộc tính của đối tượng thứ hai có giá trị là 0; f00 đại diện cho tổng số các thuộc tính có giá trị là 0 trong cả hai đối tượng Trong đó,

f 11 + f 10 + f 01 + f 00 = n

2.3.3 Đo khoảng cách giữa hai cụm

Trong phân cụm dữ liệu, sau khi đã sử dụng các độ đo khoảng cách hoặc độ tương tự giữa các đối tượng để tạo thành cụm có các đối tượng tương tự nhau, còn các đối tượng không tương tự nhau được gom vào thành cụm khác [1, 15] Một vấn

đề tiếp theo quan trọng không kém đó là vấn đề làm thế nào để đo khoảng giữa hai cụm dữ liệu Việc đo khoảng cách giữa hai cụm dữ liệu còn tùy thuộc vào từng giải thuật phân cụm Đối với giải thuật phân cụm HAC thì độ đo khoảng cách giữa hai cụm là một vấn đề không thể thiếu bởi vì chúng là một bước quan trọng của giải thuật

Trang 26

Tiếp theo đây, chúng tôi sẽ giới thiệu về phân cụm dữ liệu, trình bày mục đích của phân cụm và trình bày chi tiết ba giải thuật phân cụm dữ liệu điển hình đã được rất nhiều nhà nghiên cứu áp dụng cho nhiều đề tài, để có thêm một số kiến thức về phân cụm dữ liệu và để quyết định xem nên lựa chọn giải thuật phân cụm dữ liệu nào cho phù hợp với khuôn khổ luận văn này

2.4 Các giải thuật phân cụm dữ liệu

Phân cụm dữ liệu9 là một kỹ thuật quan trọng trong nhiều lĩnh vực, đặc biệt là trong khai phá dữ liệu Nó thuộc lĩnh vực học không giám sát trong học máy Có rất nhiều định nghĩa khác nhau về kỹ thuật này, nhưng thực ra bản chất của phân cụm

dữ liệu là 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 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, 15]

Mục đích của phân cụm9 là tìm ra bản chất bên trong của các cụm của dữ liệu Hiện nay, có rất nhiều thuật toán phân cụm và các thuật toán này đều sinh ra các cụm Tuy nhiên, không có tiêu chí nào được xem là tốt nhất để đánh giá hiệu quả của phân cụm, điều này thường tùy vào từng mục đích phân cụm của từng ứng dụng Sau đây, chúng tôi sẽ trình bày ba thuật toán phân cụm điển hình để quyết định xem nên lựa chọn thuật toán nào để phân cụm trong khuôn khổ luận văn này

2.4.1 Thuật toán phân cụm phân hoạch: K-means

tưởng chính của thuật toán là tìm cách phân nhóm các đối tượng đã cho vào K cụm (K là số cụm được xác định trước) sao cho tổng bình phương khoảng cách giữa các

đối tượng đến tâm cụm là nhỏ nhất

Mục đích của thuật toán K-means là sinh K cụm dữ liệu từ một tập dữ liệu chứa n đối tượng trong không gian d chiều X i = { x i1 , x i2 , … ,x id }, i = 1/n, sao cho

hàm tiêu chuẩn ∑ ∑ ( ) đạt giá trị tối thiểu, trong đó: m i

vào của thuật toán là số cụm K và tham số đầu ra của thuật toán là các trọng tâm của

Trang 27

Giải thuật 2.1: Giải thuật phân cụm K-means 10

Đầu vào: Tập các đối tượng và số cụm K

Đầu ra: Các cụm trọng tâm

Bước 1: Chọn ngẫu nhiên K trọng tâm cho K cụm Mỗi cụm đại diện bằng các trọng

tâm của cụm

Bước 2: Tính khoảng cách giữa các đối tượng đến trọng tâm K (thường dùng

khoảng cách Euclidean)

Bước 3: Gom các đối tượng vào cụm gần nhất

Bước 4: Cập nhật lại trong tâm K cho các cụm

Bước 5: Thực hiện lại bước 2, 3, 4 đến khi không có sự thay đổi trọng tâm của cụm

Trong kỹ thuật phân cụm K-means, đầu tiên chọn một giá trị K và chọn ngẫu nhiên K trọng tâm của đối tượng dữ liệu Sau đó, tính toán khoảng cách giữa đối

tượng dữ liệu đến trọng tâm ở mỗi cụm để tìm kiếm phần tử nào là tương tự và thêm vào cụm đó Từ khoảng cách này có thể tính toán khoảng cách mới của cụm

và lặp lại quá trình này cho đến khi mỗi đối tượng là một bộ phận của cụm K

Trong tâm của cụm là một vector, trong đó giá trị của mỗi đối tượng là trung bình cộng của các thành phần tương ứng của các đối tượng vector dữ liệu trong cụm đang xét Độ đo khoảng cách giữa các đối tượng thường được sử dụng là độ đo khoảng cách Euclidean vì đây là độ đo này dễ xác định và dễ xác định được giá trị nhỏ nhất Tuy nhiên, có thể sử dụng hàm tiêu chuẩn và độ đo khoảng cách khác bởi

vì còn tùy thuộc vào từng ứng dụng hoặc quan điểm khác nhau của người sử dùng Hiện nay, chưa có một thuật toán nào là hoàn hảo cho mọi ứng dụng Một thuật toán chỉ phù hợp cho một hoặc một vài lĩnh vực và áp dụng được cho một số bài toán Do đó, thuật toán nào cũng đều có ưu điểm và hạn chế Sau đây, chúng tôi

sẽ trình bày một số ưu điểm và hạn chế của thuật toán K-means

Ưu điểm

với những dữ liệu mới Các bước của thuật toán là hữu hạn và sau khi lặp được hữu

hạn bước thì sẽ đảm bảo sẽ luôn tìm được K cụm và trong một cụm luôn có ít nhất

một đối tượng Các đối tượng trong một cụm là tương tự nhau trong cụm đó, phi tương tự trong cụm khác, không bị chồng chéo lên nhau và chúng không phân cấp

Hạn chế

dạng phức tạp và gặp khó khăn trong việc xác định các trọng tâm cụm ban đầu các

Trang 28

trọng tâm cụm lúc khởi tạo được chọn ngẫu nhiên không theo một quy tắc hay một chuẩn nào, và việc gom các đối tượng lại thành một cụm phụ thuộc rất nhiều vào việc khởi tạo các vector trọng tâm cụm Ngoài ra, thuật toàn này rất nhạy với dữ liệu nhiễu và các đối tượng không rõ ràng bởi vì những đối tượng này khó có thể xác định chính xác thuộc cụm nào và cuối cùng thuật toán này khó có thể chọn ra được số lượng cụm tối ưu ngay từ đầu mà phải thực hiện qua nhiều lần lặp

2.4.2 Thuật toán phân cụm dựa vào mật độ: DBSCAN

Thuật toán phân cụm dựa vào mật độ thông dụng nhất là thuật toán

hiểu quả đối với các cơ sở dữ liệu lớn và có khả năng xử lý nhiễu Ý tưởng của thuật toán [16] là vùng lân cận mỗi đối tượng trong một cụm có số đối tượng lớn hơn ngưỡng tối thiểu Hình dạng của vùng lân cận phụ thuộc vào hàm khoảng cách giữa các đối tượng (nếu sử dụng khoảng cách Manhattan trong không gian 2 chiều vùng lân cận có hình chữ nhật, nếu sử dụng khoảng cách Euclidean trong không gian 2 chiều thì vùng lân cận có hình tròn)

Một cụm được xác định là một tập con của các đối tượng mà tập con này thỏa mãn là tập tất cả các đối tượng kết nối theo mật độ với các vùng lân cận của nó [16] Các đối tượng trong mỗi cụm được phân ra làm 2 loại: đối tượng bên trong cụm (đối tượng nhân) và đối tượng nằm trên đường biên của cụm (đối tượng biên) Thuật toán DBSCAN có thể áp dụng cho các tập dữ liệu không gian đa chiều Trước khi đi vào nghiên cứu thuật toán, chúng tôi sẽ trình bày một số định nghĩa và bổ đề

để làm cơ sở lý thuyết cho thuật toán

Định nghĩa 1

Vùng lân cận Eps của đối tượng p, ký hiệu N Eps (p) [16] là tập hợp các đối

tượng sao cho khoảng cách giữa p và q nhỏ hơn Eps Định nghĩa này được mô tả như sau: N Eps (p) = {q D | Dist(p,q) ≤ Eps}, trong đó D là tập dữ liệu cho trước

Hình 2.1: Vùng lân cận của p với ngưỡng Eps [16]

Trang 29

Một đối tượng p muốn nằm trong một cụm C nào đó thì N Eps (p) phải có tối

thiểu MinPts đối tượng

Theo định nghĩa trên, chỉ những đối tượng thực sự nằm trong cụm mới thoả mãn điều kiện là đối tượng thuộc vào cụm Những đối tượng nằm ở biên của cụm

thì không thoả mãn điều kiện đó, bởi vì thông thường thì lân cận với ngưỡng Eps của đối tượng biên thì nhỏ hơn lân cận với ngưỡng Eps của đối tượng nhân

Để tránh được điều này, ta có thể đưa ra một tiêu chuẩn khác để định nghĩa

một đối tượng thuộc vào một cụm như sau: Nếu một đối tượng p muốn thuộc một cụm C phải tồn tại một đối tượng q mà p N Eps (q) và số đối tượng trong N Eps (q)

phải lớn hơn số đối tượng tối thiểu Điều này có thể được định nghĩa một cách hình thức như sau

Định nghĩa 2

Đối tượng p tới được trực tiếp theo mật độ thỏa Eps, MinPts từ đối tượng q

[16] nếu p N Eps (q) và | NEps(q) | ≥ MinPts

Hình 2.2: Quan hệ tới được trực tiếp theo mật độ [16]

Tính chất:

Nếu p, q đều là đối tượng nhân thì quan hệ tới được trực tiếp theo mật độ

là đối xứng, nghĩa là p tới được trực tiếp theo mật độ từ q và ngược lại

thì chỉ có đối tượng biên tới được trực tiếp theo mật độ từ đối tượng nhân

mà không có chiều ngược lại

Định nghĩa 3

Đối tượng p tới được theo mật độ [16] thỏa Eps, MinPts từ đối tượng q nếu

tồn tại một dãy p 1 , , p n (p 1 = q, p n = p) sao cho p i+1 tới được theo mật độ trực tiếp

từ p i

Trang 30

Hình 2.3: Quan hệ tới được theo mật độ [16]

Tính chất:

mật độ và có tính bắt cầu

xứng, nghĩa là p tới được theo mật độ từ q và ngược lại

ngược lại

đối tượng biên tới được theo mật độ từ đối tượng nhân mà không có chiều ngược lại

Định nghĩa 4

Đối tượng p kết nối theo mật độ [16] thỏa Eps, MinPts với đối tượng q nếu tồn

tại đối tượng o sao cho cả p và q đều tới được theo mật độ từ o

Hình 2.4: Quan hệ kết nối theo mật độ [16]

Tính chất:

kết nối theo mật độ còn có mỗi quan hệ có tính phản xạ

 Quan hệ kết nối theo mật độ là mỗi quan hệ có tính đối xứng

Trang 31

Định nghĩa 5

Cho cơ sở dữ liệu D, cụm C thỏa Eps và MinPts [16] là tập con khác rỗng của D

thỏa 2 điều kiện sau:

1) ∀ p,q: nếu p C và q tới được theo mật độ từ p thỏa Eps và MinPts thì q C

2) ∀ p,q C: p kết nối theo mật độ với p thỏa Eps và MinPts

Cụm C thỏa định nghĩa 5 sẽ có ít nhất MinPts đối tượng vì lý do sau: C phải

có ít nhất một đối tượng p (C khác rỗng), p phải kết nối theo mật độ với bản thân nó thông qua một đối tượng o (điều kiện 2 của định nghĩa 5) Vì vậy, o là đối tượng nhân và vùng lân cận Eps của o có ít nhất MinPts đối tượng

Định nghĩa 6

Cho các cụm C 1 , , C k của cơ sở dữ liệu D với các tham số Eps i và MinPts i , (i

= 1, , k) Tập nhiễu [16] là tập các đối tượng thuộc D nhưng không thuộc bất kỳ

cụm C i nào Tức là nhiễu = {p D | i: p Ci}

Hình 2.5: Đối tượng Nhiễu

Lưu ý rằng trong cụm C Eps và MinPts chứa ít nhất MinPts đối tượng bởi vì những lý do sau đây Khi C chứa ít nhất một đối tượng p, p phải là tới được theo mật độ đến chính nó thông qua một số đối tượng o (có thể bằng p) Như vậy, ít nhất

o phải đáp ứng các điều kiện đối tượng nhân và do đó, lân cận Eps của o phải chứa

ít nhất MinPts đối tượng

Bổ đề 1

Giả sử p là một đối tượng trong D và |N Eps (p)| ≥ MinPts, tập O = {o|o D và

o là tới được theo mật độ từ p thỏa Eps và MinPts} [16] là một cụm thỏa Eps và MinPts

Như vậy, cụm C không hoàn toàn là duy nhất, tuy nhiên, mỗi một đối tượng trong C tới được theo mật độ từ bất cứ một đối tượng nhân nào của C, vì vậy C

chứa đúng một số đối tượng kết nối theo mật độ với đối tượng nhân tuỳ ý

Trang 32

Trong những định nghĩa và bổ đề trên, chúng ta đều thấy nói đến tham số Eps

và MinPts Vậy tham số này được xác định như thế nào? Sau đây, chúng tôi sẽ trình

bày cách xác định hai tham số này như sau

Tham số Eps và MinPts cho thuật toán DBSCAN có thể được xác định bằng tay hoặc thông qua thuật toán Heuristics [16] Thuật toán này xác định tham số Eps

và MinPts cho cụm có mật độ ít dày đặc nhất và dựa trên hai cách sau: Gọi d là khoảng cách giữa đối tượng p và đối tượng gần nhất thứ k thì vùng lân cận d của đối tượng p chứa k+1 đối tượng Thay đổi giá trị k không dẫn đến thay đổi lớn giá trị của d trừ khi k đối tượng này cùng nằm xấp xỉ trên một đường thẳng

Với giá trị k cho trước, hàm k-dist là khoảng cách từ một đối tượng đến đối tượng gần nhất thứ k Tạo đồ thị sorted k-dist bằng cách sắp xếp các đối tượng theo giá trị k-dist giảm dần Nếu chọn một đối tượng bất kỳ p, đặt tham số Eps là k-

dist(p) và MinPts là k, các đối tượng có khoảng cách với p nhỏ hơn hoặc bằng giá

trị k-dist sẽ thuộc về cụm tạo bởi đối tượng p

Nếu tìm được đối tượng ngưỡng với giá trị k-dist lớn nhất ở trong cụm nhỏ nhất của D, ta sẽ tìm được giá trị tham số mong muốn Đối tượng ngưỡng này là đối tượng đầu tiên trong vùng lõm đầu tiên của đồ thị sorted k-dist Tất cả các đối tượng với giá trị k-dist cao hơn được xem là nhiễu Các đối tượng còn lại sẽ thuộc về một

cụm nào đó

Tóm lại, tham số Eps và MinPts cho thuật toán DBSCAN có thể xác định như

sau: đầu tiên, hệ thống tính toán khoảng cách từ một đối tượng đến đối tượng gần

nhất thứ k Tiếp theo, nếu người dùng có thể ước tính số phần trăm nhiễu thì hệ

thống sẽ đề nghị đối tượng ngưỡng theo số phần trăm nhiễu do người dùng nhập vào Và cuối cùng, người dùng có thể chấp nhận đối tượng ngưỡng được đề nghị hoặc chọn đối tượng khác làm đối tượng ngưỡng

Thuật toán

Trong phần này, chúng tôi trình bày giải thuật DBSCAN [16] Giải thuật này được thiết kế để phát hiện ra các cụm và nhiễu trong cơ sở dữ liệu không gian đa chiều thỏa mãn định nghĩa 5 và định nghĩa 6 và được mô tả như sau Để thực hiện giải thuật này trước tiên, chúng ta phải biết các thông số Eps và MinPts thích hợp của mỗi cụm và ít nhất một đối tượng từ một cụm tương ứng Sau đó, chúng ta có thể lấy tất cả các đối tượng tới được theo mật độ từ các đối tượng trước bằng cách

sử dụng tham số chính xác Sau đây là các bước thực hiện của giải thuật này

Trang 33

Giải thuật 2.2: Giải thuật phân cụm DBSCAN [16]

Đầu vào: Toàn bộ các đối tượng trong cơ sở dữ liệu và hai tham số Eps và MinPts Đầu ra: Các cụm dữ liệu đã được xử lý

Bước 1: Chọn một đối tượng p tuỳ ý

Bước 2: Lấy tất cả các đối tượng tới được theo mật độ từ p với Eps và MinPts Bước 3: Nếu p là đối tượng nhân thì tạo ra một cụm theo Eps và MinPts

Bước 4: Nếu p là một đối tượng biên, không có đối tượng nào là kết nối theo mật độ

từ p và DBSCAN sẽ đi tìm đối tượng tiếp theo của tập dữ liệu

Bước 5: Quá trình tiếp tục cho đến khi tất cả các đối tượng được xử lý

Thuật toán DBSCAN có thể tìm ra các cụm với hình thù bất kỳ, trong khi đó tại cùng một thời điểm ít bị ảnh hưởng bởi thứ tự của các đối tượng dữ liệu nhập vào Khi có một đối tượng được chèn vào chỉ tác động đến một láng giềng xác định

Mặt khác, DBSCAN yêu cầu người dùng xác định vùng lân cận Eps của các đối tượng và tham số tối thiểu MinPts, thông thường các tham số này được xác định

bằng phép chọn ngẫu nhiên hoặc theo kinh nghiệm

Trừ một số trường hợp ngoại lệ, kết quả của DBSCAN độc lập với thứ tự

duyệt của các đối tượng dữ liệu Khi tham số Eps được đưa vào là nhỏ so với kích

thước của không gian dữ liệu thì độ phức tạp tính toán trung bình của mỗi truy vấn

là O(n*logn) Sau đây, chúng tôi trình bày một số ưu điểm và hạn chế của thuật toán này như sau

Ưu điểm 11

Trái ngược với thuật toán k-means, thuật toán DBSCAN không đòi hỏi xác định số lượng các cụm dữ liệu ở đầu vào mà chỉ cần cung cấp hai tham số Eps và MinPts nhưng kết quả có thể tìm thấy các cụm có hình dạng tùy ý, thậm chí nó có thể tìm thấy một cụm bao quanh hoàn toàn bởi một cụm khác Đặc biệt, thuật toán này có tác dụng đáng kể trong việc xử lý nhiễu

Hạn chế 11

Thuật toán này không áp dụng được trên các cơ sở dữ liệu mà mật độ giữa các đối tượng dữ liệu giữa các cụm khác nhau có sự chênh lệch lớn Việc lựa chọn hai tham số Minpts và Eps không thích hợp có thể dẫn tới không phát hiện ra được cụm nào Và thời gian tính toán và dự đoán giá trị của thuật toán là rất lớn bởi vì nó phải tính toán lần lượt trên từng đối tượng dữ liệu

Trang 34

2.4.3 Thuật toán phân cụm phân cấp – HAC

Trong khai phá dữ liệu, phân cụm phân cấp12 là một phương pháp phân tích cụm để xây dựng nên một hệ thống các cụm Khác với phân cụm phân hoạch, phân cụm phân cấp không cần số cụm k ở đầu vào mà dùng ma trận khoảng cách làm tiêu chuẩn gom cụm Kỹ thuật phân cụm này xây dựng nguyên tắc phân loại dựa trên cây phân cấp (dendrogram) từ một tập hợp các tài liệu (mà không cần phải biết số lượng các cụm) Trong đó, các lá của cây biểu diễn từng đối tượng và các nút biểu diễn các cụm

Hình 2.6: Ví dụ về kỹ thuật phân cụm phân cấp

Một trong những đặc điểm hấp dẫn của kỹ thuật phân cụm phân cấp là chúng liên quan đến một nguyên tắc phân loại phổ biến trong ngành sinh học như giới, hệ, chi, loài, … Một tính năng hấp dẫn nữa của kỹ thuật phân cụm này là không cần biết trước số lượng các cụm Thay vào đó, bất kỳ số lượng mong muốn của cụm có thể thu được bằng cách “cắt” cây phân cụm ở mức thích hợp Trong kỹ thuật phân cụm phân cấp có hai phương pháp chính đó là: phương pháp bottom – up và phương pháp top - down

: Phương pháp này bắt đầu với mỗi đối tượng được khởi tạo tương ứng với các cụm riêng biệt, sau đó tiến hành gom các đối tượng theo một độ đo tương tự (như khoảng cách giữa hai trung tâm của hai cụm), quá trình này được thực hiện cho đến khi tất cả các cụm được gom vào một cụm (mức cao nhất của cây phân cấp) hoặc cho đến khi thỏa mãn các điều kiện dừng

: Bắt đầu từ cụm lớn nhất chứa tất cả các đối tượng Chia cụm không tương tự nhau 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

12

http://en.wikipedia.org/wiki/Hierarchical_clustering

Ngày đăng: 30/10/2022, 02:26

🧩 Sản phẩm bạn có thể quan tâm