ライブドアコーパスの記事分類を トークナイザーを変更しながらやってみる その2 SentencePieceでもやってみた

github.com


github.com


ライブドアコーパスの記事分類性能がトークナイザーの種類によって変わるのか試す実験の続き。今回は SentencePiece でやってみた
SentencePiece はディープラーニングでの利用を前提に作られているのだけれど、ロジスティック回帰等の伝統的な機械学習でも利用することはできるので、どんな感じになるのか試してみた


今回から、bert-japanese とも比較できるように、教師データの作り方はbert-japanese と全く同じにした。ただしディープラーニングではないので評価データ (dev.tsv)は使わないないため 訓練データ(train.tsv) + 評価データ(dev.tsv )を訓練データとした。test.tsvはともに検証データ
これにより前回より精度が少し良くなっているがロジック部分は全く変わっていない。Bag of Words+ ロジスティック回帰


結論 : SentencePiece をトークナイザーとして使うと MeCab、GiNZA、SudachiIに比べると若干分類性が落ちる。しかし、PADICや NEologd等の事前に準備された辞書は全く使わず、ライブドアコーパスの教師データだけで学習して分類していることを考慮すると、想像以上の性能が出ると感じた。ネットニュースやSNSネットスラングが多用される文章ではNEologd等を使った方が良い性能が出るだろうが、お堅い専門用語が頻出するような文書ドメインではもっと差がなくなる、あるいは逆転するという可能性もあるかもしれない


f:id:knaka20blue:20190814103159j:plain
precision
f:id:knaka20blue:20190813145312j:plain
recall
f:id:knaka20blue:20190813145330j:plain
f1-score