Condividi tramite


Spiegabilità dell'inferenza

Importante

A partire dal 20 settembre 2023 non sarà possibile creare nuove risorse di Personalizza esperienze. Il servizio Personalizza esperienze verrà ritirato il 1° ottobre 2026.

Personalizza esperienze consente di comprendere quali funzionalità di una determinata azione sono le più e le meno influenti per poi modellarle durante l'inferenza. Se abilitata, la spiegabilità dell'inferenza include i punteggi delle funzionalità del modello sottostante nella risposta dell'API Classificazione, in modo che l'applicazione riceva tali informazioni al momento dell'inferenza.

I punteggi delle funzionalità consentono di comprendere meglio la relazione tra le funzionalità e le decisioni prese da Personalizza esperienze. Possono essere usati per fornire informazioni dettagliate agli utenti finali sul motivo per cui è stata effettuata una particolare raccomandazione o per analizzare se il modello presenta distorsioni a favore o contro determinate impostazioni, utenti e azioni contestuali.

Come si abilita la spiegabilità dell'inferenza?

L'impostazione del flag di configurazione del servizio IsInferenceExplainabilityEnabled nella configurazione del proprio servizio consente a Personalizza esperienze di includere i valori e i pesi delle funzionalità nella risposta dell'API Classificazione. Per aggiornare la configurazione del servizio corrente, usare Configurazione del servizio - API di aggiornamento. Nel corpo della richiesta JSON, includere la configurazione del servizio corrente e aggiungere la voce aggiuntiva "IsInferenceExplainabilityEnabled": True. Se non si conosce la configurazione del servizio corrente, è possibile ottenerla da Configurazione del servizio - ottenere l'API

{
  "rewardWaitTime": "PT10M",
  "defaultReward": 0,
  "rewardAggregation": "earliest",
  "explorationPercentage": 0.2,
  "modelExportFrequency": "PT5M",
  "logMirrorEnabled": true,
  "logMirrorSasUri": "https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature",
  "logRetentionDays": 7,
  "lastConfigurationEditDate": "0001-01-01T00:00:00Z",
  "learningMode": "Online",
  "isAutoOptimizationEnabled": true,
  "autoOptimizationFrequency": "P7D",
  "autoOptimizationStartDate": "2019-01-19T00:00:00Z",
"isInferenceExplainabilityEnabled": true
}

Nota

L'abilitazione della spiegabilità dell'inferenza aumenterà significativamente la latenza delle chiamate all'API Classificazione. È consigliabile sperimentare questa funzionalità e misurare la latenza nel proprio scenario per verificare se soddisfa i requisiti di latenza della propria applicazione.

Come interpretare i punteggi delle funzionalità?

L'abilitazione della spiegabilità dell'inferenza aggiungerà una raccolta alla risposta JSON dall'API Classificazione denominata inferenceExplanation. Contiene un elenco di nomi di funzionalità e valori inviati nella richiesta di Classificazione, insieme ai punteggi delle funzionalità appresi dal modello sottostante di Personalizza esperienze. I punteggi delle funzionalità forniscono informazioni dettagliate sull'influenza di ciascuna di esse nel modello che sceglie l'azione.


{
  "ranking": [
    {
      "id": "EntertainmentArticle",
      "probability": 0.8
    },
    {
      "id": "SportsArticle",
      "probability": 0.15
    },
    {
      "id": "NewsArticle",
      "probability": 0.05
    }
  ],
 "eventId": "75269AD0-BFEE-4598-8196-C57383D38E10",
 "rewardActionId": "EntertainmentArticle",
 "inferenceExplanation": [
    {
        "id”: "EntertainmentArticle",
        "features": [
            {
                "name": "user.profileType",
                "score": 3.0
            },
            {
                "name": "user.latLong",
                "score": -4.3
            },
            {
                "name": "user.profileType^user.latLong",
                "score" : 12.1
            },
        ]
  ]
}

Nell'esempio precedente, vengono restituiti tre ID azione nella raccolta classificazione insieme ai rispettivi punteggi di probabilità. L'azione con la maggiore probabilità è the_ migliore action_ come determinato dal modello sottoposto a training sui dati inviati alle API di Personalizza esperienze, che in questo caso è "id": "EntertainmentArticle". L'ID azione può essere visualizzato nuovamente nella raccolta inferenceExplanation, insieme ai nomi e ai punteggi delle funzionalità determinati dal modello per tale azione e le funzionalità e i valori inviati all'API di Classificazione.

Tenere presente che Personalizza esperienze restituirà l'azione migliore o un'azione esplorativa scelta dai criteri di esplorazione. L'azione migliore è quella determinata dal modello con la massima probabilità di massimizzare la ricompensa media, mentre le azioni esplorative vengono scelte tra il set di tutte le azioni possibili fornite nella chiamata API di Classificazione. Le azioni eseguite durante l'esplorazione non sfruttano i punteggi delle funzionalità per determinare l'azione da intraprendere, pertanto i punteggi di funzionalità per le azioni esplorative non devono essere usate per comprendere il motivo per cui è stata intrapresa l'azione. Per altre informazioni sull'esplorazione, vedere qui.

Per le azioni migliori restituite da Personalizza esperienze, i punteggi delle funzionalità possono fornire informazioni generali in cui:

  • I punteggi positivi più elevati offrono maggiore supporto per il modello che sceglie questa azione.
  • I punteggi negativi più elevati offrono maggiore supporto per il modello che non sceglie questa azione.
  • I punteggi vicini a zero hanno un piccolo effetto sulla decisione di scegliere questa azione.

Considerazioni importanti per la spiegabilità dell'inferenza

  • Latenza aumentata. L'abilitazione di spiegabilità dell'inferenza aumenterà significativamente la latenza delle chiamate API di Classificazione a causa dell'elaborazione delle informazioni sulle funzionalità. Eseguire esperimenti e misurare la latenza nel proprio scenario per verificare se soddisfa i requisiti di latenza dell'applicazione.

  • Funzionalità correlate. Le funzionalità altamente correlate tra loro possono ridurre l'utilità dei punteggi di funzionalità. Si supponga, ad esempio, che la funzionalità A sia strettamente correlata alla funzionalità B. Potrebbe essere che il punteggio della funzionalità A è un valore positivo elevato mentre il punteggio della funzionalità B è un valore negativo elevato. In questo caso, le due funzionalità possono annullarsi l'una dall'altra e non avere alcun impatto sul modello. Sebbene Personalizza esperienze sia molto affidabile per le funzionalità altamente correlate, quando si usa Spiegabilità dell'inferenza, assicurarsi che le funzionalità inviate a Personalizza esperienze non siano altamente correlate

  • Solo esplorazione predefinita. Attualmente, Spiegabilità dell'inferenza supporta solo l'algoritmo di esplorazione predefinito.

Passaggi successivi

Apprendimento per rinforzo