| |
|
|
| define setup = |
| echo 'experiments := ' >> $@_; \ |
| $(foreach p, ${PREPROC}, \ |
| echo '# NEW EXPERIMENT #####################################' >> $@_; \ |
| echo 'experiments += ${tag}' >> $@_; \ |
| echo 'ctr = $$(words $${experiments})' >> $@_; \ |
| echo '$: input-type = $(2)' >> $@_; \ |
| echo '${tag}: eval-sets = ${tag}.eval' >> $@_; \ |
| echo '${tag}: tune-src = input/${tag}.tune.tc' >> $@_; \ |
| echo '${tag}: tune-ref = ${tune-ref-ready}' >> $@_; \ |
| echo '${tag}: ${tag}.eval-src = input/${tag}.eval.$(if $(findstring 1,$(2),cfn,tc))' >> $@_; \ |
| echo '${tag}: ${tag}.eval-ref = ${eval-ref-ready}' >> $@_; \ |
| echo '${tag}: evaluation/$${ctr}/report' >> $@_; \ |
| $(foreach e, ${tag}.eval, \ |
| $(foreach m, ${eval-metrics}, \ |
| echo 'evaluation/$${ctr}/report: evaluation/$${ctr}/$e.$m' >> $@_;) \ |
| echo 'evaluation/$${ctr}/report: evaluation/$${ctr}/$e.analysis' >> $@_;) \ |
| echo >> $@_; \ |
| echo 'evaluation/$${ctr}/${tag}.eval.output: input = input/${tag}.eval.tc' >> $@_; \ |
| echo 'evaluation/$${ctr}/${tag}.eval.output: input/${tag}.eval.tc' >> $@_; \ |
| echo $(if $(findstring ini,${tuned_moses_ini}), \ |
| 'evaluation/$${ctr}/${tag}.eval.output: ${tuned_moses_ini}', \ |
| 'evaluation/$${ctr}/${tag}.eval.output: tuning/$${ctr}/moses.tuned.ini') >> $@_; \ |
| echo 'evaluation/$${ctr}/${tag}.eval.multi-bleu: $${${tag}.eval-ref}' >> $@_; \ |
| echo >> $@_;) |
| echo '.PHONY += $$(experiments)' >> $@_ |
| @mv $@_ $@ |
| @rm $@.lock/owner |
| @rmdir $@.lock |
|
|
|
|
| |
| |
| define setup_experiment = |
| echo 'experiments := ' >> $@_; \ |
| $(foreach p, ${PREPROC}, \ |
| echo '# NEW EXPERIMENT #####################################' >> $@_; \ |
| echo 'experiments += $(1)' >> $@_; \ |
| echo 'ctr = $$(words $${experiments})' >> $@_; \ |
| echo '$(1): input-type = $(2)' >> $@_; \ |
| echo '$(1): eval-sets = $(1).eval' >> $@_; \ |
| echo '$(1): tune-src = input/$(1).tune.tc' >> $@_; \ |
| echo '$(1): tune-ref = ${tune-ref-ready}' >> $@_; \ |
| echo '$(1): $(1).eval-src = input/$(1).eval.$(if $(findstring 1,$(2),cfn,tc))' >> $@_; \ |
| echo '$(1): $(1).eval-ref = ${eval-ref-ready}' >> $@_; \ |
| echo '$(1): evaluation/$${ctr}/report' >> $@_; \ |
| $(foreach e, $(1).eval, \ |
| $(foreach m, ${eval-metrics}, \ |
| echo 'evaluation/$${ctr}/report: evaluation/$${ctr}/$e.$m' >> $@_;) \ |
| echo 'evaluation/$${ctr}/report: evaluation/$${ctr}/$e.analysis' >> $@_;) \ |
| echo >> $@_; \ |
| echo 'evaluation/$${ctr}/$(1).eval.output: input = input/$(1).eval.tc' >> $@_; \ |
| echo 'evaluation/$${ctr}/$(1).eval.output: input/$(1).eval.tc' >> $@_; \ |
| echo $(if $(findstring ini,${tuned_moses_ini}), \ |
| 'evaluation/$${ctr}/$(1).eval.output: ${tuned_moses_ini}', \ |
| 'evaluation/$${ctr}/$(1).eval.output: tuning/$${ctr}/moses.tuned.ini') >> $@_; \ |
| echo 'evaluation/$${ctr}/$(1).eval.multi-bleu: $${$(1).eval-ref}' >> $@_; \ |
| echo >> $@_;) |
| echo '.PHONY += $$(experiments)' >> $@_ |
| @mv $@_ $@ |
| @rm $@.lock/owner |
| @rmdir $@.lock |
|
|
| endef |
|
|