パスワードを忘れた? アカウント作成
14151785 journal
人工知能

yasuokaの日記: UD-Kanbun・spacy-stanza・spacy-udpipeをmacOS Catalinaで使うには

日記 by yasuoka

私(安岡孝一)の昨日の日記の読者から、macOSはダメなのか、という趣旨の御質問をいただいた。macOS Catalinaなら大丈夫だが、ネットワークに繋がった環境下で、ターミナル(「Finder」→「アプリケーション」→「ユーティリティ」の中にある)を立ち上げる必要がある。ターミナルを立ち上げたら、以下のコマンドを順に実行する。

$ g++ --version
$ pip3 install -U udkanbun spacy-stanza spacy-udpipe deplacy --user
$ python3
>>> import stanza
>>> stanza.download("lzh")
>>> import spacy_udpipe
>>> spacy_udpipe.download("lzh")
>>> quit()

実行すると、パスワード入力画面が現れたりして、必要なものをどんどんインストールしてくれるはずである。インストールと古典中国語モデルのダウンロードがうまくいったなら、まずはUD-Kanbundeplacyで使ってみよう。

$ python3
>>> import udkanbun.spacy
>>> lzh=udkanbun.spacy.load(Danku=True)
>>> doc=lzh("不入虎穴不得虎子")
>>> import deplacy
>>> deplacy.render(doc)
不 ADV  <════╗ advmod
入 VERB ═══╗═╝ ROOT
虎 NOUN <╗ ║   nmod
穴 NOUN ═╝<╝   obj
不 ADV  <════╗ advmod
得 VERB ═══╗═╝ ROOT
虎 NOUN <╗ ║   nmod
子 NOUN ═╝<╝   obj
>>> quit()

次にspacy-stanzaを使ってみよう。

$ python3
>>> import stanza
>>> from spacy_stanza import StanzaLanguage
>>> lzh=StanzaLanguage(stanza.Pipeline("lzh"))
>>> doc=lzh("不入虎穴不得虎子")
>>> import deplacy
>>> deplacy.render(doc)
不 ADV  <════╗ advmod
入 VERB ═══╗═╝ root
虎 NOUN ═╗<╝   obj
穴 NOUN <╝     conj
不 ADV  <════╗ advmod
得 VERB ═══╗═╝ root
虎 NOUN ═╗<╝   obj
子 NOUN <╝     conj
>>> quit()

次にspacy_udpipeを使ってみよう。

$ python3
>>> import spacy_udpipe
>>> lzh=spacy_udpipe.load("lzh")
>>> doc=lzh("不入虎穴不得虎子")
>>> import deplacy
>>> deplacy.render(doc)
不 ADV  <╗     advmod
入 VERB ═╝     ROOT
虎 NOUN ═╗<══╗ nsubj
穴 NOUN <╝   ║ conj
不 ADV  <╗   ║ advmod
得 AUX  ═╝<╗ ║ aux
虎 NOUN ═╗═╝═╝ ROOT
子 NOUN <╝     flat
>>> quit()

なお、Catalina以外のmaxOSだと、g++pip3のインストールにXcodeやHomebrewを必要とするので、複数マシンで環境を揃えるのが難しいと思う。macOSのsafariはGoogle Colaboratoryをサポートしている(らしい)ので、よければ3月30日の日記も参照してほしい。

この議論は、yasuoka (21275)によって ログインユーザだけとして作成されたが、今となっては 新たにコメントを付けることはできません。
typodupeerror

犯人はmoriwaka -- Anonymous Coward

読み込み中...