Casa Finanza personale 10 Modi per migliorare i modelli di apprendimento automatico - dummies

10 Modi per migliorare i modelli di apprendimento automatico - dummies

Sommario:

Video: Come acquisire nuove abilità 2024

Video: Come acquisire nuove abilità 2024
Anonim

Ora che l'algoritmo di apprendimento automatico ha finito di imparare dai dati ottenuti usando Python o R, stai meditando risultati dal tuo set di test e ti chiedi se puoi migliorarli o avere davvero raggiunto il miglior risultato possibile. Esistono numerosi controlli e azioni che suggeriscono metodi che è possibile utilizzare per migliorare le prestazioni di machine learning e ottenere un predittore più generale che sia in grado di funzionare altrettanto bene con il set di test o con i nuovi dati. Questo elenco di dieci tecniche offre opportunità per migliorare il risultato ottenuto utilizzando algoritmi di apprendimento automatico.

Studiare le curve di apprendimento

Come primo passo per migliorare i risultati, è necessario determinare i problemi con il modello. Le curve di apprendimento richiedono la verifica rispetto a un set di test poiché si varia il numero di istanze di allenamento. Noterai immediatamente se trovi molta differenza tra gli errori in-sample e out-of-sample. Un'ampia differenza iniziale è un segno di varianza delle stime; viceversa, avere errori alti e simili è un segnale che stai lavorando con un modello di parte.

Python ti aiuta a disegnare facilmente le curve di apprendimento usando la funzione Scikit-learn (). Puoi anche ottenere facilmente lo stesso risultato usando R con funzioni personalizzate, come descritto dal blog Revolution analytics.

Utilizzo della convalida incrociata

La grande differenza tra le stime di cross-validation (CV) e il risultato è un problema comune che appare con un set di test o dati nuovi. Avere questo problema significa che qualcosa è andato storto con la convalida incrociata. Oltre al fatto che il CV non è un buon predittore di prestazioni, questo problema significa anche che un indicatore fuorviante ti ha indotto a modellare il problema in modo errato e ad ottenere risultati insoddisfacenti.

La convalida incrociata fornisce suggerimenti quando i passaggi da eseguire sono corretti. È importante, ma non fondamentale, che le stime del CV replicino esattamente le misurazioni degli errori fuori campione. Tuttavia, è cruciale che le stime del CV riflettano correttamente il miglioramento o il peggioramento nella fase di test a causa delle decisioni di modellazione. In generale, ci sono due motivi per cui le stime di validazione incrociata possono variare dai risultati dell'errore vero:

  • Snooping
  • Campionamento errato

Python offre un campionatore CV stratificato-k-fold. R può stratificare i campioni usando il metodo createFolds della libreria caret quando si fornisce il parametro y come fattore.

Scegliere l'errore corretto o la metrica del punteggio

Cercare di ottimizzare una metrica di errore basata sull'errore mediano utilizzando un algoritmo di apprendimento basato sull'errore medio non ti fornirà i migliori risultati se non gestisci il processo di ottimizzazione in una moda che funziona a favore della tua metrica scelta.Quando si risolve un problema utilizzando dati e apprendimento automatico, è necessario analizzare il problema e determinare la metrica ideale da ottimizzare.

Gli esempi possono aiutare molto. È possibile ottenere molti di loro da documenti accademici e da concorsi di apprendimento automatico del computer che definiscono con cura problemi specifici in termini di dati e metrica di errore / punteggio. Cerca un concorso il cui obiettivo e i dati siano simili ai tuoi, quindi verifica la metrica richiesta.

Ricerca dei migliori parametri iper

La maggior parte degli algoritmi funziona abbastanza bene out of the box usando le impostazioni dei parametri predefinite. Tuttavia, puoi sempre ottenere risultati migliori testando diversi parametri iper. Tutto quello che devi fare è creare una griglia di ricerca tra i possibili valori che i tuoi parametri possono assumere e valutare i risultati usando l'errore giusto o la metrica del punteggio. La ricerca richiede tempo, ma può migliorare i risultati.

Quando una ricerca impiega troppo tempo per essere completata, spesso è possibile ottenere gli stessi risultati lavorando su un campione dei dati originali. Meno esempi scelti a caso richiedono meno calcoli, ma di solito suggeriscono la stessa soluzione. Un altro trucco che può far risparmiare tempo e fatica è fare una ricerca randomizzata, limitando così il numero di combinazioni iperparametriche da testare.

Test di più modelli

Come buona pratica, testare più modelli, iniziando da quelli di base - i modelli che hanno più bias della varianza. Dovresti sempre favorire soluzioni semplici rispetto a quelle complesse. Potresti scoprire che una soluzione semplice ha prestazioni migliori.

Rappresentare le prestazioni di diversi modelli utilizzando lo stesso grafico è utile prima di scegliere il migliore per risolvere il problema. È possibile posizionare modelli utilizzati per prevedere il comportamento dei consumatori, ad esempio una risposta a un'offerta commerciale, in grafici di guadagno speciali e grafici di elevazione. Questi grafici mostrano come il tuo modello esegue il partizionamento dei suoi risultati in decili o parti più piccole.

Poiché potresti essere interessato solo ai consumatori che sono più propensi a rispondere alla tua offerta, le previsioni di ordine da quelle più o meno evidenti metteranno in risalto quanto siano buoni i tuoi modelli nel predire i clienti più promettenti. Queste risposte Quora ti aiutano a vedere come funzionano i grafici di guadagno e di sollevamento: Cos'è la curva ROC? e che cos'è Lift Curve?.

Test di più modelli e introspecting possono anche fornire suggerimenti su quali funzioni trasformare per la creazione di feature, o quali funzionalità lasciare fuori quando si effettuano selezioni di funzionalità.

Modelli di media

L'apprendimento automatico implica la costruzione di molti modelli e la creazione di molte previsioni diverse, tutte con diverse aspettative di errore previsto. Potrebbe sorprendervi sapere che è possibile ottenere risultati ancora migliori calcolando la media dei modelli insieme. Il principio è abbastanza semplice: la varianza delle stime è casuale, quindi, calcolando la media di molti modelli diversi, è possibile migliorare il segnale e escludere il rumore che spesso si annulla.

A volte i risultati di un algoritmo che funziona bene, mescolato con i risultati di un algoritmo più semplice che non funziona bene, possono creare previsioni migliori rispetto all'utilizzo di un singolo algoritmo.Non sottovalutare i contributi forniti da modelli più semplici, come i modelli lineari, quando media i loro risultati con l'output di algoritmi più sofisticati, come l'aumento gradiente.

Modelli di impilamento

Per gli stessi motivi per cui la media funziona, l'impilatura può anche fornire prestazioni migliori. Nell'impilare, costruisci i tuoi modelli di apprendimento automatico in due fasi. Inizialmente questa tecnica prevede più risultati utilizzando diversi algoritmi, tutti imparando dalle funzionalità presenti nei dati. Durante la seconda fase, invece di fornire le funzionalità che un nuovo modello apprenderà, fornisci quel modello con le previsioni degli altri modelli precedentemente addestrati.

L'uso di un approccio a due stadi è giustificato quando si indovinano funzioni obiettivo complesse. È possibile approssimarli solo utilizzando più modelli insieme e quindi combinando il risultato della moltiplicazione in modo intelligente. È possibile utilizzare una semplice regressione logistica o un complesso complesso di alberi come modello di seconda fase.

La competizione Netflix fornisce prove e un'illustrazione dettagliata su come i modelli eterogenei possono essere impilati insieme per formare modelli più potenti. Tuttavia, l'implementazione di questa soluzione come applicazione funzionante può essere piuttosto complicata.

Applicazione dell'ingegneria delle funzionalità

Se ritieni che il pregiudizio stia ancora influenzando il tuo modello, non hai altra scelta se non quella di creare nuove funzionalità che migliorano le prestazioni del modello. Ogni nuova funzionalità può rendere più facile indovinare la risposta obiettivo.

La creazione automatica delle feature è possibile usando l'espansione polinomiale o la classe delle macchine del vettore di supporto degli algoritmi di apprendimento automatico. Le macchine vettoriali di supporto possono cercare automaticamente funzionalità migliori in spazi di caratteristiche più dimensionali in modo rapido e ottimale per la memoria.

Tuttavia, nulla può realmente sostituire la tua esperienza e comprensione del metodo necessario per risolvere il problema dei dati che l'algoritmo sta cercando di apprendere. Puoi creare funzionalità basate sulle tue conoscenze e idee su come funzionano le cose nel mondo. Gli umani sono ancora imbattibili nel farlo e le macchine non possono facilmente sostituirli.

Selezione di caratteristiche ed esempi

Se la varianza delle stime è elevata e il tuo algoritmo si basa su molte funzionalità, è necessario ridurre alcune funzionalità per ottenere risultati migliori. In questo contesto, è consigliabile ridurre il numero di funzionalità nella matrice dati selezionando quelle con il valore predittivo più elevato.

Quando si lavora con modelli lineari, macchine vettoriali a supporto lineare o reti neurali, la regolarizzazione è sempre un'opzione. Sia L1 che L2 possono ridurre l'influenza delle variabili ridondanti o persino rimuoverle dal modello. La selezione della stabilità sfrutta l'abilità L1 per escludere le variabili meno utili. La tecnica ricampiona i dati di allenamento per confermare l'esclusione.

Puoi saperne di più sulla selezione della stabilità visualizzando l'esempio sul sito di Scikit-learn. Inoltre, è possibile esercitarsi utilizzando le funzioni RandomizedLogisticRegression e RandomizedLasso Scikit-learn nel modulo linear_model.

Alla ricerca di più dati

Dopo aver provato tutti i suggerimenti precedenti, si può ancora avere un'alta varianza di previsioni da affrontare. In questo caso, l'unica opzione è aumentare la dimensione del set di allenamento. Prova ad aumentare il tuo campione fornendo nuovi dati, che potrebbero tradursi in nuovi casi o nuove funzionalità.

Se vuoi aggiungere più casi, guarda solo se hai a portata di mano dati simili. Se si desidera aggiungere nuove funzionalità, individuare un'origine dati open source, se possibile, per abbinare i dati con le relative voci. Un altro ottimo modo per ottenere nuovi casi e nuove funzionalità è quello di raschiare i dati dal web. Spesso i dati sono disponibili tra diverse fonti o tramite un'interfaccia di programmazione dell'applicazione (API). Ad esempio, le API di Google offrono molte fonti di informazioni geografiche e commerciali.

10 Modi per migliorare i modelli di apprendimento automatico - dummies

Scelta dell'editore

Comprensione dei livelli di accesso e dei ruoli in Microsoft CRM - dummies

Comprensione dei livelli di accesso e dei ruoli in Microsoft CRM - dummies

I privilegi che vi sono assegnati regolano le funzioni che è possibile eseguire su particolari record o oggetti. I tuoi livelli di accesso determinano a quale record si applicano questi privilegi. In altre parole, sebbene i tuoi privilegi possano includere la possibilità di eliminare i record account, è il tuo livello di accesso che determina esattamente quali record puoi eliminare. ...

Scegli o cambia utenti in NaturallySpeaking - dummies

Scegli o cambia utenti in NaturallySpeaking - dummies

Quando lanci Dragon NaturallySpeaking, potrebbe chiederti di scegliere un utente . Se non ti chiede, non ti preoccupare. Probabilmente hai un solo utente: tu. Ricorda che quando hai configurato NaturallySpeaking per la prima volta, hai creato e nominato un profilo utente e poi hai addestrato NaturallySpeaking su come l'utente (tu) ha suonato. Ora, quando avvii ...

Aggiungi una fonte di dettatura al tuo profilo corrente - dummies

Aggiungi una fonte di dettatura al tuo profilo corrente - dummies

La tua voce registrata è così diversa dalla tua voce dal vivo che devi addestrare Dragon NaturallySpeaking a riconoscerlo. Allenarsi NaturallySpeaking per capire la tua voce registrata è come allenarlo per dettatura diretta, con una differenza: leggi il materiale di allenamento nel tuo registratore, trasferisci il dettato sul PC e poi ...

Scelta dell'editore

Mantieni il tuo cervello affilato disegnando - manichini

Mantieni il tuo cervello affilato disegnando - manichini

Se non hai mai pensato a te stesso come una persona creativa, è tempo per un cambio di pensiero. Ogni persona ha il potenziale per sbloccare un aspetto della creatività. Ecco alcuni suggerimenti per aiutarti ad andare avanti. Includono suggerimenti su semplici attività di disegno per iniziare - ma se ritieni che ...

Come usare la tolleranza come tecnica di gestione della rabbia - manichini

Come usare la tolleranza come tecnica di gestione della rabbia - manichini

La rabbia è l'emozione dell'intolleranza che può essere gestito attraverso la pratica della tolleranza. Intolleranza significa che non accetti il ​​punto di vista o il comportamento di un'altra persona. La rabbia dice che pensi di avere ragione e che l'altra persona ha torto. Non può essere più semplice di così. La rabbia difende l'ascoltatore da qualsiasi cambiamento nel suo modo di pensare. ...

Migliorare la gestione della rabbia con l'esercizio - manichini

Migliorare la gestione della rabbia con l'esercizio - manichini

Una quantità di prove scientifiche supporta il fatto che l'esercizio fisico regolare migliora gli stati d'animo e può aiutarti a ridurre la tua rabbia. Se scegli di allenarti regolarmente, puoi aspettarti di Concentrare meglio Dormire meglio Mostra un maggiore interesse per il sesso Avere più energia Sii meno teso Goditi la vita più in generale Sento meno alienato ...

Scelta dell'editore

Caratteristiche della Canon Digital Rebel XTi / 400D - manichini

Caratteristiche della Canon Digital Rebel XTi / 400D - manichini

La tua nuova Canon Digital Rebel XTi / 400D ha una serie di funzioni e le seguenti figure le indicano una ad una. Un asterisco indica che un pulsante o un controllo ha più funzioni. Verificando la Canon XTi / 400D dal punto di vista del fotografo. Osservando alcuni dei pulsanti e dei quadranti principali. Trovare la messa a fuoco e ...

Caratteristiche della Canon EOS Digital Rebel XSi / 450D - manichini

Caratteristiche della Canon EOS Digital Rebel XSi / 450D - manichini

Le seguenti figure offrono una comoda guida ai pulsanti, ai quadranti e ad altre funzioni esterne della tua Canon EOS Digital Rebel XSi / 450D. Si noti che l'obiettivo mostrato è il modello Canon EF-S 18-55mm IS (Image Stabilization) venduto con XSi / 450D; altri obiettivi potrebbero non avere le stesse caratteristiche. Dal punto di vista del fotografo. Guardando verso il basso ...

Controlli esterni della fotocamera sulla Canon EOS Rebel T3 / 1100D - manichini

Controlli esterni della fotocamera sulla Canon EOS Rebel T3 / 1100D - manichini

Sparsi per l'esterno della tua Canon EOS Rebel T3 / 1100D sono un numero di pulsanti, quadranti e interruttori che usi per cambiare le impostazioni di ripresa delle foto, rivedere e modificare le tue foto ed eseguire varie altre operazioni. Ecco una introduzione di base ai controlli esterni. Controlli Topside sulla Canon EOS Rebel T3 / 1100D Il tour virtuale inizia ...