trainers ======== .. py:module:: topmost.trainers .. toctree:: :titlesonly: :maxdepth: 3 basic/index.rst crosslingual/index.rst dynamic/index.rst hierarchical/index.rst Package Contents ---------------- .. autoapisummary:: topmost.trainers.BasicTrainer topmost.trainers.BERTopicTrainer topmost.trainers.FASTopicTrainer topmost.trainers.LDAGensimTrainer topmost.trainers.LDASklearnTrainer topmost.trainers.NMFGensimTrainer topmost.trainers.NMFSklearnTrainer topmost.trainers.CrosslingualTrainer topmost.trainers.DynamicTrainer topmost.trainers.DTMTrainer topmost.trainers.HierarchicalTrainer topmost.trainers.HDPGensimTrainer .. py:class:: BasicTrainer(model, dataset, num_top_words=15, epochs=200, learning_rate=0.002, batch_size=200, lr_scheduler=None, lr_step_size=125, log_interval=5, verbose=False) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: epochs :value: 200 .. py:attribute:: learning_rate :value: 0.002 .. py:attribute:: batch_size :value: 200 .. py:attribute:: lr_scheduler :value: None .. py:attribute:: lr_step_size :value: 125 .. py:attribute:: log_interval :value: 5 .. py:attribute:: verbose :value: False .. py:method:: make_optimizer() .. py:method:: make_lr_scheduler(optimizer) .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: BERTopicTrainer(dataset, num_topics=50, num_top_words=15) .. py:attribute:: model .. py:attribute:: dataset .. py:method:: train() .. py:method:: test(texts) .. py:method:: get_beta() .. py:method:: get_top_words() .. py:method:: export_theta() .. py:class:: FASTopicTrainer(dataset, num_topics=50, num_top_words=15, preprocess=None, epochs=200, DT_alpha=3.0, TW_alpha=2.0, theta_temp=1.0, verbose=False) .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: model .. py:attribute:: epochs :value: 200 .. py:method:: train() .. py:method:: test(texts) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: LDAGensimTrainer(dataset, num_topics=50, num_top_words=15, max_iter=1, alpha='symmetric', eta=None, verbose=False) .. py:attribute:: dataset .. py:attribute:: num_topics :value: 50 .. py:attribute:: vocab_size .. py:attribute:: max_iter :value: 1 .. py:attribute:: alpha :value: 'symmetric' .. py:attribute:: eta :value: None .. py:attribute:: verbose :value: False .. py:attribute:: num_top_words :value: 15 .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: LDASklearnTrainer(model, dataset, num_top_words=15, verbose=False) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: verbose :value: False .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: NMFGensimTrainer(dataset, num_topics=50, num_top_words=15, max_iter=1) .. py:attribute:: dataset .. py:attribute:: num_topics :value: 50 .. py:attribute:: num_top_words :value: 15 .. py:attribute:: vocab_size .. py:attribute:: max_iter :value: 1 .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: NMFSklearnTrainer(model, dataset, num_top_words=15) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: CrosslingualTrainer(model, dataset, num_top_words=15, epochs=500, learning_rate=0.002, batch_size=200, lr_scheduler=None, lr_step_size=125, log_interval=5, verbose=False) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: epochs :value: 500 .. py:attribute:: learning_rate :value: 0.002 .. py:attribute:: batch_size :value: 200 .. py:attribute:: lr_scheduler :value: None .. py:attribute:: lr_step_size :value: 125 .. py:attribute:: log_interval :value: 5 .. py:method:: make_optimizer() .. py:method:: make_lr_scheduler(optimizer) .. py:method:: train() .. py:method:: test(bow_en, bow_cn) .. py:method:: infer_theta(bow, lang) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: DynamicTrainer(model, dataset, num_top_words=15, epochs=200, learning_rate=0.002, batch_size=200, lr_scheduler=None, lr_step_size=125, log_interval=5, verbose=False) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: epochs :value: 200 .. py:attribute:: learning_rate :value: 0.002 .. py:attribute:: batch_size :value: 200 .. py:attribute:: lr_scheduler :value: None .. py:attribute:: lr_step_size :value: 125 .. py:attribute:: log_interval :value: 5 .. py:attribute:: verbose :value: False .. py:method:: make_optimizer() .. py:method:: make_lr_scheduler(optimizer) .. py:method:: train() .. py:method:: test(bow, times) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: DTMTrainer(dataset, num_topics=50, num_top_words=15, alphas=0.01, chain_variance=0.005, passes=10, lda_inference_max_iter=25, em_min_iter=6, em_max_iter=20, verbose=False) .. py:attribute:: dataset .. py:attribute:: vocab_size .. py:attribute:: num_topics :value: 50 .. py:attribute:: num_top_words :value: 15 .. py:attribute:: alphas :value: 0.01 .. py:attribute:: chain_variance :value: 0.005 .. py:attribute:: passes :value: 10 .. py:attribute:: lda_inference_max_iter :value: 25 .. py:attribute:: em_min_iter :value: 6 .. py:attribute:: em_max_iter :value: 20 .. py:attribute:: verbose :value: False .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_theta() .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta() .. py:class:: HierarchicalTrainer(model, dataset, num_top_words=15, epochs=200, learning_rate=0.002, batch_size=200, lr_scheduler=None, lr_step_size=125, log_interval=5, verbose=False) .. py:attribute:: model .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: epochs :value: 200 .. py:attribute:: learning_rate :value: 0.002 .. py:attribute:: batch_size :value: 200 .. py:attribute:: lr_scheduler :value: None .. py:attribute:: lr_step_size :value: 125 .. py:attribute:: log_interval :value: 5 .. py:attribute:: verbose :value: False .. py:method:: make_optimizer() .. py:method:: make_lr_scheduler(optimizer) .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_phi() .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None, annotation=False) .. py:method:: export_theta() .. py:class:: HDPGensimTrainer(dataset, num_top_words=15, max_chunks=None, max_time=None, chunksize=256, kappa=1.0, tau=64.0, K=15, T=150, alpha=1, gamma=1, eta=0.01, scale=1.0, var_converge=0.0001, verbose=False) .. py:attribute:: dataset .. py:attribute:: num_top_words :value: 15 .. py:attribute:: vocab_size .. py:attribute:: max_chunks :value: None .. py:attribute:: max_time :value: None .. py:attribute:: chunksize :value: 256 .. py:attribute:: kappa :value: 1.0 .. py:attribute:: tau :value: 64.0 .. py:attribute:: K :value: 15 .. py:attribute:: T :value: 150 .. py:attribute:: alpha :value: 1 .. py:attribute:: gamma :value: 1 .. py:attribute:: eta :value: 0.01 .. py:attribute:: scale :value: 1.0 .. py:attribute:: var_converge :value: 0.0001 .. py:attribute:: verbose :value: False .. py:method:: train() .. py:method:: test(bow) .. py:method:: get_beta() .. py:method:: get_top_words(num_top_words=None) .. py:method:: export_theta()