logo

ソーシャルグラフとは何か? エッジとノードから考える

山崎徳之(ゼロスタートコミュニケーションズ)2008年02月07日 17時04分
  • このエントリーをはてなブックマークに追加

 「Social Graph」という概念が2007年末から注目を集めています。

 ブログやSNS、ソーシャルブックマークなどの、ユーザーがネット上で行動し、それが記録されるサービスが登場し、いまやネットのコンテンツのかなりの部分を占めるようになってきていますが、ネット上に存在するデータが増えれば、これを分析するというのは自然な流れと言えるでしょう。

 Social Graphについては、GoogleのBrad Fitzpatrick氏が昨年公開した文章が、現時点でのいわゆるリファレンスとなっています。

 ではまずここで、Graph(グラフ)とは何かについて考えてみましょう。

 グラフというのは、節(ノード)と枝(エッジ)の集合で構成されるされるものです。日本語でグラフというと、折れ線グラフや棒グラフ、円グラフなどを思い浮かべるケースが多いと思いますが、本来のグラフというのはデータの構造の表現や解析に使用されるものです。

 簡単に言えば、「点と線でデータを表現するもの」と言えるかと思います。

 例えば、mixiのマイミクの関係はグラフとして表現できます。また、ワールドワイドウエブ(WWW)のリンクの関係もグラフで表現できる例です。プログラムでもグラフという考え方は使われます。

080206_chart3.jpgグラフの例(Wikipediaより)

 一方でBerkeley DBなどのデータベースはツリー(木)というデータ構造を持っています。ツリーはグラフの一種で、特にループ(閉回路)がないものをツリーと言います。

080206_chart2.jpgツリーの例(Wikipediaより)

 ネット上のコンテンツはリンク、いわゆる人、コンテンツの結びつきを元にしているものが多いですが、これらは原則グラフとして表現することが可能です。そしてこれはネット上だけのことではなく、現実世界においてもリンクはあらゆるところに登場します。

 リンクという言葉を言い換えれば、これは「関係」と表現することができます。親子、夫婦、兄弟というリンク、会社と社員というリンク、組織というリンク、ネットワーク、電話、線路、道路、住所など、実に様々なリンクがあります。ヒト、モノ、情報というものはグラフで言えばノードで、リンクがエッジということになります。

 現実の世界には、構造、もしくは系というものがあります。この構造はリンクによって決定されています。この、社会における構造をグラフで表現するとそれはソーシャルグラフであると言えます。

 そして、先程述べた通り、現在ではネットに相当の行動の記録、いわゆる行動履歴が蓄積されていますが、この行動履歴こそはネット上におけるリンクの情報源ですから、これを分析すればリンクとしての情報を浮かび上がらせることができ、その量が十分豊富であれば、ネット上に一つの社会を形作ることができるようになります。

 Brad Fitzpatrick氏言うところのSocial Graphというのはいわゆる人の関係についてのグラフですが、人に限定するだけではなくモノ、情報までも取り込んでも良いというか、ソーシャル=社会と考えれば取り込んだほうがより社会として完成していくとも言えます。

山崎徳之株式会社ゼロスタートコミュニケーションズ 代表取締役社長

アスキー、So-net、ライブドアなどでシステム設計、構築、運用を行う。2003年9月にシリコンバレーにVoIPの開発会社であるRedSIP Inc.を設立、CEO就任。2006年6月にゼロスタートコミュニケーションズを設立、代表取締役社長就任。Software Designで「レコメンドエンジン開発室」などの連載をしている。

-PR-企画特集