51#ifndef DOXYGEN_SHOULD_SKIP_THIS
61 external_prior_(from.external_prior_->clone()),
62 score_internal_prior_(from.score_internal_prior_->clone()), counter_(from.counter_) {
63 GUM_CONS_CPY(ParamEstimator);
67 INLINE ParamEstimator::ParamEstimator(ParamEstimator&& from) noexcept :
68 external_prior_(from.external_prior_), score_internal_prior_(from.score_internal_prior_),
69 counter_(std::move(from.counter_)) {
70 from.external_prior_ =
nullptr;
71 from.score_internal_prior_ =
nullptr;
72 GUM_CONS_MOV(ParamEstimator);
76 INLINE
void ParamEstimator::clear() { counter_.clear(); }
79 INLINE
void ParamEstimator::setNumberOfThreads(Size nb) { counter_.setNumberOfThreads(nb); }
82 INLINE Size ParamEstimator::getNumberOfThreads()
const {
return counter_.getNumberOfThreads(); }
85 INLINE
bool ParamEstimator::isGumNumberOfThreadsOverriden()
const {
86 return counter_.isGumNumberOfThreadsOverriden();
91 INLINE
void ParamEstimator::setMinNbRowsPerThread(
const std::size_t nb)
const {
92 counter_.setMinNbRowsPerThread(nb);
96 INLINE std::size_t ParamEstimator::minNbRowsPerThread()
const {
97 return counter_.minNbRowsPerThread();
101 INLINE
const std::vector< std::pair< std::size_t, std::size_t > >&
102 ParamEstimator::ranges()
const {
103 return counter_.ranges();
107 INLINE std::vector< double > ParamEstimator::parameters(
const NodeId target_node) {
108 return parameters(target_node, empty_nodevect_);
112 INLINE std::pair< std::vector< double >,
double >
113 ParamEstimator::parametersAndLogLikelihood(
const NodeId target_node) {
114 return parametersAndLogLikelihood(target_node, empty_nodevect_);
118 INLINE
const Bijection< NodeId, std::size_t >& ParamEstimator::nodeId2Columns()
const {
119 return counter_.nodeId2Columns();
123 INLINE
const DatabaseTable& ParamEstimator::database()
const {
return counter_.database(); }
The base class for estimating parameters of CPTs.
ParamEstimator(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
include the inlined functions if necessary
gum is the global namespace for all aGrUM entities
the base class for estimating parameters of CPTs