Condividi tramite


Come preparare i dati e definire uno schema per Analisi testuale personalizzata per la salute

Per creare un modello TA4H personalizzato, è necessario eseguire il training dei dati di qualità. Questo articolo illustra come selezionare e preparare i dati, insieme alla definizione di uno schema. La definizione dello schema è il primo passaggio del ciclo di vita dello sviluppo del progetto e comporta la definizione dei tipi di entità o delle categorie necessarie per l'estrazione dal testo in fase di esecuzione.

Progettazione dello schema

La Analisi del testo personalizzata per l'integrità consente di estendere e personalizzare la Analisi del testo per la mappa delle entità di integrità. Il primo passaggio del processo è la creazione dello schema, che consente di definire i nuovi tipi di entità o categorie necessari per estrarre dal testo oltre alla Analisi del testo per le entità esistenti di integrità in fase di esecuzione.

  • Esaminare i documenti nel set di dati per acquisire familiarità con il formato e la struttura.

  • Identificare le entità da estrarre dai dati.

    Ad esempio, se si estraono entità dai messaggi di posta elettronica di supporto, potrebbe essere necessario estrarre "Nome cliente", "Nome prodotto", "Data richiesta" e "Informazioni di contatto".

  • Evitare ambiguità dei tipi di entità.

    L'ambiguità si verifica quando i tipi di entità selezionati sono simili tra loro. Più ambiguo sarà necessario distinguere i dati più ambigui tra diversi tipi di entità.

    Ad esempio, se si estraono dati da un contratto legale, per estrarre "Nome della prima parte" e "Nome della seconda parte" sarà necessario aggiungere altri esempi per superare l'ambiguità poiché i nomi di entrambe le parti sembrano simili. Evitare ambiguità perché risparmia tempo, sforzo e restituisce risultati migliori.

  • Evitare entità complesse. Le entità complesse possono essere difficili da selezionare esattamente dal testo, prendere in considerazione l'interruzione in più entità.

    Ad esempio, l'estrazione di "Address" sarebbe complessa se non è suddivisa in entità più piccole. Ci sono molte varianti del modo in cui vengono visualizzati gli indirizzi, sarebbe necessario un numero elevato di entità etichettate per insegnare al modello di estrarre un indirizzo, nel suo complesso, senza suddividerlo. Tuttavia, se si sostituisce "Address" con "Street Name", "PO Box", "City", "State" e "Zip", il modello richiederà un minor numero di etichette per entità.

Aggiungere entità

Per aggiungere entità al progetto:

  1. Passare a Entità pivot dalla parte superiore della pagina.

  2. Analisi del testo per le entità di integrità vengono caricate automaticamente nel progetto. Per aggiungere altre categorie di entità, selezionare Aggiungi dal menu superiore. Verrà richiesto di digitare un nome prima di completare la creazione dell'entità.

  3. Dopo aver creato un'entità, si verrà indirizzati alla pagina dei dettagli dell'entità in cui è possibile definire le impostazioni di composizione per questa entità.

  4. Le entità sono definite dai componenti dell'entità: apprese, elencate o predefinite. Analisi del testo per le entità di integrità sono popolate per impostazione predefinita con il componente predefinito e non possono avere componenti appresi. Le entità appena definite possono essere popolate con il componente appreso dopo aver aggiunto etichette nei dati, ma non possono essere popolate con il componente predefinito.

  5. È possibile aggiungere un componente elenco a una qualsiasi delle entità.

Aggiungere un componente elenco

Per aggiungere un componente elenco , selezionare Aggiungi nuovo elenco. È possibile aggiungere più elenchi a ogni entità.

  1. Per creare un nuovo elenco, nella casella di testo Invio valore immettere questo è il valore normalizzato restituito quando viene estratto uno dei valori sinonimi.

  2. Per i progetti multilingue, dal menu a discesa lingua selezionare la lingua dell'elenco dei sinonimi e iniziare a digitare i sinonimi e premere invio dopo ognuno di essi. È consigliabile avere elenchi di sinonimi in più lingue.

Definire le opzioni di entità

Passare alle opzioni di entità pivot nella pagina dei dettagli dell'entità. Quando sono definiti più componenti per un'entità, le stime potrebbero sovrapporsi. Quando si verifica una sovrapposizione, la stima finale di ogni entità viene determinata in base all'opzione di entità selezionata in questo passaggio. Selezionare quello che si vuole applicare a questa entità e selezionare il pulsante Salva nella parte superiore.

Dopo aver creato le entità, è possibile tornare e modificarle. È possibile modificare i componenti dell'entità o eliminarli selezionando questa opzione dal menu in alto.

Selezione dei dati

La qualità dei dati che si esegue il training del modello influisce notevolmente sulle prestazioni del modello.

  • Usare i dati reali che riflettono lo spazio dei problemi del dominio per eseguire in modo efficace il training del modello. È possibile usare dati sintetici per accelerare il processo di training del modello iniziale, ma probabilmente differisce dai dati reali e rendere il modello meno efficace quando usato.

  • Bilanciare la distribuzione dei dati il più possibile senza deviare lontano dalla distribuzione in vita reale. Ad esempio, se si esegue il training del modello per estrarre le entità dai documenti legali che possono venire in molti formati e lingue diverse, è consigliabile fornire esempi che esemplificano la diversità come si prevede di vedere nella vita reale.

  • Usare dati diversi ogni volta che è possibile evitare l'overfitting del modello. Una minore diversità nei dati di training può causare correlazioni spurie di apprendimento del modello che potrebbero non esistere nei dati in vita reale.

  • Evitare documenti duplicati nei dati. I dati duplicati hanno un effetto negativo sul processo di training, sulle metriche del modello e sulle prestazioni del modello.

  • Prendere in considerazione la posizione in cui provengono i dati. Se si raccolgono dati da una persona, un reparto o una parte dello scenario, è probabile che la diversità mancante sia importante per il modello.

Nota

Se i documenti si trovano in più lingue, selezionare l'opzione abilita multi linguale durante la creazione del progetto e impostare l'opzione lingua sulla lingua della maggior parte dei documenti.

Preparazione dei dati

Come prerequisito per la creazione di un progetto, i dati di training devono essere caricati in un contenitore BLOB nell'account di archiviazione. È possibile creare e caricare documenti di training direttamente da Azure o tramite lo strumento di Azure Storage Explorer. L'uso dello strumento Azure Storage Explorer consente di caricare più rapidamente i dati.

È possibile usare .txt solo documenti. Se i dati sono in altro formato, è possibile usare il comando CLUtils parse per modificare il formato del documento.

È possibile caricare un set di dati annotato oppure caricare uno senza annotazioni ed etichettare i dati in Language Studio.

Set di test

Quando si definisce il set di test, assicurarsi di includere documenti di esempio non presenti nel set di training. La definizione del set di test è un passaggio importante per calcolare le prestazioni del modello. Assicurarsi inoltre che il set di test includa documenti che rappresentano tutte le entità usate nel progetto.

Passaggi successivi

Se non è già stato fatto, creare un progetto di Analisi testuale personalizzata per la salute. Se è la prima volta che si usa Analisi testuale personalizzata per la salute, seguire questa guida introduttiva per creare un progetto di esempio. Per altre informazioni su come creare un progetto, vedere anche l'articolo su procedura .