valuta un modello

I risultati del backtest forniscono un riepilogo delle prestazioni del modello in un periodo di tempo specificato. Può essere utilizzato per misurare le prestazioni del modello in un intervallo di tempo diverso da quello utilizzato per l'addestramento o anche nel tempo per verificare un peggioramento delle prestazioni.

Come eseguire il backtest

Per creare una risorsa BacktestResult, consulta Creare e gestire i risultati del backtest.

In particolare, devi selezionare quanto segue:

  • I dati da utilizzare per il backtest:

    Specifica un set di dati e un'ora di fine nell'intervallo di date del set di dati.

    L'addestramento utilizza etichette e funzionalità basate sui mesi di calendario completi fino al mese dell'ora di fine selezionata, escluso il mese. Per ulteriori informazioni, consulta Intervalli di tempo dei set di dati.

    Specifica quanti mesi di dati etichettati utilizzare per il backtesting (ovvero il numero di periodi di backtest).

  • Un modello creato utilizzando un set di dati coerente:

    Vedi Configurare un motore.

Periodi di backtest

Il campo backtestPeriods specifica da quanti mesi di calendario consecutivi utilizzare caratteristiche ed etichette nella valutazione delle prestazioni di questo modello.

Ai dati di backtest si applica quanto segue:

  • I mesi utilizzati nella valutazione sono gli ultimi mesi di calendario completi precedenti al giorno endTime specificato. Ad esempio, se endTime è 2023-04-03T23:21:00Z e backtestPeriods è 5, vengono utilizzate le etichette dei seguenti mesi: 03/2023, 02/2023, 12/2023, 12/2022 e 11/2022.
  • Quando valuti un modello in preparazione per l'uso in produzione, ti consigliamo di utilizzare i dati più recenti disponibili per i test retrospettivi.
  • I periodi di backtest devono essere impostati su un valore pari o superiore a 3. Due mesi del periodo di backtest sono riservati agli avvisi ripetuti, mentre i mesi rimanenti vengono utilizzati per generare etichette positive per la valutazione delle prestazioni.

  • Evita di utilizzare mesi sovrapposti per l'addestramento e i backtest, poiché ciò rischia di andare in eccesso. Assicurati che i tempi di fine del backtest e dell'addestramento siano separati almeno backtestPeriods. In altre parole,

    (mese di fine dei risultati del backtest) >= (mese di fine del modello) + backtestPeriods

Facoltativamente, puoi anche creare risultati della previsione per un modello ed eseguire analisi personalizzate a livello di gruppo sulle prestazioni del modello.

Output del backtest

I metadati dei risultati del backtest contengono le seguenti metriche. In particolare, queste metriche mostrano quanto segue:

  • Le prestazioni del modello rispetto alle etichette di un periodo di tempo separato e per una serie di volumi di indagine o soglie di punteggio di rischio diversi

  • Eventuali modifiche di grandi dimensioni in cui le famiglie di caratteristiche supportate dal set di dati (tra ottimizzazione dei motori, addestramento, valutazione e previsione)

Nome metrica Descrizione della metrica Esempio di valore metrica
ObservedRecallValues Metrica di richiamo misurata sul set di dati specificato per il backtesting. L'API include 20 di queste misurazioni, in diversi punti operativi, distribuite in modo uniforme da 0 (non incluso) fino a 2 * partyInvestigationsPerPeriodHint. L'API aggiunge una misurazione finale del richiamo al minuto partyInvestigationsPerPeriodHint.

{
  "recallValues": [
    {
      "partyInvestigationsPerPeriod": 5000,
      "recallValue": 0.80,
      "scoreThreshold": 0.42,
    },
    ...
    ...
    {
      "partyInvestigationsPerPeriod": 8000,
      "recallValue": 0.85,
      "scoreThreshold": 0.30,
    },
  ],
}
Mancanza

Quota dei valori mancanti in tutte le funzionalità in ogni famiglia di caratteristiche.

Idealmente, tutte le famiglie di funzionalità AML AI dovrebbero avere un'assenza vicina a 0. Potrebbero verificarsi eccezioni quando i dati sottostanti a queste famiglie di funzionalità non sono disponibili per l'integrazione.

Un cambiamento significativo in questo valore per qualsiasi famiglia di caratteristiche tra ottimizzazione, addestramento, valutazione e previsione può indicare incoerenze nei set di dati utilizzati.


{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "missingnessValue": 0.00,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "missingnessValue": 0.45,
    },
  ],
}
Disallineamento

Metriche che mostrano il disallineamento tra set di dati di addestramento e previsione o di backtest. Il disallineamento della famiglia indica i cambiamenti nella distribuzione dei valori degli elementi all'interno di una famiglia di caratteristiche, ponderati in base all'importanza della caratteristica all'interno della famiglia. L'inclinazione massima indica l'inclinazione massima di qualsiasi elemento all'interno della famiglia.

I valori di disallineamento vanno da 0, che non rappresenta alcun cambiamento significativo nella distribuzione dei valori degli elementi nella famiglia, a 1 per il cambiamento più significativo. Un valore elevato per disallineamento famigliare o disallineamento massimo indica un cambiamento significativo nella struttura dei dati che potrebbe influire sulle prestazioni del modello. Il disallineamento della famiglia assume il valore -1 quando il modello non utilizza alcuna caratteristica della famiglia.

Per valori di disallineamento elevati, esegui una delle seguenti operazioni:

  • Analizzare le modifiche nei dati utilizzati dalla famiglia di funzionalità in questione (consulta i materiali di supporto per la governance dei modelli) e risolvere eventuali problemi relativi ai dati di input
  • Reimpostare un modello sulla base di dati più recenti

Devi impostare le soglie per agire in base alle famiglie e i valori massimi di disallineamento in base all'osservazione della variazione naturale delle metriche di disallineamento nell'arco di diversi mesi.


{
  "featureFamilies": [
    {
      "featureFamily": "unusual_wire_credit_activity",
      "familySkewValue": 0.10,
      "maxSkewValue": 0.14,
    },
    ...
    ...
    {
      "featureFamily": "party_supplementary_data_id_3",
      "familySkewValue": 0.11,
      "maxSkewValue": 0.11,
    },
  ],
}