1. Added variant of CreateRuleLookupManager variant as required by the new

pure virtual function in PhraseTable.h (from the master branch).

2. Bug fix in pool_stats.
This commit is contained in:
Ulrich Germann 2014-03-19 20:43:47 +00:00
parent c91fb5cc84
commit 7e344d1c53
2 changed files with 19 additions and 1 deletions

View File

@ -213,7 +213,7 @@ namespace Moses
if (statsa && statsb)
pp.init(pid1b, *statsa, *statsb, this->m_numScoreComponents);
else if (statsa)
pp.init(pid1b, *statsa, this->m_numScoreComponents);
pp.init(pid1a, *statsa, this->m_numScoreComponents);
else if (statsb)
pp.init(pid1b, *statsb, this->m_numScoreComponents);
else return false; // throw "no stats for pooling available!";
@ -513,6 +513,11 @@ namespace Moses
for (TargetPhraseCollection::iterator r = ret->begin(); r != ret->end(); ++r)
{
cout << ++i << " " << **r << endl;
FVector fv = (*r)->GetScoreBreakdown().CreateFVector();
typedef pair<Moses::FName,float> item_t;
BOOST_FOREACH(item_t f, fv)
cout << f.first << ":" << f.second << " ";
cout << endl;
}
#endif
return ret;
@ -525,4 +530,11 @@ namespace Moses
throw "CreateRuleLookupManager is currently not supported in Mmsapt!";
}
ChartRuleLookupManager*
Mmsapt::
CreateRuleLookupManager(const ChartParser &, const ChartCellCollectionBase &,
size_t UnclearWhatThisVariableIsSupposedToAccomplishBecauseNobodyBotheredToDocumentItInPhraseTableDotHButIllTakeThisAsAnOpportunityToComplyWithTheMosesConventionOfRidiculouslyLongVariableAndClassNames)
{
throw "CreateRuleLookupManager is currently not supported in Mmsapt!";
}
}

View File

@ -133,6 +133,10 @@ namespace Moses
//! Create a sentence-specific manager for SCFG rule lookup.
ChartRuleLookupManager*
CreateRuleLookupManager(const ChartParser &, const ChartCellCollectionBase &);
ChartRuleLookupManager*
CreateRuleLookupManager
(const ChartParser &, const ChartCellCollectionBase &, std::size_t);
#endif
void add(string const& s1, string const& s2, string const& a);
@ -142,6 +146,8 @@ namespace Moses
align(string const& src, string const& trg) const;
void setWeights(vector<float> const& w);
private:
};
} // end namespace