48#ifndef DOXYGEN_SHOULD_SKIP_THIS
57 const Prior& external_prior,
58 const Prior& score_internal_prior,
59 const std::vector< std::pair< std::size_t, std::size_t > >& ranges,
60 const Bijection< NodeId, std::size_t >& nodeId2columns) :
61 ParamEstimator(parser, external_prior, score_internal_prior, ranges, nodeId2columns) {
62 GUM_CONSTRUCTOR(ParamEstimatorML);
67 ParamEstimatorML::ParamEstimatorML(
const DBRowGeneratorParser& parser,
68 const Prior& external_prior,
69 const Prior& score_internal_prior,
70 const Bijection< NodeId, std::size_t >& nodeId2columns) :
71 ParamEstimator(parser, external_prior, score_internal_prior, nodeId2columns) {
72 GUM_CONSTRUCTOR(ParamEstimatorML);
76 INLINE ParamEstimatorML::ParamEstimatorML(
const ParamEstimatorML& from) : ParamEstimator(from) {
77 GUM_CONS_CPY(ParamEstimatorML);
81 INLINE ParamEstimatorML::ParamEstimatorML(ParamEstimatorML&& from) :
82 ParamEstimator(
std::move(from)) {
83 GUM_CONS_MOV(ParamEstimatorML);
87 INLINE ParamEstimatorML* ParamEstimatorML::clone()
const {
return new ParamEstimatorML(*
this); }
90 INLINE std::vector< double >
91 ParamEstimatorML::parameters(
const NodeId target_node,
92 const std::vector< NodeId >& conditioning_nodes) {
93 return _parametersAndLogLikelihood_(target_node, conditioning_nodes,
false).first;
97 INLINE std::pair< std::vector< double >,
double > ParamEstimatorML::parametersAndLogLikelihood(
98 const NodeId target_node,
99 const std::vector< NodeId >& conditioning_nodes) {
100 return _parametersAndLogLikelihood_(target_node, conditioning_nodes,
true);
the class used to read a row in the database and to transform it into a set of DBRow instances that c...
ParamEstimatorML(const DBRowGeneratorParser &parser, const Prior &external_prior, const Prior &_score_internal_prior, const std::vector< std::pair< std::size_t, std::size_t > > &ranges, const Bijection< NodeId, std::size_t > &nodeId2columns=Bijection< NodeId, std::size_t >())
default constructor
The base class for estimating parameters of CPTs.
the base class for all a priori
include the inlined functions if necessary
gum is the global namespace for all aGrUM entities