« WordPress:過去記事タイトルを... Main BullZipでのPDFプリンタ »

形態素解析で検索キーワード

学生向けに来る就職求人の情報をまとめているが、この入力データからキーワードを抽出したい。

形態素解析すれば手間が省けるだろうとのことで、MeCabを試してみる。

php から使える拡張もあるようだが、まずはコマンドラインで実行してみた。結果は、以下の感じ。

$ cat 2009data.html | dehtml | mecab | sort | uniq -c | sort -n -r | grep ‘名詞’ | grep -v ‘数\|地域\|接尾\|接頭\|代名詞\|非自立’


    432 /       名詞,サ変接続,*,*,*,*,*
    313 -       名詞,サ変接続,*,*,*,*,*
    249 県      名詞,一般,*,*,*,*,県,ケン,ケン
    241 株式会社        名詞,一般,*,*,*,*,株式会社,カブシキガイシャ,カブシキガイシャ
    214 _       名詞,サ変接続,*,*,*,*,*
    140 推薦    名詞,サ変接続,*,*,*,*,推薦,スイセン,スイセン
    135 学校    名詞,一般,*,*,*,*,学校,ガッコウ,ガッコー
    130 開発    名詞,サ変接続,*,*,*,*,開発,カイハツ,カイハツ
    123 機器    名詞,一般,*,*,*,*,機器,キキ,キキ
    121 応募    名詞,サ変接続,*,*,*,*,応募,オウボ,オーボ
    112 自由    名詞,形容動詞語幹,*,*,*,*,自由,ジユウ,ジユー
     98 設計    名詞,サ変接続,*,*,*,*,設計,セッケイ,セッケイ
     98 製造    名詞,サ変接続,*,*,*,*,製造,セイゾウ,セイゾー
     83 販売    名詞,サ変接続,*,*,*,*,販売,ハンバイ,ハンバイ
     79 システム        名詞,一般,*,*,*,*,システム,システム,システム
     73 機械    名詞,一般,*,*,*,*,機械,キカイ,キカイ
     68 .       名詞,サ変接続,*,*,*,*,*
     64 関連    名詞,サ変接続,*,*,*,*,関連,カンレン,カンレン
     53 pdf     名詞,一般,*,*,*,*,*
     53 PDF     名詞,一般,*,*,*,*,*
     50 電子    名詞,一般,*,*,*,*,電子,デンシ,デンシ
     46 自動車  名詞,一般,*,*,*,*,自動車,ジドウシャ,ジドーシャ
     43 事業    名詞,一般,*,*,*,*,事業,ジギョウ,ジギョー
     39 電気    名詞,一般,*,*,*,*,電気,デンキ,デンキ
       ....

概ね妥当そうだが、記号のようなものも名詞として検出されてしまっている。この箇所は半角カナが使われていたりするのかも?

[追記]
って、上位2件の「/」「-」は単なるアスキーのスラッシュとマイナスだった。なぜこれが名詞…??

[追記]
試すとこれらの記号はやはり名詞扱いになっていた。むー、そういうスタンスのものですか。

$ echo / \( \) – , . | mecab

/       名詞,サ変接続,*,*,*,*,*
(       名詞,サ変接続,*,*,*,*,*
)       名詞,サ変接続,*,*,*,*,*
-       名詞,サ変接続,*,*,*,*,*
,       名詞,サ変接続,*,*,*,*,*
.       名詞,サ変接続,*,*,*,*,*
EOS

同じように半角記号で困っている方が↓。

前処理として、半角記号を全角に置き換えないといけないんでしょうか…。

[追記]
記号の全角変換は、php の mb_convert_kana() を使えば可能のようだ。

$ cat 2009data.html | php -r ‘print mb_convert_kana(file_get_contents(“php://stdin”), “A”);’| dehtml | mecab | sort | uniq -c | sort -n -r | grep ‘名詞’ | grep -v ‘数\|地域\|接尾\|接頭\|代名詞\|非自立’


    249 県      名詞,一般,*,*,*,*,県,ケン,ケン
    241 株式会社        名詞,一般,*,*,*,*,株式会社,カブシキガイシャ,カブシキガイシャ
    140 推薦    名詞,サ変接続,*,*,*,*,推薦,スイセン,スイセン
    135 学校    名詞,一般,*,*,*,*,学校,ガッコウ,ガッコー
    130 開発    名詞,サ変接続,*,*,*,*,開発,カイハツ,カイハツ
    123 機器    名詞,一般,*,*,*,*,機器,キキ,キキ
       ....

あとは、NGというか不要な語を登録できるようにして、それを除外表示するようにしておけばよさそう。

Leave a comment

Your comment