blogを効率的にブラウズする方法はないのか?

しばらく、ネットでの情報のフィルタリングについて考えている。

blogを検索するサービスはあるのだが、いったい誰が検索したいと思っているのだろう。

他人のblogを読もうという動機は、何か思いもしなかったもの、特に面白いものに出会うためにあると思う。

そういう意味では、So-net blogのnice!は的を得ている機能だと思う。

ただね。写真のblogがほとんど上位を占めてしまっているので、素人の写真(見ると上手なのはよく分かる)を見ている暇は当方にはないのだ。

要は、nice!だけではなく、読んでみて「つまらない」と感じた物を個人的に登録しておいて、それに類似する内容のものを上位に表示しないようにする機能が、自分が欲しいのだと思った。

この話を、イケていないプログラマーに話すと、

So-net blogの共通テーマの分類を選択して、その分類のblogを表示しなければ良いのだね。」
と言って、見事に使えない機能を実装してくれそう。(大体において、コンピュータ会社の考えるソリューションはそんなものだ)

そんな事では、次世代のWebのサービスにはなりえないのだ。

内容を見て、フィルタリングして欲しいのだ。

個人的にはスパムに近い、blogはフィルタリングして欲しいのだ。

つまらないblogを読んだ時はスパムメールを受け取った時と同じ気分なのだ。

そうだ!! なら、同じ方法でフィルタすれば良いではないか?

スパムのフィルタリングの主流には、2つの方法がある。

  • 登録したキーワードを元に分類(スパムかそうでないか)
  • 中の文章の単語のパターンを元に分類する。
最近主力になっているのが、後者の方法である。ベイジアンフィルタ(ベイズ理論を元にフィルタ)を使っているものである。(他の方法もありそうだが、これしか見かけない。)

たぶん、これをメールのフィルタに最初に使ったの(厳密にはベイズ理論から逸脱しているとの批判もある)は、ポール・グレアムである。

同じ理屈で、興味があるものと、興味がないものを分類できないのだろうか?

ただ、このフィルタはスパムのフィルタとして使っているので、単語をいくつかサンプリングして判定しているだけであるので、そのままでは使えないだろう。ただ、複数の単語の出現パターンで評価すれば、結構使えるのはないかと思う。

また、スパムをフィルタするのに、メールヘッダが有効であったように、URLを解析するのは、良い方法だと思う。

この人のblogはつまらないと思えば、そのURLはフィルタリングしてしまえばよいのだろう。単純にドメイン名だけではじくと他の人のblogも読めなくなるので、サイトのディレクトリ構造を知っているフィルタでなければならない。先頭のURLだけしていして、これで始まるサイトはつまらないと登録できるだけでも十分だと思う。(ちょっと面倒くさそうだが)

ここまで、書いてみて、自分で作ればいいではないかと思えて来た。そのソフトは以下の事をする。

  1. Webをクロールして、最近のnice!の高いblogやトラック・バックが集中しているblogをリストする。
  2. そのサイトを情報を解析してDBに蓄えている統計情報を元に評価し、面白くないと判定されなかったもののURLのリスト表示する。
  3. そのサイトを読んで見た結果の入力を受け付ける
  4. そのサイトの情報を統計処理してDBに蓄える。
  5. 最初からの繰り返し。
Webをクロールする方法がよく分からないが探せばいくらでも例があるだろう。

単語の解析は、Kakashi等があるからあまり難しく考える必要はないだろう。Namazuも参考になるだろう。

統計処理が一番難しいだろう。処理そのものよりも、どのように評価すればフィルタの性能が良くなるかがポイントだ。ただ、メール・フィルタと違い誤検出などは痛くも痒くもないのが気楽な所だ。