Numero di epoche nell'implementazione di Gensim Word2Vec


14

C'è un iterparametro nell'implementazione di gensimWord2Vec

class gensim.models.word2vec.Word2Vec (frasi = None, size = 100, alpha = 0.025, window = 5, min_count = 5, max_vocab_size = None, sample = 0, seed = 1, operai = 1, min_alpha = 0.0001, sg = 1, hs = 1, negativo = 0, cbow_mean = 0, hashfxn =, iter = 1 , null_word = 0, trim_rule = None, ordinati_vocab = 1)

che specifica il numero di epoche, ovvero:

iter = numero di iterazioni (epoche) sul corpus.

Qualcuno sa se questo aiuta a migliorare il modello sul corpus?

C'è qualche motivo per cui l' iterimpostazione predefinita è 1? Non c'è molto effetto nell'aumentare il no. di epoche?

Esiste una valutazione scientifica / empirica su come impostare il no. di epoche?

A differenza dell'attività di classificazione / regressione, il metodo di ricerca della griglia non funzionerebbe davvero poiché i vettori sono generati in modo non supervisionato e la funzione obiettivo è semplicemente tramite softmax gerarchico o campionamento negativo.

Esiste un meccanismo di arresto anticipato per ridurre il no. di epoche in cui convergono i vettori? E possono convergere la softmax gerarchica o l'obiettivo di campionamento negativo?

Risposte:


5

L'aumento del numero di epoche di solito avvantaggia la qualità delle rappresentazioni delle parole. In esperimenti che ho eseguito in cui l'obiettivo era quello di utilizzare le parole incorporamenti come caratteristiche per la classificazione del testo impostando le epoche su 15 anziché su 5, aumentava le prestazioni.


2

Ho guardato qui e ho scoperto che il valore predefinito è cambiato da 1 a 5. Apparentemente gli autori credono che più epoche miglioreranno i risultati .

Non posso ancora dirlo per esperienza.


2

Ho addestrato il mio modello w2v su google news 300 per [2, 10, 100] epoche e il migliore era su 10 epoche. Dopo tutta quell'attesa, rimasi scioccato dal fatto che 100 epoche fossero brutte.

epoch   wall                    
------ ------                    
2       56 s                    
10      4m 44s (284s)           
100     47m 27s (2847 s)    

1

Aumentare il conteggio dell'iter (numero di epoche) aumenta notevolmente il tempo di allenamento. Word2Vec fornisce risultati di qualità solo se si alimenta una quantità enorme di documenti, pertanto non è ragionevole eseguire il loop anche su di essi due volte, anche se in realtà rende più accurati gli incorporamenti delle parole risultanti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.