multi criteria cws
1.0.0
紙のコードとコーパス「マルチ基準ワードセグメンテーションのための効果的なニューラルソリューション」(SCI-2018で受け入れられ、近日公開)。
コーパラを準備するために次のコマンドを実行し、それらを電車/開発/テストセットなどに分割します。
python3 convert_corpus.py 次に、corpus $datasetピクルスファイルに変換します。
./script/make.sh $dataset$dataset 、 pku 、 msr 、 as 、 cityu 、 sxu 、 ctb 、 zx 、 cnc 、 udc 、 wtbの1つです。$dataset 、 joint-sighan2005やjoint-10in1などのジョイントコーパスでもあります。$datasetとしてjoint-sighan2008作成することもできます。最後に、1つのコマンドがトレーニングとテストの両方をその場で実行します。
./script/train.sh $dataset Sighan Bakeoff 2008データセットは所有権であり、入手が困難であるため、より自由に利用可能なデータセットで追加の実験を行うことを決定します。 4つのSighan2005データセットとともに、追加の6つの自由に利用可能なデータセットにソリューションを適用しました。
このセクションでは、このペーパーで使用されているコーパスを簡単に紹介します。
これらの10コーパスは、公式Sighan2005 Webサイトから、またはオープンソースプロジェクトから収集されたか、研究者のホームページから収集されています。ライセンスは次の表にリストされています。
Sighan2008 Corporaは独自のものであるため、それらを配布することはできません。法的コピーがある場合は、これらの指示に従ってスコアを再現できます。
まず、Sighan2008をこのプロジェクトのデータフォルダーにリンクします。
ln -s /path/to/your/sighan2008/data data/sighan2008
次に、以下のJavaコードスニペットに示すように、伝統的な中国人にHANLPを使用して中国の変換を簡素化しました。
BufferedReader br = new BufferedReader ( new InputStreamReader ( new FileInputStream (
"data/sighan2008/ckip_seg_truth&resource/ckip_truth_utf16.seg"
), "UTF-16" ));
String line ;
BufferedWriter bw = IOUtil . newBufferedWriter (
"data/sighan2008/ckip_seg_truth&resource/ckip_truth_utf8.seg" );
while (( line = br . readLine ()) != null )
{
for ( String word : line . split ( " \ s" ))
{
if ( word . length () == 0 ) continue ;
bw . write ( HanLP . convertToSimplifiedChinese ( word ));
bw . write ( " " );
}
bw . newLine ();
}
br . close ();
bw . close ();次の4ファイルに対してこれを繰り返す必要があります。
次に、 convert_corpus.pyのコードに続くuncomment:
# For researchers who have access to sighan2008 corpus, use official corpora please.
print ( 'Converting sighan2008 Simplified Chinese corpus' )
datasets = 'ctb' , 'ckip' , 'cityu' , 'ncc' , 'sxu'
convert_all_sighan2008 ( datasets )
print ( 'Combining those 8 sighan corpora to one joint corpus' )
datasets = 'pku' , 'msr' , 'as' , 'ctb' , 'ckip' , 'cityu' , 'ncc' , 'sxu'
make_joint_corpus ( datasets , 'joint-sighan2008' )
make_bmes ( 'joint-sighan2008' )最後に、あなたは行く準備ができています:
python3 convert_corpus.py
./script/make.sh joint-sighan2008
./script/train.sh joint-sighan2008