[研究室]自然言語処理系の輪講で情報検索と機械学習のパラダイムシフトについて思いを馳せた

自然言語処理とPrologについての本を輪講しています.
ただ通常の輪講という感じではなくて,プロジェクト/問題ベースを基盤にした輪講です.
僕はメインの参加者じゃないので聞いているだけですが,自然言語関係の人は
一人一人プロジェクト課題が与えられ,その周辺について参加者で議論します.

Natural Language Processing for Prolog Programmers
Michael A. Covington
Prentice Hall
売り上げランキング: 961277

前回と同じ章をしていたので,テンプレートマッチングとキーワード解析についての話をしていました.
テンプレートマッチング(Template Matching)では型となる自然言語の枠を複数用意しておいて
入力された自然言語の文が当てはまるかどうか?ということを見ています ((例えば英語なら,粗い分類のテンプレートとして5文型がありますね.第1文型SV,第2文型SVC,第3文型SVO,第4文型SVOO,第5文型SVOCだっけ?)).
その際,余計な情報や表現の微妙な揺れをSimplification Ruleで落とすというのが処理の流れでした.
そしてその残った文に変換のための規則TRを用いて文を変換していくという話.

自然言語の文 → [Simplification Rule] → [TR] → 変換された文
I see a movie → [SR] I see movie (冠詞を落とした) → [TR] → 私は映画を見る

一方今日の輪講で出てきたのはキーワードアナリシス(Keyword Analysis)
一般的な用語が分からないのであれだが,個人的には検索全盛時代の手法の考え方に近いものだと思った.
キーワードアナリシスではSimplification Ruleを用いないで,TRを用いる.

自然言語の文 → → [TR] → 特定の用途向けに変換された文

詳細な意味の解析などはせずに,とりあえず特定の用途に向けてTRを設計するように感じた.
考え方はドメイン特化言語DSLみたいだ.

ドメイン固有言語 – Wikipedia

キーワードアナリシスの例で出ていたのは,背景にデータベースがあるときの自然言語処理.
といっても何かするわけではなく,私たちが自然言語でデータベースに問合せするときを想定している.
このとき,その自然言語の細かい所は気にする必要がないので,例えば

Where … Who … Which …

のようないわゆる5W1Hの部分を解析するのが大切になる.
他にもデータをどうしたいのか?(Print / Show / Return / ,,,)などの単語も大切になる.

このように,タスクが限定されていて操作/処理が限定的なら細かい意味解析はしなくてもよい.
そのときキーワードだけに注目して文の解析を行う,というのがキーワードアナリシスらしい. ((僕が勝手に書いた.真の定義はどこにあるのだろうか?))
このようにキーワード中心の処理/検索というのは,Google以降のデータ/検索至上主義の時代の考え方に
とても似ている点が多いと僕は思った.

実際,情報学的には検索/キーワード中心の処理が流行っていると思う.
つまりデータが大量にあるんだから,そこ検索すればいいよね,型とか不要だよね,という考え方.
(本当にそう思ってるとかはないよ…たぶん)
結局テンプレートマッチングにしてもキーワードアナリシスにしてもあれだが,最初に規則を
ある程度決め打ちしなければならないのが欠点というか手法自体の欠点だったのだと思う.
そのような固い部分があるからこそ,古い時代の手法のように思えるのだろうか.

しかし最近の機械学習ブームのおかげで,この二つの手法のような対比の構造は壊されたのではないか.
機械学習は既に,データから規則を抽出する学習を行うための手法を提案した.
検索/キーワード全盛の時代は,世界中に超大規模なデータベースを構築し,それらのデータに
高速にアクセスし,必要なデータを探し出し,利用するための手法を構築した.

一昔前の本に載っていた二つの手法,テンプレートマッチングとキーワードアナリシスは
元々は別の手法として,対比のために書かれていたものかもしれないけれど,
大量な情報の蓄積,高速な情報検索の技術,そして人間の知能に迫ろうとした機械学習という
3つの技術を上手く用いることが出来る現代においては,データを上手く処理するために使える
武器の1つになるのかもしれない.

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です