Pathtraq

November 11, 2010

アクセスログからアテンション(注目情報)をデータマイニングする手法について

多数のユーザーの行動記録からアテンション情報(注目されているデータが何か)をデータマイニングしたいというのは、大量のデータを扱っているウェブサイトにおいては自然と出てくる要求です。そこで、先月末にサービスを終了したサービス「パストラック」において使用していた、アクセスログから注目度(人気度)の高いウェブページや人名等のキーワードを抽出するためのアルゴリズムを紹介しておきたいと思います

たとえばはてなブックマークのような、ユーザーの能動的な行為(「ブックマークする」という作業)から注目情報を抽出するのは決して難しいことではありません。それは、直近の一定期間内のブックマーク数=注目度、という前提が上手に機能するからです。現に、はてなブックマークの人気エントリーは、最近24時間程度の期間内にブックマークしたユーザー数の多い URL を降順で並べているように見受けられます。

しかし、アクセスログからアテンション情報をマイニングする場合に、直近の一定期間内のヒット数を使うことはできません。単純にそうしてしまうと、例えばパストラックの場合は Yahoo! JAPANGoogle のトップページが常に注目情報のトップに表示されることになってしまいます。これは、ウェブの構造のハブとなっているページは常に大量のアクセスを集めているためです。

単純な回避策としては、たとえば過去24時間以内に初めてアクセスされた情報についてのみ、そのヒット数によってランキングする、という方法もあります。しかし、この手を使ってしまうと、たとえば昔から存在する URL へのアクセスが急増した場合注1に取りこぼしが発生してしまうことになります。また、「人気のキーワード」のような機能を実現することまできません注2

そこで、パストラックでは、運動エネルギーのアナロジーを用いた指数を使って注目度のランキングを行っていました。具体的には以下の式のとおりです。

注目度指数 = 単位時間内のヒット数 × (単位時間内のヒット数/長期間のヒット数)2

単位時間は、「注目」データのマイニング機能については最近6時間、「人気」データのマイニングについては最近24時間とし、除数である「長期間のヒット数」については、時間帯や曜日による揺れを省く目的から、約7日間としました。

そして、「注目」あるいは「人気」のウェブページ (URL) を表示する場合は、アクセスが記録されたウェブページについて、この注目度指数でソートした結果を降順で表示。キーワードによる「注目」あるいは「人気」情報の検索については、TF/IDFのスコアに対して注目度指数を乗算した値による降順ソート結果を表示していました。

また、「人気のキーワード」機能については、過去1日以内に一定以上のヒット数を記録したウェブページを形態素解析し、各単語(あるいは人名)について注目度指数によるランキングを行い、上位の8ワードを選択することで、話題になっている事象や人名を抽出していました。

と書くと、かっこいいのですが、上の式には1点問題がありました。それは、運動エネルギーのアナロジーにおいて本来は別の値を使うべき質量と速度の項の両方に、単位時間内のヒット数を使っている点です。このままだと、例えば、毎日1000ヒットを記録するウェブページの注目度指数 (24時間) は約 143 になる一方、今日初めて登場し、いきなり100ヒットを記録したウェブページの指数は 100 になり、前者の方が注目度が高いということになってしまいます。しかし実際は後者の方が、より重要ではないでしょうか。

ですので実際には、パストラックでは、累乗の指数を機能ごとに調整することで、この問題に対応していました。具体的には、ウェブページの抽出においては指数を 4 に、「人気のキーワード」機能では指数を 3 にしていました。

以上が、パストラックにおいて使用していたアテンション情報のマイニングアルゴリズムです。私はデータマイニングについては全くの門外漢ですので、きっとより良い方法があるのだろうとは思います。ただ、この式は簡便・高速注3でパラメータが少ないため調整も簡単ですし、パストラックでは十分満足する結果が得られていましたので、他のサービスにおいても使える可能性は高いと思います。ご参考まで。

注1: 参考:スラッシュドット効果
注2: キーワードや人名は、以前から存在するものが、ある時期急激にアクセスされるようになるため
注3: パストラックにおいては、事前計算のみではなくリクエストベースで注目度を計算して表示したりもしていました

October 12, 2010

パストラック(Pathtraq)、サービス終了のお知らせ

サイボウズ・ラボ : パストラック (Pathtraq)、サービス終了のお知らせ」で告知させていただいておりますとおり、2010年10月29日をもちまして、パストラックのサービスを終了することになりました。

これに伴い、パストラックのツールバーは動作を停止いたしますので、インストールされていらっしゃいます方におかれましては、お手数ですがアンインストールをお願いいたします。また、ブログパーツ、Windows用ガジェット、開発者向けAPIも動作を停止します。

利用者の皆様、中でも、ツールバー(拡張機能)をインストールしてアクセス統計の収集にご協力いただいてきました方々、ブログパーツやガジェット等関連サービスをご利用いただいてきました方々にはおかれましては、これまでの御礼をこの場を借りて申し上げるとともに、お手数をおかけすることになる点も含めまことに申し訳ありませんが、ご理解のほどお願いしたいと思います。

10月29日までは運用を継続いたしますので、残り少ない期間恐縮ですが、サービスをお楽しみいただければと思います。これまでパストラックをご利用いただきありがとうございました。

February 24, 2010

既製品の管理ツールを使わないことでウェブサービスの TCO を下げる話について hbstudy#8 で話してきた件

 昨日、hbstudy#8 で話をする機会をいただくことができたので、Nagios や Amanda といった既製品の管理ツールやバックアップツールを使わずに内製したことで「パストラック」の運用コストを下げた、という話をしてきました。

 もちろん、「既製品を使わない」というのもひとつの手段にすぎませんから、それを無闇にお勧めするつもりはありません。ただ、小回りの効くツールを組み合わせる手法にも十分な競争力があるという点、あるいはその事例として参考になれば幸いです。

 スライドはこちら。hbstudy 運営の皆様、話を聞いてくださった皆様、ありがとうございました。

July 13, 2009

パストラック (Pathtraq) のおしらせ:総選挙特集ページ開設と IE 版プラグインのバージョンアップについて

パストラック (Pathtraq) のお知らせです。

・総選挙特集ページの開設について

 明日2009年7月14日より、パストラック (Pathtraq) 上に、次期衆議院選挙の特設ページ、「総選挙特集 2009」を開設します

 総選挙特集ページは、従来からあるパストラックのリアルタイム検索機能をカスタマイズし、衆議院各会派名と「選挙」をキーワードした検索結果を一覧表示することで、総選挙に関連して、注目を集めている (アクセスが伸びている) ウェブページを、ほぼリアルタイムに可視化するサービスです。現在は、ポータルやメディア各社が開設したばかりの特集ページが上位に来ていますが、今後は、各社の新着記事や新しいブログエントリ等、新たに注目を集めたページが上位に食い込んでくると思われます。パストラックの統計に偏りがあるのは確かですが、こうした可視化によって、選挙がより身近な問題として感じられるようになればいいな、と思っています。総選挙特集について、詳しくは「サイボウズ・ラボ : パストラック (Pathtraq)、次期衆議院議員選挙に関する特設ページを公開」をご覧ください。

画面写真

・IE 版ツールバーのバージョンアップについて

 また、総選挙特集ページの開設と同時に、Internet Explorer 用ツールバーをバージョン 0.8 にバージョンアップしました。今回のバージョンアップにより、Internet Explorer 8 に対応 (User-Agent がおかしくなる問題を修正等) したほか、パストラックのログ送信機能のオンオフを全てのウィンドウで共有するように仕様を変更いたしました。Internet Explorer でパストラックのツールバーをご使用の方々には、バージョンアップをしていただければと思います。