Miglioramenti all’algoritmo di MESCOLANZA per la stima degli antenati individuali

Convalida incrociata

La scelta del numero di popolazioni ancestrali K può rivelarsi difficile quando la genetica di popolazione sottostante di una specie è poco conosciuta. LA STRUTTURA fornisce un mezzo per stimare il miglior valore di K calcolando l’evidenza del modello per ogni K da una serie di scelte. L’evidenza del modello è definita come

(2)

dove f rappresenta la probabilità dei dati e π rappresenta una densità precedente sui parametri. La STRUTTURA approssima l’integrale tramite metodi Monte Carlo. Il nostro framework di ottimizzazione non è adatto per valutare questo integrale. In alternativa, utilizziamo la convalida incrociata. Nella convalida incrociata, miriamo a identificare il miglior valore K come giudicato dalla previsione di punti dati sistematicamente trattenuti. Una tattica simile è anche impiegata dal programma di analisi aplotipo fastPHASE ed è ispirata al metodo di Wold per la convalida incrociata dei modelli PCA .

La nostra procedura di validazione incrociata v-fold suddivide i genotipi non mancanti in sottoinsiemi v di dimensioni approssimativamente uguali (pieghe). A ciascuna delle v iterazioni, i membri di una delle pieghe sono mascherati (temporaneamente contrassegnati come mancanti) per produrre una nuova matrice di dati L’analisi della matrice di dati mascherata non pone nuove sfide. Nel calcolare la log-verosimiglianza, il punteggio e la matrice di informazioni osservate di , ignoriamo semplicemente le voci (i, j) con valori mancanti. La massimizzazione della probabilità di log produce prontamente nuove stime e per i dati mascherati. Quindi prevediamo ogni valore mascherato n ij di . L’errore di predizione è stimato facendo la media dei quadrati dei residui di devianza per il modello binomiale,

(3)

attraverso tutte le voci mascherate su tutte le pieghe. Minimizzare questo errore di previsione stimato su una griglia di valori K suggerisce quindi il K più adatto.

Apprendimento supervisionato dei coefficienti di mescolanza

La strategia di MESCOLANZA di stimare simultaneamente le singole frazioni di ascendenza Q e le frequenze dell’allele di popolazione F è ideale quando non si sa nulla delle popolazioni ancestrali che contribuiscono. In molti scenari, tuttavia, queste popolazioni sono conosciute e sono disponibili diversi individui di riferimento di ciascuna popolazione. Qui è interessante stimare le ascendenze potenzialmente mescolate degli individui rimanenti. Definiamo questa analisi supervisionata, poiché gli individui di riferimento forniscono campioni di formazione in un contesto di apprendimento supervisionato. Per eseguire analisi supervisionate in MISCELA, un .è necessario fornire la mappatura dei file ind da individui a popolazioni e il flag supervised supervised deve essere collegato alla riga di comando.

Le stime degli antenati possono essere stimate in modo più accurato nell’analisi supervisionata perché c’è meno incertezza nelle frequenze degli alleli. L’interpretazione dei risultati è semplificata e i tempi di esecuzione sono più brevi a causa del numero ridotto di parametri da stimare. Sia il numero di iterazioni fino alla convergenza che la complessità computazionale per iterazione diminuiscono. Tuttavia, avvertiamo che l’analisi supervisionata è adatta solo quando gli individui di riferimento possono essere assegnati a popolazioni ancestrali con certezza e le popolazioni ancestrali sono abbastanza omogenee. Per le analisi esplorative, l’analisi non supervisionata è più appropriata e rimane quindi l’impostazione predefinita in AGGIUNTA.

Stima penalizzata e parsimonia del modello

Come notato nel nostro successivo confronto tra apprendimento supervisionato e non supervisionato, i set di dati abbattuti da popolazioni strettamente correlate digitate con un numero modesto di SNP possono rappresentare sfide sostanziali nella stima degli antenati. Per esempio, overfitting tende a produrre stime ascendenza con quantità gonfiate di mescolanza. La soluzione bayesiana a questo problema consiste nell’imporre un’informativa prima di orientare le stime dei parametri lontano dal pericolo quando i dati sono scarsi. Pertanto, la STRUTTURA impone distribuzioni precedenti di Dirichlet sui parametri ancestry e stima un iperparametro α che controlla la forza delle distribuzioni precedenti.

Un’alternativa adatta nel nostro framework di ottimizzazione è quella di eseguire una stima penalizzata. Invece di massimizzare la probabilità di log, massimizziamo una funzione oggettiva costituita dalla probabilità di log meno una penalità . La penalità è progettata per scoraggiare i pregiudizi indesiderati nella matrice di ascendenza stimata appena menzionata. La costante di accordatura λ controlla la forza della penalità. Mentre si è tentati di considerare il logaritmo negato del Dirichlet prima densità che appare nella struttura come una penalità, il Dirichlet (α, …, α) la densità è illimitata sopra nel regime dei parametri α < 1 argu probabilmente l’impostazione più utile per il parametro α–ed è quindi inutilizzabile nel nostro framework di ottimizzazione. Un’alternativa migliore è la penalità approssimativa di ℓ0

che incoraggia non solo il ritiro, ma anche parsimonia aggressivo. In particolare, la penalità approssimativa di ℓ0 porta a zero i piccoli coefficienti di mescolanza. La parsimonia è auspicabile perché porta a stime dei parametri più facilmente interpretabili e probabilmente più realistiche. La stima viene eseguita massimizzando sui suoi argomenti. Aumentando λ o la seconda costante di sintonizzazione γ si eleva l’entità del restringimento e della parsimonia nelle stime risultanti e .

La determinazione delle costanti di sintonizzazione della penalità λ e γ non è banale. Nelle nostre mani la convalida incrociata si è dimostrata efficace su semplici set di dati simulati. Le costanti di sintonizzazione λ e γ sono opzioni definite dall’utente, quindi gli utenti possono esplorare diverse impostazioni coerenti con la convalida incrociata o la propria euristica.

Sfruttare più processori

Set di dati molto grandi (milioni di SNP, migliaia di individui) può ridurre a passo d’uomo anche gli algoritmi efficienti di ADMIXTURE. Dalla nostra pubblicazione originale, abbiamo sintonizzato il nostro algoritmo di base e migliorato la sua velocità di un fattore due. Abbiamo anche implementato una modalità di esecuzione parallela che consente a ADMIXTURE di sfruttare più processori. Questa nuova opzione utilizza il framework OpenMP progettato per una semplice parallelizzazione utilizzando le direttive del compilatore # pragma. Per eseguire analisi con, ad esempio, quattro thread, l’utente deve solo aggiungere il flag-j4 alla riga di comando. Quindi

Data dati di aggiunta/hapmap3.letto 3-j4

analizza il file di dati hapmap3.letto utilizzando 4 fili, assumendo K = 3 popolazioni ancestrali. Le analisi del nostro set di dati hapmap3 con K = 3 sono state accelerate del 392% su una macchina a quattro processori.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.