Khóa luận Nghiên cứu một số phương pháp phân cụm cho dữ liệu gene microarray

Dữ liệu microarrayslà những bước đột phá mới nhất trong sinh học phân tử. Nó cho phép kiểm tra mô tả gene của khoảng mười nghìn gene đồng thời. Kết quả của những thí nghiệm sử dụng công nghệ microarray này sẽ được đem phân tích ở mức thấp và cho ra một tập dữ liệu gọi là dữ liệu gene micrarray. Dữ liệu này sẽ được sử dụng cho việc phân tích mức cao hay còn gọi là phân tích cụm (Cluster analysis). Phân cụm gene tức là nhóm những gene thành những cụm với những đặc tính tương đồng. Mới xuất hiện từ đầu những năm 1990 đến nay đã và đang có rất nhiều phòng thí nghiệm, công trình khoa học nghiên cứu về vấn đề phân cụm cho dữ liệu gene micoarray và vấn đề này ngày càng được quan tâm đầu tư nhiều hơn, bởi vì những ứng dụng vô cùng to lớn của kết quả nghiên cứu vấn đề này trong nhiều lĩnh vực như: y học là “chuẩn đoán và điều trị bệnh, khoa học môi trường là “ xác định vi sinh vật” ”, nông nghiệp . Khóa luận này sẽ giúp chúng ta tìm hiểu về một số phương pháp phân cụm cho dữ liệu gene microarray bao gồm “Hierarchical”, “Kmeans”, “SOM”, “PAM” và phương pháp phân cụm mới dựa trên khoảng cách “intra-cluster”. Đánh giá ưu nhược điểm của các phương pháp phân cụm này và cuối cùng là phát triển một chương trình có chức năng “phân cụm”cho “dữ liệu microarray gene” mà sử dụng phương pháp phân cụm “tối ưu hơn cả”.

pdf46 trang | Chia sẻ: lvbuiluyen | Lượt xem: 2908 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Khóa luận Nghiên cứu một số phương pháp phân cụm cho dữ liệu gene microarray, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đỗ Thị Nương NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN CỤM CHO DỮ LIỆU GENE MICROARRAY KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI- 2010 Generated by Foxit PDF Creator © Foxit Software For evaluation only. ii ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đỗ Thị Nương NGHIÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN CỤM CHO DỮ LIỆU GENE MICROARRAY KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn: Ths. Nguyễn Thị Hậu HÀ NỘI-2010 Generated by Foxit PDF Creator © Foxit Software For evaluation only. i Lời cảm ơn Trước tiên, tôi muốn gửi lời cảm ơn sâu sắc đến cô Nguyễn Thị Hậu người đã tận tình chỉ bảo tôi trong suốt quá trình thực hiện khóa luận. Tôi cũng xin chân thành cảm ơn các thấy cô giáo của trường Đại Học Công Nghệ, những người đã tận tình chỉ bảo dạy dỗ và trang bị cho tôi những kiến thức quý báu trong suốt 4 năm học trong trường. Tôi cũng muốn gửi lời cảm ơn tới những bạn trong lớp K51CD những người đã đồng hành cùng tôi trong suốt những năm tháng ở giảng đường đại học. Các bạn cũng luôn động viên và giúp đỡ tôi rất nhiều trong thời gian tôi làm khóa luận. Cuối cùng, tôi cũng muốn gửi lời cảm ơn vô hạn đến gia đình và các bạn của tôi những người luôn ở bên động viên tôi để tôi có thể hoàn thành tốt khóa luận này. Hà Nội, ngày 17 tháng 5 năm 2010 Sinh Viên Đỗ Thị Nương Generated by Foxit PDF Creator © Foxit Software For evaluation only. ii Tóm tắt nội dung Dữ liệu microarrays là những bước đột phá mới nhất trong sinh học phân tử. Nó cho phép kiểm tra mô tả gene của khoảng mười nghìn gene đồng thời. Kết quả của những thí nghiệm sử dụng công nghệ microarray này sẽ được đem phân tích ở mức thấp và cho ra một tập dữ liệu gọi là dữ liệu gene micrarray. Dữ liệu này sẽ được sử dụng cho việc phân tích mức cao hay còn gọi là phân tích cụm (Cluster analysis). Phân cụm gene tức là nhóm những gene thành những cụm với những đặc tính tương đồng. Mới xuất hiện từ đầu những năm 1990 đến nay đã và đang có rất nhiều phòng thí nghiệm, công trình khoa học nghiên cứu về vấn đề phân cụm cho dữ liệu gene micoarray và vấn đề này ngày càng được quan tâm đầu tư nhiều hơn, bởi vì những ứng dụng vô cùng to lớn của kết quả nghiên cứu vấn đề này trong nhiều lĩnh vực như: y học là “chuẩn đoán và điều trị bệnh, khoa học môi trường là “ xác định vi sinh vật” ”, nông nghiệp…. Khóa luận này sẽ giúp chúng ta tìm hiểu về một số phương pháp phân cụm cho dữ liệu gene microarray bao gồm “Hierarchical”, “Kmeans”, “SOM”, “PAM” và phương pháp phân cụm mới dựa trên khoảng cách “intra-cluster”. Đánh giá ưu nhược điểm của các phương pháp phân cụm này và cuối cùng là phát triển một chương trình có chức năng “phân cụm”cho “dữ liệu microarray gene” mà sử dụng phương pháp phân cụm “tối ưu hơn cả”. Generated by Foxit PDF Creator © Foxit Software For evaluation only. iii Mục lục Lời cảm ơn........................................................................................................................... i Tóm tắt nội dung ...............................................................................................................ii Mục lục ...............................................................................................................................iii Danh mục hình vẽ bảng biểu ..........................................................................................iv Mở đầu ................................................................................................................................5 Chương 1: Giới thiệu bài toán phân cụm cho dữ liệu gene microarray...................7 1.1. Bài toán phân cụm nói chung ...............................................................................7 1.1.1. Khái niệm........................................................................................................7 1.1.2. Các kiểu phân cụm khác nhau .......................................................................7 1.1.3. Những loại cụm khác nhau ............................................................................8 1.2. Phân cụm cho dữ liệu gene microarray...............................................................9 1.2.1. Giới thiệu công nghệ DNA microarray.........................................................9 1.2.2. Thí nghiệm microarray...................................................................................9 1.3. Ứng dụng bài toán phân cụm cho dữ liệu gene microarray..............................13 Chương 2: Một số phương pháp phân cụm cho dữ liệu gene microarray .............14 2.1. Cơ sở toán học .....................................................................................................14 2.1.1. Biểu diễn dữ liệu gene microarraay ............................................................14 2.1.2. Vector mô tả .................................................................................................14 2.1.3. Ma trận mô tả gene.......................................................................................14 2.1.4. Khoảng cách hay sự tương đồng .................................................................15 2.2. Một số phương pháp phân cụm ..........................................................................17 2.2.1. Phân cụm Hierarchical .................................................................................17 2.2.2. K-Means Clustering (KMC)........................................................................19 2.2.3. Self-Organizing Maps(SOMs).....................................................................20 2.2.4. Principal Components Analysis-(PCA) ......................................................21 2.3. Phương pháp phân cụm intra-cluster ....................................................................22 Chương 3: Đề xuất hướng giải quyết của bài toán phân cụm cho dữ liệu gene microarray ........................................................................................................................24 3.1. Phương pháp phân cụm.......................................................................................24 3.1.1. Lý do chọn K-means .......................................................................................24 3.1.2. Lý do chọn “intra-cluster” ..............................................................................24 3.2. Một số phương pháp khắc phục nhược điểm của k-means...............................25 3.2.1. Lọc dữ liệu ....................................................................................................25 3.2.2. K-medians .....................................................................................................25 3.2.3. Xữ lý dữ liệu khuyết: ...................................................................................25 3.2.4. Tìm giải pháp tối ưu “toàn cục” ..................................................................26 3.2.5. Việc xác định số cụm k................................................................................26 Chương 4: Phát triển ứng dụng cho bài toán phân cụm dữ liệu gene microarray ............................................................................................................................................27 Generated by Foxit PDF Creator © Foxit Software For evaluation only. iv 4.1. Các chức năng của ứng dụng..............................................................................27 4.1.1.Mô hình tương tác giữa các module................................................................27 4.1.2. Tải, Lưu file, lọc, điều chỉnh dữ liệu và xử lý dữ liệu khuyết ...................28 4.1.3. Phân cụm K-means.......................................................................................31 4.3. Định dạng dữ liệu vào, ra....................................................................................32 4.3.1. Dữ liệu tải vào ..............................................................................................32 4.3.2. Định dạng dữ liệu ra.....................................................................................33 4.4. Ngôn ngữ lập trình ..............................................................................................33 4.4.1. Một số ưu điểm của ngôn ngữ lập trình Java.............................................33 4.5. Môi trường phát triển ứng dụng .........................................................................35 Chương 5: Thực nghiệm và đánh giá ...........................................................................36 5.1. Cài đặt ứng dụng “Gene Cluster”.......................................................................36 5.1.1. Cài đặt ứng dụng ..........................................................................................36 5.2.1. Mô tả các tập dữ liệu thực nghiệm ..............................................................36 5.2.2. Thực nghiệm trên “Cluster 3.0” và “Gene Cluster”...................................37 5.3. Kết quả và đánh giá .............................................................................................38 5.3.1. Kết quả ..........................................................................................................38 5.3.2. Đánh giá ........................................................................................................40 Tổng kết ............................................................................................................................42 Tài liệu tham khảo...........................................................................................................43 Danh mục hình vẽ bảng biểu Hình 1: Thí nghiệm microarray ........................................................................................11 Hình 2: Minh họa việc tính dữ liệu mô tả gene. ..............................................................12 Hình 3: Ví dụ về vector mô tả gene trong log .................................................................14 Hình 4: Ví dụ về ma trận mô tả gene ...............................................................................15 Hình 5: Mô tả những phương pháp linkage khác nhau...................................................19 Hình 6 : Sơ đồ DFD mô tả sự tương tác dữ liệu và chức năng.......................................28 Hình 7: Giao diện cho menu của chương trình................................................................29 Hình 8: Giao diện cho chức năng filter data ....................................................................29 Hình 9: Giao diện minh hoa cho chức năng adjust data. ................................................30 Hình 10: Giao diên chức năng xử lý dữ liệu khuyết. ......................................................31 Hình 11: Giao diện chính của chương trình phân cụm “Gene Cluster”.........................32 Hình 12 : Mô tả định dạng dữ liệu tải vào. ......................................................................32 Hình 13: Mô hình thực thi của một chương trình bằng Java. .........................................34 Hình 14: Hình ảnh phóng to của một số gene trong kết quả phân cụm K-means trên “Cluster 3.0” ......................................................................................................................39 Hình 15: Hình ảnh phóng to của một số gene trong kết quả phân cụm K-means trên “Gene Cluster” không sử dụng chức năng sử lý dữ liệu khuyết. ...................................39 Hình 15: Hình ảnh phóng to của một số gene trong kết quả phân cụm K-means trên “Gene Cluster” sử dụng chức năng sử lý dữ liệu khuyết. ...............................................40 Hình 16: Kết quả thời gian chạy Kmeans trên “dataset1” ..............................................40 Generated by Foxit PDF Creator © Foxit Software For evaluation only. 5 Mở đầu Hầu hế những tế bào trong các cơ quan của sinh vật nhân thực-eukaryota đều chứa những bổ xung đầy đủ của những gene mà tạo lên toàn bộ hệ gene của cơ quan đó. Những gene này được biểu hiện một cách chọn lọc trong mỗi tế bào phụ thuộc vào từng loại tế bào, từng loại mô, và những điều kiện cả bên trong lẫn bên ngoài tế bào. Do sự phát triển của những kỹ thuật sinh học phân tử và tái tổ hợp gene mà đã đưa ra một kết luận rằng những sự kiện quan trọng trong đời sống của một tế bào là được quy định bởi những nhân tố mà làm thay đổi những miêu tả của các gene của chúng. Vì vậy việc hiểu mô tả của các gene đã trở thành lĩnh vực quan trọng trong việc nghiên cứu sinh học hiện đại. Hai câu hỏi chính đặt ra khi quản lý việc miêu tả của gene là: Việc mô tả gene làm cách nào có thể phát hiện ra chức năng của tế bào và bệnh lý của tế bào? Những câu hỏi này có thể được phân chia chi tiết như sau: Mức độ mô tả của gene trong những tế bào và những trạng thái khác nhau thì khác nhau như thế nào? Những chức năng của các genes khác nhau là gì? Và những mô tả của những gene này thay đổi như thể nào tương ứng với những thay đổi vật lý bên trong môi trường của tế bào. Mô tả gene bị tác động bởi những loại bệnh như thế nào? Những gene nào quy định tính di truyền của các bệnh. Những gene nào bị tác động trong quá trình điều trị bệnh. Những thay đổi của những giá trị mô tả gene là gì trong theo chuỗi thời gian tiến hành thí nghiệm. Trước khi phát triển công nghệ DNA microarray đã có một số phương pháp được sử dụng để phân tích những mẫu mô tả của những gene. Tuy nhiên những phương pháp này đều có hạn chế là chỉ thực hiện được trên một số ít các mẫu gene vì vậy không đem lại hiệu quả cao. Khi có sự xuất hiện của công nghệ micoarray, nó đã đưa ra được bước chuyển biến mạnh mẽ trong việc phân tích những mẫu mô tả của hàng chục nghìn gene một cách nhanh chóng và hiệu quả. Để có thể trả lời một cách chính xác và thỏa đáng những câu hỏi trên thì bài toán đặt ra là “ tìm các phương pháp để phân cụm cho dữ liệu gene microarray một cách hiệu quả”. Khóa luận này sẽ giúp tìm hiểu về một số phương pháp cụm cho phổ biến. Tìm ra những ưu nhược điểm của những phương pháp này và nghiên cứu những giải pháp khắc phục những ưu nhược điểm đó. Ngoài phần MỞ ĐẦU và KẾT LUẬN, kết cấu của khoá luận bao gồm các chương sau: Chương 1: Giới thiệu bài toán phân cụm cho dữ liệu gene microarray. Giới thiệu về công nghệ DNA microarray, Thí nghiệm microarray và ứng dụng. Trình bày thí nghiệm sử dụng công nghệ DNA microarray sau đó là việc phân tích kết Generated by Foxit PDF Creator © Foxit Software For evaluation only. 6 quả của thí nghiệm này ở mức thấp và mức cao. Đưa ra một ứng dụng cụ thể sử dụng công nghệ này. Chương 2: Một số phương pháp phân cụm cho dữ liệu gene microarray. Tìm hiểu một số phương pháp phân cụm phổ biển. Đánh giá những ưu nhược điểm, tìm hiểu và đưa ra những hướng tiếp cận mới để khắc phục một số nhược điểm của các phương pháp này. Trình bày một ứng dụng thực tế của việc phân cụm cho dữ liệu gene microarray. Chương 3: Hướng giải quyết của bài toán phân cụm cho dữ liệu gene microarray. Chương này sẽ đưa ra phương pháp phân cụm được chọn để cài đặt và một số phương pháp khắc phục nhược điểm của phương pháp này. Chương 4: Phát triển ứng dụng phân cụm cho dữ liệu gene microarray. Chương 5: “Thực nghiệm, đánh giá và kết luận”. Thực nghiệm trên phần mềm phân cụm trên một số tập dữ liệu và đánh giá kết quả. Generated by Foxit PDF Creator © Foxit Software For evaluation only. 7 Chương 1: Giới thiệu bài toán phân cụm cho dữ liệu gene microarray 1.1. Bài toán phân cụm nói chung Trước khi thảo luận việc phân cụm cho dữ liệu gene microarray ta sẽ đi tìm hiểu về khái niệm phân cụm nói chung. Đầu tiên, ta sẽ đi định nghĩa về phân tích cụm, chứng minh vì sao nó khó và giải thích mối quan hệ của nó với các kỹ thuật nhóm dữ liệu khác. Sau đó chúng ta sẽ đi khai thác 2 chủ đề quan trọng: (1) những cách nhóm một tập các đối tượng thành một tập những cụm và (2) những loại cụm. 1.1.1. Khái niệm Phân cụm là nhóm những đối tượng dựa trên thông tin mà tìm thấy trong dữ liệu miêu tả đối tượng và những mối quan hệ của chúng. Mục đích của việc phân cụm là để đạt được những đối tượng trong cùng một cụm là giống nhau và khác với những đối tượng của cụm khác. Tính tương đồng trong một nhóm càng nhiều và sự khác nhau giữa những nhóm càng lớn thì các cụm càng phân biệt nhau hơn.[12] Việc đưa ra cụm tốt nhất còn phụ thuộc vào bản chất của dữ liệu và kết quả mong muốn. Phân tích cụm là liên quan đến những kỹ thuật mà để phân chia những đối tượng thành nhóm. Ví dụ, phân cụm có thể được xem như là một dạng của phân lớp ở đó nó tạo ra việc gán nhãn cho những đối tượng những cái nhãn lớp(cụm). Tuy nhiên nó dẫn xuất những nhãn này chỉ từ dữ liệu của các đối tượng. Trái lại, việc phân lớp còn được xem như là phân lớp có quan sát; ví dụ, những đối tượng mới, chưa được gán nhãn sẽ được gán cho một nhãn lớp sử dụng một mô hình được phát triển từ những đối tượng mà đã biết trước nhãn lớp của chúng. Vì lý do này phân cụm đôi khi được biết đến như phân lớp không có quan sát. Cũng như vậy, trong khi những thuật ngữ phân mảnh và phân vùng đôi khi được sử dụng với nghĩa tương tự như phân cụm, những thuật ngữ này thường được sử dụng cho những tiếp cận bên ngoài phạm vi truyền thông của việc phân tích cụm. Ví dụ, việc phân vùng thường được sử dụng liên quan đến kỹ thuật phân chia những đồ thị thành những đồ thị con và không liên quan nhiều đến việc phân cụm. Phân mảnh thường chỉ đến việc phân chia dữ liệu thành những nhóm sử dụng những kỹ thuật đơn giản ví dụ những hình ảnh có được phân chia thành những mảnh chỉ dựa trên cường độ điểm ảnh và mầu sắc hay con người có thể được chia thành những nhóm dựa trên thu nhập của họ. Tuy nhiên cũng có một vài công việc liên quan đên phân vùng đồ thị và phân mảnh thị trường là liên quan đến phân cụm. 1.1.2. Các kiểu phân cụm khác nhau Trong phân trước tôi đã trình bày định nghĩa phân cụm, phần này sẽ trình bày về các kiểu phân cụm khác nhau: Phân cụm Cấu trúc với Phân vùng (Hierarchical vs Partitional) [12] Generated by Foxit PDF Creator © Foxit Software For evaluation only. 8 Kiểu phân cụm được thảo luận nhiều nhất trong số những kiểu phân cụm là tập những cụm được “lồng nhau” hay “không lồng nhau” hay theo một thuật ngữ truyền thống hơn là “cấu trúc” hay “phân vùng”. Phân cụm phân vùng đơn giản là phân chia tập những đối tượng dữ liệu thành những tập con (những cụm) không gối trồng lên nhau như là mỗi đối tượng dữ liệu chỉ ở một tập con. Nếu chúng ta cho phép những cụm có những cụm con thì chúng ta sẽ thu được phân cụm cấu trúc, chúng là một tập những cụm lồng nhau mà có thể được tổ chức như một cây. Mỗi nút (cụm-cluster) trên cây ngoại trừ nút lá là hợp của những con (những cụm con) của nó, và gốc của cây là những cụm mà chứa tất cả những đối tượng. Phân cụm mức đỉnh (exclusive), gối chồng (overlapping) và mờ (fuzzy)[12] Phân cụm “mức đỉnh”: Gán mỗi đối tượng tới một cụm đơn. Có rất nhiều trường hợp mà một đối tướng có thể phù hợp cho nhiều hơn một cụm, những trường hợp này được gọi là non-exclusive. Theo một nghĩa chung nhất overlapping hay non-exclusive thường được sử dụng để chỉ đến một đối tượng mà đồng thời có thể thuộc nhiều hơn một cụm. Phân cụm non-exclusive một đối tượng là ở giữa 2 hay nhiều hơn cụm và có thể được gán cho bất kỳ cụm nào trong số những cụm này. Trong phân cụm fuzzing mỗi đối tượng phụ thuộc vào mỗi cụm với ‘trọng số thành viên ‘ nằm giữa 0 và 1 là 0 tức là tuyệt đối không phụ thuộc, 1 tức là tuyệt đối phụ thuộc. Theo nghĩa khác, những cụm này được xem như là những tập ‘mờ’ hay fuzzy. ( Theo toán học những tập mờ là tập mà một đối tượng phụ thuộc vào