Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Performance di predizione
Si usano metodi statistici per capire quanto è buona la predizione di struttura tridimensionale di un software.
Jack-knife test
Se devo fare una predizione a due stati (es. la proteina è transmembrana o no), ho bisogno di due (uno per stato) insiemi di apprendimento. Si costruisce, quindi, una tabellina per ciascun insieme di apprendimento che elenca tutti gli oggetti e sulla riga relativa ad ogni oggetto ci sono le variabili che li descrivono. Se l'oggetto è una proteina, le variabili sono la composizione aa, la lunghezza, la carica elettrostatica, ... (possono essere scelte in modo arbitrario stando attenti che non ci sia ridondanza perché a priori non so quali siano importanti e quali no per la predizione a due stadi). Il primo e il secondo insieme di apprendimento devono però avere le stesse variabili. Queste tabelle rappresentano la conoscenza da cui si può ricavare qualcosa.
Quindi, si fanno operazioni...
matematiche per confrontare le due tabelle e capire quali sono le differenze.
Quando poi prendo una nuova proteina, con gli stessi strumenti matematici, vado a confrontarla con i due learning set per vedere a quale learning set assomiglia di più. Il learning set al quale assomiglia di più è il learning set di cui fa parte.
Per verificare se il metodo di previsione si usa oggetti che non ho già usato per costruire i learning set perché altrimenti avrei una sovrastima della performance del metodo di previsione. Questo significa che devo usare casi esterni. Ma non sempre ho abbastanza dati sia per costruire il learning set sia per usare dei casi esterni per la validazione.
Quindi, si sfrutta il jack test che prevede la costruzione di un learning set senza considerare uno degli elementi che viene usato come caso test; quindi, faccio la stessa cosa con un altro elemento. Quindi, uno a uno, tutti gli oggetti del learning set vengano esclusi in modo che non influenzino
la statistica può essere usata come casi test. Si fa quindi una cross validazione totale: ognuno degli oggetti viene rimosso e usato come caso test. Da un punto di vista computazionale, questo test potrebbe risultare complesso, lungo e molto costoso. Quindi, si può usare un altro metodo che è il five-fold cross validation. Si divide ciascun gruppo di oggetti in 5 sottogruppi e ciascun sottogruppo viene usato come insieme di casi test. Poiché ho due gruppi, il test è ripetuto 10 volte. In questo caso, però, la validazione è parziale perché uso un intero sottogruppo come caso test.
Matrice di confusione:
Se la caratteristica dell'oggetto reale e quella prevista è uguale = vero (ho fatto giusto) positivo/negativo
Se la caratteristica dell'oggetto reale e quella prevista è diversa = falso (ho fatto sbagliato) positivo/negativo
Positivo e negativo è semplicemente una denominazione che do alle mie caratteristiche. È una
sceltaarbitraria.Si crea quindi una tabella definita matrice di confusione:
Questi quattro numeri possono essere usati per definire:
sensibilità e specificità: 0 < x < 1 ma tendono ad essere anti-correlate perché se aumento tanto la sensibilità, diminuisco molto la specificità e viceversa. Ad esempio, nei metodi di previsione secondaria, sensibilità e specificità sono intorno all’80%-85%.
Accuratezza: 0 (se non ci sono i veri) < x < 1 (se non ci sono i falsi). Ha però un difetto e per questo è stato inventato il coefficiente di correlazione di Matthews. Questo difetto si mostra quando il set non è bilanciato perché ho un learning set molto grande (nell’esempio quello delle proteine nucleari) e uno molto piccolo (nell’esempio quello delle proteine citoplasmatiche):
L’accuratezza sarebbe del 100% ma in realtà non è vero perché il test mi dà sempre e solo
nucleare (ha un errore). Quindi, ha senso calcolare l'accuratezza solo se i due learning set hanno la stessa numerosità o quasi. Nei casi di sbilanciamento uso il coefficiente di correlazione di Matthews (se 0 = la valutazione è completamente casuale). 09/04/19
Quando voglio testare la performance di previsione di un metodo di previsione, uso un determinato dataset, ma se cambio dataset per testarne la performance probabilmente l'accuratezza, la sensibilità e la specificità variano perché sono dati empirici che dipendono dal dataset. Comunque, se i due dataset sono entrambi molto grandi, allora è probabile che i valori siano simili.
Validazione della procedura da un punto di vista statistico
Validare la procedura da un punto di vista statistico vuol dire capire se le previsioni fatte con il modello in analisi sono migliori di previsioni casuali (per la probabilità ho il 50% di possibilità di azzeccare se ho un problema a 2 stati).
Ci sono due metodi per fare ciò: - metodo randomico (random test) - metodo non randomico (non-random test) Esempio: le topologie dei ponti disolfuro sono di tre tipi -> la previsione è definita a tre stati e si basa sulla composizione aa, sulla distanza tra le cisteine ed altre variabili. Performance: Devo capire se questi valori sono migliori di quelli che otterrei facendo previsioni casuali. Random test Se faccio previsioni a caso su un sistema a 3 stati, la probabilità di azzeccare la topologia è del 33%. Chiamando X una delle tre topologie, per positivo indico la topologia X e per negativo le altre due topologie. La matrice di confusione su un test random è: 1 è il numero di veri positivi (33%) e 2 è il numero di falsi negativi. Le altre 6 sono le proteine con topologia diversa da X. Considero di avere un data set in cui ciascuna delle tre topologie è rappresentata da 3 proteine. Da questa matrice di confusione, posso calcolare i variparametri e li confronto con quelli del metodo di previsione: Il mio metodo di previsione è leggermente meglio della previsione statistica (che ha Mcc = 0)
In questo test, quindi, si assume che gli oggetti siano randomici; tuttavia le proteine non sono oggetti randomici perché:
- è molto più probabile che abbiano circa qualche centinaio di aa, mentre è meno probabile trovare proteine più lunghe o più corte
- non sono formati da una sequenza aa casuale
Pur non essendo il metodo ideale, però, permette di fare una valutazione in tempi piuttosto rapidi che dà una prima indicazione di com'è il modello di previsione.
Non-random test
È un test che assume che le proteine non sono oggetti randomici ma sono oggetti veri che hanno dimensioni, sequenze e carica definite.
Si basa su un mescolamento dei learning set, cioè sposto una proteina con una certa topologia dal suo learning set ad un altro learning set, costruendo
quindi intenzionalmente un learning set sbagliato.Il mescolamento è fatto grazie a un generatore di numeri casuali definito pseudo-random number generation: si dà un seme al generatore associato ad un numero con il quale individua un altro numero che usa come seme per generare il numero successivo. Questi numeri sono uniformemente distribuiti nel range scelto -> è come se fossero scelti a caso, essendo uniformemente distribuiti. Tuttavia, sono pseudo-randomici perché tutto dipende dal seme da cui parto: se parto due volte dallo stesso seme, ottengo sempre gli stessi numeri, mentre se cambio il seme, i numeri generati cambiano.Il rimescolamento avviene a seconda del numero che ottengo con il generatore: se ottengo un certo numero, allora la proteina la metto nell'insieme X; se ottengo un altro numero, allora la metto nell'altro learning set e così via. Lo stesso si fa anche per le altre proteine.Ad esempio:0 - 0,33 -> assegnoL'elemento al learning set X0,33 - 0,66 -> assegno l'elemento al learning set 00,66 - 1 -> assegno l'elemento al learning set P. Poi cambio seme per ottenere un'altra serie di numeri e rifaccio lo stesso processo. Il seme viene variato più volte (1000 volte) e per ciascun set creato trovo i parametri di accuratezza, sensibilità e specificità. Questo dimostra che il metodo di previsione elaborato non funziona meglio del caso -> questo metodo di previsione non può essere usato! Questi elementi matematici si rifanno a quelli di Fibonacci.
Altri indici per la valutazione della performance del metodo:
Indice QE: è un indice che indica l'accuratezza ed è associato ad un pedice che dipende dal numero di stati della previsione (previsione a 2, 3, ... stati). Ad esempio, nelle previsioni di struttura secondaria in cui ho tre stati L, H, E, questo indice è definito Q3.
Valore SOVm = lunghezza del segmento
citosolica e sotto il quale posso definire la proteina di membrana. Questo metodo di previsione è chiamato "Curve ROC" e viene utilizzato per ottimizzare il riconoscimento delle proteine in base alle loro caratteristiche di superficie. Durante la Seconda guerra mondiale, è stato sviluppato per ottimizzare il riconoscimento degli aviatori amici in base alle traiettorie di volo. La predizione della realtà corrisponde alla lunghezza del segmento in cui la predizione della struttura secondaria dell'elemento estende la lunghezza sperimentale del segmento. La lunghezza predetta del segmento (lenP) funziona bene solo se il metodo di previsione è piuttosto vuoto.membrana e sotto il quale la definisco citosolica. Quindi, faccio le mie previsioni in base al valore soglia, creo la matrice di confusione e calcolo la specificità e la sensibilità. Faccio la stessa cosa variando il valore soglia in modo da poter costruire un grafico che riporta sull'asse delle x 1-specificità e sull'asse delle y la sensibilità -> questa è la curva ROC. 0 e 1 sono punti fissi ma la traiettoria della curva può variare (vedi quad). Un metodo ideale che non sbaglia mai segue il profilo degli assi in alto a sx (forma a ginocchio ad angolo retto). La curva ROC è quindi un metodo visivo per paragonare rapidamente diversi metodi e trovare il migliore. Questo metodo puramente visivo può essere trasformato in un oggetto quantitativo tramite l'AUC (Area Under the Curve -> integrale della curva ROC). L'area totale compresa tra gli assi è 1 e quindi l'area sotto la curva che rappresenta il metodo.randomico è di 0,5. Quindi, valor