Dizilim hizalama [sequence alignment] biyoinformatiğin en temel problemlerinden biridir ve bu konu üzerine oldukça kafa yorulmuştur. Dizilim hizalamanın temel yaklaşımı, farklı DNA, RNA veya protein dizilimlerinin [sequence] birbirine en çok benzeyen bölgelerinin saptanmasıdır. Bu şekilde biyolojik bir fonksiyonu olabilecek bölgeleri tespit edilebilir veya bir deney sonucunda elde ettiğimiz DNA veya protein diziliminin hangi gen ve organizmaya ait olduğunu büyük ölçüde saptayabiliriz. Örnek bir hizalama aşağıdaki gibi olabilir:
GCACATATGGAAACC
||||||---|||||*
GCACAT---GAAACT
Yukarıda GCACATATGGAAACC dizilimi ile GCACATGAAACT diziliminin hizalanmış şeklini görüyorsunuz. Bu durumda ikinci dizilimin ortasında 3 bazlık bir bölümün silindiğini [deletion] ve sonundaki bazın da değişime uğradığını [mutation] söyleyebiliriz. Hizalama konusunu iki farklı çatı altında düşünebiliriz:
Bunlardan ilkini, hakkında literatürde neredeyse hiç bir bilgimizin olmadığı bir canlı türünün çalışılması olarak düşünebiliriz. Bu türe ilişkin genomun tamamını ya da bir kısmını bilinen diğer organizmalarla kıyaslayarak hangi cinse ait olduğunu tahmin edebiliriz ya da fonksiyonunu bilmediğimiz bir gen ile fonksiyonu bilinen diğer genlerdeki ortak motifleri bularak o genin işleyişi ve amacına ilişkin bir çıkarımda bulunabiliriz.
Diğerini ise genomu zaten bilinen bir organizmayla yaptığımız çalışmalar olarak düşünebiliriz. Bu tarz çalışmalarda dizilim hizalama kullanarak elimizdeki DNA veya protein dizilim parçalarının hangi gene ait olduğunu hızlı bir şekilde tespit edebiliriz veya yine referans genom bilgisini kullanarak nerelerde ne tarz farklılıklar (değişim (/mutasyon [deletion]), silinme (/delesyon [deletion]) vb.) olduğunu saptayabilir ve böylelikle örneğin bir hastalığa neden olan değişimleri ortaya koyabiliriz.
DNA ve RNA söz konusu olduğunda A bazının karşısına gelmesi gereken bazı hepimiz biliyoruz. Peki, kalan G veya C bazlarından biri gelecek olsa, A bazı hangisini istemeyerek de olsa tercih eder? Bir pirimidin olan C bazının G'den daha fazla tercih edilebileceğini söyleyebiliriz, ve bu doğrultuda hayali skorlama tablosu hazırlayabiliriz. Bu tabloda, eğer bir bazın karşısına aynı baz gelirse bu bir bazlık hizalanmayı +1 ile ödüllendirebilir, pürinin karşısına pürin veya pirimidinin karşısına pirimidin geliyorsa bu hizalanmayı -1 ile cezalandırabilir, pürinin karşısına pirimidin veya tam tersi geliyorsa da bunu -2 gibi daha etkili bir puanla cezalandırabiliriz. Konuyu daha iyi anlamak adına ATGTCC ile ATC dizilimlerini hizalayalım (her iki dizilimde de aralarda boşluklara izin verilmediğini varsayalım):
ATGTCC
||*---
ATC--
Yukarıdaki gibi hizalamanın toplam puanı 0 olacaktır: iki bazın (A ve T) tam hizalanması (1+1 puan) ve bir pirimidinin (C) pürin ile hizalanması (G) (-2 puan) sonucu 1+1-2 = 0 puan. Peki bu iki dizilimi aşağıdaki şekilde hizalarsak?
ATGTCC
--*||-
--ATC-
Bu durumda hizalamaya ait toplam puan 1 olacaktır: iki bazın (T ve C) tam hizalanması (1+1 puan) ve bir pürinin (A) yine başka bir pürinle hizalanması (G) (-1 puan) sonucu 1+1-1 = 1 puan. Toplam hizalama puanlarını göz önüne aldığımızda, ikinci seçeneğin daha çok tercih edilir olduğunu söyleyebiliriz. Burada temel olan yaklaşım, puanlama sistemini nasıl belirlediğiniz ve sonrasında da kullandığınız algoritmadır. Algoritma kısmına şimdilik girmeyeceğiz, ancak günümüzde en sık kullanılan algoritmanın BLAST olduğunu belirtmeliyim. DNA veya RNA için bu hesaplamayı yapmak kolay sayılır, peki ya söz konusu proteinler olduğunda nasıl bir yol izlemek gerekiyor? Konunun fazla detayına girmeden bir örnek olarak BLOSUM62 matrisini anlatarak bu soruya cevap vereceğim.
Tamamen belirleyici olmamakla birlikte, birbirine yakın iki türün protein dizilimlerinin hizalanmasında BLOSUM80 (%80 benzerlik tablosu), birbirine uzak iki türün protein dizilimlerinin hizalanmasında ise genel olarak BLOSUM45 (%45 benzerlik tablosu) tercih ediliyor. Yakınlığın veya uzaklığın tam olarak kestirilemediği durumlarda ise BLOSUM62 kullanılıyor ve bu benzerlik tablosundaki değerlerin gayet kullanışlı olduğu söyleniyor. BLOSUM62, BLAST algoritmasının kullandığı bir aminoasit benzerlik tablosu. Belirli bir yüzdenin üzerinde benzerlik gösteren (%62) gerçek protein dizilimlerinin hizalanması sonucu oluşturulan bu tabloda puanların hesaplanmasında temel iki faktör rol oynuyor. Bunlardan ilki, bir aminoasidin karşısına diğer bir aminoasidin ne kadar sıklıkla geldiği. Böylece, bir aminoasidin farklı bir protein diziliminde diğer bir aminoaside dönüşmesi eğer fonksiyon üzerinde çok büyük bir etkiye sahip değilse ilgili değişimi sık olarak görmeyi bekleriz. Çok yüzeysel bir örnek verelim: hidrofobik bir aminoasidin başka bir hidrofobik aminoasitle değişmesi protein fonksiyonunu etkilemeyebilir ancak bu aminoasidin hidrofilik bir aminoasitle değişimi proteinin 3 boyutlu yapısını değiştirebilir ve bu proteinin fonksiyonunu tamamen değiştirebilir. Bu durumda, daha az etkisi olan değişimi küçük bir puanla, daha çok etkisi olan değişimi ise daha büyük bir puanla cezalandırmalıyız. BLOSUM tablosundaki puanların hesaplanmasındaki diğer etken ise, ilgili aminoasitlere tüm proteomda ne sıklıkla rastlandığı. BLOSUM denklemine göre bir aminoaside ne kadar seyrek rastlanırsa, o aminoasidin önemi de o kadar artar. Bu nedenle, proteomdaki en seyrek aminoasit olan Tryptophane (Trp, W) aminoasidiyle yapılan bir hizada karşısına yine aynı aminoasit gelirse, bu dizilim BLOSUM tablosuna göre en yüksek puan olan 11 ile ödüllendirilir. BLOSUM62 tablosunu aşağıda bulabilirsiniz:
Okuması biraz zor bir tablo değil mi? Aminoasitler arasındaki ilişkinin daha kolay anlaşılması için bu tabloyu bir ağ grafiğine dönüştürdüm ve hizalandıkları takdirde sıfırdan daha büyük bir puanla ödüllendirilen aminoasitleri birbiriyle ilişkilendirdim. Ayrıca, bir aminoasit ne kadar seyrekse de onu o kadar büyük bir halde gösterdim:
Yukarıdaki grafik pek çok şeyi anlatıyor. Örneğin, P, G ve C aminoasitlerinin yerini başka bir aminoasit dolduramıyor. Bunun yanısıra, Y ve F aminoasitleri de proteomda neredeyse birbirinin yerine kullanılabiliyor (B ve Z kısaltmaları bir değil iki aminoasidi birden temsil ediyor). Aminoasitlerin kısaltmalarına bu sayfadan ulaşabilirsiniz. Yukarıdaki grafiği ve aminoasitlerin genel özelliklerini birlikte değerlendirdiğimizde ilginç bilgilere ulaşıyoruz (yandaki grafikte aminoasitlerin kimyasal özelliklerine göre sınıflandırılarak renklendirilmiş halini bulabilirsiniz). Örneğin Proline (P) halkalı olarak sınıflandırılan tek protein. Glycine (G) alifatik olarak sınıflandırılmış ve bu sınıfa ait bir diğer aminoasit olan Alanin (A) de neredeyse benzer bir profile sahip. Tabii ki bu tarz bir sınıflandırma bu ilişkilerin tamamını açıklamıyor ancak bize bazı ipuçları verebiliyor; buradan alternatif bir aminoasit sınıflandırması dahi çıkarılabilir.
Bu yazı dizilim hizalama [sequence alignment] konusuna bir giriş mahiyeti taşıyor, daha geniş bilgiye ilgili Wikipedia sayfasından (Sequence Alignment) ulaşabilirsiniz.
Sözün Özü:
DNA, RNA veya protein dizilimlerinin hizalanması bir dizilimin iyi bilinen bir referans kullanılarak tespit edilmesine olanak sağladığı gibi, ortak motiflerin saptanmasıyla fonksiyonel bölgelerin tespiti de başta olmak üzere birçok keşfe yol açabilir. Önemli olan, yaptığınız araştırmaya uygun puanlama matrislerinin seçilmesidir. BLAST62 en yaygın kullanılanıdır ve BLAST bu tabloyu temel alır.
Proje:
Yukarıdaki grafikte birbiriyle ilişkili her bir aminoasit çiftinin ortak özelliklerini bulun ve aradaki benzerlik ve farklılıkların ne tür bir yapısal değişikliğe neden olabileceğini tahmin etmeye çalışın.
Meraklısına:
Yaygın olarak kullanılan BLOSUM62 benzerlik tablosunun kısmen yanlış hesaplandığını biliyor musunuz? Yine de bu halinin arama [search] performansını arttırdığı düşünülüyor :)