つい「自然言語処理」のことを書いてしまったので、さらに言いたくなった・・・

もし、次のような問題が与えられたら、あなたならどうしますか?

「あるブログサイトがあります。プロフィールに性別は書いてありません。ブログ作者が男か女かを推定するプログラムを作成しなさい。」

プログラムを書かない人、書く人でも統計処理を知らない人なら、たぶん次のように考えるだろう。いわゆる「規則ベース」の手法である。

・「〜かしら」など、女性が使う表現が多ければ女
・「ダイエット」、「化粧品」など女性が好む話題のキーワードがあれば女

など、判断基準(推論規則)を複数個設定し、それぞれに重みを付けて総合的に判断する。

もちろん、この方法が悪いわけではない。昔、人工知能が流行していたときには、この手法が主流だった。

一方、「統計ベース」の手法では、次のように行う。

あらかじめ性別がわかっているブログを大量に集める。データをなんらかの方法で数値化し、「男のブログ集合」と「女のブログ集合」をモデル化しておく。ある性別不明なブログデータも同じ方法で数値化し、どちらの集合に属している確率が高いかを判定する。

一番単純だが、テキストの文字種統計だって役に立つ。たぶん、「ひらがな」の頻度が高いのは「女のブログ集合」だろう。

(もちろん、「性別がわかっていないブログ」を大量に集めても可能であることは知っているが、そこはつっこまないでほしい、専門家の方へ)

注意してほしいのだが、「規則ベース」、「統計ベース」のどちらを使おうが、必ずしも正しい結果がでるわけではない、ということだ。「〜かしら」を多用する男性や、漢字大好きの女性だっている。そもそも性別をごまかしているネカマや、性同一性障害の人もいる。「規則ベース」の場合、「規則」が不十分だと誤りを犯す危険性が高い。同様に、「統計ベース」の場合、集めたデータが少なかったり、数値化が適切でない場合に間違った判定を下すだろう。

「規則ベース」と「統計ベース」はけっして相反するものではなく、うまく組み合わせれば、より精度を高くすることができる。当たり前だ。ところが、少なくとも日本の「自然言語処理」の世界では、「規則ベース」側に立つ人(今は非主流)は「統計」を毛嫌いするし、「統計ベース」側に立つ人(今の主流)は「規則」をインチキ呼ばわりする。そんな実りのない喧嘩をしている間に、国や企業は貧乏になり、研究費が抑えられ、技術レベルも中国や韓国に追い抜かれようとしている(まだ抜かれていないと信じたいが)。まったく嘆かわしいことだ・・・

参考資料:
http://www.jaist.ac.jp/jaist-coe/jpn/conferences/seminars_list/is_seminars/is2004_05.html