Etichettare le espressioni in Studio di linguaggio
Dopo aver creato uno schema per il progetto, è necessario aggiungere espressioni di training al progetto. Le espressioni devono essere simili a quanto verrà usato dagli utenti durante l'interazione con il progetto. Quando si aggiunge un'espressione, è necessario assegnare la finalità a cui appartiene. Dopo aver aggiunto l'espressione, etichettare le parole all'interno dell'espressione che si desidera estrarre come entità.
L'etichettatura dei dati è un passaggio fondamentale nel ciclo di vita dello sviluppo; questi dati verranno usati nel passaggio successivo durante il training del modello in modo che il modello possa apprendere dai dati etichettati. Se si dispone già di espressioni etichettate, è possibile importarle direttamente nel progetto, ma è necessario accertarsi che i dati rispettino il formato dati accettato. Per altre informazioni sull'importazione di dati etichettati nel progetto, vedere creare un progetto. I dati etichettati indicano al modello come interpretare il testo e usarlo per il training e la valutazione.
Prerequisiti
Prerequisiti per l’etichettatura dei dati:
- Creazione progetto completata.
Per altre informazioni, vedere il ciclo di vita di sviluppo di un progetto.
Linee guida per l'etichettatura dei dati
Dopo la compilazione dello schema e la creazione del progetto, sarà necessario etichettare i dati. L'etichettatura dei dati è importante, in modo che il modello sappia quali parole e frasi saranno associate ai tipi di finalità ed entità da estrarre. È consigliabile dedicare tempo all'etichettatura delle espressioni, introducendo e affinando i dati che verranno usati per il training dei modelli.
Quando si aggiungono espressioni ed etichette, tenere presente quanto segue:
I modelli di Machine Learning vengono generalizzati in base agli esempi etichettati forniti; quanti più esempi si forniscono, maggiore sarà il numero di punti dati che il modello possiede per eseguire generalizzazioni migliori.
La precisione, la coerenza e la completezza dei dati etichettati sono fattori chiave per le prestazioni del modello.
- Etichettare con precisione: etichettare sempre ogni finalità ed entità sul tipo corretto. Includere solo ciò che si desidera classificare ed estrarre, evitare dati non necessari nelle etichette.
- Etichettare con coerenza: la stessa entità deve avere la stessa etichetta in tutte le espressioni.
- Etichettare completamente: fornire espressioni diverse per ogni finalità. Etichettare tutte le istanze dell'entità in tutte le espressioni.
Etichettare in modo chiaro le espressioni
Assicurarsi che i concetti a cui fanno riferimento le entità siano ben definiti e separabili. Assicurarsi che sia possibile determinare facilmente le differenze in modo affidabile. In caso contrario, la mancanza di distinzione potrebbe indicare problemi anche da parte del componente appreso.
Se esiste una similarità tra le entità, assicurarsi di includere alcune caratteristiche dei dati che segnalino la differenza tra di esse.
Ad esempio, se si ha creato un modello per prenotare i voli, un utente potrebbe usare un'espressione come "Voglio un volo da Boston a Seattle". La città di origine e la città di destinazione per tali espressioni dovrebbero essere simili. Un segnale per differenziare la città di origine potrebbe essere che la parola da che spesso la precede.
Assicurarsi di etichettare tutte le istanze di ogni entità sia nei dati di training che di test. Un approccio consiste nell'usare la funzione di ricerca per trovare tutte le istanze di una parola o frase all’interno dei dati così e verificare se queste sono etichettate correttamente.
Etichettare i dati di test sia per le entità che non dispongono del componente appreso sia per le entità che ne dispongono. Questa procedura consente di verificare l’accuratezza delle metriche di valutazione.
Per progetti multilingue, l'aggiunta di espressioni in altre lingue aumenta le prestazioni del modello in tali lingue; tuttavia, evitare di duplicare i dati in tutte le lingue che si desidera supportare. Ad esempio, per migliorare le prestazioni di un bot di calendario con gli utenti, uno sviluppatore potrebbe aggiungere esempi principalmente in inglese e alcuni in spagnolo o francese. Può aggiungere espressioni come:
- "Fissare una riunione con Matt e Kevindomani alle 12.00." (inglese)
- "Rispondere come provvisorio alla riunione di aggiornamento settimanale."(inglese)
- "Cancelar mi próxima reunión." (spagnolo)
Come etichettare le espressioni
Usare la procedura seguente per etichettare le espressioni:
Andare alla pagina del progetto in Studio di linguaggio.
Nel menu a sinistra selezionare Etichettatura dati. In questa pagina è possibile iniziare ad aggiungere l'espressione ed etichettarle. È anche possibile caricare l'espressione direttamente facendo clic su Carica file di espressione nel menu in alto; assicurarsi che segua il formato accettato.
Dai primi pivot è possibile modificare la visualizzazione impostandola sul set di training o sul set di test. Altre informazioni sui set di training e test e su come vengono usati per il training e la valutazione del modello.
Suggerimento
Se si prevede di usare Separa automaticamente il set di test dalla dai dati di training, aggiungere tutte le espressioni al set di training.
Nel menu a discesa Seleziona finalità selezionare una delle finalità, la lingua dell'espressione (per i progetti multilingue) e l'espressione stessa. Premere il tasto INVIO nella casella di testo dell'espressione per aggiungere l'espressione.
Sono disponibili due opzioni per etichettare le entità in un'espressione:
Opzione Descrizione Etichettare usando un pennello Selezionare l'icona pennello accanto un'entità nel riquadro a destra, quindi evidenziare il testo nell'espressione da etichettare. Etichettare con il menu inline Evidenziare la parola da etichettare come entità per visualizzare un menu. Selezionare l'entità con cui si desidera etichettare queste parole. Nel riquadro a destra sotto il pivot Etichette, è possibile trovare tutti i tipi di entità nel progetto e il numero di istanze etichettate per ogni entità.
Nel pivot Distribuzione, è possibile visualizzare la distribuzione tra set di training e di test. Sono disponibili due opzioni di visualizzazione:
- Istanze totali per l'entità etichettata, in cui è possibile visualizzare il numero di tutte le istanze etichettate di un tipo di entità specifico.
- Espressioni univoche per ogni entità etichettata in cui ogni espressione viene conteggiata se contiene almeno un'istanza etichettata di questa entità.
- Espressioni per finalità in cui è possibile visualizzare il numero di espressioni per finalità.
Nota
L'elenco e i componenti predefiniti non vengono visualizzati nella pagina di etichettatura dei dati e tutte le etichette qui si applicano solo al componente appreso.
Per rimuovere un'etichetta:
- Dall'interno dell'espressione selezionare l'entità da cui si desidera rimuovere un'etichetta.
- Scorrere il menu visualizzato e selezionare Rimuovi etichetta.
Per eliminare un'entità:
- Selezionare l'entità da modificare nel riquadro a destra.
- Selezionare i tre puntini accanto all'entità e selezionare l'opzione desiderata nel menu a discesa.
Suggerire espressioni con Azure OpenAI
Nella CLU usare Azure OpenAI per suggerire espressioni da aggiungere al progetto usando modelli GPT. È prima necessario ottenere l'accesso e creare una risorsa in Azure OpenAI. Sarà quindi necessario creare una distribuzione per i modelli GPT. Seguire i passaggi preliminari qui.
Prima di iniziare, la funzionalità Suggerisci espressioni è disponibile solo se la risorsa Linguaggio si trova nelle aree seguenti:
- Stati Uniti orientali
- Stati Uniti centro-meridionali
- Europa occidentale
Nella pagina Etichettatura dei dati:
- Selezionare il pulsante Suggerisci espressioni. Verrà aperto un riquadro sul lato destro che chiede di selezionare la risorsa e la distribuzione di Azure OpenAI.
- Nella selezione di una risorsa Azure OpenAI selezionare Connetti, che consente alla risorsa Linguaggio di avere accesso diretto alla risorsa Azure OpenAI. Assegna alla risorsa Linguaggio il ruolo di
Cognitive Services User
alla risorsa OpenAI di Azure, che consente alla risorsa Linguaggio corrente di avere accesso al servizio Azure OpenAI. Se la connessione non riesce, eseguire la procedura seguente per aggiungere manualmente il ruolo corretto alla risorsa Azure OpenAI. - Dopo aver connesso la risorsa, selezionare la distribuzione. Il modello consigliato per la distribuzione di Azure OpenAI è
text-davinci-002
. - Selezionare la finalità per cui si desidera ottenere suggerimenti. Assicurarsi che la finalità selezionata abbia almeno 5 espressioni salvate da abilitare per i suggerimenti per l'espressione. I suggerimenti forniti da Azure OpenAI si basano sulle espressioni più recenti aggiunte per tale finalità.
- Selezionare Genera espressioni. Al termine, le espressioni suggerite verranno visualizzate con una linea punteggiata intorno a esse, con la nota Generata dall'intelligenza artificiale. Tali suggerimenti devono essere accettati o rifiutati. L'accettazione di un suggerimento comporta la sua aggiunta al progetto, come se fosse stato aggiunto manualmente. Il rifiuto comporta l'eliminazione del suggerimento. Solo le espressioni accettate faranno parte del progetto e verranno usate per il training o il test. È possibile accettare o rifiutare facendo clic sui pulsanti di accettazione verde o annullamento rosso posti accanto a ogni espressione. È anche possibile usare i pulsanti
Accept all
eReject all
nella barra degli strumenti.
L'uso di questa funzionalità comporta un addebito per la Azure OpenAI di un numero simile di token alle espressioni suggerite generate. Informazioni dettagliate sui prezzi di Azure OpenAI, sono disponibili qui.
Aggiungere le configurazioni necessarie alla risorsa Azure OpenAI
Procedere come segue se si connette risorsa Linguaggio a una risorsa OpenAI di Azure non riesce.
Abilitare la gestione delle identità per la risorsa Linguaggio usando le opzioni seguenti:
La risorsa Lingua deve avere la gestione delle identità per abilitarla usando il portale di Azure:
- Accedere alla risorsa Lingua
- Nel menu a sinistra, nella sezione Gestione risorse, selezionare Identità
- Nella scheda Assegnata dal sistema, accertarsi che lo Stato sia impostato su Attivo
Dopo aver abilitato l'identità gestita, assegnare il ruolo Cognitive Services User
alla risorsa OpenAI di Azure usando l'identità gestita della risorsa Linguaggio.
- Accedere al portale di Azure quindi passare alla risorsa Azure OpenAI.
- Selezionare la scheda Controllo di accesso (IAM) a sinistra.
- Selezionare Aggiungi >Aggiungi assegnazione di ruolo.
- Selezionare "Ruoli funzione processo" e fare clic su Avanti.
- Selezionare
Cognitive Services User
nell'elenco dei ruoli e fare clic su Avanti. - Selezionare Assegna accesso a "Identità gestita" e selezionare "Seleziona membri".
- In "Identità gestita" selezionare "Lingua".
- Cercare la risorsa e selezionarla. Successivamente, selezionare il pulsante Seleziona sotto e Avanti per completare il processo.
- Esaminare i dettagli e selezionare Rivedi e assegna.
Dopo alcuni minuti, aggiornare Studio di linguaggio e sarà possibile connettersi correttamente ad Azure OpenAI.