##やること
Colab環境でMeCabを使ってヨミガナを表示する5行の姉妹記事です。
Colab環境でfugashiのみを導入し、ヨミガナを取得してみます。
ついでに分かち書きや品詞もfugashiのみで取得してみます。Mecab-Pythonより便利かも。
##環境
- Colaboratory環境
- ブラウザはChrome推奨
colabを少し使ったことがある前提で進めていきます。
でもpythonを知らなくても実行できる説明にします。
5行のスクリプト
!pip install fugashi[unidic-lite]
from fugashi import Tagger
fugger = Tagger()
text = "赤巻紙青巻紙黄巻紙"
print("".join(w.feature.kana for w in fugger(text)))
出力結果
アカマキガミアオマキガミキマキガミ
たった5行で導入から形態素解析を経てのヨミガナ出力までが完了しました。手軽です。
fugashiには辞書が必要なので、[unidic-lite]を指定しておかないと動きません。
print文の中の内包表記がよくわからないという方は、姉妹記事が参考になるかもしれません。
発音も取得できる
.feature.kanaの部分を.feature.pronとすると、発音の読みも取得できるそうです。
text = "昇竜拳"
print("".join(w.feature.kana for w in fugger(text)))
print("".join(w.feature.pron for w in fugger(text)))
# 結果
# ショウリュウケン
# ショーリューケン
"ウ"が"ー"になったりするのがポイントです。音声合成の時などに便利かもしれません。
分かち書きの出力
ついでに分かち書きを出力してみます。
text = "納豆巻しか勝たん"
print(" ".join(w.surface for w in fugger(text)))
# 結果
# 納豆 巻 しか 勝た ん
品詞の取得
品詞も取得してみます。
text = "納豆巻しか勝たん"
print(" ".join(w.surface for w in fugger(text)))
print(" ".join(w.feature.pos1 for w in fugger(text)))
# 結果
# 納豆 巻 しか 勝た ん
# 名詞 名詞 助詞 動詞 助動
.feature.pos1のところが品詞の取得で、.pos2〜.pos4は品詞についての補足情報となるようです。
たとえば普通名詞か固有名詞の判断などは.pos2で可能です。
機械学習で名詞だけを抽出したい場合などに使えるかもしれません。
##謝辞
前記事のコメント蘭で@polm23 様、@KoichiYasuoka 様にご指摘いただいた部分を参考に、初心者向けとして記事化しました。
(作者ご本人や大学の先生から添削いただいていたようで大変恐縮です。)
リンク: