Combinazione di modelliSe ho imparato una cosa dal Discovery Summit Americas quest'anno, è quanto sia comune fare la media e/o creare modelli di insieme, qualcosa di cui avevo sentito parlare ma che non avevo mai considerato (essendo un principiante della modellistica). Quindi ho deciso di farlo. Realizzare un modello d'insieme è facile; Ho salvato il modello come formula di previsione e l'ho semplicemente incluso come predittore nel ciclo successivo di screening del modello (utilizzando la schermata del modello di JMP Pro 16). Ciò che sembrerebbe più semplice, la media del modello, mi confonde. Se trovo due modelli che mi piacciono, li salvo entrambi come formule di previsione nella mia tabella dati e poi creo una nuova colonna in cui sono combinati, sembra che la probabilità venga combinata, ma la formula non ha una sintassi in cui io potrebbe applicarlo a nuovi dati (mostra solo la media delle probabilità). Se pubblico entrambi i modelli nel Formula Depot, posso calcolarne la media in questo modo abbastanza facilmente, quindi questa è la mia soluzione attuale, ma non dovrei essere in grado ANCHE di calcolarne la media nella tabella stessa? Penso che il problema potrebbe essere questo, poiché la formula di previsione ha una formula E una probabilità, quando vado a combinarle, viene calcolata la media solo della probabilità, mentre in realtà voglio calcolare la media delle formule stesse. Posso calcolare la media di entrambi in modo da poter copiare la formula media in una nuova tabella di dati e testarla con nuovi dati? In caso contrario, Formula Depot è stato progettato proprio per fare questo, quindi non è un grosso problema. Voglio solo avere alcune opzioni! Forse rimuovo semplicemente la parte di probabilità in cui SOLO la formula è lasciata nella cella delle informazioni della colonna?
Modellazione predittiva e machine learningRe: Combinazione di modelliSÌ! Credo, come al solito, che tu abbia ragione riguardo alla strana natura del tentativo di prevedere una variabile categoriale, in cui sono effettivamente necessarie due equazioni, rendendo così le cose più complicate. Quello che spero di fare è alla fine avere una dimensione del campione abbastanza grande da avere un vero gradiente, 1-10, 1-5 o 1-100, l'idea è la stessa: 1=terribile, il numero più alto=ottimo . Anche in questo caso, ho due categorie (resistente allo sbiancamento vs. sensibile allo sbiancamento) o talvolta tre (le prime due + "intermedio"). Potrei provare a ricodificarli come 1, 50 e 100 rispettivamente per suscettibile, intermedio e resistente e vedere che tipo di risultati ottengo. Penso che più campioni ottengo e analizzo, più ha senso che la mia Y sia una variabile continua. Con 20 campioni con cui sto giocando adesso, non ho dati sufficienti per andare oltre i 2-3 contenitori essenzialmente. Ma sarà interessante vedere se i miei modelli appariranno molto diversi quando ricodificherò le mie classificazioni categoriali in una variabile continua. Renderebbe sicuramente tutta la costruzione del modello più fluida. E in realtà, in natura NON sarà così semplice come "sano" contro "malato"; Mi aspetto di rilevare un gradiente che abbraccia uno spettro di salute come quello che vedresti negli esseri umani (ad esempio, quello che vedi nel set di dati sul diabete JMP). La cosa divertente di questo esercizio, però, per quanto riguarda il punteggio di probabilità, è che non li ho mai guardati molto; Sono andato direttamente alla "ipotesi" di JMP. Ma ora osservare le probabilità effettive è estremamente interessante perché è in definitiva ciò che voglio segnalare: il corallo A ha una probabilità del 95% di sbiancarsi. Quindi, attraverso questo esercizio di media del modello, ho accidentalmente colto alcune sfumature interessanti che prima mi erano completamente sfuggite! E come ho detto prima, anche se per il momento sono "bloccato" con risposte categoriali, la funzionalità di media del modello di Formula Depot funziona bene per questo.
Sarai felice di sapere che, grazie alla tua GUI, ci sono oltre 20.000 modelli di reti neurali (21.450, ma chi conta?!) nel mio articolo recentemente presentato (che descrive essenzialmente la fase 1 = l'esperimento di laboratorio). Ovviamente, solo una manciata ha superato tutti i controlli di qualità, e ancora meno sono discussi a lungo nel testo, ma è stato estremamente utile vedere quali parametri NN sono essenzialmente più importanti per me da regolare. Inoltre, voglio costruire il modello più semplice e (potenzialmente) più parsimonioso, quindi se un NN ha due livelli nascosti, ciascuno con tre nodi di attivazione, mentre un secondo modello ha un livello con NTANH(3), a parità di tutti gli altri, io Sceglierei quest'ultimo, anche se immagino che questo non sia davvero fondamentale poiché anche il più semplice è piuttosto complesso. Una cosa che ho cercato di imparare quest'anno al Discovery, cosa che ho fatto grazie a Chris Gotwalt, è se le metriche di importanza variabile sotto NN Profiler possono essere utilizzate per dirti essenzialmente quali analiti sono stati più influenti nel modello. La vecchia regola era che gli NN sono una scatola nera, ed è troppo complicato individuare quali variabili di risposta fossero più importanti, ma sono felice di vedere che questo non è del tutto vero. Sono difficili da interpretare? SÌ. Potete dire che il comportamento di una proteina si adatta in un modo particolare e facilmente definibile con il potere predittivo del modello? Forse no. Ma se un biologo molecolare mi chiedesse: "Quali proteine del corallo erano più importanti nel tuo miglior modello NN", potrei almeno elencarne alcune dalla caratteristica di importanza variabile del profiler NN. Questo è in realtà il motivo per cui ho scelto di discutere del modello gen-reg nel mio discorso; Non ero sicuro di potermi "fidare" del profiler per un NN (!), ma ora vedo che posso. Ma comunque, questo è il motivo per cui, essendo un modello alle prime armi, traggo così tanto beneficio da questo tipo di simposi. Grazie ancora per la tua risposta ben ponderata e per tutto il tuo aiuto in generale.
Re: Combinazione di modelliCIAO @abmayfield ,
Mi è piaciuto il tuo discorso, però ho dovuto guardarlo su richiesta, non sono riuscito a partecipare alla visione dal vivo e alle domande e risposte.
Normalmente, potresti calcolare la media delle colonne di previsione se stai eseguendo una tipica formula di regressione, qualcosa che sia numerico. Prenderesti semplicemente la media dei due. Ma, poiché stai lavorando con un valore categorico sì o no (o anche forse), diventa più complicato perché deve trasformare gli input numerici X in una funzione logistica che poi trova la probabilità e confronta i risultati con un IfMax( ) funzione.
Prendiamo ad esempio il file Big Class. Se provi a prevedere :sex con :height e :weight, ottieni una funzione di output logistico, nel mio esempio, sto cercando di prevedere sex = M. Esistono però funzioni intermedie che vengono utilizzate per determinare Prob[M] e Prob[F]. La funzione lineare è proprio questo, qualcosa come Lin[M] = a + b*:altezza + c*:peso, dove a, b e c sono solo coefficienti di adattamento. Per ottenere le probabilità, JMP utilizza quindi la trasformazione 1/(1_exp(-Lin[M])) per Prob[M] e 1/(1+exp(Lin[M]) per Prob[F], che è solo 1- Problema[M]. Il risultato più probabile è quindi MaxIf(Prob[M]=>M, Prob[F]=>F) e qualunque Prob[y] sia maggiore è il risultato più probabile, M o F.
Nel tuo caso, se lavori con risultati categoriali, penso che dovrai fare la media delle funzioni Lin[Y] per poi trasformarle in una probabilità. È la funzione lineare che si adatta ai dati, non la funzione di probabilità, ecco perché è necessario calcolare la media prima di trasformare la funzione lineare.
Se puoi modificare il risultato in una risposta continua, allora una media semplice delle formule di previsione è semplice. Finché il tipo di modellazione è nominale o ordinale, JMP lo tratterà come livelli discreti ed eseguirà ogni volta la modellazione logistica.
Un'idea che mi è venuta in mente è quella di utilizzare una scala continua per rappresentare la percentuale di sbiancamento all'interno di una determinata area. Diciamo che si valutano 100 cm^2 (un pezzo di 10 cm x 10 cm) di corallo e si determina che circa 2 cm x 3 cm (o 6 cm ^ 2) sono sbiancati, quindi la percentuale di sbiancamento sarebbe del 60%. In questo modo, potresti ottenere una rappresentazione più accurata di quanto un campione di corallo è sbiancato e ora hai una risposta continua che può essere modellata con la regressione rispetto alla classificazione.
Spero che questo ti aiuti!,
DS
PS Il Discovery Summit è stato grandioso. Mi sono piaciuti molti discorsi. Inoltre, sto aggiornando la mia GUI per generare automaticamente le tabelle di ottimizzazione in base all'input dell'utente. Ti farò sapere quando sarà pronta la nuova versione. Dovrebbe aiutare ad automatizzare ulteriormente il processo generando un progetto di riempimento dello spazio con il numero di esecuzioni che desideri eseguire.
Re: Combinazione di modelliDalla tua descrizione, sembra che tu voglia calcolare la media delle previsioni (discrete) piuttosto che delle probabilità (continue).Non l'ho visto fare in questo modo.Esiste una tecnica, la previsione conforme, progettata per vedere quanto siano robuste le previsioni di un modello.Ma quello che stai descrivendo sarebbe simile al seguente: supponi che ci siano 2 classi da prevedere e le codifichi come continue, 0 e 1. Supponiamo di avere 3 modelli: 2 di essi prevedono uno 0 per un caso particolare e 1 prevede un 1 Quindi, la tua "media" produrrebbe un risultato di 1/3 che immagino prenderesti come la probabilità di ottenere un 1. Un'idea interessante ma non sono sicuro di quale base statistica abbia un simile approccio.Inoltre, sembra che sarebbe limitato alle classificazioni binarie (anche se questo è solo un limite).Sarò interessato a vedere quali altre risposte riceverai.