Miglioramento della pertinenza dei risultati con l'addestramento
La pertinenza dei risultati della query in linguaggio naturale può essere migliorata in IBM Watson® Discovery con l'addestramento.
Un modello di rilevanza determina i documenti più pertinenti da restituire nei risultati della ricerca. Senza un addestramento di rilevanza, viene utilizzato un meccanismo standard per determinare la pertinenza in base a fattori comuni. Quando esegui il training di un modello di rilevanza, aiuti Discovery a utilizzare le funzioni univoche per i tuoi documenti in quanto determina la pertinenza.
Il modello di addestramento di rilevanza associato a un progetto viene utilizzato al runtime solo quando vengono inoltrate le query in linguaggio naturale. Il modello non viene applicato alle query DQL (Discovery Query Language).
Non è possibile applicare la formazione di rilevanza ai tipi di progetto Content Mining.
Per preparare un modello di rilevanza, fornisci query in linguaggio naturale di esempio, inviale per ottenere i risultati dai tuoi documenti e valutali. Quando si aggiungono ulteriori esempi, le informazioni fornite sulla pertinenza dei risultati per ogni query vengono utilizzate per acquisire informazioni sul progetto. Il sistema utilizza le valutazioni per assegnare importanza ai diversi tipi di informazioni strutturali all'interno dei documenti. Ad esempio, viene apprende l'importanza di quando una parola chiave della query di ricerca viene visualizzata nel titolo rispetto all'intestazione, al corpo o ai metadati del documento. Impara anche dall'importanza della distanza tra una parola chiave corrispondente e un'altra. Dopo una sessione di addestramento della pertinenza di successo, viene creato un modello ranker. Il modello viene utilizzato automaticamente da Discovery con la successiva query di linguaggio naturale. Il rilevamento riordina i risultati del documento in modo che vengano visualizzati per primi i risultati più pertinenti in base al modello di addestramento della rilevanza.
La formazione si applica a un intero progetto. Non può essere ignorato per una raccolta e applicato ad altre raccolte nello stesso progetto. Non si abilita l'utilizzo del modello di addestramento specificando un parametro di query. Se presente, il modello viene utilizzato per ogni query di linguaggio naturale inoltrata per il progetto. Il modello viene utilizzato se si limita la ricerca a una raccolta o a tutte le raccolte. Per questo motivo, è importante che i tuoi dati di formazione rappresentino query a cui è probabile che tutte le raccolte nel tuo progetto risponderanno. Per impedire a un progetto di utilizzare il modello di addestramento della rilevanza, puoi eliminarlo utilizzando l'API.
L'addestramento della pertinenza non viene eseguito continuamente. L'addestramento si verifica solo quando lo si avvia. Viene utilizzato al massimo un modello di rilevanza addestrato alla volta per progetto. Se si riaddestra un modello, il modello esistente viene utilizzato fino a quando il nuovo modello non viene addestrato correttamente, in quel momento il nuovo modello sostituisce il vecchio modello.
La serie di documenti che costituiscono i dati di formazione viene utilizzata solo durante il processo di formazione. Se viene apportata una modifica successiva a un documento che è stato utilizzato per addestrare il modello, non viene modificato il modello addestrato e non viene attivata una nuova sessione di addestramento. Tieni presente che se molti dei documenti nel tuo progetto cambiano, potrebbe essere il momento di riaddestrare il modello per utilizzare le funzioni dai documenti aggiornati.
Le parole di arresto e le espansioni di query che aggiungi a una raccolta non influenzano direttamente il modello di addestramento della rilevanza. Tuttavia, possono modificare quali documenti vengono restituiti da una ricerca, il che influisce sui documenti classificati in base al modello di rilevanza. Il modello classifica i primi 100 documenti restituiti per una query. Le modifiche che effettui alle parole di arresto o alle espansioni di query non avviano un aggiornamento di addestramento della pertinenza. Se si aggiungono risorse utente che modificano drasticamente i documenti restituiti dalla ricerca, considerare la possibilità di rieseguire l'addestramento del modello.
Se i documenti utilizzati precedentemente per addestrare il modello vengono rimossi da una raccolta, devi rimuovere qualsiasi riferimento ad essi dai dati di addestramento prima di iniziare a riaddestrare il modello. Il modello prevede che i documenti e le query dalle coppie di dati di addestramento continuino a esistere. Per rimuovere questi riferimenti, eliminare le query di formazione che hanno restituito i documenti eliminati. Se le query continuano ad essere rilevanti, puoi aggiungerle di nuovo ai dati di addestramento e accoppiarle con altri documenti.
Per ulteriori informazioni sull'API di formazione della pertinenza, vedi la documentazione di riferimento API.
Quando utilizzare la formazione di rilevanza
L'addestramento della pertinenza è facoltativo. Verificare la qualità dei propri risultati di ricerca. Se i risultati delle interrogazioni soddisfano le vostre esigenze, non è necessaria un'ulteriore formazione.
Il training migliora la rilevanza dei documenti restituiti nelle risposte della query. Non migliora i passaggi o le risposte che vengono restituite per documento. Se stai utilizzando il recupero del passaggio e i risultati del test stanno restituendo buoni documenti, ma i passaggi errati dai documenti, l'addestramento della pertinenza non sarà di aiuto.
Per ulteriori informazioni su quando utilizzare la formazione di rilevanza, leggi il post del blog Relevancy training for time sensitive users su Medium.
Modalità di gestione dei campi
Quando si addestra un progetto dall'interfaccia utente del prodotto, i risultati vengono sempre presi dal campo text dei documenti. Se i tuoi documenti non hanno un campo text, utilizza invece l'API per preparare il
tuo progetto. I tuoi documenti potrebbero non avere un campo text se hai caricato un file CSV che non ha una colonna denominata text, o hai caricato un file JSON che non ha un oggetto denominato text, o se hai
utilizzato lo strumento Smart Document Understanding per definire i campi con altri nomi in cui ora è archiviata la maggior parte del contenuto dei tuoi documenti.
Quando si addestra un progetto dall'API, i risultati vengono presi da tutti i campi di livello root e sono tutti considerati di uguale importanza. A differenza delle query Discovery Query Language, con le query in linguaggio naturale non è possibile specificare quali campi del documento si desidera assegnare a ciascuno di essi. Quando insegni il rilevamento con esempi, il servizio indica il peso da attribuire a ogni campo.
Il rilevamento crea un modello che assegna pesi differenti alle corrispondenze di termini, bigrammi e skip - gram per ciascuno dei campi di livello root e li bilancia rispetto alle corrispondenze di tutti gli altri campi del documento. Con un numero sufficiente di esempi, Discovery può restituire risposte migliori perché sa dove vengono memorizzate le risposte migliori.
L'addestramento della pertinenza non può essere utilizzato per dare più peso ai campi nidificati. I campi nidificati vengono raggruppati e viene assegnato un punteggio complessivo. Non importa quanto ti alleni, Discovery non dà mai a un campo nidificato un peso maggiore di quello che dà a un campo di livello root. Per ulteriori informazioni sui campi nidificati, vedi le FAQ.
Formazione di un progetto
I dati di addestramento utilizzati per addestrare il modello di rilevanza includono queste parti:
- Una query in linguaggio naturale che rappresenta una query che i tuoi utenti potrebbero inoltrare
- I risultati della query restituiti dal servizio
- La valutazione che si applica al risultato che indica se il risultato è
relevantonot relevant
Per applicare la formazione di rilevanza a un progetto, completa la seguente procedura:
-
Andare alla pagina Migliora e personalizza. Nel pannello Improvement tools, seleziona Improve relevance e quindi Relevancy training.
-
Immettere una query in linguaggio naturale nel campo Immettere una domanda da addestrare.
Non includere un punto interrogativo nella tua query. Utilizzare la stessa formulazione dei propri utenti. Ad esempio,
IBM Watson in healthcare. Scrivere query che includono alcuni dei termini menzionati nella risposta di destinazione. La sovrapposizione dei termini migliora i risultati iniziali quando viene valutata la query del linguaggio naturale. -
Fare clic su Aggiungi+.
-
Fare clic su Valuta risultati.
-
Una volta visualizzati i risultati, valutare ciascun risultato, quindi selezionare Pertinente o Non pertinente, a seconda dell'opzione che si applica in base alla qualità del risultato.
Nell'IU Discovery, quando contrassegni un documento come Pertinente, il servizio applica un punteggio di rilevanza di
10al risultato e un punteggio0quando lo contrassegni come Non pertinente. I soli due valori di punteggio che puoi assegnare quando applichi la formazione di rilevanza tramite la IU Discovery sono0e10.Nell'API Discovery, puoi assegnare i valori del punteggio di rilevanza tra
0e ogni numero intero compreso tra100. Nello stesso progetto, non puoi combinare esempi di formazione creati nella IU Discovery (punteggi di0e10) con esempi creati che utilizzano livelli di punteggio di affidabilità diversi da0e10. Se utilizzi una scala di punteggi personalizzata tramite l'API, devi continuare ad applicare tutta la tua formazione tramite l'API. Non puoi modificare gli esempi di addestramento che vengono applicati tramite l'API nella IU Discovery a meno che non utilizzino solo i due punteggi di0e10.Se il risultato mostra il messaggio "Nessuna anteprima del contenuto disponibile per questo documento", significa che il documento restituito non contiene un campo
texto che il relativo campotextè vuoto. Se nessuno dei documenti nella tua raccolta ha un campotext, utilizza l'API per addestrare il progetto invece di addestrarlo dall'interfaccia utente del prodotto. -
Al termine, fare clic su Torna alle query.
-
Continua ad aggiungere query e a valutarle.
Quando si valutano i risultati, viene visualizzato il progresso. Controllare l'avanzamento per verificare quando sono disponibili informazioni di valutazione sufficienti per soddisfare le necessità della soglia di formazione. L'avanzamento è suddiviso nelle seguenti attività:
- Aggiungi ulteriori query
- Valuta ulteriori risultati
- Aggiungi più varietà alle tue valutazioni
È necessario valutare almeno 50 query univoche, forse più, a seconda della complessità dei dati. Non è possibile aggiungere più di 10.000 query di addestramento.
-
È possibile continuare ad aggiungere query e a valutare i risultati dopo aver raggiunto la soglia. Immettere tutte le query che si pensa verranno richieste dagli utenti.
Per eliminare una query di addestramento, fare clic su Elimina. Per eliminare tutte le query di formazione nella raccolta in una sola volta, utilizza l'API. Per ulteriori informazioni, vedere Eliminazione delle query di formazione.
Se due o più utenti tentano di addestrare query identiche contemporaneamente, le valutazioni inoltrate da uno degli utenti sovrascrivono le altre.
Verifica e iterazione sulla pertinenza dei risultati
Una volta terminata la valutazione dei risultati e completata la formazione, verificare se i risultati della query sono migliori. A tal fine, è necessario eseguire query di prova in linguaggio naturale che siano correlate (ma non identiche) alle query di addestramento. Controlla i risultati.
Se si desidera continuare a migliorare i risultati dopo il test, è possibile:
- Aggiungere altri documenti alla tua raccolta.
- Aggiungere altre query di addestramento.
- Valutare più risultati, assicurandoti di utilizzare entrambe le valutazioni
RelevanteNot relevant.
Punteggi di affidabilità
Discovery restituisce un punteggio confidence per le query in linguaggio naturale delle raccolte addestrate. Questo punteggio confidence non è intercambiabile con i punteggi confidence restituiti da raccolte
non addestrate.
Il punteggio confidence può andare a 0.0 a 1.0. Più alto è il numero e più è pertinente il risultato.
Il punteggio di affidabilità (confidence) può essere trovato nei risultati della query, sotto i metadati dei risultati (result_metadata) per ciascun documento. Questo numero viene calcolato in base al grado di pertinenza
stimato del risultato rispetto al modello addestrato.
{
"matching_results": 4,
"retrieval_details": {
"document_retrieval_strategy": "trained"
},
"results": [
{
"id": "eea16dfd5fe6139a25324e7481a32f89_13",
"result_metadata": {
"confidence": 0.08793
}
}
]
}
La document_retrieval_strategy può essere trovata in retrieval_details. Se si interroga una raccolta addestrata utilizzando il linguaggio di interrogazione Discovery o se il modello addestrato è temporaneamente disabilitato,
il modello document_retrieval_strategy è untrained.
Per ulteriori informazioni sulla query di un progetto, consultare la Panoramica query.
Limiti di addestramento della pertinenza
I seguenti limiti si applicano ai modelli di addestramento della rilevanza:
- Un modello per progetto
- 10.000 query per modello
- 40 modelli per istanza del servizio per piani Enterprise e Premium; 20 modelli per istanze del piano Plus
Esecuzione di sessioni di addestramento ottimali
Il seguente esempio descrive come eseguire in maniera ottimale le sessioni per la formazione della rilevanza nei progetti.
Tieni presente che hai aggiunto 100 query di formazione a un nuovo progetto e Discovery esegue 100 query in una sessione di formazione per creare un modello ranker. Successivamente, se aggiungi altre 20 query, il modello inizia a rieseguire l'addestramento e Discovery esegue un totale di 120 query. Tuttavia, per aggiungere le ultime 20 query, se aggiungi prima 10 query, attendi circa un'ora e poi aggiungi le successive 10 query, Discovery addestra il modello due volte. In questo caso, la prima sessione di addestramento esegue 110 query e la seconda sessione di addestramento esegue 120 query. Questo modo di aggiungere le query, intervallate da intervalli di tempo, determina un aumento del numero di sessioni di formazione e di query totali eseguite da Discovery.
Invece, per ridurre il numero di sessioni di formazione, puoi utilizzare l'API Aggiorna una query di addestramento. Il metodo API aggiorna i dati di addestramento per più raccolte in un progetto alla volta. Per ulteriori informazioni, vedi Aggiorna una query di formazione nella guida di riferimento API.
Per ridurre il carico di elaborazione su Discovery, devi creare o aggiornare un modello ranker tramite la formazione della pertinenza dopo che tutte le raccolte in un progetto hanno completato l'elaborazione dei documenti. Inoltre, durante il processo di addestramento del modello ranker, è necessario disporre di attività di query basse in modo che il limite di richieste simultanee non superi.
Altri modi per migliorare la rilevanza
Se preferisci utilizzare l'API Discovery per addestrare Discovery, vedi la Guida di riferimento API.
Puoi anche utilizzare l'API per aggiungere le curazioni. Curations è una funzione beta che puoi utilizzare per insegnare Discovery a restituire un documento specifico ogni volta che viene inoltrata una determinata query. Per ulteriori informazioni, vedi Curations.
L'aggiunta di un elenco di parole non significative personalizzato può anche migliorare la pertinenza dei risultati per le query in linguaggio naturale. Per ulteriori informazioni, vedi Identificazione delle parole da ignorare.
Informazioni sulla formazione della pertinenza
Risposte alle domande più comuni sulla formazione di un progetto.
Come faccio a sapere se il mio sistema è addestrato?
Esegui una query in linguaggio naturale e controlla document_retrieval_strategy. Vedi Punteggi di affidabilità.
Se stai usando l'API, vedi Elenca le query di formazione.
Quanto tempo ci vuole per addestrare un modello?
Il completamento dell'allenamento può richiedere da 45 minuti a un'ora. La durata dell'addestramento varia a seconda della quantità e della varietà dei dati che vengono utilizzati per addestrare il modello di rilevanza. Inoltre, l'addestramento avviene in modo asincrono. Può essere ritardato se altri dati di cui ha bisogno non sono disponibili perché vengono ricercati o elaborati in altro modo.
Come faccio a impedire che la formazione di pertinenza venga applicata al mio progetto?
Utilizza l'API per eliminare il modello di rilevanza associato al tuo progetto. Per eliminare il modello, eliminare i dati di addestramento associati al modello ranker. Per ulteriori informazioni, vedi Eliminazione delle query di formazione.
La formazione della pertinenza influisce sulla ricerca del passaggio?
Num. L'addestramento della rilevanza viene utilizzato solo per la ricerca di documenti. Non ha alcun impatto sulla ricerca del passaggio.
La formazione di rilevanza ha un impatto sulla ricerca della risposta?
Non direttamente. La formazione della pertinenza influenza indirettamente la ricerca della risposta perché modifica l'ordine dei documenti da cui vengono richiamate le risposte. Essa ritrasse i documenti restituiti dalla maggior parte a quella meno pertinente.
Come controllo gli errori e le avvertenze?
Aprire la pagina Gestisci raccolte. Scegli la tua raccolta e apri quindi la scheda Activity.
Come si interpreta il punteggio di confidenza che appare nei risultati delle query in linguaggio naturale dopo la formazione?
Vedi Punteggi di affidabilità.
Interpretazione degli errori e delle avvertenze di addestramento della rilevanza
Il seguente elenco contiene spiegazioni per alcuni messaggi di errore e di avvertenza comuni.
Il messaggio Watson inizierà presto l'apprendimento viene visualizzato a lungo durante la creazione di un modello ranker
Questo problema può verificarsi se il numero totale di modelli di classificatore esistenti ha raggiunto il limite di 40 modelli. In questo caso, non viene creato un nuovo modello e sull'interfaccia utente viene visualizzato a lungo il messaggio Watson will begin learning soon.
Per risolvere questo problema, è possibile eliminare i vecchi modelli di ranker dai progetti inutilizzati oppure contattare il supporto IBM per passare a un'istanza premium.
Avvertenza: Invalid training data found: The document was not returned in the top 100 search results for the given query, and will not be used for training
Questa avvertenza si verifica quando il document_ids nei tuoi dati di formazione non corrispondono al document_ids in una ricerca eseguita sulla raccolta. Controllate le vostre query per assicurarvi che il sito document_id del documento che state valutando venga restituito tra i primi 100 risultati per quella query. In caso negativo, è opportuno che controlli due cose:
- Se il documento non viene restituito nei primi 100, potrebbe non essere un esempio di risultato di alta qualità. Rivalutare se utilizzare il documento.
- Se il documento non viene restituito, è necessario esaminare il motivo per cui non viene restituito e verificare se il testo del documento corrisponde a parti della query.
Questa avvertenza indica che potresti avere una o più query non riuscite. Ciò non significa che la formazione non possa essere completata.
Errore: Invalid training data found: Syntax error when parsing query
Un errore di sintassi indica che la query non è valida. Gli errori di sintassi possono verificarsi quando si aumenta la complessità della query aggiungendo un filtro alla query in linguaggio naturale, ad esempio. Esegui la query rispetto alla raccolta all'esterno della formazione di pertinenza utilizzando l'API. Dopo aver confermato che la query è valida e restituisce i risultati, puoi aggiungerla come una query di addestramento della pertinenza.
Errore: Training data quality standards not met: You will need additional training queries with labeled examples. (To be considered for training, each example must appear in the top 100 search results for its query.)
È necessario aggiungere ulteriori dati di addestramento per eseguire correttamente l'addestramento. Hai bisogno come minimo di almeno 49 query di addestramento univoche e ciascuna di esse ha bisogno di almeno un documento valutato. Minimo non significa ottimale; la dimensione della collezione e altri fattori possono aumentare il numero di esempi di addestramento necessari per soddisfare il minimo.
Errore: Training data quality standards not met: Insufficient number of unique training queries. Expected at least n, but found m.
Per soddisfare i requisiti minimi di formazione, hai bisogno di almeno 50 query di formazione univoche e ogni query deve avere almeno un documento valutato. Se si dispone di un numero di query superiore al minimo e si sta ancora ricevendo questo messaggio di errore, controllare gli avvisi per altri errori.
Errore: Training data quality standards not met: No documents found with non-zero relevance labels.
I dati di addestramento richiedono una quantità sufficiente di dati etichettati che specificano quali documenti sono di valore elevato. Pertanto, è necessario valutare alcuni documenti con valori non nulli. Devi valutare qualche documento
come pertinente (Relevant) e qualcuno come non pertinente (Not relevant). Almeno un documento deve essere valutato come Relevant.
Errore: Training data quality standards not met: Training examples have no relevance label variety for X queries.
Uno dei requisiti per l'addestramento è quello di disporre di una sufficiente diversità di etichette. Almeno il 25% delle query di addestramento deve includere sia le etichette Relevant che Not relevant. Se si utilizza
l'API, almeno il 25% delle query deve includere due diverse etichette numeriche.