アットウィキロゴ

Recommendation of similar users, resources and social networks...

Title

Recommendation of similar users, resources and social networks in a Social Internetworking Scenario

ABSTRACT

  • 類似ユーザやリソース、social networkを推薦する手法を提案
    • 一つのsocial networkではなく、複数のsocial networkをつないだもの(Social Internetworking)を対象としている
    • 明示的なつながりだけでなく、潜在的なつながりも考慮する。
      • 類似する興味や、類似する行動に基づく。
    • 意味的な例外を考慮する。(ユーザ、リソース、social networkの説明文?)
    • ローカルな情報だけでなく、social internetworkingにおけるグローバルな情報拡散も考慮する

Introduction

Motivations

  • ユーザは一つのSNSだけでなく、複数のSNSを利用する。
    • Social Internetworking System (SIS)
  • Open Socialとか、複数のSNSを横断的に利用できるものが出てきている。
    • SIS paradigmを実装したと言える

  • SISはいろんな良い事をもたらす
    • あるユーザに関する情報を複数のSNSから収集できれば、そのユーザに対する詳細を知ることが出来る
    • 複数のSNSを利用するユーザがより広く情報を拡散できる

  • SISを効果的に利用するのは難しい
    • SISの有効性はユーザ間の交流がより頻繁になり、多くの人々が交流に参加するほど、高まる
    • ユーザ数、リソース数が増えると、ユーザが手動で類似ユーザや欲しいリソースを探すのは現実的でなくなる。
    • SNSの数は増え続けているため、新しく、面白いSNSを人々が手動で見つけるのは面倒な作業となる。

  • これらの問題は、自動的にSISを調査し、興味のあるユーザ、リソース、SNSを見つけるツールがあれば緩和される。

  • 多くのSNSがユーザ推薦やコンテンツ推薦を実装している
    • 類似度に基づく推薦
    • 新しいSNSを推薦することはできない。

  • 既存の推薦システムはSISに応用できない
    • 1、ユーザが明示的に表している情報しか利用していない(友人関係など)
    • コンテンツの評価やコンテンツの投稿などの情報も利用することで、潜在的なユーザ間のつながりを利用することが出来る。(類似する行動をするユーザをつなぐ)
      • コンテンツにタグ付けする、評価するなどの行動は潜在的なつながりをみつけるのに役に立つ
      • 一つの行動(タグ付けだけ、評価だけ)を対象にするのではなく、複数の行動を対象として、それらをうまく合算することでよりよい精度を実現できる
      • synonymyやhomonymyを考慮する
    • 2、既存の手法は友人のオーバーラップなどのローカルな情報しか用いていない
      • SNSが大きく、全くオーバーラップがない場合などは、たとえ興味や行動が似ていても推薦されない。

General characteristics of our approach

  • 提案手法の目的は
    • 一つのSNSを対象に作られた手法をSISに拡張する
    • 上に挙げた二つの問題を解決する

  • SISを表現するモデルを定義する
    • ユーザ、リソース、SNSはノードとして表現
    • 行動やつながりはハイパーエッジで表現
    • 各ノードのプロフィールはタグ集合で表現
      • これを用いた類似度計算の際には、synonymyやhomonymyを考慮する。
    • 行動の種類は以下の四つ
      • membership: あるユーザがあるSNSを利用する
      • friendship: あるSNSにおいて二人のユーザが友人関係にある
      • posting: あるSNSにおいてユーザがリソースをポストする
      • evaluatioin: あるSNSにおいてユーザがリソースを評価する
    • 新しい行動があらわれてもフレキシブルにモデルに追加できる

  • ユーザの類似度を計算する時は、一度に一種類の行動を対象に、グラフを構築する
    • friendshipが選ばれた時は、ユーザノードとfriendshipエッジでグラフが構築される

  • Katz coefficientを導入することにより、ユーザ類似度はグローバルパラメータになった
    • 共通の友人というローカルな情報ではない
    • 共通の友人が全くいなくても類似すると見なせる

The proposed SIS model

  • ユーザはSISに登録し、興味のあるSNSを閲覧することが出来る。
    • ユーザのIDはSIS上で一意
    • タグ集合がユーザのひもづけられ、ユーザの興味を表す

  • ユーザがリソースをポストする
    • リソースのIDはユーザに対して一意
      • 二つのリソース(別のユーザにポストされた)が同一であるかを決定するのは難しいため
    • タグ集合がリソースにひもづけられ、リソースのコンテンツを表す

  • ユーザがリソースを検索する
    • クエリとしてタグ集合を入力
    • あるリソースにアクセスすると、ユーザはそのリソースを評価することが出来る(スコアを与える)

  • ユーザ同士は、同意が取れればあるSNSにおいて友人になる

  • ユーザは四つの行動を取ることが出来る
    • membership: ユーザu_iがSNS skに登録する
    • friendship: ユーザuiがユーザujとSNS skにおいて友人になる
    • posting: ユーザuiがリソースrjをSNS skにおいてポストする
    • evaluation: ユーザuiがリソースrjに対してスコアv([0, 1]の実数)を割り当てる。SNS skにおいて

Definition 2.1
  • ユーザu_iはタプルD_{u_i} = <ID_{u_i}, T_{u_i}>によって表される
    • ID_{u_i}はユーザu_iのID。SIS内でユニーク
    • T_{u_i} = \{t_1, t_2, ..., t_l\}はユーザu_iの興味を表すタグ集合。
      • ユーザu_iがリソースを検索したり、ラベリングしたりするのに頻繁に使ったタグ

Definition 2.2
  • リソースr_jはタプルD_{r_j} = <ID_{r_j}, UserID_{r_j}, T_{r_j}>で表される
    • ID_{r_j}UserID_{r_j}はリソースr_jとそれをポストしたユーザのIDを表す。ペア<ID_{r_j}, UserID_{r_j}>でSIS内でユニーク
    • T_{r_j} = \{t_1, t_2, ..., t_m\}はリソースr_jのコンテンツを表すタグ集合

Definition 2.3
  • SNSs_kはタプルD_{s_k} = <ID_{s_k}, T_{s_k}>で表される
    • ID_{s_k}s_kのID
    • T_{s_k}=\{t_1, t_2, ..., t_n\}はSNSs_k内で頻繁に用いられるタグ集合

提案モデルは少ない労力で新しい種類のユーザアクションを追加できるという意味でフレキシブル

タプルD_{u_i}と、ユーザu_iに関連するアクションをまとめたものをプロフィールP_{u_i}と呼ぶ

Recommendation of similar users, resources and social networks

ユーザに類似するユーザやリソース、SNSを推薦するアプローチを提案する

ノードの類似度の計算はひもづけられているタグ集合のジャッカード係数の計算による
J(A,B) = \frac{|A \cap B|}{|A \cup B|}
ジャッカード係数には以下の二つのデメリットがある
  • synonymyやhomonymyを考慮できない
  • ユーザアクションを使えない

提案手法では、タグ集合とユーザアクションの両方を用いる。

Recommendation of similar users

タグとアクションを一つの枠組みで扱うために、二つのタグ集合の類似度をアクションのようなもので表現する(Virtual sharing action)
  • 2ユーザの間にsharing actionがあるということは、それらのユーザがある程度の割合のタグを共有しているということ
  • sharing actionはハイパーグラフにハイパーエッジを追加することで表現する

ユーザアクション(membership, friendship, posting, evaluation, sharing)を表現するUAction Graph(ハイパーグラフでない)を定義する
  • UActをアクションタイプとし、アクションタイプごとにUAction Graphを定義する
  • あるアクションタイプのUAction Graph内のエッジには、重みがつけられる。
    • ユーザuiとul間のエッジの重みはw^{UAct}_{il} = \frac{num_{il}}{den_{il}}で定義される。UActの種類によって、numilとdenilは次のように定義される。
      • membership: numilはuiとulが共通して参加しているSNSの数。denilはuiとulが参加しているSNSの数(和集合の要素数)
      • friendship: numilはuiとulが友人になっているSNSの数。denilはuiとulが共通して参加しているSNSの数
      • posting: numilはuiがポストしたリソースを少なくとも一つとulがポストしたリソースを少なくとも一つを表すトピックの数。denilはuiもしくはulがポストしたリソースを表すトピックの数。
      • evaluation: w_{il} = \frac{\sum_{r_j \in RSetVal_{il}}1-|v_{ij}-v_{lj}|}{|RSetVal_{il}|}RSetValilはuiとulが共通して評価したリソースの集合。vijはuiがrjに与えたスコア。
      • sharing: w_{il} = J^{*}(T_{u_i}, T_{u_j})

タイプUActにおける、ユーザuiとulのアクションの類似度usim_{il}^{UAct}を計算する
  • UAction Graphを隣接行列で表現する(q×q行列; qはユーザ数)
  • 2ユーザのrefular equivalenceはそのユーザに再隣接するユーザ群が似ている時に大きくなる(自分の友人集合が似てるユーザ同士は似てる、とか)
  • 自分自身との類似度にはボーナスを加算するBI
  • 全てのユーザ間の類似度はq次正方行列で表現される
    • 行列はアクションタイプにつき一つ作成される

Recommendation of similar resources

ユーザとリソースとの類似度を算出する
  • ユーザ間のアクションは無向グラフで表せるが、ユーザ-リソース間のアクションは有効グラフになる
    • ユーザがリソースに何かすることはあっても、リソースがユーザに何かすることはない

有向、無向の違いはあっても、大枠はユーザ間の類似度の算出と同じ
  • ユーザ-リソース間の類似度はそのユーザが直接リソースに対して行ったアクションから算出する
  • 協調フィルタリングも使う
最終更新:2011年06月13日 17:24