yasuokaの日記: COMBO-pytorchのポーランド語係り受け解析をGoogle Colaboratoryで動かす
COMBO-pytorchのポーランド語モデルにHerBERTを適用してみた、との連絡をいただいた。とりあえず、Google Colaboratoryでdeplacyに繫いでみよう。
!pip install 'deplacy>=1.8.3' COMBO@git+https://github.com/ipipan/combo
import combo.predict
nlp=combo.predict.SemanticMultitaskPredictor.from_pretrained("polish-herbert-large")
doc=nlp("Wcale nie chcemy zdobywać kosmosu, chcemy tylko rozszerzyć Ziemię do jego granic.")
import deplacy
deplacy.render(doc)
deplacy.serve(doc,port=None)
「Wcale nie chcemy zdobywać kosmosu, chcemy tylko rozszerzyć Ziemię do jego granic.」を係り受け解析してみたところ、私(安岡孝一)の手元では以下の結果になった。
Wcale ADV <══════╗ advmod
nie PART <════╗ ║ advmod:neg
chcemy VERB ═══╗═╝═╝═════╗═╗ root
zdobywać VERB ═╗<╝ ║ ║ xcomp
kosmosu NOUN <╝ ║ ║ obj
, PUNCT <══════════╗ ║ ║ punct
chcemy VERB ═════════╗═╝<╝ ║ conj
tylko PART <══════╗ ║ ║ advmod:emph
rozszerzyć VERB ═╗═══╗═╝<╝ ║ xcomp
Ziemię PROPN <╝ ║ ║ obj
do ADP <══╗ ║ ║ case
jego PRON <╗ ║ ║ ║ nmod
granic NOUN ═╝═╝<╝ ║ obl
. PUNCT <══════════════╝ punct
1 Wcale wcale ADV adv _ 3 advmod _ _
2 nie nie PART part Polarity=Neg 3 advmod:neg _ _
3 chcemy chcieć VERB fin:pl:pri:imperf Aspect=Imp|Mood=Ind|Number=Plur|Person=1|Tense=Pres|VerbForm=Fin|Voice=Act 0 root _ _
4 zdobywać zdobywać VERB inf:imperf Aspect=Imp|VerbForm=Inf|Voice=Act 3 xcomp _ _
5 kosmosu kosmos NOUN subst:sg:gen:m3 Animacy=Inan|Case=Gen|Gender=Masc|Number=Sing 4 obj _ _
6 , , PUNCT interp PunctType=Comm 7 punct _ _
7 chcemy chcieć VERB fin:pl:pri:imperf Aspect=Imp|Mood=Ind|Number=Plur|Person=1|Tense=Pres|VerbForm=Fin|Voice=Act 3 conj _ _
8 tylko tylko PART part _ 9 advmod:emph _ _
9 rozszerzyć rozszerzyć VERB inf:perf Aspect=Perf|VerbForm=Inf|Voice=Act 7 xcomp _ _
10 Ziemię Ziemia PROPN subst:sg:acc:f Case=Acc|Gender=Fem|Number=Sing 9 obj _ _
11 do do ADP prep:gen AdpType=Prep 13 case _ _
12 jego on PRON ppron3:sg:gen:m3:ter:akc:npraep Animacy=Inan|Case=Gen|Gender=Masc|Number=Sing|Person=3|PrepCase=Npr|PronType=Prs|Variant=Long 13 nmod _ _
13 granic granica NOUN subst:pl:gen:f Case=Gen|Gender=Fem|Number=Plur 9 obl _ _
14 . . PUNCT interp PunctType=Peri 3 punct _ _
SVGで可視化すると、こんな感じ。ほぼ完璧だと思う。旧版のCOMBOと違い、ちゃんとトークナイザ(単語切り)も内蔵しているので、非常に使いやすくなっているのだが、ただ、インストールに時間がかかり過ぎる。サポートしている言語も、現時点ではチェコ語・英語・ドイツ語・ハンガリー語・ポーランド語・ロシア語の6つだけなので、もうちょっと言語数が増えてから、乗り換えようかな。
COMBO-pytorchのポーランド語係り受け解析をGoogle Colaboratoryで動かす More ログイン