Slide 1

Slide 1 text

Organic or Organized? Exploring URL Sharing Behavior (CIKM 2015) Cheng Cao*1, James Caverlee*1, Kyumin Lee*2, Hancheng Ge*1, jinwook Chung*2 Texas A&M University*1, Utah State University*2 Yoshifumi Seki Gunosyデータマイニング研究会 2015.11.26

Slide 2

Slide 2 text

概要 •  URLをSNSにシェアする行為について組織的 に行われたものか自然発生的に行われたも のかを判別したい •  分析による2つの知見にもとづいてモデルを 作った – URLの投稿行動に基づいてユーザをグルーピン グする – グループの行動によって組織的なものか、自然 発生的なものかを分類できる

Slide 3

Slide 3 text

どのようにモデル化するか •  ユーザのURLの共有行動をモデル化し、ユー ザ間の類似度を定義する •  ユーザグラフを構築し、ユーザグループを特 定する •  Organized User GroupとOrganic User Groupを 分類する特徴を得る •  分類器を作成して性能を測る

Slide 4

Slide 4 text

共有行動のモデル化 •  URLの共有は3つの要素で構成される –  URL –  User –  AcYon of PosYng •  考慮すべき3つの問題 –  すべてのURLを考慮しなくてはならない –  URLの共有におけるユーザ類似度を定義しなくては ならない –  posYng behaviorを考慮して類似度を定義する必要が ある

Slide 5

Slide 5 text

User, URL, and PosYng •  set of m users •  k different URLs posted by u_i •  all url •  each pair (u_i, v_j) is an acYon of posYng url •  n-dimension user representaYon vector U = {u1, ..., um } pui = {v1, ..., vk } V = {v1, ..., vn } ~ ui = (f(ui, v1), ..., f(ui, vn))

Slide 6

Slide 6 text

User Similarity in URL Sharing •  同じURLをお互いがたくさんシェアしていたら 類似度を高く、一方だけがシェアしていたら類 似度にペナルティを与える sim(ui, uj) = n X k=1 ln(min(f(ui, vk), f(uj, vk)) + 1 |f(ui, vk) f(uj, vk)| + 1

Slide 7

Slide 7 text

IdenYfy User Groups •  グループ •  グループを構築するためにユーザをノードと するグラフを構築する – エッジの重みを類似度にする C = {c0, ..., ck } ci \ cj = ;

Slide 8

Slide 8 text

The kNN User Graph •  一定以下の類似度の場合はエッジを貼らな いようにするとorganized userが観測できなく なる – organized userはpopularなurlをシェアしないため – organized userはその同一性からlocalに強いつな がりをもつ •  局地的なつながりを強調することが必要なの でKNNグラフを用いる

Slide 9

Slide 9 text

The KNN User Graph •  kNN Graph – 各ノードが近傍(weightが大きい)k個のノードを隣 接ノードとしてもつグラフ

Slide 10

Slide 10 text

ExtracYng User Group •  connected componentsを抽出すれば良いの だけれど2点考慮したいところがある – グループをコンパクトにしたい •  小さいcomponentは捨てる(エッジ5個以下とか) •  大きいcomponentは分解する – 分解するロジックはgeneralなものを使いたい •  louvain method(モジュラリティ使うやつ)

Slide 11

Slide 11 text

CharacterizaYon: Organized vs. Organic •  やるべきこと –  グループからfeatureを作らなくてはならない –  そのfeatureがposYng behaviorのsignalにならなけれ ばならない •  spammerたちはお互いフォローする必要もないし、 同じURLを投稿している必要もない –  tradiYonal featureでは見つけることができない •  text content, network stracture •  9つのgroup featureを提案する –  投稿したURL, 投稿時間, プロフィールを用いる

Slide 12

Slide 12 text

Posted URL-based Features •  Average PosYng Count •  URL PosYng Entropy – URLの多様さを測る指標 – organic groupはorganized groupより高い ~ pci = [uj 2~ ci puj f(~ ci, vj) = X ui 2~ ci f(ui, vj) P vj 2 ~ pc f(~ c, vj) |p~ c | H(~ c) = X vj 2~ c f(~ c, vj) P vj 2~ c f(c, vj) log f(~ c, vj) P vj 2~ c f(c, vj)

Slide 13

Slide 13 text

PosYng Time-based Features •  投稿時間は投稿者が改変することのできな い情報 •  Organized user – 同じような頻度で投稿する – 投稿間隔が短い •  PosYng Interval Median – Organizedのほうがorganicより短いと想定 •  PosYng Interval DeviaYon – Organicのほうがrandomに近い

Slide 14

Slide 14 text

Poster Profile-based Features •  OrganicなGroupのほうが多様性をもつとかんがえられる •  使うのは以下の3つ –  累計ツイート数 –  フォロワー数 –  登録日 •  Tweet Count DeviaYon –  DeviaYonが多ければ多様性があると考える •  Follower Count DeviaYon –  適宜変動するので、偽装するのが困難な値である •  RegistraYon Interval Median –  小さければorganizedなuserである可能性が高い

Slide 15

Slide 15 text

Poster Profile-based Features •  User lifespan – 登録日から最終投稿日までの期間 •  Poster Lifespan Median – 短いユーザはorganizedの可能性が高い •  Poster Lifespan DeviaYon – Randomなユーザはorganicなユーザと見込まれ る

Slide 16

Slide 16 text

ClassificaYon: Organic vs. Organized •  Random Forest •  Naïve-Bayes Decision Tree[NBTree] •  SMO •  AddiYve LogisYc Regression[LogitBoost]

Slide 17

Slide 17 text

Data •  Streaming API – 2011 Oct ~ 2013 Oct •  1.6 billion raw urls •  136 million accounts •  Url – 遷移先が等しいURLがある – 数が多いので50回以上出現したURLに限定

Slide 18

Slide 18 text

CollecYng User Group •  kをどのように決めるか? –  log|U|の近似をとる[M.Brito+1998] –  869,571 users => k=14 •  User Graph –  216,523 nodes, 3,862,116 edges –  12,251 connected components •  2,150 components(5以上) •  36 components(100以上) –  2,775 groups(192,719 users) •  40%のgroupが10以下 •  100以下が90% •  14,080が一番大きいグループ

Slide 19

Slide 19 text

CollecYng User Group

Slide 20

Slide 20 text

CollecYng User Group

Slide 21

Slide 21 text

Manual Labeling Setup •  やりたいこと – URLを分類する – グループをorganicなのかorganizedなのか評価す る •  各グループから最低5人のユーザをランダム に抽出し、プロフィールやツイートを元に organicかorganizedかを評価する •  3人の評価者に1000グループを評価させる

Slide 22

Slide 22 text

Categorizing User Group •  1000のグループから773のグループを12のカ テゴリに分類

Slide 23

Slide 23 text

RaYng a User Group •  なにを投稿しているかからRaYngする •  5段階評価

Slide 24

Slide 24 text

Analyzing Our Labeling •  986のグループにはカテゴリかraYngのどちら かがついた •  602のグループには両方ついた •  第4の評価者によって871(88.3%)が正解と判 断され、両方のものは520(86.4%)であった •  RaYngが815についていて,325(40%)が organized, 490がorganicになる

Slide 25

Slide 25 text

Analyzing Our Labeling

Slide 26

Slide 26 text

Classifying •  Data: 406/406 •  Featureは0~1に正規化 •  10-cross validaYon

Slide 27

Slide 27 text

Classifying

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

まとめ •  Organized, organicという新しい基準を作って Streamingの情報からユーザの属性を判定し ている •  予測ではない(未知のデータに対する性能の 検証が十分ではない) •  過去様々なスパム判定が提案されているは ずだがそれらとの比較がない – 本人たちはsharing研究としてそちらと分離したい ようだが、明らかにspam研究っぽい