Modelli di classificazione di apprendimento tradizionale e deep learning

Contenuti

Questo articolo è stato pubblicato nell'ambito del Blogathon sulla scienza dei dati

1. introduzione

En este trabajo, presentamos la relación del rendimiento del modelo con un tamaño de conjunto de datos variabile y un número variable de clases de destino. Hemos realizado nuestros experimentos en reseñas de productos de Amazon.

El conjunto de datos contiene el título de la reseña, el texto de la reseña y las calificaciones. Hemos considerado las calificaciones como nuestra clase de salida. Cosa c'è di più, hemos realizado tres experimentos (polarità 0/1), tres clases (positivo, negativo, neutro) y cinco clases (calificación de 1 un 5). Hemos incluido tres modelos tradicionales y tres de apprendimento profondo.

Modelos de aprendizaje automático

1. Regressione logistica (LR)

2. Supporta la macchina vettoriale (SVM)

3. Naive-Bayes (NB)

Modelli di apprendimento profondo

1. neuronale rosso de convolución (CNN)

2. Memoria a corto plazo (LSTM)

3. Unidad recurrente cerrada (GRU)

2. El conjunto de datos

Usamos el conjunto de datos de revisión de productos de Amazon para nuestro experimento. Il set di dati contiene 3,6 milioni di istanze di recensioni di prodotti in forma di testo.

Sono stati forniti file di addestramento separati (3m) e processo (0,6m) in formato CSV. Ogni istanza ha 3 attributi. Il primo attributo è classificazione Entra 1 e 5. Il secondo attributo è qualificazione della recensione. L'ultimo è il testo della recensione.

Nella Tabella 1 sono riportati alcuni casi. Abbiamo considerato solo 1,5 m.

11359data-7410285

3. Esperimento per analisi

Abbiamo già menzionato che l'intero esperimento è stato effettuato per la classificazione binaria, a tre classi e a cinque classi. Abbiamo eseguito alcuni passaggi di pre-elaborazione sul dataset prima di passarli ai modelli di classificazione. Ogni esperimento è stato eseguito in modo incrementale.

Abbiamo iniziato il nostro addestramento con 50000 istanze e siamo passati a 1,5 milioni di istanze per l'addestramento. Finalmente, abbiamo registrato le parametri prestazioni di ciascun modello.

98111flow-6948686
Fig 1. Flusso di analisi sperimentale

3.1 Pre-elaborazione

3.1.1 Mappatura delle etichette:

Abbiamo considerato le valutazioni come la classe per il testo della recensione. L'intervallo dell'attributo di valutazione è tra 1 e 5. Dobbiamo assegnare queste valutazioni al numero di classi, considerate per l'esperimento in particolare.

un) Classificazione binaria: –

Qui, assegniamo la valutazione 1 e 2 alla classe 0 e valutazione 4 e 5 alla classe 1. Questo tipo di classificazione può essere trattato come un problema di classificazione dei sentimenti, dove le recensioni con 1 e 2 valutazioni sono nella classe negativa e 4 e 5 sono nella classe positiva.

Non abbiamo considerato le recensioni con una valutazione di 3 per l'esperimento di classificazione binaria. Perciò, otteniamo meno istanze per il addestramento rispetto agli altri due esperimenti.

B) Classificazione a tre classi: –

Qui, ampliamo il nostro esperimento di classificazione precedente. Ora consideriamo la valutazione 3 come una nuova classe separata. La nuova assegnazione delle valutazioni alle classi è la seguente: Qualificazione 1 e 2 assegnato alla classe 0 (Negativo), Classificazione 3 assegnato alla classe 1 (Neutro) e valutazione 4 e 5 assegnati alla classe 2 (Positivo).

Istanze per classe 1 sono molto inferiori alla classe 0 e 2, il che crea un problema di squilibrio tra le classi. Perciò, noi usiamo micro-media nel calcolo delle misure di performance.

C) Classificazione a cinque classi: –

Qui, consideriamo ogni valutazione come una classe separata. L'assegnazione è la seguente: Classificazione 1 assegnato alla classe 0, Classificazione 2 assegnato alla classe 1, Classificazione 3 assegnato alla classe 2, Classificazione 4 assegnato alla classe 3e la classificazione 5 assegnato alla classe 4.

3.1.2 Verifica la pre-elaborazione del testo:

Le recensioni dei prodotti Amazon sono in formato testuale. Dobbiamo convertire i dati testuali in un formato numerico, che può essere utilizzato per addestrare i modelli.

Per i modelli di apprendimento automatico, convertiamo il testo della recensione in formato vettoriale TF-IDF con l'aiuto di lo sklearn Biblioteca. Invece di prendere ogni parola individualmente, consideriamo il modello di n-grammi durante la creazione dei vettori TF-IDF. L'intervallo di N-grammi è impostato su 2 – 3, e il valore massimo della funzione è impostato su 5000.

Per i modelli di deep learning, dobbiamo convertire i dati di sequenza di testo in dati di sequenza numerica. Applichiamo il word-to-vector modeling per convertire ogni parola nel vettore equivalente.

Il set di dati contiene un gran numero di parole; così, la codifica one-hot 1- è molto inefficiente. Qui abbiamo utilizzato un modello pre-addestrato word2Vec per rappresentare ogni parola con un vettore colonna di dimensione 300. Impostiamo la lunghezza massima della sequenza uguale a 70.

Le recensioni con una lunghezza di parole inferiore a 70 vengono riempite con zeri all'inizio. Per le recensioni con una lunghezza di parole superiore a 70, selezioniamo le prime 70 parole per l'elaborazione di word2Vec.

3.2 Addestramento del modello di classificazione

Abbiamo menzionato in precedenza che abbiamo preso tre modelli tradizionali di apprendimento automatico (LR, SVM, NB) e tre modelli di deep learning (CNN, LSTM, GRU). Il testo pre-elaborato con le informazioni dell'etichetta viene passato ai modelli per il loro addestramento.

All'inizio, Alleniamo i sei modelli con 50000 istanze e li testiamo con 5000 Istanze. Per la prossima iterazione, aggiungiamo 50000 e 5000 più istanze nel set di addestramento e di test, rispettivamente. Abbiamo eseguito 30 iterazioni; così, Noi consideriamo 1.5 m, 150000 istanze per il set di addestramento e di test nell'ultima iterazione.

La formazione sopra menzionata viene effettuata per i tre tipi di esperimenti di classificazione.

3.3 Configurazioni del modello

Abbiamo utilizzato la configurazione predefinita degli iperparametri di tutti i classificatori tradizionali utilizzati in questo esperimento. e la CNN, la dimensione di input è 70 con una dimensione dell'embedding di 300. La omissione del livello di embedding è impostata su 0.3. È stata applicata una convoluzione 1-D all'input, con la dimensione di output della convoluzione impostata su 100. La dimensione del kernel viene mantenuta a 3. riprendere Il funzione sveglia è stata utilizzata nel livello di convoluzione. Per il processo di pooling, viene utilizzato il max pooling. L'ottimizzatore Adam viene utilizzato con una Funzione di perdita di entropia incrociata.

LSTM e GRU hanno anche la stessa configurazione di iperparametri. La dimensione della Livello di output cambia con l'esperimento in esecuzione.

3.4 Misure di prestazione

96565f1-3331616

Formula del punteggio F

Abbiamo preso il punteggio F1 per analizzare le prestazioni dei modelli di classificazione con diverse etichette di classe e conteggio delle istanze. Esiste un compromesso tra Precision e Recall se cerchiamo di migliorare Recall, Precision sarebbe compromessa, e lo stesso vale al contrario.

Il punteggio F1 combina precision e recall sotto forma di media armonica.

95694pr-7186756

Precisione, formula di recall in micro-medie

Nella classificazione a tre e cinque classi, osserviamo che il conteggio delle istanze con valutazione 3 è molto inferiore rispetto al confronto con altre valutazioni, ciò che crea il problema dello squilibrio di classe.

Perciò, utilizziamo il concetto di micro-media nel calcolare i parametri di prestazione. La micro-media gestisce lo squilibrio di classe nel calcolare la precisione e il richiamo. Per ottenere informazioni dettagliate su Precision, Recall, visitare il seguente link: link wiki.

4 Risultati e osservazioni

In questa sezione, abbiamo presentato i risultati dei nostri esperimenti con diverse dimensioni dei set di dati e il numero di etichette di classe. È stato presentato un grafico separato per ogni esperimento. I grafici sono tracciati tra la dimensione del set di test e il punteggio F1.

Cosa c'è di più, forniamo il Figura 5, che contiene sei sotto-grafici. Ogni sotto-parte corrisponde a un classificatore. Abbiamo presentato il tasso di variazione tra i punteggi di rendimento di due esperimenti rispetto alla dimensione variabile del set di test.

Figura 2

La figura 2 Mostra le prestazioni dei classificatori nel compito di classificazione binaria. In questo caso, La dimensione reale del test è inferiore ai dati che abbiamo preso per il test perché sono state eliminate le recensioni con valutazione 3.

I classificatori di apprendimento automatico (LR, SVM, NB) Funzionano in modo costante eccetto per lievi variazioni nei punti di partenza.

Il classificatore di apprendimento profondo (GRU e CNN) Inizia con prestazioni inferiori rispetto a SVM e LR. Dopo tre iterazioni iniziali, GRU e CNN dominano continuamente i classificatori di apprendimento automatico.

L'LSTM realizza l'apprendimento in modo più efficace. L'LSTM è iniziato con le prestazioni più basse. Man mano che il set di addestramento aumenta 0.3 m, L'LSTM ha mostrato una crescita continua e ha terminato con GRU.

553542_class_result-4833495

Fig 2. Analisi delle prestazioni della classificazione binaria

figura 3

La figura 3 presenta i risultati dell'esperimento di classificazione a tre classi. Le prestazioni di tutti i classificatori peggiorano con l'aumentare delle classi. Le prestazioni sono simili alla classificazione binaria se confrontiamo un classificatore particolare con gli altri.

L'unica differenza è nelle prestazioni dell'LSTM. Qui, L'LSTM ha aumentato continuamente le prestazioni, a differenza della classificazione binaria. La regressione logistica (LR) ha funzionato un po' meglio rispetto alla SVM. Sia LR che SVM hanno avuto prestazioni simili nell'esperimento di classificazione binaria.

987523_class_result-9670834

Fig 3. Análisis de rendimiento de clasificación de tres clases

Figura 4

La figura 4 representa los resultados del experimento de clasificación de cinco clases. Los resultados siguen las mismas tendencias que aparecieron en el experimento de clasificación binaria y de tres clases. Aquí la diferencia de rendimiento entre LR y SVM aumentó un poco más.

Perciò, podemos concluir que la brecha de desempeño de LR y SVM aumenta a misura que aumenta el número de clases.

A partire dell'analisi general, I classificatori di deep learning funzionano meglio man mano che aumenta la dimensione del set di dati di addestramento e i classificatori tradizionali mostrano prestazioni costanti.

705225_class_result-6632840

Fig 4. Analisi delle prestazioni della classificazione a cinque classi

Figura 5

La figura 5 rappresenta la relazione delle prestazioni rispetto al cambiamento nel numero di classi e nella dimensione del set di dati. La figura contiene sei sotto-grafici, uno per ciascun classificatore. Ogni sotto-grafico ha due linee; una linea mostra la relazione delle prestazioni tra la classificazione a tre classi e la classe binaria in diverse dimensioni dei set di dati.

Un'altra linea rappresenta la relazione di rendimento tra la classificazione a cinque classi e quella a tre classi in diverse dimensioni di set di dati. Abbiamo riscontrato che i classificatori tradizionali hanno un tasso di variazione costante. Per i classificatori tradizionali, tasso di variazione è indipendente dalla dimensione del set di dati. Non possiamo commentare sul comportamento dei modelli di apprendimento profondo riguardo al cambiamento nel numero di classi e alla dimensione del set di dati a causa del modello variabile nel tasso di variazione.

41054ratio-1537247
Fig 5. Analisi di “tasso di variazione”

Oltre all'analisi sperimentale menzionata in precedenza, abbiamo analizzato i dati di testo classificati in modo errato. Abbiamo trovato osservazioni interessanti che hanno influenzato la classificazione.

Parole sarcastiche: –

I clienti hanno scritto recensioni sarcastiche sui prodotti. Hanno dato la valutazione 1 oh 2, ma hanno usato molte parole di polarità positiva. Ad esempio, un cliente ha valutato 1 e ha scritto la seguente recensione: 'Oh! Che caricatore fantastico che ho !! ". Il classificatore si è confuso con questo tipo di parole e frasi di polarità.

Uso di parole ad alta polarità: –

I clienti hanno dato una valutazione media (3) ma hanno utilizzato parole molto polarizzate nelle loro recensioni. Ad esempio, fantastico, straordinario, notevole, patetico, eccetera.

Uso di parole rare: –

Avendo un set di dati di dimensione 3,6M, abbiamo ancora trovato molte parole poco comuni, che hanno influenzato le prestazioni della classificazione. Gli errori ortografici, gli acronimi, le parole in forme brevi utilizzate dai revisori sono anche fattori importanti.

5. Nota finale

Abbiamo analizzato le prestazioni dei modelli tradizionali di apprendimento automatico e deep learning con diverse dimensioni dei set di dati e il numero della classe target.

Abbiamo scoperto che i classificatori tradizionali possono apprendere meglio dei classificatori di deep learning se il set di dati è piccolo. Con l'aumento delle dimensioni del set di dati, i modelli di deep learning ottengono un aumento delle prestazioni.

Abbiamo studiato il tasso di cambiamento nelle prestazioni del classificatore da binario a tre classi e da tre classi a cinque classi problema con el tamaño variable del conjunto de datos.

Abbiamo usato Duro biblioteca de aprendizaje profundo para la experimentación. Los resultados y los scripts de Python están disponibles en el siguiente enlace: Collegamento GitHub.

Il supporto mostrato in questo articolo non è di proprietà di DataPeaker e viene utilizzato a discrezione dell'autore.

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.

Altoparlante dati