From 67262af49c1b7471974f9a597f399db3f518ff11 Mon Sep 17 00:00:00 2001
From: Alexis Nasr <alexis.nasr@lif.univ-mrs.fr>
Date: Wed, 12 Apr 2017 12:00:43 +0200
Subject: [PATCH] integrated morpholgy in evaluation

---
 UD/create_archi.pl                        |  24 +++---
 UD/launch.sh                              |   4 +-
 UD/mise_en_forme.pl                       |  12 ++-
 UD/template/Makefile                      |  20 ++---
 UD/ud_template.tgz                        | Bin 1379 -> 1431 bytes
 fm/maca_trans_morpho.fm                   |  34 ++++----
 fm/maca_trans_parser.fm                   |   8 +-
 fm/maca_trans_tagger.fm                   |   8 +-
 fr/maca_trans_morpho/Makefile             |   4 +-
 fr/maca_trans_tagger/maca_trans_tagger.fm |   5 ++
 makefiles/eval.makefile                   |  16 +---
 makefiles/eval_ud.makefile                |  96 +++++-----------------
 makefiles/maca_trans_morpho.makefile      |   1 +
 13 files changed, 84 insertions(+), 148 deletions(-)

diff --git a/UD/create_archi.pl b/UD/create_archi.pl
index 551db7f..cd9a51a 100755
--- a/UD/create_archi.pl
+++ b/UD/create_archi.pl
@@ -66,26 +66,22 @@
 "UD_Vietnamese");
 
 
-foreach $L (@LANG)
-{
-    $command = "mkdir -f ../$L";
-    print "$command\n";
-    system($command);
+chdir("template");
 
-    $command = "cp ud_template.tgz ../$L";
-    print "$command\n";
-    system($command);
+$command = "tar cvfz ../ud_template.tgz *";
+print "$command\n";
+system($command);
 
-    $command = "cd ../$L";
-    print "$command\n";
-    system($command);
+chdir("..");
 
-    $command = "tar xvfz ud_template.tgz -C../$L";
+foreach $L (@LANG)
+{
+    $command = "mkdir ../$L";
     print "$command\n";
     system($command);
 
-    $command = "cd ../UD";
+    $command = "tar xfz ud_template.tgz -C../$L";
     print "$command\n";
     system($command);
-    
+
 }
diff --git a/UD/launch.sh b/UD/launch.sh
index 25fee25..a57b9e9 100755
--- a/UD/launch.sh
+++ b/UD/launch.sh
@@ -151,8 +151,8 @@ make _LANG=UD_Romanian _CODE=ro -C ../UD_Romanian all
 make -C ../UD_Russian clean
 make _LANG=UD_Russian _CODE=ru -C ../UD_Russian all
 
-make -C ../UD_Russian-SynTagRus clean
-make _LANG=UD_Russian-SynTagRus _CODE=ru_syntagrus -C ../UD_Russian-SynTagRus all
+#make -C ../UD_Russian-SynTagRus clean
+#make _LANG=UD_Russian-SynTagRus _CODE=ru_syntagrus -C ../UD_Russian-SynTagRus all
 
 make -C ../UD_Slovak clean
 make _LANG=UD_Slovak _CODE=sk -C ../UD_Slovak all
diff --git a/UD/mise_en_forme.pl b/UD/mise_en_forme.pl
index befc4cb..1d596de 100755
--- a/UD/mise_en_forme.pl
+++ b/UD/mise_en_forme.pl
@@ -16,11 +16,12 @@ foreach $fichier (@tab_fichiers)
     open($F, "<", $fichier)
     or die "Can't open < $fichier: $!";
     while(<$F>){
-	if (/Wplgfs/){
+	if (/Wpmlgfs/){
 	    chop;
 #	    print;
-	    ($file, $pos, $lemma, $uas, $las, $srec, $sacc, $size) = split /\t/;
+	    ($file, $pos, $morpho, $lemma, $uas, $las, $srec, $sacc, $size) = split /\t/;
 	    $pos_acc{$langue} = $pos;
+	    $morpho_acc{$langue} = $morpho;
 	    $lemma_acc{$langue} = $lemma;
 	    $uas{$langue} = $uas;
 	    $las{$langue} = $las;
@@ -34,6 +35,7 @@ foreach $fichier (@tab_fichiers)
 
 foreach $langue (keys %h_langues){
 	    $pos = $pos_acc{$langue};
+	    $morpho = $morpho_acc{$langue};
 	    $lemma = $lemma_acc{$langue};
 	    $uas = $uas{$langue};
 	    $las = $las{$langue};
@@ -42,20 +44,22 @@ foreach $langue (keys %h_langues){
 	    $size = $size{$langue};
 	    $total_size += $size;
 	    $total_pos +=  $pos * $size;
+	    $total_morpho +=  $morpho * $size;
 	    $total_lemma +=  $lemma * $size;
 	    $total_uas +=  $uas * $size;
 	    $total_las +=  $las * $size;
 	    $total_srec +=  $srec * $size;
 	    $total_sacc +=  $sacc * $size;
-    print "$langue\t$pos\t$lemma\t$uas\t$las\t$srec\t$sacc\t$size\n";
+    print "$langue\t$pos\t$morpho\t$lemma\t$uas\t$las\t$srec\t$sacc\t$size\n";
 }
 
 $pos = $total_pos / $total_size;
+$morpho = $total_morpho / $total_size;
 $lemma = $total_lemma / $total_size;
 $uas = $total_uas / $total_size;
 $las = $total_las / $total_size;
 $srec = $total_srec / $total_size;
 $sacc = $total_sacc / $total_size;
 
-printf("\navg\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n", $pos, $lemma, $uas, $las, $srec, $sacc);
+printf("\navg\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\n", $pos, $morpho, $lemma, $uas, $las, $srec, $sacc);
 
diff --git a/UD/template/Makefile b/UD/template/Makefile
index d54d12a..331ac3b 100644
--- a/UD/template/Makefile
+++ b/UD/template/Makefile
@@ -1,14 +1,5 @@
 UD_DIR=../../../data/ud-treebanks-conll2017
 
-## UD_French
-#LANG=UD_French
-#CODE=fr-ud
-
-##
-#LANG=UD_English
-#CODE=en-ud
-
-
 TRAIN=$(UD_DIR)/$(_LANG)/$(_CODE)-ud-train.conllu
 DEV=$(UD_DIR)/$(_LANG)/$(_CODE)-ud-dev.conllu
 TEST=$(UD_DIR)/$(_LANG)/$(_CODE)-ud-dev.conllu
@@ -20,16 +11,18 @@ compile:
 	$(MAKE) TRAIN=$(TRAIN) -C data/morpho-lexicon compile
 	$(MAKE) TRAIN=$(TRAIN) TEST=$(TEST) DEV=$(DEV) -C data/treebank compile
 	$(MAKE) -C maca_lexer compile
-	$(MAKE) -C maca_trans_parser compile
 	$(MAKE) -C maca_trans_tagger compile
+	$(MAKE) -C maca_trans_morpho compile
+	$(MAKE) -C maca_trans_parser compile
 #	$(MAKE) -C maca_crf_tagger compile
 
 install: 
 	-mkdir -p bin
-	$(MAKE) -C maca_trans_parser install
+	$(MAKE) -C maca_lexer install
 	$(MAKE) -C maca_trans_tagger install
+	$(MAKE) -C maca_trans_morpho install
 	$(MAKE) -C maca_lemmatizer install
-	$(MAKE) -C maca_lexer install
+	$(MAKE) -C maca_trans_parser install
 #	$(MAKE) -C maca_crf_tagger install
 #	@tar -cvzf ./maca_datas.tgz bin
 
@@ -40,7 +33,8 @@ clean:
 	$(MAKE) -C data/morpho-lexicon clean
 	$(MAKE) -C data/treebank clean
 	$(MAKE) -C maca_lexer clean
-	$(MAKE) -C maca_trans_parser clean
 	$(MAKE) -C maca_trans_tagger clean
+	$(MAKE) -C maca_trans_morpho clean
+	$(MAKE) -C maca_trans_parser clean
 #	$(MAKE) -C maca_crf_tagger clean
 	$(MAKE) -C eval clean
diff --git a/UD/ud_template.tgz b/UD/ud_template.tgz
index f4d2ffaea32cb3e490c6e2457c01a76f60ce6928..ac95a1dad74c60586d6d14ad42dda8ceae018e79 100644
GIT binary patch
literal 1431
zcmb2|=3prK`8I-q`EAtgyhk1aXJ7x&j#A=(c<{luP-)Ig+k{0Kh6)8~^1AGAc)EBy
zywj$xzyEHVbhExhS&sVV%kF_5FJ8@F9kYDZF5l-@zl!av4pwAg37z^;{fbD%pH9WD
zrW$5d$H^+Lf+;HOu8yL44FOLVX?(jqcQfOIV;}F<i`}l-x#(NGh`;Ub?-nn&M7{lx
z{_f43Z*}M1o2~o(MkjvzpPa2<Y6UZU9<S;AXYuCFz1F$2-rlyZUcfJZLjG>x`HW9X
zmT!*O=CR)Py74~IljrZ6YvoD?zve3JE3Wx3cP8whRHQ+K&P1(R`5pOv`^(F^uTFZr
zXj}Dx+MRoizwYl*TQFN;zVCr@#+$_(ZmrqBzG6+PiH)qu_UJ7ke=f2-)Vuh;!s6GT
zOU#O$2WDED%{qDaiTUE=JMP@Fe*Sc6gjP)T#4ERM=JX%ST5=>!THjJp+&1J7!_Nn$
z`))AQ@y-)Jz2~pXC)VGZ6S}@l)_%I%u|ecdoK4V{bgj~|^BXVBzoGhJ^Y(K7Ew@~F
zUYFdywRg|ty~P_l?;bZ!j;_5V-@~^xx}n$XAHQ$sZ^gx5VxR9wp2wNAaZ5-}<jQZ!
zyHDlWY+Y4sbY<DOlL6gIM$g}Bn)1|%T)Zy-mbpG%p*SzxmR+sVH~7;J`Q{JykLonK
zv>w%Sgg#}{2-W9#Z2r9dQIOWW$4-A&Yh6+36jq#)a^g!oyHUsTlHwh&{!V9IQXiS}
zzTWo4rTyE#G2fnf{`9QH3je+L{1>{kf6+>%)Bj&NO#63sQZ|$8uj6z4zpU?UQgB>U
z-}&_a)&&<Y>;8Qt<RHED+27vXb84SUnJ6w}Ho1LIZR-EUe+r+yf39cIBj<8#t8c{I
zz4NzcNT24&I_&8c8K_Vp`d@p-f7K}r2LIMGFaM=~`*XX-r~g4u{+kB27+op&vwVft
z=l`V(lK$WCc(ufH;bN^k<yG^ZdCyT6+;u|uSHhn{!ve{7lb`%Q@_+R#w@>x0KmSKL
ze2MS9ZNK2cf9|L!|3e+87W`9RDF5vLYliC<GSNr&{e8dDvf_n*?&j`&RWcHS<}8~l
ze;>E{5Wgpv`)}`&PfPinS{O7|%P{rM-F<gqTEC3IvZ#&kkN0vOm#?nP*{YMM!QA<I
zi`R+=zkcZ#{a5<@zf@u6f2|b@4*Yj^^m`RAxbV=Qdf5Ys-w!g*4@<FFck#h#Mk&pG
z<pH-AJYDy`;7|O$UoW0=zT@Uk%N9_x^bLwXKE-XF(3IajhbRB|RCb`_Ykl93Qy!&}
z4?@4%3ts>4!n%~D=YRHriT|`uGj)Hm*Eq%bZ~Do<{Kx)ZU2HEmqy3HUdjku5!S1u|
zq4(=Nm*o8kbzq+UtKKsxB~anJy~5}JUlrE=|CG5v<A1YP(El!_(`Wu)XWV>y`{BuR
zN_zWbo;<LU5wnV3p}csG{+GhLc5^kY6hGOlThHIF9$$5?$Wz5Q+C%=%t=dg)Cm(*>
zJ@vU@=SIVqQpwpyQn&i28D3m_{9?hapO06hvlrDmZ=a`j?24JYZL)(#!HU^iI$pBA
zy)ygar=}47J*PIu9{zpaEYkMX|J*BA_xnB8d+B*E%=o#a42!>-hiCg^x7ZBXZyCBL
zyK<A(zr5Le_0CsD^BSZ5Qo_|&wl6<+!Kf`Z`Bvk_*HHpIbNG%YHTm~l$^FOwq(0E~
z{;8h-uU(@4%OCi^YTAYUO-u~O{+B*T{`o(Brk!=&iD&gsXZ&Bf`iFgu@jv1J?Xmg~
z|7T3%{`tQm=G6b4Pvm%OId{ejxcIE?TsZp)X9<J-UJbbg+6m9M&gWSf@U{78Jm>5B
zrep8^UuoL%@AdO~&nrT|+`sTk{=eRM{>=ZMR~u)2{{P|Z3XA{!YCk#uonQ9ui^y|r
z#*i0H35ueeU)+T+%k?i)e|^FxRH8WMv4DBX+KFyl;w<7P_1@f=)d&NM(*K$6*UyM%
I2w-3U00Tev8~^|S

literal 1379
zcmb2|=3t1bc@x3F{5C2#f0c*Gx7Sa@C*0uw%6!WDrkdL6(41MKrd@aYTeQARVv;&~
zZ`uC3^tN!v#&=9_?^^rM%9v@KKksm5+Br-AZRRgbc%&RAvHUpc!8G|_&xJ&bs700Y
z5+gS{8}lf0$p&RqB?>HGoG;_CDcR!L?Akqg;n)6kCuRR|yUZ34_<zv}j~<Or0sm#r
zC;Z*cxTL<k{Ko$qfd%ceWB>kp;QZd+pZV`+ox1<G532r+u0DRX_wBZImJ6CLR>!{l
z`@G>Ft7nR}O6+x}u7<DkFYnLVGh^D@8Kq|fm(`#6>G5C4`?5^)m-81R{^u^Ro@N>;
zZ?Dt-_n*QKXSKpxLH`b#%;$Ok)Pr$xfsB|&?gqKnlbc`W)(OPsYTBP^Gv9uZVQ*vU
zf&lZw-+rw)-Kmh1|9H+eHOc;WZO2N_M9i(b^=+})qs{eG@3VW{oVZNdileUMKkJGA
zGCLR&{^c`2|F!=1XLgOx|6^YKSDltx;nwur-ce-Z|9ocN-~ZPwTeF4RDf+Xin51_9
zQ6X0qA>B_sb_Vq!Z9lUt;-CEM|Fd7i^Tj{?g#Y)sCj6US_}kFyuf1;TzxXAteE0ra
zd}#k$FRidExUy{jwD(gJAKm^Rx8m~elV0KO4=x@K;oN!fZVtQs_jR9hWPd-f7TB#P
z%B{%M5us|A@#EP=_OoJ)bL-cM{;In%qwr7X_4crCeV)<-re<yLW~|Hp@ojfyMhlmn
z+<(@0^N;@9&zth~K8xs-AN6g|HvbZja69mCKktF$@;43Vm5o>~z76`y(BqO<_D*is
zt6ywu%WJo>>l`e66%%jqMD}B^l6ke!jwfFNYGi|MO^*GY|7J#8_;WskjsMOI{`$YY
zZH4?p=a2Sc$Non!#&8<^-`+6gpY(3lX?OoiOgsO<zW<fI!GH7qlS!+NZQq`K^1*BI
zjYnz<zPz2z611S+V9(-x=6uK9G8U}*pYHm>WX1o44gd4mEB{{iXHNZY?>5EgmpDt~
z@qhbyS1j(7ODXzfXf@?TW1)pch{Ou##Ukv#Ixecr(mW#&DOP1RF@5u9w$mRbUAq`H
zJKcKTpSh`uo!zyat(#;txpOV&zvQ2_Y0B32pE;%?L63PYlNO!0Rkd<WNvU1fvJR&7
zO;W6ey5$q9jekv>{hIap`U|1%)l7fopDX|Tt@U!!{3oT`4d<PR_>j}2{kSdGNctrI
z+jrZRISXyx`YSf_)#uKAL20v$q%~J73h(Q75jo?Vt0Da@Hq+ZR?4rJb%F57_4<FR9
zTEzW6I^oj9d>i|EtN+{wf6kv)@Nd27ldt#f{ui&Aa?yT4J=^Dc=^v;5)X%(o+Mjj$
z&;R`<|BdAz{eN)wNBAH4lC_8aKUDeO_+LM`ypGG`(RF_Ai2<#Lo!+S!%+wF9HH@FT
z_Hj~3qNBjwA9o5edoOw}JoHfMHf#IZ)r%iq;%^c9f8MA@=D%pB;I;o7OxFF+XMbJz
z^pX9H)k?vv4I2tnLQO8oI+{0heP57rX<fznzS<rZAAU}Oz@G^l8ty%K7S=9%L0sd;
z>8nC)rA@7$RxUcY;lqYi7LEs8Vy7(WnbfGFV`3?}k9YIJ#M`o-HM@6)KHWb>PBNFN
z_M1nROI$%&;j_<C+Y45HSnS?*b;7A+qnIV#e;gc?IuFF<`vtqr40+%)IVaaIr+C9A
zr@}?Te@v$Q-n5lpWvhB()#eJ#z*Ac*G{cup+SIBvb9+ef!#tsd_6xlin5};wcEmS;
z|M<TDfBMQ?RniKl`$&ohxo&e)YVQBf9DJzmz=VWp-`?e{6+g?ST3j5|Y5L^W<!uE!
qKi(1QN>LJJmwf7^eS(*HyQJN}od0c&=-{LEV|j;9mm3)Z7#IND?7`Cj

diff --git a/fm/maca_trans_morpho.fm b/fm/maca_trans_morpho.fm
index 9fd77ae..e35691d 100644
--- a/fm/maca_trans_morpho.fm
+++ b/fm/maca_trans_morpho.fm
@@ -1,19 +1,21 @@
-b0U1
-b0f
+#b0U1
+b0p b0f
 b0len
-bm1f
-bm2f
+#bm1f
+#bm2f
 b0p
 bm1p
-bm2p
-bm3p
-bm2p bm1p
-bm2p bm3p
-b0s1
-b0s2
-b0s3
-b0s4
-b0s5
-b0s1 b0s2
-b0s1 b0s2 b0s3
-b0s1 b0s2 b0s3 b0s4
+bm1m
+bm1p bm1m
+#bm2p
+#bm3p
+#bm2p bm1p
+#bm2p bm3p
+b0p b0s1
+#b0s2
+#b0s3
+#b0s4
+#b0s5
+b0p b0s1 b0s2
+b0p b0s1 b0s2 b0s3
+b0p b0s1 b0s2 b0s3 b0s4
diff --git a/fm/maca_trans_parser.fm b/fm/maca_trans_parser.fm
index 6e18e5e..c57119c 100644
--- a/fm/maca_trans_parser.fm
+++ b/fm/maca_trans_parser.fm
@@ -1,7 +1,7 @@
-#b0m
-#s0m
-#b0m s0m
-#s0l s0m b0l b0m
+b0m
+s0m
+b0m s0m
+s0l s0m b0l b0m
 
 
 b0g
diff --git a/fm/maca_trans_tagger.fm b/fm/maca_trans_tagger.fm
index 50af67e..f96b164 100644
--- a/fm/maca_trans_tagger.fm
+++ b/fm/maca_trans_tagger.fm
@@ -17,10 +17,10 @@ bm2p bm3p
 bm1p b0sgn
 
 b0s1
-b0s2
-b0s3
-b0s4
-b0s5
+#b0s2
+#b0s3
+#b0s4
+#b0s5
 b0s1 b0s2
 b0s1 b0s2 b0s3
 b0s1 b0s2 b0s3 b0s4
diff --git a/fr/maca_trans_morpho/Makefile b/fr/maca_trans_morpho/Makefile
index 71a25f6..43b46b7 100644
--- a/fr/maca_trans_morpho/Makefile
+++ b/fr/maca_trans_morpho/Makefile
@@ -6,8 +6,8 @@ CFF_TRAIN=train.cff
 FANN_TRAIN=train.fann
 CFF_FANN_TRAIN=train.fann.cff
 CFF_CUTOFF_TRAIN=train.cutoff.cff
-PERCEPTRON_ITERATIONS=9
-CFF_CUTOFF=1
+PERCEPTRON_ITERATIONS=4
+CFF_CUTOFF=2
 FEATURES_MODEL_FILENAME=../../fm/maca_trans_morpho.fm
 FEATURES_MODEL_FANN_FILENAME=../../fm/maca_trans_tagger_fann.fm
 VOCABS_FILENAME=maca_trans_morpho.vocab 
diff --git a/fr/maca_trans_tagger/maca_trans_tagger.fm b/fr/maca_trans_tagger/maca_trans_tagger.fm
index ddeac49..8c8b9fc 100644
--- a/fr/maca_trans_tagger/maca_trans_tagger.fm
+++ b/fr/maca_trans_tagger/maca_trans_tagger.fm
@@ -10,3 +10,8 @@ bm3p
 bm2p bm1p
 bm2p bm3p
 bm1p b0sgn
+
+b0s1
+b0s1 b0s2
+b0s1 b0s2 b0s3
+b0s1 b0s2 b0s3 b0s4
diff --git a/makefiles/eval.makefile b/makefiles/eval.makefile
index dbb2f28..4cc42d6 100644
--- a/makefiles/eval.makefile
+++ b/makefiles/eval.makefile
@@ -79,18 +79,4 @@ eval: eval_header test_WPLGFS test_WPLgfs test_WPlgfs test_Wplgfs
 
 clean:
 #	-rm $(RESULT_FILE)
-	-rm test_W
-	-rm test_P
-	-rm test_L
-	-rm test_G
-	-rm test_F
-	-rm test_S
-	-rm test_WP	
-	-rm test_WPL
-	-rm test_WPLGFS
-	-rm test_Wp
-	-rm test_Wpl
-	-rm test_WPl
-	-rm test_WPLgfs
-	-rm test_WPlgfs
-	-rm test_Wplgfs 
+	-rm test_*
diff --git a/makefiles/eval_ud.makefile b/makefiles/eval_ud.makefile
index 14f10c8..804ea0e 100644
--- a/makefiles/eval_ud.makefile
+++ b/makefiles/eval_ud.makefile
@@ -19,8 +19,7 @@ WPMLGFS_MCD_FILE=../../mcd/wpmlgfs.mcd
 WPLGFS_MCD_FILE=../../mcd/wplgfs.mcd
 WPLSGF_MCD_FILE=../../mcd/wplsgf.mcd
 
-
-all: test_W test_WP test_WPL test_WPLGFS test_Wp test_Wpl test_WPl test_WPLSgf test_WPLgfs test_WPlgfs test_Wplgfs test_WPMLgfs test_WPMLGFS eval #eval_ud
+all: eval
 
 test_W: $(TEST)
 	cut -f $(WORD_COLUMN) $< > $@
@@ -46,89 +45,56 @@ test_S:$(TEST)
 test_WP:test_W test_P
 	paste test_W test_P > $@
 
-test_WPL:test_W test_P test_L
-	paste test_W test_P test_L > $@
-
-test_WPLS:test_W test_P test_L test_S
-	paste test_W test_P test_L test_S > $@
-
 test_WPM:test_W test_P test_M
 	paste test_W test_P test_M > $@
 
 test_WPML:test_W test_P test_M test_L
 	paste test_W test_P test_M test_L > $@
 
-test_WPMLS:test_W test_P test_M test_L test_S
-	paste test_W test_P test_M test_L test_S > $@
-
-test_WPLGFS:test_W test_P test_L test_G test_F test_S
-	paste test_W test_P test_L test_G test_F test_S > $@
-
 test_WPMLGFS:test_W test_P test_M test_L test_G test_F test_S
 	paste test_W test_P test_M test_L test_G test_F test_S > $@
 
 
-
 test_Wp: test_W
-	$(TAGGER) -L $(LANGUAGE) -C $(WPLGFS_MCD_FILE) -i $< -S > $@
+	$(TAGGER) -L $(LANGUAGE) -C $(WPMLGFS_MCD_FILE) -i $< -S > $@
 #	cat $< | $(CRF_TAGGER) -L $(LANGUAGE) > $@
 
-test_Wpl: test_Wp
-	$(LEMMATIZER) -C $(WPLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
+test_WPm: test_WP
+	$(MORPHO_ANALYZER) -C $(WPMLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
 
 test_Wpm: test_Wp
 	$(MORPHO_ANALYZER) -C $(WPMLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
 
-test_Wpml: test_Wpm
+test_WPMl: test_WPM
+	$(LEMMATIZER) -C $(WPMLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
+
+test_WPml: test_WPm
 	$(LEMMATIZER) -C $(WPMLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
 
-test_WPl: test_WP
-	$(LEMMATIZER) -C $(WPLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
+test_Wpml: test_Wpm
+	$(LEMMATIZER) -C $(WPMLGFS_MCD_FILE) -L $(LANGUAGE) -i $< > $@
 
 test_WPMLgfs: test_WPML
 	$(PARSER) -L $(LANGUAGE) -C $(WPMLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
 
-test_Wpmlgfs: test_Wpml
+test_WPMlgfs: test_WPMl
 	$(PARSER) -L $(LANGUAGE) -C $(WPMLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
 
-test_WPLSgf: test_WPLS
-	$(PARSER) -L $(LANGUAGE) -C $(WPLSGF_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
-
-test_WPlgfs: test_WPl
-	$(PARSER) -L $(LANGUAGE) -C $(WPLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
-
-test_WPLgfs: test_WPL
-	$(PARSER) -L $(LANGUAGE) -C $(WPLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
-
-test_Wplgfs: test_Wpl
-	$(PARSER) -L $(LANGUAGE) -C $(WPLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
-
-eval_Wpmlgfs: test_WPMLGFS test_Wpmlgfs
-	$(EVAL_WPLGFS) -g test_WPMLGFS -s test_WPMLgfs
-
-eval_WPMLgfs: test_WPMLGFS test_WPMLgfs
-	$(EVAL_WPLGFS) -g test_WPMLGFS -s test_WPMLgfs
-
-eval_WPLgfs: test_WPLGFS test_WPLgfs
-	$(EVAL_WPLGFS) -g test_WPLGFS -s test_WPLgfs
-
-eval_WPlgfs: test_WPLGFS test_WPlgfs
-	$(EVAL_WPLGFS) -g test_WPLGFS -s test_WPlgfs
+test_WPmlgfs: test_WPml
+	$(PARSER) -L $(LANGUAGE) -C $(WPMLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
 
-eval_Wplgfs: test_WPLGFS test_Wplgfs
-	$(EVAL_WPLGFS) -g test_WPLGFS -s test_Wplgfs
+test_Wpmlgfs: test_Wpml
+	$(PARSER) -L $(LANGUAGE) -C $(WPMLGFS_MCD_FILE) -i $< $(PARSER_OPTIONS) > $@
 
 eval_header:
 	echo "file	 	pos	morpho	lemma	uas	las	srec	sacc" > $(RESULT_FILE)
 
-eval: eval_header test_WPLGFS test_WPLgfs test_WPlgfs test_Wplgfs test_Wpmlgfs
-	$(EVAL_MCF) -G WPLGFS -S WPLGFS -g test_WPLGFS -s test_WPLGFS >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPMLGFS -S WPMLGFS -g test_WPMLGFS -s test_WPMLgfs >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPLGFS -S WPLSGF -g test_WPLGFS -s test_WPLSgf >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPLGFS -S WPLGFS -g test_WPLGFS -s test_WPLgfs >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPLGFS -S WPLGFS -g test_WPLGFS -s test_WPlgfs >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPLGFS -S WPLGFS -g test_WPLGFS -s test_Wplgfs >> $(RESULT_FILE)
-	$(EVAL_MCF) -G WPMLGFS -S WPMLGFS -g test_WPMLGFS -s test_Wpmlgfs >> $(RESULT_FILE)
+eval: eval_header test_WPMLGFS test_WPMLgfs test_WPMlgfs test_WPmlgfs test_Wpmlgfs
+	$(EVAL_MCF) -G WPMLGFS -g test_WPMLGFS -S WPMLGFS -s test_WPMLGFS >> $(RESULT_FILE)
+	$(EVAL_MCF) -G WPMLGFS -g test_WPMLGFS -S WPMLGFS -s test_WPMLgfs >> $(RESULT_FILE)
+	$(EVAL_MCF) -G WPMLGFS -g test_WPMLGFS -S WPMLGFS -s test_WPMlgfs >> $(RESULT_FILE)
+	$(EVAL_MCF) -G WPMLGFS -g test_WPMLGFS -S WPMLGFS -s test_WPmlgfs >> $(RESULT_FILE)
+	$(EVAL_MCF) -G WPMLGFS -g test_WPMLGFS -S WPMLGFS -s test_Wpmlgfs >> $(RESULT_FILE)
 
 
 test_WPLGFS.conll: test_WPLGFS
@@ -144,22 +110,4 @@ eval_ud: test_WPLGFS.conll test_WPLSgf.conll
 	python ../../tools/conll17_ud_eval.py test_WPLGFS.conll test_WPLSgf.conll
 clean:
 #	-rm $(RESULT_FILE)
-	-rm test_W
-	-rm test_P
-	-rm test_M
-	-rm test_L
-	-rm test_G
-	-rm test_F
-	-rm test_S
-	-rm test_WP	
-	-rm test_WPL
-	-rm test_WPLS
-	-rm test_WPLGFS
-	-rm test_WPMLGFS
-	-rm test_Wp
-	-rm test_Wpl
-	-rm test_WPl
-	-rm test_WPMLgfs
-	-rm test_WPLgfs
-	-rm test_WPlgfs
-	-rm test_Wplgfs 
+	-rm test_*
diff --git a/makefiles/maca_trans_morpho.makefile b/makefiles/maca_trans_morpho.makefile
index 5981e83..a9758a0 100644
--- a/makefiles/maca_trans_morpho.makefile
+++ b/makefiles/maca_trans_morpho.makefile
@@ -27,6 +27,7 @@ $(MODEL_FILENAME): $(CFF_CUTOFF_TRAIN)
 
 install:
 	- cp $(FEATURES_MODEL_FILENAME) ../bin
+	- cp $(FEATURES_MODEL_FANN_FILENAME) ../bin
 	- cp $(VOCABS_FILENAME) ../bin
 	- cp $(MODEL_FILENAME) ../bin
 
-- 
GitLab