\n"; print "IDUserTaskDirectory\n"; $rev = array_reverse($setup); while (list($i,$line) = each($rev)) { $dir = explode(";",$line); print "$dir[0]$dir[1]$dir[2]$dir[3]\n"; } print "\n"; print "

To add experiment, edit setup in web directory"; } function overview() { global $evalset; global $experiment,$comment; global $task,$user,$setup; global $dir; global $has_analysis; $has_analysis = array(); head("Task: $task ($user)"); print "Wiki Notes"; print "     |     Overview of experiments     |     $dir

"; reset($experiment); print "

\n"; output_state_for_form(); // count how many analyses there are for each test set while (list($id,$info) = each($experiment)) { reset($evalset); while (list($set,$dummy) = each($evalset)) { $analysis = "$dir/evaluation/$set.analysis.$id"; $report_info = "$dir/steps/$id/REPORTING_report.$id.INFO"; // does the analysis file exist? if (file_exists($analysis)) { if (!array_key_exists($set,$has_analysis)) { $has_analysis[$set] = 0; } $has_analysis[$set]++; } } } reset($experiment); print "\n"; reset($evalset); while (list($set,$dummy) = each($evalset)) { if (array_key_exists($set,$has_analysis)) { print ""; } else { print ""; } } print "\n"; while (list($id,$info) = each($experiment)) { $state = return_state_for_link(); print ""; output_score($id,$info); print "\n"; } print "
ID start end"; if ($has_analysis[$set]>=2) { print " "; } else { print $set; } print "$set
cfg|par|img[$setup-$id]"; if (array_key_exists("$setup-$id",$comment)) { print " ".$comment["$setup-$id"]->name; } print "".mytime($info->start,0).""; if (mytime($info->end,1) == "running") { print "".$info->last_step; if ($info->last_step == "TUNING
tune") { print "
".tune_status($id); } } else if (property_exists($info,"result")) { print mytime($info->end,1); print "
"; print dev_score("$dir/tuning/moses.ini.$id"); } else { print "crashed"; } print "
"; print " time()) { return "running"; } if ($timestamp + 12*3600 > time()) { return strftime("%T",$timestamp); } if ($timestamp + 5*24*3600 > time()) { return strftime("%a %H:%M",$timestamp); } return strftime("%d %b",$timestamp); } function output_score($id,$info) { global $evalset; global $has_analysis; global $setup; global $dir; reset($evalset); $state = return_state_for_link(); while (list($set,$dummy) = each($evalset)) { if (property_exists($info,"result") && array_key_exists($set,$info->result)) { $score = $info->result[$set]; } else { $score = ""; } print ""; // print ""; if ($has_analysis && array_key_exists($set,$has_analysis)) { print ""; } } } function tune_status($id) { global $dir; $max_iteration = 0; if (! file_exists($dir."/tuning/tmp.".$id)) { return ""; } $d = dir($dir."/tuning/tmp.".$id); while (false !== ($entry = $d->read())) { if (preg_match('/run(\d+).moses.ini/',$entry,$match) && $match[1] > $max_iteration) { $max_iteration = $match[1]; } } if ($max_iteration <= 1) { return $max_iteration; } return dev_score("$dir/tuning/tmp.$id/run$max_iteration.moses.ini"); } function dev_score($moses_ini) { if (! file_exists($moses_ini)) { return ""; } $moses_ini = file($moses_ini); $last_iter = -1; $info = ""; while (list($id,$line) = each($moses_ini)) { if (preg_match('/# BLEU ([\d\. \-\>]+)/',$line,$match)) { $info = $match[1]; } if (preg_match('/# We were before running iteration (\d+)/',$line,$match)) { $last_iter = $match[1]; } } if ($last_iter>=0) { $info = "$last_iter: $info"; }; return $info; } function output_state_for_form() { global $setup; print "\n"; } function return_state_for_link() { global $setup; return "setup=$setup"; } function show() { global $dir; $extra = ""; if (preg_match("/\.(\d+)/",$_GET["show"],$match)) { $run = $match[1]; if (file_exists($dir."/steps/new") || file_exists($dir."/steps/$run")) { $extra = "$run/"; } } $fullname = $dir."/steps/".$extra.$_GET["show"]; if (preg_match("/\//",$_GET["show"])) { $fullname = $dir."/".$_GET["show"]; } if (preg_match("/graph/",$fullname)) { header("Content-type: image/png"); } else { header("Content-type: text/plain"); } readfile($fullname); exit; }
"; $each_score = explode(" ; ",$score); for($i=0;$i0) { print "
"; } $opened_a_tag = 0; if ($set != "avg") { if (file_exists("$dir/evaluation/$set.cleaned.$id")) { print ""; $opened_a_tag = 1; } else if (file_exists("$dir/evaluation/$set.output.$id")) { print ""; $opened_a_tag = 1; } } if ($set == "avg" && count($each_score)>1) { print $match[2].": "; } print $match[1]; if ($opened_a_tag) { print ""; } } else { print "-"; } } print "
"; global $dir; $analysis = get_analysis_version($dir,$set,$id); if ($analysis["basic"]) { print " "; } print "