10 buone pratiche per l'archiviazione dei dati etichettati
- 10 buone pratiche per l'archiviazione dei dati etichettati
- 1. Definire il problema: è un buon problema per l'apprendimento automatico?
- 2. Raccogliere almeno 5.000 punti dati per ogni risultato.
- 3. Memorizzare i dati a livello di frase.
- 4. Classificare ed etichettare i dati in categorie ben definite.
- 5. Memorizzare tutti i dati rappresentativi.
- 6. Memorizzare i dati di sfondo.
- 7. Memorizzare il testo grezzo dei dati etichettati (pratica della ridondanza).
- 8. Mappare i dati dall'inizio alla fine (valori indice).
- 9. Eseguire il backup dei dati.
- 10. Costruire e pensare al futuro.
10 buone pratiche per l'archiviazione dei dati etichettati
Avete appena avuto la vostra grande idea. Leggete molto e avete pensato che sarebbe interessante avere un classificatore in grado di etichettare il tono di un oratore e di determinarne l'appartenenza politica. Come iniziereste a scomporre il problema in modo da poter usare l'apprendimento automatico per fare questa previsione? Abbiamo usato questo Sondaggio Pew che ha utilizzato le risposte degli elettori democratici e repubblicani ai giornali di cui si fidavano.
Prima di pensare a costruire un modello di apprendimento automatico pronto per la produzione, è necessario pensare alla pipeline di dati. Questa è la base su cui gira un modello di ML e senza una base solida non ci si può aspettare che il modello funzioni con successo. Gli esperti di Skim AI hanno messo insieme le 10 migliori pratiche per l'archiviazione dei dati etichettati che vi porteranno al successo.1. Definire il problema: è un buon problema per l'apprendimento automatico?
Affinché un modello di apprendimento automatico sia applicabile alla risoluzione di un problema, deve essere definibile per un computer:
- Questo insieme di parole corrisponde a un modello più simile a una categoria di testo o a un'altra?
- Esiste un database con dati sufficientemente rappresentativi per consentire a una macchina di estrarre i modelli?
Nell'esempio a cui ci riferiamo, i risultati sono due: discorso di orientamento democratico o discorso di orientamento repubblicano. Il problema è chiaramente più complesso di così, in quanto ci sono molti gruppi che compongono i democratici e i repubblicani e ci sono anche gli indipendenti e molte gradazioni. Ma per questo esempio ci limiteremo a queste due varianti.
2. Raccogliere almeno 5.000 punti dati per ogni risultato.
Raccogliere almeno 5.000 punti dati nel database per ogni categoria di informazioni che si desidera classificare. Nel nostro esempio, stiamo memorizzando punti di dati etichettati provenienti da articoli, discorsi, libri o trascrizioni di spettacoli. Poiché vogliamo costruire un classificatore binario, vogliamo 5.000 esempi di scritti democratici e 5.000 esempi di scritti repubblicani, per un totale di 10.000 campioni. Anche se 5.000 punti per risultato è il minimo consigliato, l'accuratezza migliorerà con un numero maggiore di dati, quindi non trattenetevi.
3. Memorizzare i dati a livello di frase.
Nel nostro caso, l'obiettivo è quello di classificare interi articoli come democratici o repubblicani, ma è preferibile proteggere i propri sforzi memorizzando ogni risorsa a livello di frase invece che di intero articolo. In questo modo, se si desidera classificare entità più specifiche, come paragrafi o analisi che circondano determinate parole chiave o entità (persone, luoghi e organizzazioni), sarà possibile utilizzare i dati con un minore sforzo di pulizia in futuro.
In generale, il 50-65% del tempo speso in un progetto di ML è dedicato alla pulizia e alla trasformazione dei dati in un formato leggibile dagli algoritmi di ML. La maggior parte dei classificatori lavora sia a livello di frase che di intero documento.
Suggerimenti pratici per l'implementazione della classificazione a livello di frase e paragrafo:
- Per iniziare, limitate le vostre esigenze di classificazione a una sola frase, a un solo paragrafo o a un solo documento (articolo).
- Esigenze non standard (poche parole o poche frasi) aggiungono un problema molto difficile: la creazione di un secondo modello ML per prevedere quale cluster è importante.
- Semplificare il più possibile il problema della classificazione all'inizio, e aumentare la complessità nel tempo man mano che si rendono disponibili più dati.
4. Classificare ed etichettare i dati in categorie ben definite.
Si tratta di una questione di metodologia. È importante ottenere il maggior numero possibile di segnali puri. Ciò significa eliminare il rumore e le risorse e le informazioni sfumate. Ad esempio, se si memorizzano dati etichettati provenienti da fonti centriste, essi conterranno meno segnali chiari e se si aggiungono dati (articoli) provenienti da una fonte centrista all'insieme di dati repubblicani o democratici, diminuirà l'accuratezza e l'utilità del classificatore del discorso repubblicano/democratico.
Nel nostro esempio, questo è particolarmente difficile perché le persone hanno convinzioni politiche molto più complesse di una semplice linea di partito. Inoltre, vari scrittori, oratori e giornali avranno opinioni diverse dalla linea ufficiale del partito. In questo esempio, è probabile che ci sia molto rumore che deve essere soppresso, ad esempio:
- I giornali variano nella misura in cui propendono per il conservatorismo o il liberalismo su determinate questioni.
- Alcuni giornalisti hanno opinioni diverse su un determinato argomento, anche tra altri giornalisti della stessa testata.
- Gli azionisti o i proprietari possono predicare un dogma su una particolare questione per loro importante e dare istruzioni al team editoriale di trattare le questioni in un certo modo.
Si potrebbero passare ore a definire una metodologia che tenga conto di tutte le possibili variabili. Raccomandiamo di raccogliere e archiviare il maggior numero di dati possibile. Cercate dati puliti a livello di frase e create campi per tenere traccia dell'autore, della pubblicazione e di qualsiasi altro campo che possa essere catturato.
5. Memorizzare tutti i dati rappresentativi.
È possibile accedere a un numero sufficiente di dati? Nel nostro caso è relativamente facile accedere ai vecchi articoli di queste pubblicazioni per raccogliere un set di articoli e un numero sufficiente di dati per ogni categoria di classificazione.
In caso contrario, si può prendere in considerazione l'utilizzo di Amazon Mechanical Turk per etichettare i dati o, se la metodologia richiede una formazione, si possono addestrare e pagare persone in India o in Macedonia $1.000 al mese per costruire un set di dati.
6. Memorizzare i dati di sfondo.
L'archiviazione di dati etichettati che sono tangenzialmente correlati a ciò che si vuole classificare consente di costruire modelli più robusti che probabilmente includono un maggior numero di vocaboli, persone, luoghi e argomenti che aiutano qualsiasi modello costruito. Può essere utile esporre il modello di classificazione a nuovi vocaboli, argomenti ed entità e comprendere le relazioni intrinseche tra le parole. In questo modo il modello sarà in grado di gestire meglio dati diversi da quelli iniziali.
Forse volete ottenere libri scritti da deputati e deputate, tweet, trascrizioni di interviste, trascrizioni di trasmissioni di notizie via cavo, trascrizioni di dialoghi al Congresso, proposte di legge e leggi scritte o sponsorizzate da particolari membri del Congresso.
Il punto di forza dell'apprendimento automatico è che non è necessario testare da soli tutte le variabili, ma è sufficiente ottenere dati sufficienti per far funzionare il ML e definire bene il problema.
7. Memorizzare il testo grezzo dei dati etichettati (pratica ridondanza).
Per sicurezza, memorizzare sempre il testo grezzo dei dati etichettati. Ad esempio, se all'interno di un articolo è presente una frase rappresentativa dei dati che si desidera etichettare, assicurarsi di memorizzare il testo grezzo della frase e l'etichetta. Anche se si memorizza questo dato solo come ridondanza, è bene fare questa operazione. Il vostro ingegnere di apprendimento automatico o scienziato dei dati vi ringrazierà.
8. Mappare i dati dall'inizio alla fine (valori indice).
Se si utilizzano valori di indice per fare riferimento a dati etichettati, mappare tali dati e comprendere bene la mappatura. Ad esempio, se si memorizza una frase o un paragrafo di un articolo, assicurarsi che i valori del database relativi all'inizio della frase o del paragrafo corrispondano al valore della fonte da cui si memorizzano i dati. Per sicurezza, fate un test a partire dalla prima frase, dai valori iniziali e finali e dall'ultima frase.
9. Eseguire il backup dei dati.
Questo dovrebbe essere un'operazione che si spiega da sola. Eseguite regolarmente il backup dei dati.
10. Costruire e pensare al futuro.
In alcune circostanze ci vogliono anni per raccogliere un numero sufficiente di dati etichettati. Se sapete di voler risolvere un problema in un'area specifica, iniziate a raccogliere il maggior numero di dati non etichettati e etichettati relativi al problema che volete risolvere e ai dati specifici del dominio.
Siete pronti per iniziare? Date un'occhiata al nostro altri pezzi sull'apprendimento automatico.