ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN HOÀNG ANH NGHIÊN CỨU THUẬT TOÁN TÌM KIẾM CHUỖI DNA SỬ DỤNG PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ... ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN HOÀNG ANH
NGHIÊN CỨU THUẬT TOÁN TÌM KIẾM CHUỖI DNA
SỬ DỤNG PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ
Trang 2ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN HOÀNG ANH
NGHIÊN CỨU THUẬT TOÁN TÌM KIẾM CHUỖI DNA
SỬ DỤNG PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: Tiến sĩ Nguyễn Thị Hậu
HÀ NỘI – 2016
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan nội dung của luận văn “Nghiên cứu thuật toán tìm kiếm
chuỗi DNA sử dụng phương pháp tương tự nhanh” là sản phẩm do tôi thực hiện
dưới sự hướng dẫn của TS Nguyễn Thị Hậu Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình
Hà Nội, ngày 20 tháng 9 năm 2016
TÁC GIẢ
Nguyễn Hoàng Anh
Trang 4Một lần nữa tôi xin được gửi lời cảm ơn đến tất cả các thầy cô giáo, bạn bè và gia đình đã giúp đỡ tôi trong thời gian vừa qua Tôi xin kính chúc các thầy cô giáo, các anh chị và các bạn mạnh khỏe và hạnh phúc
Hà Nội, ngày 20 tháng 9 năm 2016
TÁC GIẢ
Nguyễn Hoàng Anh
Trang 5MỤC LỤC
LỜI CAM ĐOAN 3
LỜI CẢM ƠN 4
DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT 7
GIỚI THIỆU 8 CHƯƠNG 1 TỔNG QUAN VỀ CÁC THUẬT TOÁN TÌM KIẾM CHUỖI DNA Error! Bookmark not defined
1.1 Phương pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn Error!
Bookmark not defined.
1.2 Phương pháp liên kết nhạy cảm đầy đủ Error! Bookmark not defined 1.3 Phương pháp tìm kiếm tương tự nhanh Error! Bookmark not defined 1.4 Phương pháp sử dụng mô hình phù hợp gần đúngError! Bookmark not defined 1.5 Phương pháp sử dụng mô hình kết hợp chính xác và gần chính xác Error!
Bookmark not defined.
CHƯƠNG 2 N-GRAM VÀ PHƯƠNG PHÁP TÌM KIẾM CHUỖI TƯƠNG
TỰ NHANH ÁP DỤNG N-GRAM .Error! Bookmark not defined
2.1 Mô hình N-Gram Error! Bookmark not defined.
2.1.1 Một số khái niệm Error! Bookmark not defined
2.1.2 Mô hình ngôn ngữ N-gram Error! Bookmark not defined
2.1.3 Khó khăn khi xây dựng mô hình ngôn ngữ N-gram : Error! Bookmark not defined
2.1.4 Các phương pháp khắc phục cụm N-Gram phân bố không đềuError! Bookmark not defined.
2.2 Phương pháp tương tự nhanh áp dụng N-gram tìm kiếm chuỗi DNA.Error!
Bookmark not defined.
Trang 62.2.1 Phân đoạn DNA Error! Bookmark not defined
2.2.2 Các “từ DNA” Error! Bookmark not defined
2.2.3 Quá trình tìm kiếm chuỗi và hiển thị kết quả Error! Bookmark not defined
2.3 Bảng kết quả các lần thử phương pháp tìm kiếm chuỗi tương tự nhanh áp dụng N-Gram Error! Bookmark not defined.
2.3.1 Định dạng chuỗi cơ sở dữ liệu Error! Bookmark not defined
2.3.2 Bảng kết quả các lần thử phương pháp tìm kiếm chuỗi tương tự nhanh áp dụng
N-Gram Error! Bookmark not defined
2.4 Đánh giá phương pháp tìm kiếm chuỗi tương tự nhanh áp dụng N-GramError!
Bookmark not defined.
2.4.1 Cải thiện thời gian tìm kiếm Error! Bookmark not defined
2.4.2 Tiết kiệm bộ nhớ trong quá trình tìm kiếm Error! Bookmark not defined CHƯƠNG 3 THỰC NGHIỆM SO SÁNH PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ NHANH DỰA TRÊN N-GRAM VỚI PHƯƠNG PHÁP BLAST
VÀ PHƯƠNG PHÁP SMITH-WATERMAN Error! Bookmark not defined
3.1 Môi trường thực nghiệm Error! Bookmark not defined 3.2 Thực nghiệm đánh giá phương pháp tìm kiếm tương tự nhanh áp dụng N-Gram với phương pháp BLAST và phương pháp Smith-Water ManError! Bookmark not
defined.
3.3 Phân tích và đánh giá kết quả thực nghiệm Error! Bookmark not defined.
KẾT LUẬN Error! Bookmark not defined TÀI LIỆU THAM KHẢO 12
Trang 7DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT
DNA Deoxy Ribonucleic Acid Phân tử mang cấu trúc gen
SNP Single nucleotide polymorphisms Tính đa hình của phân tử
nucleotit Mỗi SNP biểu diễn một biến đổi trong một khối chuỗi DNA
CPU Cental Processing Unit Bộ xử lý trung tâm
RAM Random access memory Bộ nhớ truy cập ngẫu nhiên NCBI National Center for
Biotechnology Information
Trung tâm quốc gia thông tin công nghệ sinh
Trang 8Differential Direct coding Mã hóa trực tiếp phần khác
biệt HMM Hidden Markov Modeling Mô hình Markov ẩn
BLAST Basic Local Alignment Search
Tool
Công cụ tìm kiếm cục bộ theo mẫu có sẵn
HTS High – Throughput Sequencing Trình tự chuỗi đa lượng
GIỚI THIỆU
Việc phát hiện ra DNA là một bước ngoặt lớn trong khoa học sinh học nói riêng và cuộc sống của con người nói chung Hiện nay, các nhà khoa học đã tìm ra rất nhiều cấu trúc DNA và giải thích được nhiều câu hỏi về di truyền ở các loài, các căn bệnh, dị tật di truyền, khoa học hình sự,… và ngày càng phát hiện thêm rất nhiều cấu trúc DNA mới, điều đó đã và đang tạo ra một khối lượng khổng lồ dữ liệu các chuỗi gen phục vụ cho y sinh học hiện đại Kích thước dữ liệu ngày càng tăng đặt ra vấn đề về chi phí cho không gian lưu trữ và tốc độ truy cập, truyền tải DNA (DeoxyriboNucleic Acid) là tên hóa học chỉ các phân tử mang cấu trúc gen trong tất cả các thực thể sống DNA gồm một chuỗi được tạo nên từ 4 loại đơn vị nucleotide, mỗi loại gồm: 1 đơn vị đường carbon 5 (2’-deoxyribose), 1 nhóm phốt phát (phosphate) và 1 trong 4 thành phần cơ bản Adenine, Cystosine, Guanine và Thymine gọi là các bazơ Mỗi phân tử đường được gắn với ¼ thành phần cơ bản Mỗi thành phần cơ bản là 1 base Số lượng base ở người là khoảng 3 tỷ, đó là con
Trang 9số vô cùng lớn Dạng đơn giản nhất của DNA trong 1 tế bào là 1 cấu trúc dây xoắn đôi, trong đó 2 sợi DNA đơn xoắn quanh nhau theo hình xoắn ốc thuận tay phải
Bộ gen của con người gồm khoảng 3 tỉ đặc trưng trên 23 cặp nhiễm sắc thể (NST)
Do đó, cơ sở dữ liệu hệ gen là vô cùng lớn và phức tạp Để lưu trữ, truy cập và xử
lý dữ liệu này một cách hiệu quả là một nhiệm vụ rất khó khăn DNA có chức năng chính là lưu trữ, bảo quản và truyền đạt thông tin di truyền về cấu trúc và toàn bộ các loại protein của cơ thể sinh vật, do đó quy định các tính trạng của cơ thể sinh vật
DNA có chức năng chính là lưu giữ truyền đạt và bảo quản thông tin di truyền giữa các thế hệ Có rất nhiều ứng dụng từ việc tìm kiếm chuỗi DNA cả trong khoa học và đời sống con người, chẳng hạn như:
Sự di truyền trí thông minh: Các nhà khoa học tiến hành lấy mẫu (có thể lấy
là tế bào máu, niêm mạc miệng, tế bào má, tóc có chân, móng tay, móng chân, cuống rốn sau khi rụng )và nghiên cứu chuỗi gen của những người có chỉ số thông minh cao, sau đó tìm ra những đặc điểm chung Tiến hành nghiên cứu trên tập lớn các mẫu để xác định các chuỗi gen quyết định trí thông minh Từ đó có thể ứng dụng vào sinh học, y học cho con người Qua nghiên cứu cụ thể, các nhà khoa học nhận thấy rằng, 75% trí thông minh của con người do gen quyết định [1]
Kiểm tra quan hệ cùng huyết thống: Phương pháp này hiện nay được ứng dụng phổ biến trong đời sống thường được gọi là xét nghiệm DNA Xét nghiệm DNA là một lĩnh vực đòi hỏi độ chính xác cao Mỗi kết quả của một xét nghiệm DNA huyết thống có thay đổi cuộc sống của một hoặc nhiều người, do vậy cần phải đảm bảo việc xét nghiệm được thực hiện chính xác nhất có thể Tất cả các quá trình tư thu mẫu, tách chiết DNA, phân tích DNA và đọc kết quả đều được làm và kiểm soát theo một quy trình chuẩn, từ đó các kết quả có độ chính xác và ổn định cao nhất Thông thường, có thể lấy hai mẫu xét nghiệm của hai người (hoặc sinh vật khác) từ tóc, tế bào trên da, mẫu máu… Sau đó xét nghiệm các chuỗi gen xem
có độ tương đồng cao hay không Thông thường nếu các mẫu DNA của mẹ, con và
bố nghi vấn khớp với nhau trong từng gene thì độ chính xác có quan hệ huyết thống là 99.9999% có thể kết luận hai mẫu gen có cùng huyết thống [2]
Phát hiện các loại gen gây bệnh: Bác sỹ lấy mẫu máu từ các bệnh nhân bị bệnh, tìm kiếm các bắt cặp trình tự có độ tương đồng cao Sau đó, so sánh các bắt
Trang 10cặp trình tự cao đó với mẫu gen của người bình thường để xem các điểm khác nhau của các mẫu gen đó Từ đó đưa ra kết luận về các mẫu gen có thể gây bệnh Tập hợp các mẫu gen có thể gây bệnh đưa vào cơ sở dữ liệu để làm mẫu gen thử cho các lần nghiên cứu sau
Khoa học hình sự: Các điều tra viên lấy các mẫu (tóc, máu, da…), dấu vết tại hiện trường Sau đó, mang đi giám định Tiếp theo, tiến hành so sánh với cơ sở
dữ liệu chuỗi DNA đã lưu Từ đó có thể biết được những ai đã có mặt tại hiện trường vào thời điểm xảy ra vụ việc Tiến hành lấy lời khai các nhân chứng Căn
cứ vào đó có thể kết luận được hung thủ, thời gian, quá trình xảy ra vụ án ADN thường được sử dụng để xác định tội phạm theo một trong hai cách Trường hợp nghi ngờ: Một mẫu DNA của người đó được so sánh với bằng chứng từ hiện trường vụ án Kết quả của sự so sánh này có thể giúp xác định liệu các nghi can phạm tội Trường hợp nghi ngờ chưa được xác định, bằng chứng sinh học từ hiện trường vụ án có thể được phân tích và so sánh với hồ sơ phạm tội trong cơ sở dữ liệu ADN để giúp xác định thủ phạm bằng chứng hiện trường vụ án cũng có thể được liên kết với những cảnh tội phạm khác thông qua việc sử dụng các cơ sở dữ liệu ADN Hiện nay, với trình đô khoa học phát triển, các lớp đào tạo điều tra viên được mở, giúp các học viên tiếp cận công nghệ mới một cách nhanh chóng Có dự
án kêu gọi được nhiều nguồn tài chính lên tới 5 triệu đô la Mỹ [3]
Lý thuyết tiến hóa: Các nhà sinh vật tiến hành lẫy mẫu gen từ các sinh vật hóa thạch So sánh với mẫu gen của các loài có hình thù, độ lớn, màu sắc, các sinh vật nghi ngờ cùng loài… Nếu các mẫu gen của các loài đó giống nhau hoặc có mức
độ tương đồng cao có thể kết luận các sinh vật đó cùng loài hoặc tiến hóa từ mức thấp lên mức cao hơn [4]
Đặc trưng phức tạp của một chuỗi DNA nằm ở chỗ đó là một chuỗi các chỉ
số độ dài khác nhau biểu diễn một phạm vi có thể dự đoán được của các thành phần cơ bản cấu tạo nên DNA Những đặc trưng phức tạp này cho phép tìm kiếm những cấu trúc lặp bên trong một nhiễm sắc thể hoặc qua nhiều nhiễm sắc thể Và cũng chính những đặc trưng này được sử dụng để tìm ra khoảng cách tiến hóa và cấu trúc nên cây phát sinh loài Nên khó có thể đưa ra 1 thuật toán tối ưu để tìm kiếm, giải trình tự các đoạn DNA hiệu quả nhất Nhiều thuật toán tìm kiếm dành riêng cho chuỗi DNA đã được phát triển từ khoảng 30 năm trước
Trang 11Hiện nay, kỹ thuật tìm kiếm dữ liệu chuỗi DNA được sử dụng rộng rãi trong sinh học Có hàng trăm thuật toán đã được đề xuất cho tìm kiếm dữ liệu DNA nhưng nhìn chung các thuật toán tìm kiếm thường được sử dụng là:
Phương pháp áp dụng Mô hình Markov ẩn[5] là phương pháp sử dụng mô hình thống kê, tính toán xác suất Thuật toán dùng phương pháp mô hình hóa quá trình tìm kiếm chuỗi trong đó có sử dụng các tham số quan sát được và các tham số không biết trước – mô hình Markov Sau đó sẽ xác định các tham số không biết trước từ các tham số quan sát được Các tham số của mô hình được rút ra sau đó có thể sử dụng để thực hiện các phân tích kế tiếp Phương pháp này đã được sử dụng rộng rãi trong tin sinh học tuy nhiên chi phí thời gian lớn và các hàm tính toán phức tạp
Phương pháp liên kết nhạy cảm đầy đủ: Vd: thuật toán Smith&Waterman[6]
Phương pháp này được sử dụng để tìm sự giống nhau hoặc có độ tương đồng cao của hai chuỗi Bằng cách lập ma trận, tính độ đo để tìm ra sự giống hoặc có độ tương đồng cao của tất cả độ dài các phân đoạn của hai xâu, hai chuỗi protein hoặc nucleotide Với chuỗi đã được tìm kiếm và có độ tương đồng cao trước đó, phương pháp có thể mở rộng phạm vi tìm kiếm về hai phía (trước hoặc sau) Phương pháp này có ưu điểm là độ chính xác cao Tuy nhiên chi phí thời gian lớn Phương pháp
Trang 12TÀI LIỆU THAM KHẢO
step close to cognitive engineering, Internationnal Business Times, 2015
[2] Jes Battis Blood Relation, 2005
[3] Loretta E Lynch Using DNA to solve crimes, 2014
[4] David Michael Buss & David P Schmitt Evolutionary Psychology and
Feminism Springer Science + Business Media, LLC, 2011
[5] SR Eddy Profile hidden Markov models Bioinformatics, 1998
[6] Temple F Smith and Michael S.Waterman Identification of common
molecular subsequences, 1981
[7] S.F Altschul, T L Madden, A A Schaffer, J Zhang, Z Zhang, W Miller, and
D J Lipman Gapped blast and psi-blast: a new generation of protein database
search programs Nucleic Acids Res, 25:3389–3402, 1997
[8] Ben Langmead Aligning short sequencing reads with Bowtie Curr Protoc
[11] Peter F Brown, Peter V deSouza, Robert L Mercer, Vincent J Della Pietra,
Jenifer C Lai Class-Based n-gram Models of Natural Language, IBM T J
Watson Research Center
[12] Songfang Huang, Steve Renals Power Law Discouting for N-gram Language Models The Centre for Speech Technology Research, University of Edinburgh,
United Kingdom
Trang 13[13] Ben Langmead, Cole Trapnell, Mihai Pop and Steven L Salzberg Ultrafast and memory-efficient alignment of short DNA sequences to the human genome
Genome Biology, 2009
[14] Burrows M, Wheeler DJ Digital Equipment Corporation Technical Report
124, 1994
[15] https://sourceforge.net/projects/bowtie-bio
[16] P.Ferragina, G.Manzini Opportunistic data structures with applications
Foundations of Computer Science, 2000
[17] Tao Tao Single Letter Codes for Nucleotides National Center for
Biotechnology Information, 2011
[18] W.Pearson Searching protein sequence libraries: comparison of the
sensitivity and selectivity of the Smith-Waterman and FASTA algorithms
Genomics, 1991
Trang 14ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN HOÀNG ANH
NGHIÊN CỨU THUẬT TOÁN TÌM KIẾM CHUỖI DNA
SỬ DỤNG PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ
Trang 15ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
NGUYỄN HOÀNG ANH
NGHIÊN CỨU THUẬT TOÁN TÌM KIẾM CHUỖI DNA
SỬ DỤNG PHƯƠNG PHÁP TÌM KIẾM TƯƠNG TỰ
LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: Tiến sĩ Nguyễn Thị Hậu
HÀ NỘI – 2016
Trang 16LỜI CAM ĐOAN
Tôi xin cam đoan nội dung của luận văn “Nghiên cứu thuật toán tìm kiếm
chuỗi DNA sử dụng phương pháp tương tự nhanh” là sản phẩm do tôi thực hiện
dưới sự hướng dẫn của TS Nguyễn Thị Hậu Trong toàn bộ nội dung của luận văn, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình
Hà Nội, ngày 20 tháng 9 năm 2016
TÁC GIẢ
Nguyễn Hoàng Anh
Trang 17Một lần nữa tôi xin được gửi lời cảm ơn đến tất cả các thầy cô giáo, bạn bè và gia đình đã giúp đỡ tôi trong thời gian vừa qua Tôi xin kính chúc các thầy cô giáo, các anh chị và các bạn mạnh khỏe và hạnh phúc
Hà Nội, ngày 20 tháng 9 năm 2016
TÁC GIẢ
Nguyễn Hoàng Anh
Trang 18MỤC LỤC
LỜI CAM ĐOAN 3
LỜI CẢM ƠN 4
DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT 7
GIỚI THIỆU 8 CHƯƠNG 1 TỔNG QUAN VỀ CÁC THUẬT TOÁN TÌM KIẾM CHUỖI DNA Error! Bookmark not defined
1.1 Phương pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn Error!
Bookmark not defined.
1.2 Phương pháp liên kết nhạy cảm đầy đủ Error! Bookmark not defined 1.3 Phương pháp tìm kiếm tương tự nhanh Error! Bookmark not defined 1.4 Phương pháp sử dụng mô hình phù hợp gần đúngError! Bookmark not defined 1.5 Phương pháp sử dụng mô hình kết hợp chính xác và gần chính xác Error!
Bookmark not defined.
CHƯƠNG 2 N-GRAM VÀ PHƯƠNG PHÁP TÌM KIẾM CHUỖI TƯƠNG
TỰ NHANH ÁP DỤNG N-GRAM .Error! Bookmark not defined
2.1 Mô hình N-Gram Error! Bookmark not defined.
2.1.1 Một số khái niệm Error! Bookmark not defined
2.1.2 Mô hình ngôn ngữ N-gram Error! Bookmark not defined
2.1.3 Khó khăn khi xây dựng mô hình ngôn ngữ N-gram : Error! Bookmark not defined
2.1.4 Các phương pháp khắc phục cụm N-Gram phân bố không đềuError! Bookmark not defined.
2.2 Phương pháp tương tự nhanh áp dụng N-gram tìm kiếm chuỗi DNA.Error!
Bookmark not defined.