Test in batch con un set di espressioni di esempio

Importante

LUIS verrà ritirato il 1° ottobre 2025 e a partire dal 1° aprile 2023 non sarà possibile creare nuove risorse LUIS. È consigliabile eseguire la migrazione delle applicazioni LUIS alla comprensione del linguaggio conversazionale per trarre vantaggio dal supporto del prodotto continuo e dalle funzionalità multilingue.

I test batch convalidano la versione con training attivo per misurare l'accuratezza della stima. Un test batch consente di visualizzare l'accuratezza di ogni finalità ed entità nella versione attiva. Esaminare i risultati del test batch per eseguire azioni appropriate per migliorare l'accuratezza, ad esempio aggiungendo altre espressioni di esempio a una finalità se l'app non riesce a identificare la finalità corretta o le entità di etichettatura all'interno dell'espressione.

Raggruppare i dati per il test in batch

È importante che le espressioni usate per i test in batch siano nuove per Language Understanding. Se si dispone di un set di dati di espressioni, dividere le espressioni in tre set: espressioni di esempio aggiunte a una finalità, espressioni ricevute dall'endpoint pubblicato e espressioni usate per testare LUIS dopo il training.

Il file JSON batch usato deve includere espressioni con entità di Machine Learning di primo livello etichettate, tra cui la posizione iniziale e la posizione finale. Le espressioni non devono far parte degli esempi già presenti nell'app. Devono essere espressioni da prevedere positivamente per finalità ed entità.

È possibile separare i test per finalità e/o entità oppure avere tutti i test (fino a 1000 espressioni) nello stesso file.

Errori comuni nell'importazione di un batch

Se si verificano errori durante il caricamento del file batch in LUIS, verificare la presenza dei problemi comuni seguenti:

  • Più di 1.000 espressioni in un file batch
  • Un oggetto JSON di espressione che non ha una proprietà di entità. La proprietà può essere una matrice vuota.
  • Parole etichettata in più entità
  • Etichette di entità che iniziano o terminano su uno spazio.

Correzione di errori batch

In presenza di errori nei test in batch, è possibile aggiungere più espressioni a una finalità e/o etichettare più espressioni con l'entità per consentire a Language Understanding di distinguere tra le finalità. Se sono state aggiunte espressioni che sono state etichettate e si continuano a riscontrare errori di previsione nei test in batch, è possibile aggiungere un elenco di frasi con un vocabolario settoriale specifico per consentire a Language Understanding di apprendere più rapidamente.

Test batch tramite il portale LUIS

Importare ed eseguire il training di un'app di esempio

Importare un'app che accetta un ordine di pizza, ad esempio 1 pepperoni pizza on thin crust.

  1. Scaricare e salvare il file JSON dell'app.

  2. Accedere al portale LUIS e quindi selezionare la sottoscrizione e la risorsa di creazione per vedere le app assegnate a tale risorsa.

  3. Selezionare la freccia accanto a Nuova app e fare clic su Importa come JSON per importare json in una nuova app. Assegnare un nome all'app Pizza app.

  4. Selezionare Esegui il training sulla barra di spostamento per eseguire il training dell'app.

Ruoli nei test batch

Attenzione

I ruoli di entità non sono supportati nei test batch.

File di test batch

Il codice JSON di esempio include un'espressione con un'entità etichettata per illustrare l'aspetto di un file di test. Nei propri test è necessario avere più espressioni con finalità corrette ed entità etichettate di Machine Learning.

  1. Creare pizza-with-machine-learned-entity-test.json in un editor di testo o scaricarlo.

  2. Nel file batch in formato JSON aggiungere un'espressione con la finalità che si vuole prevedere nel test.

    [
        {
            "text": "I want to pick up 1 cheese pizza",
            "intent": "ModifyOrder",
            "entities": [
                {
                    "entity": "Order",
                    "startPos": 18,
                    "endPos": 31
                },
                {
                    "entity": "ToppingList",
                    "startPos": 20,
                    "endPos": 25
                }
            ]
        }
    ]
    

Eseguire il batch

  1. Selezionare Test nella barra di spostamento in alto.

  2. Selezionare Batch testing panel (Pannello test in batch) nel pannello di destra.

    Collegamento Batch Testing (Test in batch)

  3. Selezionare Importa. Nella finestra di dialogo visualizzata selezionare Scegli file e individuare un file JSON con il formato JSON corretto che non contiene più di 1.000 espressioni da testare.

    Gli errori di importazione vengono segnalati in una barra di notifica rossa nella parte superiore del browser. Quando un'importazione presenta degli errori, non viene creato alcun set di dati. Per ulteriori informazioni, vedereErrori comuni.

  4. Scegliere il percorso del file pizza-with-machine-learned-entity-test.json.

  5. Assegnare un nome al set di dati pizza test e selezionare Done (Fatto).

  6. Selezionare il pulsante Run (Esegui).

  7. Al termine del test batch, è possibile visualizzare le colonne seguenti:

    Colonna Descrizione
    State Stato del test. Vedere i risultati sono visibili solo dopo il completamento del test.
    Nome Nome assegnato al test.
    Dimensione Numero di test in questo file di test batch.
    Ultima esecuzione Data dell'ultima esecuzione del file di test batch.
    Ultimo risultato Numero di stime riuscite nel test.
  8. Per visualizzare i risultati dettagliati del test, selezionare Visualizza risultati.

    Suggerimento

    • Selezionando Scarica verrà scaricato lo stesso file caricato.
    • Se il test batch non è riuscito, almeno una finalità di espressione non corrisponde alla stima.

Esaminare i risultati del batch per le finalità

Per esaminare i risultati del test in batch, selezionare See results (Visualizza risultati). I risultati del test mostrano graficamente il modo in cui le espressioni di test sono state previste rispetto alla versione attiva.

Il grafico relativo al batch visualizza quattro quadranti d risultati. Nella parte destra del grafico è presente un filtro. Il filtro contiene finalità ed entità. Quando si seleziona una sezione del grafico oppure un punto nel grafico, le espressioni associate vengono visualizzate sotto il grafico.

Quando si passa il mouse sul grafico, la rotellina del mouse consente di ingrandire o ridurre la visualizzazione del grafico. Ciò è utile quando sono presenti molti punti nel grafico strettamente raggruppati.

Il grafico è diviso in quattro quadranti, con due sezioni visualizzate in rosso.

  1. Selezionare la finalità ModifyOrder nell'elenco dei filtri. L'espressione è stimata come Vero positivo, il che significa che corrisponde correttamente alla previsione positiva elencata nel file batch.

    L'espressione corrisponde correttamente alla stima positiva

    I segni di spunta verdi nell'elenco dei filtri indicano anche l'esito positivo del test per ogni finalità. Tutte le altre finalità sono elencate con un punteggio positivo 1/1 perché l'espressione è stata testata rispetto a ogni finalità, come test negativo per le finalità non elencate nel test batch.

  2. Selezionare la finalità Confirmation. Questa finalità non è elencata nel test batch, pertanto si tratta di un test negativo dell'espressione presente nel test.

    Espressione stimata negativa per la finalità non elencata nel file batch

    Il test negativo ha avuto esito positivo, come indicato dal testo verde nel filtro e nella griglia.

Esaminare i risultati del test batch per le entità

L'entità ModifyOrder, come entità di computer con sottoentities, visualizza se l'entità di primo livello corrisponde e come vengono stimate le sottoentities.

  1. Selezionare l'entità ModifyOrder nell'elenco dei filtri e quindi selezionare il cerchio nella griglia.

  2. Sotto il grafico viene visualizzata la previsione dell'entità. La visualizzazione include linee continue per le previsioni che corrispondono alle aspettative e linee punteggiate per quelle che non corrispondono.

    Elemento padre di entità stimato correttamente nel file batch

Filtrare i risultati del grafico

Per filtrare il grafico in base a una finalità o entità specifica, selezionare la finalità o l'entità nel pannello filtro sulla destra. I punti dati e la relativa distribuzione vengono aggiornati nel grafico in base alla selezione.

Risultato del test in batch visualizzato

Esempi di risultati del grafico

Il grafico nel portale LUIS consente di eseguire le azioni seguenti:

Visualizzare i dati dell'espressione single-point

Nel grafico passare il mouse su un punto dati per visualizzare il punteggio di certezza della relativa stima. Selezionare un punto dati per recuperare l'espressione corrispondente nell'elenco nella parte inferiore della pagina.

Espressione selezionata

Visualizzare i dati sezione

Nel grafico a quattro sezioni selezionare il nome della sezione, ad esempio False Positive (Falso positivo) in alto a destra del grafico. Sotto il grafico, tutte le espressioni in quella sezione vengono visualizzate sotto il grafico in un elenco.

Espressioni selezionate per sezione

In questa immagine precedente l'espressione switch on viene etichettata con la finalità TurnAllOn, ma ha ricevuto la stima della finalità None (Nessuna). Indica che la finalità TurnAllOn necessita di più espressioni di esempio per elaborare la stima prevista.

Le due sezioni del grafico in rosso indicano le espressioni che non corrispondevano alla stima prevista. Indicano le espressioni per le quali LUIS necessita di ulteriore training.

Le due sezioni del grafico in verde corrispondevano alla stima prevista.

Passaggi successivi

Se il test indica che l'app LUIS non riconosce le finalità e le entità corrette, è possibile migliorare le prestazioni dell'app LUIS etichettando più espressioni o aggiungendo funzionalità.