LDA++
Public Member Functions | List of all members
ldaplusplus::em::MStepInterface< Scalar > Class Template Referenceabstract

#include <MStepInterface.hpp>

Inheritance diagram for ldaplusplus::em::MStepInterface< Scalar >:
ldaplusplus::events::EventDispatcherComposition ldaplusplus::em::CorrespondenceSupervisedMStep< Scalar > ldaplusplus::em::FastOnlineSupervisedMStep< Scalar > ldaplusplus::em::MultinomialSupervisedMStep< Scalar > ldaplusplus::em::UnsupervisedMStep< Scalar > ldaplusplus::em::FastSupervisedMStep< Scalar > ldaplusplus::em::SupervisedMStep< Scalar > ldaplusplus::em::SemiSupervisedMStep< Scalar >

Public Member Functions

virtual void m_step (std::shared_ptr< parameters::Parameters > parameters)=0
 
virtual void doc_m_step (const std::shared_ptr< corpus::Document > doc, const std::shared_ptr< parameters::Parameters > v_parameters, std::shared_ptr< parameters::Parameters > m_parameters)=0
 
- Public Member Functions inherited from ldaplusplus::events::EventDispatcherComposition
std::shared_ptr< EventDispatcherInterfaceget_event_dispatcher ()
 
void set_event_dispatcher (std::shared_ptr< EventDispatcherInterface > dispatcher)
 

Detailed Description

template<typename Scalar>
class ldaplusplus::em::MStepInterface< Scalar >

Interface that defines an M-step iteration for any LDA inference.

The maximization step maximizes the likelihood (actually the Evidence Lower Bound) of the data by changing the parameters and using the variational parameters as constants. In classical LDA this step computes the distribution over words for all topics using the variational parameters \(\phi\) and \(\gamma\).

Member Function Documentation

template<typename Scalar >
virtual void ldaplusplus::em::MStepInterface< Scalar >::doc_m_step ( const std::shared_ptr< corpus::Document doc,
const std::shared_ptr< parameters::Parameters v_parameters,
std::shared_ptr< parameters::Parameters m_parameters 
)
pure virtual

Perform calculations for a specific document.

The variational parameters are only passed to the maximization step in this method. In other implementations this method is usually called sufficient statistics.

This method allows for the implementation of online LDA inference methods.

Parameters
docA single document
v_parametersThe variational parameters computed in the e-step
m_parametersModel parameters could be changed in case of online methods

Implemented in ldaplusplus::em::FastOnlineSupervisedMStep< Scalar >, ldaplusplus::em::FastSupervisedMStep< Scalar >, ldaplusplus::em::SupervisedMStep< Scalar >, ldaplusplus::em::UnsupervisedMStep< Scalar >, ldaplusplus::em::CorrespondenceSupervisedMStep< Scalar >, ldaplusplus::em::SemiSupervisedMStep< Scalar >, and ldaplusplus::em::MultinomialSupervisedMStep< Scalar >.

template<typename Scalar >
virtual void ldaplusplus::em::MStepInterface< Scalar >::m_step ( std::shared_ptr< parameters::Parameters parameters)
pure virtual

The documentation for this class was generated from the following file: