分詞程序的測試一般用backoff2005的腳本,但是backoff2005腳本是運行在linux系統上的。如果在windows系統中時,怎麼使用該腳本呢?假設用戶已經有了icwb2-data壓縮包了。
首先得安裝perl開發環境。下載地址:
https://dwimperl.googlecode.com/files/dwimperl-5.14.2.1-v7-32bit.exe
接下來,需要安裝diff工具,下載地址:
http://superb-dca3.dl.sourceforge.net/project/gnuwin32/diffutils/2.8.7-1/diffutils-2.8.7-1-bin.zip
把diff工具解壓到E:\diffutils目錄下即可,然後把E:\diffutils\bin目錄添加到系統的環境變量中。
接下來,就需要對icwb2-data/script/score腳本進行修改:
把46行的代碼修改成:
$diff = "E:/diffutils/bin/diff";
把52,53行的代碼修改成:(注意d:/tmp目錄要存在)
$tmp1 = "d:/tmp/comp01$$";
$tmp2 = "d:/tmp/comp02$$";
接下來,就可以執行測試命令了:
在E:\icwb2-data目錄中打開命令行工具並執行命令,如下:
E:\icwb2-data>perl scripts/score gold/pku_training_words.utf8 gold/pku_test_gold
.utf8 gold/pku_test_gold.utf8 > pku_maxent.score
命令的執行需要一段時間,等待即可。
測試命令完成後,會在E:\icwb2-data目錄下生成pku_maxent.score文件,最終結果如下:
INSERTIONS: 0
DELETIONS: 0
SUBSTITUTIONS: 0
NCHANGE: 0
NTRUTH: 27
NTEST: 27
TRUE WORDS RECALL: 1.000
TEST WORDS PRECISION: 1.000
=== SUMMARY:
=== TOTAL INSERTIONS: 0
=== TOTAL DELETIONS: 0
=== TOTAL SUBSTITUTIONS: 0
=== TOTAL NCHANGE: 0
=== TOTAL TRUE WORD COUNT: 104372
=== TOTAL TEST WORD COUNT: 104372
=== TOTAL TRUE WORDS RECALL: 1.000
=== TOTAL TEST WORDS PRECISION: 1.000
=== F MEASURE: 1.000
=== OOV Rate: 0.058
=== OOV Recall Rate: 1.000
=== IV Recall Rate: 1.000
### gold/pku_test_gold.utf8 0 0 0 0 104372 104372 1.000 1.000 1.000 0.058 1.000 1.000
因爲我們用的測試集和分詞結果集是同一個文件,所以正確率、召回率什麼的都是100%。