Transcript
Page 1: Twitter User Recommendation

@americiumian 2012.10.27

TwitterでのUser Recommendation @TokyoWebmining#23

Page 2: Twitter User Recommendation

本日の概要

2

自己紹介・発表の目的 (1 slide)

なぜTwitterユーザ推薦? (3 slides)

Twitterユーザ推薦方式の紹介 (20 slides)

どのように評価するか? (5 slides)

まとめ (1 slide)

付録・参考文献

Page 3: Twitter User Recommendation

自己紹介・発表の目的

3

@americiumian

チーズケーキとかまぼこの ある大学の情報系院生

学部時代はネットワーク トラヒック制御の研究

現在はTwitterを対象とした レコメンデーションの研究

Twitterユーザ推薦の概要をつかんで頂く

目的・アイデア・手法の概要・結果に絞って説明します

詳細は各論文へ

発表目的

Page 4: Twitter User Recommendation

Twitterとは

Twitterから情報を得るには

ユーザ推薦の何がうれしいか

なぜTwitterユーザ推薦? 4

Page 5: Twitter User Recommendation

Twitterとは

5

Twitter

SNSの一種

リアルタイムで情報の収集・発信・共有・コミュニケーションを行うマイクロブログサービス

特徴

1 tweetは140字以内

登録ユーザ数は5億人以上 (2012年7月) [2]

1日のtweet数は3億4000万以上 (2012年3月) [1]

情報インフラとしての役割 [1] http://jp.techcrunch.com/archives/20120321six-year-old-twitter-now-has-140m-active-users-sending-340m-tweets-per-day/

[2] http://jp.techcrunch.com/archives/20120730analyst-twitter-passed-500m-users-in-june-2012-140m-of-them-in-us-

jakarta-biggest-tweeting-city/

Page 6: Twitter User Recommendation

Twitterから情報を得るには

6

follow

他ユーザのtweetを見ることができるようにすること

-er : 自分をfollowしているユーザ

-ee : 自分がfollowしているユーザ

friendとも

Search

クエリを含む最新tweetを検索

最新1500件 or 最新1週間分に限る

ノイズも多い

A B

follow

Page 7: Twitter User Recommendation

よいユーザが推薦できると何がうれしいか

7

Twitterでしか得られない情報を効率的に得られる

キーワードで探すとノイズが多い+API制限

followすると今後もその話題についての情報が得られる

影響力のあるユーザが分かれば宣伝してもらえる

ソエンド

qrustスコア(影響力スコア)の高いユーザ に対し,宣伝ツイートをしたらクーポン発行

Klout

Kloutスコア(影響力スコア)が高いユーザ に対し,空港のラウンジ無料招待

Page 8: Twitter User Recommendation

よいユーザとは?

目的別ユーザ推薦法

Twitterユーザ推薦法の紹介 8

Page 9: Twitter User Recommendation

例えば

一概には決められない

有名人を推薦すべき?

同じ会社の人を推薦すべき?

自分と似た傾向のつぶやきをする人を推薦すべき?

よいユーザとは?

9

vs

どのようなユーザを推薦したいか

決める必要がある

Page 10: Twitter User Recommendation

ではどんな研究があるのか?

10

総合的に影響力の高いユーザを推薦

TwitterRank

自分と似たユーザを推薦

属性伝播に着目した推薦

ある話題について影響力の高いユーザを推薦

TURKEYS

実際の友達を推定して推薦

Flap

Page 11: Twitter User Recommendation

ではどんな研究があるのか?

11

総合的に影響力の高いユーザを推薦

TwitterRank

自分と似たユーザを推薦

属性伝播に着目した推薦

ある話題について影響力の高いユーザを推薦

TURKEYS

実際の友達を推定して推薦

Flap

Page 12: Twitter User Recommendation

TwitterRank

12

目的

総合的に影響力の高いユーザを推薦する

手法のアイデア

ユーザは同じトピックを共有するユーザをフォローしやすい

どのトピックをつぶやきやすいか調べる

各トピックで影響力の高い人を見つける

リンク解析手法を適用する

総合して,影響力の高い人を見つける

重み付き和を求める

Page 13: Twitter User Recommendation

手法概要

13

1. Tweetを収集 2. LDAを用いて

トピックを抽出

3. 各ユーザ,どのトピックの

発言が多いか調べる

4. 3の解析を元に

JSダイバージェンスで

ユーザ間の類似度を測る

5. 各トピックについて

フォロー関係グラフを構成する

重みは類似度とtweet数を考慮

PageRankでスコアリングする

𝑟𝑡𝑃𝑅𝑡

6. トピック頻度で

重み付けして

スコアリング

Page 14: Twitter User Recommendation

結論

14

実験結果

影響力のある人物を抽出できた(定性的評価)

以下の手法に比べ,良い結果を出した フォロワー数

フォロワーグラフにおけるPageRank

トピックの頻度を考慮しないTwitterRank

課題

“follow”の理由を推測して分類する必要がある

(tweet数が多いほどよいユーザとは限らない)

(botに弱い)

Page 15: Twitter User Recommendation

ではどんな研究があるのか?

15

総合的に影響力の高いユーザを推薦

TwitterRank

自分と似たユーザを推薦

属性伝播に着目した推薦

ある話題について影響力の高いユーザを推薦

TURKEYS

実際の友達を推定して推薦

Flap

Page 16: Twitter User Recommendation

属性伝播に着目した推薦

16

目的

同じ興味,所属のユーザを推薦する

*この論文では,同じ所属のクラスタを発見するにとどまる

手法のアイデア

ユーザは同じ属性を持つユーザをフォローすることが多い ある大学の人は同じ大学の人をフォローしやすい

ある属性を持った多くの人にフォローされていれば, その人も同じ属性を持っているのでは? 属性が伝播している

同じ属性を持つユーザで,フォローしていない人を推薦

Page 17: Twitter User Recommendation

手法概要

17

1. ターゲットユーザがfollowしているユーザセット(第一世代)を得る

2. 第一世代がn人以上followしているユーザセット(第二世代)を得る

3. 2を繰り返すことで第m世代までの

ユーザセットを得る

属性の伝播とは

ある属性を持つユーザn人以上にfollowされている時,属性が伝搬

している,と判断する

Page 18: Twitter User Recommendation

結論

18

実験

あるユーザにfolloweeを属性別で分類してもらう

そのユーザセットを元に,属性伝播の基準(n)や世代数(m)を変えてグラフを構成

実際に属性が伝搬しているかどうかターゲットユーザに判断してもらう

同じ属性のコミュニティを発見することができた

課題

botや有名人アカウントに影響されやすい

属性の規模に応じて,nやmを決める必要がある

Page 19: Twitter User Recommendation

ではどんな研究があるのか?

19

総合的に影響力の高いユーザを推薦

TwitterRank

自分と似たユーザを推薦

属性伝播に着目した推薦

ある話題について影響力の高いユーザを推薦

TURKEYS

実際の友達を推定して推薦

Flap

Page 20: Twitter User Recommendation

TURKEYSで用いる Twitterの機能

20

retweet (RT)

あるユーザのtweetを、本文を変えることなく、 引用者情報を付加して再投稿すること(情報の共有)

reply (@...)

他のユーザとの会話や言及

会話のchainを辿れる

Page 21: Twitter User Recommendation

Twitter User Rank using KEYword Search

21

目的

ある話題について影響力のあるユーザを推薦する

手法のアイデア

ある話題に関して,価値のあるRTやreplyをしている ユーザは,followする価値がある

グラフを構成し,影響力のあるユーザを推薦する

リンク解析手法

Page 22: Twitter User Recommendation

手法概要

22

クエリ クエリを含むtweet

+それに対するreply tweet/Retweet, replyしたユーザ

Tweet Count Score(TC) 1. あるユーザのtweetが 含まれる割合を計算

User Influence Score(UI) 1. tweetがユーザに与える影響力を表す,

(Re)tweet 関係を加味した隣接行列を作る 2. ユーザがtweetに与える影響力を表す

retweet,reply関係を加味した隣接行列を作る 3. HITSに似た手法を用いてスコアリング

𝑇𝑈𝑅𝐾𝐸𝑌𝑆 𝑈 = 𝑇𝐶(𝑈)𝑤 × 𝑈𝐼(𝑈)1−𝑤

Page 23: Twitter User Recommendation

結論

23

実験結果

以下の手法よりもよい結果

tweet数

follow関係

ユーザ同士の関係のみを考慮したTURKEYS

課題

とてもポピュラーなキーワードには弱い

論文中では“福島”

tweetのテキストを考慮する必要がある

Page 24: Twitter User Recommendation

ではどんな研究があるのか?

24

総合的に影響力の高いユーザを推薦

TwitterRank

自分と似たユーザを推薦

属性伝播に着目した推薦

ある話題について影響力の高いユーザを推薦

TURKEYS

実際の友達を推定して推薦

Flap

Page 25: Twitter User Recommendation

Friendship and location analysis and prediction

25

目的

実際の友達関係を推定

ユーザの位置推定

手法のアイデア

同じような語彙を使う人は友達の可能性が高い

近くに長い間いる人は友達の可能性が高い

tweetの位置情報を用いる

Page 26: Twitter User Recommendation

手法

26

1. tweetの語彙類似度

を用いてユーザ間の

類似度を計算

2. tweetの位置情報

を用いて,同じ場所に

いた度合いを計算

𝑇(𝑢, 𝑣) 𝐶(𝑢, 𝑣)

3. どの程度followeeが

かぶっているかを計算

𝑀𝐸(𝑢, 𝑣)

決定木を用いて学習

Page 27: Twitter User Recommendation

結論

27

実験方法

tweetから”@***”は除いて実験した

フォロー関係の一部を隠して,推測

実験結果

50%のエッジを隠しても上手く動いた

全てのエッジを隠してもある程度動いた

課題

友達関係推測と位置推測の組み合わせ

(位置情報付きtweetが多くないと使えない)

Page 28: Twitter User Recommendation

手法のまとめ

28

TwitterRank 属性伝播法 TURKEYS Flap

目的とするユーザ 総合的影響力のあるユーザ

同属性のユーザ ある話題で影響力のあるユーザ

実際の友達

ユーザからの入力 なし フォロー関係 クエリ tweet情報

フォロー関係

対cold-start性 ◯ × ◯ ×

注意すべきこと tweet数,フォローの信頼性

フォロー先が同属性とは限らない

一般語への対処 位置情報付ツイートの量

Page 29: Twitter User Recommendation

ユーザの評価は難しい

個々のユーザを評価 主観評価

ユーザによる評価

ランキング全体を評価 DCG

どうやって評価する? 29

Page 30: Twitter User Recommendation

ユーザ推薦の評価は難しい

30

follower数が多いとよい?

たくさんfollowして,フォロー返しを待てば, follower数は増やせる

Webページの被リンク数とは異なる

tweet数が多いとよい?

情報の発信量は多いが,ノイズが混じる可能性も高い

Page 31: Twitter User Recommendation

個々のユーザの評価 – 主観評価

31

概要

推薦されたユーザのtweetを実際に見て評価する

利点

手法のどこが悪いか発見しやすい

手軽に評価できる

欠点

元となる ユーザ/クエリ に依存しやすい

自分の手法にバイアスがかかる(?)

Page 32: Twitter User Recommendation

個々のユーザの評価 - ユーザ評価

32

評価方法

推薦ユーザを見せ,質問にn段階で答えてもらい,評価 ”フォローしたいか”

”目的に沿ったユーザか” etc...

同様の対抗手法がある場合,同じ条件で推薦を行い, 手法名を隠してユーザに見せ,同様の質問で評価

利点

手法の優位性を示しやすい

欠点

手間がかかる

Page 33: Twitter User Recommendation

ランキング全体の評価

33

DCG(Discounted Cumulative Gain)

0. システムはランク付けされたユーザリストを出力

1. 何らかの指標を用いて全ユーザに関連度Rを付与

2. 以下の計算式で,𝑝位までの結果に対するDCGを計算

𝐷𝐶𝐺𝑝 = 𝑅1 + 𝑅𝑖𝑙𝑜𝑔2𝑖

𝑝

𝑖=2 𝑅𝑖: 𝑖位のユーザの関連度

nDCG(Normalized Discounted Cumulative Gain)

DCGを,理想的な順位(スコアの降順の時の順位)の時のDCG(IDCG)で正規化したもの

nDCG =𝐷𝐶𝐺𝑝

𝐼𝐷𝐶𝐺𝑝

Page 34: Twitter User Recommendation

DCGの具体的な計算例

34

𝐼𝐷𝐶𝐺 = 3 +3

𝑙𝑜𝑔22+2

𝑙𝑜𝑔23+1

𝑙𝑜𝑔24+1

𝑙𝑜𝑔25= 8.193

A B C D E

関連度 3 3 2 2 1

D B C E A

𝐷𝐶𝐺5 = 2 +3

𝑙𝑜𝑔22+2

𝑙𝑜𝑔23+1

𝑙𝑜𝑔24+3

𝑙𝑜𝑔25= 8.054

関連度 2 3 2 1 3

𝐷𝐶𝐺5 = 3 +1

𝑙𝑜𝑔22+3

𝑙𝑜𝑔23+2

𝑙𝑜𝑔24+2

𝑙𝑜𝑔25= 7.754

A E B D C

関連度 3 1 3 2 2

理想

手法1

手法2

正規化

𝑛𝐷𝐶𝐺 = 0.983

正規化

𝑛𝐷𝐶𝐺 = 0.946

関連度3 : すごく関係ある

関連度2 : 少し関係ある

関連度1 : 不適切

Page 35: Twitter User Recommendation

まとめ

35

なぜTwitterユーザ推薦?

興味のある情報が得られる

商品の宣伝にも

何を目的とするか,が大事

目的に応じてアルゴリズムは異なる

評価は難しい

個々の評価

ランキング全体の評価

Page 36: Twitter User Recommendation

付録1. Twitter研究の主なトピックまとめ

36

ユーザ推薦

評判分析

実世界の動向(株価・売上)の予測

ユーザの属性推定

トピック同定

トレンド分析

自動要約

情報の信頼性評価

Social sensorとしての利用

緊急時のコミュニケーション手段としての利用

Tweet用のテキスト処理ツールの開発

Page 37: Twitter User Recommendation

付録2. Twitterアカウントの増やし方

37

1. gmailアカウントを作る

[email protected]

2. example+(任意)@gmail.comで登録

未登録のアドレスとして扱われる

全て[email protected]で管理可能

Page 38: Twitter User Recommendation

今回紹介した論文

38

総合的に影響力の高いユーザを推薦

Weng, J.; Lim, E.-P.; Jiang, J.; and He, Q. 2010. TwitterRank:Finding Topic-Sensitive Influential Twitterers. In ACM WSDM.

自分と似たユーザを推薦

康大樹, 島田諭, 関洋平, 佐藤哲司. 属性伝播モデルを用いたマイクロブログのフォロー先推薦法. DEIM Forum 2011,No. A1-3, 2011.

Page 39: Twitter User Recommendation

今回紹介した論文

39

ある話題について影響力の高いユーザを推薦

Tomoya Noro, Fei Ru, Feng Xiao, Takehiro Tokuda Twitter User Rank Using Keyword Search. 22nd European Japanese Conference on Information Modelling and Knowledge Bases, pp.48-65. 2012 Jun

実際の友達を推定して推薦(+ユーザの位置推定)

Sadilek, A.: Kautz, H.; and Bigham, J. P. 2012. Finding your friends and following them to where you are. In Proc. of the fifth ACM int’l conference on Web search and data mining.

slide : http://www.slideshare.net/nokuno/finding-your-friends-and-following-them-to-where-you-are-wsdm2012

Page 40: Twitter User Recommendation

手法の参考文献

40

LDA

[Blei+2003] Latent Dirichlet allocation, JMLR

latent Dirichlet allocation - 機械学習の「朱鷺の杜Wiki」

LDA入門

JSダイバージェンス

Jensen-Shannonダイバージェンス - 機械学習の「朱鷺の杜Wiki」

PageRank, HITS

Google PageRankの数理 ―最強検索エンジンのランキング手法を求めて―

Googleページランクの数理1【アイマス教養講座】

Page 41: Twitter User Recommendation

その他参考文献

41

ユーザ推薦以外のTwitter研究

マイクロブログマイニングの現在

他のランキングの評価手法

Web Data Mining

http://www.cs.uic.edu/~liub/WebMiningBook.html


Top Related