検索エンジンや人工知能(AI)といった便利なテクノロジーに活用されている形態素解析をご存知ですか。聞きなれないキーワードですが、実は日常生活のさまざまなシーンで活用されています。本記事では、形態素解析のアルゴリズムと応用例、実際に活用されているツールについて紹介。ビジネスに活かせる可能性が見つかるかもしれません。
言語の最小単位を抽出!形態素解析のアルゴリズムとは
形態素解析とは、自然言語を形態素に分割する技術です。自然言語は、
- 今日は、ピクニックのために特別なサンドウィッチを作ります。
- 昨日は雪が降ったけれど、今日は日差しが暖かいね。
などのような、日常会話として用いられている言語をさします。そして、形態素は意味をなす言葉や単語の最小単位のことです。短い文章なら人力でも解析が可能ですが、技術として応用するためには膨大な量の文章を瞬時に処理しなければなりません。コンピュータでは、
- 登録された辞書の単語をすべて検索
- 文章と一致する単語のみを抽出しグラフ構造に当てはめる
- 揃った単語の組み合わせから正しいと推測される文章に組み立て直す
といったアルゴリズムを用いて形態素解析をおこなっています。
例文から理解する形態素解析
自然言語の分割がどのようなものなのか、実際に人力で一文を解析してみましょう。最初に挙げた例文を使います。
1.今日は、ピクニックのために特別なサンドウィッチを作ります。
1の文章を形態素解析したものが、次の2です。
- 今日/は/ピクニック/の/ため/に/特別/な/サンドウィッチ/を/作り/ます
分割した2の文章の形態素を、それぞれ品詞分解することも可能。品詞分解ツールや辞書を使って品詞を当てはめたものが3の文章です。
- 今日(名詞)/は(助詞)/ピクニック(名詞)/の(助詞)/ため(名詞)/に(助詞)/特別(名詞)/な(助動詞)/サンドウィッチ(名詞)/を(助詞)/作り(動詞)/ます(助動詞)
形態素解析の応用例とは?知ればグッと身近になる3つの例
形態素解析は、人工知能(AI)が人間の話し言葉に近い自然な文章を発するため、検索エンジンやニュースサイトアプリを円滑に稼働させるために活用されています。
形態素解析の例1. AIの自然言語処理
コンピュータは、あいまいな表現が苦手です。人同士が会話をするように空気を読んだり、言外に含まれた意味を推し量ることができないのはもちろんのこと、ほんの少し言い回しが違っているだけで正常な動作がおこなわれないこともあります。
それを解消するために応用されているのが形態素解析。 AI(人工知能)には、人が使う言葉を的確にとらえるため、自然言語処理能力を向上させるために、形態素解析が使われています。形態素解析された文章は、
- 構文解析:形態素から文の構造を組み立てる
- 意味解析:構文の構造から意味を判別する
- 文脈解析:文章全体の構造と意味を理解する
という順番でさらに解析されます。
形態素解析の例2. 検索エンジン
検索エンジンにも、形態素解析が応用されています。Googleに代表される各種検索エンジンでは、検索フォームに入力した文字をそのままキーワードとして検索しているわけではありません。
例えば、天候をチェックしようと「東京の天気」と検索フォームに入力した場合を考えて見ましょう。この場合、「東京の天気」内の「の」は助詞であり、検索したい情報には必要ない品詞です。そのため、検索エンジンは
- 東京の天気
- 東京/の/天気
- 東京(名詞)/の(助詞)/天気(名詞)
と形態素解析をおこない、不要な「の(助詞)」を省略して検索をおこないます。こうした検索のプロセスは、一見するとたいへん時間がかかるようにみえるかもしれません。
ですが、形態素解析による処理をおこなうことで、データ処理の量はむしろ少なくなります。また、不要な単語を省略しているために検索の精度も向上。検索エンジンを快適に使用するために、形態素解析は役立っています。
形態素解析の例3. ニュースサイトアプリ
ニュースアプリとして日本のみならず海外でもダウンロードされている「スマートニュース」にも、形態素解析が用いられています。
スマートニュースが形態素解析を活用しているのは、記事のタイトル部分です。アプリの画面上に表示されるタイトルの文字組みに形態素解析を活用し、一目で入ってくる情報量を多く、そして理解しやすくしています。
文字のサイズを1行目と2行目で変更する、視認しやすい位置での改行をおこなうといった「読みやすい画面」の秘訣が、形態素解析なのです。「スマートニュース」にとって形態素解析は、検索ではなく文字情報の視認性を高めるためのツールになっています。
フリーツールもある!日本語用の形態素解析ツールをご紹介!
形態素解析は、無料でおこなうことができるツールもあります。英語を解析可能なツールもあるので、多言語サイトの整備や対応にはそちらを活用しましょう。
JUMAN
JUMANは、京都大学大学院情報学研究科知能情報学専攻の黒橋・河原研究室による日本語形態素解析システムです。非反復形のオノマトペの認識、ウィキペディアから抽出された辞書の追加など、日本語の特性を活かしたシステムといえるでしょう。UTF-8に対応。ダウンロードできるほか、デモ版で動作を試すことも可能です。
・デモ「JUMANを試してみる」
http://lotus.kuee.kyoto-u.ac.jp/nl-resource/cgi-bin/juman.cgi
MeCab
MeCab(和布蕪)は、京都大学情報学研究科と日本電信電話株式会社コミュニケーション科学基礎研究所の共同研究を通じて開発されたオープンソースの形態素解析エンジンです。現在、もっともよく使われており主流といってよいでしょう。 辞書やコーパス(テキストや発話をデータベース化した言語資料)に依存しない設計が最大の特徴です。
・MeCab
http://taku910.github.io/mecab/
Janome
Janome(蛇の目)は、mecab-ipadic-2.7.0-20070801を内包辞書として用いた形態解析器です。アプリケーションに組み込みやすいシンプルなAPIを備えることを目指しており、Pythonで使うことができます。
・Janome
http://mocobeta.github.io/janome/
これらのツールは、あくまで道具です。 形態素解析をビジネスに応用するためには、道具を使いこなさなければなりません。そのためには、活用のビジョンと、形態素解析について知識のあるプログラマが必要です。
形態素解析の活用について適切な費用で依頼したい!おすすめの方法は?
形態素解析を適切な費用でビジネスに取り入れたい、そんな時はクラウドソーシングに依頼するのがおすすめです。形態素解析は、オープンソースや無料で活用できるツールがあります。 そのため、導入コストよりはツールを効果的に応用できる人材にきちんとコストをかけることが重要といえるでしょう。