Risorse/Addestramento del modello/Valutazione

Concetto

Domande di test: perché i dati "esclusi" sono importanti

Una porzione delle Sue conversazioni che la preparazione dei dati mette da parte prima di ogni altra cosa, in modo che una valutazione possa porre al modello addestrato domande che non ha mai visto. È l'unico modo pulito per distinguere un vero miglioramento dalla memorizzazione.

Capitolo 8Lettura di 5 min4 riferimenti

Cos'è

Un modello sottoposto a fine-tuning ha letto le risposte di addestramento molte volte. Ponendogli di nuovo una di quelle domande, è in grado di riprodurre la risposta quasi parola per parola. Sembra competenza, ma è memorizzazione: non fornisce alcuna indicazione su come il modello gestirà il cliente successivo, la cui domanda non è mai stata vista.

Il set di test è la soluzione, nonché una delle regole più antiche del machine learning: mantenere alcuni esempi completamente separati dall'addestramento e valutare il modello solo su di essi. I modelli linguistici di grandi dimensioni rendono questa regola ancora più importante. Studi sui benchmark pubblici hanno ripetutamente individuato modelli che avevano visto elementi di test durante l'addestramento, ottenendo per questo punteggi più alti — un problema noto come contaminazione dei dati o leakage.

Come funziona

come la preparazione dei dati crea il set di test
dataset has ≥ 10 conversations?   no  →  no test set
                                  yes →  test = 10% of conversations (at least 3)
                                         random, but fixed for this prep

each assistant reply in a test conversation  →  one question
  asked with the conversation up to that point
  reference answer = the reply itself
reply identical to a training reply          →  dropped
  1. Accantonato per primo. Prima che la validazione venga separata o che qualsiasi cosa venga scritta per l'addestramento, la preparazione dei dati seleziona il 10% delle conversazioni, almeno 3. I dataset con meno di 10 conversazioni non ottengono alcun set di test.
  2. Casuale, ma fisso per preparazione. La selezione è casuale, in modo da non essere sbilanciata verso conversazioni facili o difficili, e rimane invariata per quella preparazione, cosicché una nuova valutazione ponga le stesse domande.
  3. Una domanda per risposta. Ogni risposta dell'assistente in una conversazione di test diventa una domanda, posta includendo la conversazione fino a quel punto. La risposta stessa costituisce la risposta di riferimento.
  4. Nessuna copia nascosta. Una risposta di test identica parola per parola a una risposta di addestramento — la stessa risposta standard in un'altra conversazione — viene scartata, poiché il modello l'ha effettivamente già vista.
  5. Non esce mai. Le conversazioni di test non sono presenti nel file di addestramento né in quello di validazione, e non vengono mai inviate al provider.
Test di controllo10% · tenuto da parte per primo
Utilizzato per l'apprendimento
no
Inviato al provider
no

Il modello è davvero migliorato?

Convalidada ciò che rimane
Utilizzato per l'apprendimento
no
Inviato al provider
sì

Una seconda opinione quando non c'è un set di test

Addestramentotutto il resto
Utilizzato per l'apprendimento
sì
Inviato al provider
sì

Solo una verifica di coerenza: i risultati sono ottimistici

Una preparazione illustrativa di 30 conversazioni. Il set di test viene estratto per primo e non lascia mai Scalata; la convalida va al provider in modo che possa monitorare l'addestramento; l'addestramento è ciò da cui il modello impara. Solo la prima colonna è un test pulito.

Perché la validazione non è un test pulito

Le conversazioni di validazione non vengono utilizzate per l'apprendimento, quindi perché non usarle per la valutazione? Perché il provider riceve il file di validazione e lo utilizza durante l'addestramento per calcolare la validation loss e monitorare l'esecuzione. I dati non sono più sotto il vostro controllo, e ogni decisione presa osservando quei numeri — quale esecuzione mantenere, quante epoche — ottimizza leggermente il risultato verso quelle specifiche domande. La validazione è un buon secondo parere; non è un esame alla cieca.

Da dove la Valutazione ottiene le sue domande

FonteVisto durante l'addestramento?Da utilizzare per
Test accantonatoNoGiudicare se il modello è realmente migliorato
ValidazioneVisto dal provider, non utilizzato per l'apprendimentoUn secondo parere quando non è presente un set di test
Campione di addestramentoSì, appreso daSolo una verifica di base; i risultati sono ottimistici

La Valutazione prende la prima fonte disponibile, in quest'ordine. Un risultato su un campione di addestramento rappresenta un limite superiore: se il modello ottimizzato non ha la meglio nemmeno sulle domande che ha appreso, non lo farà su quelle nuove; se invece ha la meglio, non è comunque possibile sapere in che misura.

Esempio pratico: un dataset di 120 conversazioni (illustrativo)
  1. Il dataset contiene 120 conversazioni, quindi la preparazione dei dati ne accantona il 10%: 12 conversazioni, scelte a caso e fisse per questa preparazione.
  2. Queste 12 conversazioni contengono 31 risposte dell'assistente. Ciascuna diventa una domanda, posta includendo la conversazione fino a quel punto e con la risposta come soluzione di riferimento.
  3. Due risposte sono identiche parola per parola a quelle presenti nelle conversazioni di addestramento — una risposta standard sul ripristino della password. Vengono scartate: rimangono 29 domande di test.
  4. Le restanti 108 conversazioni passano alla consueta suddivisione di validazione e all'addestramento. Nessuno dei due file contiene una conversazione di test e il provider non ne riceve mai alcuna.
  5. Dopo l'addestramento, la Valutazione pone le 29 domande di test. Per confronto: un dataset di 25 conversazioni ne accantonerebbe 3 (il minimo), e uno di 9 non avrebbe alcun set di test, quindi la Valutazione ripiegherebbe sulle domande di validazione.

Utilizzarlo al meglio

  • Lasci spazio. Un test set di 29 domande è utile ma ridotto: a queste dimensioni, una percentuale di successo del 60% è ancora compatibile con l'assenza di miglioramenti. Più conversazioni nel dataset significano più domande di test e un verdetto più solido.
  • Tenga le conversazioni di test fuori dagli addestramenti successivi. Se le copia in un altro dataset e lo utilizza per l'addestramento, il modello successivo le avrà già viste e la sua valutazione risulterà lusinghiera.
  • Confronti elementi omogenei. Una nuova preparazione estrae il proprio test set. Quando confronta i modelli, utilizzi le domande di test di una singola preparazione per tutti.
  • Prenda sul serio gli avvisi. Una valutazione su un campione di addestramento è contrassegnata come tale per un motivo: la consideri come una verifica di base, non come un risultato.

Fonti delle domande

Test esclusoTipico Il 10% delle conversazioni, almeno 3; richiede più di 10 conversazioni#

Domande provenienti dalla preparazione dei dati delle conversazioni tenute da parte. Mai usate per l'addestramento, mai per la convalida, mai inviate al provider: il test pulito e l'impostazione predefinita.

ConvalidaTipico la soluzione di ripiego quando non c'è un test set#

Domande provenienti dalla suddivisione di convalida. Non utilizzate per l'apprendimento, ma viste dal provider durante il monitoraggio dell'addestramento. Utilizzate quando la preparazione non ha un test set.

Campione di addestramentoTipico solo quando non esiste nessuno degli altri due#

Un campione di domande su cui il modello è stato addestrato. L'ultima risorsa, contrassegnata da un avviso: i risultati sono ottimistici e dimostrano solo che non ci sono gravi malfunzionamenti.

Errori comuni

  • Valutare sulle domande di addestramento e interpretare il risultato come prestazioni nel mondo reale.
  • Trattare i risultati di validazione come se fossero puliti quanto i risultati dei test accantonati.
  • Copiare le conversazioni di test in un dataset di addestramento successivo, in modo che il modello seguente le abbia già viste.
  • Considerare una manciata di domande di test come un verdetto: i set di test di piccole dimensioni necessitano di una grande differenza per essere significativi.
  • Confrontare modelli che sono stati valutati ciascuno sul set di test di una preparazione diversa.

Riferimenti e letture di approfondimento

Le fonti esterne si aprono in una nuova scheda.

  1. 01Training, validation, and test data setsWikipedia · en.wikipedia.orgLa suddivisione in tre parti e il motivo per cui il test set viene utilizzato solo alla fine.
  2. 02Leakage (machine learning)Wikipedia · en.wikipedia.orgCome le informazioni dei dati di test si infiltrano nell'addestramento e gonfiano i punteggi.
  3. 03NLP Evaluation in trouble: On the Need to Measure LLM Data Contamination for each BenchmarkSainz et al., 2023 · arXiv · arxiv.orgPerché la contaminazione rende inaffidabili i risultati della valutazione e perché deve essere verificata.
  4. 04Time Travel in LLMs: Tracing Data Contamination in Large Language ModelsGolchin & Surdeanu, 2023 · arXiv · arxiv.orgRilevare quando un modello ha memorizzato gli esempi di test, chiedendogli di completarli.

Trasformate settimane di lavoro esperto in pochi minuti

Scoprite come Scalata si adatta al vostro team, ai vostri dati e ai vostri Controlli.

Contatta il team vendite