summaryrefslogtreecommitdiff
path: root/training/utils
diff options
context:
space:
mode:
authorChris Dyer <redpony@gmail.com>2013-06-07 12:34:22 -0700
committerChris Dyer <redpony@gmail.com>2013-06-07 12:34:22 -0700
commitf3ef541b3d89ebca6856d3a2ce320b4f826938da (patch)
tree6dcbabaefe7cc8764c1469184ebd535f48bdd3cb /training/utils
parent660eabae8886d3e09177749daaf4d4ac29178b0b (diff)
parente6bc1c6863f507a792307b42fa301d8f93d8c33f (diff)
Merge pull request #22 from eschling/master
python mira run script
Diffstat (limited to 'training/utils')
-rwxr-xr-xtraining/utils/decode-and-evaluate.pl15
1 files changed, 12 insertions, 3 deletions
diff --git a/training/utils/decode-and-evaluate.pl b/training/utils/decode-and-evaluate.pl
index 1a332c08..c69e77dc 100755
--- a/training/utils/decode-and-evaluate.pl
+++ b/training/utils/decode-and-evaluate.pl
@@ -39,6 +39,7 @@ my $weights;
my $use_make = 1;
my $useqsub;
my $cpbin=1;
+my $base_dir;
# Process command-line options
if (GetOptions(
"jobs=i" => \$jobs,
@@ -47,6 +48,7 @@ if (GetOptions(
"input=s" => \$test_set,
"config=s" => \$config,
"weights=s" => \$weights,
+ "dir=s" => \$base_dir,
) == 0 || @ARGV!=0 || $help) {
print_help();
exit;
@@ -68,7 +70,9 @@ my @tf = localtime(time);
my $tname = basename($test_set);
$tname =~ s/\.(sgm|sgml|xml)$//i;
my $dir = "eval.$tname." . sprintf('%d%02d%02d-%02d%02d%02d', 1900+$tf[5], $tf[4], $tf[3], $tf[2], $tf[1], $tf[0]);
-
+if ($base_dir) {
+ $dir = $base_dir.'/'.$dir
+}
my $time = unchecked_output("date");
check_call("mkdir -p $dir");
@@ -103,11 +107,12 @@ print STDERR "\nOUTPUT: $test_trans\n\n";
my $bleu = check_output("cat $test_trans | $SCORER $refs -m ibm_bleu");
chomp $bleu;
print STDERR "BLEU: $bleu\n";
+print STDOUT "BLEU: $bleu\n";
my $ter = check_output("cat $test_trans | $SCORER $refs -m ter");
chomp $ter;
print STDERR " TER: $ter\n";
open TR, ">$dir/test.scores" or die "Can't write $dir/test.scores: $!";
-print TR <<EOT;
+my $score_report = <<EOT;
### SCORE REPORT #############################################################
OUTPUT=$test_trans
SCRIPT INPUT=$test_set
@@ -118,6 +123,9 @@ print TR <<EOT;
TER=$ter
##############################################################################
EOT
+
+print TR $score_report;
+print STDOUT $score_report;
close TR;
my $sr = unchecked_output("cat $dir/test.scores");
print STDERR "\n\n$sr\n(A copy of this report can be found in $dir/test.scores)\n\n";
@@ -166,7 +174,8 @@ Options:
A file specifying feature weights.
--dir <dir>
- Directory for intermediate and output files.
+ Base directory where directory with evaluation results
+ will be located.
Job control options: