Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

テキスト前処理用Pythonモジュールneologdnの紹介

5,039 views

Published on

NEologd Casual Talk

Published in: Engineering
  • Be the first to comment

テキスト前処理用Pythonモジュールneologdnの紹介

  1. 1. テキスト前処理用 Pythonモジュール neologdnの紹介 2016/04/26 NEologd Casual Talks Yukino Ikegami
  2. 2. これらはみんな違う文字です U+2013 EN DASH U+2014 EM DASH 見た目が似てても文字コードが違えば 別の文字😨 U+FE63 SMALL HYPHE N- MINUS U+FF0d FULLWI DTH HYPHE N- MINUS U+FF70 HALFWIDTH KATAKANA- HIRAGANA PROLONGED SOUND MARK U+2500 BOX DRAWI NGS LIGHT HORIZO NTAL
  3. 3. テキストの前処理とは • 後の処理がやりやすくなるように テキストを一定のルールに基づいて整えること • たとえば、 • 半角カナを全角カナにする • 全角英数字を半角英数字にする • 「ウェーイ」と「ウェーーーーイ」を同じ言葉として扱う ために「ウェーーーーイ」を「ウェーイ」にする
  4. 4. もし前処理やらないと…… $ mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd まどかマギカ まどかマギカ 名詞,固有名詞,一般,*,*,*,まどかマギカ,マドカマ ギカ,マドカマギカ EOS まどかマギカ まどか名詞,固有名詞,人名,名,*,*,まどか,マドカ,マドカ マギカ 名詞,固有名詞,組織,*,*,*,* EOS せっかくのNEologdがMOTTAINAI😨
  5. 5. neologdn • NEologdの前処理用Pythonモジュール • Cythonだからチョット速い • Python2系3系両対応 • pip install neologdn • https://github.com/ikegami-yukino/neologdn
  6. 6. 公式サンプルコードとの比較 • 公式サンプルコード • https://github.com/neologd/mecab-ipadic- neologd/wiki/Regexp.ja#python-written-by-hideaki-t--overlast • テキスト: livedoor ニュースコーパス • http://www.rondhuit.com/download.html • およそ24万行 • IT, 家電, 映画, スポーツ,独女通信など様々な文書
  7. 7. 比較の結果 公式サンプル neologdn 18.3 sec 9.05 sec • 2倍程度速い!😇 • 詳細 – https://github.com/ikegami- yukino/neologdn/blob/master/benchmark/benchm ark.ipynb
  8. 8. まとめ • 前処理大事 • せっかくの辞書が活躍できない😨 • Pythonでやるならneologdn • チョット速い😇

×