Ciao a tutti,
Questo è un post per iniziare a porre domande su questo componente aggiuntivo e ad essere più sincero su domande e risposte.
Ecco le mie domande in generale e per quanto riguarda JMP Genomics (che sta ottenendo anche questo componente aggiuntivo):
- Qual è il problema principale che XGBoost dovrebbe affrontare? (ad esempio modelli con prestazioni scadenti? Affrontare i dati sparsi non facilmente risolti con altri metodi? Problemi di precisione?) Ho letto che aumenta davvero la velocità della modellazione, ma cos'altro e, per favore, fare un esempio.
- Come si applica ai dati genomici?
- Qual è il vantaggio reale (vantaggio personale e aziendale)? L'obiettivo è aiutare gli SE a comunicare i vantaggi a un'organizzazione del motivo per cui vorrebbero investire nel tempo (e / o $) da implementare.
- Qual è l'impatto e l'entità di un problema aziendale?
- Al di fuori di Kaggle, qualcuno ha implementato XGBoost e qual è stato il risultato?
Grazie,
Grazie Chris per averle sollevate.
1. Qual è il problema principale che XGBoost dovrebbe affrontare? (ad esempio modelli con prestazioni scadenti? Affrontare i dati sparsi non facilmente risolti con altri metodi? Problemi di precisione?) Ho letto che aumenta davvero la velocità della modellazione, ma cos'altro e, per favore, fare un esempio.
XGBoost è per lo più una piattaforma di modellazione predittiva per scopi generali davvero valida; una variante sovralimentata dell'attuale piattaforma JMP Pro Boosted Tree. Come Boosted Tree e Bootstrap Forest, produce statistiche di importanza variabile, quindi può essere utilizzato anche in una modalità più esplicativa per determinare i predittori più forti ed eliminare quelli più poveri. Gestisce automaticamente i dati mancanti nei predittori e ha funzioni oggettive per tutti i tipi comuni di obiettivi Y. È relativamente veloce e, per impostazione predefinita, dovrebbe utilizzare tutti i core della macchina durante l'installazione, e può facoltativamente utilizzare una GPU NVIDIA su Windows Il componente aggiuntivo viene fornito con due esempi di base e un documento che li spiega. Con le già avanzate funzionalità di manipolazione dei dati, pulizia e ingegneria delle funzionalità di JMP Pro, offre un modo formidabile per eseguire l'apprendimento automatico moderno su dati tabulari senza dover scrivere codice.
2. Come si applica ai dati genomici?
Non c'è nulla di specifico in XGBoost relativo ai set di dati genomici, ma può funzionare bene per loro e altri problemi di dati ampi. Luciano Silva (sviluppatore di JMP Genomics) e io abbiamo fatto alcuni confronti con alcune delle migliori routine di selezione genomica attuali (ad es. Genomic BLUP) e tende a funzionare ugualmente bene ma non significativamente meglio.
3. Qual è il vantaggio reale (vantaggio personale e aziendale)? L'obiettivo è aiutare gli SE a comunicare i vantaggi a un'organizzazione del motivo per cui vorrebbero investire nel tempo (e / o $) da implementare.
XGBoost è direttamente applicabile ai problemi aziendali che possono essere espressi come problemi di previsione, sebbene sia possibile utilizzarlo anche per analizzare i dati provenienti da esperimenti progettati. Si adatta bene a set di dati più grandi. Per i nuovi utenti è necessario un po 'di apprendimento per comprendere i parametri di ottimizzazione e abbiamo aggiunto funzionalità che utilizzano DOE per aiutare a ottimizzare questi parametri. Usiamo anche DOE in un modo nuovo in una routine supplementare Crea colonne K-Fold per creare divisioni dei dati da bilanciare in modo ottimale da utilizzare per la convalida incrociata. Consulta il documento con il componente aggiuntivo per un elenco completo dei valori aggiunti. JMP Pro offre funzionalità XGBoost standard.
4. Qual è l'impatto e l'entità di un problema aziendale?
Dipende molto dal problema! A volte piccoli miglioramenti nelle previsioni e nella comprensione di un sistema possono avere un grande impatto, altre volte non così tanto.
5. Al di fuori di Kaggle, qualcuno ha implementato XGBoost e qual è stato il risultato?
La mia comprensione è che numerose organizzazioni hanno implementato con successo modelli XGBoost in produzione, ma non ho buoni riferimenti per te. Ci sono molte discussioni su XGBoost online. La maggior parte delle persone esegue e distribuisce XGBoost da Python o R. C'è un'opzione a triangolo rosso per salvare il codice Python, che è in realtà un codice completo per la convalida incrociata del modello da zero.
Per tutti: al momento siamo in modalità Early Adopter e abbiamo creato un nuovo gruppo di comunità JMP. Mia Stephens e Stephanie Mencia stanno gentilmente aiutando e abbiamo già ricevuto un feedback fantastico. Per favore fatemi sapere se si desidera essere aggiunti al gruppo o se si desidera semplicemente provare il componente aggiuntivo.
Ciao Mike, il futuro su questo deve ancora essere elaborato e siamo aperti a suggerimenti. Questa è la prima volta che abbiamo integrato l'analisi di terze parti hard-core in JMP a livello di C ++ e come primo passo vogliamo mantenere una certa distanza e flessibilità tramite un componente aggiuntivo. Dubito seriamente che questo diventerà qualsiasi tipo di nuovo prodotto JMP, ma spero che contribuirà a migliorare le vendite di JMP Pro e ci fornirà preziose informazioni su alcuni dei cambiamenti tettonici che avvengono con il software di analisi.
Un altro punto da aggiungere a questa discussione: XGBoost ha una licenza LGPL3. Il fatto è che non ci è permesso di distribuirlo incorporato come parte del normale software JMP, per timore di dover fornire JMP essenzialmente gratuito per tutti. L'unico modo è che l'utente scarichi volontariamente il pacchetto contenente questo modulo e si assuma la responsabilità personale di aderire alla licenza LGPL.
Brian