Casa Audio In che modo gli ingegneri possono valutare set di training e set di test per individuare possibili overfitting nell'apprendimento automatico?

In che modo gli ingegneri possono valutare set di training e set di test per individuare possibili overfitting nell'apprendimento automatico?

Anonim

D:

In che modo gli ingegneri possono valutare set di training e set di test per individuare possibili overfitting nell'apprendimento automatico?

UN:

Per capire come farlo, è necessario avere una conoscenza di base dei ruoli dei diversi set di dati in un tipico progetto di machine learning. Il set di formazione è impostato per fornire alla tecnologia un quadro di riferimento, una base di dati che il programma utilizza per prendere decisioni predittive e probabilistiche. Il set di test è il punto in cui testare la macchina sui dati.

L'overfitting è una sindrome dell'apprendimento automatico in cui il modello non si adatta perfettamente ai dati o allo scopo.

Download gratuito: Machine Learning e perché è importante

Uno dei comandamenti generali dell'apprendimento automatico è che i dati di addestramento e i dati di test dovrebbero essere insiemi di dati separati. Esiste un consenso abbastanza ampio su questo, almeno in molte applicazioni, a causa di alcuni problemi specifici con l'utilizzo dello stesso set utilizzato per l'addestramento per testare un programma di apprendimento automatico.

Quando un programma di apprendimento automatico utilizza un set di training, che potrebbe essere chiamato essenzialmente un set di input, sta lavorando su quel set di training per prendere decisioni sui risultati predittivi. Un modo molto semplice di pensarci è che la formazione è il "cibo" per il processo di calcolo intellettuale.

Ora, quando lo stesso set viene utilizzato per i test, la macchina può spesso restituire risultati eccellenti. Questo perché ha già visto quei dati prima. Ma l'obiettivo generale dell'apprendimento automatico in molti casi è quello di ottenere risultati su dati mai visti prima. Vengono creati programmi di apprendimento automatico per scopi generali per operare su diversi insiemi di dati. In altre parole, il principio dell'apprendimento automatico è la scoperta e di solito non si ottiene così tanto utilizzando un set di formazione iniziale a scopo di test.

Nel valutare i set di training e i set di test per un eventuale overfitting, gli ingegneri potrebbero valutare i risultati e capire perché un programma potrebbe fare in modo diverso sui risultati comparativi di questi due set, o in alcuni casi in che modo la macchina potrebbe fare troppo bene sui dati di training stessi .

Nel descrivere abilmente alcuni di questi problemi nell'apprendimento automatico in un pezzo del 2014, Jason Brownlee di Machine Learning Mastery descrive il sovradimensionamento in questo modo:

"Un modello che è stato selezionato per la sua accuratezza nel set di dati di training piuttosto che per la sua precisione in un set di dati di test invisibile è molto probabilmente con una precisione inferiore in un set di dati di test invisibile", scrive Brownlee. "Il motivo è che il modello non è così generalizzato. Ha specalizzato la struttura nel set di dati di training (corsivo aggiunto). Questo si chiama overfitting ed è più insidioso di quanto si pensi."

In parole povere, si potrebbe dire che, specializzandosi nel set di dati di addestramento, il programma sta diventando troppo rigido. Questo è un altro modo metaforico per capire perché un programma di apprendimento automatico non viene servito in modo ottimale usando il set di addestramento per il set di test. È anche un buon modo per avvicinarsi alla valutazione di questi due diversi set, perché i risultati mostreranno molto agli ingegneri su come funziona il programma. Volete un divario minore tra precisione per entrambi i modelli. Vuoi assicurarti che il sistema non sia sovraccaricato o "fuso con precisione" su un particolare set di dati, ma che sia più generale e in grado di crescere ed evolversi a comando.

In che modo gli ingegneri possono valutare set di training e set di test per individuare possibili overfitting nell'apprendimento automatico?