twitter's social network analysis

  • 8,863 views
Uploaded on

twitterの関係性をfav情報を用いた無向重み付きグラフで分析してみた

twitterの関係性をfav情報を用いた無向重み付きグラフで分析してみた

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
8,863
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
38
Comments
0
Likes
14

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Rでtwitterのクラスタを あぶりだしてみた favorite機能による重み付きグラフ構造を用いた twitterの社会ネットワーク分析 Tsukuba.R#4 @y_benjo
  • 2. 自己紹介 • twitter id : y_benjo • hatena id : repose – http://d.hatena.ne.jp/repose • 春から院生 • 専門とか特にない
  • 3. • LTということで • 数式もプログラムも少なめでいきます
  • 4. Twitter
  • 5. twitterではよく「クラスタ」 とか言われます
  • 6. ITクラスタ
  • 7. 変態クラスタ
  • 8. アニメアイコンクラスタ
  • 9. 女装クラスタ
  • 10. これをどうにか分析できないか
  • 11. というわけでやってみる
  • 12. 仮説: クラスタ内で互いにふぁぼりあう
  • 13. 構想(1) • Twitterの人間関係をグラフとして扱う • その際、「どのユーザが誰の発言をfavっ ているか」を使って重み付有向グラフに してみる – fav:ある発言を「お気に入り」にいれる機能。 • 「面白い発言」への反応 – 有向グラフ:AからBにはつながっているが、 BからAにはつながっていないような、非対称 なグラフ
  • 14. 構想(2) • クラスタリングはハードクラスタリング を – ユーザがひとつのクラスタにのみ分割される – 「俺はつくばクラスタで変態クラスタだな」 などというクラスタリングは無し – フゔジゖクラスタリングだとクラスタの重複 が可能だが、触ったことが無いので
  • 15. まずはデータ収集
  • 16. はじめてのクロール
  • 17. whitelistを貰って API叩きまくる
  • 18. 最初は グラフをプロットして目視で分割
  • 19. そこでRのigraphパッケージ • install.packages(“igraph”) • 隣接行列からグラフを簡単に作れる優れ もの • plotも簡単 • Cytoscapeと組み合わせるともっと簡単 • これで勝つる!!!!
  • 20. もうちょっと真っ当にやる
  • 21. 既存研究ありすぎワロタ
  • 22. 社会ネットワーク分析 • A Clauset, MEJ Newman, C Moore: – Finding community structure in very large networks (2004) • J. Duch and A. Arenas: – Community detection in complex networks using extremal optimization (2005) • ここらへんを試してみる
  • 23. 大雑把な考え方 • なる指標を考えて、この値が最大になる ようにグラフをクラスタに分割していく
  • 24. Rで実装する • ソースは汚すぎるので… • 慣例に従って有効グラフを無向グラフに 変換 – 具体的には、AがBをfavった回数とBがAを favった回数を平均してA-B間の重みに
  • 25. 少し考える • ゕルゴリズムの はO(N^2ln^2) • ユーザごとの重 みの総和を図に してみても、 5000id全て計算 するのは無駄っ ぽそう… – とりあえず329 人分
  • 26. 計算:48時間ぐらい
  • 27. 結果: 329userが75クラスタに 傾向: 細かく分割されすぎ サイズにばらつきありすぎ
  • 28. 大きなクラスタをいくつか紹介 329userの全クラスタ内訳は blogにアップします
  • 29. 変態クラスタ(最大、90user) GUMIMI, HOJ, Hajimepg, Palpha, SAN_Morishi, Sebastianus, TEtra11, Toyolina, GUMIMI Wing_of_Blood, aki426, aorenjar, bombtter, camelletgo, ch1haya, chap_py, chcbigz, chief_szk, choconono, cress_cc, emakko, enpitsu, evil07, f_jiro, fortunathefate, fune, garandou, gokujo, zeppel ha_ma, ha_ru_ka, halciondaze, hazime1373, hetaremozu, hironao, itati0, k_katsura,kaiware007 kazusap, kek_kuten, konaken, koukai, kuroreva, kuzu_doh, kyabesuke, lakililac, llcheesell, lolipuni, m_soba, masumizaru, meba, migelfutosi, mio_sakamoto, miru, myu65, mywalrus, nekocafe, Hajimepg ni_no_, nisenisetila, nurutema, ocha39, onicks2, ooabikoo, p_n_y, poyow, purelightway, ragusk, rarihoma, rokudenashi, ruehaduki, sakakiyu, sayn0, shitu, shy_azusa, sio_halfmoon, suiginex, suiginth, syochin, syounenX, tato256, tc_501, ukix, wakatter, xmmm, y883, ycums, ykzts, yteppei, yumeka_, zeppel, zero_zaki_,
  • 30. ITっぽいクラスタ(60user) Ett, KIMAGURE, VoQn, a_dach, bambico, bulkneets, chrcc, deadpop, eigokun,enraku bulkneets error403, fkgw, fuba, fuba_recorder, hajime, harsch, hazy_moon, hironica, hoge_systemz, irm_fyuk, isbsh, jazzanova, kotoriko jinon, kagawa, kanamoken, kkshow, kotoriko, kudan_, kusigahama, kyoujin, lalha, m0h1can, marco11, mayutan, morygonzalez, nancii, natant12, nipotan, oquno, penguinana, pha, placebogirl, yuiseki sachi_volta, saeko, saetomin, send_, slyl, snoa, todesking, toriko, totoon, ugnews, umelabo, wazurai, wyinoue, y_benjo, yodaka, youpy, yuiseki,
  • 31. ハチロククラスタ(11user) Misho Misho, T_Hash, hayamiz, kaeru_san, kaeru_san limitusus, mickey24, natsutan, sak65536, syou6162, tencube, T_hash
  • 32. 評論?クラスタ(8user) hanemimi esehara, hanemimi, kanose kanose, kisoem, matakimika, okadaic, tsuda, wideangle, wideangle
  • 33. 補足 • その他のクラスタは1~4人で構成される ものが多い – クラスタの構成userを見てみると、ある程度 妥当性がありそうな面子が • クラスター分析全般に言えることですが、 これが絶対的な分割ではない – fav情報のみで行っているという事を忘れずに
  • 34. 結論 • 結構それっぽい感じで抽出できたと思う – 今回は小規模だったが、極端な話5000user で計算しても同様のクラスタが得られるので、 そう考えると面白いんじゃないかと • 欠点:計算時間かかりすぎ – 行列計算が楽なだけでRでやる必要があまり ない – 定期的にクロールさせてクラスタの状況を更 新していく、とかさせてみたい……
  • 35. ありがとうございました 使用環境:R, Ruby, Meadow (ruby-mode ,ESS) 参考文献 :Finding community structure in very large networks (2004) :Community detection in complex networks using extremal optimization (2005)