2017-03-28 1 views
0

Le modèle HDP de Gensim pour la modélisation de sujet (gensim.models.hdpmodel.HdpModel) a un constructeur qui prend un argument appelé max_chunks.Modèle de sujet Gensim HDP: Comment s'entraîner sur plusieurs passages de corpus?

Sur la documentation, il est écrit max_chunks est le nombre de morceaux que le modèle va dépasser, et si cela est plus grand que le nombre de morceaux dans le corpus fourni, la formation se déroulera autour du corpus. Comme j'ai été averti par les journaux INFO que la fonction de vraisemblance a diminué, je suppose que je peux avoir besoin de plusieurs passages sur le corpus pour converger.

Le modèle LDA fournit avec l'argument passes la fonctionnalité de formation sur corpus pour des itérations multiples. J'ai de la difficulté à comprendre comment max_chunks dans les cartes HDP à passes dans LDA. Par exemple, disons que mon corpus a des documents 1000000. Qu'est-ce que max_chunks doit être exactement dans le but d'entraîner, disons, 3 passes sur mon corpus.

Une suggestion? Beaucoup de nombreux remerciements

Répondre

0

Les options chunksize, passes et update_every peuvent être un peu déroutantes. Ce qui m'a aidé a été cette link et plus particulièrement la section Chunksize, Passes, and Update_every

Donc, dans votre cas, si vous faites batch-LDA avec update_every ensemble à 0 et chunksize ensemble au nombre de documents, avec passes ensemble à 3, vous devriez obtenir trois passes sur le corpus complet.

En cas de online-LDA, où update_every est réglé sur 1, vous pourriez en outre utiliser la chunksize pour contrôler la taille des mini-lots par passe.