Savyエンジンの説明

db4o2011-04-15

本日開催されたTechCrunch JapanによるTechlosion。何も受賞すること無く終わったMusavyでしたが、パーティーTwitter、その後の記事などでは、結構な反響をいただいたので、CTOとして、Musavyで使っているSavyエンジンの何がすごいのか、技術的な解説をプライベートに行っておきます。

その前にそもそもMusavyとは何か、その概要は例えばこちらのサイトでよく批評されていますのでご参照ください。

背景

さて、あなたが何か記事を書くとき、どのように書いていますか?ひょっとして、検索でヒットされるように内容を考えて書いていませんか。

たぶん心当たりがおありではないでしょうか。でもそれって、本末転倒だと思いませんか?

Googleが強くなりすぎたのかもしれません。今ではウェブ上のコンテンツは、検索されやすい王様、Q&Aに制圧されつつあります。だってしょうがありません、どうしたってQ&A(もしくはそれに類似する記事)がアルゴリズムで上に来てしまうんですから。Demand Mediaはそこに目をつけて成功し、今では出版業界の将来像を示したとまで考えられています。

ブレイクしつつあるQ&AサイトのQuoraはデータベース技術だけで運用しています。複雑な検索エンジンなんていらないでしょうね。だってQ&Aは2、3のキーワード(タグ)で表現、検索可能ですからね。

でも、私が質が高いと考えるコンテンツは、いわゆる新聞社のOpinionのような、うまく理解されていないものに一定の解釈方法を与えてくれるものです。残念なことに、こういう性質の記事は、キーワード検索では上位に来ないんです。どの単語でもそれに特化した記事が上位に来てしまいますから。

じゃ、検索する単語を増やそうとやってみるとさあ大変。単語が増えるほど検索結果が分け分からなくなってしまいます。

これは言ってみれば言論統制言論の自由を侵害されているとさえ言えるわけです(ドンと机をたたいて立ち上がる勢いで)。

そこで、私はそうしたOpinionを検索できるエンジンを設計、開発することにしたわけです。

Savyエンジン

Savyエンジンの特徴は、「話題+視点」認識です。

ある記事の「話題」を認識することで、検索の入力で使われなかった同じ話題の単語も確率的にカバーするので、特定の単語に引っ張られすぎない性質があります。ただこれだとその記事、または読者の視点が抜け落ちてしまうという欠点があるので、そこをDebate ThemaやOpinion Commentによって補足します。言い方を変えると、ある「話題」を特定の「視点」で捉えることができます。

さらに「視点」をいろいろ変えてみると、それに応じた記事が引っ張られてきますから、「話題」を眺めるように捉えることが可能になります。

これを実現するには、従来のキーワード検索で使われていたアルゴリズムはあまり向いていません。その代わり、複雑な確率分布を表現できる方式、Bayesian Networkを駆使しています。最終的に話題と視点はJoint Probabilityとして数式で表現され、確率によってランキング化されています。


さて、今回の反響を受け、Savyエンジンを楽しめるようにMusavy-α版を近日リリースしようと考えています。今後の予定などはこちらでどうぞ。