###########################################################################
#
#                             author: ĸ
#             belong:üʳصر عֺ
#         e-mail: keigo-k{}is.naist.jp   << {}@ѴƤ
#				Խ:2012/03/14
#
#                       Copyright 2010, 2011, 2012 Keigo Kubo
#
###########################################################################

ܼ
1. mpaligner Ȥ
2. mpaligner ξܺ
3. mpaligner Υ󥹥ȡˡ
4. mpaligner λȤ
5. Х

1. mpaligner Ȥ
 ưɤͿȯͿˤΤʸ󥢥饤ȥġǤ
¿¿Υ饤Ȥ󶡤Ϳ줿2ĤʸκǾѥ򸫤Ĥޤ
饤ȷ̤̤θФɤͿʤɤ˻Ѥޤ
ʬŪ˥饤ȤͿʬŪΥơ䤢ɽɤߤ
бդ¾бդͭˤػߤǤޤ
ޤüɽɤߤбդ[AAA,ȥץ륨]ʤɡˤ򸡽Ф뵡ǽޤ
 饤󥹤 GNU GPL Ǥ

2. mpaligner ξܺ
mpaligner ʬʸζطʬʸΥ饤ȤȤޤ
㤨С

 	    
 	   
 	   

ȤɽɤߤХǡȤޤܸ줬ʬʤͤˤȤäƤϡפ
ɤߤϡ֥ȡפʤΤ֥ȥפʤΤ֥ȥפʤΤ狼ޤ󡥤
ȡֵԡפ٤Ƥߤȡֵפɤߤˡ֥祦פиƤ뤳Ȥ
狼ޤΤȤֵפɤߤϡ֥祦פȿꤹȡפϤ餯
֥ȥפǤ뤳ȤʬޤǤϡΡֵפȡ֥祦פδط򶦵ط
ޤmpaligner Ͼ嵭Τ褦ʶطѤʬʸκǾѥ
Ĥ饤ȤԤޤǽŪ mpaligner ˤäưʲΤ褦ʥǡޤ

||	:|::|
||	::||
|	:::|

|פϥ饤ȤζڤɽʸǤ
ޤ:פʸƱΤη򼨤ʸǤ
夬ʬ䤵ƤʤΤϡγؽǡˤϡ	פ
ֺ	פΥѥ¾Хǡˤ¸ߤǾΥѥȤ
פФ줿ǤΥǡɤͿǥۤݤ
ؽǡȤƻѤ뤳ȤǤޤ

mpaligner ¾ˡʸƱΤΥ饤ȤȤץȤ m2m-aligner 
ޤm2m-aligner ξܺ٤ʾϰʲˤޤ

http://code.google.com/p/m2m-aligner/

m2m-aligner 112112ǥ饤ȤԤȤꤷƤꡤ
22ʾΥ饤ȤԤˤϡ饤Ȥˤɬפޤ
饤Ȥˤ뤳Ȥǡñ̤ǥ饤ȤȤʤʤꡤ
ܸʤɤ22ʾΥ饤ȤɬפȤǤɤͿǽ˰ƶ
Ϳޤǡmpaligner ϥ饤Ȥ󤬤ʤǤ⾮ñ̤Ǥ
饤Ȥ¸뤿˥르ꥺפƤޤ
ˡĹʸǤ׻Ǥ褦logˤ׻Ѥ
®경ԤäƤޤ

3. mpaligner Υ󥹥ȡˡ
ʲ̤Ǥ

$ tar xvfz mpaligner_<version>.tar.gz
$ cd mpaligner_<version>
$ make
$ cp mpaligner <ѥ̤äǥ쥯ȥ>

4. mpaligner λȤ

㡧
$ cat source/test.utf8.txt | ./script/separate_for_char.pl utf8 \
  source/joint_chars.utf8.txt > source/test.utf8.char_unit
$ mpaligner -i source/test.utf8.char_unit

Υޥɤˤꡤtest.utf8.char_unit 򥤥ץåȥǡȤơ
饤ȤԤޤ饤Ȥη̤ test.utf8.char_unit.align ˽Ϥޤ
ʲ˥ץ򼨤ޤ

./mpaligner -i <string> [-o <string>] [-p <string>] [-ai <string>]
          [-ao <string>] [-output_used_mapping <string>] [-s]
          [-hs <int>] [-del] [-ins] [-rx <int>] [-ry <int>]
          [-uc <char>] [-sc <char>] [-jc <char>] [-dic <char>]
          [-training_type 0|1|2|3|4|5] [-kind_of_cityblock 0|1|2]
          [-t <int or float>] [-tfb <int or float>] [-tv <int or float>]
          [-substringCheck] [-noConsecutiveDelAndIns] [-noEqMap]
          [-alignment_type 0|1|2] [-doubtful_context_size <int>]
          [-doubtful_condition 0|1] [-t_nbest <int>] [-f_nbest <int>]
          [-s_nbest <int>] [-output_nbest <int>] [-nbest <int>] [-h]

ץ:
  -i <string>
   <string>˥饤Ȥꤿ2Ĥʸ󤬽񤫤줿ե̾
ꤹ륪ץǤΥե̾˽񤫤줿ХǡȤ˳ؽԤ
ޤХǡΥեޥåȤ2Ĥʸ򥿥(\t)ڤˤʸ
ʸ֤ޤʬʸ֤˶줿եޥåȤǤʤФʤޤ
ʬʸϳؽˤäʸʬ䤵뤳ȤʤʬʸȤȤ
饤ȤͿ뤳ȤǤޤʲ˥եޥåȤ򼨤ޤ

 	   
 	  
i P h o n e	  ե 
i P a d	  ѥ 

ޤʲΤ褦ʬŪ˥饤ȤͿ뤳ȤǽǤ

|	 | 
 	: 
i P h o n|e	  ե |_
i P a d	: ѥ 

ǡ_פϺʸǤޤڤʸ|פɽɤߤˤ
ƱǤʤФޤ

  -o <string>
<string>Хǡ򥢥饤Ȥ̤Ϥե̾ꤷޤ
ǥեȤϡ-iץץǻꤷե̾.alignγĥҤդ
Τˤʤޤ

  -p <string>
    <string>бդʬäƤʬʸΥڥ񤫤줿ե̾
ꤷޤμͿˤΥץȤޤ
եޥåȤϰʲ̤ǡǤϥ(\t)ڤˤʤäƤޤ
1ꤹȤбطФ褦ˤʤޤ0ꤹȤ
бطϷ褷Фޤ

s:y		1
		1
:	::	0
e	_	0

  -ai <string>
<string>˳ؽ饤ȤΥѥ᡼񤫤줿ե̾(ǥեȤ
    .modelγĥҤĤե)ꤷޤѥ᡼񤫤줿ե
    -aoץդmpalignerưȽϤޤĤޤꡤ
Υץϰٳؽѥ᡼Ǥ⤦٥饤Ȥ
ǡ˺ޤǤˤʤѥĥǡʤФ
ʤɤ˻Ȥޤ

  -ao <string>
    <string>˳ؽѥ᡼Ϥե̾ꤷޤ

  -output_used_mapping <string>
    ٤Ǥ⥢饤Ȥ˻Ȥ줿бդ<string>˽񤭹ߤޤ

  -s
饤Ȥ̤ϤեˤΥ饤ȤΥܺپ
Ϥޤ

  -h <int>
饤ȤΥѥ᡼Ǽϥå奵ꤷޤ
    ǥեȤ99,940,009Ǥ

  -del
    ХǡX¦ʺ¦ˤʸбդȤޤ
㤨аʲΤ褦ʥ饤Ȥǽˤޤ

||||||	|||_|||

_פϺʸǤX¦Ρ֡פʸбƤ뤳Ȥʬޤ
ĤޤꡤǤϡ֡פɤߤ¸ߤʤȤбդˤʤäƤޤ
ǥեȤǤX¦ʸб뤳ȤƤޤ

  -ins
    ʸĤޤ(ʸȤϵդǡY¦ʱ¦ˤˡ_פνи
ǥեȤǤϵĤޤ)

  -dp <float>
ʸνиڥʥƥǤ⤤ۤɺʸޤ 
Υѥ᡼ͤϷиŪ˷ꤷʤФʤޤ
0.11.0ϰϤꤷޤ
(default 0.5)

  -ip <float>
    ʸνиڥʥƥǤ(default 1.0)

  -rx <int>
    X¦ʺ¦ˤʬʸκʸǤ.
    (default 0: 0ϺʸʤǤ)

  -ry <int>
    Y¦ʺ¦ˤʬʸκʸǤ.
    (default 0: 0ϺʸʤǤ)

  -uc <char>
    饤Ȥ̤ΤǤ뤳Ȥ򼨤Ǥ(default ' ')

  -sc <char>
    饤ȤڤǤ뤳Ȥ򼨤Ǥ(default '|')

  -jc <char>
    饤ȤǤ뤳Ȥ򼨤Ǥ (default ':')

  -dic <char>
    ʸޤʸ򼨤Ǥ (default '_')

  -training_type 0|1|2|3|4|5
    ؽΥפ򼨤ޤ. (defalut 5)

    0:ԳϵΥƳʤforward-backward ؽǤ

    1:forward-backward ؽԤä塤n-best viterbi training Ԥޤ
ԳϵΥƳޤ

    2:ԳϵΥƳ forward-backward ؽǤ

    3:forward-backward ؽԤä塤n-best viterbi trainingԤޤ
줾ˤƻԳϵΥƳޤ

    4:ʸʸĤʤ forward-backward ؽԤä塤
ĤʸνиΨդбط
n-best viterbi training Ԥޤ
줾ˤƻԳϵΥƳޤ

    5:ʸʸĤʤ forward-backward ؽԤä塤
ĤʸνиΨդбط
n-best viterbi training Ԥޤ
θ塤 n-best viterbi training ǳؽԤޤ
줾ˤƻԳϵΥƳޤ

  -t <int or float>
forward-backward ؽ n-best viterbi training νλ˴ؤͤǤ
⤷ͤ1ʾʤФβؽ򷫤֤ޤ⤷ͤ1̤ʤ
ؽˤѲѥ᡼ιѲͤͤӤơͤѲ
ͤ㤱гؽλޤ(defalut 0.1)
forward-backward ؽ n-best viterbi training 줾Фͤ
-tfb-tvΥץѤޤ

  -kind_of_cityblock 0|1|2
    ԳϵΥμǤ(defalut 0)

    0:X¦ʱ¦ˤY¦(¦ˤιʸ

    1:Y¦(¦ˤιʸ

    2:X¦(¦ˤιʸ

  -tfb <int or float>
    forward-backward ؽλͤǤ(defalut 0.1)

  -tv <int or float>
    n-best viterbi training λͤǤ(defalut 0.1)

  -substringCheck
    ʬʸ󤫤ɤĴ٤ޤǥեȤǤĴ٤ޤ
üʵǽʤΤǻȤϤʤǤ礦

  -noConsecutiveDelAndIns
    ʸʸϢ³ػߤޤ
㤨аʲΤ褦˥饤Ȥޤ

G|r|e|e|e|n|	|||_|_||

  -noEqMap
    X¦Y¦Ʊʸξбդޤ

  -alignment_type 0|1|2
    alignment type. (defalut 1)

    0:äбդ礷ʤ饤ȤԤޤ

    1:äбդ礹륢饤ȤԤޤ

    2:äбդ򸡽ФƽϥեǤ*.err˽񤭤ߤޤ

  -doubtful_context_size <int>
äбդȽǤ륳ƥȿꤷޤ(defalut 1)

  -doubtful_condition 0|1
    äбդȽǤꤷޤ(defalut 1)

    0:бդΥƥȿȤ⾮ϸäбդȤ
ȽǤޤ⤷doubtful_context_size=1 бդη
<[context_size]mapping[context_size]>ɽʤ, 
    "<[9]mapping[1]><[1]mapping[5]>"ϸäޥåԥ󥰤Ȥʤޤ

    1:бդΥƥȿޤϸΤɤ餫Ǿ
äбդȤȽǤޤ⤷ doubtful_context_size=1 б
դη<[context_size]mapping[context_size]>ɽʤ, 
    "<[9]mapping[4]><[1]mapping[5]>""<[9]mapping[1]><[3]mapping[5]>"
äޥåԥ󥰤Ȥʤޤ

  -t_nbset <int>
n-best viterbi training γؽ륢饤ȿǤ(defalut 2)

  -f_nbest <int>
    ǽΥ饤Ȥ n-best Ǥ(defalut 1)
alignment type 1ޤ2λn-bestη̤˴Ťơ
äޥåԥ󥰤ȯޤ0λϤ줬Ϸ̤Ȥʤޤ

  -s_nbest <int>
    alignment type 1λͭˤʤ륪ץ2ܤΥ饤Ȼ
n-best Ǥ(defalut 1)

  -output_nbest <int>
饤ȤνϷ̿(defalut -f_nbest or -s_nbest)

  -nbest <int>
n-best ΤΥץǤ.
    ⤷ alignment_type 02ʤ餳Υץ -f_nbest ƱǤ
    ⤷ alignment_type 1ʤ餳Υץ -s_nbest ƱǤ


5. Х

⤷Хȯޤ顤
ʲΥɥ쥹ޤǤ𤤤ȹǤ

keigo-k{}is.naist.jp  << {}@ѴƤ


