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

Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein

69 408 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 2,52 MB

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

Nội dung

Trong thí dụcụm hai mức này, tổng số khoảng cách tính toán đòi hỏi giữa vector truy vấn và trọng tâm của các cụm cha và cụm con là 7 4+3, nhỏ hơn 11 tính toánkhi sử dụng cụm một tầng...

Trang 1

LỜI CAM ĐOAN

Tôi xin cam đoan bản luận văn “Phân cụm dữ liệu và ứng dụng trong phân

loại cấu trúc protein" là công trình nghiên cứu riêng của tôi Các số liệu trong luận

văn được sử dụng trung thực Kết quả nghiên cứu được trình bày trong luận vănnày chưa từng được công bố tại bất kỳ công trình nào khác

Tôi cũng xin chân thành cảm ơn các thầy cô trong Viện Công nghệThông tin, các thầy cô trong Trường Công Nghệ Thông Tin và Truyền thôngThái Nguyên, thầy giáo Trần Đăng Hưng - Giảng viên Khoa Công nghệ thôngtin và Trung tâm khoa học tính toán, Đại học Sư phạm Hà Nội, các bạn bè,đồng nghiệp tại Trung tâm Thông tin Công nghệ - Sở Khoa học Công nghệThái Nguyên, Cục Dự trữ Nhà nước khu vực Bắc Thái đã giúp đỡ tôi rấtnhiều trong quá trình học tập, sưu tầm, tìm tòi tài liệu và trong công tác để tôi

có thể hoàn thành bản luận văn này

Tôi xin bày tỏ lòng kính trọng, và biết ơn sâu sắc tới PGS.TS Đoàn Văn

Ban, người đã trực tiếp hướng dẫn, giúp đỡ tôi trong suốt thời gian thực hiện

luận văn này

Thái Nguyên, tháng 08 năm 2012

Học viên

Trần Đức Thuận

Trang 2

MỤC LỤC

Lời cam đoan i

Mục lục ii

Danh mục bảng biểu v

Danh mục các hình v

Mở đầu 1

1 Lý do chọn đề tài 1

2 Mục tiêu nghiên cứu 1

3 Phương pháp nghiên cứu 2

4 Tổng quan luận văn 2

CHƯƠNG 1-TỔNG QUAN LÝ THUYẾT VỀ PHÂN CỤM DỮ LIỆU 3

1.1 Tổng quan về phân cụm dữ liệu 3

1.2 Phân cụm trong phân loại dữ liệu 4

1.3 Các yêu cầu của phân cụm dữ liệu 6

1.4 Các kiểu dữ liệu trong phân cụm 8

1.4.1 Phân loại kiểu dữ liệu dựa trên kích thước miền 9

1.4.2 Phân loại kiểu dữ liệu dựa trên hệ đo 9

1.5 Các phép đo độ tương tự và khoảng cách đối với các kiểu dữ liệu 10

1.5.1 Khái niệm tương tự và phi tương tự 10

1.5.2 Thuộc tính khoảng cách 11

1.5.3 Thuộc tính nhị phân 13

1.5.4 Thuộc tính định danh 15

1.5.5 Thuộc tính có thứ tự 16

1.5.6 Thuộc tính tỉ lệ 16

1.6 Kết luận chương 17

CHƯƠNG 2 - KỸ THUẬT PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG PHÂN LOẠI CẤU TRÚC PROTEIN 18

2.1 Giới thiệu 18

2.2 Thuật toán K-means 18

2.3 Thuật toán PAM 22

2.4 Thuật toán CLARA 24

2.5 Thuật toán CLARANS 26

Trang 3

2.6 Kết luận chương 28

CHƯƠNG 3 - TIN SINH HỌC VÀ PHÂN LOẠI CẤU TRÚC PROTEIN 29

3.1 Tổng quan về tin sinh học 29

3.1.1 Chủ thuyết trung tâm của sinh học phân tử 29

3.1.2 DNA (DesoxyriboNucleic Acid) 30

3.1.3 RNA (RiboNucleic Acid) 31

3.1.4 Protein 31

3.1.5 Các dạng protein 32

3.2 Các phương pháp phân loại cấu trúc protein 34

3.2.1 Phân loại cấu trúc với SCOP 38

3.2.2 Phân loại cấu trúc với CATH 39

3.2.3 Phân loại cấu trúc với phân loại miền Dali (DDD) 40

3.3 Kết luận chương 41

CHƯƠNG 4 - CHƯƠNG TRÌNH DEMO VỚI PHẦN MỀM CLUSTERS 3.0 42

4.1 Phần mềm Clusters 3.0 42

4.1.1 Yêu cầu phần cứng 42

4.1.2 Nguồn dữ liệu demo chương trình 42

4.1.3 Sử dụng thư viện phân cụm 42

4.2 Sử dụng thuật toán K-mean, K-medians 43

4.2.1 Khởi tạo 43

4.2.2 Tìm trọng tâm cụm 44

4.2.3 Tìm trung bình cụm, hoặc trung vị cụm 44

4.2.4 Tìm giải pháp tối ưu với K-means và K-medians 46

4.3 Phần mềm demo 48

4.3.1 Đầu vào của chương trình 48

4.3.2 Giao diện một số chức năng chính của chương trình 49

4.3.3 Tệp đầu ra của chương trình 52

KẾT LUẬN VÀ HƯỚNG NGHIÊN CỨU 53

Kết luận 53

Hướng nghiên cứu trong thời gian tới 53

TÀI LIỆU THAM KHẢO 54

PHỤ LỤC 56

Trang 4

BẢNG KÝ HIỆU CÁC CHỮ VIẾT TẮT Chữ viết tắt Nghĩa tiếng anh Nghĩa tiếng việt

DNA DesoxyriboNucleic Acid

Phân tử nucleic acid mang thông tin di truyền mã hóa cho hoạt động sinh trưởng và phát triển của các dạng sống

RNA RiboNucleic Acid

Là một trong hai loại axít nucleic, là cơ sở di truyền ở cấp

độ phân ử

PAM Partitioning Around Medoids Thuật toán phân cụm phân vùng

xung quanh Medoids CLARA Clustering Large Application Thuật toán phân cụm ứng dụng

lớn

CLARANS

Clustering Large Applications based upon RANdomized Search

Thuật toán phân cụm với ứng dụng lớn trên cơ sở tìm kiếm ngẫu nhiên

tin từ ADN

SCOP Structural Classification of

Proteins Phân loại cấu trúc các protein

CATH Class Architecture Topology

Homologous superfamily

Phân loại cấu trúc protein với CATH

DDD Dali Domain Dictionary Từ điển miền Dali

PDB Protein Data Bank Ngân hàng dữ liệu protein

FSSP Families of Structurally

Similar Proteins

Dòng họ protein với cấu trúc tương tự

Trang 5

DANH MỤC BẢNG BIỂU

Bảng 1.1 Bảng dự đoán cho hai đối tượng nhị phân x và y……… 14

Bảng 1.2 Ví dụ về độ phi tương tự của thuộc tính nhị phân……… 15

Bảng 2.1 Bảng so sánh các thuật toán phân cụm trung tâm……… 28

Bảng 3.1 Đưa ra một số nguồn tài nguyên phân loại trình tự protein… 35

Bảng 3.2 Nguồn tài nguyên cho phân loại cấu trúc protein……… 36

Bảng 3.3 Các cấp độ chính của CATH……… 39

DANH MỤC CÁC HÌNH Hình 1.1 Phân cụm các vector truy vấn 5

Hình 1.2 Hình thành cụm cha 6

Hình 1.3 Các tỉ lệ khác nhau có thể dẫn tới các cụm khác nhau

12 Hình 2.1 Sơ đồ phân loại các phương pháp phân cụm……… 18

Hình 2.2 Các thiết lập để xác định danh giới các cụm ban đầu

19 Hình 2.3 Tính toán trọng tâm của các cụm mới

20

Hình 2.4 Ví dụ minh họa thuật toán K-means 21

Hình 2.5 Ví dụ minh họa thuật toán PAM 24

Hình 3.1 Chủ thuyết trung tâm của sinh học phân tử 30

Hình 3.2 Cấu trúc DNA

30 Hình 3.3 Các kiểu cấu trúc của Protein

32 Hình 3.4 Cấu trúc bậc 2 thường thấy của protein

33 Hình 3.5 Hai ví dụ về protein màng 34

Hình 3.6 Sự phát triển của cấu trúc dữ liệu protein 35

Hình 4.1 Đầu vào dữ liệu……… 48

Hình 4.2 Giao diện chọn tệp đầu vào……… 49

Hình 4.3 Giao diện tab Lọc dữ liệu……… 49

Hình 4.4 Giao diện tab chỉnh sửa dữ liệu……… 50

Hình 4.5 Giao diện Tab K-Means, sử dụng K-means hoặc K-medians để phân cụm………

51 Hình 4.6 Đầu ra dữ liệu……… 52

Trang 6

MỞ ĐẦU

1 LÝ DO CHỌN ĐỀ TÀI

Với sự phát triển vượt bậc của công nghệ thông tin, đặc biệt là ứng dụngcông nghệ thông tin vào các ngành sinh học đã giúp ích rất nhiều cho việc tìmhiểu nghiên cứu về sinh học phân tử Chính vì vậy Tin sinh học, một lĩnh vựccòn khá mới, đã ra đời, sử dụng các công nghệ của các ngành toán học ứngdụng, tin học, thống kê, khoa học máy tính, trí tuệ nhân tạo, hóa học, sinh học

để giải quyết các vấn đề của sinh học

Như chúng ta đã biết, các cơ sở phân tử của cuộc sống dựa trên hoạtđộng của phân tử sinh học, bao gồm axit nucleic (DNA và RNA),carbohydrate, chất béo, và protein Mặc dù mỗi loại đều đóng một vai trò thiếtyếu trong cuộc sống, nhưng protein có một sự nổi bật bởi chúng là thành phầnbiểu diễn chính các chức năng của tế bào Chính vì vậy, tìm hiểu và nghiêncứu cấu trúc phân tử sinh học đã nổi lên như một hướng đi mới với những trảinghiệm hướng vào việc khám phá cấu trúc của các phân tử sinh học Hướngphát triển này của sinh học đã trải qua với sự phát triển cao thông qua nghiêncứu cấu trúc với mục đích có cái nhìn toàn diện về không gian cấu trúcprotein, thông tin lưu trữ trong dữ liệu cấu trúc protein là chìa khóa để thànhcông nằm trong khả năng để tổ chức, phân tích thông tin chứa trong cơ sở dữliệu, tích hợp những thông tin đó với những nỗ lực khác nhằm giải quyếtnhững bí ẩn của chức năng tế bào

Nhận thấy tính thiết thực của vấn đề này và được sự gợi ý của giảng viên

hướng dẫn, em đã chọn đề tài "Phân cụm dữ liệu và ứng dụng trong phân

loại cấu trúc protein"

2 MỤC TIÊU NGHIÊN CỨU

- Tìm hiểu tổng quan về lý thuyết phân cụm dữ liệu

- Nghiên cứu một số kỹ thuật phân cụm dữ liệu ứng dụng trong phân loạicấu trúc protein

Trang 7

- Tìm hiểu về Tin sinh học và một số vấn đề liên quan, nghiên cứu cácphương pháp phân loại cấu trúc protein.

- Tìm hiểu và sử dụng phần mềm Cluster 3.0 ứng dụng vào trong phânloại cấu trúc protein

3 PHƯƠNG PHÁP NGHIÊN CỨU

- Nghiên cứu qua các tài liệu như: sách, sách điện tử, các bài báo, thôngtin tài liệu trên các website và các tài liệu liên quan

- Phân tích, tổng hợp lý thuyết và giới thiệu về phân cụm dữ liệu và một

số thuật toán phân cụm dữ liệu dựa vào cụm trung tâm ứng dụng trong phânloại cấu trúc protein

- Tìm hiểu và sử dụng phần mềm Cluster 3.0 ứng dụng thuật toán means để phân loại cấu trúc protein

K-4 TỔNG QUAN LUẬN VĂN

Luận văn được trình bày trong 4 chương và phần kết luận, với nội dungđược trình bày từ việc tìm hiểu các khái niệm cơ bản đến các nội dung chínhcần đi sâu tìm hiểu, giúp người đọc có cái nhìn tổng quan cũng như nhữngvấn đề chính được nghiên cứu:

- Chương 1 - Tổng quan: Giới thiệu tổng quan về lý thuyết phân cụm dữ

liệu

- Chương 2 - Một số kỹ thuật phân cụm dữ liệu ứng dụng trong phân

loại cấu trúc protein

- Chương 3 - Tin sinh học và Phân loại cấu trúc Protein.

- Chương 4 - Chương trình Demo với phần mềm cluster 3.0.

- Kết luận - Tóm tắt các nội dung chính, các kết quả đạt được và hướng

nghiên cứu tiếp theo của luận văn

Trang 8

CHƯƠNG 1 TỔNG QUAN LÝ THUYẾT VỀ PHÂN CỤM DỮ LIỆU

1.1 TỔNG QUAN VỀ PHÂN CỤM DỮ LIỆU

Phân cụm là chia dữ liệu thành các nhóm mà các đối tượng trong cùngmột nhóm thì giống nhau theo một nghĩa nào đó và khác với các đối tượngtrong các nhóm khác Mỗi nhóm được gọi là một cluster Mỗi đối tượng được

mô tả bởi một tập các độ đo hoặc bằng mối quan hệ với các đối tượng khác.Cũng có rất nhiều định nghĩa về cluster, nhưng các định nghĩa sau đây được

- "Các cluster có thể được mô tả như các miền liên thông trong khônggian đa chiều chứa mật độ tương đối cao các điểm, phân biệt giữa các miềnbằng mật độ khá thấp của các điểm"

Phân cụm có ý nghĩa rất quan trọng trong hoạt động của con người từ y

tế, giáo dục, xử lý thông tin, nghiên cứu phân tích thị trường,… Phân cụmđược sử dụng rộng rãi trong nhiều ứng dụng, bao gồm nhận dạng mẫu, phântích dữ liệu, xử lý ảnh, nghiên cứu thị trường, phân loại trong tin sinh học,…Bằng phân cụm, trong thương mại có thể giúp những nhà phân tích thị trườngtìm ra những nhóm khách hàng có những nhu cầu riêng dựa trên độ tuổi, sởthích và tâm lý tiêu dùng Trong sinh học, nó có thể được sử dụng để phânloại thực vật, động vật, phân loại cấu trúc protein dựa trên các cấu trúc tươngđồng vốn có, từ đó có thể xây dựng ngân hàng dữ liệu protein Trong xử lýthông tin, phân cụm giúp phân loại các tài liệu với dạng lưu trữ văn, trên đĩa

Trang 9

mềm, trên ổ cứng, trên mạng internet thành giúp tạo lập và hoàn chỉnh kho dữliệu khổng lồ về tri thức của loài người.

Là một chức năng khai phá dữ liệu, phân cụm có thể sử dụng như mộtcông cụ độc lập để quan sát đặc trưng của mỗi cụm thu được bên trong sựphân bố dữ liệu và tập trung vào một tập riêng biệt của các cụm để phântích Phân cụm có thể dụng như một bước tiền xử lý cho các thuật toán nhưphân loại, mô tả đặc điểm, phát hiện ra các cụm với các đặc trưng, tính chấtkhác nhau

1.2 PHÂN CỤM TRONG PHÂN LOẠI DỮ LIỆU

Các mục dữ liệu tương tự nhau được nhóm lại để hình thành các cụmtrên cơ sở độ đo mức tương tự nào đó Mỗi cụm được biểu diễn bởi trọng tâmvector đặc trưng của cụm Trong khi truy vấn, ta tính toán độ tương tự giữavector truy vấn và từng cụm (đại diện bởi trọng tâm cụm) Các cụm mà độtương tự của nó với vector truy vấn mà lớn hơn ngưỡng nào đó thì được lựachọn Sau đó, độ tương tự giữa vector truy vấn với từng vector đặc trưngtrong cụm được tính toán và k mục gần nhất được xếp hạng và được xem nhưkết quả

Ví dụ, các vector đặc trưng trên hình 1.1 được nhóm vào 11 cụm Trongkhi truy tìm, vector truy vấn được so sánh với lần lượt 11 trọng tâm cụm Nếutìm thấy trọng tâm cụm 2 gần giống vector truy vấn nhất thì ta tính khoảngcách giữa vector truy vấn với từng vector đặc trưng trong cụm 2 Tổng số tínhtoán khoảng cách đòi hỏi phải nhỏ hơn nhiều tổng các vector đặc trưng trong

cơ sở dữ liệu

Trang 10

Hình 1.1: Phân cụm các vector truy vấnTrong phương pháp truy tìm trên cơ sở cụm trên đây, mức độ tương tựđược tính toán giữa câu truy vấn và từng trọng tâm và với từng vector đặctrưng trong cụm lựa chọn Khi tổng số cụm mà lớn, ta sử dụng cụm nhiềutầng để làm giảm tính toán mức độ tương tự giữa truy vấn và trọng tâm Cáccụm tương tự nhau được nhóm để hình thành cụm lớn hơn (super-cluster).Trong khi truy tìm, trước hết so sánh vector truy vấn với trọng tâm của cụmcha sau đó so sánh với từng trọng tâm các cụm bên trong cụm cha, cuối cùng

so sánh với các vector đặc trưng của cụm con Hãy xem xét không gian đặctrưng trên hình 1.1, ta có thể hình thành cụm cha như hình 1.2

Trong khi truy vấn, so sánh vector truy vấn với từng trọng tâm của 4 cụmcha Nếu tìm thấy trọng tâm của cụm cha 1 là gần vector truy vấn nhất, hãy sosánh vector truy vấn với ba trọng tâm cụm con trong cụm cha 1 Trong thí dụcụm hai mức này, tổng số khoảng cách tính toán đòi hỏi giữa vector truy vấn

và trọng tâm (của các cụm cha và cụm con) là 7 (4+3), nhỏ hơn 11 tính toánkhi sử dụng cụm một tầng

Trang 11

Hình 1.2: Hình thành cụm chaCụm không chỉ làm truy tìm hiệu quả mà còn làm dễ dàng cho việc duyệt

và dẫn đường Với duyệt và dẫn đường, một mục đại diện mà có vector đặctrưng gần trọng tâm cụm của nó thì được hiển thị cho mỗi cụm Nếu người sửdụng quan tâm đến mục đại diện thì họ có thể quan sát các mục khác trongcụm

Các kỹ thuật cụm được sử dụng chung với các cấu trúc dữ liệu để tìmkiếm hiệu quả hơn Các mục tương tự được nhóm thành cụm Trọng tâm cáccụm hoặc/và các mục trong mỗi cụm được tổ chức nhờ cấu trúc dữ liệu nào

đó để tìm kiếm hiệu quả

1.3 CÁC YÊU CẦU CỦA PHÂN CỤM DỮ LIỆU

Phân cụm là một thách thức trong lĩnh vực nghiên cứu ở chỗ những ứngdụng tiềm năng của chúng được đưa ra ngay chính trong những yêu cầu đặcbiệt của chúng, sau đây là một số yêu cầu cơ bản của phân cụm dữ liệu [1]:

- Có khả năng mở rộng: Nhiều thuật toán phân cụm làm việc tốt với

những tập dữ liệu nhỏ chứa ít hơn 200 đối tượng, tuy nhiên, một cơ sở dữ liệulớn có thể chứa tới hàng triệu đối tượng Việc phân cụm với một tập dữ liệulớn có thể làm ảnh hưởng tới kết quả Vậy làm cách nào để chúng ta có thể

Trang 12

phát triển các thuật toán phân cụm có khả năng mở rộng cao đối với các cơ sở

dữ liệu lớn?

- Khả năng thích nghi với các kiểu thuộc tính khác nhau: Nhiều thuật

toán được thiết kế cho việc phân cụm dữ liệu có kiểu khoảng (kiểu số) Tuynhiên, nhiều ứng dụng có thể đòi hỏi việc phân cụm với nhiều kiểu dữ liệukhác nhau, như kiểu nhị phân, kiểu tường minh (định danh - không thứ tự), và

dữ liệu có thứ tự hay dạng hỗn hợp của những kiểu dữ liệu này

- Khám phá các cụm với hình dạng bất kỳ: Nhiều thuật toán phân cụm

xác định các cụm dựa trên các phép đo khoảng cách Euclide và khoảng cáchManhattan Các thuật toán dựa trên các phép đo như vậy hướng tới việc tìmkiếm các cụm hình cầu với mật độ và kích cỡ tương tự nhau Tuy nhiên, mộtcụm có thể có bất cứ một hình dạng nào Do đó, việc phát triển các thuật toán

có thể khám phá ra các cụm có hình dạng bất kỳ là một việc làm quan trọng

- Tối thiểu lượng tri thức cần cho xác định các tham số đầu vào: Nhiều

thuật toán phân cụm yêu cầu người dùng đưa vào những tham số nhất địnhtrong phân tích phân cụm (như số lượng các cụm mong muốn) Kết quả củaphân cụm thường khá nhạy cảm với các tham số đầu vào Nhiều tham số rấtkhó để xác định, nhất là với các tập dữ liệu có lượng các đối tượng lớn Điềunày không những gây trở ngại cho người dùng mà còn làm cho khó có thểđiều chỉnh được chất lượng của phân cụm

- Khả năng thích nghi với dữ liệu nhiễu: Hầu hết những cơ sở dữ liệu

thực đều chứa đựng dữ liệu ngoại lai, dữ liệu lỗi, dữ liệu chưa biết hoặc dữliệu sai Một số thuật toán phân cụm nhạy cảm với dữ liệu như vậy và có thểdẫn đến chất lượng phân cụm thấp

- Ít nhạy cảm với thứ tự của các dữ liệu vào: Một số thuật toán phân cụm

nhạy cảm với thứ tự của dữ liệu vào, ví dụ như với cùng một tập dữ liệu, khiđược đưa ra với các thứ tự khác nhau thì với cùng một thuật toán có thể sinh

Trang 13

ra các cụm rất khác nhau Do đó, việc quan trọng là phát triển các thuật toán

mà ít nhạy cảm với thứ tự vào của dữ liệu

- Số chiều lớn: Một cơ sở dữ liệu hoặc một kho dữ liệu có thể chứa một

số chiều hoặc một số các thuộc tính Nhiều thuật toán phân cụm áp dụng tốtcho dữ liệu với số chiều thấp, bao gồm chỉ từ hai đến 3 chiều Người ta đánhgiá việc phân cụm là có chất lượng tốt nếu nó áp dụng được cho dữ liệu có từ

3 chiều trở lên Nó là sự thách thức với các đối tượng dữ liệu cụm trongkhông gian với số chiều lớn, đặc biệt vì khi xét những không gian với sốchiều lớn và có độ nghiêng lớn

- Phân cụm ràng buộc: Nhiều ứng dụng thực tế có thể cần thực hiện

phân cụm dưới các loại ràng buộc khác nhau Giả sử rằng công việc của ta làlựa chọn vị trí cho một số trạm rút tiền tự động ở một thành phố Để quyếtđịnh dựa trên điều này, có thể phân cụm những hộ gia đình trong khi xem xétcác mạng lưới sông và đại lộ, và những yêu cầu khách hàng của mỗi vùngnhư những sự ràng buộc Một nhiệm vụ đặt ra là đi tìm những nhóm dữ liệu

có trạng thái phân cụm tốt và thỏa mãn các ràng buộc

- Dễ hiểu và dễ sử dụng: Người sử dụng có thể chờ đợi những kết quả

phân cụm dễ hiểu, dễ lý giải và dễ sử dụng Nghĩa là, sự phân cụm có thể cầnđược giải thích ý nghĩa và ứng dụng rõ ràng Việc nghiên cứu cách để mộtứng dụng đạt được mục tiêu là rất quan trọng, có thể gây ảnh hưởng tới sự lựachọn các phương pháp phân cụm

1.4 CÁC KIỂU DỮ LIỆU TRONG PHÂN CỤM

Trong phân cụm, các đối tượng dữ liệu thường được biểu diễn dưới dạngcá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áckiểu thuộc tính dữ liệu” được xem là tương đương với nhau) [1] Các thuộctính này là các tham số cho phép giải quyết vấn đề phân cụm và 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

Trang 14

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ácphươ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óhai đặc trưng để phân loại: kích thước miền và hệ đo.

Cho một cơ sở dữ liệu 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: x = (x1, x2, ,xk); y = (yl, y2, , yk); z = (zl, z2, , zk) Trong đó xi, yi, zi với i 1,k là các đặc trưng hoặc thuộc tính tương ứngcủa các đối tượng x, y, z; như vậy sẽ có các kiểu dữ liệu sau [9]

1.4.1 Phân loại kiểu dữ liệu dựa trên kích thước miền

- Thuộc tính liên tục: Nếu miền giá trị của nó là vô hạn không đếm được,

nghĩa là giữa hai giá trị tồn tại vô số giá trị khác (ví dụ, các thuộc tính màu,nhiệt độ hoặc cường độ âm thanh, )

- Thuộc tính rời rạc: Nếu miền giá trị của nó là tập hữu hạn, đếm được

(ví dụ, các thuộc tính số, ); trường hợp đặc biệt của thuộc tính rời rạc làthuộc tính nhị phân mà miền giá trị chỉ có hai phần tử (ví dụ:Yes/No,True/False, On/Off )

1.4.2 Phân loại kiểu dữ liệu dựa trên hệ đo

- Thuộc tính định danh: Là dạng thuộc tính khái quát hóa của thuộc tính

nhị phân, trong đó miền giá trị là rời rạc không phân biệt thứ tự và có nhiềuhơn hai phần tử Nếu x và y là hai đối tượng thuộc tính thì chỉ có thể xác định

là x ≠ y hoặc x = y

- Thuộc tính có thứ tự: Là thuộc tính định danh có thêm tính thứ tự,

nhưng chúng không được định lượng Nếu x và y là hai thuộc tính thứ tự thì

có thể xác định là x ≠ y hoặc x = y hoặc x > y hoặc x < y

- Thuộc tính khoảng: Để đo các giá trị theo xấp xỉ tuyến tính, với thuộc

tính khoảng có thể xác định một thuộc tính là đứng trước hoặc đứng sau thuộctính khác với một khoảng là bao nhiêu Nếu xi > yi thì có thể nói x cách y mộtkhoảng xi - yi tương ứng với thuộc tính thứ i

Trang 15

- Thuộc tính tỉ lệ: Là thuộc tính khoảng nhưng được xác định một cách

tương đối so với điểm mốc đầy ý nghĩa

Trong các thuộc tính trình bày ở trên, thuộc tính định danh và thuộc tính

có thứ tự gọi chung là thuộc tính hạng mục, còn thuộc tính khoảng và thuộctính tỉ lệ được gọi là thuộc tính số

Đặc biệt, còn có dữ liệu không gian là loại dữ liệu có thuộc tính số kháiquát trong không gian nhiều chiều, dữ liệu không gian mô tả các thông tin liênquan đến không gian chứa đựng các đối tượng (ví dụ, thông tin về hìnhhọc, ) Dữ liệu không gian có thể là dữ liệu liên tục hoặc rời rạc

- Dữ liệu không gian liên tục: Bao chứa một vùng không gian

- Dữ liệu không gian rời rạc: Có thể là một điểm trong không gian nhiều

chiều và cho phép xác định được khoảng cách giữa các đối tượng dữ liệutrong không gian Thông thường, các thuộc tính số được đo bằng các đơn vịxác định như kilogams hay centimeters Tuy nhiên, việc thay đổi các đơn vị

đó có ảnh hưởng đến kết quả phân cụm (ví dụ, thay đổi đơn vị đo cho thuộctính chiều cao từ centimeters sang inches có thể mang lại kết quả khác nhautrong phân cụm) Để khắc phục điều này phải chuẩn hóa dữ liệu được thựchiện bằng cách thay thế mỗi một thuộc tính bằng thuộc tính số hoặc thêm cáctrọng số cho các thuộc tính

1.5 CÁC PHÉP ĐO ĐỘ TƯƠNG TỰ VÀ KHOẢNG CÁCH ĐỐI VỚI CÁC KIỂU DỮ LIỆU

1.5.1 Khái niệm tương tự và phi tương tự

Khi các đặc tính của dữ liệu được xác định, phải tìm cách thích hợp đểxác định “khoảng cách” giữa các đối tượng, hay là phép đo tương tự dữ liệu.Đây là các hàm để đo sự giống nhau giữa các cặp đối tượng dữ liệu, thôngthường các hàm này hoặc là để tính độ tương tự hoặc là tính độ phi tương tựgiữa các đối tượng dữ liệu Giá trị của hàm tính độ đo tương tự càng lớn thì sự

Trang 16

giống nhau giữa các đối tượng càng lớn và ngược lại còn hàm tính độ phitương tự tỉ lệ nghịch với hàm tính độ tương tự Độ tương tự hoặc phitương tự có nhiều cách để xác định, chúng thường được đo bằng khoảngcách giữa các đối tượng Tất cả các cách đo độ tương tự đều phụ thuộcvào kiểu thuộc tính mà người sử dụng phân tích Ví dụ, đối với thuộc tínhhạng mục thì không sử dụng độ đo khoảng cách mà sử dụng một hướnghình học của dữ liệu

Tất cả các độ đo dưới đây được xác định trong không gian metric Bất kỳmột metric nào cũng là một độ đo, nhưng điều ngược lại không đúng Đểtránh sự nhầm lẫn, thuật ngữ độ đo ở đây đề cập đến hàm tính độ tương tựhoặc hàm tính độ phi tương tự Một không gian metric là một tập trong đó cóxác định khoảng cách giữa từng cặp phần tử, với những tính chất thôngthường của khoảng cách hình học Nghĩa là, một tập X (các phần tử của nó cóthể là những đối tượng bất kỳ) các đối tượng dữ liệu trong cơ sở dữ liệu D đềcập ở trên được gọi là một không gian metric nếu:

- Với mỗi cặp phần tử x, y thuộc X đều xác định theo một quy tắc nào

đó, một số thực δ(x, y) được gọi là khoảng cách giữa x và y

- Quy tắc nói trên thỏa mãn hệ tính chất sau:

Trang 17

trong cùng một đơn vị giống nhau thì nó tồn tại khoảng cách Euclide 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ảngcách Euclide cũng cho kết quả chính xác Hình 1.3 minh họa ví dụ về phép đochiều cao và chiều ngang của một đối tượng được thực hiện trong một đơn vịvật lí giống nhau nhưng khác nhau về tỉ lệ

Hình 1.3: Các tỉ lệ khác nhau có thể dẫn tới các cụm khác nhauTuy nhiên chú ý rằng đây không chỉ là 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 vector vào trong một độ đo khoảng duy nhất mà có thểđược sử dụng cho mục đích phân cụm và các công thức khác nhau dẫn tớinhữ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ữahai đối tượng để thực hiện phân cụm Kiến thức miền phải được sử dụng đểbiểu diễn phép đo khoảng cách thích hợp cho mỗi ứng dụng Hiện nay thường

sử dụng một số phép đo khoảng cách phổ biến [8]:

- Phép đo khoảng cách Minkowski được định nghĩa như sau:

trong đó, x và y là hai đối tượng với n là số lượng thuộc tính, x = (x1, x2,…,

xn) và y = (y1, y2,…, yn); dist là kích thước của dữ liệu, q là số nguyên dương

Trang 18

- Phép đo khoảng cách Euclide:

là khoảng cách Minkowski giữa hai đối tượng trong trường hợp q=2

- Phép đo khoảng cách Manhattan:

Nếu xem xét p là biến định danh, có thể đánh giá độ tương tự của cáctrường hợp bằng số các biến mà có giá trị giống nhau, định nghĩa với mộtbiến nhị phân mới từ mỗi biến danh nghĩa, bằng việc nhóm các nhãn danhnghĩa thành hai lớp, một nhãn là 1, và nhãn khác là 0 Xây dựng và xem xét

Trang 19

bảng dự đoán các sự kiện có thể xảy ra và định nghĩa các thuộc tính của đốitượng x, y bằng các biến số nhị phân 0 và 1 [8]:

Bảng 1.1 Bảng dự đoán cho hai đối tượng nhị phân x và y

a là tổng số các thuộc tính có giá trị 1 trong hai đối tượng x, y

b là tổng số các thuộc tính có giá trị 1 trong x và giá trị 0 trong y

c là tổng số các thuộc tính có giá trị 0 trong x và giá trị 1 trong y

d là tổng số các thuộc tính có giá trị 0 trong hai đối tượng x, y

p là tổng tất các thuộc tính của hai đối tượng x, y

Độ đo khoảng cách đối xứng của biến nhị phân:

Trang 20

Công thức này sử dụng trong trường hợp mà trọng số của các thuộc tính

có giá trị 1 của đối tượng dữ liệu cao hơn nhiều so với các thuộc tính có giá trị

0, như vậy thuộc tính nhị phân ở đây là không đối xứng

Ví dụ về độ phi tương tự của thuộc tính nhị phân:

Bảng 1.2 Ví dụ về độ phi tương tự của thuộc tính nhị phân

Tên Giới tính Bệnh sốt Bệnh ho Kiểm tra 1 Kiểm tra 2 Kiểm tra 3 Kiểm tra 4

- Giới tính là thuộc tính đối xứng

- Các thuộc tính còn lại là bất đối xứng, nhị phân

- Thiết lập các thuộc tính và Có, Tốt là 1, thuộc tính Xấu và Không là 0

Trang 21

trong đó, m là số thuộc tính đối sánh tương ứng trùng nhau, và p là tổng

Mỗi một thuộc tính có thứ tự có các miền giá trị khác nhau, vì vậy phảichuyển đổi chúng về cùng miền giá trị [0, 1] bằng cách thực hiện phép biếnđổi sau cho mỗi thuộc tính:

Trang 22

gán trọng số tương ứng wi (1 ≤ i ≤ k), độ tương đồng dữ liệu được xác địnhnhư sau [8]:

độ tương đồng dữ liệu thích hợp, chính xác, đảm bảo khách quan là rất quantrọng, góp phần xây dựng thuật toán phân cụm dữ liệu có hiệu quả cao trongviệc đảm bảo chất lượng cũng như chi phí tính toán

1.6 KẾT LUẬN CHƯƠNG

Chương 1 nêu những kiến thức cơ bản về khái niệm phân cụm, các yêucầu trong phân cụm dữ liệu đối với thực tế, các kiểu thuộc tính dữ liệu trongphân cụm, một số phép đo khoảng cách phổ biến cũng như một số thuộc tínhphố biến áp dụng trong các thuật toán phân cụm dữ liệu

Trang 23

CHƯƠNG 2

KỸ THUẬT PHÂN CỤM DỮ LIỆU ỨNG DỤNG TRONG

PHÂN LOẠI CẤU TRÚC PROTEIN 2.1 GIỚI THIỆU

Các kỹ thuật phân cụm có rất nhiều cách tiếp cận và các ứng dụng trongthực tế Các kỹ thuật phân cụm đều hướng tới hai mục tiêu chung: chất lượngcủa các cụm khám phá được và tốc độ thực hiện của thuật toán

Dưới đây là sơ đồ phân loại các phương pháp phân cụm dữ liệu [3]:

Hình 2.1 Sơ đồ phân loại các phương pháp phân cụmTrong sơ đồ phân thành hai nhóm chính là phân cụm phân cấp và phân cụm dựa vào cụm trung tâm (K-means, PAM, CLARA, CLARANS)

Trong giới hạn tìm hiểu, luận văn chỉ đi sâu vào một số thuật toán phâncụm dựa vào cụm trung tâm nhằm áp dụng phân loại cấu trúc protein

2.2 THUẬT TOÁN K-MEANS

K-means là thuật toán phân cụm theo các phần tử bởi trung tâm của cáccụm Phương pháp này dựa trên độ đo khoảng cách của các đối tượng dữliệu trong cụm Nó được xem như là trung tâm của cụm Như vậy, nó cầnkhởi tạo một tập trung tâm các trung tâm cụm ban đầu, và thông qua đó nó lặplại các bước gồm gán mỗi đối tượng tới cụm mà trung tâm gần, và tính toán

Trang 24

tại trung tâm của mỗi cụm trên cơ sở gán mới cho các đối tượng Quá trìnhnày dừng khi các trung tâm cụm hội tụ.

Trong phương pháp K-means, chọn một giá trị k và sau đó chọn ngẫunhiên k trung tâm của các đối tượng dữ liệu Tính toán khoảng cách giữa đốitượng dữ liệu trung bình 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 trung bình mới củacụm và lặp lại quá trình cho đến khi mỗi các đối tượng dữ liệu là một bộ phậncủa các cụm k

Hình 2.2: Các thiết lập để xác định danh giới các cụm ban đầuMục đích của thuật toán K-means là sinh k cụm dữ liệu {C1, C2,…, Ck}

từ một tập dữ liệu chứa n đối tượng trong không gian d chiều Xi = {xi1, xi2,…

xid}, i = 1 + n, sao cho hàm tiêu chuẩn: E = 2

Trong đó: m i là trung bình cụm của cụm Ci, x là điểm dữ liệu đại diện

cho một đối tượng Trọng tâm của cụm là một vector, trong đó giá trị của mỗiphần tử của nó là trung bình cộng của các thành phần tương ứng của các đốitượng vector dữ liệu trong cụm đang xét Tham số đầu 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 các cụm dữ

Trang 25

liệu Độ đo khoảng cách giữa các đối tượng dữ liệu thường được sử dụng làkhoảng cách Euclide Hàm tiêu chuẩn và độ đo khoảng cách có thể được xác định

cụ thể hơn tùy ý vào ứng dụng hoặc quan điểm của người dùng

Hình 2.3 Tính toán trọng tâm của các cụm mớiCác bước cơ bản của thuật toán K- means

 ban đầu trong không gian Rd (d là số chiều của

dữ liệu) Việc lựa chọn này có thể là ngẫu nhiên hoặc theo kinh nghiệm

Trang 26

Lặp lại các bước 2 và 3 cho đến khi các trọng tâm của cụm khôngthay đổi.

End

Ví dụ: Giả sử trong không gian hai chiều, cho 12 điểm (n = 12) cần phân

12 điểm này thành hai cluster (k=2) Đầu tiên chọn hai điểm ngẫu nhiên vàohai cluster, giả sử chọn điểm (1,3) và điểm (9,4) (điểm có màu đỏ trên hình2.4.a) Coi điểm (1,3) là tâm của cluster 1 và điểm (9,4) là tâm của cluster hai.Tính toán khoảng cách từ các điểm khác đến hai điểm này và ta gán được cácđiểm còn lại này vào một trong hai cluster, những điểm có màu xanh lơ vàocluster 1, những điểm có màu xanh đậm vào cluster 2 (hình 2.4.b) Hiệu chỉnhlại tâm của hai cluster, điểm màu đỏ trên hình 2.4.c là tâm mới của hai cluster.Tính lại các khoảng cách các điểm đến tâm mới và gán lại các điểm này, hình2.4.d Tiếp tục hiệu chỉnh lại tâm của hai cluster Cứ như thế lặp lại cho đến khikhông còn sự thay đổi nữa thì dừng Khi đó ta thu được đầu ra của bài toán

Hình 2.4 Ví dụ minh họa thuật toán k-means [8]

Nếu gọi n là số các đối tượng trong cơ sở dữ liệu, k là số phân cụm, t là

số lần lặp đi lặp lại thuật toán, với k,t << n, ta có độ phức tạp của thuật toán K- means: O(tkn) [10].

Trang 27

Thuật toán này có hiệu quả tương đối với các cơ sở dữ liệu lớn, có ưuđiểm là rõ ràng, dễ dàng cài đặt Nhưng nhược điểm của thuật toán này làphải chỉ ra số lượng cluster và yêu cầu cơ sở dữ liệu cần phân nhóm phải xácđịnh được tâm Thuật toán này cũng không phù hợp với việc khai phá các dữliệu gồm các cluster có hình dạng không lồi (non-convex) Có thể đưa thêmnhiều cải tiến vào k-mean để được thuật toán hiệu quả hơn, như thay đổi cáchchọn các mẫu khởi đầu, cách tính tiêu chuẩn,

Các thuật toán sau này như PAM, CLARA, đều là sự cải tiến của thuậttoán K-means

2.3 THUẬT TOÁN PAM

Thuật toán PAM là thuật toán mở rộng của thuật toán K-means nhằm cókhả năng xử lý hiệu quả đối với dữ liệu nhiễu hoặc phần tử ngoại lai, PAM

sử dụng các đối tượng đại diện để biểu diễn cho các cụm dữ liệu, một đốitượng đại diện là đối tượng đặt tại vị trí trung tâm nhất bên trong mỗi cụm [8]

Vì vậy, đối tượng đại diện ít bị ảnh hưởng của các đối tượng ở rất xa trungtâm, trong khi đó các trọng tâm của thuật toán K-means lại rất bị tác động bởicác điểm xa trung tâm này Ban đầu, PAM khởi tạo k đối tượng đại diện vàphân phối các đối tượng còn lại vào các cụm với đối tượng đại diện tươngứng sao cho chúng tương tự đối với đại diện trong cụm nhất Giả sử Oj là đốitượng không phải đại diện mà Om là một đối tượng đại diện, khi đó ta nói Oj

thuộc về cụm có đối tượng đại diện là Om nếu d(Oj, Om) = minOe(Oj, Oe); trong

đó d(Oj, Om) là độ phi tương tự giữa Oj và Oe, minOe là giá trị nhỏ nhất của độphi tương tự giữa Oj và tất cả các đối tượng đại diện của các cụm dữ liệu.Chất lượng của mỗi cụm được khám phá được đánh giá thông qua độ phitương tự trung bình giữa một đối tượng và đối tượng đại diện tương ứng vớicụm của nó, nghĩa là chất lượng phân cụm được đánh giá thông qua chấtlượng của tất cả các đối tượng đại diện Độ phi tương tự được xác định bằng

Trang 28

độ đo khoảng cách, thuật toán PAM được áp dụng cho dữ liệu không gian Đểxác định các đại diện, PAM bắt đầu bằng cách lựa chọn k đối tượng đại diệnbất kỳ Sau mỗi bước thực hiện, PAM cố gắng hoán chuyển giữa đối tượngđại diện Om và một đối tượng Op, không phải là đại diện, miễn là sự hoánchuyển này nhằm cải tiến chất lượng của phân cụm, quá trình này kết thúc khichất lượng phân cụm không thay đổi Chất lượng phân cụm được đánh giáthông qua hàm tiêu chuẩn, chất lượng phân cụm tốt nhất khi hàm tiêu chuẩnđạt giá trị tối thiểu PAM tính giá trị Cjmp cho tất cả

các đối tượng Oj để làm căn cứ cho việc hoán chuyển giữa Om và Op

Om: là đối tượng đại diện hiện thời cần được thay thế:

Op: là đối tượng đại diện mới thay thế cho Om;

Oj: Là đối tượng dữ liệu (Không phải đại diện) có thể được di chuyểnsang cụm khác;

Oj,2: Là đối tượng đại diện hiện thời gần đối tượng Oj nhất

TCmp là tổng khoảng cách giữa đối tượng đại diện hiện thời Op và đốitượng đại diện Om mới thay thế Op

Các bước thực hiện thuật toán PAM

Input: Tập dữ liệu có n phần tử, số cụm k

Output: k cụm dữ liệu sao cho chất lượng phân hoạch là tốt nhất

BEGIN

1 Chọn k đối tượng đại diện bất kỳ;

2 Tính TCmp cho tất cả các cặp đối tượng Om, Op Trong đó, Om là đốitượng đại diện và Op là đối tượng không phải đại diện;

3 Chọn cặp đối tượng Om và Op Tính MinOm, MinOp, TCmp, nếu TCmp là

âm thay thế Om bởi Op và quay lại bước 2 Nếu TCmp dương, chuyển sangbước 4;

Trang 29

4 Với mỗi đối tượng không phải đại diện, xác định đối tượng đại diệntương tự với nó nhất đồng thời gán nhãn cụm cho chúng

END

- Ví dụ thuật toán PAM

Hình 2.5 Ví dụ minh họa thuật toán PAM [8]

Nếu gọi n là số các đối tượng trong cơ sở dữ liệu, k là số phân cụm, t là

số lần lặp đi lặp lại thuật toán với k,t << n, ta có độ phức tạp của thuật toán

PAM: O(tk(n-k) 2 ) [10].

2.4 THUẬT TOÁN CLARA

Thuật toán CLARA được đưa ra nhằm khắc phục nhược điểm của thuậttoán PAM trong trường hợp giá trị k và n là lớn [8] CLARA tiến hành tríchmẫu cho tập dữ liệu có n phần tử, nó áp dụng thuật toán PAM cho mẫu này vàtìm ra các đối tượng trung tâm đại diện cho mẫu được trích ra từ dữ liệu này.Nếu mẫu dữ liệu được trích theo một cách ngẫu nhiên, thì các đại diện của

nó xấp xỉ với các đại diện của toàn bộ tập dữ liệu ban đầu Để tiến tới một xấp

xỉ tốt hơn, CLARA đưa ra nhiều cách lấy mẫu và thực hiện phân cụm cho mỗitrường hợp, sau đó tiến hành chọn kết quả phân cụm tốt nhất khi thực hiện

Trang 30

phân cụm trên mẫu này Để đo chính xác, chất lượng của các cụm được đánhgiá thông qua độ phi tương tự trung bình của toàn bộ các đối tượng dữ liệutrong tập đối tượng dữ liệu ban đầu Kết quả thực nghiệm chỉ ra rằng, 5 mẫu

dữ liệu có kích thước 40 +2k cho kết quả tốt Các bước thực hiện của thuậttoán CLARA:

Input: Số đối tượng trong cơ sở dữ liệu(n), số phân cụm k, kích thước

5 Quay về bước 1

END

Ở đây, một phần nhỏ dữ liệu hiện thời được chọn như một đại diện của

dữ liệu thay vì sử dụng toàn bộ dữ liệu và sau đó đại diện được chọn từ mẫu

sử dụng PAM Nếu mẫu được chọn theo cách ngẫu nhiên thì nó có thể cầnphải đại diện tập dữ liệu gốc Các đối tượng đại diện (đại diệns) được chọn làtương tự mà đã được chọn từ tập dữ liệu Nó đưa ra nhiều mẫu của tập dữ

Trang 31

liệu, áp dụng PAM trên mỗi mẫu, và trả lại cụm tốt nhất ở đầu ra Như vậy,CLARA có thể xử lý với tập dữ liệu lớn hơn PAM.

Nếu gọi n là số các đối tượng trong cơ sở dữ liệu, k là số phân cụm, s là

kích thước của mẫu được trích rút, với k,s << n, ta có độ phức tạp của thuật

toán CLARA: O(ks 2 +k(n-k)) [10].

2.5 THUẬT TOÁN CLARANS

Thuật toán k-means và k-medoids thường thực hiện với CSDL vừa vànhỏ, chỉ khoảng vài trăm đến vài nghìn đối tượng Do yêu cầu của việc phâncụm dữ liệu không gian ngày càng lớn, năm 1994 Raymond T.Ng và JiaweiHan đã đưa ra một thuật toán phân cụm theo kiểu k-medoids hiệu quả hơn cácthuật toán trước đó Thuật toán này có tên là CLARANS (Clustering LargeApplications based on RANdomized Search) CLARANS phân cụm dựa trên

việc tìm kiếm ngẫu nhiên các tập gồm k đối tượng để làm tâm của k cụm Tại mỗi bước tìm kiếm sẽ xác định được độ tốt của nó và giữ lại kết quả tìm kiếm

tốt nhất [2]

Các tác giả đã thực hiện việc tìm kiếm và đánh giá độ tốt của phép tìmkiếm bằng cách xây dựng một đồ thị tìm kiếm như sau Với n đối tượng cầnchia làm k cụm thì độ thị được đặt tên là Gn,k Mỗi đỉnh của Gn,k là một tậpgồm k đối tượng O m1, , O mk , ngụ ý rằng mỗi đối tượng Omi là tâm của một

cụm Tập đỉnh của đồ thị là  O , ,O |O , ,O CSDL

k 1

Trang 32

cụm, gán mỗi đỉnh của đồ thị với một trọng số là tổng khoảng của tất cả cácđối tượng đến tâm tương ứng Dùng trọng số này để đánh giá độ tốt của mỗiphương án.

Thuật toán CLARANS cần có hai tham số đầu vào là numlocal (số cục

bộ địa phương cần tìm) và maxneighbour (số đỉnh kề cần xét)

Quá trình thực hiện của thuật toán như sau:

Đầu tiên chọn ngẫu nhiên một đỉnh làm đỉnh hiện thời, lấy ngẫu nhiênmột đỉnh kề với đỉnh hiện thời, so sánh trọng số của đỉnh hiện thời và đỉnhvừa chọn, nếu đỉnh vừa chọn có trọng số nhỏ hơn thì đặt đỉnh đó làm đỉnhhiện thời, lặp lại quá trình đó maxneighbour lần, tìm được một đỉnh có trọng

số thấp nhất, trọng số này gọi là cực tiểu địa phương So sánh cực tiểu địaphương với một số mincost, nếu nhỏ hơn thì gán mincost bằng cực tiểu địaphương đó và lưu lại đỉnh hiện thời vào bestnode Lặp lại quá trình trên đủnumlocal lần Kết quả được chứa trong bestnode

Thuật toán CLARANS được mô tả cụ thể như sau:

1 Đặt i = 1, mincost = +

2 Chọn một đỉnh ngẫu nhiên của Gn,k gọi là đỉnh hiện thời current

3 Đặt j = 1

4 Chọn ngẫu nhiên 1 đỉnh S kề với current Tính trọng số của S

5 Nếu S có trọng số nhỏ hơn current thì đặt S là đỉnh hiện thời và trở lạibước 3

6 Ngược lại, j = j + 1 Nếu j  maxneighbour thì quay về bước 4

7 Ngược lại, khi j > maxneighbour thì so sánh trọng số của current vớimincost, nếu nhỏ hơn mincost thì đặt mincost bằng trọng số của current

và đặt bestnode = current

8 i = i + 1, nếu i > numlocal thì đưa ra bestnode và dừng, ngược lại thìquay về bước 2

Trang 33

Thuật toán CLARANS được đánh giá là hiệu quả trên CSDL lớn, vấn đềxác định tham số numlocal và maxneighbour không phức tạp Có thể chọn cácgiá trị khác nhau sao cho phù hợp với CSDL cần nghiên cứu

Tuy nhiên, CLARANS cũng bộc lộ một số hạn chế Thứ nhất,CLARANS cần đưa cả CSDL vào bộ nhớ trong Thứ hai thời gian thực thi cónhiều trường hợp rất xấu, trường hợp tốt nhất là O(kn2) và trường hợp xấunhất là O(nk) với n là số các đối tượng, k là số phân cụm, với k << n [10].

2.6 KẾT LUẬN CHƯƠNG

Trên đây là một số thuật toán dựa vào cụm trung tâm để phân cụm dữliệu Ta có đánh giá và so sánh của từng thuật toán về tham số đầu vào, cấutrúc phân cụm, và độ phức tạp thuật toán đã trình bày dưới đây [10]:

Bảng 2.1 Bảng so sánh các thuật toán phân cụm trung tâm

Thuật toán phân cụm trung tâm

Thuật

toán

Tham số đầu vào

Tối ưu hóa cho

Cấu trúc phân cụm

Độ phức tạp thuật toán

K-means Số các phân cụm Phân chia các phân cụm. Hình cầu O(tkn)

PAM Số các phân cụm

Phân chia các phân cụm, Dữ liệu nhỏ.

Hình cầu O(tk(n-k) 2 )

CLARA Số các phân cụm Dữ liệu lớn Hình cầu O(ks 2 +k(n-k))

CLARANS Số các phân cụm, Số đối tượng hàng xóm

Dữ liệu không gian, chất lượng phân cụm tốt hơn so với PAM

và CLARA.

Hình cầu O(kn 2 )

Trang 34

CHƯƠNG 3 TIN SINH HỌC VÀ PHÂN LOẠI CẤU TRÚC PROTEIN

3.1 TỔNG QUAN VỀ TIN SINH HỌC

Tin sinh học (Bioinformatics) là một ngành khoa học mới và quan trọng được ra đời bởi sự kết hợp giữa hai ngành khoa học là tin học và sinh học Đối tượng nghiên cứu chính của Tin sinh học là các đại phân tử sinh học [15].Các đại phân tử sinh học chính là protein, nucleic acid, lipid vàpolysaccaride, trong đó quan trọng hơn cả là nucleic acid lưu trữ thông tin ditruyền và protein - biểu hiện của vật chất sống Protein được hình thành từ 20loại amino acid, có cấu trúc không gian đặc trưng Chức năng của protein rất

đa dạng: tham gia vào cấu tạo tế bào, xúc tác các phản ứng chuyển hóa, nhậnbiết các phân tử lạ, tham gia vào các quá trình sống như actin và myosin trong

sự vận động cơ Nucleic acid được hình thành từ 4 loại nucleotide (adenine,thymine, cytosine, và guanine) và gồm hai loại: DNA và RNA Phân tử DNA

là một chuối xoắn kép do sự kết hợp của hai mạch bổ sung RNA là một phân

tử mạch đơn, gồm ba loại: mRNA mang thông tin mã hóa cho protein, rRNA

là một thành phần của ribosome và tRNA tham gia vào quá trình dịch mã.Trong phần này chúng tôi giới thiệu tổng quan về các đối tượng nghiên cứucủa BioInformatics; Cấu trúc và chức năng của Protein; Các phương phápphân loại cấu trúc Protein

3.1.1 Chủ thuyết trung tâm của sinh học phân tử

Nhiễm sắc thể (chromosomes) là các đại phân tử DNA chứa rất nhiềugene, các vật chất cơ bản và các đơn vị mang chức năng di truyền Một gene

là một chuối gồm nhiều nucleotide, gene mang thông tin quy định cấu trúccủa protein Hệ gene của con người rất lớn, nhưng mới chỉ có khoảng 10%được giải mã Hệ gene bao gồm nhiều vùng chưa được giải mã, những chức

Ngày đăng: 09/12/2016, 22:54

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Lưu Thị Hải Yến (2008), Luận văn Thạc sỹ - Đề tài: Nghiên cứu phát triển hệ thống đa phương tiện trên cơ sở phân cụm dữ liệu, Đại học Thái Nguyên- Khoa công nghệ thông tin Sách, tạp chí
Tiêu đề: Nghiên cứu phát triển hệ thống đa phương tiện trên cơ sở phân cụm dữ liệu
Tác giả: Lưu Thị Hải Yến
Năm: 2008
[2] Nguyễn Q.D., Trần Đ.H., Trần T.T.B., Phạm T.H. (2011). Dự đoán chức năng protein bằng phương pháp phân cụm dữ liệu, Đặc san CNTT, Tạp chí Khoa học ĐHSPHN, 56, 3-16.Tiếng Anh Sách, tạp chí
Tiêu đề: Đặc san CNTT, Tạp chí Khoa học ĐHSPHN
Tác giả: Nguyễn Q.D., Trần Đ.H., Trần T.T.B., Phạm T.H
Năm: 2011
[3] A.K Jain, M.N Murty and P,J Flyn (1999), Data Clustering: A Review, ACM Computing Survey Sách, tạp chí
Tiêu đề: Data Clustering: A Review
Tác giả: A.K Jain, M.N Murty and P,J Flyn
Năm: 1999
[4] A.K Jain, Richard C. Dubes (1988), Algorithms for Clustering Data, Prentice Hall, Englewood Cliffs, New Jersey 07632 Sách, tạp chí
Tiêu đề: Algorithms for Clustering Data
Tác giả: A.K Jain, Richard C. Dubes
Năm: 1988
[5] Patrice Koehl (2006), Protein Structure Classification, Department of Computer Science and Genome Center, University of California, Davis, California Sách, tạp chí
Tiêu đề: Protein Structure Classification
Tác giả: Patrice Koehl
Năm: 2006
[6] Michiel Jan Laurens de Hoon (2010), The C Clustering Library for cDNA microarray data, The University of Tokyo, Institute of Medical Science, Human Genome Center, University of Tokyo, 4-6-1 Shirokanedai, Minato-ku, Tokyo 108-8639, Japan Sách, tạp chí
Tiêu đề: The C Clustering Library for cDNA microarray data
Tác giả: Michiel Jan Laurens de Hoon
Năm: 2010
[7] Michael Eisen; updated by Michiel de Hoon (2002), Cluster 3.0 Manual , Human Genome Center, University of Tokyo, 4-6-1 Shirokanedai, Minato-ku, Tokyo 108-8639, Japan Sách, tạp chí
Tiêu đề: Cluster 3.0 Manual
Tác giả: Michael Eisen; updated by Michiel de Hoon
Năm: 2002
[8] Michelle Kamber and Jiawei Han (2001), Data Mining: Concepts and Techniques. Morgan Kaufmann Publishers, University of Illinois at Urbana-Champaign, 500 Sansome Street, Suite 400, San Francisco, CA 94111 Sách, tạp chí
Tiêu đề: Data Mining: Concepts and Techniques
Tác giả: Michelle Kamber and Jiawei Han
Năm: 2001
[9] Michael R. Anderberg (1973), Cluster analysis for applications. Academic Press Sách, tạp chí
Tiêu đề: Cluster analysis for applications
Tác giả: Michael R. Anderberg
Năm: 1973
[10] Periklis Andritsos (2002), Data Clustering Technique, University of Toronto, Department of Computer Science.Nguồn internet Sách, tạp chí
Tiêu đề: Data Clustering Technique
Tác giả: Periklis Andritsos
Năm: 2002

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Phân cụm các vector truy vấn - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 1.1 Phân cụm các vector truy vấn (Trang 10)
Hình 1.2: Hình thành cụm cha Cụm không chỉ làm truy tìm hiệu quả mà còn làm dễ dàng cho việc duyệt - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 1.2 Hình thành cụm cha Cụm không chỉ làm truy tìm hiệu quả mà còn làm dễ dàng cho việc duyệt (Trang 11)
Hình 1.3: Các tỉ lệ khác nhau có thể dẫn tới các cụm khác nhau Tuy nhiên chú ý rằng đây không chỉ là 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 vector vào trong một  - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 1.3 Các tỉ lệ khác nhau có thể dẫn tới các cụm khác nhau Tuy nhiên chú ý rằng đây không chỉ là 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 vector vào trong một (Trang 17)
Bảng dự đoá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 x, y bằng các biến số nhị phân 0 và 1 [8]: - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Bảng d ự đoá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 x, y bằng các biến số nhị phân 0 và 1 [8]: (Trang 19)
Hình 2.1 Sơ đồ phân loại các phương pháp phân cụm Trong sơ đồ phân thành hai nhóm chính là phân cụm phân cấp và phân  cụm dựa vào cụm trung tâm (K-means, PAM, CLARA, CLARANS). - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 2.1 Sơ đồ phân loại các phương pháp phân cụm Trong sơ đồ phân thành hai nhóm chính là phân cụm phân cấp và phân cụm dựa vào cụm trung tâm (K-means, PAM, CLARA, CLARANS) (Trang 23)
Hình 2.2: Các thiết lập để xác định danh giới các cụm ban đầu - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 2.2 Các thiết lập để xác định danh giới các cụm ban đầu (Trang 24)
Hình 2.3 Tính toán trọng tâm của các cụm mới Các bước cơ bản của thuật toán K- means - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 2.3 Tính toán trọng tâm của các cụm mới Các bước cơ bản của thuật toán K- means (Trang 25)
Hình 2.5 Ví dụ minh họa thuật toán PAM [8] - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 2.5 Ví dụ minh họa thuật toán PAM [8] (Trang 29)
Hình 3.1 Chủ thuyết trung tâm của sinh học phân tử - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 3.1 Chủ thuyết trung tâm của sinh học phân tử (Trang 35)
Hình 3.3 Các kiểu cấu trúc của protein - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 3.3 Các kiểu cấu trúc của protein (Trang 37)
Hình 3.4 Cấu trúc bậc 2 thường thấy của protein [5]. - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 3.4 Cấu trúc bậc 2 thường thấy của protein [5] (Trang 38)
Hình 3.6 Sự phát triển của cấu trúc dữ liệu protein [5] - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 3.6 Sự phát triển của cấu trúc dữ liệu protein [5] (Trang 40)
Hình 4.2 Giao diện chọn tệp đầu vào - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 4.2 Giao diện chọn tệp đầu vào (Trang 54)
Hình 4.4  Giao diện tab chỉnh sửa dữ liệu - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 4.4 Giao diện tab chỉnh sửa dữ liệu (Trang 55)
Hình 4.5 Giao diện Tab k-Means, sử dụng K-means và K-medians - Phân cụm dữ liệu và ứng dụng trong phân loại cấu trúc protein
Hình 4.5 Giao diện Tab k-Means, sử dụng K-means và K-medians (Trang 57)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w