sklearn.decomposition.LatentDirichletAllocation — scikit-learn 0.20.4 documentation (original) (raw)

Parameters:

n_components : int, optional (default=10)

Number of topics.

doc_topic_prior : float, optional (default=None)

Prior of document topic distribution theta. If the value is None, defaults to 1 / n_components. In [Re25e5648fc37-1], this is called alpha.

topic_word_prior : float, optional (default=None)

Prior of topic word distribution beta. If the value is None, defaults to 1 / n_components. In [Re25e5648fc37-1], this is called eta.

learning_method : ‘batch’ | ‘online’, default=’batch’

Method used to update _component. Only used in fit method. In general, if the data size is large, the online update will be much faster than the batch update.

Valid options:

'batch': Batch variational Bayes method. Use all training data in each EM update. Old components_ will be overwritten in each iteration. 'online': Online variational Bayes method. In each EM update, use mini-batch of training data to update the components_ variable incrementally. The learning rate is controlled by the learning_decay and the learning_offset parameters.

Changed in version 0.20: The default learning method is now "batch".

learning_decay : float, optional (default=0.7)

It is a parameter that control learning rate in the online learning method. The value should be set between (0.5, 1.0] to guarantee asymptotic convergence. When the value is 0.0 and batch_size isn_samples, the update method is same as batch learning. In the literature, this is called kappa.

learning_offset : float, optional (default=10.)

A (positive) parameter that downweights early iterations in online learning. It should be greater than 1.0. In the literature, this is called tau_0.

max_iter : integer, optional (default=10)

The maximum number of iterations.

batch_size : int, optional (default=128)

Number of documents to use in each EM iteration. Only used in online learning.

evaluate_every : int, optional (default=0)

How often to evaluate perplexity. Only used in fit method. set it to 0 or negative number to not evalute perplexity in training at all. Evaluating perplexity can help you check convergence in training process, but it will also increase total training time. Evaluating perplexity in every iteration might increase training time up to two-fold.

total_samples : int, optional (default=1e6)

Total number of documents. Only used in the partial_fit method.

perp_tol : float, optional (default=1e-1)

Perplexity tolerance in batch learning. Only used whenevaluate_every is greater than 0.

mean_change_tol : float, optional (default=1e-3)

Stopping tolerance for updating document topic distribution in E-step.

max_doc_update_iter : int (default=100)

Max number of iterations for updating document topic distribution in the E-step.

n_jobs : int or None, optional (default=None)

The number of jobs to use in the E-step.None means 1 unless in a joblib.parallel_backend context.-1 means using all processors. See Glossaryfor more details.

verbose : int, optional (default=0)

Verbosity level.

random_state : int, RandomState instance or None, optional (default=None)

If int, random_state is the seed used by the random number generator; If RandomState instance, random_state is the random number generator; If None, the random number generator is the RandomState instance used by np.random.

n_topics : int, optional (default=None)

This parameter has been renamed to n_components and will be removed in version 0.21. .. deprecated:: 0.19

Attributes:

components_ : array, [n_components, n_features]

Variational parameters for topic word distribution. Since the complete conditional for topic word distribution is a Dirichlet,components_[i, j] can be viewed as pseudocount that represents the number of times word j was assigned to topic i. It can also be viewed as distribution over the words for each topic after normalization:model.components_ / model.components_.sum(axis=1)[:, np.newaxis].

n_batch_iter_ : int

Number of iterations of the EM step.

n_iter_ : int

Number of passes over the dataset.