yasuokaの日記: roberta-classical-chinese-base-ud-goeswithとStanzaとTrankitの精度比較
Universal Dependencies 2.11向けにUD_Classical_Chinese-Kyotoが準備できたので、lzh_kyoto-ud-test.conlluを使ってroberta-classical-chinese-base-ud-goeswithのLAS/MLAS/BLEXを見てみた。Google Colaboratoryだとこんな感じ。
!pip install transformers ufal.chu_liu_edmonds
import os
url="https://github.com/UniversalDependencies/UD_Classical_chinese-Kyoto"
d=os.path.basename(url)
!test -d {d} || git clone -b dev --depth=1 {url}
!for F in train dev test ; do cp {d}/*-$$F.conllu $$F.conllu ; done
url="https://universaldependencies.org/conll18/conll18_ud_eval.py"
c=os.path.basename(url)
!test -f {c} || curl -LO {url}
from transformers import pipeline
nlp=pipeline(task="universal-dependencies",model="KoichiYasuoka/roberta-classical-chinese-base-ud-goeswith",aggregation_strategy="simple",trust_remote_code=True)
with open("test.conllu","r",encoding="utf-8") as r:
s=r.read()
with open("result-test.conllu","w",encoding="utf-8") as w:
for t in s.split("\n"):
if t.startswith("# text = "):
w.write(nlp(t[9:]))
!python {c} test.conllu result-test.conllu
私(安岡孝一)の手元では、以下の結果になった。
LAS F1 Score: 81.43
MLAS Score: 78.09
BLEX Score: 79.59
同様のテストをStanza 1.4.2で試したところ、以下の結果になった。
LAS F1 Score: 72.10
MLAS Score: 67.97
BLEX Score: 70.86
Trankit 1.1.1だと、以下の結果になった。
LAS F1 Score: 68.59
MLAS Score: 63.37
BLEX Score: 67.01
roberta-classical-chinese-base-ud-goeswithがイイ線なのだが、これ、stanza-lzhが正式リリースされたら、さてどうなるのかな。
roberta-classical-chinese-base-ud-goeswithとStanzaとTrankitの精度比較 More ログイン