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

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ự nhanh

66 109 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 66
Dung lượng 3,43 MB

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

Nội dung

ĐẠ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Ự NHANH Ngành: Hệ thống thông tin Chuyên ng

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Ự NHANH

LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN

HÀ NỘI – 2016

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Ự NHANH

Ngành: Hệ thống thông tin

Chuyên ngành: Hệ thống thông tin

Mã số: 60 48 01 04

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 3

LỜ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ềunguồ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íchdẫ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 4

Mộ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 5

MỤ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 13

1.1 Phương pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn 13

1.2 Phương pháp liên kết nhạy cảm đầy đủ 15

1.3 Phương pháp tìm kiếm tương tự nhanh 21

1.4 Phương pháp sử dụng mô hình phù hợp gần đúng 25

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 31

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 35

2.1 Mô hình N-Gram 35

2.1.1 Một số khái niệm 35

2.1.2 Mô hình ngôn ngữ N-gram 36

2.1.3 Khó khăn khi xây dựng mô hình ngôn ngữ N-gram : 37

2.1.4 Các phương pháp khắc phục cụm N-Gram phân bố không đều 38

2.2 Phương pháp tương tự nhanh áp dụng N-gram tìm kiếm chuỗi DNA 39

2.2.1 Phân đoạn DNA 39

2.2.2 Các “từ DNA” 40

2.2.3 Quá trình tìm kiếm chuỗi và hiển thị kết quả 40

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 48

2.3.1 Định dạng chuỗi cơ sở dữ liệu 48

Trang 6

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 50

2.4 Đánh giá phương pháp tìm kiếm chuỗi tương tự nhanh áp dụng N-Gram51 2.4.1 Cải thiện thời gian tìm kiếm 51

2.4.2 Tiết kiệm bộ nhớ trong quá trình tìm kiếm 52

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 53

3.1 Môi trường thực nghiệm 54

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 Man 56

3.3 Phân tích và đánh giá kết quả thực nghiệm 58

KẾT LUẬN 60

TÀI LIỆU THAM KHẢO 62

Trang 7

DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT

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ộtkhối chuỗi DNA

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

7

Trang 8

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óiriê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 rarấ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ấtnhiề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àngtă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 gentrong 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ốtphá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

số 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ăngchí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ể sinhvật

DNA có chức năng chính là lưu giữ truyền đạt và bảo quản thông tin ditruyề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êntậ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à khoahọc nhận thấy rằng, 75% trí thông minh của con người do gen quyết định [1]

Trang 9

 Kiểm tra quan hệ cùng huyết thống: Phương pháp này hiện nay được ứngdụng phổ biến trong đời sống thường được gọi là xét nghiệm DNA Xét nghiệmDNA 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ệmDNA 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ầnphả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 địnhcao nhất Thông thường, có thể lấy hai mẫu xét nghiệm của hai người (hoặc sinhvậ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ếtthố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ắtcặ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 nhaucủ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ậphợ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ử chocá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

án kêu gọi được nhiều nguồn tài chính lên tới 5 triệu đô la Mỹ [3]

Trang 10

 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 sinhvậ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ácsinh

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ứcthấ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ànhphầ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ếmnhữ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ìmkiế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ànhriêng cho chuỗi DNA đã được phát triển từ khoảng 30 năm trước

Hiện nay, kỹ thuật tìm kiếm dữ liệu chuỗi DNA được sử dụng rộng rãi trongsinh học Có hàng trăm thuật toán đã được đề xuất cho tìm kiếm dữ liệu DNAnhư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ếttrướ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ụngrộ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ánphứ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 caocủ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ặcnucleotide Với chuỗi đã được tìm kiếm và có độ tương đồng cao trước đó, phươngphá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ápnà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 11

 Phương pháp sử dụng mô hình phù hợp gần đúng: Vd: Bowtie[8] (là kỹthuật tìm kiếm chuỗi phù hợp với một mô hình gần đúng (chứ không phải là chínhxác) Vấn đề phù hợp được hiểu thành hai ý: tìm kiếm chuỗi phù hợp gần đúng vớicác phân đoạn một chuỗi cho trước và tìm kiếm chuỗi từ điển gần đúng với mẫucần truy vấn Mô hình này sử dụng cách tiếp cận brute-force để tính “độ chỉnh sửa”chuỗi mẫu sao cho gần đúng với tất cả các chuỗi con của chuỗi cần truy vấn, sau

đó chọn các chuỗi với “độ chỉnh sửa” tối thiểu Tuy nhiên, thuật toán này sẽ cóthời gian chạy O(n3m) Ở đây m là độ dài chuỗi mẫu, n là độ dài chuỗi cần truyvấn.)

 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: Vd:mpscan[9] Phương pháp sử dụng mô hình đánh dấu tập mẫu, tức là chia chuỗi cầntruy vấn thành các chuỗi mẫu con nhỏ với chiều dài cố định Sau đó, so sánh cácchuỗi con đã được chia đó với chuỗi trong cơ sở dữ liệu để tìm kiếm sự tươngđồng, có thể thực hiện xử lý đồng thời nhiều mẫu Phương pháp này thường đượcdùng và rất có hiệu quả trong việc tìm kiếm một tập lớn các chuỗi DNA ngắn trongmột CSDL các chuỗi DNA Phương pháp điển hình của dạng này là Mpscan.Chương trình của Mpscancó thể đọc được bản đồ ngay trên giao diện Có khả năngtìm kiếm ngược, bổ sung mẫu Tuy nhiên, thời gian thực hiện ở mức độ trungbình) Là công cụ đánh dấu tập mẫu đạt hiệu quả chính xác cao cho việc giải trình

tự DNA

Trong khuôn khổ luận văn, người viết chỉ trình bày một số thuật toán tiêu biểucho từng phương pháp đã nêu và hầu hết các phương pháp đều nhằm các mục đíchchính đó là tìm kiếm, giải trình tự chuỗi DNA nhanh và chính xác nhất có thể đểtiết kiệm không gian lưu trữ, bộ nhớ, đưa ra kết quả cũng như truy cập thông tin

Trang 12

nhanh chóng Trong khuôn khổ bài viết này, người viết chỉ nêu một số phươngpháp tìm kiếm cơ bản và đưa ra phương pháp tìm kiếm mới với mong muốn cảithiện tốc độ tìm kiếm một chuỗi DNA trong một cơ sở dữ liệu chuỗi có sẵn

Bố cục luận văn được chia thành 3 chương Chương 1 trình bày về tổng quancác phương pháp sử dụng để tìm kiếm chuỗi DNA Thuật toán tìm kiếm cụ thể màngười viết tập trung nghiên cứu là thuật toán tìm kiếm chuỗi DNA sử dụng phươngpháp tìm kiếm tương tự nhanh áp dụng N-Gram được trình bày ở chương 2.Chương 3 của luận văn mô tả môi trường thực nghiệm so sánh thuật toán tương tựnhanh áp dụng N-gram với phương pháp tìm kiếm khác và một số phân tích đánhgiá của người viết về kết quả đạt được Cuối cùng là kết luận về hiệu quả cũng nhưhạn chế còn tồn tại và hướng phát triển trong tương lai cho việc nghiên cứu và cảitiến phương pháp tìm kiếm chuỗi DNA

Trang 13

1.1 Phương pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn

Mô hình Markov ẩn được bắt đầu xây dựng và công bố từ những năm 1960, đây

là mô hình toán học về thống kê, tính toán xác suất Nhiều năm sau đó (1980) môhình được bắt đầu được nghiên cứu để ứng dụng trong lĩnh vực nhận dạng Thuậttoán tìm kiếm chuỗi sử dụng mô hình Markov ẩn dùng phương pháp mô hình hóaquá trình tìm kiếm chuỗi trong đó có sử dụng các tham số quan sát được và cáctham 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 Với mô hình Markov

ẩn cấu trúc mô hình có thể thay đổi dễ dàng cho phù hợp với từng ứng dụng cụ thể

Phương pháp tìm kiếm chuỗi DNA sử dụng mô hình Markov ẩn

Thuật toán:

Cho 2 chuỗi:

Chuỗi quan sát: x = x1x2 xL.

Chuỗi so sánh: y = y1y2 yL, (ở mỗi vị trí xn thì có tương ứng yn )

Xn là số vị trí của giá trị có thể từ tập quan sát O = {O1O2, ,ON}

Yn nhận giá trị từ tập trạng thái S = {1,2, ,M} N và M biểu thị vị trí quan sát và

số lượng các trạng thái trong mô hình

Cho chuỗi trạng thái ẩn xuất hiện đồng thời trong chuỗi Markov Điều này cónghĩa là trạng thái đầu vào j sau sẽ phụ thuộc vào trạng thái i trước đó Trạng tháinày có thể sẽ không đổi

P{y n +1=j|y n =i, y n −1=i n −1, ,y 1 =i 1 }=P{y n +1=j| y n =i}=t(i,j)

Trang 14

với mọi i, j ∈ S và n≥1 [5]

Trang 15

Các trạng thái chuyển từ trạng thái i sang trạng thái j gọi là trạng thái chuyểntiếp Gọi hàm chuyển tiếp là t(i,j) Trạng thái bắt đầu Y1 có thể ở bất kỳ i ∈ S Ở vịtrí quan sát xn=x có thể chỉ phụ thuộc vào trạng thái yn Do vậy:

P{x n =x|y n =i,y n −1,x n −1, }=P{x n =x|y n =i}=e(x|i) [5]

Với mọi x ∈ O, mọi i ∈ S, và mọi n ≥ 1; e(x|i) là hàm giá trị x tạo ra tại trạng

Trang 16

Với

P{x|y,Θ}=e(x1|y1)e(x2|y2)e(x3|y3) e(x L |y L)

P{y|Θ}=π(y1)t(y1,y2)t(y2,y3) t(y L −1,y L)

Như vậy dựa vào mô hinh khi biết chuỗi trạng tháivà đầu vào ta có thể biết đượcchuỗi quan sát

Ví dụ minh họa cho mô hình Markov ẩn:

Hình 1.1: Mô hình Markov ẩn [5]

a Sắp xếp các chuỗi ban đầu.

Trang 17

b Mô hình Markov ẩn (bỏ khoảng trống giữa các trạng thái).

c Mô hình hóa sự liên kết theo Mô hình Markov ẩn

Mô hình Markov ẩn hiệu quả cho mô hình hóa thông tin về các chuỗi liên kết,phù hợp cho các cấu trúc chuỗi mẫu vì mô hình này có cấu trúc trái sang phảituyến tính mà không chứa bất kỳ chu kỳ nào Mô hình sử dụng ba loại trạng thái:ẩn(delete), quan sát được(insert) và kết quả(match)

Ví dụ: Việc so sánh hai chuỗi sinh học theo Mô hình Markov ẩn sẽ sắp xếp cácchuỗi dựa trên sự giống nhau, tính toán số điểm liên kết của chúng, và đánh giá cácliên kết thống kê được Tuy nhiên, để tìm ra sự liên kết tốt giữa các trình tự, chúng

ta phải đưa ra được một bảng xếp hạng dựa trên sự giống nhau của các chuỗi Căn

cứ vào bảng này, chúng ta có thể chọn các liên kết nhằm tối đa hóa điểm số liênkết

Hình 1.2 Ví dụ về mô hình cặp HMM [5]

Mô hình cặp -HMM tạo ra cặp liên kết chuỗi Hai chuỗi DNA x và z đượcđồng thời tạo ra bởi các cặp-HMM, các dãy trạng thái cơ bản là y Các trạng thái yxác định chỉ 1 liên kết duy nhất giữa x và z

Ưu điểm: Phương pháp này đã được sử dụng rộng rãi trong tin sinh học vì độ

chính xác cao Cách mô hình hóa dễ sử dụng

Nhược điểm: Chi phí thời gian lớn và các hàm tính toán phức tạp.

1.2 Phương pháp liên kết nhạy cảm đầy đủ

Phương pháp này được sử dụng để tìm sự giống nhau hoặc có độ tương đồngcao 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ó độ

Trang 18

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ặcnucleotide Với chuỗi đã được tìm kiếm và có độ tương đồng cao trước đó, phươngphá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ápnà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đặc trưng của dạng này là phương pháp Smith & Waterman do hai nhà khoa họcT.F.Smith & M.S.Waterman công bố năm 1981 [6] Hiện nay, do những cải tiến vềmáy tính và thuật toán tìm kiếm, phương pháp này có thể tìm kiếm đồng thời nhiềuchuỗi cùng lúc khoảng (1000 chuỗi) [18]

Thuật toán Smith & Waterman

Thuật toán Smith-Waterman là một thuật toán quy hoạch động dùng để tìmkiếm cơ sở dữ liệu phát triển bởi T.F Smith và M.S Waterman vào năm 1981 vàdựa trên một mô hình thích hợp trước đó có tên Needleman và Wunsch Thuật toán

sử dụng bảng ma trận để đánh giá sự tương đồng của hai chuỗi Tìm kiếm lần lượt

từ đầu đến cuối trong hai chuỗi xem mức độ tương đồng ở mức nào (tương đồnghoặc không tương đồng) Với các mức độ tương đồng khác nhau sẽ có những chỉ

số độ đo khác nhau

Đặc điểm của thuật toán Smith-Waterman là thuật toán so sánh các cặp chuỗicục bộ dựa trên quy hoạch động để tính điểm cho quá trình so sánh.Giải thuật nàygiúp nhận ra những miền tương đồng giữa hai chuỗi tìm kiếm cho giống chuỗi cục

bộ tối ưu hơn Giải thuật Smith-Waterman thực hiện so sánh đối xứng ở dạng cục

bộ, khác với giải thuật so sánh đối xứng toàn cục (ví dụ: Needleman- Wunsch),giải thuật sắp hàng hay so sánh đối xứng cục bộ chỉ thực hiện việc so sánh đốixứng trên một số phần của các trình tự được so sánh

Độ tương tự s(a,b) được đưa ra bởi các cặp (a,b) Để tìm cặp tương đồng (a,b) talập ma trận H Đặt:

H kO = H oL , = 0 for 0 ≤ k ≤ n and 0 ≤ l ≤ m [6]

Hij thể hiện mức độ tương đồng của ai,bj Hij được tính bằng công thức:

Hij=max{Hi-1,j-1 + s(ai,bj).max(Hi-k,j - wk}.max{ Hi,j-l - wl},0} (1)

k≥1 l≥1

với l ≤ i ≤ n và l ≤ j ≤ m [6]

Công thức Hij tính bởi các giá trị ở cuối các đoạn tại bất kỳ giá trị ai và bj nào.(1) Nếu ai và bj có liên kết, độ tương tự tính như sau:

Trang 19

Hi-1,j-1 + s(ai.bj)(2) Nếu ai tại vị trí cuối của dãy xóa k, độ tương tự tính bằng công thức

Hi-k,j - Wk(3) Nếu bj là vị trí cuối của vị trí xóa có độ dài l, độ tương tự xác định bởi

Hi-k,j – Wl(4) Giá trị 0 đã bao gồm biểu thị cho mức độ không tương đồng, nó chỉ rarằng mức độ không tương đồng cho đến giá trị ai và bj

Giá trị H càng cao thì mức độ tương đồng của Hij càng lớn Đầu tiên ta tìm chỉ

số cao nhất của ma trận Sau đó, duyệt ngược trở lại Ta sẽ tìm được mức độ tươngđồng của 2 chuỗi cần chọn

Thuật toán:

- Đầu vào : Hai chuỗi S1 và S2 với chiều dài tương ứng là n, m Ma trận thay thếS.Gap d

 Đầu ra : Hai chuỗi S1’, S2’

 Bước 1 : Khởi tạo :

+ H(0,0) = 0

+ H(i,0) = 0 0 ≤ i ≤ m

+ H(0,j) = 0 0 ≤ j ≤ n

 Bước 2 : Điền giá trị vào ma trận Tính H(i, j) theo công thức

H(i, j) = MAX (0, H(i-1,j-1) + S(i,j), H(i-1,j)+d, H(i,j-1) + d) (1) [6]Mỗi khi tính H(i, j) lưu lại chỉ số của số hạng ở vế phải (1)

 Bước 3 : Tìm ô (i_max, j_max) có điểm cao nhất (0  i  m, 0  j  n)

 Bước 4 : Quay lại bước 2

 Xuất phát từ ô (i_max, j_max).Dựa vào những chỉ số đã lưu ở bước 2 để tìm giátrị cho đến khi gặp ô H(i,j) = 0 thì dừng

 Nếu đường đi theo chiều ngang hay từ ô (i,j-1) sang ô (i,j) thì thêm “-“ vào S2’

Trang 22

Ví dụ về ma trận thực hiện so sánh chuỗi của Smith & Waterman:

Hình 1.3 Bảng ma trận độ đo trong ví dụ 2 chuỗi của Smith & Waterman [2]

Chuỗi A-A-U-G-C-C-A-U-U-G-A-C-G-G

và chuỗi C-A-G-C-C-U-C-G-C-U-U-A-G

Ở hình 1.3 chỉ số (3-3) là chỉ số cao nhất của ma trận Duyệt theo đường chéo,lấy giá trị cao nhất Nếu có giá trị thấp, xét các vùng lân cận để lấy chỉ số cao.Duyệt ngược trở lại Lấy giá trị cao nhất Lặp lại bước này Cuối cùng ta có độtương đồng của 2 chuỗi là:

-G-C-C - U-C-G-

-G-C-C-A-U-U-G-Ưu điểm: Do phải duyệt và so sánh lần lượt thứ tự từng nucleotide nên phương

pháp này có độ chính xác cao

Trang 23

Nhược điểm: Chi phí thời gian lớn do phải lập ma trận đánh giá mức độ tương

đồng, lập chỉ số so sánh giá trị của các phần tử trong ma trận của các chuỗi Thuậttoán cũng phải so sánh các giá trị ở chuỗi mẫu với chuỗi dữ liệu

1.3 Phương pháp tìm kiếm tương tự nhanh

Phương pháp này sử dụng giải thuật so sánh chuỗi cần truy vấn với CSDLchuỗi có sẵn dựa trên việc đánh giá chuỗi cơ sở dữ liệu với chuỗi truy vấn theo mộtngưỡng nhất định (đánh giá, cho điểm theo chỉ số cụ thể) Dựa vào bảng kết quảđánh giá, sẽ đưa ra kết quả về mức độ tương đồng của hai chuỗi Mặc dù có thờigian xử lý nhanh nhưng phương pháp này có độ chính xác không bằng phươngpháp liên kết nhạy cảm đầy đủ Thuật toán điển hình của phương pháp này làBLAST (hiện nay phương pháp BLAST được dùng rất phổ biến và có nhiều biếnthể để so sánh với từng trường hợp cụ thể)

Thuật toán BLAST

BLAST ban đầu tìm kiếm các chuỗi con ngắn với chiều dài cố định có tínhtương tự cao Sau đó, dựa vào kết quả trước, mở rộng phạm vi tìm kiếm để tìmnhững bắt cặp trình tự có điểm số cao giữa chuỗi truy vấn và các chuỗi trong cơ sở

dữ liệu Ở thuật toán bắt cặp trình tự tối ưu của Smith-Waterman, phương pháp đó

sẽ rất chậm khi tìm kiếm trong một cơ sở dữ liệu gen quá lớn như Ngân hàng Gen

(GenBank) Giải thuật BLAST dùng một hướng tiếp cận heuristic, dù ít chính xác

hơn Smith-Waterman nhưng lại cho tốc độ nhanh hơn Tốc độ và sự chính xáctương đối của BLAST là những cải tiến kĩ thuật quan trọng của các chương trìnhBLAST và những điều đó cho thấy lí do vì sao công cụ này lại là công cụ tìm kiếmphổ biến nhất trong tin sinh học.[7]

Đầu vào:

- Chuỗi truy vấn (chuỗi đích)(Định dạng ở dạng FASTA hoặc Genbank)

- Cơ sở dữ liệu chuỗi (Định dạng ở dạng FASTA hoặc Genbank)

Trang 24

Đầu ra:

- Những bắt cặp trình tự có điểm số cao khi so sánh chuỗi truy vấn với CSDLchuỗi Kết quả có thể ở các định dạng khác nhau như: HTML, văn bản, XML…VD: Ở trang chủ của NBCI định dạng đầu ra ở dạng HTML

BLAST sẽ tìm kiếm các chuỗi con trong chuỗi truy vấn giống với các chuỗicon trong cơ sở dữ liệu chuỗi Thông thường, khi sử dụng, chuỗi truy vấn là nhỏhơn rất nhiều so với cơ sở dữ liệu, ví dụ: chuỗi truy vấn có thể chỉ gồm 1 nghìnnucleotide trong khi cơ sở dữ liệu chuỗi có hàng tỉ nucleotide Thuật toán củaBLAST có 2 phần, một phần tìm kiếm và một phần đánh giá thống kê dựa trên kếtquả tìm được

Thuật toán tìm kiếm của BLAST bao gồm 3 bước sau:

B

ư ớ c 1 : Chương trình sẽ tìm kiếm các chuỗi con ngắn với chiều dài cố định L

có tính tương tự cao (không cho phép khoảng trống gaps) giữa chuỗi truy vấn và

các chuỗi trong cơ sở dữ liệu Những chuỗi con với chiều dài L được BLAST gọi

là một “từ” Thông thường chương trình chọn giá trị một “từ” cho Protein là 3 vàDNA là 11 Những chuỗi con này được đánh giá và cho điểm dựa trên ma trận thaythế (Substitutions matrix) BLOSUM hoặc PAM, những chuỗi con nào có số điểm

lớn hơn một giá trị ngưỡng V (threshold value) thì được gọi là tìm thấy và được

BLAST gọi là Hit Ví dụ, khi cho sẵn các chuỗi GATTAG và FCATAC và một

“từ” có chiều dài L = 3, BLAST sẽ xác định chuỗi con TAG và TAC với số điểm

theo ma trận PAM là 3 + 2 + 3 = 8 và gọi chúng là một Hit [7]

B

ư ớ c 2 : BLAST tiếp tục tìm kiếp những cặp Hit tiếp theo dựa trên cơ sở những

Hit đã tìm được trong bước 1 Những cặp Hit này được BLAST giới hạn bởi mộtgiá trị cho trước d, gọi là khoảng cách giữa những Hit Những cặp Hits có khoảngcách lớn hơn d sẽ bị BLAST bỏ qua Giá trị d phụ thuộc vào độ dài L ở bước 1,(VD: L = 2 thì có thể chọn d = 18)

Trang 25

ước 3 : Cuối cùng BLAST mở rộng những cặp Hits đã tìm được theo cả hai

chiều và đồng thời đánh số điểm Quá trình mở rộng kết thúc khi điểm của các cặpHit không thể mở rộng thêm nữa Một điểm chú ý ở đây là phiên bản gốc của

BLAST không cho phép chỗ trống (gap) trong quá trình mở rộng, nhưng ở phiên

bản mới hơn đã cho phép chỗ trống Những cặp Hits sau khi mở rộng có điểm số

cao hơn một giá trị ngưỡng S (threshold value) thì được BLAST gọi là "cặp điểm

số cao" (High-scoring Segment Pair) HSP.

Ví dụ, với chuỗi AGTTAHTQ và ACFTAQAC với Hit TAH và TAQ sẽ được

toán một giá trị trông đợi E-Score (Expect-Score) phụ thuộc vào Bit-Score Giá trị

E-Score này thể hiện xác suất ngẫu nhiên của các bắt cặp, giá trị càng thấp càngchứng tỏ những bắt cặp này được phát sinh theo quy luật tự nhiên, ít phụ thuộc vàotính ngẫu nhiên [7]

Trang 26

Hình 1.4 Thiết lập “từ” với ba “ký tự” để truy vấn theo danh sách [5]

Ngày nay, có rất nhiều chương trình được mở rộng từ BLAST (thường được gọichung là “họ BLAST”) chẳng hạn như:

- Nucleotide-Nucleotide BLAST (BLASTn): Chương trình này, khi đưa vàomột DNA truy vấn, sẽ trả về các chuỗi DNA gần giống nhất từ cơ sở dữ liệu DNA

sẽ được tạo ra Sau đó, những protein này được kết hợp thành một "profile" dưới

dạng chuỗi trung bình (average sequence) Một câu truy vấn tới một cơ sở dữ liệu

protein sẽ được thực thi nhờ profile này, và một nhóm lớn hơn các protein đượctìm thấy Nhóm lớn này lại được dùng để tạo ra một profile khác, và quá trình này

cứ lặp lại Bằng cách thêm các protein liên quan vào việc tìm kiếm, PSI-BLAST

Trang 27

trở nên tốt hơn trong việc lựa ra các mối quan hệ tiến hóa cách xa nhau hơn là phần

mềm chuẩnprotein-protein BLAST.

- Nucleotide 6frame translation protein (BLASTx): Chương trình so sánh cácsản phẩm chuyển đổi (trừu tượng) sang 6-khung của một chuỗi nucleotide truy vấn(cả 2 dải) với một cơ sở dữ liệu chuỗi protein Quá trình này có thể rất chậm

- Nucleotide-nucleotide 6-frame translation (tblastx): Chương trình này chậmnhất trong họ BLAST Nó chuyển chuỗi nucleotide truy vấn thành mọi 6 khung(frame) có thể và so sánh các proteins tạo thành Mục tiêu của tblastx là tìm kiếmmối quan hệ rất xa giữa các chuỗi nucleotide

- Protein-nucleotide 6-frame translation (tblastn): Chương trình này chuyển cơ

sở dữ liệu đích thành mọi 6-khung (frame) và so sánh với chuỗi protein truy vấn

- Large number of query sequence (MegaBLAST): Khi so sánh một số lượnglớn các chuỗi đầu vào qua chỉ một BLAST dạng dòng lệnh, "megablast" là nhanhhơn rất nhiều so với chạy BLAST nhiều lần

Ưu điểm: Do chỉ việc phải so sánh chuỗi cần truy vấn với thư viện hoặc CSDL

chuỗi có sẵn Sau đó, đối sánh chuỗi ở thư viện hoặc cơ sở dữ liệu với chuỗi truyvấn theo một ngưỡng nhất định nên phương pháp có thời gian xử lý nhanh

Nhược điểm: Phương pháp này có độ chính xác không cao (VD: so với phương

pháp liên kết nhạy cảm đầy đủ phương pháp này độ chính xác không bằng)

1.4 Phương pháp sử dụng mô hình phù hợp gần đúng

Kỹ thuật tìm kiếm chuỗi phù hợp với một mô hình gần đúng (chứ không phải làchính xác) Vấn đề phù hợp được hiểu thành hai ý: tìm kiếm chuỗi phù hợp gầnđúng với các phân đoạn một chuỗi cho trước và tìm kiếm chuỗi từ điển gần đúngvới mẫu cần truy vấn Mô hình này sử dụng cách tiếp cận brute-force để tính “độchỉnh sửa” chuỗi mẫu sao cho gần đúng với tất cả các chuỗi con của chuỗi cần truyvấn, sau đó chọn các chuỗi với “độ chỉnh sửa” tối thiểu Tuy nhiên, thuật toán này

Trang 28

sẽ có thời gian chạy O(n3m) Ở đây m là độ dài chuỗi mẫu, n là độ dài chuỗi cầntruy vấn) Phương pháp điển hình của mô hình phù hợp gần đúng là phương pháptìm kiếm chuỗi Bowtie, được nhà khoa học Langmead và cộng sự đăng lần đầutiên trên tạp chí Curr Protoc Bioinformatics vào năm 2010 [8]

Phương pháp tìm kiếm chuỗi Bowtie

Phương pháp Bowtie (do Langmead và cộng sự đề xuất năm 2010) là phươngpháp nhanh và tiết kiệm bộ nhớ Mô hình của phương pháp là mô hình sử dụngmột tập đầu vào với số lượng lớn các liên kết từ gen mẫu (tách mẫu thành các đoạnngắn- mục đích để đọc thông tin, đưa ra các chỉ số tạo bảng đánh giá Sau đó, từbảng đánh giá, mô hình sẽ đánh thứ tự các chuỗi con được tách Cuối cùng, so sánhchuỗi được tách đó với các đoạn gen mẫu theo các chỉ số đã đưa ra từ ban đầu.Vd: gen người Các thành phần chương trình chứa các công cụ đánh giá chỉ sốcho các thành phần bộ gen tham khảo, sau đó đọc các trình tự ngắncủa bộ gen mẫutheo các chỉ số đã được đưa ra Đây là bước đầu tiên trong nhiều nhiều bước ở quytrình so sánh gen theo phương pháp này Phương pháp có thêm chức năng pháthiện biến thể gen Mỗi lần đọc chuỗi DNA, đầu vào có thể gồm nhiều giá trị chỉ số,các giá trị này đã được đánh giá bởi tiến trình trước đó Trình tự các chuỗi con sẽđược đánh thứ tự Các giá trị thứ tự này được tham chiếu đến chuỗi gốc

Thuật toán: [8]

B

ư ớ c 1: Xác định điểm chung từ các mẫu

Từ tập các mẫu đầu vào, sắp xếp và tìm điểm chung giữa các tập chuỗi

Trang 29

ư ớ c 2: Phân loại và đo độ ảnh hưởng

Từ các tập mẫu, tính toán và đưa ra độ dài chuỗi dài nhất có thể từ các mẫu

B

ư ớ c 3 : Tìm kiếm và đưa ra kết quả Kết quả hiển thị là tập các chuỗi cần so

sánh có bắt cặp trình tự với chuỗi mẫu Thứ tự các chuỗi được sắp xếp theo thứ tựnhư sau: Chuỗi có ít bắt cặp trình tự đứng trước Các chuỗi có độ dài bắt cặp trình

tự lớn đứng sau (theo hình kim tự tháp)

Trang 30

Một đoạn mã nguồn của thuật toán [8]

sub quote_params {

my %params_2_quote = (' rg' => 1, ' rg-id' => 1,

'-S' => 1, '-U' => 1, '-1' => 1, '-2' => 1 );

độ và không gian lưu trữ Để đòi hỏi điều này, người dùng đã phải xây dựng hoặc

có được một chỉ số thích hợp trước khi quá trình đọc liên kết đến các mẫu Khi mộtchỉ số được xây dựng, nó có thể được truy vấn nhiều lần Chỉ số cho bộ gen tham

Trang 31

chiếu thường được sử dụng có thể tải về từ trang web Bowtie tại bio.sf.net Chương trình sử dụng các giao thức:

http://bowtie-+ Giao thức cơ bản sẽ sắp xếp một bộ các lần “đọc” cho một gen mẫu

+ Giao thức đánh chỉ số (Indexing Protocol – Alternate Protocol 1) sẽ xây dựngchỉ số cho gen mẫu

+ Giao thức “The Consensus and SNP Calling” nhận các giá trị từ đầu ra củacông cụ SAM tools (Li et al 2009) sẽ đánh giá chuỗi có tương đồng hay không.+ Các giao thức tùy chọn dòng lệnh (Alternate Protocol 3) thể hiện một loạtcác tùy chọn liên kết thường được sử dụng

+ Các giao thức hỗ trợ (Support) hướng dẫn cách lưu trữ và cài đặt phần mềmBowtie

+ Giao thức hỗ trợ 1 (Support Protocol 1) hướng dẫn cách “build” phần mềmBowtie từ mã nguồn

+ Giao thức hỗ trợ 2 (Support Protocol 2) hướng dẫn cách tạo chỉ số “pre-build”

từ website bowtie (giao thức hỗ trợ 3) Mỗi giao thức này có thể chạy trên các môitrường khác nhau: Unix (môi trường Unix), Linux, Mac OS X và Windows

Chương trình Bowtie viết dưới dạng mã nguồn mở và có thể được sử dụng miễnphí Có thể download tại địa chỉ: h t t p : // www o p e n so u rce o r g/ li c e n s e s / ar t i st i c -

license-1.0.php

Hình 1.5 Hình ảnh một phiên chương trình Bowtie

Trang 32

Các dòng cuối mô tả:

+ Số chuỗi được xử lý.

+ Thông tin chạy chương trình, đầu ra chuẩn sẽ thể hiện tính hợp lệ.

+ Thông báo về phương pháp thực hiện - phương pháp Bowtie.

+ Có thể có thêm thông tin về chuỗi tìm kiếm

Hình 1.6 Ví dụ quá trình chạy phương pháp Bowtie với đầu ra định dạng SAM.

Mô hình này sử dụng cách tiếp cận brute-force để tính “độ chỉnh sửa” chuỗi mẫusao cho gần đúng với tất cả các chuỗi con của chuỗi cần truy vấn, sau đó chọn cácchuỗi với “độ chỉnh sửa” tối thiểu

Ưu điểm: Có thể tìm kiếm cùng lúc nhiều mẫu Độ chính xác cao.

Nhược điểm: Thuật toán này có chi phí thời gian chạy O(n3m) (với m là độ dàichuỗi mẫu, n là độ dài chuỗi cần truy vấn) Sử dụng nhiều bộ nhớ trong quá trìnhtìm kiếm

Trang 33

bổ sung mẫu Tuy nhiên, thời gian thực hiện ở mức độ trung bình).

Phương pháp điển hình của thuật giải này là Mpscan Phương pháp này do cácnhà khoa học (Eric Rivals, Leena Salmela, Petteri Kiiskinen, Petri Kalsi, andJorma Tarhio) từ đại học LIRMM, CNRS and Université de Montpellier 2,Montpelier, Pháp đăng lần đầu vào năm 2009 Chương trình này tìm kiếm đồngthời các tập mẫu ngắn Các mẫu này có thể tìm đồng thời cùng lúc Quá trình tìmkiếm đồng thời có thể lên tới 100000 mẫu [9]

5: while true do

6: if first bit in E is one then

Ngày đăng: 05/04/2019, 12:23

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Matt Atherton. Human intelligence genes identified in DNA bringing us one step close to cognitive engineering, Internationnal Business Times, 2015 Sách, tạp chí
Tiêu đề: Human intelligence genes identified in DNA bringing us onestep close to cognitive engineering
[4] David Michael Buss & David P. Schmitt. Evolutionary Psychology and Feminism. Springer Science + Business Media, LLC, 2011 Sách, tạp chí
Tiêu đề: Evolutionary Psychology andFeminism
[5] SR Eddy. Profile hidden Markov models. Bioinformatics, 1998 Sách, tạp chí
Tiêu đề: Profile hidden Markov models
[6] Temple F. Smith and Michael S.Waterman. Identification of common molecular subsequences, 1981 Sách, tạp chí
Tiêu đề: Identification of commonmolecular subsequences
[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 Sách, tạp chí
Tiêu đề: Gapped blast and psi-blast: a new generation of protein database search programs
[8] Ben Langmead. Aligning short sequencing reads with Bowtie. Curr Protoc Bioinformatics, 2010 Sách, tạp chí
Tiêu đề: Aligning short sequencing reads with Bowtie
[9] Eric Rivals, Leena Salmela, Petteri Kiiskinen, Petri Kalsi, and Jorma. Fast Localisation of Multiple Reads in Genomes, 2015 Sách, tạp chí
Tiêu đề: FastLocalisation of Multiple Reads in Genomes
[10] Daniel Jurafsky and James H.Martin. Speech and Language Processing: An Introduce to Natural Language processing, Computational linguistics and Speech recognition, 2000 Sách, tạp chí
Tiêu đề: Speech and Language Processing: An Introduce to Natural Language processing
[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 Sách, tạp chí
Tiêu đề: Class-Based n-gram Models of Natural Language
[12] Songfang Huang, Steve Renals. Power Law Discouting for N-gram Language Models. The Centre for Speech Technology Research, University of Edinburgh, United Kingdom Sách, tạp chí
Tiêu đề: Power Law Discouting for N-gram LanguageModels
[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 Sách, tạp chí
Tiêu đề: Ultrafastand memory-efficient alignment of short DNA sequences to the human genome
[14] Burrows M, Wheeler DJ. Digital Equipment Corporation. Technical Report 124, 1994 Sách, tạp chí
Tiêu đề: Digital Equipment Corporation
[16] P.Ferragina, G.Manzini. Opportunistic data structures with applications.Foundations of Computer Science, 2000 Sách, tạp chí
Tiêu đề: Opportunistic data structures with applications
[17] Tao Tao. Single Letter Codes for Nucleotides. National Center for Biotechnology Information, 2011 Sách, tạp chí
Tiêu đề: Single Letter Codes for Nucleotides
[18] W.Pearson. Searching protein sequence libraries: comparison of the sensitivity and selectivity of the Smith-Waterman and FASTA algorithms.Genomics, 1991 Sách, tạp chí
Tiêu đề: Searching protein sequence libraries: comparison of thesensitivity and selectivity of the Smith-Waterman and FASTA algorithms

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