yasuokaの日記: Re: Google ColaboratoryでStanzaの結果を可視化するには
一昨日の日記でうまくいかなかったStanzaとdisplaCyの連携だが、spacy-stanzaを使えば簡単にできることがわかった。ちょっとクヤシイのだが、とりあえずspacy-stanzaのインストールから、「笑顔で彼は座った」「He sat down with smiling face」「Ele se sentou com um sorriso no rosto」の3つの文の解析・可視化まで、Google Colaboratory上で一気にやってみよう。
!pip install spacy-stanza
import stanza
stanza.download("ja")
stanza.download("en")
stanza.download("pt")
from spacy_stanza import StanzaLanguage
ja=StanzaLanguage(stanza.Pipeline("ja"))
en=StanzaLanguage(stanza.Pipeline("en"))
pt=StanzaLanguage(stanza.Pipeline("pt"))
from spacy.displacy import render
for s in [ja("笑顔で彼は座った"),en("He sat down with smiling face"),pt("Ele se sentou com um sorriso no rosto")]:
render(s,style="dep",jupyter=True)
うまくいけば、displaCyの係り受けグラフが3つ表示されるはずだ。この例だと、日本語と英語はほぼ完璧なのだが、ポルトガル語は「sentou」─obl→「rosto」となってしまっていてイマイチだ。これが「sorriso」─nmod→「rosto」になればOKなのだが、Stanzaの解析性能が上がらない限りダメかなあ。
Re: Google ColaboratoryでStanzaの結果を可視化するには More ログイン