Sudachiを入れてサクッと形態素解析してみる
Sudachiを使用する
前々回のMeCabや前回のJUMAN++に続いてSudachiを使って形態素解析してみます。
Sudachiとは
Sudachi は Java で書かれたオープンソースの日本語形態素解析器です。 ワークス徳島人工知能NLP研究所により提供されているソフトウェアの1つです。 なお、Python版の SudachiPy もあります。
引用: https://www.mlab.im.dendai.ac.jp/~yamada/ir/MorphologicalAnalyzer/Sudachi.html
自然言語処理に特化した研究機関であるワークス徳島人工知能NLP研究所が開発しているようです。
またSudachiのための辞書(Sudachi辞書)も開発しています。Sudachi辞書はUniDicをベースにして見出しや品詞などの形態素解析の基礎となる情報を整え、近年認知されるようになった固有名詞はNEologdから取り込まれているようです。
既存の辞書の長所を取り込んだ上で、形態素解析精度を上げるために様々な調整を行っているようです。
参考: https://core.ac.uk/download/pdf/234726541.pdf
Sudachi辞書に関しては、こちらの記事がとても参考になりました。
Sudachiの特徴
Sudachi は従来の形態素解析器とくらべ、以下のような特長があります。
- 複数の分割単位の併用
- 必要に応じて切り替え
- 形態素解析と固有表現抽出の融合
- 多数の収録語彙
- UniDic と NEologd をベースに調整
- 機能のプラグイン化
- 文字正規化や未知語処理に機能追加が可能
- 同義語辞書との連携
- 後日公開予定
参考: https://github.com/WorksApplications/Sudachi/#sudachi-の特長
SudachiPyのインストール
今回もターミナル上で簡単にSudachiを試したいのでPython版のSudachiPyを試します。
ドキュメントに沿ってSudachiPyをインストール
pip install sudachipy
Sudachi辞書のインストール
pip install sudachidict_core
SudachiPyの使い方
ターミナルで簡単に使う
ターミナルでsudachipyと入力するとsudachipyが起動します。
(終了させるときはcontrol + C)
sudachipy
試しに「メロスは激怒した。」という文章を入力すると、以下のように解析結果が出力されます。
メロスは激怒した。
メロス 名詞,普通名詞,一般,*,*,* メロス
は 助詞,係助詞,*,*,*,* は
激怒 名詞,普通名詞,サ変可能,*,*,* 激怒
し 動詞,非自立可能,*,*,サ行変格,連用形-一般 為る
た 助動詞,*,*,*,助動詞-タ,終止形-一般 た
。 補助記号,句点,*,*,*,* 。
EOS
形態素ごとに各行に出力され、出力フォーマットはタブ区切りで以下のようになっています。
表層形 品詞(コンマ区切り) 正規化表記
オプションで -a
を指定すると以下の情報が追加されます。
- 辞書形
- 読み
- 辞書ID
- 0システム辞書
- 1ユーザー辞書
- -1\t(OOV) 未知語(辞書に含まれない単語)
メロスは激怒した。
メロス 名詞,普通名詞,一般,*,*,* メロス メロス メロス 0 []
は 助詞,係助詞,*,*,*,* は は ハ 0 []
激怒 名詞,普通名詞,サ変可能,*,*,* 激怒 激怒 ゲキド 0 []
し 動詞,非自立可能,*,*,サ行変格,連用形-一般 為る する シ 0 []
た 助動詞,*,*,*,助動詞-タ,終止形-一般 た た タ 0 []
。 補助記号,句点,*,*,*,* 。 。 。 0 []
EOS
テキストファイルごと解析する
テキストファイルごとに解析させる場合は以下
cat {テキストファイルのパス} | sudachipy
所感
ユーザー辞書の追加や辞書設定のオプションが用意されていて、辞書周りの設定が細かくできる印象です。Sudachi辞書もsmallとcoreとfullの3種類用意されており、用途によって辞書の使い分けができるのが良いなと思いました。
また、辞書の表記揺れ対策がされているため、形態素解析前に下処理などを行わなくても精度の良い解析結果が得られるのが一番魅力的かもしれません。
日本語形態素解析器の中でも開発されたのが最近なのでかなり精度が担保されている上に、研究機関の元で日々開発や更新が進められているので今後の発表が楽しみです。
参考記事
余談
すだちっぽい絵文字って案外ないんですね、キウイ🥝の絵文字が一番すだちっぽかったので記事の絵文字はキウイにしました。
Discussion