#include <TranslationOption.h>

Public Member Functions | |
| TranslationOption (const WordsRange &wordsRange, const TargetPhrase &targetPhrase, const InputType &inputType) | |
| TranslationOption (const WordsRange &wordsRange, const TargetPhrase &targetPhrase, const InputType &inputType, const UnknownWordPenaltyProducer *uwpProducer) | |
| TranslationOption (const TranslationOption ©) | |
| TranslationOption (const TranslationOption ©, const WordsRange &sourceWordsRange) | |
| ~TranslationOption () | |
| bool | IsCompatible (const Phrase &phrase, const std::vector< FactorType > &featuresToCheck) const |
| void | MergeNewFeatures (const Phrase &phrase, const ScoreComponentCollection &score, const std::vector< FactorType > &featuresToMerge) |
| const TargetPhrase & | GetTargetPhrase () const |
| const WordsRange & | GetSourceWordsRange () const |
| const Phrase * | GetSourcePhrase () const |
| bool | Overlap (const Hypothesis &hypothesis) const |
| size_t | GetStartPos () const |
| size_t | GetEndPos () const |
| size_t | GetSize () const |
| float | GetFutureScore () const |
| bool | IsDeletionOption () const |
| const ScoreComponentCollection & | GetScoreBreakdown () const |
| const Scores * | GetCachedScores (const ScoreProducer *scoreProducer) const |
| void | CalcScore (const TranslationSystem *system) |
| void | CacheScores (const ScoreProducer &scoreProducer, const Scores &score) |
| TO_STRING () | |
Protected Types | |
| typedef std::map< const ScoreProducer *, const Scores * > | _ScoreCacheMap |
Protected Attributes | |
| TargetPhrase | m_targetPhrase |
| Phrase * | m_sourcePhrase |
| const WordsRange | m_sourceWordsRange |
| float | m_futureScore |
| ScoreComponentCollection | m_scoreBreakdown |
| _ScoreCacheMap | m_cachedScores |
Friends | |
| std::ostream & | operator<< (std::ostream &out, const TranslationOption &possibleTranslation) |
A translation option contains source and target phrase, aggregate and details scores (in m_scoreBreakdown), including an estimate how expensive this option will be in search (used to build the future cost matrix.)
m_targetPhrase points to a phrase-table entry. The source word range is zero-indexed, so it can't refer to an empty range. The target phrase may be empty.
Definition at line 59 of file TranslationOption.h.
typedef std::map<const ScoreProducer *, const Scores *> Moses::TranslationOption::_ScoreCacheMap [protected] |
Definition at line 76 of file TranslationOption.h.
| Moses::TranslationOption::TranslationOption | ( | const WordsRange & | wordsRange, | |
| const TargetPhrase & | targetPhrase, | |||
| const InputType & | inputType | |||
| ) |
constructor. Used by initial translation step
Definition at line 38 of file TranslationOption.cpp.
References Moses::TargetPhrase::GetScoreBreakdown(), Moses::TargetPhrase::GetSourcePhrase(), Moses::InputType::GetSubString(), Moses::InputType::GetType(), m_scoreBreakdown, m_sourcePhrase, Moses::ScoreComponentCollection::PlusEquals(), and Moses::SentenceInput.

| Moses::TranslationOption::TranslationOption | ( | const WordsRange & | wordsRange, | |
| const TargetPhrase & | targetPhrase, | |||
| const InputType & | inputType, | |||
| const UnknownWordPenaltyProducer * | uwpProducer | |||
| ) |
constructor. Used to create trans opt from unknown word
Definition at line 57 of file TranslationOption.cpp.
References Moses::ScoreComponentCollection::Assign(), Moses::FloorScore(), Moses::TargetPhrase::GetScoreBreakdown(), Moses::TargetPhrase::GetSourcePhrase(), Moses::InputType::GetSubString(), Moses::InputType::GetType(), m_scoreBreakdown, m_sourcePhrase, Moses::ScoreComponentCollection::PlusEquals(), and Moses::SentenceInput.

| Moses::TranslationOption::TranslationOption | ( | const TranslationOption & | copy | ) |
copy constructor
Definition at line 84 of file TranslationOption.cpp.
| Moses::TranslationOption::TranslationOption | ( | const TranslationOption & | copy, | |
| const WordsRange & | sourceWordsRange | |||
| ) |
copy constructor, but change words range. used by caching
Definition at line 94 of file TranslationOption.cpp.
| Moses::TranslationOption::~TranslationOption | ( | ) | [inline] |
| void Moses::TranslationOption::CacheScores | ( | const ScoreProducer & | scoreProducer, | |
| const Scores & | score | |||
| ) |
Definition at line 165 of file TranslationOption.cpp.
References m_cachedScores.
Referenced by Moses::TranslationOptionCollection::CacheLexReordering().

| void Moses::TranslationOption::CalcScore | ( | const TranslationSystem * | system | ) |
Calculate future score and n-gram score of this trans option, plus the score breakdowns
Definition at line 135 of file TranslationOption.cpp.
References Moses::LMList::CalcScore(), Moses::TranslationSystem::GetLanguageModels(), Moses::Phrase::GetSize(), GetTargetPhrase(), Moses::TranslationSystem::GetWeightWordPenalty(), Moses::ScoreComponentCollection::InnerProduct(), Moses::StaticData::Instance(), m_futureScore, and m_scoreBreakdown.
Referenced by Moses::PartialTranslOptColl::AddNoPrune(), Moses::TranslationOptionCollection::CreateTranslationOptionsForRange(), and Moses::TranslationOptionCollection::ProcessOneUnknownWord().


| const Scores* Moses::TranslationOption::GetCachedScores | ( | const ScoreProducer * | scoreProducer | ) | const [inline] |
returns cached scores
Definition at line 156 of file TranslationOption.h.
References m_cachedScores, and NULL.
Referenced by Moses::LexicalReorderingState::CopyScores().

| size_t Moses::TranslationOption::GetEndPos | ( | ) | const [inline] |
return end index of source phrase
Definition at line 131 of file TranslationOption.h.
References Moses::WordsRange::GetEndPos(), and m_sourceWordsRange.
Referenced by Moses::SearchNormal::ExpandHypothesis().


| float Moses::TranslationOption::GetFutureScore | ( | ) | const [inline] |
return estimate of total cost of this option
Definition at line 141 of file TranslationOption.h.
References m_futureScore.
Referenced by Moses::PartialTranslOptColl::AddNoPrune(), Moses::BackwardsEdge::BackwardsEdge(), Moses::Hypothesis::CalcExpectedScore(), Moses::TranslationOptionCollection::CalcFutureScore(), Moses::ComparePartialTranslationOption(), Moses::CompareTranslationOption(), Moses::SearchNormal::ExpandHypothesis(), Moses::operator<<(), and Moses::TranslationOptionCollection::Prune().

| const ScoreComponentCollection& Moses::TranslationOption::GetScoreBreakdown | ( | ) | const [inline] |
returns detailed component scores
Definition at line 151 of file TranslationOption.h.
References m_scoreBreakdown.
Referenced by Moses::Hypothesis::CalcExpectedScore(), Moses::Hypothesis::CalcScore(), and Moses::operator<<().

| size_t Moses::TranslationOption::GetSize | ( | ) | const [inline] |
return length of source phrase
Definition at line 136 of file TranslationOption.h.
References Moses::WordsRange::GetEndPos(), Moses::WordsRange::GetStartPos(), and m_sourceWordsRange.
Referenced by Moses::SearchNormal::ExpandHypothesis().


| const Phrase* Moses::TranslationOption::GetSourcePhrase | ( | ) | const [inline] |
returns source phrase
Definition at line 118 of file TranslationOption.h.
References m_sourcePhrase.
Referenced by Moses::TranslationOptionCollection::CacheLexReordering().

| const WordsRange& Moses::TranslationOption::GetSourceWordsRange | ( | ) | const [inline] |
returns source word range
Definition at line 113 of file TranslationOption.h.
References m_sourceWordsRange.
Referenced by Moses::TranslationOptionCollection::Add(), Moses::BackwardsEdge::BackwardsEdge(), Moses::HierarchicalReorderingForwardState::Expand(), Moses::HierarchicalReorderingBackwardState::Expand(), Moses::PhraseBasedReorderingState::Expand(), Moses::HierarchicalReorderingForwardState::HierarchicalReorderingForwardState(), Moses::operator<<(), Overlap(), Moses::DecodeStepTranslation::Process(), and Moses::Sentence::Read().

| size_t Moses::TranslationOption::GetStartPos | ( | ) | const [inline] |
return start index of source phrase
Definition at line 126 of file TranslationOption.h.
References Moses::WordsRange::GetStartPos(), and m_sourceWordsRange.
Referenced by Moses::SearchNormal::ExpandHypothesis().


| const TargetPhrase& Moses::TranslationOption::GetTargetPhrase | ( | ) | const [inline] |
returns target phrase
Definition at line 108 of file TranslationOption.h.
References m_targetPhrase.
Referenced by Moses::TranslationOptionCollection::CacheLexReordering(), CalcScore(), Moses::Hypothesis::Create(), Moses::operator<<(), Moses::DecodeStepTranslation::Process(), and Moses::DecodeStepGeneration::Process().

| bool Moses::TranslationOption::IsCompatible | ( | const Phrase & | phrase, | |
| const std::vector< FactorType > & | featuresToCheck | |||
| ) | const |
returns true if all feature types in featuresToCheck are compatible between the two phrases
Definition at line 117 of file TranslationOption.cpp.
References Moses::Phrase::IsCompatible(), and m_targetPhrase.

| bool Moses::TranslationOption::IsDeletionOption | ( | ) | const [inline] |
return true if the source phrase translates into nothing
Definition at line 146 of file TranslationOption.h.
References Moses::Phrase::GetSize(), and m_targetPhrase.
Referenced by Moses::Hypothesis::Hypothesis().


| void Moses::TranslationOption::MergeNewFeatures | ( | const Phrase & | phrase, | |
| const ScoreComponentCollection & | score, | |||
| const std::vector< FactorType > & | featuresToMerge | |||
| ) |
used when precomputing (composing) translation options
Definition at line 104 of file TranslationOption.cpp.
References CHECK, Moses::Phrase::GetSize(), m_scoreBreakdown, m_targetPhrase, Moses::Phrase::MergeFactors(), and Moses::ScoreComponentCollection::PlusEquals().

| bool Moses::TranslationOption::Overlap | ( | const Hypothesis & | hypothesis | ) | const |
whether source span overlaps with those of a hypothesis
Definition at line 129 of file TranslationOption.cpp.
References GetSourceWordsRange(), Moses::Hypothesis::GetWordsBitmap(), and Moses::WordsBitmap::Overlap().

| Moses::TranslationOption::TO_STRING | ( | ) |
| std::ostream& operator<< | ( | std::ostream & | out, | |
| const TranslationOption & | possibleTranslation | |||
| ) | [friend] |
Definition at line 77 of file TranslationOption.h.
Referenced by CacheScores(), GetCachedScores(), and ~TranslationOption().
float Moses::TranslationOption::m_futureScore [protected] |
in TranslationOption, m_scoreBreakdown is not complete. It cannot, for example, know the full n-gram score since the length of the TargetPhrase may be shorter than the n-gram order. But, if it is possible to estimate, it is included here.
Definition at line 74 of file TranslationOption.h.
Referenced by CalcScore(), GetScoreBreakdown(), MergeNewFeatures(), and TranslationOption().
Phrase* Moses::TranslationOption::m_sourcePhrase [protected] |
Definition at line 66 of file TranslationOption.h.
Referenced by GetSourcePhrase(), TranslationOption(), and ~TranslationOption().
const WordsRange Moses::TranslationOption::m_sourceWordsRange [protected] |
Definition at line 67 of file TranslationOption.h.
Referenced by GetEndPos(), GetSize(), GetSourceWordsRange(), and GetStartPos().
TargetPhrase Moses::TranslationOption::m_targetPhrase [protected] |
Definition at line 65 of file TranslationOption.h.
Referenced by GetTargetPhrase(), IsCompatible(), IsDeletionOption(), and MergeNewFeatures().
1.5.9