In questa sezione, descriviamo l’algoritmo utilizzato per calcolare la composizione delle sequenze di database e per applicare statistiche basate sulla composizione in TBLASTN. Quindi descriviamo ulteriormente i test riportati in questo documento: gli eseguibili utilizzati, i set di test e i dettagli sui metodi.,
Regolazione compositiva in TBLASTN
L’euristica BLAST utilizza un sistema di punteggio generale, come la serie di matrici PAM o BLOSUM, per scoprire sequenze di database che potrebbero allinearsi alla query e probabili punti di partenza per gli allineamenti. In BLAST, un allineamento è noto come coppia ad alto punteggio o HSP. Un elenco di HSP per ogni coppia significativa query-soggetto viene creato utilizzando un algoritmo a più stadi., In ogni fase, gli HSP possono essere eliminati dall’elenco corrente per una serie di motivi, tra cui avere un punteggio insufficiente, essere contenuti in un HSP con punteggio più alto o condividere un endpoint con un HSP con punteggio più alto. Di conseguenza, mentre ogni fase successiva dell’algoritmo di BLAST richiede un calcolo significativamente maggiore per ogni HSP, è necessario considerare un minor numero di HSP.
La regolazione compositiva, utilizzata da TBLASTN o da altre modalità operative, viene applicata solo nella fase finale di una ricerca BLAST., In questo modo, le modalità che utilizzano la regolazione compositiva applicano l’euristica veloce di BLAST per individuare le regioni che potrebbero contenere e i punti di partenza che potrebbero portare a allineamenti ad alto punteggio. Applicano la regolazione compositiva solo prima dell’algoritmo di allineamento più sensibile e più costoso dal punto di vista computazionale, il calcolo di un allineamento gapped che include informazioni che specificano le posizioni degli spazi vuoti, informazioni note come “traceback”., L’elenco di HSP prodotto da questo allineamento gapped finale, dopo essere stato filtrato per HSP insufficientemente significativi o ridondanti, è l’elenco presentato all’utente.,idually per ogni query-soggetto coppia, sono come segue: (1) calcolare windows di interesse utilizzando l’elenco di Hsp dalle fasi preliminari dell’ESPLOSIONE algoritmo; (2) ottenere tradotto soggetto di dati per windows e filtro per rimuovere interessante sottosequenze; (3) calcolare la composizione del soggetto regione per ogni HSP un riallineamento; (4) calcolare una matrice di punteggio per ogni HSP un riallineamento, in base alla composizione del soggetto regione che HSP e sulla composizione della query; (5) l’esecuzione di un gapped allineamento con traceback a ricalcolare l’elenco delle Hsp, utilizzando il nuovo punteggio di matrici., In pratica, questi passaggi di alto livello sono intercalati per ridurre i requisiti di memoria.
Finestre di calcolo di interesse
Per ogni corrispondenza tra la query e una sequenza di soggetti, l’algoritmo di regolazione compositiva viene fornito un elenco separato di HSP. Ogni HSP specifica, insieme ad altre informazioni, un intervallo nella sequenza oggetto che è stato allineato alla query. Questi intervalli vengono utilizzati come segue per calcolare un elenco di finestre. Innanzitutto, viene creato un elenco preliminare di finestre per la sequenza dell’oggetto., Questo elenco contiene una finestra per ogni HSP, la finestra che circonda l’intervallo soggetto dell’HSP, incluse 600 basi a sinistra ea destra dell’intervallo soggetto se sono disponibili molti dati di sequenza. Quindi viene creato un elenco finale di finestre unendo le finestre nella stessa cornice di traduzione se si toccano o si sovrappongono. Per ogni finestra, viene mantenuto un elenco di HSP corrispondenti alla finestra.
Ottenere e filtrare i dati del soggetto
I dati del soggetto nucleotidico all’interno di una finestra vengono ottenuti e tradotti utilizzando il frame di traduzione di quella finestra., L’algoritmo SEG con dimensione finestra 10, low-cutoff 1.8 e high cutoff 2.1 viene utilizzato per mascherare le regioni a bassa complessità nella finestra oggetto. I parametri sono stati scelti come risultato dello studio. Una regione a bassa complessità è tipicamente dominata da pochi residui distinti spesso, ma non sempre, in un modello ripetitivo. Esempi tipici sono i monomeri poliglicina o poliprolina. I punteggi di allineamento che includono i punteggi delle regioni a bassa complessità tendono a sopravvalutare il significato degli allineamenti e portano a molte corrispondenze false positive.,
L’effetto dell’applicazione dell’algoritmo SEG a una sequenza aminoacidica è quello di sostituire ogni residuo in una regione a bassa complessità con il carattere X: un carattere a cui viene assegnato un piccolo punteggio negativo quando allineato a qualsiasi carattere, incluso se stesso. I dati oggetto vengono filtrati prima di calcolare le matrici di punteggio regolate in modo compositivo e le occorrenze del carattere X vengono ignorate quando si calcola la composizione di una sequenza. A differenza del codice di regolazione della composizione, le fasi preliminari della ricerca BLAST non filtrano i dati dell’oggetto.,
Il filtro SEG può anche essere applicato alla sequenza di query. Il filtraggio SEG della query è un’opzione da riga di comando sia per BLASTP che per TBLASTN. I programmi differiscono in quanto il filtraggio SEG della query è disattivato per impostazione predefinita in BLASTP ma attivo per impostazione predefinita in TBLASTN. Non abbiamo filtrato la query in alcun risultato riportato in questo documento. I parametri SEG utilizzati per filtrare la sequenza oggetto applicano una soglia più alta per dichiarare una regione a bassa complessità rispetto ai parametri predefiniti utilizzati per filtrare la query., Il motivo per cui la sequenza di query viene filtrata in modo più rigoroso è che la sequenza di query viene utilizzata in ogni fase dell’algoritmo di BLAST. SEG filtraggio del soggetto si verifica solo nelle fasi finali di una ricerca BLAST, e sotto-filtraggio dei dati all’interno di una finestra soggetto avrà effetto solo un singolo confronto.
Calcolo della composizione del soggetto
Per TBLASTN, i dati di sequenza e gli intervalli di soggetti degli HSP all’interno di una finestra vengono utilizzati per determinare un intervallo che può contenere dati aminoacidici correttamente tradotti., La finestra viene cercata rigorosamente a sinistra dell’intervallo soggetto dell’HSP per trovare l’occorrenza più a destra di un codone di arresto. Se ne viene trovato uno, la posizione 20 caratteri a destra del codone stop è il limite sinistro dell’intervallo di composizione, con la restrizione che l’intero intervallo soggetto dell’HSP sia incluso. Se non viene trovato alcun codone di stop, l’endpoint sinistro è l’endpoint sinistro della finestra. La regola simmetrica viene applicata a destra.,
L’intento non è necessariamente quello di individuare il codone stop che termina la proteina, ma piuttosto di utilizzare la presenza di un codone stop per indicare che il codone ipoteticamente tradotto si trova in una regione non codificante. In effetti, la regione non codificante può essere un introne piuttosto che la vera fine della sequenza aminoacidica. Poiché non stiamo cercando di trovare un codone di arresto terminante, proponiamo una regola simmetrica per determinare l’intervallo di sequenza da utilizzare per la regolazione della composizione anche se la traduzione biologica è asimmetrica.,
In una sequenza di DNA casuale con il 50% di contenuto di GC, ci si aspetterebbe di trovare un codone di stop in una sequenza aminoacidica ipoteticamente tradotta in media una volta ogni 21 caratteri. Pertanto, istituiamo un margine di 20 caratteri tra il codone stop e l’intervallo da utilizzare per la regolazione della composizione, con la restrizione che l’intero intervallo soggetto dell’HSP sia incluso.
Data una particolare regione, TBLASTN considera solo i 20 amminoacidi standard quando calcola la composizione; il carattere X, il carattere stop e tutti gli altri caratteri non standard sono completamente ignorati., Quando la lunghezza della sequenza viene utilizzata negli algoritmi di regolazione composizionale, il valore utilizzato non conta le occorrenze di caratteri ignorati.
Calcolo delle matrici di punteggio regolate dalla composizione
Schäffer et al. e Yu et al. mostra come regolare i punteggi di sostituzione per i 20 aminoacidi standard. Per gli amminoacidi standard, applichiamo queste tecniche. Questi documenti, tuttavia, non discutono il trattamento di amminoacidi che si verificano raramente, caratteri di ambiguità a due lettere, il carattere X o il carattere stop., Discutiamo il trattamento dei caratteri X e stop in questa sezione, perché si verificano comunemente nelle ricerche TBLASTN. Discutiamo il trattamento degli altri personaggi nel file aggiuntivo 3.
Il carattere di arresto si verifica frequentemente nelle sequenze tradotte e occasionalmente all’interno di allineamenti significativi. Un’occorrenza del carattere di stop di solito indica che si sta traducendo una regione non codificante o una regione di codifica nel frame sbagliato. Naturalmente, un carattere di stop può anche semplicemente segnare la fine della traduzione., Tuttavia, interrompere personaggi si verificano all’interno di allineamenti significativi per diversi motivi: il soggetto sequenza può contenere un pseudogene, il tema, la sequenza potrebbe essere il DNA mitocondriale, in cui alcuni codoni che sono codoni di stop DNA nucleare vengono tradotti per la vera aminoacidi ; il soggetto sequenza può contenere un codone di stop che viene convertito in vivo per una selenocysteine o pyrrolysine residuo; il soggetto sequenza può rappresentare un gene, come il gene hdc in D. melanogaster, che codifica per una proteina prodotto da mRNA readthrough; o ci può essere un errore nella sequenza in materia di sequenza.,
Il punteggio appropriato del carattere di stop è essenziale per TBLASTN. Qualsiasi carattere allineato a un carattere di stop dovrebbe ricevere un punteggio negativo, ma non un punteggio negativo di tale entità da non consentire allineamenti validi contenenti un codone di stop. BLAST assegna uniformemente lettere allineate ad un codone stop un punteggio integrale che, data la scala utilizzata, è il più vicino possibile a -2 bit.
Come appena discusso, gli allineamenti TBLASTN biologicamente significativi e statisticamente significativi possono talvolta contenere codoni di stop tradotti., Tuttavia, la presenza di molti codoni di stop nelle regioni non codificanti e nelle regioni di codifica out-of-frame rende molto improbabile che queste regioni produrranno allineamenti ad alto punteggio per caso. Di conseguenza, per i calcoli E-value, TBLASTN presuppone che la lunghezza di una sequenza di database sia la lunghezza della proteina prodotta dalla traduzione in un singolo frame di lettura, anche se la traduzione viene effettivamente eseguita in tutti e sei i frame di lettura., Che molte sequenze di DNA di database sono non codificanti su gran parte delle loro lunghezze può essere una spiegazione per le statistiche generalmente conservative di S-TBLASTN e C-TBLASTN mostrato in Figura 1.
A causa dell’applicazione dell’algoritmo SEG, il carattere di ambiguità X è comune e il trattamento dei caratteri X può influire in modo significativo sulle prestazioni dell’algoritmo. Segniamo allineamenti con X come segue. Quando si utilizza il ridimensionamento della matrice composizionale o la regolazione della matrice composizionale, i punteggi di sostituzione vengono calcolati per tutti gli amminoacidi 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., In altre parole, il punteggio di corrispondenza di un amminoacido standard con X è il valore atteso su tutte le corrispondenze di quell’amminoacido con un amminoacido standard, a condizione che questo valore sia inferiore a -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 ., Una formula analoga all’equazione(1) viene utilizzata per calcolare il punteggio di allineamento di un carattere X nella query a un amminoacido standard nel soggetto. Il punteggio per allineare X a se stesso è il più piccolo del punteggio atteso di allineare due amminoacidi standard e -1, arrotondato al numero intero più vicino.
Eseguire un allineamento gapped con le routine traceback
che applicano statistiche basate sulla composizione non si limitano a ripetere gli allineamenti, ma piuttosto a ricalcolarli. Gli allineamenti vengono calcolati utilizzando una delle due tecniche., Per impostazione predefinita, l’algoritmo x-drop viene applicato a un insieme di punti di partenza specificati negli elenchi di HSP forniti dalle fasi precedenti dell’algoritmo BLAST. Come risultato delle modifiche apportate nel corso di questo progetto, si può alternativamente specificare che il rigoroso algoritmo Smith-Waterman essere applicato all’interno di ogni finestra. Se viene applicato l’algoritmo x-drop, la composizione viene calcolata individualmente per ogni HSP riallineato. Se viene utilizzato l’algoritmo Smith-Waterman, la composizione di una finestra è considerata la composizione del suo HSP con il punteggio più alto., Mettere in comune la composizione delle regioni oggetto di più HSP all’interno di una finestra è problematico perché gli HSP non appartengono necessariamente allo stesso allineamento, o anche allo stesso insieme di tracciati collegati. Il valore predefinito in TBLASTN è quello di utilizzare l’algoritmo x-drop, e usiamo l’algoritmo x-drop nei test presentati in questo documento.
Il seguente pseudocodice mostra come gli allineamenti corrispondenti a una singola corrispondenza oggetto-query vengono ricalcolati quando viene utilizzato l’algoritmo 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.,
Algoritmo 1
Ripristina gli allineamenti in una finestra.,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 è considerato contenuto in un secondo HSP se i suoi limiti di query e soggetto sono contenuti nei limiti di query e soggetto del secondo HSP e se il secondo HSP ha un punteggio uguale o superiore.,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., In questo modo, chiamando ripetutamente la routine WITH_DISTINCT_ENDS si garantisce che l’elenco finale di tracciati non contenga un allineamento che condivide un endpoint con un allineamento con punteggio più alto. Quando due allineamenti condividono lo stesso endpoint, quello con punteggio più alto è l’allineamento preferito; l’allineamento con punteggio più basso è un artefatto non ottimale dell’euristica BLAST.
L’algoritmo x-drop richiede un punto di partenza (p q , p s ) che forzerà un allineamento tra offset p q nella query e p s nel soggetto. Calcola un allineamento in entrambe le direzioni a partire da questo punto., Viene definito un punto di partenza per ogni HSP riallineato. Se possibile, il punto di partenza originariamente utilizzato per calcolare l’HSP viene riutilizzato. A causa degli effetti del filtraggio SEG e della matrice di punteggio appena calcolata, tuttavia, il punto di partenza precedente potrebbe non essere più desiderabile; potrebbe trovarsi in una regione di punteggio non positivo. Discutiamo la regola utilizzata per convalidare il punto di partenza esistente e, se necessario, scegliamo uno nuovo, nel file aggiuntivo 3: tblastn_suppl.PDF.,
Infine, notiamo che l’algoritmo 1 è anche uno pseudocodice corretto per BLASTP, che esegue ricerche protein-query, protein-database. La differenza è che per BLASTP c’è solo una finestra per ogni sequenza di soggetti: la finestra che include l’intera sequenza. Inoltre, per BLASTP la composizione dell’intera sequenza del soggetto viene sempre utilizzata quando si esegue la regolazione compositiva. Pertanto, la matrice regolata in modo compositivo è necessariamente la stessa per ogni HSP in una finestra e deve essere calcolata solo una volta., In pratica, lo stesso codice viene utilizzato sia per TBLASTN che per BLASTP per implementare l’algoritmo 1, ma per BLASTP viene utilizzato un condizionale per garantire che la matrice venga calcolata una sola volta per ogni finestra.
Set di test e programmi utilizzati
Descriviamo di seguito gli eseguibili specifici, i set di dati e i metodi utilizzati per generare i risultati presentati in questo documento. Le varianti di TBLASTN qui riportate sono state scritte in C e, come indicato di seguito, alcune varianti sono disponibili come parte delle distribuzioni software NCBI C e C++; i moduli computazionali coinvolti sono speculari tra le due distribuzioni., Numerosi programmi ausiliari utilizzati per automatizzare i test e riassumere i risultati sono stati scritti in C, Perl, Python e Bourne shell script.
Eseguibili utilizzati
TBLASTN è una modalità di funzionamento per l’eseguibile blastall. Questo eseguibile è disponibile per il download da. Le varianti C-TBLASTN e S-TBLASTN sono disponibili come set di opzioni per l’eseguibile blastall. S-TBLASTN viene richiamato usando le opzioni della riga di comando “- p tblastn-F F-C 1″. C-TBLASTN viene richiamato usando opzioni simili, ma con”- C 1 “sostituito da” – C 2″. B-TBLASTN non è attualmente disponibile come set di opzioni della riga di comando., TBLASTN può essere eseguito senza statistiche basate sulla composizione, omettendo l’opzione”-C”, ma la versione predefinita viene eseguita con una precisione inferiore rispetto a B-TBLASTN. Gli eseguibili che eseguono B-TBLASTN e le versioni specifiche di S-TBLASTN e C-TBLASTN utilizzate in questo documento sono disponibili per il download all’indirizzo.
L’eseguibile blastall per impostazione predefinita utilizza BLOSUM62 per eseguire allineamenti di sequenze di amminoacidi, e questa è la matrice utilizzata in tutte le fasi prima che venga eseguita la regolazione della composizione. L’opzione” – F F ” disabilita il filtraggio SEG della sequenza di query., Il filtraggio SEG della sequenza soggetto è attivo per impostazione predefinita in una qualsiasi delle modalità di regolazione della composizione. Consideriamo il filtraggio di entrambe le sequenze non necessario; quando abbiamo provato a filtrare entrambe le sequenze, non abbiamo visto alcun miglioramento nell’accuratezza statistica, ma abbiamo visto un calo dei punteggi ROC (dati non mostrati).
Test utilizzando query permutate casualmente
Per misurare l’efficacia delle statistiche basate sulla composizione nell’eliminare false corrispondenze con basso valore E, abbiamo eseguito una serie di test utilizzando sequenze di amminoacidi permutate casualmente dal genoma del topo (Mus musculus)., Un migliaio di sequenze proteiche sono state selezionate casualmente dalla lista delle proteine murine RefSeq corrente il 10 gennaio 2006. Le sequenze sono state permutate usando il loro numero di identificazione GenBank come seme per un generatore di numeri casuali. Le sequenze permutate sono fornite come file aggiuntivo 1.
Abbiamo allineato le sequenze permutate a un database di sequenze cromosomiche dall’assemblaggio di riferimento della build 35 del genoma umano (Homo sapiens), pubblicato il 26 agosto 2004. Il database include i cromosomi X e Y e i frammenti di sequenza non posizionati inclusi nella build., Abbiamo omesso il genoma mitocondriale dal database, tuttavia, poiché queste sequenze sono note (vedi) per avere un codice genetico diverso dal DNA nucleare.
ROC score test sul genoma del lievito
Per testare l’efficacia di varie modalità di regolazione della composizione per TBLASTN, abbiamo eseguito una serie di test utilizzando il genoma nucleare del lievito. Abbiamo scaricato il genoma del lievito da, un sito contenente genomi di riferimento a cura di personale NCBI. La versione del genoma che abbiamo usato è stata creata il 16 maggio 2005.,
Abbiamo allineato un insieme di 102 domini proteici al genoma del nucleotide del lievito usando TBLASTN. Questo set di test è stato sviluppato per lo studio in . Una versione aggiornata è stata utilizzata in , in cui un elenco umano curata di vere partite positive al proteoma lievito è stato utilizzato per generare punteggi ROC. Per i test descritti qui, abbiamo aggiornato la vera lista positiva per riflettere i cambiamenti nel genoma del lievito pubblicato. L’elenco aggiornato contiene 987 corrispondenze query-soggetto a 894 sequenze di soggetti distinti. La versione del set di test utilizzato in questo documento è fornita come file aggiuntivo 2.,
Nel genoma del lievito, ogni proteina nota del lievito è annotata con la posizione e il filo della sua regione di codifica. Queste annotazioni ci permettono di adattare il set di test per l’uso con TBLASTN come segue. Per TBLASTN, gli allineamenti sono divisi in tre categorie: (1) allineamenti che corrispondono a una query alla regione di codifica di una corrispondenza positiva vera nota; (2) allineamenti che corrispondono a una query a una regione di codifica nota che non è una corrispondenza positiva vera; e (3) allineamenti che non corrispondono a una regione di codifica nota., Si dice che un allineamento corrisponda a una query a una regione di codifica se la parte oggetto dell’allineamento si sovrappone alla regione di codifica e si trova sullo stesso filo.
Non è raro che ci sia più di un allineamento tra una query e una regione di codifica. In effetti questo è previsto; le ricerche proteine-proteine riportano anche allineamenti multipli tra coppie di proteine. Quando c’è più di un allineamento a una regione di codifica, solo l’allineamento del valore E più basso tra una particolare query e la regione di codifica viene utilizzato quando si calcolano i punteggi ROC., Non viene fatto alcun tentativo di applicare una regola simile alle regioni non codificanti. Tutti gli allineamenti che non si sovrappongono a una regione di codifica sono classificati come falsi positivi e contati quando si calcolano i punteggi ROC.
Abbiamo fatto due eccezioni esplicite a questo schema per la classificazione degli hit. La prima eccezione è quella di aggiungere un particolare pseudogene (Entrez Gene ID 850644) alla nostra lista di regioni codificanti e di rendere lo pseudogene un vero positivo per una delle nostre query, aumentando il numero massimo possibile di veri positivi a 988., Ciascuna delle varianti testate ha trovato un allineamento a questo pseudogene con valore E inferiore a 10-12. Lo pseudogene è espresso e produce una proteina funzionale in determinate condizioni . Anche se questa regione è etichettata come pseudogene, non crediamo che un algoritmo di allineamento dovrebbe essere previsto per distinguerla da un vero gene. La seconda eccezione consiste nel classificare un particolare allineamento che si sovrappone a una vera regione di codifica positiva e una regione di codifica falsa positiva come una vera corrispondenza positiva. Questa sovrapposizione è riportata da tutte e tre le varianti di TBLASTN.