În această secțiune, vom prezenta algoritmul folosit pentru a calcula compoziția de baze de date de secvențe și de a aplica compoziția pe bază de statistici în TBLASTN. Apoi descriem în continuare testele raportate în această lucrare: executabilele utilizate, seturile de teste și detalii despre metode.,
Compozitie ajustare în TBLASTN
EXPLOZIE euristici de utilizare generală sistem de notare, cum ar fi PAM sau BLOSUM serie de matrice, pentru a descoperi baza de date de secvențe probabil să se alinieze la interogare și probabil puncte de plecare pentru aliniamente. În BLAST, o aliniere este cunoscut ca o pereche de mare punctaj, sau HSP. O listă de HSPs pentru fiecare pereche semnificativă de interogare-subiect este creată folosind un algoritm în mai multe etape., La fiecare etapă, HSPs pot fi selectate din lista curentă pentru un număr de motive, inclusiv de a avea suficient de mare scor, fiind cuprinse într-o mai mare punctaj HSP, sau de partajare un efect cu o mai mare punctaj HSP. Drept urmare, în timp ce fiecare etapă succesivă a algoritmului BLAST necesită un calcul semnificativ mai mare pentru fiecare HSP, trebuie luate în considerare mai puține HSP.
ajustarea compozițională, indiferent dacă este utilizată de TBLASTN sau de alte moduri de funcționare, se aplică numai în etapa finală a unei căutări BLAST., În acest mod, modurile care utilizează ajustarea compozițională aplică euristica rapidă a BLAST pentru a localiza regiunile susceptibile de a conține și punctele de plecare susceptibile să conducă la alinieri cu punctaj ridicat. Ele aplică ajustarea compozițională numai înainte de algoritmul de aliniere cel mai sensibil și mai scump din punct de vedere computațional, calculul unei alinieri gapped care include informații care specifică locațiile lacunelor, informații cunoscute sub numele de „traceback”., Lista HSPs produsă de această aliniere finală gapped, după ce a fost filtrată pentru HSPs insuficient de semnificativ sau redundant, este lista prezentată utilizatorului.,idually pentru fiecare interogare-subiect pereche, sunt după cum urmează: (1) calcula windows de interes, folosind lista de HSPs din etapele preliminare ale EXPLOZIE algoritm; (2) să obțină tradus subiectul datelor pentru windows și se filtrează pentru a îndepărta neinteresant subsequences; (3) calculează compoziția subiectului regiune pentru fiecare HSP pentru a fi realiniat; (4) calcula o matrice de notare pentru fiecare HSP să fie redat, pe baza compoziției din subiectul regiune din care HSP și pe compoziția de interogare; (5) de a efectua un schimb de aliniere cu traceback de a recalcula lista de HSPs, folosind noua notare matrici., În practică, acești pași de nivel înalt sunt intercalați pentru a reduce cerințele de memorie.
calculul ferestrelor de interes
pentru fiecare potrivire între interogare și o secvență de subiect, algoritmul de ajustare compozițională este dat o listă separată de HSPs. Fiecare HSP specifică, împreună cu alte informații, un interval din secvența subiectului care a fost aliniat la interogare. Aceste intervale sunt utilizate după cum urmează pentru a calcula o listă de ferestre. În primul rând, este creată o listă preliminară de ferestre pentru secvența subiectului., Această listă conține o fereastră pentru fiecare HSP, fereastra care înconjoară domeniul de subiect al HSP, inclusiv 600 de baze la stânga și la dreapta domeniului de subiect, dacă sunt disponibile atât de multe date de secvență. Apoi, o listă finală de ferestre este creată prin îmbinarea ferestrelor în același cadru de traducere dacă acestea ating sau se suprapun. Pentru fiecare fereastră, se menține o listă de HSPs corespunzătoare ferestrei.
obținerea și filtrarea datelor subiectului
datele subiectului nucleotidic dintr-o fereastră sunt obținute și traduse folosind Cadrul de traducere al ferestrei respective., Algoritmul SEG cu dimensiunea ferestrei 10, low-cutoff 1.8 și high cutoff 2.1 Este utilizat pentru a masca regiunile cu complexitate redusă din fereastra subiectului. Parametrii au fost aleși ca rezultat al studiului. O regiune cu complexitate redusă este de obicei dominată de câteva reziduuri distincte, adesea, dar nu întotdeauna, într-un model repetitiv. Exemple tipice sunt monomerii poliglicinei sau poliprolinei. Scorurile de aliniere care includ scorurile regiunilor cu complexitate scăzută tind să supraestimeze semnificația aliniamentelor și să conducă la multe meciuri fals pozitive.,efectul aplicării algoritmului SEG la o secvență de aminoacizi este de a înlocui fiecare reziduu într-o regiune cu complexitate scăzută cu caracterul X: un caracter căruia i se atribuie un scor negativ mic atunci când este aliniat la orice caracter, inclusiv el însuși. Datele subiect sunt filtrate înainte de matrice de notare ajustate compozițional sunt calculate, și apariții ale caracterului X sunt ignorate atunci când se calculează compoziția unei secvențe. Spre deosebire de codul de ajustare a compoziției, etapele preliminare ale căutării BLAST nu filtrează datele subiectului.,
filtrarea SEG poate fi, de asemenea, aplicată secvenței de interogare. Filtrarea SEG a interogării este o opțiune de linie de comandă atât pentru BLASTP și TBLASTN. Programele diferă prin faptul că filtrarea SEG a interogării este dezactivată în mod implicit în BLASTP, dar în mod implicit în tblastn. Nu am filtrat interogarea în niciun rezultat raportat în această lucrare. Parametrii SEG utilizați pentru a filtra secvența subiectului aplică un prag mai mare pentru declararea unei regiuni ca fiind de complexitate scăzută decât parametrii impliciți utilizați pentru a filtra interogarea., Motivul pentru care secvența de interogare este filtrată mai strict este că secvența de interogare este utilizată în fiecare etapă a algoritmului BLAST. Filtrarea SEG a subiectului are loc numai în etapele finale ale unei căutări de explozie, iar sub-filtrarea datelor dintr-o fereastră de subiect va efectua doar o singură comparație.pentru TBLASTN, datele de secvență și intervalele de subiect ale HSPs dintr-o fereastră sunt utilizate pentru a determina un interval care ar putea conține date de aminoacizi corect traduse., Fereastra este căutată strict în stânga domeniului subiectului HSP pentru a găsi cea mai dreaptă apariție a unui codon de oprire. Dacă se găsește unul, atunci locația 20 de caractere din dreapta codonului stop este limita stângă a intervalului de compoziție, cu restricția ca întregul domeniu de subiect al HSP să fie inclus. Dacă nu se găsește codon stop, atunci punctul final din stânga este punctul final din stânga al ferestrei. Regula simetrică este aplicată la dreapta.,intenția nu este neapărat de a localiza codonul stop care termină proteina, ci mai degrabă de a folosi prezența unui codon stop pentru a indica faptul că codonul tradus ipotetic se află într-o regiune noncoding. Într-adevăr, Regiunea noncoding poate fi un intron, mai degrabă decât adevăratul capăt al secvenței de aminoacizi. Deoarece nu încercăm să găsim un codon stop de terminare, propunem o regulă simetrică pentru a determina intervalul de secvență de utilizat pentru ajustarea compoziției, chiar dacă traducerea biologică este asimetrică.,
într-o secvență aleatorie de ADN cu conținut de GC de 50%, s-ar aștepta să găsească un codon stop într-o secvență de aminoacizi tradusă ipotetic, în medie, o dată la 21 de caractere. Prin urmare, instituim o marjă de 20 de caractere între codonul stop și intervalul de utilizat pentru ajustarea compoziției, cu restricția ca întregul domeniu de subiect al HSP să fie inclus.având în vedere o anumită regiune, TBLASTN ia în considerare numai 20 de aminoacizi standard, atunci când compoziția de calcul; caracterul X, caracterul stop, și toate celelalte caractere nestandard sunt complet ignorate., Când lungimea secvenței este utilizată în algoritmii de ajustare compozițională, valoarea utilizată nu contează aparițiile caracterelor ignorate.
calcul matrici de notare ajustate compozițional
Schäffer și colab. și Yu și colab. arătați cum să ajustați scorurile de substituție pentru cei 20 de aminoacizi standard. Pentru aminoacizii standard, aplicăm aceste tehnici. Aceste lucrări nu, cu toate acestea, discuta despre tratamentul de aminoacizi care apar rar, două litere caractere ambiguitate, caracterul X, sau caracterul stop., Discutăm despre tratamentul caracterelor X și stop în această secțiune, deoarece acestea apar frecvent în căutările TBLASTN. Discutăm despre tratamentul celorlalte caractere din fișierul suplimentar 3.
caracterul stop apare frecvent în secvențe traduse și ocazional în aliniamente semnificative. O apariție a caracterului stop indică de obicei că se traduce o regiune noncoding sau o regiune de codificare într-un cadru greșit. Desigur, un caracter de oprire poate marca pur și simplu sfârșitul traducerii., Cu toate acestea, opri personaje apar în cadrul semnificative aliniamente pentru mai multe motive: subiectul secvență poate conține un pseudogene; subiectul secvență poate fi ADN-ul mitocondrial, în care anumiți codoni care sunt codonii stop în ADN nuclear sunt traduse cu adevărat aminoacizi ; subiectul secvență poate conține un codon stop care este convertit in vivo la un selenocisteina sau pyrrolysine reziduuri; subiectul secvență poate reprezenta o genă, cum ar fi hdc gene la D. melanogaster, care codifică o proteină produs de arnm de citire; sau poate exista o secvențiere eroare în subiect secvență.,notarea corespunzătoare a caracterului stop este esențială pentru tblastn. Orice caracter aliniat la un caracter stop ar trebui să primească un scor negativ, dar nu un scor negativ de o magnitudine atât de mare încât să interzică aliniamentele valide care conțin un codon stop. BLAST atribuie uniform litere aliniate la un codon de oprire un scor integral care, având în vedere scara utilizată, este cât mai aproape posibil de -2 biți.după cum sa discutat, aliniamentele tblastn semnificative din punct de vedere biologic și statistic pot conține uneori codoni de oprire traduși., Cu toate acestea, prezența multor codoni stop în regiunile care nu codifică și în regiunile de codificare în afara cadrului face foarte puțin probabil ca aceste regiuni să producă alinieri cu punctaj ridicat din întâmplare. În consecință, pentru calculele valorii E, TBLASTN presupune că lungimea unei secvențe de bază de date este lungimea proteinei obținută prin traducere într-un singur cadru de citire, chiar dacă traducerea este de fapt efectuată în toate cele șase cadre de citire., Că multe date secvente de ADN sunt noncoding peste o mare parte din lungimea lor poate fi o explicație pentru care, în general conservatoare statistica S-TBLASTN și C-TBLASTN prezentată în Figura 1.
datorită aplicării algoritmului SEG, caracterul de ambiguitate X este comun, iar tratamentul caracterelor X poate afecta în mod semnificativ performanța algoritmului. Marcăm aliniamente cu X după cum urmează. Atunci când se utilizează fie scalarea matricei compoziționale, fie ajustarea matricei compoziționale, scorurile de substituție sunt calculate pentru toți aminoacizii standard.,0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFse=uaaa@3845@ is the set of standard amino acids and P ′ j MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacuWGqbaugaqbamaaBaaaleaacqWGQbGAaeqaaaaa@2F6A@ is the probability of amino acid j in the subject sequence., Cu alte cuvinte, scorul de potrivire a unui aminoacid standard cu X este valoarea așteptată pentru toate meciurile acelui aminoacid cu un aminoacid standard, cu condiția ca această valoare să fie mai mică de -1., For B-TBLASTN and S-TBLASTN, P ′ j MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacuWGqbaugaqbamaaBaaaleaacqWGQbGAaeqaaaaa@2F6A@ is the actual frequency of the amino acid in the subject region; for C-TBLASTN, the probabilities are computed using pseudocounts, as described in ., O formulă analogă ecuației (1) este utilizată pentru a calcula scorul de aliniere a unui caracter X în interogare la un aminoacid standard în subiect. Scorul pentru alinierea X la sine este cel mai mic dintre scorul așteptat de aliniere a oricăror doi aminoacizi standard și -1, rotunjit la cel mai apropiat număr întreg.
efectuarea unei alinieri gapped cu traceback
rutinele care aplică statistici bazate pe compoziție nu doar rescore aliniamente, ci mai degrabă le recompune. Aliniamentele sunt calculate folosind una din cele două tehnici., În mod implicit, algoritmul x-drop este aplicat unui set de puncte de pornire specificate în listele de HSPs furnizate din etapele anterioare ale algoritmului BLAST. Ca urmare a modificărilor efectuate în cursul acestui proiect, se poate specifica alternativ că algoritmul riguros Smith-Waterman să fie aplicat în fiecare fereastră. Dacă se aplică algoritmul x-drop, compoziția este calculată individual pentru fiecare HSP care este realiniat. Dacă se utilizează algoritmul Smith-Waterman, compoziția unei ferestre este considerată a fi compoziția HSP cu cel mai mare punctaj., Punerea în comun a compoziției regiunilor subiect ale mai multor PSA într-o fereastră este problematică, deoarece PSA nu aparțin neapărat aceleiași alinieri sau chiar aceluiași set de alinieri legate. Implicit în TBLASTN este de a utiliza algoritmul x-drop, și vom folosi algoritmul x-drop în testele prezentate în această lucrare.
următorul pseudocod arată modul în care aliniamentele corespunzătoare unei singure potriviri interogare-subiect sunt recalculate atunci când se utilizează algoritmul x-drop.,aacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFwe=vaaa@384D@ is a list of windows, D MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ is a source of sequence data, and params is a structure containing all parameters needed for gapped alignment., The variable A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ represents the new set of alignments to be returned, and M represents a compositionally adjusted scoring matrix. The HSP_IS_CONTAINED and WITH_DISTINCT_ENDS routines will be described below; the action of the remaining routines should be clear from their names.,
algoritmul 1
Redo aliniamente într-o fereastră.,MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ , params, cutoff_score)
A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ ←∅
H←windows.,T_BY_SCORE(H)
s←GET_TRANSLATED_SUBJECT (w, D MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFdepraaa@3827@ )
for i←0 to length(H)-1 do
h←H
if forall 0≤ j <i not HSP_IS_CONTAINED(h, H ) then
M←ADJUST_COMPOSITION (q, s, h, params)
a←CALC_X_DROP_ALIGNMENT (q, s, h, M, params)
if a.,abaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ ←WITH_DISTINCT_ENDS (a, A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ )
end if
end if
end for
return A
end function
The HSP_IS_CONTAINED routine returns true if the HSP provided as its first argument is contained in the HSP provided as its second argument., Un HSP este considerat a fi conținut într-un al doilea HSP dacă limitele sale de interogare și subiect sunt conținute în limitele de interogare și subiect ale celui de-al doilea HSP și dacă al doilea HSP are un scor egal sau mai mare.,xAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ if and only if A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ does not already contain an equal- or higher-scoring alignment that shares an endpoint with a.,OvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ , then WITH_DISTINCT_ENDS filters A MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBamrtHrhAL1wy0L2yHvtyaeHbnfgDOvwBHrxAJfwnaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaWaaeGaeaaakeaaimaacqWFaeFqaaa@3821@ to remove any lower-scoring alignments that share an endpoint with a., În acest mod, apelarea repetată a rutinei WITH_DISTINCT_ENDS asigură că lista finală a aliniamentelor nu conține o aliniere care împărtășește un punct final cu o aliniere cu punctaj mai mare. Atunci când două aliniamente împărtășesc același punct final, cel cu punctaj mai mare este alinierea preferată; alinierea cu punctaj mai mic este un artefact suboptimal al euristicii exploziei.algoritmul x-drop necesită un punct de plecare (p q, p s) care va forța o aliniere între offset P q în interogare și p S în subiect. Se calculează o aliniere în ambele direcții pornind de la acest punct., Un punct de plecare este definit pentru fiecare HSP care este realiniat. Dacă este posibil, punctul de plecare care a fost utilizat inițial pentru a calcula HSP este reutilizat. Datorită efectelor filtrării SEG și matricei de notare nou calculate, cu toate acestea, punctul de plecare anterior poate să nu mai fie de dorit; se poate afla într-o regiune cu scor nepozitiv. Discutăm regula folosită pentru a valida punctul de plecare existent și, dacă este necesar, alegem unul nou, în fișierul suplimentar 3: tblastn_suppl.pdf.,în cele din urmă, remarcăm că algoritmul 1 este, de asemenea, pseudocodul corect pentru BLASTP, care efectuează căutări de interogare de proteine, proteine-baze de date. Diferența este că pentru BLASTP există o singură fereastră pentru fiecare secvență de subiect: fereastra care include întreaga secvență. Mai mult, pentru BLASTP compoziția întregii secvențe de subiect este întotdeauna utilizată atunci când se efectuează ajustarea compoziției. Prin urmare, matricea ajustată compozițional este în mod necesar aceeași pentru fiecare HSP dintr-o fereastră și trebuie calculată o singură dată., În practică, același cod este utilizat atât pentru TBLASTN și BLASTP pentru a implementa Algoritmul 1, dar pentru BLASTP un condițional este folosit pentru a asigura matricea este numai calculat o singură dată pentru fiecare fereastră.
Seturi de teste și programe utilizate
descriem mai jos executabilele specifice, seturile de date și metodele utilizate pentru a genera rezultatele prezentate în această lucrare. Variantele de TBLASTN raportat aici au fost scrise în C, și, după cum sa menționat mai jos, unele variante sunt disponibile ca parte a NCBI C și C++ software distribuții; calcul modulele implicate sunt oglindite între cele două distribuții., Numeroase programe auxiliare utilizate pentru automatizarea testării și rezumarea rezultatelor au fost scrise în C, Perl, Python și Bourne shell script.
executabile utilizate
TBLASTN este un mod de operare pentru executabilul blastall. Acest executabil este disponibil pentru descărcare de la. Variantele c-TBLASTN și S-TBLASTN sunt disponibile ca un set de opțiuni pentru executabilul blastall. S-TBLASTN este invocat folosind opțiunile de linie de comandă „-p tblastn-F F-C 1″. C-TBLASTN este invocat folosind opțiuni similare, dar cu”- C 1 „înlocuit cu”- C 2″. B-TBLASTN nu este disponibil în prezent ca un set de opțiuni de linie de comandă., TBLASTN poate fi rulat fără statistici bazate pe compoziție, prin omiterea opțiunii „- C”, dar versiunea implicită rulează cu o precizie mai mică decât B-TBLASTN. Executabile care rula B-TBLASTN și versiuni specifice de S-TBLASTN și C-TBLASTN utilizate în această lucrare sunt disponibile pentru descărcare de la.
blastall executabil implicit folosește BLOSUM62 pentru a efectua aliniamente de secvente de aminoacizi, iar acest lucru este matricea utilizată în toate etapele înainte de compoziție ajustarea este efectuată. Opțiunea „- F F ” dezactivează filtrarea SEG a secvenței de interogare., Filtrarea SEG a secvenței subiectului este activată în mod implicit în oricare dintre modurile de reglare a compoziției. Considerăm că filtrarea ambelor secvențe este inutilă; când am încercat filtrarea ambelor secvențe, nu am văzut nicio îmbunătățire a preciziei statistice, dar am văzut o scădere a scorurilor ROC (datele nu sunt afișate).
teste folosind interogări permutate aleatoriu
pentru a măsura cât de eficiente sunt statisticile bazate pe compoziție în eliminarea potrivirilor false cu valoare e scăzută, am efectuat o serie de teste folosind secvențe de aminoacizi permutate aleatoriu din genomul mouse-ului (mus musculus)., O mie de secvențe de proteine au fost selectate aleatoriu din lista proteinelor de șoarece RefSeq curente la 10 ianuarie 2006. Secvențele au fost permutate folosind numărul lor de identificare GenBank ca o sămânță la un generator de numere aleatorii. Secvențele permutate sunt furnizate ca fișier suplimentar 1.am aliniat secvențele permutate la o bază de date cu secvențe cromozomiale din ansamblul de referință al genomului build 35 al genomului uman (Homo sapiens), lansat pe 26 August 2004. Baza de date include cromozomii X și Y și fragmentele de secvență neplasate incluse în construcție., Cu toate acestea, am omis genomul mitocondrial din Baza de date, deoarece aceste secvențe sunt cunoscute (vezi) ca având un cod genetic diferit de ADN-ul nuclear.pentru a testa eficacitatea diferitelor moduri de ajustare a compoziției pentru TBLASTN, am efectuat o serie de teste folosind genomul nuclear al drojdiei. Am descărcat genomul drojdiei de la, un site care conține genomuri de referință întreținute de personalul NCBI. Versiunea genomului pe care am folosit-o a fost creată pe 16 mai 2005.,
am aliniat un set de 102 domenii de proteine la genomul nucleotidelor de drojdie folosind TBLASTN. Acest set de testare a fost dezvoltat pentru prima dată pentru studiu în . O versiune actualizată a fost utilizată în , în care o listă umană întreținută de meciuri pozitive reale la proteomul drojdie a fost folosit pentru a genera scoruri ROC. Pentru testele descrise aici, am actualizat lista adevărată pozitivă pentru a reflecta modificările genomului de drojdie publicat. Lista actualizată conține 987 query-subiect se potrivește cu 894 secvențe distincte subiect. Versiunea setului de testare utilizat în această lucrare este furnizată ca fișier suplimentar 2.,în genomul drojdiei, fiecare proteină de drojdie cunoscută este adnotată cu locația și firul regiunii sale de codificare. Aceste adnotări ne permit să adaptăm setul de testare pentru utilizare cu TBLASTN după cum urmează. Pentru TBLASTN, aliniamente sunt împărțite în trei categorii: (1) aliniamente care se potrivesc cu o interogare de regiunea de codificare a cunoscut un adevărat rezultat pozitiv; (2) aliniamente care se potrivesc cu o interogare la un cunoscut de codificare regiune care nu este un adevărat pozitiv meci; și (3) aliniamente care nu se potrivesc cu un cunoscut regiunea de codificare., Se spune că o aliniere se potrivește unei interogări cu o regiune de codificare dacă porțiunea de subiect a alinierii se suprapune regiunii de codificare și se află pe aceeași componentă.
nu este neobișnuit să existe mai mult de o aliniere între o interogare și o regiune de codificare. Într-adevăr, acest lucru este de așteptat; căutările proteine-proteine raportează, de asemenea, mai multe alinieri între perechi de proteine. Atunci când există mai multe alinieri la o regiune de codificare, numai cea mai mică aliniere a valorii E între o anumită interogare și regiunea de codificare este utilizată atunci când se calculează scorurile ROC., Nu se face nicio încercare de a aplica o regulă similară regiunilor care nu codifică. Toate aliniamentele care nu se suprapun unei regiuni de codificare sunt clasificate ca potriviri fals pozitive și numărate la calcularea scorurilor ROC.am făcut două excepții explicite de la această schemă pentru clasificarea accesărilor. Prima excepție este de a adăuga o anumită pseudogene (Entrez Gene ID 850644) la lista noastră de codificare regiuni și pentru a face pseudogene un adevărat pozitiv pentru una dintre întrebările noastre, creșterea numărului maxim posibil de rezultate fals pozitive la 988., Fiecare dintre variantele testate a găsit o aliniere la această pseudogenă cu o valoare E mai mică de 10-12. Pseudogena este exprimată și produce o proteină funcțională în anumite condiții . Deși această regiune este etichetată ca pseudogenă, nu credem că ar trebui să se aștepte ca un algoritm de aliniere să o distingă de o genă adevărată. A doua excepție este de a clasifica o anumită aliniere care se suprapune o regiune de codificare pozitiv adevărat și o regiune de codificare fals pozitiv ca un meci pozitiv adevărat. Această suprapunere este raportată de toate cele trei variante ale TBLASTN.