Download tools/mosesdecoder/moses2/FF/WordPenalty.cpp from Quagmire1/wiki-cased: direct link, hf CLI and curl.
- Browser
- Download file 1.39 kB
-
https://huggingface.co/Quagmire1/wiki-cased/resolve/main/tools/mosesdecoder/moses2/FF/WordPenalty.cpp
- Command line
-
hf download hf://Quagmire1/wiki-cased/tools/mosesdecoder/moses2/FF/WordPenalty.cpp
-
curl -L -o WordPenalty.cpp https://huggingface.co/Quagmire1/wiki-cased/resolve/main/tools/mosesdecoder/moses2/FF/WordPenalty.cpp
1.39 kB
| /* | |
| * WordPenalty.cpp | |
| * | |
| * Created on: 28 Oct 2015 | |
| * Author: hieu | |
| */ | |
| namespace Moses2 | |
| { | |
| WordPenalty::WordPenalty(size_t startInd, const std::string &line) : | |
| StatelessFeatureFunction(startInd, line) | |
| { | |
| ReadParameters(); | |
| } | |
| WordPenalty::~WordPenalty() | |
| { | |
| // TODO Auto-generated destructor stub | |
| } | |
| void WordPenalty::EvaluateInIsolation(MemPool &pool, const System &system, | |
| const Phrase<Moses2::Word> &source, const TargetPhraseImpl &targetPhrase, Scores &scores, | |
| SCORE &estimatedScore) const | |
| { | |
| SCORE score = -(SCORE) targetPhrase.GetSize(); | |
| scores.PlusEquals(system, *this, score); | |
| } | |
| void WordPenalty::EvaluateInIsolation(MemPool &pool, const System &system, const Phrase<SCFG::Word> &source, | |
| const TargetPhrase<SCFG::Word> &targetPhrase, Scores &scores, | |
| SCORE &estimatedScore) const | |
| { | |
| size_t count = 0; | |
| for (size_t i = 0; i < targetPhrase.GetSize(); ++i) { | |
| const SCFG::Word &word = targetPhrase[i]; | |
| if (!word.isNonTerminal) { | |
| ++count; | |
| } | |
| } | |
| scores.PlusEquals(system, *this, -(SCORE) count); | |
| } | |
| } | |