diff options
| author | armatthews <armatthe@cmu.edu> | 2016-01-17 04:03:35 -0500 | 
|---|---|---|
| committer | armatthews <armatthe@cmu.edu> | 2016-01-17 04:03:35 -0500 | 
| commit | ee4f3c5581e43510d98de1274c6c1c2984c87faf (patch) | |
| tree | 76c3528886000446cb96bf6eab1cf4a5193345e1 | |
| parent | c643ef361eea7ce43b4fc7a6e2461a01b3d0c3c6 (diff) | |
bug fixes when training with WER
| -rw-r--r-- | mteval/ns_wer.cc | 4 | ||||
| -rw-r--r-- | training/mira/kbest_cut_mira.cc | 2 | 
2 files changed, 3 insertions, 3 deletions
| diff --git a/mteval/ns_wer.cc b/mteval/ns_wer.cc index f9b2bbbb..057ad49e 100644 --- a/mteval/ns_wer.cc +++ b/mteval/ns_wer.cc @@ -18,10 +18,10 @@ void WERMetric::ComputeSufficientStatistics(const std::vector<WordID>& hyp,                                              const std::vector<std::vector<WordID> >& refs,                                              SufficientStats* out) const {    out->fields.resize(kNUMFIELDS); -  float best_score = hyp.size(); +  float best_score = 0;    for (size_t i = 0; i < refs.size(); ++i) {      float score = cdec::LevenshteinDistance(hyp, refs[i]); -    if (score < best_score) { +    if (score < best_score || i == 0) {        out->fields[kEDITDISTANCE] = score;        out->fields[kCHARCOUNT] = refs[i].size();        best_score = score; diff --git a/training/mira/kbest_cut_mira.cc b/training/mira/kbest_cut_mira.cc index 724b1853..5d8385c2 100644 --- a/training/mira/kbest_cut_mira.cc +++ b/training/mira/kbest_cut_mira.cc @@ -645,7 +645,7 @@ int main(int argc, char** argv) {    ScoreType type = ScoreTypeFromString(metric_name);    //establish metric used for tuning -  if (type == TER) { +  if (type == TER || type == WER) {      invert_score = true;    } else {      invert_score = false; | 
