Condividi tramite


Come preparare i dati e definire uno schema di classificazione del testo

Per creare un modello di classificazione personalizzata del testo, sono necessari dati di qualità per eseguire il successivo training. Questo articolo illustra come selezionare e preparare i dati, nonché come definire uno schema. La definizione dello schema è il primo passaggio del ciclo di vita di sviluppo del progetto e consiste nel definire le classi necessarie per classificare il testo in fase di esecuzione.

Progettazione dello schema

Lo schema definisce le classi necessarie al modello per classificare il testo in fase di esecuzione.

  • Esaminare e identificare: esaminare i documenti nel set di dati per acquisire familiarità con la struttura e il contenuto, quindi specificare come classificare i dati.

    Ad esempio, se si classificano ticket di supporto, potrebbero essere necessarie le seguenti classi: problema di accesso, problema hardware, problema di connettività e nuova richiesta di apparecchiature.

  • Evitare ambiguità nelle classi: l'ambiguità si verifica quando le classi specificate condividono significati simili. Più ambiguo è lo schema e più saranno i dati etichettati necessari per distinguere le classi diverse.

    Ad esempio, se si classificano ricette alimentari, possono in parte essere simili. Per distinguere tra ricetta di dessert e ricetta di primo piatto, potrebbe essere necessario etichettare altri esempi per aiutare il modello a distinguere tra le due classi. Evitare ambiguità consente di risparmiare tempo e produce risultati migliori.

  • Dati non inclusi nell'ambito: quando si usa il modello nell'ambiente di produzione, è consigliabile aggiungere una classe fuori ambito allo schema se si prevede di usare documenti che non appartengano a nessuna delle classi. Aggiungere quindi alcuni documenti al set di dati da etichettare come fuori ambito. Il modello può imparare a riconoscere documenti irrilevanti e stimare le etichette di conseguenza.

Selezione dei dati

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

  • Usare dati reali che riflettono lo spazio del problema del dominio per eseguire un training efficace del modello. È possibile usare dati sintetici per accelerare il processo di training del modello iniziale, ma è probabile che differiscano dai dati reali e riducano l’efficacia del modello se usati.

  • Bilanciare la distribuzione dei dati il più possibile senza scostarsi dalla distribuzione in tempo reale.

  • Usare dati diversi, quando possibile, per 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 reali.

  • Evitare documenti duplicati nei dati. I dati duplicati influiscono negativamente sul processo di training, sulle metriche del modello e sulle prestazioni del modello.

  • Prendere in considerazione la provenienza dei dati. Se i dati vengono raccolti da una sola persona, da un reparto o da una parte dello scenario, è probabile che manchi una diversità importante per l’apprendimento del modello.

Nota

Se i documenti sono in più lingue, selezionare l'opzione di abilitazione di più lingue durante lacreazione del progetto e impostare l'opzione della lingua sulla lingua della maggior parte dei documenti.

Preparazione dei dati

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

È possibile usare solo documenti .txt per il testo personalizzato. Se i dati sono in un altro formato, è possibile usare il comando di analisi di CLUtils per modificare il formato del file.

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

Set di test

Quando si definisce il set di test, 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. Accertarsi, inoltre, che il set di test includa documenti che rappresentano tutte le classi usate nel progetto.

Passaggi successivi

Se non è già stato fatto, creare un progetto di classificazione personalizzata del testo. Se è la prima volta che si usa la classificazione personalizzata del testo, è preferibile seguire la guida introduttiva per creare un progetto di esempio. È anche possibile visualizzare i requisiti del progetto per altri dettagli su ciò che è necessario per creare un progetto.