Sudachiの形態素解析の品詞詳細メモ

そうだ、正規化しよう。

なお、この記事は自然言語処理の専門家でもなければ日本語の専門家でもない存在が書いています。大量に間違いがあるかもしれませんのでもしあなたがこの記事を参考にしようと思った際は気をつけてください。主に未来の私。

サンプルデータを雑にSudachiで形態素解析して得られた認識の一覧をメモしておく。
なお、サンプルデータは271108のTwitterテキストデータで、17978種類の単語からなっている文の集まり。

for y in tokenizer_obj.tokenize(x, tokenizer.Tokenizer.SplitMode.C)
     y.part_of_speech()

形態素解析を行うと、上記のy.part_of_speech()で品詞とかなんやらが得られる。
動詞,一般,*,*,五段-ワア行,終止形-一般
↑のような形をしている、品詞とかなんやらをpospとこの記事では呼んでいる。

全部まとめた印象としては、

  • pospの0番目は「品詞名」
  • pospの1番目は「区分1」
  • pospの2番目は「区分2」
  • pospの3番目は「区分3」
  • pospの4番目は「活用の種類」
  • pospの5番目は「活用形」

が入っているという認識をしている。

活用する品詞

国語のお時間です。

  • 動詞・助動詞・形容詞・接尾辞の一部の4つが活用する

形容動詞は……?

形容詞

  • pospの0番目は「形容詞」
  • pospの1番目は「一般」と「非自立可能」に分かれていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は活用の種類が入っていた。活用の種類として「形容詞」「文語形容詞-ク」「文語形容詞-シク」が入っていた。他にあるかは不明。
  • pospの5番目は動詞や助動詞と同じような活用形が入っていた。

助動詞

  • pospの0番目は「助動詞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「下一段-タ行」「五段-ワア行」「助動詞-タ」「文語下二段-ラ行」「文語助動詞-ズ」のような活用の種類が入っていた。
  • pospの5番目は「未然形-一般」「命令形」「仮定形-融合」「意志推量形」「已然形-一般」「語幹-一般」のような活用形が入っていた。

接尾辞

  • pospの0番目は「接尾辞」
  • pospの1番目は「名詞的」「形状詞的」「形容詞的」「動詞的」に分かれていた。
形容詞的接尾辞・動詞的接尾辞
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は活用の種類が入っていた。活用の種類として「形容詞」「下一段-ナ行」「五段-マ行」「五段-ラ行」「上一段-マ行」が入っていた。他にあるかは不明。
  • なお、確認した限りでは形容詞的接尾辞の活用の種類は「形容詞」、動詞的接尾辞の活用の種類は「下一段-ナ行」「五段-マ行」「五段-ラ行」「上一段-マ行」になっていた。
  • pospの5番目は動詞や助動詞と同じような活用形が入っていた。「意志推量形」は見当たってないが……

動詞

  • pospの0番目は「動詞」
  • posp1番目は2つに分かれていたっぽい。動詞は「一般」と「非自立可能」に分かれているらしい。
  • 「非自立可能」な動詞は「終わる」「ある」「なる」「やる」「くださる」とかそういったものらしい。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「下一段-ア行」のような活用の種類が入っていた。
  • pospの5番目は「連用形-一般」「終止形-撥音便」「仮定形-融合」「意志推量形」のような活用形が入っていた。

活用しない(もしくは活用が確認されなかった)品詞

なお、今回形態素解析を行った際に空白が入っていない文章を使っているため、もしかしたらpospの0番目が「空白」となっている品詞があるかもしれない。

BOS/EOS

これは私が設定した気がする。

  • pospの0番目は「BOS/EOS」
  • pospの1番目は「BOS」または「EOS」が入っている。
  • pospの2番目は「*」が入っている。
  • pospの3番目は「*」が入っている。
  • pospの4番目は「*」が入っている。
  • pospの5番目は「*」が入っている。

感動詞

  • pospの0番目は「感動詞
  • pospの1番目は「一般」または「フィラー」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

記号

  • pospの0番目は「記号」
  • pospの1番目は「一般」または「文字」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。
posp[1]:一般 の例
  • 「っ」
  • 「ゃ」
  • 「O」*1
  • 「ヴ」*2
  • 「ゅ」*3
  • 「ゆ」*4

何をもって一般としているのかは分からなかった。

posp[1]:文字 の例
  • 「¥」
  • 「Ω」*5
  • 「Τ」*6
  • 「オメガ」
  • 「しゅ」*7

何をもって文字としているかは分からなかった。

形状詞

  • pospの0番目は「形状詞」
  • pospの1番目は「一般」「タリ」「助動詞語幹」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

特に「タリ」に区分されているものは形容動詞に似ているようなそうでもないような……

助詞

  • pospの0番目は「助詞」
  • pospの1番目は「格助詞」「係助詞」「終助詞」「準体助詞」「接続助詞」「副助詞」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

接続詞

  • pospの0番目は「接続詞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

接頭辞

  • pospの0番目は「接頭辞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

接尾辞

  • pospの0番目は「接尾辞」
  • pospの1番目は「名詞的」「形状詞的」「形容詞的」「動詞的」に分かれていた。
名詞的接尾辞
  • pospの2番目は「一般」「副詞可能」「助数詞」「サ変可能」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。
形状詞的接尾辞
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

代名詞

  • pospの0番目は「代名詞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

副詞

  • pospの0番目は「副詞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

補助記号

  • pospの0番目は「補助記号」
  • pospの1番目は「一般」「読点」「句点」「括弧開」「括弧閉」「AA」が入っていた。*8
  • 「AA」以外ではpospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。
AA
  • 「AA」ではpopsの2番目は「顔文字」または「一般」が入っていた。

AAに含まれていた単語は以下のもの。

  • 「^^」:顔文字
  • (´・ω・`)」:顔文字
  • 「^^」:顔文字
  • 「(´・ω・`)」:顔文字
  • 「^q^」:顔文字
  • 「orz」:一般*9

名詞

  • pospの0番目は「名詞」
  • pospの1番目は「固有名詞」「助動詞語幹」「数詞」「普通名詞」が入っていた。
固有名詞
  • pospの2番目は「一般」「人名」「地名」が入っていた。
  • 「人名」の場合、pospの3番目は「一般」「姓」「名」が入っていた。
  • 「地名の場合、」pospの3番目は「一般」「国」が入っていた。*10
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。
助動詞語幹・数詞
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

連体詞

  • pospの0番目は「連体詞」
  • pospの1番目は「*」が入っていた。
  • pospの2番目は「*」が入っていた。
  • pospの3番目は「*」が入っていた。
  • pospの4番目は「*」が入っていた。
  • pospの5番目は「*」が入っていた。

*1:おそらく「O-01-04」のような文字列を分解して生じたものと思われる。

*2:これは固有名詞の可能性がある。

*3:おそらくこれは固有名詞の間違い。271108にこう呼ばれている人物がいる。

*4:おそらくこれは固有名詞の間違い。271108にこう呼ばれている人物がいる。余談だがゅと同一人物。

*5:ギリシャ文字全般がこうなっていた

*6:分かりにくいがこれはタウ。Tではない。

*7:原文であるかは分からないが、これを含む文章を生成させたところ、「しゅがーまーがりんとか恐ろしそうなワードが見えた」と出力された。おそらく「シュガーマーガリン」をひらがなで書いたことの弊害。正規化、しよう!

*8:なお、今回のデータでは括弧開と括弧閉の数が釣り合っていない。「’」と「>」に対応する括弧開がなかった。なんとなく括弧としてこれらの記号を使っていない気がする。

*9:まぁ確かに顔文字ではないわな。

*10:「NZ」をニュージーランドであると認識しているのか、国として分類していた。