SlideShare une entreprise Scribd logo
1  sur  8
テキスト前処理用
Pythonモジュール
neologdnの紹介
2016/04/26
NEologd Casual Talks
Yukino Ikegami
これらはみんな違う文字です
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
テキストの前処理とは
• 後の処理がやりやすくなるように
テキストを一定のルールに基づいて整えること
• たとえば、
• 半角カナを全角カナにする
• 全角英数字を半角英数字にする
• 「ウェーイ」と「ウェーーーーイ」を同じ言葉として扱う
ために「ウェーーーーイ」を「ウェーイ」にする
もし前処理やらないと……
$ mecab -d /usr/local/lib/mecab/dic/mecab-ipadic-neologd
まどかマギカ
まどかマギカ 名詞,固有名詞,一般,*,*,*,まどかマギカ,マドカマ
ギカ,マドカマギカ
EOS
まどかマギカ
まどか名詞,固有名詞,人名,名,*,*,まどか,マドカ,マドカ
マギカ 名詞,固有名詞,組織,*,*,*,*
EOS
せっかくのNEologdがMOTTAINAI😨
neologdn
• NEologdの前処理用Pythonモジュール
• Cythonだからチョット速い
• Python2系3系両対応
• pip install neologdn
• https://github.com/ikegami-yukino/neologdn
公式サンプルコードとの比較
• 公式サンプルコード
• 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, 家電, 映画, スポーツ,独女通信など様々な文書
比較の結果
公式サンプル neologdn
18.3 sec 9.05 sec
• 2倍程度速い!😇
• 詳細
– https://github.com/ikegami-
yukino/neologdn/blob/master/benchmark/benchm
ark.ipynb
まとめ
• 前処理大事
• せっかくの辞書が活躍できない😨
• Pythonでやるならneologdn
• チョット速い😇

Contenu connexe

En vedette

Deep Learning Chapter12
Deep Learning Chapter12Deep Learning Chapter12
Deep Learning Chapter12Kei Uchiumi
 
自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章Hiroki Mizukami
 
トピックモデルの話
トピックモデルの話トピックモデルの話
トピックモデルの話kogecoo
 
WebDB Forum 2016 gunosy
WebDB Forum 2016 gunosyWebDB Forum 2016 gunosy
WebDB Forum 2016 gunosyHiroaki Kudo
 
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
 Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Which Is Deeper - Comparison Of Deep Learning Frameworks On SparkSpark Summit
 
言語モデル入門 (第二版)
言語モデル入門 (第二版)言語モデル入門 (第二版)
言語モデル入門 (第二版)Yoshinari Fujinuma
 
文脈自由文法の話
文脈自由文法の話文脈自由文法の話
文脈自由文法の話kogecoo
 

En vedette (7)

Deep Learning Chapter12
Deep Learning Chapter12Deep Learning Chapter12
Deep Learning Chapter12
 
自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章
 
トピックモデルの話
トピックモデルの話トピックモデルの話
トピックモデルの話
 
WebDB Forum 2016 gunosy
WebDB Forum 2016 gunosyWebDB Forum 2016 gunosy
WebDB Forum 2016 gunosy
 
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
 Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
Which Is Deeper - Comparison Of Deep Learning Frameworks On Spark
 
言語モデル入門 (第二版)
言語モデル入門 (第二版)言語モデル入門 (第二版)
言語モデル入門 (第二版)
 
文脈自由文法の話
文脈自由文法の話文脈自由文法の話
文脈自由文法の話
 

Plus de Yukino Ikegami

出会って5行でディープラーニング推論
出会って5行でディープラーニング推論出会って5行でディープラーニング推論
出会って5行でディープラーニング推論Yukino Ikegami
 
Pythonで機械学習を自動化 auto sklearn
Pythonで機械学習を自動化 auto sklearnPythonで機械学習を自動化 auto sklearn
Pythonで機械学習を自動化 auto sklearnYukino Ikegami
 
Modeless Japanese Input Method
Modeless Japanese Input MethodModeless Japanese Input Method
Modeless Japanese Input MethodYukino Ikegami
 
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...Yukino Ikegami
 
Topic and Opinion Classification based Information Credibility Analysis on Tw...
Topic and Opinion Classification based Information Credibility Analysis on Tw...Topic and Opinion Classification based Information Credibility Analysis on Tw...
Topic and Opinion Classification based Information Credibility Analysis on Tw...Yukino Ikegami
 

Plus de Yukino Ikegami (6)

PyPI入門2018
PyPI入門2018PyPI入門2018
PyPI入門2018
 
出会って5行でディープラーニング推論
出会って5行でディープラーニング推論出会って5行でディープラーニング推論
出会って5行でディープラーニング推論
 
Pythonで機械学習を自動化 auto sklearn
Pythonで機械学習を自動化 auto sklearnPythonで機械学習を自動化 auto sklearn
Pythonで機械学習を自動化 auto sklearn
 
Modeless Japanese Input Method
Modeless Japanese Input MethodModeless Japanese Input Method
Modeless Japanese Input Method
 
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...
Clause Anaphora Resolution for Japanese Demonstrative Determiner based on Sem...
 
Topic and Opinion Classification based Information Credibility Analysis on Tw...
Topic and Opinion Classification based Information Credibility Analysis on Tw...Topic and Opinion Classification based Information Credibility Analysis on Tw...
Topic and Opinion Classification based Information Credibility Analysis on Tw...
 

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